From df044471eec6af32ce61b721b1723abadef1d359 Mon Sep 17 00:00:00 2001 From: mx <1289317512@qq.com> Date: Sun, 29 Sep 2024 15:14:51 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E5=85=AC=E5=8F=B8=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=EF=BC=8C=E4=BB=BB=E5=8A=A1=E6=98=AF=E5=90=A6=E4=BB=A3?= =?UTF-8?q?=E8=B4=A6=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pusong/business/domain/PsCompanyInfo.java | 45 ++++++++++++++ .../business/domain/bo/PsCompanyInfoBo.java | 59 ++++++++++++++++--- .../business/domain/vo/PsCompanyInfoVo.java | 44 ++++++++++++++ .../business/mapper/PsCompanyInfoMapper.java | 3 +- .../service/IPsCompanyInfoService.java | 8 +++ .../impl/PsCompanyInfoServiceImpl.java | 26 +++++++- .../impl/PsContractPayServiceImpl.java | 2 +- .../service/impl/PsTaskServiceImpl.java | 52 ++++++++-------- .../mapper/business/PsCompanyInfoMapper.xml | 12 +++- 9 files changed, 210 insertions(+), 41 deletions(-) diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/PsCompanyInfo.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/PsCompanyInfo.java index e84dbe9..5914bf3 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/PsCompanyInfo.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/PsCompanyInfo.java @@ -144,4 +144,49 @@ public class PsCompanyInfo extends TenantEntity { private String companyType; + + + /** + * 公司设立时间 + */ + private String establishmentTime; + /** + * 税务登记时间 + */ + private String taxRegTime; + /** + * 是否进出口0否1是 + */ + private String inout; + /** + * 是否申请发票0否1是 + */ + private String applyInvoice; + /** + * 是否关联三方0否1是 + */ + private String tripartite; + + /** + * 开户时间 + */ + private String accountOpeningTime; + /** + * 开户行经理姓名 + */ + private String bankManager; + /** + * 社保是否开户0否1是 + */ + private String socialSecurity; + /** + * 公积金是否开户0否1是 + */ + private String accumulationFund; + /** + * 备注 + */ + private String remark; + + } diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/bo/PsCompanyInfoBo.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/bo/PsCompanyInfoBo.java index f4f49a6..8a06613 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/bo/PsCompanyInfoBo.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/bo/PsCompanyInfoBo.java @@ -133,10 +133,7 @@ public class PsCompanyInfoBo { * 注册资金 */ private BigDecimal registerAmount; - /** - * 注册类型 - */ - private String registerType; + /** * 发票类型 */ @@ -146,9 +143,6 @@ public class PsCompanyInfoBo { */ private String companyType; - - - /** * 合同服务类别 */ @@ -174,6 +168,57 @@ public class PsCompanyInfoBo { * 服务总金额 */ BigDecimal businessAmount; + + + /** + * 注册类型 + */ + private String registerType; + + + /** + * 公司设立时间 + */ + private String establishmentTime; + /** + * 税务登记时间 + */ + private String taxRegTime; + /** + * 是否进出口 0否1是 + */ + private String inout; + /** + * 是否申请发票 0否1是 + */ + private String applyInvoice; + /** + * 是否关联三方 0否1是 + */ + private String tripartite; + + /** + * 开户时间 + */ + private String accountOpeningTime; + /** + * 开户行经理姓名 + */ + private String bankManager; + /** + * 社保是否开户 0否1是 + */ + private String socialSecurity; + /** + * 公积金是否开户0否1是 + */ + private String accumulationFund; + /** + * 备注 + */ + private String remark; + + public BigDecimal getContractAmount(){ this.businessAmount = businessList == null ? new BigDecimal(0) : businessList.stream().map(PsContractBusinessBo::getBusinessAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add); return this.businessAmount; diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/vo/PsCompanyInfoVo.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/vo/PsCompanyInfoVo.java index 5c48644..01773e5 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/vo/PsCompanyInfoVo.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/domain/vo/PsCompanyInfoVo.java @@ -204,4 +204,48 @@ public class PsCompanyInfoVo implements Serializable { * 终止审核状态 0未申请,1审核中,2同意 3拒绝 */ private Integer terminationStatus; + + /** + * 公司设立时间 + */ + private String establishmentTime; + /** + * 税务登记时间 + */ + private String taxRegTime; + /** + * 是否进出口 0否1是 + */ + private String inout; + /** + * 是否申请发票 0否1是 + */ + private String applyInvoice; + /** + * 是否关联三方 0否1是 + */ + private String tripartite; + + /** + * 开户时间 + */ + private String accountOpeningTime; + /** + * 开户行经理姓名 + */ + private String bankManager; + /** + * 社保是否开户 0否1是 + */ + private String socialSecurity; + + /** + * 公积金是否开户0否1是 + */ + private String accumulationFund; + /** + * 备注 + */ + private String remark; + } diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/mapper/PsCompanyInfoMapper.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/mapper/PsCompanyInfoMapper.java index aeca34e..6e68f38 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/mapper/PsCompanyInfoMapper.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/mapper/PsCompanyInfoMapper.java @@ -27,6 +27,7 @@ public interface PsCompanyInfoMapper extends BaseMapperPlus selectServiceCompanyList(@Param(Constants.WRAPPER) Wrapper queryWrapper); - PsCompanyInfoVo selectVoCustomManagerById(@Param("id")Long id); + List selectVoCustomManager(@Param(Constants.WRAPPER) Wrapper queryWrapper, @Param("contractCode")String contractCode); + } diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/IPsCompanyInfoService.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/IPsCompanyInfoService.java index ca72de0..7eb61fd 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/IPsCompanyInfoService.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/IPsCompanyInfoService.java @@ -25,6 +25,13 @@ public interface IPsCompanyInfoService { * @return 合同基本信息 */ PsCompanyInfoVo queryById(Long id); + + PsCompanyInfoVo queryVoAndProxyById(Long id, String contractCode); + + List queryByIds(List id); + + List queryVoAndProxyByIds(List ids, String contractCode); + /** * 查询符合条件的公司信息列表 * @@ -32,6 +39,7 @@ public interface IPsCompanyInfoService { * @return 公司信息列表 */ List queryList(PsCompanyInfoBo bo); + /** * 查询符合条件的公司信息列表 * diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsCompanyInfoServiceImpl.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsCompanyInfoServiceImpl.java index b6f6dff..976e19c 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsCompanyInfoServiceImpl.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsCompanyInfoServiceImpl.java @@ -4,9 +4,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.pusong.business.domain.PsContractCompany; import com.pusong.business.domain.PsContractInfo; +import com.pusong.business.domain.PsContractPay; import com.pusong.business.domain.bo.PsCompanyQueryBo; import com.pusong.business.domain.bo.PsContractBusinessBo; import com.pusong.business.enums.ApproverTypeEnum; +import com.pusong.business.enums.PayStatusEnum; import com.pusong.business.mapper.PsContractCompanyMapper; import com.pusong.business.mapper.PsContractInfoMapper; import com.pusong.business.service.approver.ApproverContainer; @@ -56,7 +58,29 @@ public class PsCompanyInfoServiceImpl implements IPsCompanyInfoService { */ @Override public PsCompanyInfoVo queryById(Long id){ - return baseMapper.selectVoCustomManagerById(id); + QueryWrapper lqw = new QueryWrapper(); + lqw.eq("com.id", id); + List psCompanyInfoVos = baseMapper.selectVoCustomManager(lqw, null); + return psCompanyInfoVos.isEmpty() ? null : psCompanyInfoVos.get(0); + } + @Override + public PsCompanyInfoVo queryVoAndProxyById(Long id, String contractCode){ + QueryWrapper lqw = new QueryWrapper(); + lqw.eq("com.id", id); + List psCompanyInfoVos = baseMapper.selectVoCustomManager(lqw, contractCode); + return psCompanyInfoVos.isEmpty() ? null : psCompanyInfoVos.get(0); + } + @Override + public List queryByIds(List ids){ + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.in(PsCompanyInfo::getId, ids); + return baseMapper.selectVoCustomManager(lqw, null); + } + @Override + public List queryVoAndProxyByIds(List ids, String contractCode){ + QueryWrapper lqw = new QueryWrapper(); + lqw.in("com.id", ids); + return baseMapper.selectVoCustomManager(lqw, contractCode); } diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsContractPayServiceImpl.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsContractPayServiceImpl.java index e6bcc49..396f2da 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsContractPayServiceImpl.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsContractPayServiceImpl.java @@ -108,7 +108,7 @@ public class PsContractPayServiceImpl implements IPsContractPayService { baseMapper.insert(pay); //发起审批 ApproverService service = container.getService(ApproverTypeEnum.PAY.getCode()); - service.apply(pay.getId()+"",pay.getContractCode(),payBo.getPayDesc(), pay.getMoney().setScale(2, RoundingMode.HALF_UP).toPlainString()); + service.apply(pay.getId()+"", pay.getContractCode(), payBo.getPayDesc(), pay.getMoney().setScale(2, RoundingMode.HALF_UP).toPlainString()); } /** * 添加退款记录 diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsTaskServiceImpl.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsTaskServiceImpl.java index fd0b732..fdf2e51 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsTaskServiceImpl.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/PsTaskServiceImpl.java @@ -1,13 +1,10 @@ package com.pusong.business.service.impl; -import cn.hutool.core.lang.Assert; import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.pusong.business.domain.PsCompanyInfo; import com.pusong.business.domain.PsContractInfo; import com.pusong.business.domain.PsTaskAppoint; import com.pusong.business.domain.bo.AppointBo; @@ -20,16 +17,13 @@ import com.pusong.business.enums.ContractStatusEnum; import com.pusong.business.enums.TaskStatusEnum; import com.pusong.business.enums.TaskStatusEnum.*; import com.pusong.business.enums.TaskTypeEnum; -import com.pusong.business.mapper.PsContractBusinessMapper; import com.pusong.business.mapper.PsContractInfoMapper; import com.pusong.business.mapper.PsTaskAppointMapper; import com.pusong.business.service.*; import com.pusong.business.service.approver.ApproverContainer; import com.pusong.business.service.approver.ApproverService; import com.pusong.common.core.exception.ServiceException; -import com.pusong.common.core.service.OssService; import com.pusong.common.core.utils.DateUtils; -import com.pusong.common.core.utils.MapstructUtils; import com.pusong.common.core.utils.StringUtils; import com.pusong.common.mybatis.core.page.PageQuery; import com.pusong.common.mybatis.core.page.TableDataInfo; @@ -39,11 +33,8 @@ import com.pusong.system.service.ISysOssService; import jakarta.annotation.Resource; import lombok.RequiredArgsConstructor; import org.apache.ibatis.executor.BatchResult; -import org.jetbrains.annotations.NotNull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.actuate.info.InfoEndpoint; import org.springframework.stereotype.Service; import com.pusong.business.domain.PsTaskMain; import com.pusong.business.mapper.PsTaskMainMapper; @@ -113,6 +104,16 @@ public class PsTaskServiceImpl implements IPsTaskService { }else{ page = baseMapper.queryTaskPageList(pageQuery.build(), lqw); } + + fillInfo(page); + + + return TableDataInfo.build(page); + } + + private void fillInfo(Page page) { + String contractCode = null; + List serviceCompanyIdList = new ArrayList<>(); for (PsTaskMainVo vo : page.getRecords()) { if(vo.getStartDate() != null){ vo.setNumOfDat(DateUtils.calWorkDate(vo.getStartDate(),new Date())); @@ -122,15 +123,24 @@ public class PsTaskServiceImpl implements IPsTaskService { //装填服务公司信息 if (vo.getServiceCompanyId() != null){ - PsCompanyInfoVo serviceCompany = companyInfoService.queryById(vo.getServiceCompanyId()); - vo.setPsCompanySerivceVo(serviceCompany); +// serviceCompanyIdList.add(vo.getServiceCompanyId()); +// contractCode = vo.getContractCode(); + PsCompanyInfoVo psCompanyInfoVo = companyInfoService.queryVoAndProxyById(vo.getServiceCompanyId(), vo.getContractCode()); + vo.setPsCompanySerivceVo(psCompanyInfoVo); } if (vo.getTaskType().equals("2")){ vo.setBusinessTypeName(vo.getBusinessType()); } - } - return TableDataInfo.build(page); + + //装填服务公司信息 + if (!serviceCompanyIdList.isEmpty()){ + List serviceCompany = companyInfoService.queryVoAndProxyByIds(serviceCompanyIdList, contractCode); + Map serviceCompanyMap = serviceCompany.stream().collect(Collectors.toMap(PsCompanyInfoVo::getId, v -> v)); + for (PsTaskMainVo vo : page.getRecords()) { + vo.setPsCompanySerivceVo(serviceCompanyMap.get(vo.getServiceCompanyId())); + } + } } /** @@ -152,22 +162,8 @@ public class PsTaskServiceImpl implements IPsTaskService { lqw.eq(id != null,"appo.id",id); log.info(lqw.getCustomSqlSegment()); Page page = baseMapper.queryChildTaskPageList(pageQuery.build(), lqw); - for (PsTaskMainVo vo : page.getRecords()) { - if(vo.getStartDate() != null){ - vo.setNumOfDat(DateUtils.calWorkDate(vo.getStartDate(),new Date())); - } - vo.setTaskStatusDesc(approverRecordService.getLastFail(vo.getId()+"",null,List.of(ApproverTypeEnum.TASKFINISH.getCode()))); + fillInfo(page); - //装填服务公司信息 - if (vo.getServiceCompanyId() != null){ - PsCompanyInfoVo serviceCompany = companyInfoService.queryById(vo.getServiceCompanyId()); - vo.setPsCompanySerivceVo(serviceCompany); - } - if ("2".equals(vo.getTaskType())){ - vo.setBusinessTypeName(vo.getBusinessType()); - } - - } return TableDataInfo.build(page); } diff --git a/pusong-modules/pusong-business/src/main/resources/mapper/business/PsCompanyInfoMapper.xml b/pusong-modules/pusong-business/src/main/resources/mapper/business/PsCompanyInfoMapper.xml index a3be4d3..b6b27df 100644 --- a/pusong-modules/pusong-business/src/main/resources/mapper/business/PsCompanyInfoMapper.xml +++ b/pusong-modules/pusong-business/src/main/resources/mapper/business/PsCompanyInfoMapper.xml @@ -19,13 +19,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select com.* ,cus.custom_manager + + ,cc.is_proxy + from ps_company_info com - left join ps_custom_info cus on cus.id = com.custom_id - where com.id = ${id} + left join ps_custom_info cus on cus.id = com.custom_id + + inner join ps_contract_company cc on cc.contract_code = ${contractCode} and cc.company_id = com.id + + ${ew.getCustomSqlSegment}