给采购入库和销售出库增加最终欠款的展示列
This commit is contained in:
@@ -38,7 +38,7 @@ public interface AccountHeadMapperEx {
|
||||
|
||||
List<AccountHead> getAccountHeadListByHandsPersonIds(@Param("handsPersonIds") String[] handsPersonIds);
|
||||
|
||||
List<AccountItem> getFinancialBillNoByBillIdList(
|
||||
List<AccountItem> getFinancialBillPriceByBillIdList(
|
||||
@Param("idList") List<Long> idList);
|
||||
|
||||
List<AccountHead> getFinancialBillNoByBillId(
|
||||
@@ -46,4 +46,4 @@ public interface AccountHeadMapperEx {
|
||||
|
||||
BigDecimal getFinancialAllPriceByOrganId(
|
||||
@Param("organId") Long organId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,6 +47,12 @@ public class DepotHeadVo4List extends DepotHead{
|
||||
* 是否有付款单或收款单
|
||||
*/
|
||||
private Boolean hasFinancialFlag;
|
||||
|
||||
/**
|
||||
* 最终欠款
|
||||
*/
|
||||
private BigDecimal lastDebt;
|
||||
|
||||
/**
|
||||
* 是否有退款单
|
||||
*/
|
||||
@@ -229,6 +235,14 @@ public class DepotHeadVo4List extends DepotHead{
|
||||
this.hasFinancialFlag = hasFinancialFlag;
|
||||
}
|
||||
|
||||
public BigDecimal getLastDebt() {
|
||||
return lastDebt;
|
||||
}
|
||||
|
||||
public void setLastDebt(BigDecimal lastDebt) {
|
||||
this.lastDebt = lastDebt;
|
||||
}
|
||||
|
||||
public Boolean getHasBackFlag() {
|
||||
return hasBackFlag;
|
||||
}
|
||||
@@ -276,4 +290,4 @@ public class DepotHeadVo4List extends DepotHead{
|
||||
public void setPhoneNum(String phoneNum) {
|
||||
this.phoneNum = phoneNum;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -410,8 +410,8 @@ public class AccountHeadService {
|
||||
return resList;
|
||||
}
|
||||
|
||||
public List<AccountItem> getFinancialBillNoByBillIdList(List<Long> idList) {
|
||||
return accountHeadMapperEx.getFinancialBillNoByBillIdList(idList);
|
||||
public List<AccountItem> getFinancialBillPriceByBillIdList(List<Long> idList) {
|
||||
return accountHeadMapperEx.getFinancialBillPriceByBillIdList(idList);
|
||||
}
|
||||
|
||||
public List<AccountHead> getFinancialBillNoByBillId(Long billId) {
|
||||
|
||||
@@ -133,7 +133,7 @@ public class DepotHeadService {
|
||||
}
|
||||
//通过批量查询去构造map
|
||||
Map<String,BigDecimal> finishDepositMap = getFinishDepositMapByNumberList(numberList);
|
||||
Map<Long,Integer> financialBillNoMap = getFinancialBillNoMapByBillIdList(idList);
|
||||
Map<Long,BigDecimal> financialBillPriceMap = getFinancialBillPriceMapByBillIdList(idList);
|
||||
Map<String,Integer> billSizeMap = getBillSizeMapByLinkNumberList(numberList);
|
||||
Map<Long,String> materialsListMap = findMaterialsListMapByHeaderIdList(idList);
|
||||
Map<Long,BigDecimal> materialCountListMap = getMaterialCountListMapByHeaderIdList(idList);
|
||||
@@ -180,10 +180,11 @@ public class DepotHeadService {
|
||||
BigDecimal changeAmount = dh.getChangeAmount()!=null?dh.getChangeAmount():BigDecimal.ZERO;
|
||||
BigDecimal debt = discountLastMoney.add(otherMoney).subtract((deposit.add(changeAmount)));
|
||||
dh.setDebt(roleService.parseBillPriceByLimit(debt, billCategory, priceLimit, request));
|
||||
//是否有付款单或收款单
|
||||
if(financialBillNoMap!=null) {
|
||||
Integer financialBillNoSize = financialBillNoMap.get(dh.getId());
|
||||
dh.setHasFinancialFlag(financialBillNoSize!=null && financialBillNoSize>0);
|
||||
//最终欠款的金额
|
||||
if(financialBillPriceMap!=null) {
|
||||
BigDecimal financialBillPrice = financialBillPriceMap.get(dh.getId())!=null?financialBillPriceMap.get(dh.getId()):BigDecimal.ZERO;
|
||||
BigDecimal lastDebt = debt.subtract(financialBillPrice);
|
||||
dh.setLastDebt(roleService.parseBillPriceByLimit(lastDebt, billCategory, priceLimit, request));
|
||||
}
|
||||
//是否有退款单
|
||||
if(billSizeMap!=null) {
|
||||
@@ -345,14 +346,14 @@ public class DepotHeadService {
|
||||
return billListMap;
|
||||
}
|
||||
|
||||
public Map<Long,Integer> getFinancialBillNoMapByBillIdList(List<Long> idList) {
|
||||
Map<Long, Integer> billListMap = new HashMap<>();
|
||||
if(idList.size()>0) {
|
||||
List<AccountItem> list = accountHeadService.getFinancialBillNoByBillIdList(idList);
|
||||
if(list!=null && list.size()>0) {
|
||||
private Map<Long, BigDecimal> getFinancialBillPriceMapByBillIdList(List<Long> idList) {
|
||||
Map<Long, BigDecimal> billListMap = new HashMap<>();
|
||||
if(!idList.isEmpty()) {
|
||||
List<AccountItem> list = accountHeadService.getFinancialBillPriceByBillIdList(idList);
|
||||
if(list!=null && !list.isEmpty()) {
|
||||
for (AccountItem accountItem : list) {
|
||||
if(accountItem!=null) {
|
||||
billListMap.put(accountItem.getBillId(), list.size());
|
||||
billListMap.put(accountItem.getBillId(), accountItem.getEachAmount().abs());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -982,7 +983,6 @@ public class DepotHeadService {
|
||||
numberList.add(dh.getNumber());
|
||||
}
|
||||
//通过批量查询去构造map
|
||||
Map<Long,Integer> financialBillNoMap = getFinancialBillNoMapByBillIdList(idList);
|
||||
Map<String,Integer> billSizeMap = getBillSizeMapByLinkNumberList(numberList);
|
||||
Map<Long,String> materialsListMap = findMaterialsListMapByHeaderIdList(idList);
|
||||
Map<Long,BigDecimal> materialCountListMap = getMaterialCountListMapByHeaderIdList(idList);
|
||||
@@ -1023,11 +1023,6 @@ public class DepotHeadService {
|
||||
BigDecimal changeAmount = dh.getChangeAmount()!=null?dh.getChangeAmount():BigDecimal.ZERO;
|
||||
BigDecimal debt = discountLastMoney.add(otherMoney).subtract((deposit.add(changeAmount)));
|
||||
dh.setDebt(roleService.parseBillPriceByLimit(debt, billCategory, priceLimit, request));
|
||||
//是否有付款单或收款单
|
||||
if(financialBillNoMap!=null) {
|
||||
Integer financialBillNoSize = financialBillNoMap.get(dh.getId());
|
||||
dh.setHasFinancialFlag(financialBillNoSize!=null && financialBillNoSize>0);
|
||||
}
|
||||
//是否有退款单
|
||||
if(billSizeMap!=null) {
|
||||
Integer billListSize = billSizeMap.get(dh.getNumber());
|
||||
|
||||
@@ -133,8 +133,8 @@
|
||||
and ifnull(delete_flag,'0') !='1'
|
||||
</select>
|
||||
|
||||
<select id="getFinancialBillNoByBillIdList" resultType="com.jsh.erp.datasource.entities.AccountItem">
|
||||
select ai.bill_id from jsh_account_head ah
|
||||
<select id="getFinancialBillPriceByBillIdList" resultType="com.jsh.erp.datasource.entities.AccountItem">
|
||||
select ai.bill_id, sum(ai.each_amount) each_amount from jsh_account_head ah
|
||||
left join jsh_account_item ai on ah.id=ai.header_id and ifnull(ai.delete_flag,'0') !='1'
|
||||
where 1=1
|
||||
<if test="idList.size()>0">
|
||||
@@ -144,6 +144,7 @@
|
||||
</foreach>
|
||||
</if>
|
||||
and ifnull(ah.delete_flag,'0') !='1'
|
||||
group by ai.bill_id
|
||||
</select>
|
||||
|
||||
<select id="getFinancialBillNoByBillId" resultType="com.jsh.erp.datasource.entities.AccountHead">
|
||||
@@ -159,4 +160,4 @@
|
||||
and ah.type = '收预付款'
|
||||
and ifnull(ah.delete_flag,'0') !='1'
|
||||
</select>
|
||||
</mapper>
|
||||
</mapper>
|
||||
|
||||
@@ -186,10 +186,10 @@
|
||||
</span>
|
||||
<template slot="customRenderDebt" slot-scope="value, record">
|
||||
<a-tooltip title="有付款单">
|
||||
<span style="color:green" v-if="value>0 && record.hasFinancialFlag">{{value}}</span>
|
||||
<span style="color:green" v-if="value>0 && value>record.lastDebt">{{value}}</span>
|
||||
</a-tooltip>
|
||||
<a-tooltip title="暂未付款">
|
||||
<span style="color:red" v-if="value>0 && !record.hasFinancialFlag">{{value}}</span>
|
||||
<span style="color:red" v-if="value>0 && value===record.lastDebt">{{value}}</span>
|
||||
</a-tooltip>
|
||||
<span v-if="value===0">{{value}}</span>
|
||||
</template>
|
||||
@@ -279,7 +279,7 @@
|
||||
},
|
||||
// 默认索引
|
||||
defDataIndex:['action','organName','number','materialsList','operTimeStr','userName','materialCount','totalPrice','totalTaxLastMoney',
|
||||
'needInMoney','changeAmount','debt','status'],
|
||||
'changeAmount','debt','lastDebt','status'],
|
||||
// 默认列
|
||||
defColumns: [
|
||||
{
|
||||
@@ -326,6 +326,7 @@
|
||||
{ title: '本次欠款', dataIndex: 'debt',width:80,
|
||||
scopedSlots: { customRender: 'customRenderDebt' }
|
||||
},
|
||||
{ title: '最终欠款', dataIndex: 'lastDebt',width:80},
|
||||
{ title: '备注', dataIndex: 'remark',width:200},
|
||||
{ title: '状态', dataIndex: 'status', width: 80, align: "center",
|
||||
scopedSlots: { customRender: 'customRenderStatus' }
|
||||
|
||||
@@ -196,10 +196,10 @@
|
||||
</span>
|
||||
<template slot="customRenderDebt" slot-scope="value, record">
|
||||
<a-tooltip title="有收款单">
|
||||
<span style="color:green" v-if="value>0 && record.hasFinancialFlag">{{value}}</span>
|
||||
<span style="color:green" v-if="value>0 && value>record.lastDebt">{{value}}</span>
|
||||
</a-tooltip>
|
||||
<a-tooltip title="暂未收款">
|
||||
<span style="color:red" v-if="value>0 && !record.hasFinancialFlag">{{value}}</span>
|
||||
<span style="color:red" v-if="value>0 && value===record.lastDebt">{{value}}</span>
|
||||
</a-tooltip>
|
||||
<span v-if="value===0">{{value}}</span>
|
||||
</template>
|
||||
@@ -289,7 +289,7 @@
|
||||
},
|
||||
// 默认索引
|
||||
defDataIndex:['action','organName','number','materialsList','operTimeStr','userName','materialCount','totalPrice','totalTaxLastMoney',
|
||||
'needOutMoney','changeAmount','debt','status'],
|
||||
'changeAmount','debt','lastDebt','status'],
|
||||
// 默认列
|
||||
defColumns: [
|
||||
{
|
||||
@@ -336,6 +336,7 @@
|
||||
{ title: '本次欠款', dataIndex: 'debt',width:80,
|
||||
scopedSlots: { customRender: 'customRenderDebt' }
|
||||
},
|
||||
{ title: '最终欠款', dataIndex: 'lastDebt',width:80},
|
||||
{ title: '销售人员', dataIndex: 'salesManStr',width:120},
|
||||
{ title: '备注', dataIndex: 'remark',width:200},
|
||||
{ title: '状态', dataIndex: 'status', width: 80, align: "center",
|
||||
|
||||
Reference in New Issue
Block a user