diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java index ddb4a173..b515636b 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java @@ -30,20 +30,24 @@ public class PayIncomeContractCommon { */ public final static Integer PACK0 = 0; /** - * 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目) + * 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目) */ public final static String PROJECT_TYPE1 = "1"; /** - * 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目) + * 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目) */ public final static String PROJECT_TYPE2 = "2"; /** - * 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目) + * 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目) */ public final static String PROJECT_TYPE3 = "3"; /** - * 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目) + * 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目) */ public final static String PROJECT_TYPE4 = "4"; + /** + * 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目) + */ + public final static String PROJECT_TYPE5 = "5"; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java index e1cbd7b3..cb8b51b6 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java @@ -100,7 +100,7 @@ public class PayIncomeContractController extends JeroController 50){ return Result.error("关联项目长度不能大于50个字符!"); } - // todo 缺少会议,会员项目 + // todo 缺少会议,会员项目,标协会员 Page page = new Page<>(pageNo, pageSize); IPage pageList = payIncomeContractService.queryPageList(page, payIncomeContract,chargeStatus,projectName,startTime,endTime); pageList.getRecords().forEach(p->{ diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PayIncomeContractAssociated.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PayIncomeContractAssociated.java index e26aaea1..d9d56bdb 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PayIncomeContractAssociated.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PayIncomeContractAssociated.java @@ -39,9 +39,9 @@ public class PayIncomeContractAssociated implements Serializable { @Excel(name = "项目id", width = 15) @ApiModelProperty(value = "项目id") private java.lang.String projectId; - /**项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目)*/ - @Excel(name = "项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目)", width = 15) - @ApiModelProperty(value = "项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目)") + /**项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)*/ + @Excel(name = "项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)", width = 15) + @ApiModelProperty(value = "项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)") private java.lang.Integer projectType; /**创建人*/ @ApiModelProperty(value = "创建人") diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java index 81460a47..ce867cbc 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java @@ -331,6 +331,9 @@ public class PayIncomeContractServiceImpl extends ServiceImpl listAll(PayCommonProject payCommonProject,HttpServletRequest req) { + if(StringUtils.isBlank(payCommonProject.getChargeCompanyId())){ + return Result.error("企业id不能为空!"); + } QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(payCommonProject, req.getParameterMap()); List list = payCommonProjectService.list(queryWrapper); List listNew = new ArrayList<>(); + List listPayCommonProjectOutputNew = new ArrayList<>(); if(!CollectionUtils.isEmpty(list)){ + List listProjectId = list.stream().map(PayCommonProject::getId).collect(Collectors.toList()); + // 获取已经关联合同的普通项目 + LambdaQueryWrapper queryPayIncomeContractAssociated = new LambdaQueryWrapper<>(); + queryPayIncomeContractAssociated.in(PayIncomeContractAssociated::getId, listProjectId); + queryPayIncomeContractAssociated.eq(PayIncomeContractAssociated::getProjectType, PayProjectCommon.PROJECT_TYPE1); + List listPayIncomeContractAssociated = payIncomeContractAssociatedService.list(queryPayIncomeContractAssociated); + List listProjectIdNew = new ArrayList<>(); + if(!CollectionUtils.isEmpty(listPayIncomeContractAssociated)){ + listProjectIdNew = listPayIncomeContractAssociated.stream().map(PayIncomeContractAssociated::getProjectId).collect(Collectors.toList()); + } String str = JSON.toJSONString(list); listNew = JSONArray.parseArray(str,PayCommonProjectOutput.class); + List finalListProjectId = listProjectIdNew; listNew.forEach(p->{ - if(!StringUtils.isBlank(p.getChargeUse())){ - p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use",p.getChargeUse())); + // 没有关联合同 + if(!CollectionUtils.isEmpty(finalListProjectId) && !finalListProjectId.contains(p.getId())){ + if(!StringUtils.isBlank(p.getChargeUse())){ + p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use",p.getChargeUse())); + } + listPayCommonProjectOutputNew.add(p); } }); } - return Result.OK(listNew); + return Result.OK(listPayCommonProjectOutputNew); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupController.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupController.java index 8984a375..1409aee1 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupController.java @@ -15,6 +15,7 @@ import com.jero.common.exception.JeroBootException; import com.jero.common.system.base.controller.JeroController; import com.jero.common.system.query.QueryGenerator; import com.jero.common.util.ValidUtil; +import com.jero.project.common.PayProjectCommon; import com.jero.project.vo.PayWorkingGroupPayment; import com.jero.project.vo.PayWorkingGroupVO; import com.jero.project.entity.PayWorkingGroupSubItem; @@ -108,12 +109,12 @@ public class PayWorkingGroupController extends JeroController queryListByCompany(@RequestParam(name = "companyId") String companyId, - @RequestParam(name = "workingGroupProject") String workingGroupProject, + @RequestParam(name = "workingGroupProject",required = false) String workingGroupProject, @RequestParam(name = "year",required = false) String year) { if(StringUtils.isBlank(companyId)){ return Result.error("企业id不能为空!"); } - List list = payWorkingGroupService.queryListByCompany(companyId,workingGroupProject,year); + List list = payWorkingGroupService.queryListByCompany(companyId,workingGroupProject,year, PayProjectCommon.PROJECT_TYPE2); if(CollectionUtils.isEmpty(list)){ setPayWorkingGroupSubItem(list); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java index f32c447f..c44e452b 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java @@ -34,6 +34,7 @@ public interface PayWorkingGroupMapper extends BaseMapper { * @Return * @Exception */ - List queryListByCompany(@Param("companyId") String companyId,@Param("workingGroupProject") String workingGroupProject, @Param("year") String year); + List queryListByCompany(@Param("companyId") String companyId,@Param("workingGroupProject") String workingGroupProject, + @Param("year") String year,@Param("projectType") String projectType); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml index 6c124113..69ba6f66 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml @@ -61,19 +61,16 @@ pwg.create_time AS createTime, pwg.update_by AS updateBy, pwg.update_time AS updateTime - FROM pay_working_group pwg - LEFT JOIN pay_working_group_subitem pwgs ON pwg.id = pwgs.working_group_id - + FROM pay_working_group_subitem pwgs + LEFT JOIN pay_working_group pwg ON pwg.id = pwgs.working_group_id + WHERE pwg.id is not null AND pwg.id !='' AND pwgs.charge_company_id = #{companyId} + AND pwgs.id NOT IN (SELECT project_id FROM pay_income_contract_associated WHERE project_type=#{projectType}) AND pwg.working_group_project = #{workingGroupProject} - - AND pwgs.charge_company_id = #{companyId} - AND pwg.year = #{year} - GROUP BY pwg.id ORDER BY pwg.create_time DESC \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayWorkingGroupService.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayWorkingGroupService.java index f3e9c11a..a782c215 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayWorkingGroupService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayWorkingGroupService.java @@ -32,5 +32,5 @@ public interface IPayWorkingGroupService extends IService { * @Return * @Exception */ - List queryListByCompany(String companyId,String workingGroupProject,String year); + List queryListByCompany(String companyId,String workingGroupProject,String year,String projectType); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupServiceImpl.java index 48b74e28..257610cd 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupServiceImpl.java @@ -31,7 +31,7 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl queryListByCompany(String companyId,String workingGroupProject, String year) { - return payWorkingGroupMapper.queryListByCompany(companyId,workingGroupProject,year); + public List queryListByCompany(String companyId,String workingGroupProject, String year,String projectType) { + return payWorkingGroupMapper.queryListByCompany(companyId,workingGroupProject,year,projectType); } }