diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProject.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProject.java index e52a47cd..8a9a7391 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProject.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdProject.java @@ -1,15 +1,16 @@ package org.dromara.xzd.domain; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import lombok.EqualsAndHashCode; - -import java.math.BigDecimal; -import java.util.Date; -import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serial; +import java.math.BigDecimal; +import java.util.Date; /** * 项目信息对象 xzd_project @@ -59,21 +60,29 @@ public class XzdProject extends BaseEntity { /** * 计划开工日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date plannedStartDate; /** * 计划竣工日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date plannedCompletionDate; /** * 实际开工日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date actualStartDate; /** * 实际竣工日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date actualCompletionDate; /** @@ -159,6 +168,8 @@ public class XzdProject extends BaseEntity { /** * 立项日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date projectEstablishmentDate; /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectBo.java index c6864c0f..63fe4be3 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectBo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdProjectBo.java @@ -1,25 +1,17 @@ package org.dromara.xzd.domain.bo; -import org.dromara.xzd.domain.XzdProject; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; +import com.fasterxml.jackson.annotation.JsonFormat; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import lombok.EqualsAndHashCode; -import jakarta.validation.constraints.*; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.xzd.domain.XzdProject; +import org.springframework.format.annotation.DateTimeFormat; import java.math.BigDecimal; import java.util.Date; import java.util.List; -import com.fasterxml.jackson.annotation.JsonFormat; -import org.dromara.xzd.domain.XzdProjectInternalAccounts; -import org.dromara.xzd.domain.vo.XzdProjectPersonnelVo; -import org.dromara.xzd.domain.vo.XzdProjectProfileVo; -import org.dromara.xzd.domain.vo.XzdProjectTaxInfoVo; -import org.dromara.xzd.domain.vo.XzdProjectWarehousesVo; - /** * 项目信息业务对象 xzd_project * @@ -68,24 +60,28 @@ public class XzdProjectBo extends BaseEntity { /** * 计划开工日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") private Date plannedStartDate; /** * 计划竣工日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") private Date plannedCompletionDate; /** * 实际开工日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") private Date actualStartDate; /** * 实际竣工日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") private Date actualCompletionDate; @@ -188,6 +184,8 @@ public class XzdProjectBo extends BaseEntity { /** * 立项日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date projectEstablishmentDate; /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectVo.java index f75e749d..b4809b6a 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdProjectVo.java @@ -1,19 +1,16 @@ package org.dromara.xzd.domain.vo; -import java.math.BigDecimal; -import java.util.Date; -import com.fasterxml.jackson.annotation.JsonFormat; -import org.dromara.xzd.domain.XzdProject; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; -import org.dromara.common.excel.annotation.ExcelDictFormat; -import org.dromara.common.excel.convert.ExcelDictConvert; +import com.fasterxml.jackson.annotation.JsonFormat; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; -import org.dromara.xzd.domain.bo.*; +import org.dromara.xzd.domain.XzdProject; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serial; import java.io.Serializable; +import java.math.BigDecimal; import java.util.Date; import java.util.List; @@ -74,6 +71,7 @@ public class XzdProjectVo implements Serializable { * 计划开工日期 */ @ExcelProperty(value = "计划开工日期") + @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") private Date plannedStartDate; @@ -81,6 +79,7 @@ public class XzdProjectVo implements Serializable { * 计划竣工日期 */ @ExcelProperty(value = "计划竣工日期") + @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") private Date plannedCompletionDate; @@ -88,6 +87,7 @@ public class XzdProjectVo implements Serializable { * 实际开工日期 */ @ExcelProperty(value = "实际开工日期") + @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") private Date actualStartDate; @@ -95,6 +95,7 @@ public class XzdProjectVo implements Serializable { * 实际竣工日期 */ @ExcelProperty(value = "实际竣工日期") + @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") private Date actualCompletionDate; @@ -227,6 +228,8 @@ public class XzdProjectVo implements Serializable { * 立项日期 */ @ExcelProperty(value = "立项日期") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date projectEstablishmentDate; /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectServiceImpl.java index 55fa917a..9562d544 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdProjectServiceImpl.java @@ -59,6 +59,8 @@ public class XzdProjectServiceImpl extends ServiceImpl profileLambdaQueryWrapper = new LambdaQueryWrapper<>(); + profileLambdaQueryWrapper.eq(XzdProjectProfile::getXzdProjectId, entity.getId()); + entity.setXmgk(xzdProjectProfileService.getBaseMapper().selectVoOne(profileLambdaQueryWrapper)); - //项目概况 - LambdaQueryWrapper profileLambdaQueryWrapper = new LambdaQueryWrapper<>(); - profileLambdaQueryWrapper.eq(XzdProjectProfile::getXzdProjectId, entity.getId()); - entity.setXmgk(xzdProjectProfileService.getBaseMapper().selectVoOne(profileLambdaQueryWrapper)); + //项目人员 + LambdaQueryWrapper personnelLambdaQueryWrapper = new LambdaQueryWrapper<>(); + personnelLambdaQueryWrapper.eq(XzdProjectPersonnel::getXzdProjectId, entity.getId()); + entity.setXmry(xzdProjectPersonnelService.getBaseMapper().selectVoList(personnelLambdaQueryWrapper)); - //项目人员 - LambdaQueryWrapper personnelLambdaQueryWrapper = new LambdaQueryWrapper<>(); - personnelLambdaQueryWrapper.eq(XzdProjectPersonnel::getXzdProjectId, entity.getId()); - entity.setXmry(xzdProjectPersonnelService.getBaseMapper().selectVoList(personnelLambdaQueryWrapper)); + //税务信息 + LambdaQueryWrapper taxInfoLambdaQueryWrapper = new LambdaQueryWrapper<>(); + taxInfoLambdaQueryWrapper.eq(XzdProjectTaxInfo::getXzdProjectId, entity.getId()); + entity.setSwxx(xzdProjectTaxInfoService.getBaseMapper().selectVoOne(taxInfoLambdaQueryWrapper)); - //税务信息 - LambdaQueryWrapper taxInfoLambdaQueryWrapper = new LambdaQueryWrapper<>(); - taxInfoLambdaQueryWrapper.eq(XzdProjectTaxInfo::getXzdProjectId, entity.getId()); - entity.setSwxx(xzdProjectTaxInfoService.getBaseMapper().selectVoOne(taxInfoLambdaQueryWrapper)); + //核算信息 + LambdaQueryWrapper accountingInfoLambdaQueryWrapper = new LambdaQueryWrapper<>(); + accountingInfoLambdaQueryWrapper.eq(XzdProjectAccountingInfo::getXzdProjectId, entity.getId()); + entity.setHsxx(xzdProjectAccountingInfoService.getBaseMapper().selectVoOne(accountingInfoLambdaQueryWrapper)); - //核算信息 - LambdaQueryWrapper accountingInfoLambdaQueryWrapper = new LambdaQueryWrapper<>(); - accountingInfoLambdaQueryWrapper.eq(XzdProjectAccountingInfo::getXzdProjectId, entity.getId()); - entity.setHsxx(xzdProjectAccountingInfoService.getBaseMapper().selectVoOne(accountingInfoLambdaQueryWrapper)); + //仓库信息 + LambdaQueryWrapper warehousesLambdaQueryWrapper = new LambdaQueryWrapper<>(); + warehousesLambdaQueryWrapper.eq(XzdProjectWarehouses::getXzdProjectId, entity.getId()); + entity.setXmck(xzdProjectWarehousesService.getBaseMapper().selectVoList(warehousesLambdaQueryWrapper)); - //仓库信息 - LambdaQueryWrapper warehousesLambdaQueryWrapper = new LambdaQueryWrapper<>(); - warehousesLambdaQueryWrapper.eq(XzdProjectWarehouses::getXzdProjectId, entity.getId()); - entity.setXmck(xzdProjectWarehousesService.getBaseMapper().selectVoList(warehousesLambdaQueryWrapper)); + //内部账户信息 + LambdaQueryWrapper internalAccountsLambdaQueryWrapper = new LambdaQueryWrapper<>(); + internalAccountsLambdaQueryWrapper.eq(XzdProjectInternalAccounts::getXzdProjectId, entity.getId()); + entity.setNbzj(xzdProjectInternalAccountsService.getBaseMapper().selectVoList(internalAccountsLambdaQueryWrapper)); - //内部账户信息 - LambdaQueryWrapper internalAccountsLambdaQueryWrapper = new LambdaQueryWrapper<>(); - internalAccountsLambdaQueryWrapper.eq(XzdProjectInternalAccounts::getXzdProjectId, entity.getId()); - entity.setNbzj(xzdProjectInternalAccountsService.getBaseMapper().selectVoList(internalAccountsLambdaQueryWrapper)); + //参与单位信息 + LambdaQueryWrapper participatingUnitsLambdaQueryWrapper = new LambdaQueryWrapper<>(); + participatingUnitsLambdaQueryWrapper.eq(XzdProjectParticipatingUnits::getXzdProjectId, entity.getId()); + entity.setCjdw(xzdProjectParticipatingUnitsService.getBaseMapper().selectVoList(participatingUnitsLambdaQueryWrapper)); - //参与单位信息 - LambdaQueryWrapper participatingUnitsLambdaQueryWrapper = new LambdaQueryWrapper<>(); - participatingUnitsLambdaQueryWrapper.eq(XzdProjectParticipatingUnits::getXzdProjectId, entity.getId()); - entity.setCjdw(xzdProjectParticipatingUnitsService.getBaseMapper().selectVoList(participatingUnitsLambdaQueryWrapper)); - - //建设单位 - R byId = iXzdCorrespondentList.getCustomerByid(entity.getConstructionUnit()); - if (byId!=null){ - if (byId.getData().getXzdCustomerinformation()!=null){ - entity.setConstructionUnitName(byId.getData().getXzdCustomerinformation().getUnitName()); + //建设单位 + R byId = iXzdCorrespondentList.getCustomerByid(entity.getConstructionUnit()); + if (byId != null) { + if (byId.getData().getXzdCustomerinformation() != null) { + entity.setConstructionUnitName(byId.getData().getXzdCustomerinformation().getUnitName()); + } } - } // entity.setConstructionUnitName(iXzdCorrespondentList); - //备案项目经理 - SysUserVo userVo = sysUserService.selectUserById(entity.getFilingManager()); - if (userVo!=null){ - entity.setFilingManagerName(userVo.getNickName()); - } - - //执行经理 - SysUserVo userVo1 = sysUserService.selectUserById(entity.getManagerExecution()); - if (userVo1!=null){ - entity.setManagerExecutionName(userVo1.getNickName()); - } - - //责任人 - SysUserVo userVo2 = sysUserService.selectUserById(entity.getManagerResponsible()); - if (userVo2!=null){ - entity.setManagerResponsibleName(userVo2.getNickName()); - } - - //项目类型 - if (entity.getProjectType() != null){ - XzdProjectTypeVo xzdProjectTypeVo = xzdProjectTypeService.queryById(entity.getProjectType()); - if (xzdProjectTypeVo != null){ - entity.setProjectTypeName(xzdProjectTypeVo.getTypeName()); - } - } - - /** - * 管理组织 - */ - if (entity.getManagementOrganization() != null){ - SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(entity.getManagementOrganization()); - if (sysDeptVo != null){ - entity.setManagementOrganizationName(sysDeptVo.getDeptName()); - } - } - - /** - * 默认财务 组织 - */ - if (entity.getDefaultFinancialOrganization() != null){ - SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(entity.getDefaultFinancialOrganization()); - if (sysDeptVo != null){ - entity.setDefaultFinancialOrganizationName(sysDeptVo.getDeptName()); - } - } - - /** - * 涉及财务组织 - */ - if (entity.getInvolvedFinancialOrganization() != null && !entity.getInvolvedFinancialOrganization().isEmpty()){ - - List list = Arrays.stream(entity.getInvolvedFinancialOrganization().split(",")).toList(); - - List name = new ArrayList<>(); - - for (String s : list) { - SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(Long.valueOf(s)); - if (sysDeptVo != null) { - name.add(sysDeptVo.getDeptName()); + //备案项目经理 + if (entity.getFilingManager() != null) { + XzdProjectManagerApproval approvalVo = xzdProjectManagerApprovalService.getBaseMapper().selectById(entity.getFilingManager()); + if (approvalVo != null) { + entity.setFilingManagerName(approvalVo.getProspectiveManagerName()); + approvalVo.setProjectName(entity.getProjectName()); + xzdProjectManagerApprovalService.updateById(approvalVo); } } - - if (!name.isEmpty()){ - entity.setInvolvedFinancialOrganizationName(String.join(",", name)); - } - } - - /** - * 共享组织 - */ - if (entity.getSharingOrganization() != null && !entity.getSharingOrganization().isEmpty()){ - - List list = Arrays.stream(entity.getSharingOrganization().split(",")).toList(); - - List name = new ArrayList<>(); - - for (String s : list) { - SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(Long.valueOf(s)); - if (sysDeptVo != null) { - name.add(sysDeptVo.getDeptName()); + //执行经理 + if (entity.getManagerExecution() != null) { + XzdProjectManagerApproval approvalVo = xzdProjectManagerApprovalService.getBaseMapper().selectById(entity.getManagerExecution()); + if (approvalVo != null) { + entity.setManagerExecutionName(approvalVo.getProspectiveManagerName()); + approvalVo.setProjectName(entity.getProjectName()); + xzdProjectManagerApprovalService.updateById(approvalVo); } } - - if (!name.isEmpty()){ - entity.setSharingOrganizationName(String.join(",", name)); + //责任人 + SysUserVo userVo2 = sysUserService.selectUserById(entity.getManagerResponsible()); + if (userVo2 != null) { + entity.setManagerResponsibleName(userVo2.getNickName()); } + //项目类型 + if (entity.getProjectType() != null) { + XzdProjectTypeVo xzdProjectTypeVo = xzdProjectTypeService.queryById(entity.getProjectType()); + if (xzdProjectTypeVo != null) { + entity.setProjectTypeName(xzdProjectTypeVo.getTypeName()); + } + } + + /** + * 管理组织 + */ + if (entity.getManagementOrganization() != null) { + SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(entity.getManagementOrganization()); + if (sysDeptVo != null) { + entity.setManagementOrganizationName(sysDeptVo.getDeptName()); + } + } + + /** + * 默认财务 组织 + */ + if (entity.getDefaultFinancialOrganization() != null) { + SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(entity.getDefaultFinancialOrganization()); + if (sysDeptVo != null) { + entity.setDefaultFinancialOrganizationName(sysDeptVo.getDeptName()); + } + } + + /** + * 涉及财务组织 + */ + if (entity.getInvolvedFinancialOrganization() != null && !entity.getInvolvedFinancialOrganization().isEmpty()) { + + List list = Arrays.stream(entity.getInvolvedFinancialOrganization().split(",")).toList(); + + List name = new ArrayList<>(); + + for (String s : list) { + SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(Long.valueOf(s)); + if (sysDeptVo != null) { + name.add(sysDeptVo.getDeptName()); + } + } + + + if (!name.isEmpty()) { + entity.setInvolvedFinancialOrganizationName(String.join(",", name)); + } + } + + /** + * 共享组织 + */ + if (entity.getSharingOrganization() != null && !entity.getSharingOrganization().isEmpty()) { + + List list = Arrays.stream(entity.getSharingOrganization().split(",")).toList(); + + List name = new ArrayList<>(); + + for (String s : list) { + SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(Long.valueOf(s)); + if (sysDeptVo != null) { + name.add(sysDeptVo.getDeptName()); + } + } + + + if (!name.isEmpty()) { + entity.setSharingOrganizationName(String.join(",", name)); + } + // SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(entity.getSharingOrganization()); // if (sysDeptVo != null){ // entity.setSharingOrganizationName(sysDeptVo.getDeptName()); // } + } } - } } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/XzdProjectMapper.xml b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/XzdProjectMapper.xml index 921d2788..20e8a8e6 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/XzdProjectMapper.xml +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/xzd/XzdProjectMapper.xml @@ -20,8 +20,8 @@ project.planned_completion_date as plannedCompletionDate, project.actual_start_date as actualStartDate, project.actual_completion_date as actualCompletionDate, - user.nick_name as managerExecutionName, - user2.nick_name as filingManagerName, + approval1.prospective_manager_name as filingManagerName, + approval2.prospective_manager_name as managerExecutionName, profile.project_address as xmdz, project.management_organization as managementOrganization, project.construction_unit as constructionUnit, @@ -40,10 +40,12 @@ FROM xzd_project as project LEFT JOIN xzd_project_profile as profile ON project.id = profile.xzd_project_id - LEFT JOIN sys_user as user ON project.manager_execution = user.user_id - LEFT JOIN sys_user as user2 ON project.filing_manager = user2.user_id +# LEFT JOIN sys_user as user ON project.manager_execution = user.user_id +# LEFT JOIN sys_user as user2 ON project.filing_manager = user2.user_id LEFT JOIN sys_user as user3 ON project.create_by = user3.user_id LEFT JOIN xzd_project_type as type ON project.project_type = type.id + LEFT JOIN xzd_project_manager_approval as approval1 ON project.filing_manager = approval1.id + LEFT JOIN xzd_project_manager_approval as approval2 ON project.manager_execution = approval2.id