|
@@ -15,7 +15,6 @@ import com.rongwei.wechat.system.service.impl.SwBillManagementPaidServiceImpl;
|
|
|
import com.rongwei.wechat.system.service.impl.SwBillManagementUnpaidServiceImpl;
|
|
|
import com.rongwei.wechat.system.service.impl.SwBillingRecordServiceImpl;
|
|
|
import com.rongwei.wechat.system.service.impl.SwUserManagementServiceImpl;
|
|
|
-import com.rongwei.wechat.system.utils.WeChatUtils;
|
|
|
import com.rongwei.wechat.system.wechat.PaymentRecordService;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.slf4j.Logger;
|
|
@@ -131,33 +130,33 @@ public class PaymentRecordServiceImpl implements PaymentRecordService {
|
|
|
@Transactional
|
|
|
public R createRecord(CreatePaymentRecordVo createPaymentRecordVo) {
|
|
|
try {
|
|
|
- // 微信的openId
|
|
|
- String currentWeChatOpenId = WeChatUtils.getCurrentWeChatOpenId();
|
|
|
- String userNUMBER = createPaymentRecordVo.getUserNumber();
|
|
|
- if (StringUtils.isBlank(userNUMBER)) {
|
|
|
- log.error("参数错误,户号为空");
|
|
|
- throw new CustomException("户号为空");
|
|
|
- }
|
|
|
- SwUserManagementDo swUserManagementDo = swUserManagementService.getOne(new LambdaQueryWrapper<SwUserManagementDo>()
|
|
|
- .eq(SwUserManagementDo::getUsernumber, userNUMBER)
|
|
|
- .eq(BaseDo::getDeleted, "0"));
|
|
|
- List<SwBillManagementUnpaidDo> unpaidDoList = new ArrayList<>();
|
|
|
- String zdId = createPaymentRecordVo.getZdId();
|
|
|
- if (StringUtils.isNotBlank(zdId)) {
|
|
|
- unpaidDoList = swBillManagementUnpaidService.getBaseMapper().selectBatchIds(Arrays.asList(zdId.split(",")));
|
|
|
- }
|
|
|
-
|
|
|
+ // 微信的openId
|
|
|
+ String currentWeChatOpenId = createPaymentRecordVo.getOpenId();
|
|
|
+ String userNUMBER = createPaymentRecordVo.getUserNumber();
|
|
|
+ if (StringUtils.isBlank(userNUMBER)) {
|
|
|
+ log.error("参数错误,户号为空");
|
|
|
+ throw new CustomException("户号为空");
|
|
|
+ }
|
|
|
+ SwUserManagementDo swUserManagementDo = swUserManagementService.getOne(new LambdaQueryWrapper<SwUserManagementDo>()
|
|
|
+ .eq(SwUserManagementDo::getUsernumber, userNUMBER)
|
|
|
+ .eq(BaseDo::getDeleted, "0"));
|
|
|
+ List<SwBillManagementUnpaidDo> unpaidDoList = new ArrayList<>();
|
|
|
+ String zdId = createPaymentRecordVo.getZdId();
|
|
|
+ if (StringUtils.isNotBlank(zdId)) {
|
|
|
+ unpaidDoList = swBillManagementUnpaidService.getBaseMapper().selectBatchIds(Arrays.asList(zdId.split(",")));
|
|
|
+ }
|
|
|
|
|
|
|
|
|
// 生成缴费记录
|
|
|
SwBillingRecordDo swBillingRecordDo = generateRecord(swUserManagementDo, unpaidDoList, createPaymentRecordVo.getPaymentAmount(),
|
|
|
- createPaymentRecordVo.getOrderNo(), currentWeChatOpenId);
|
|
|
+ createPaymentRecordVo.getOrderNo(), currentWeChatOpenId, createPaymentRecordVo.getDesc(),
|
|
|
+ createPaymentRecordVo.getWechatNo(), createPaymentRecordVo.getSuccessTime());
|
|
|
// 待缴账单转为已缴账单
|
|
|
List<SwBillManagementPaidDo> bills = swBillingRecordService.createBills(unpaidDoList, swBillingRecordDo);
|
|
|
dataUpdate(swBillingRecordDo, swUserManagementDo, bills, unpaidDoList);
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
- log.error("缴费记录生成失败原因为:{}",e.getMessage());
|
|
|
+ log.error("缴费记录生成失败原因为:{}", e.getMessage());
|
|
|
}
|
|
|
|
|
|
return R.ok();
|
|
@@ -183,7 +182,8 @@ public class PaymentRecordServiceImpl implements PaymentRecordService {
|
|
|
|
|
|
|
|
|
public SwBillingRecordDo generateRecord(SwUserManagementDo swUserManagementDo, List<SwBillManagementUnpaidDo> unpaidDoList,
|
|
|
- BigDecimal paymentAmount, String orderNo, String openId) {
|
|
|
+ BigDecimal paymentAmount, String orderNo, String openId, String desc, String wechatNo,
|
|
|
+ Date successTime) {
|
|
|
Date now = new Date();
|
|
|
Calendar instance = Calendar.getInstance();
|
|
|
instance.setTime(now);
|
|
@@ -222,6 +222,10 @@ public class PaymentRecordServiceImpl implements PaymentRecordService {
|
|
|
swBillingRecordDo.setModifydate(now);
|
|
|
swBillingRecordDo.setModifyuserid(openId);
|
|
|
swBillingRecordDo.setModifyusername(openId);
|
|
|
+ swBillingRecordDo.setNoticedetails(desc);
|
|
|
+ swBillingRecordDo.setWechatpayordernumber(wechatNo);
|
|
|
+ swBillingRecordDo.setPayfeesstatus("1");
|
|
|
+ swBillingRecordDo.setPaymentcompletiontime(successTime);
|
|
|
// 暂不新增 通过微信支付回调函数进行新增
|
|
|
// swBillingRecordDo.setWechatpayordernumber();
|
|
|
// swBillingRecordDo.setPaymentstatus();
|