| @@ -199,6 +199,7 @@ public class WxBillDailyServiceImpl implements WxBillDailyService { | |||
| wxBillDaily.setUpdatetime(date); | |||
| wxBillDaily.setPayWay(record.getPayWay()); | |||
| wxBillDaily.setPriceDetail(record.getPriceDetail()); | |||
| wxBillDaily.setServiceChargePay(record.getServiceChargePay()); | |||
| try { | |||
| wxBillDailyMapper.updateById(wxBillDaily); | |||
| } catch (Exception e) { | |||
| @@ -211,7 +212,11 @@ public class WxBillDailyServiceImpl implements WxBillDailyService { | |||
| String message = EnumBillPayWay.getEnum(record.getPayWay()).getMessage(); | |||
| String price = new BigDecimal(record.getPay() - addpay).divide(new BigDecimal(100)).toPlainString(); | |||
| wxBillAction.setDetails(message + price + "元"); | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| if(record.getServiceChargePay() != null){ | |||
| wxBillAction.setAction(EnumBillAction.UPDATE_SERVICE_MONEY.getCode()); | |||
| }else{ | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| } | |||
| wxBillAction.setUserId(user.getId()); | |||
| wxBillAction.setUserName(user.getName()); | |||
| wxBillAction.setPhone(user.getPhone()); | |||
| @@ -164,6 +164,7 @@ public class WxBillDepositServiceImpl implements WxBillDepositService { | |||
| wxBillDeposit.setPayDate(date); | |||
| wxBillDeposit.setUpdatetime(date); | |||
| wxBillDeposit.setPayWay(record.getPayWay()); | |||
| wxBillDeposit.setServiceChargePay(record.getServiceChargePay()); | |||
| try { | |||
| wxBillDepositMapper.updateById(wxBillDeposit); | |||
| } catch (Exception e) { | |||
| @@ -176,7 +177,11 @@ public class WxBillDepositServiceImpl implements WxBillDepositService { | |||
| String message = EnumBillPayWay.getEnum(record.getPayWay()).getMessage(); | |||
| String price = new BigDecimal(record.getPay() - addpay).divide(new BigDecimal(100)).toPlainString(); | |||
| wxBillAction.setDetails(message + price + "元"); | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| if(record.getServiceChargePay() != null){ | |||
| wxBillAction.setAction(EnumBillAction.UPDATE_SERVICE_MONEY.getCode()); | |||
| }else{ | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| } | |||
| wxBillAction.setUserId(user.getId()); | |||
| wxBillAction.setUserName(user.getName()); | |||
| wxBillAction.setPhone(user.getPhone()); | |||
| @@ -195,6 +195,7 @@ public class WxBillOtherDepositServiceImpl implements WxBillOtherDepositService | |||
| wxBillOtherDeposit.setUpdatetime(date); | |||
| wxBillOtherDeposit.setPayWay(record.getPayWay()); | |||
| wxBillOtherDeposit.setComments(record.getComments()); | |||
| wxBillOtherDeposit.setServiceChargePay(record.getServiceChargePay()); | |||
| try { | |||
| wxBillOtherDepositMapper.updateById(wxBillOtherDeposit); | |||
| } catch (Exception e) { | |||
| @@ -207,7 +208,11 @@ public class WxBillOtherDepositServiceImpl implements WxBillOtherDepositService | |||
| String message = EnumBillPayWay.getEnum(record.getPayWay()).getMessage(); | |||
| String price = new BigDecimal(record.getPay() - addpay).divide(new BigDecimal(100)).toPlainString(); | |||
| wxBillAction.setDetails(message + price + "元"); | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| if(record.getServiceChargePay() != null){ | |||
| wxBillAction.setAction(EnumBillAction.UPDATE_SERVICE_MONEY.getCode()); | |||
| }else{ | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| } | |||
| wxBillAction.setUserId(user.getId()); | |||
| wxBillAction.setUserName(user.getName()); | |||
| wxBillAction.setPhone(user.getPhone()); | |||
| @@ -196,6 +196,7 @@ public class WxBillOtherServiceImpl implements WxBillOtherService { | |||
| wxBillOther.setPayWay(record.getPayWay()); | |||
| wxBillOther.setComments(record.getComments()); | |||
| wxBillOther.setName(record.getName()); | |||
| wxBillOther.setServiceChargePay(record.getServiceChargePay()); | |||
| try { | |||
| wxBillOtherMapper.updateById(wxBillOther); | |||
| } catch (Exception e) { | |||
| @@ -208,7 +209,11 @@ public class WxBillOtherServiceImpl implements WxBillOtherService { | |||
| String message = EnumBillPayWay.getEnum(record.getPayWay()).getMessage(); | |||
| String price = new BigDecimal(record.getPay() - addpay).divide(new BigDecimal(100)).toPlainString(); | |||
| wxBillAction.setDetails(message + price + "元"); | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| if(record.getServiceChargePay() != null){ | |||
| wxBillAction.setAction(EnumBillAction.UPDATE_SERVICE_MONEY.getCode()); | |||
| }else{ | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| } | |||
| wxBillAction.setUserId(user.getId()); | |||
| wxBillAction.setUserName(user.getName()); | |||
| wxBillAction.setPhone(user.getPhone()); | |||
| @@ -163,6 +163,7 @@ public class WxBillPropertyDepositServiceImpl implements WxBillPropertyDepositSe | |||
| wxBillDeposit.setPayDate(date); | |||
| wxBillDeposit.setUpdatetime(date); | |||
| wxBillDeposit.setPayWay(record.getPayWay()); | |||
| wxBillDeposit.setServiceChargePay(record.getServiceChargePay()); | |||
| try { | |||
| wxBillPropertyDepositMapper.updateById(wxBillDeposit); | |||
| } catch (Exception e) { | |||
| @@ -175,7 +176,11 @@ public class WxBillPropertyDepositServiceImpl implements WxBillPropertyDepositSe | |||
| String message = EnumBillPayWay.getEnum(record.getPayWay()).getMessage(); | |||
| String price = new BigDecimal(record.getPay() - addpay).divide(new BigDecimal(100)).toPlainString(); | |||
| wxBillAction.setDetails(message + price + "元"); | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| if(record.getServiceChargePay() != null){ | |||
| wxBillAction.setAction(EnumBillAction.UPDATE_SERVICE_MONEY.getCode()); | |||
| }else{ | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| } | |||
| wxBillAction.setUserId(user.getId()); | |||
| wxBillAction.setUserName(user.getName()); | |||
| wxBillAction.setPhone(user.getPhone()); | |||
| @@ -179,6 +179,7 @@ public class WxBillPropertyServiceImpl implements WxBillPropertyService { | |||
| property.setPayDate(record.getPayDate()); | |||
| property.setUpdatetime(date); | |||
| property.setPayWay(record.getPayWay()); | |||
| property.setServiceChargePay(record.getServiceChargePay()); | |||
| try { | |||
| wxBillPropertyMapper.updateById(property); | |||
| } catch (Exception e) { | |||
| @@ -191,7 +192,12 @@ public class WxBillPropertyServiceImpl implements WxBillPropertyService { | |||
| String message = EnumBillPayWay.getEnum(record.getPayWay()).getMessage(); | |||
| String price = new BigDecimal(record.getPay() - addpay).divide(new BigDecimal(100)).toPlainString(); | |||
| wxBillAction.setDetails(message + price + "元"); | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| if(record.getServiceChargePay() != null){ | |||
| wxBillAction.setDetails(record.getServiceChargePayBefore()+"元变更为" +record.getServiceChargePayUpdate()+"元"); | |||
| wxBillAction.setAction(EnumBillAction.UPDATE_SERVICE_MONEY.getCode()); | |||
| }else{ | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| } | |||
| wxBillAction.setUserId(user.getId()); | |||
| wxBillAction.setUserName(user.getName()); | |||
| wxBillAction.setPhone(user.getPhone()); | |||
| @@ -358,19 +364,6 @@ public class WxBillPropertyServiceImpl implements WxBillPropertyService { | |||
| billAction.setUpdatetime(new Date()); | |||
| wxBillActionMapper.insert(billAction); | |||
| } | |||
| if(record.getServiceChargePayUpdate() != null) { | |||
| record.setServiceChargePay(Integer.parseInt(record.getServiceChargePayUpdate()) * 100); | |||
| billAction = new WxBillAction(); | |||
| billAction.setId(idWorker.nextId()); | |||
| billAction.setCreatetime(new Date()); | |||
| billAction.setUserName("系统端"); | |||
| billAction.setAction(EnumBillAction.UPDATE_SERVICE_MONEY.getCode()); | |||
| billAction.setBillId(record.getId()); | |||
| billAction.setDetails(record.getServiceChargePayBefore()+"元变更为" +record.getServiceChargePayUpdate()+"元"); | |||
| billAction.setUpdatetime(new Date()); | |||
| wxBillActionMapper.insert(billAction); | |||
| } | |||
| wxBillPropertyMapper.updateById(record); | |||
| return new ResultData(); | |||
| } | |||
| @@ -182,6 +182,7 @@ public class WxBillRentServiceImpl implements WxBillRentService { | |||
| wxBillRent.setPayDate(record.getPayDate()); | |||
| wxBillRent.setUpdatetime(date); | |||
| wxBillRent.setPayWay(record.getPayWay()); | |||
| wxBillRent.setServiceChargePay(record.getServiceChargePay()); | |||
| try { | |||
| wxBillRentMapper.updateById(wxBillRent); | |||
| } catch (Exception e) { | |||
| @@ -194,7 +195,12 @@ public class WxBillRentServiceImpl implements WxBillRentService { | |||
| String message = EnumBillPayWay.getEnum(record.getPayWay()).getMessage(); | |||
| String price = new BigDecimal(record.getPay() - addpay).divide(new BigDecimal(100)).toPlainString(); | |||
| wxBillAction.setDetails(message + price + "元"); | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| if(record.getServiceChargePay() != null){ | |||
| wxBillAction.setDetails(record.getServiceChargePayBefore()+"元变更为" +record.getServiceChargePayUpdate()+"元"); | |||
| wxBillAction.setAction(EnumBillAction.UPDATE_SERVICE_MONEY.getCode()); | |||
| }else{ | |||
| wxBillAction.setAction(EnumBillAction.OFFLINE_PAY.getCode()); | |||
| } | |||
| wxBillAction.setUserId(user.getId()); | |||
| wxBillAction.setUserName(user.getName()); | |||
| wxBillAction.setPhone(user.getPhone()); | |||
| @@ -471,20 +477,6 @@ public class WxBillRentServiceImpl implements WxBillRentService { | |||
| billAction.setUpdatetime(new Date()); | |||
| wxBillActionMapper.insert(billAction); | |||
| } | |||
| if(record.getServiceChargePayUpdate() != null) { | |||
| record.setServiceChargePay(Integer.parseInt(record.getServiceChargePayUpdate()) * 100); | |||
| billAction = new WxBillAction(); | |||
| billAction.setId(idWorker.nextId()); | |||
| billAction.setCreatetime(new Date()); | |||
| billAction.setUserName("系统端"); | |||
| billAction.setAction(EnumBillAction.UPDATE_SERVICE_MONEY.getCode()); | |||
| billAction.setBillId(record.getId()); | |||
| billAction.setDetails(record.getServiceChargePayBefore()+"元变更为" +record.getServiceChargePayUpdate()+"元"); | |||
| billAction.setUpdatetime(new Date()); | |||
| wxBillActionMapper.insert(billAction); | |||
| } | |||
| wxBillRentMapper.updateById(record); | |||
| return new ResultData(); | |||
| } | |||
| @@ -18,7 +18,6 @@ import com.iformall.mapper.*; | |||
| import com.iformall.mq.MqBaseProducer; | |||
| import com.iformall.service.*; | |||
| import com.iformall.utils.Constant; | |||
| import com.iformall.utils.EventUtil; | |||
| import com.iformall.utils.JsonUtil; | |||
| import org.apache.commons.collections.CollectionUtils; | |||
| import org.apache.commons.collections.map.HashedMap; | |||
| @@ -147,7 +146,7 @@ public class WxFlowServiceImpl implements WxFlowService { | |||
| //如果审批完成,而且是补录直接改为已签约状态(普通需要绑定商户才是已签约) | |||
| WxRentContract record = wxRentContractMapper.selectById(businessId); | |||
| if(record.getMerchantId()!=null && EnumRentContractAppStatus.FINISH.getCode().intValue() == applyStatus.intValue()) { | |||
| if(record != null && record.getMerchantId()!=null && EnumRentContractAppStatus.FINISH.getCode().intValue() == applyStatus.intValue()) { | |||
| wxRentContractService.updateRentContractStatus(businessId); | |||
| } | |||
| }else if(EnumFlowContractType.PROPERTY.getCode().equals(contractType) || EnumFlowContractType.PROPERTY_POINT.getCode().equals(contractType)){ | |||
| @@ -1586,6 +1586,13 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| public WxOrder saveNoFreeOrderForCoupon(WxCUser user, WxCoupon coupon, Long couponChannelId, boolean isPress, Long orderGroupId, String formId) { | |||
| // 1. check user info and coupon info | |||
| userCouponMerchantCheck(user, coupon); | |||
| if (coupon.checkIsCreditCoupon()) { | |||
| //若用户剩余积分比积分售价低则不能支付 | |||
| if (user.getCredit() == null || user.getCredit() < coupon.getCreditPrice()) { | |||
| throw new MallinkException(ErrorCode.CREDIT_NOT_ENOUGH); | |||
| } | |||
| } | |||
| // 2. 拼团检查 | |||
| if (isOrderGroup(orderGroupId)) { | |||
| checkOrderGroup(user, orderGroupId); | |||
| @@ -1594,6 +1601,15 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| // 3. 减库存操作 | |||
| stockReduce(user, coupon, couponIdStr); | |||
| // 3. 当积分券或者积分停车券时 则进行积分支付 | |||
| Integer orderType; | |||
| if (coupon.checkIsCreditCoupon()) { | |||
| creditPay(user, coupon); | |||
| orderType = EnumOrderType.CREDIT.getCode(); | |||
| } else { | |||
| orderType = EnumOrderType.COUPON.getCode(); | |||
| } | |||
| // 4. 保存订单 | |||
| Long orderNumber; | |||
| // 4.1 券价格 | |||
| @@ -1614,6 +1630,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| // 4.2 保存订单 | |||
| WxOrder record = new WxOrder(); | |||
| record.setType(orderType); | |||
| record.setCouponChannelId(couponChannelId); | |||
| record.setOrderGroupId(orderGroupId); | |||
| record.setFormId(formId); | |||
| @@ -1689,7 +1706,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| record.setTenantId(user.getTenantId()); | |||
| record.setOrderNumber(orderNumber); | |||
| record.setProductId(coupon.getId()); | |||
| record.setType(EnumOrderType.COUPON.getCode()); | |||
| //record.setType(EnumOrderType.COUPON.getCode()); | |||
| record.setCUserId(user.getId()); | |||
| record.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); | |||
| record.setDetail(bodyStr); | |||