Browse Source

同步支付顺序

master
gjh 5 days ago
parent
commit
bbfd7c7770
  1. 5
      huzhou/src/main/java/com/easy/admin/modules/huzhou/controller/HuzhouContractinfoController.java
  2. 5
      huzhou/src/main/java/com/easy/admin/modules/huzhou/dao/HuzhouContractinfoMapper.java
  3. 9
      huzhou/src/main/java/com/easy/admin/modules/huzhou/dao/mapping/HuzhouContractinfoMapper.xml
  4. 4
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/IHuzhouContractinfoService.java
  5. 20
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouContractinfoServiceImpl.java
  6. 18
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfofileServiceImpl.java

5
huzhou/src/main/java/com/easy/admin/modules/huzhou/controller/HuzhouContractinfoController.java

@ -156,8 +156,9 @@ public class HuzhouContractinfoController {
@GetMapping("/setSortedContracts") @GetMapping("/setSortedContracts")
public Result<?> setSortedContracts(){ public Result<?> setSortedPlanContracts(){
contractinfoService.setSortedContracts(); contractinfoService.setSortedPlanContracts();
contractinfoService.setSortedRealContracts();
return Result.ok("根据合同支付日期进行排序"); return Result.ok("根据合同支付日期进行排序");
} }
} }

5
huzhou/src/main/java/com/easy/admin/modules/huzhou/dao/HuzhouContractinfoMapper.java

@ -24,7 +24,10 @@ public interface HuzhouContractinfoMapper extends BaseMapper<HuzhouContractinfo>
Map<String, BigDecimal> getTotalByProjectIds(@Param("projectIds") List<String> projectIds); Map<String, BigDecimal> getTotalByProjectIds(@Param("projectIds") List<String> projectIds);
// 给已经存在的合同进行排序 // 给已经存在的合同进行排序
List<HuzhouContractinfo> getSortedContracts(); List<HuzhouContractinfo> getSortedPlanContracts();
// 给已经存在的合同进行排序
List<HuzhouContractinfo> getSortedRealContracts();
int updateSortFlag(@Param("id") String id, @Param("sortFlag") int sortFlag); int updateSortFlag(@Param("id") String id, @Param("sortFlag") int sortFlag);
} }

9
huzhou/src/main/java/com/easy/admin/modules/huzhou/dao/mapping/HuzhouContractinfoMapper.xml

@ -281,13 +281,20 @@
</select> </select>
<select id="getSortedContracts" resultType="com.easy.admin.modules.huzhou.entity.HuzhouContractinfo"> <select id="getSortedPlanContracts" resultType="com.easy.admin.modules.huzhou.entity.HuzhouContractinfo">
SELECT * SELECT *
FROM `guoyan_huzhou`.`huzhou_contractinfo` FROM `guoyan_huzhou`.`huzhou_contractinfo`
WHERE flag = '计划' WHERE flag = '计划'
ORDER BY `project_id`, `pay_date` ASC ORDER BY `project_id`, `pay_date` ASC
LIMIT 0, 1000 LIMIT 0, 1000
</select> </select>
<select id="getSortedRealContracts" resultType="com.easy.admin.modules.huzhou.entity.HuzhouContractinfo">
SELECT *
FROM `guoyan_huzhou`.`huzhou_contractinfo`
WHERE flag = '实际'
ORDER BY `project_id`, `pay_date` ASC
LIMIT 0, 1000
</select>
<update id="updateSortFlag"> <update id="updateSortFlag">
UPDATE huzhou_contractinfo UPDATE huzhou_contractinfo

4
huzhou/src/main/java/com/easy/admin/modules/huzhou/service/IHuzhouContractinfoService.java

@ -59,5 +59,7 @@ public interface IHuzhouContractinfoService extends IService<HuzhouContractinfo>
HuzhouContractinfo getContractInfoByProjectId(String projectId); HuzhouContractinfo getContractInfoByProjectId(String projectId);
void setSortedContracts(); void setSortedPlanContracts();
void setSortedRealContracts();
} }

20
huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouContractinfoServiceImpl.java

@ -636,8 +636,8 @@ public class HuzhouContractinfoServiceImpl extends ServiceImpl<HuzhouContractinf
} }
@Override @Override
public void setSortedContracts() { public void setSortedPlanContracts() {
List<HuzhouContractinfo> contracts = contractinfoMapper.getSortedContracts(); List<HuzhouContractinfo> contracts = contractinfoMapper.getSortedPlanContracts();
Map<String, Integer> counterMap = new HashMap<>(); Map<String, Integer> counterMap = new HashMap<>();
@ -652,5 +652,21 @@ public class HuzhouContractinfoServiceImpl extends ServiceImpl<HuzhouContractinf
} }
} }
@Override
public void setSortedRealContracts() {
List<HuzhouContractinfo> contracts = contractinfoMapper.getSortedRealContracts();
Map<String, Integer> counterMap = new HashMap<>();
for (HuzhouContractinfo contract : contracts) {
String projectId = contract.getProjectId();
Integer count = counterMap.getOrDefault(projectId, 0) + 1;
contract.setSortFlag(count);
counterMap.put(projectId, count);
// 可以选择批量更新,也可以先收集完再更新
contractinfoMapper.updateSortFlag(contract.getId(), contract.getSortFlag());
}
}
} }

18
huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfofileServiceImpl.java

@ -124,15 +124,7 @@ public class HuzhouPlaninfofileServiceImpl extends ServiceImpl<HuzhouPlaninfofil
if (CollectionUtil.isNotEmpty(contractList)){ if (CollectionUtil.isNotEmpty(contractList)){
hasOldContractInfo(contractList,planinfoid); hasOldContractInfo(contractList,planinfoid);
} }
// 增加计数器
Map<String, Integer> counterMap = new HashMap<>();
for (HuzhouContractinfo contract : contractList) {
String projectId = contract.getProjectId();
Integer count = counterMap.getOrDefault(projectId, 0) + 1;
contract.setSortFlag(count);
counterMap.put(projectId, count);
log.info("projectId:{}--->第:{}笔支付", projectId, count);
}
//立项审批和合同签订 金额输入 //立项审批和合同签订 金额输入
HuzhouProjectinfoMoney huzhouProjectinfoMoney = new HuzhouProjectinfoMoney(); HuzhouProjectinfoMoney huzhouProjectinfoMoney = new HuzhouProjectinfoMoney();
if(approvalMoneyFieldsValue!=null){ if(approvalMoneyFieldsValue!=null){
@ -733,14 +725,6 @@ public class HuzhouPlaninfofileServiceImpl extends ServiceImpl<HuzhouPlaninfofil
contract.setFlag(contractinfoService.hasContractinfoByTaskName(itemProjectId, itemTaskName) ? "实际" : "计划"); contract.setFlag(contractinfoService.hasContractinfoByTaskName(itemProjectId, itemTaskName) ? "实际" : "计划");
return contract; return contract;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
Map<String, Integer> counterMap = new HashMap<>();
for (HuzhouContractinfo contract : collectForSave) {
String projectId = contract.getProjectId();
Integer count = counterMap.getOrDefault(projectId, 0) + 1;
contract.setSortFlag(count);
counterMap.put(projectId, count);
log.info("projectId:{}--->第:{}笔支付", projectId, count);
}
contractinfoService.saveBatch(collectForSave); contractinfoService.saveBatch(collectForSave);
log.info("新增原有合同信息:{}", collectForSave); log.info("新增原有合同信息:{}", collectForSave);

Loading…
Cancel
Save