Browse Source

新增合同信息(计划+实际)查询

ai_dev
gjh 2 months ago
parent
commit
519695669e
  1. 13
      huzhou/src/main/java/com/easy/admin/modules/huzhou/controller/HuzhouContractinfoController.java
  2. 3
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/IHuzhouContractinfoService.java
  3. 55
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouContractinfoServiceImpl.java
  4. 14
      huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/ContractInfoVo.java

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

@ -9,6 +9,7 @@ import com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo;
import com.easy.admin.modules.huzhou.service.IHuzhouContractinfoService; import com.easy.admin.modules.huzhou.service.IHuzhouContractinfoService;
import com.easy.admin.modules.huzhou.service.IHuzhouPlaninfoService; import com.easy.admin.modules.huzhou.service.IHuzhouPlaninfoService;
import com.easy.admin.modules.huzhou.service.IHuzhouProjectinfoService; import com.easy.admin.modules.huzhou.service.IHuzhouProjectinfoService;
import com.easy.admin.modules.huzhou.vo.ContractInfoVo;
import com.easy.admin.modules.huzhou.vo.HuzhouProjectinfoOV; import com.easy.admin.modules.huzhou.vo.HuzhouProjectinfoOV;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -44,7 +45,7 @@ public class HuzhouContractinfoController {
Page<HuzhouProjectinfoOV> pageList = contractinfoService.getContractinfoPageList(projectinfo, pageNo, pageSize); Page<HuzhouProjectinfoOV> pageList = contractinfoService.getContractinfoPageList(projectinfo, pageNo, pageSize);
return Result.ok(pageList); return Result.ok(pageList);
} }
// 合同信息(计划) // 增加合同信息(计划)
@PostMapping(value = "/addContractinfo") @PostMapping(value = "/addContractinfo")
public Result<?> addContractinfo(@RequestParam(value = "file",required = false) MultipartFile[] file, String contractinfoList) throws IOException { public Result<?> addContractinfo(@RequestParam(value = "file",required = false) MultipartFile[] file, String contractinfoList) throws IOException {
ObjectMapper mapper = new ObjectMapper(); ObjectMapper mapper = new ObjectMapper();
@ -54,7 +55,7 @@ public class HuzhouContractinfoController {
return Result.ok("上传合同信息(计划)成功"); return Result.ok("上传合同信息(计划)成功");
} }
// 增加合同信息(实际)
@PostMapping(value = "/addRealContractinfo") @PostMapping(value = "/addRealContractinfo")
public Result<?> addRealContractinfo(@RequestParam(value = "file",required = false) MultipartFile[] file, String contractinfoList) throws IOException { public Result<?> addRealContractinfo(@RequestParam(value = "file",required = false) MultipartFile[] file, String contractinfoList) throws IOException {
ObjectMapper mapper = new ObjectMapper(); ObjectMapper mapper = new ObjectMapper();
@ -109,6 +110,14 @@ public class HuzhouContractinfoController {
return Result.ok(flag); return Result.ok(flag);
} }
@GetMapping("/getAllContractinfo")
public Result<?> getAllContractInfo(String projectid, String taskName){
ContractInfoVo rs = contractinfoService.getAllContractInfo(projectid,taskName);
return Result.ok(rs);
}
@PostMapping("/modifyContractinfo") @PostMapping("/modifyContractinfo")
public Result<?> modifyContractinfo(@RequestParam(value = "file",required = false) MultipartFile[] file, String contractinfoList) throws IOException { public Result<?> modifyContractinfo(@RequestParam(value = "file",required = false) MultipartFile[] file, String contractinfoList) throws IOException {
ObjectMapper mapper = new ObjectMapper(); ObjectMapper mapper = new ObjectMapper();

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

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.easy.admin.modules.huzhou.entity.HuzhouContractinfo; import com.easy.admin.modules.huzhou.entity.HuzhouContractinfo;
import com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo; import com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo;
import com.easy.admin.modules.huzhou.entity.HuzhouRegulationlab; import com.easy.admin.modules.huzhou.entity.HuzhouRegulationlab;
import com.easy.admin.modules.huzhou.vo.ContractInfoVo;
import com.easy.admin.modules.huzhou.vo.HuzhouContractinfoOV; import com.easy.admin.modules.huzhou.vo.HuzhouContractinfoOV;
import com.easy.admin.modules.huzhou.vo.HuzhouProjectinfoOV; import com.easy.admin.modules.huzhou.vo.HuzhouProjectinfoOV;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
@ -37,4 +38,6 @@ public interface IHuzhouContractinfoService extends IService<HuzhouContractinfo>
List<HuzhouContractinfo> ListByProjectIds(List<String> projectIds); List<HuzhouContractinfo> ListByProjectIds(List<String> projectIds);
Boolean hasContractinfoByTaskName(String projectid, String taskName); Boolean hasContractinfoByTaskName(String projectid, String taskName);
ContractInfoVo getAllContractInfo(String projectid, String taskName);
} }

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

@ -12,6 +12,7 @@ import com.easy.admin.modules.huzhou.dao.HuzhouContractinfoMapper;
import com.easy.admin.modules.huzhou.dao.HuzhouSubProjectinfoMapper; import com.easy.admin.modules.huzhou.dao.HuzhouSubProjectinfoMapper;
import com.easy.admin.modules.huzhou.entity.*; import com.easy.admin.modules.huzhou.entity.*;
import com.easy.admin.modules.huzhou.service.*; import com.easy.admin.modules.huzhou.service.*;
import com.easy.admin.modules.huzhou.vo.ContractInfoVo;
import com.easy.admin.modules.huzhou.vo.HuzhouProjectinfoOV; import com.easy.admin.modules.huzhou.vo.HuzhouProjectinfoOV;
import com.easy.admin.modules.huzhou.vo.ProjectInfoAuthSelect; import com.easy.admin.modules.huzhou.vo.ProjectInfoAuthSelect;
import com.easy.admin.sys.model.SysDict; import com.easy.admin.sys.model.SysDict;
@ -93,7 +94,7 @@ public class HuzhouContractinfoServiceImpl extends ServiceImpl<HuzhouContractinf
@Override @Override
public void addContractinfo(MultipartFile[] file, List<HuzhouContractinfo> contractinfoList) throws IOException { public void addContractinfo(MultipartFile[] file, List<HuzhouContractinfo> contractinfoList) throws IOException {
String projectid = contractinfoList.get(0).getProjectId(); String projectid = contractinfoList.get(0).getProjectId();
uploadfileinfoService.saveFileAndFileInfo(file, projectid, "4"); //uploadfileinfoService.saveFileAndFileInfo(file, projectid, "4");
WorkFlow workFlow = workflowService.createFlow("createContract",projectid); WorkFlow workFlow = workflowService.createFlow("createContract",projectid);
String projectId = contractinfoList.get(0).getProjectId(); String projectId = contractinfoList.get(0).getProjectId();
HuzhouProjectinfo huzhouProjectinfo = projectinfoService.getById(projectId); HuzhouProjectinfo huzhouProjectinfo = projectinfoService.getById(projectId);
@ -132,6 +133,7 @@ public class HuzhouContractinfoServiceImpl extends ServiceImpl<HuzhouContractinf
List<HuzhouContractinfo> collect = contractinfoList.stream().map(contract -> { List<HuzhouContractinfo> collect = contractinfoList.stream().map(contract -> {
contract.setStatus("1"); contract.setStatus("1");
contract.setFlag("计划");
return contract; return contract;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
saveBatch(collect); saveBatch(collect);
@ -263,6 +265,7 @@ public class HuzhouContractinfoServiceImpl extends ServiceImpl<HuzhouContractinf
public List<HuzhouContractinfo> getContractinfoByprojectId(String projectid) { public List<HuzhouContractinfo> getContractinfoByprojectId(String projectid) {
LambdaQueryWrapper<HuzhouContractinfo> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<HuzhouContractinfo> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(HuzhouContractinfo::getProjectId, projectid); queryWrapper.eq(HuzhouContractinfo::getProjectId, projectid);
queryWrapper.eq(HuzhouContractinfo::getFlag,"计划");
List<HuzhouContractinfo> list = list(queryWrapper); List<HuzhouContractinfo> list = list(queryWrapper);
return list; return list;
} }
@ -330,17 +333,47 @@ public class HuzhouContractinfoServiceImpl extends ServiceImpl<HuzhouContractinf
LambdaQueryWrapper<HuzhouContractinfo> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<HuzhouContractinfo> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(HuzhouContractinfo::getProjectId, projectid); queryWrapper.eq(HuzhouContractinfo::getProjectId, projectid);
queryWrapper.eq(HuzhouContractinfo::getTaskName, taskName); queryWrapper.eq(HuzhouContractinfo::getTaskName, taskName);
//queryWrapper.ne(HuzhouContractinfo::getFlag, "实际"); List<HuzhouContractinfo> rs = list(queryWrapper);
List<HuzhouContractinfo> tmp = list(queryWrapper); // List<HuzhouContractinfo> rs = tmp.stream()
List<HuzhouContractinfo> rs = tmp.stream() // .filter(item -> item.getFlag() != null && item.getFlag().contains("计划"))
.filter(item -> item.getFlag() != null && item.getFlag().contains("实际")) // .collect(Collectors.toList());
.collect(Collectors.toList()); if (rs.size() == 1) {
if (rs.size() > 0) { log.info("该项目阶段填存在合同信息(计划)");
log.info("该项目阶段填已经填写实际支付金额"); return true;
return false;
} }
log.info("请根据合同信息(计划)信息填写实际支付金额!"); if (rs.size()>1){
return true; return true;
}
return false;
}
@Override
public ContractInfoVo getAllContractInfo(String projectid, String taskName) {
LambdaQueryWrapper<HuzhouContractinfo> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(HuzhouContractinfo::getProjectId, projectid);
queryWrapper.eq(HuzhouContractinfo::getTaskName, taskName);
List<HuzhouContractinfo> rs = list(queryWrapper);
if (rs.size() == 1) {
// 返回合同信息(计划)
ContractInfoVo contractInfoVo = new ContractInfoVo();
List<HuzhouContractinfo> planList = this.getContractinfoByprojectId(projectid);
contractInfoVo.setHasInfo(true);
contractInfoVo.setPlanList(planList);
return contractInfoVo;
}
if (rs.size()>1){
// 返回计划+ 实际
ContractInfoVo contractInfoVo = new ContractInfoVo();
List<HuzhouContractinfo> planList = this.getContractinfoByprojectId(projectid);
List<HuzhouContractinfo> realList = this.getRealContractinfoByprojectId(projectid);
contractInfoVo.setHasInfo(true);
contractInfoVo.setPlanList(planList);
contractInfoVo.setRealList(realList);
return contractInfoVo;
}
ContractInfoVo contractInfoVo = new ContractInfoVo();
contractInfoVo.setHasInfo(false);
return contractInfoVo;
} }

14
huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/ContractInfoVo.java

@ -0,0 +1,14 @@
package com.easy.admin.modules.huzhou.vo;
import com.easy.admin.modules.huzhou.entity.HuzhouContractinfo;
import lombok.Data;
import java.util.List;
@Data
public class ContractInfoVo {
private List<HuzhouContractinfo> planList;
private List<HuzhouContractinfo> realList;
private Boolean hasInfo;
}
Loading…
Cancel
Save