Просмотр исходного кода

Merge branch 'release_toaliyun_real_offline_activity' of https://git.malls.iformall.com/server/formallProject into release_toaliyun_real_offline_activity

release_toaliyun_real
xiaohu 1 год назад
Родитель
Сommit
d5b34df1a9
6 измененных файлов: 63 добавлений и 7 удалений
  1. +2
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/rent/WxAllBillController.java
  2. +11
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeter.java
  3. +2
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceive.java
  4. +17
    -5
      mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java
  5. +30
    -2
      mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java
  6. +1
    -0
      mallinkService/src/main/resources/mapper/WxFinanceReceiveMapper.xml

+ 2
- 0
mallinkAdmin/src/main/java/com/iformall/controller/rent/WxAllBillController.java Просмотреть файл

@@ -633,6 +633,7 @@ public class WxAllBillController extends BillBaseController {
if (null == wxMerchant.getId()) {
return new ResultData(Result.ERROR,"请选择商户");
}
wxMerchant.setIsPreview(EnumYesOrNo.NO.getCode());
wxMerchant.updateTenantInfo(getTenantInfo());
wxMerchant.setNeedPayPreDays(getNearBillBeforeDays());
List<WxAllBill> list = billAllHelper.getMerchantBillList(wxMerchant);
@@ -671,6 +672,7 @@ public class WxAllBillController extends BillBaseController {
if (null == wxMerchant.getId()) {
return new ResultData(Result.ERROR,"请选择商户");
}
wxMerchant.setIsPreview(EnumYesOrNo.NO.getCode());
wxMerchant.updateTenantInfo(getTenantInfo());
wxMerchant.setToPayMerchant(EnumYesOrNo.YES.getCode());
List<WxAllBill> list = billAllHelper.getMerchantBillList(wxMerchant);


+ 11
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxEnergyMeter.java Просмотреть файл

@@ -3,6 +3,8 @@ package com.iformall.domain.po;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.enums.EnumEnergyMeterType;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
@@ -36,6 +38,15 @@ public class WxEnergyMeter extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value = "表类型EnumEnergyMeterType", name = "type")
private Integer type;
@TableField(exist = false)
private String typeName;
public String getTypeName() {
if (null != type) {
return EnumEnergyMeterType.getEnum(type).getMessage();
}
return null;
}
@io.swagger.annotations.ApiModelProperty(value="倍率",name="rate")
private String rate;


+ 2
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceive.java Просмотреть файл

@@ -151,5 +151,7 @@ public class WxFinanceReceive extends TenantEntity {
private Integer finishStatus;
@TableField(exist = false)
private Long finishId;
@TableField(exist = false)
private Integer hasExtraMoney;

}

+ 17
- 5
mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java Просмотреть файл

@@ -338,12 +338,24 @@ public class WxAllBillServiceImpl extends WxBillBaseService implements WxAllBill
}
}
BigDecimal remainSetoff = new BigDecimal(dto.getSetOff());
if (latePayLastMoney.compareTo(new BigDecimal(0)) > 0 ) {
opay = opay.add(latePayLastMoney);
wxBillRent.setPay(opay.toPlainString());
//如果付款金额做了扣除手续费/滞纳金,则需要将本金抵扣写到备注
if (new BigDecimal(dto.getAddpay()).compareTo(latePayLastMoney) > 0 ) {
sb.append(";已付金额增加").append(latePayLastMoney.toPlainString());
//如果手续费+滞纳金未消耗到实际收款
BigDecimal pay = new BigDecimal(dto.getAddpay());
if (latePayLastMoney.compareTo(pay) >= 0 ) {
if (pay.compareTo(new BigDecimal(0)) > 0 ) {
wxBillRent.setPay(pay.toPlainString());
sb.append(";已付金额增加").append(new BigDecimal(dto.getAddpay()).toPlainString());
//实际应收的抵扣
//remainSetoff = remainSetoff.subtract(latePayLastMoney.subtract(new BigDecimal(dto.getAddpay())));
}
}else {
if (pay.compareTo(new BigDecimal(0)) > 0 ) {
BigDecimal remainPay = new BigDecimal(dto.getAddpay()).subtract(latePayLastMoney);
wxBillRent.setPay(remainPay.toPlainString());
sb.append(";已付金额增加").append(remainPay.toPlainString());
}
}
if (opay.compareTo(new BigDecimal(dbBill.getOwe())) >= 0 ) {
wxBillRent.setStatus(EnumBillStatus.PAID.getCode());
@@ -354,7 +366,7 @@ public class WxAllBillServiceImpl extends WxBillBaseService implements WxAllBill
if (StringUtils.isBlank(oldSetOff)) {
oldSetOff = "0";
}
wxBillRent.setSetOff(new BigDecimal(oldSetOff).add(new BigDecimal(dto.getSetOff())).toPlainString());
wxBillRent.setSetOff(new BigDecimal(oldSetOff).add(remainSetoff).toPlainString());
wxBillRent.setPayDate(new Date());
wxBillRent.setPayWay(dto.getPayWayObject().getId());
wxAllBillMapper.updateById(wxBillRent);


+ 30
- 2
mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java Просмотреть файл

@@ -255,7 +255,11 @@ public class WxFinanceServiceImpl implements WxFinanceService {
}
return sum.getAdvanceList();
}else {
faq.setType(EnumFinanceCashierType.RECEIVE.getCode());
faq.setReceiveType(EnumFinanceReceiveType.ADVANCE.getCode());
faq.setStatus(EnumFinanceReceiveStatus.NORMAL.getCode());
faq.setSortColumns(SortField.CreateTime_ASC);
faq.setHasExtraMoney(EnumYesOrNo.YES.getCode());
return wxFinanceReceiveMapper.findList(faq);
}
@@ -273,6 +277,10 @@ public class WxFinanceServiceImpl implements WxFinanceService {
}else {
List<FinanceSetOffDetailVo> setoffList = bill.getSetOffDetailList();
for (int j = calcuteDto.getCurrentIndex(); j < calcuteDto.getAdvanceList().size() ; j++) {
owe = new BigDecimal(bill.getOwe());
if (owe.compareTo(b0) <= 0) {
break;
}
WxFinanceReceive advance = calcuteDto.getAdvanceList().get(j);
BigDecimal remain = new BigDecimal(advance.getRemain());
if (remain.compareTo(b0) > 0) {
@@ -282,7 +290,7 @@ public class WxFinanceServiceImpl implements WxFinanceService {
FinanceSetOffDetailVo dv = new FinanceSetOffDetailVo();
dv.setAdvanceId(advance.getId());
BigDecimal billSetOff = null;//账单历史抵扣
if (StringUtils.isBlank(bill.getSetOff())) {
if (StringUtils.isNotBlank(bill.getSetOff())) {
billSetOff = new BigDecimal(bill.getSetOff());
}else {
billSetOff = b0;
@@ -302,6 +310,7 @@ public class WxFinanceServiceImpl implements WxFinanceService {
dv.setSetoff(remain.toPlainString());
setoffList.add(dv);
bill.setSetOffDetailList(setoffList);
calcuteDto.setCurrentIndex(calcuteDto.getCurrentIndex()+1);
setSetOff(bill,calcuteDto);
}else {
bill.setSetOff(billSetOff.add(owe).toPlainString());
@@ -310,6 +319,7 @@ public class WxFinanceServiceImpl implements WxFinanceService {
dv.setSetoff(owe.toPlainString());
setoffList.add(dv);
bill.setSetOffDetailList(setoffList);
break;
}
}else {
calcuteDto.setCurrentIndex(calcuteDto.getCurrentIndex()+1);
@@ -342,6 +352,9 @@ public class WxFinanceServiceImpl implements WxFinanceService {
List<WxAllBill> retList = new ArrayList<WxAllBill>();
for (int i = 0 ; i < bills.size() ; i ++) {
WxAllBill be = bills.get(i);
be.setSetOffDetailList(null);
be.setCurrentReceive(null);
be.setCurrentSetOff(null);
WxAllBill bill = wxBillAllHelper.getBillDetail(EnumBillAllType.getEnum(be.getBillType()), merchant, be.getId());
be.setReceivePay(bill.getReceivePay());
be.setPay(bill.getPay());
@@ -658,6 +671,20 @@ public class WxFinanceServiceImpl implements WxFinanceService {
createFinanceReceiveBill(addreceive,bill,be.getCurrentSetOff(),null,Constant.bill_pay_way_setoff);
//处理预充关联
createFinanceReceiveSetoff(addreceive,be,bill);
WxBillPayDTO payDto = new WxBillPayDTO();
payDto.updateTenantInfo(addreceive);
payDto.setId(be.getId());
payDto.setBillTypeValue(be.getBillType());
payDto.setAddpay("0");
payDto.setSetOff(be.getCurrentSetOff());
payDto.setPayWay(Constant.bill_pay_way_setoff);
if (null == payWay0) {
payWay0 = new WxBillPayWay();
payWay0.setId(Constant.bill_pay_way_setoff);
}
payDto.setPayWayObject(payWay0);
payDto.setRemark("收款单收款["+addreceive.getId()+"]冲抵"+addreceive.getRemark());
wxBillAllHelper.updatePay(payDto, user);
}
return noNeedCreate;
}
@@ -768,7 +795,7 @@ public class WxFinanceServiceImpl implements WxFinanceService {
sortBills(bills);
//创建主收款单
WxFinanceReceive addreceive = generateReceive(receiveId,user,EnumFinanceCashierType.PAY ,EnumFinanceReceiveType.RECEIVE, null,payTotal.toPlainString(), record.getMerchantId(), null, record.getRemark());
WxFinanceReceive addreceive = generateReceive(receiveId,user,EnumFinanceCashierType.PAY ,EnumFinanceReceiveType.RECEIVE, "0",payTotal.toPlainString(), record.getMerchantId(), null, record.getRemark());
if (payTotal.compareTo(new BigDecimal(0)) > 0) {
addreceive.setMoneyDetail(JSON.toJSONString(record.getPayWays()));
wxFinanceReceivePaywayMapper.insertPayWays(record.getTenantId(),receivePayWayList);
@@ -952,6 +979,7 @@ public class WxFinanceServiceImpl implements WxFinanceService {
rsq.updateTenantInfo(record);
rsq.setBillId(bill.getId());
rsq.setBillType(bill.getBillType());
rsq.setAdvanceId(rb.getReceiveId());
List<WxFinanceReceiveSetoff> setoffList = wxFinanceReceiveSetoffMapper.findList(rsq);
if (null != setoffList) {
for (int j = 0 ; j < setoffList.size() ; j ++) {


+ 1
- 0
mallinkService/src/main/resources/mapper/WxFinanceReceiveMapper.xml Просмотреть файл

@@ -54,6 +54,7 @@
<if test=" null != isPrint ">and `is_print` = #{isPrint}</if>
<if test=" null != isFinish ">and `is_finish` = #{isFinish}</if>
<if test=" null != finishStatus ">and `status` in (1,3)</if>
<if test=" null != hasExtraMoney ">and receive_money - IFNULL(use_money,'0') &gt; 0</if>
<if test=" null != merchantIdList ">
and merchant_id in
<foreach collection="merchantIdList" index="index" item="midItem" open="(" separator="," close=")">


Загрузка…
Отмена
Сохранить