2 Коміти 98ed1a0556 ... 1eb445dcf4

Автор SHA1 Опис Дата
  赵越越 1eb445dcf4 Merge remote-tracking branch 'origin/master' 2 тижнів тому
  赵越越 41001390a8 禅道BUG修改 2 тижнів тому
15 змінених файлів з 147 додано та 31 видалено
  1. 28 4
      assistMg/src/main/java/com/hotent/baseInfo/manager/impl/CostCatalogManagerImpl.java
  2. 1 1
      assistMg/src/main/java/com/hotent/baseInfo/manager/impl/CostDocumentTemplateManagerImpl.java
  3. 2 0
      assistMg/src/main/java/com/hotent/baseInfo/manager/impl/CostDocumentWhManagerImpl.java
  4. 13 0
      assistMg/src/main/java/com/hotent/baseInfo/model/CostDocumentWh.java
  5. 35 0
      assistMg/src/main/java/com/hotent/project/controller/CostProjectScenarioController.java
  6. 17 3
      assistMg/src/main/java/com/hotent/project/manager/impl/CostProjectApprovalManagerImpl.java
  7. 1 1
      assistMg/src/main/java/com/hotent/project/manager/impl/CostProjectProccessManagerImpl.java
  8. 5 0
      assistMg/src/main/java/com/hotent/project/req/CostProjectApprovalPublishReq.java
  9. 1 1
      assistMg/src/main/java/com/hotent/surveyinfo/controller/CostSurveyFdTemplateVersionController.java
  10. 7 3
      assistMg/src/main/java/com/hotent/surveyinfo/controller/CostSurveyTemplateController.java
  11. 24 9
      assistMg/src/main/java/com/hotent/surveyinfo/controller/CostSurveyTemplateVersionController.java
  12. 2 1
      assistMg/src/main/java/com/hotent/surveyinfo/dao/CostSurveyFdTemplateDao.java
  13. 1 1
      assistMg/src/main/java/com/hotent/surveyinfo/manager/impl/CostSurveyFdTemplateManagerImpl.java
  14. 4 6
      assistMg/src/main/resources/mapper/CostDocumentWhMapper.xml
  15. 6 1
      assistMg/src/main/resources/mapper/CostSurveyFdTemplateMapper.xml

+ 28 - 4
assistMg/src/main/java/com/hotent/baseInfo/manager/impl/CostCatalogManagerImpl.java

@@ -18,6 +18,7 @@ import com.hotent.uc.manager.UserManager;
 import com.hotent.uc.model.User;
 import com.hotent.uc.util.ContextUtil;
 import com.hotent.util.CopyUtil;
+import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -274,10 +275,8 @@ public class CostCatalogManagerImpl extends BaseManagerImpl<CostCatalogDao, Cost
         catalog.setStatus(statusDto.getStatus());
         catalog.setUpdateTime(LocalDateTime.now());
         catalog.setUpdateBy(ContextUtil.getCurrentUser().getFullname());
-        QueryWrapper<CostCatalog> wrapper = new QueryWrapper<>();
-        wrapper.eq("parent_id",catalog.getCatalogId());
-        List<CostCatalog> list = this.list(wrapper);
-        List<CostCatalog> collect = list.stream().peek(l -> {
+        List<CostCatalog> allSubCatalogsIterative = this.getAllSubCatalogsIterative(catalog.getCatalogId());
+        List<CostCatalog> collect = allSubCatalogsIterative.stream().peek(l -> {
             l.setStatus(catalog.getStatus());
             l.setUpdateTime(catalog.getUpdateTime());
             l.setUpdateBy(catalog.getUpdateBy());
@@ -286,6 +285,31 @@ public class CostCatalogManagerImpl extends BaseManagerImpl<CostCatalogDao, Cost
         return this.updateById(catalog);
     }
 
+    public List<CostCatalog> getAllSubCatalogsIterative(String catalogId) {
+        List<CostCatalog> allSubCatalogs = new ArrayList<>();
+        Queue<String> queue = new LinkedList<>();
+        queue.offer(catalogId);
+
+        while (!queue.isEmpty()) {
+            String currentParentId = queue.poll();
+
+            QueryWrapper<CostCatalog> wrapper = new QueryWrapper<>();
+            wrapper.eq("parent_id", currentParentId);
+            List<CostCatalog> subCatalogs = this.list(wrapper);
+
+            if (CollectionUtils.isNotEmpty(subCatalogs)) {
+                allSubCatalogs.addAll(subCatalogs);
+                // 将下级目录的ID加入队列继续查询
+                subCatalogs.stream()
+                        .map(CostCatalog::getCatalogId)
+                        .forEach(queue::offer);
+            }
+        }
+
+        return allSubCatalogs;
+    }
+
+
     @Override
     public boolean updateCategory(CategoryCreateDto createDto) {
         if (createDto.getCatalogId() == null) {

+ 1 - 1
assistMg/src/main/java/com/hotent/baseInfo/manager/impl/CostDocumentTemplateManagerImpl.java

@@ -109,7 +109,7 @@ public class CostDocumentTemplateManagerImpl extends BaseManagerImpl<CostDocumen
 		CostDocumentTemplate entity = BeanUtil.copyProperties(entityReq, CostDocumentTemplate.class);
 		if(costDocumentTemplate== null ){
 			entity.setIsDeleted(BaseConstant.NORMAL_STATUS);
-			entity.setCreateBy(user.getAccount());
+			entity.setCreateBy(user.getFullname());
 			entity.setCreateTime(LocalDateTime.now());
 			super.save(entity);
 			List<CostDocumentTemplateFile> costDocumentTemplateFiles = entityReq.getCostDocumentTemplateFiles();

+ 2 - 0
assistMg/src/main/java/com/hotent/baseInfo/manager/impl/CostDocumentWhManagerImpl.java

@@ -102,9 +102,11 @@ public class CostDocumentWhManagerImpl extends BaseManagerImpl<CostDocumentWhDao
         User user = userService.getByAccount(iUser.getAccount());
         if (StringUtil.isNotEmpty(costDocumentWh.getId())) {
             costDocumentWh.setUpdateBy(user.getFullname());
+            costDocumentWh.setCreateId(user.getAccount());
             costDocumentWh.setUpdateTime(LocalDateTime.now());
         }else {
             costDocumentWh.setCreateTime(LocalDateTime.now());
+            costDocumentWh.setCreateId(user.getAccount());
             costDocumentWh.setCreateBy(user.getFullname());
         }
         costDocumentWh.setLastGenerateDate(LocalDate.now());

+ 13 - 0
assistMg/src/main/java/com/hotent/baseInfo/model/CostDocumentWh.java

@@ -86,6 +86,11 @@ public class CostDocumentWh extends BaseModel<CostDocumentWh> {
     @TableField("create_by")
     @JsonProperty("createBy")
     private String createBy;
+
+    @ApiModelProperty(value = "创建人")
+    @TableField("create_id")
+    @JsonProperty("createId")
+    private String createId;
     
     @ApiModelProperty(value = "更新时间")
     @TableField("update_time")
@@ -225,6 +230,14 @@ public class CostDocumentWh extends BaseModel<CostDocumentWh> {
     public void setCreateBy(String createBy) {
         this.createBy = createBy;
     }
+
+    public String getCreateId() {
+        return createId;
+    }
+
+    public void setCreateId(String createId) {
+        this.createId = createId;
+    }
     public LocalDateTime getUpdateTime() {
         return updateTime;
     }

+ 35 - 0
assistMg/src/main/java/com/hotent/project/controller/CostProjectScenarioController.java

@@ -1,10 +1,14 @@
 package com.hotent.project.controller;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.hotent.base.annotation.ApiGroup;
 import com.hotent.base.constants.ApiGroupConsts;
+import com.hotent.base.util.UniqueIdUtil;
 import com.hotent.common.CrudService;
+import com.hotent.project.req.CostProjectDocumentReq;
 import io.swagger.annotations.Api;
+import org.springframework.beans.BeanUtils;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -19,6 +23,8 @@ import com.hotent.base.controller.BaseController;
 import com.hotent.project.model.CostProjectScenario;
 import com.hotent.project.manager.CostProjectScenarioManager;
 
+import java.util.List;
+
 /**
  * 监审工作方案 前端控制器
  *
@@ -48,4 +54,33 @@ public class CostProjectScenarioController extends BaseController<CostProjectSce
 		return CommonResult.<CostProjectScenario>ok().value(baseService.getDetail(projectId));
 	}
 
+
+
+	/**
+	 * 根据id获取监审工作方案数据详情
+	 * @param projectId
+	 * @return
+	 * @throws Exception
+	 * ModelAndView
+	 */
+	@PostMapping(value="/save")
+	@ApiOperation(value="根据项目id获取监审工作方案数据详情",httpMethod = "GET",notes = "根据项目id获取监审工作方案数据详情")
+	public synchronized CommonResult<CostProjectScenario> save(@RequestBody CostProjectScenario req) throws Exception{
+		QueryWrapper<CostProjectScenario> wrapper = new QueryWrapper<>();
+		wrapper.eq("project_id",req.getProjectId());
+		List<CostProjectScenario> list = baseService.list(wrapper);
+		if (list!=null && !list.isEmpty()) {
+			CostProjectScenario costProjectScenario = list.get(0);
+			costProjectScenario.setBasicInfo(req.getBasicInfo());
+			costProjectScenario.setOtherContent(req.getOtherContent());
+			costProjectScenario.setScopeContent(req.getScopeContent());
+			costProjectScenario.setStepsMethods(req.getStepsMethods());
+			baseService.updateById(costProjectScenario);
+		}else {
+			req.setId(UniqueIdUtil.getSuid());
+			boolean save = baseService.save(req);
+		}
+		return CommonResult.<CostProjectScenario>ok().value(req);
+	}
+
 }

+ 17 - 3
assistMg/src/main/java/com/hotent/project/manager/impl/CostProjectApprovalManagerImpl.java

@@ -62,6 +62,9 @@ public class CostProjectApprovalManagerImpl extends BaseManagerImpl<CostProjectA
     private OrgManager orgManager;
 
     @Autowired
+    private CostProjectDocumentManager costProjectDocumentManager;
+
+    @Autowired
     private AuditedUnitManager auditedUnitManager;
 
 
@@ -88,8 +91,8 @@ public class CostProjectApprovalManagerImpl extends BaseManagerImpl<CostProjectA
     private CostProjectTaskMaterialManager costProjectTaskMaterialManager;
 
 
-    @Autowired
-    private CostProjectDocumentManager costProjectDocumentManager;
+    /*@Autowired
+    private CostProjectDocumentManager costProjectDocumentManager;*/
 
 
     @Autowired
@@ -441,6 +444,17 @@ public class CostProjectApprovalManagerImpl extends BaseManagerImpl<CostProjectA
             throw new BaseException("项目已发布");
         }
 
+        QueryWrapper<CostProjectDocument> wrapper = new QueryWrapper<>();
+        wrapper.in("enterprise_id",req.getAuditedUnitId());
+        wrapper.eq("project_id",req.getProjectId());
+        wrapper.eq("document_type",4);
+        List<CostProjectDocument> list = costProjectDocumentManager.list(wrapper);
+
+        if (list == null || list.isEmpty() || list.size()!=req.getAuditedUnitId().size()) {
+                throw new BaseException("需生成成本监审通知书后,才可进行任务发布!");
+        }
+
+
         LambdaUpdateWrapper<CostProjectApproval> updateWrapper = new LambdaUpdateWrapper<>();
         updateWrapper.set(CostProjectApproval::getStatus, "2");
         updateWrapper.set(CostProjectApproval::getAuditGroup, req.getAuditGroup());
@@ -660,7 +674,7 @@ public class CostProjectApprovalManagerImpl extends BaseManagerImpl<CostProjectA
         AuditedUnit unit = auditedUnitManager.getOne(
                 new LambdaQueryWrapper<AuditedUnit>()
                         .eq(AuditedUnit::getAccount, currentUser.getUserId())
-                        .eq(AuditedUnit::getIsDeleted, "0")
+                        .eq(AuditedUnit::getIsDeleted, "0").last("limit 1")
         );
         if (unit == null){
             return new Page<>();

+ 1 - 1
assistMg/src/main/java/com/hotent/project/manager/impl/CostProjectProccessManagerImpl.java

@@ -233,7 +233,7 @@ public class CostProjectProccessManagerImpl extends BaseManagerImpl<CostProjectP
         for (CostProjectProcessNodeReq nodeReq : req.getNodeReqList()) {
             if ("1".equals(nodeReq.getNodeType())) {
                 if (req.getPlannedAuditEndDate().isBefore(nodeReq.getEndTime())) {
-                    throw new BaseException("流程节点的结束时间不能早于流程的结束时间");
+                    throw new BaseException("预置环节截止日期不得早于监审工作截止日期!");
                 }
                 if (ObjectUtil.isEmpty(nodeReq.getUserId())) {
                     throw new BaseException("流程节点人员不能为空");

+ 5 - 0
assistMg/src/main/java/com/hotent/project/req/CostProjectApprovalPublishReq.java

@@ -6,6 +6,8 @@ import lombok.Data;
 import lombok.Getter;
 import lombok.Setter;
 
+import java.util.List;
+
 
 @Getter
 @Setter
@@ -19,6 +21,9 @@ public class  CostProjectApprovalPublishReq {
     @ApiModelProperty(value = "发送方式 1站内消息 2短信通知 “,”分割")
     private String sendType;
 
+    @ApiModelProperty(value = "企业id")
+    private List<String> auditedUnitId;
+
 
     @ApiModelProperty(value = "监审任务发布通知")
     private String content;

+ 1 - 1
assistMg/src/main/java/com/hotent/surveyinfo/controller/CostSurveyFdTemplateVersionController.java

@@ -93,7 +93,7 @@ public class CostSurveyFdTemplateVersionController extends BaseController<CostSu
 			IUser user = ContextUtil.getCurrentUser();
 			costSurveyTemplateVersion.setId( UUID.randomUUID().toString());
 			costSurveyTemplateVersion.setCreateTime(LocalDateTime.now());
-			costSurveyTemplateVersion.setCreateBy(user.getAccount());
+			costSurveyTemplateVersion.setCreateBy(user.getFullname());
 			costSurveyTemplateVersion.setStatus("-1");
 			//获取版本号
 			costSurveyTemplateVersion.setVersionNo(costSurveyTemplateVersionMapper.generateVersionNumber());

+ 7 - 3
assistMg/src/main/java/com/hotent/surveyinfo/controller/CostSurveyTemplateController.java

@@ -178,6 +178,10 @@ public class CostSurveyTemplateController extends BaseController<CostSurveyTempl
         return CommonResult.<String>ok().message(msg);
     }
 
+
+
+
+
     /**
      * 同步监审目录与成本调查表的关联关系
      * 启用状态(0)时添加关联记录,停用(-1/1)时删除关联记录
@@ -386,7 +390,7 @@ public class CostSurveyTemplateController extends BaseController<CostSurveyTempl
             costVerifyTemplate.setCreatetemplateid(sourceTemplate.getSurveyTemplateId());
             costVerifyTemplate.setStatus(taskId==null?"-1":"0");
             costVerifyTemplate.setCatalogId(catalogId);
-            costVerifyTemplate.setCreateBy(user.getAccount());
+            costVerifyTemplate.setCreateBy(user.getFullname());
             costVerifyTemplate.setCreateTime(LocalDateTime.now());
             costVerifyTemplate.setType(sourceTemplate.getType());
             costVerifyTemplate.setIsDelete("0");
@@ -456,7 +460,7 @@ public class CostSurveyTemplateController extends BaseController<CostSurveyTempl
                     verifyHeader.setAreaLevel(header.getAreaLevel());
 
                     // 系统字段
-                    verifyHeader.setCreateBy(user.getAccount());
+                    verifyHeader.setCreateBy(user.getFullname());
                     verifyHeader.setCreateTime(LocalDateTime.now());
 
                     // 设置关联关系
@@ -507,7 +511,7 @@ public class CostSurveyTemplateController extends BaseController<CostSurveyTempl
                     verifyItem.setUnit(item.getUnit());
                     verifyItem.setOrderNum(item.getOrderNum());
                     verifyItem.setJsonStr(item.getJsonStr());
-                    verifyItem.setCreateBy(user.getAccount());
+                    verifyItem.setCreateBy(user.getFullname());
                     verifyItem.setCreateTime(LocalDateTime.now());
                     verifyItem.setProjectId(item.getProjectId());
                     verifyItem.setOrderText(item.getOrderText());

+ 24 - 9
assistMg/src/main/java/com/hotent/surveyinfo/controller/CostSurveyTemplateVersionController.java

@@ -56,6 +56,17 @@ public class CostSurveyTemplateVersionController extends BaseController<CostSurv
 		return CommonResult.<List<CostSurveyTemplateVersion>>ok().value(versions);
 	}
 
+	@PostMapping(value = "/modify")
+	@ApiOperation(value = "新增,更新成本调查表模板表数据", httpMethod = "POST", notes = "新增,更新成本调查表模板表数据")
+	public CommonResult<String> modify(
+			@ApiParam(name = "CostSurveyTemplate", value = "成本调查表模板表对象", required = true)
+			@RequestBody CostSurveyTemplateVersion costSurveyTemplate) throws Exception {
+		CostSurveyTemplateVersion byId = baseService.getById(costSurveyTemplate.getId());
+		byId.setRemarks(costSurveyTemplate.getRemarks());
+		baseService.update(byId);
+		return CommonResult.<String>ok().message("修改成功");
+	}
+
 	@GetMapping(value = "/listOtherCurrentVersions")
 	@ApiOperation(value = "查询相同监审类别和模板类型的所有现行版本", httpMethod = "GET", notes = "查询相同监审类别和模板类型的所有现行版本(包括自己)")
 	public CommonResult<List<CostSurveyTemplateVersion>> listOtherCurrentVersions(
@@ -95,7 +106,7 @@ public class CostSurveyTemplateVersionController extends BaseController<CostSurv
 			IUser user = ContextUtil.getCurrentUser();
 			costSurveyTemplateVersion.setId( UUID.randomUUID().toString());
 			costSurveyTemplateVersion.setCreateTime(LocalDateTime.now());
-			costSurveyTemplateVersion.setCreateBy(user.getAccount());
+			costSurveyTemplateVersion.setCreateBy(user.getFullname());
 			costSurveyTemplateVersion.setStatus("-1");
 			//获取版本号
 			costSurveyTemplateVersion.setVersionNo(costSurveyTemplateVersionMapper.generateVersionNumber());
@@ -115,7 +126,7 @@ public class CostSurveyTemplateVersionController extends BaseController<CostSurv
 	@ApiOperation(value = "版本发布", httpMethod = "POST", notes = "版本发布")
 	public CommonResult<String>  publishVersion(@RequestBody CostSurveyTemplateVersion version) {
 
-// 1. 检查是否存在现行版本
+		// 1. 检查是否存在现行版本
 		CostSurveyTemplateVersion currentVersion =
 				costSurveyTemplateVersionMapper.selectCurrentVersion(version.getSurveyTemplateId());
 
@@ -124,14 +135,18 @@ public class CostSurveyTemplateVersionController extends BaseController<CostSurv
 			currentVersion.setStatus("1"); // 1-历史
 			currentVersion.setUpdateTime(LocalDateTime.now());
 			costSurveyTemplateVersionMapper.updateById(currentVersion);
+			// 3. 设置新版本为"现行"
+			version.setStatus("0"); // 0-现行
+			version.setCreateTime(LocalDateTime.now());
+			version.setUpdateTime(LocalDateTime.now());
+			costSurveyTemplateVersionMapper.updateById(version);
+		}else {
+			// 3. 设置新版本为"现行"
+			version.setStatus("0"); // 0-现行
+			version.setCreateTime(LocalDateTime.now());
+			version.setUpdateTime(LocalDateTime.now());
+			costSurveyTemplateVersionMapper.updateById(version);
 		}
-
-		// 3. 设置新版本为"现行"
-		version.setStatus("0"); // 0-现行
-		version.setCreateTime(LocalDateTime.now());
-		version.setUpdateTime(LocalDateTime.now());
-		costSurveyTemplateVersionMapper.updateById(version);
-
 		// 4. 更新模板状态
 		CostSurveyTemplate template = costSurveyTemplateMapper.getDetail(version.getSurveyTemplateId());
 		if (template != null) {

+ 2 - 1
assistMg/src/main/java/com/hotent/surveyinfo/dao/CostSurveyFdTemplateDao.java

@@ -27,5 +27,6 @@ public interface CostSurveyFdTemplateDao extends BaseMapper<CostSurveyFdTemplate
             , @Param("cityCode") String cityCode
             , @Param("countyCode") String countyCode
             , @Param("keyword") String keyword
-            , @Param("status") Integer status);
+            , @Param("status") Integer status
+            ,@Param("catalogId") String catalogId);
 }

+ 1 - 1
assistMg/src/main/java/com/hotent/surveyinfo/manager/impl/CostSurveyFdTemplateManagerImpl.java

@@ -190,7 +190,7 @@ public class CostSurveyFdTemplateManagerImpl extends BaseManagerImpl<CostSurveyF
 		Page<CostSurveyFdTemplate> page =baseMapper.getCostSurveyFdTemplatePage(objectPage,param.getContentType()
 				,param.getType(),param.getDataScope()
 				,param.getProvinceCode(),param.getCityCode()
-				,param.getCountyCode(),param.getKeyword(),param.getStatus());
+				,param.getCountyCode(),param.getKeyword(),param.getStatus(),param.getCatalogId());
 		return new PageList<>(page);
 	}
 

+ 4 - 6
assistMg/src/main/resources/mapper/CostDocumentWhMapper.xml

@@ -62,11 +62,9 @@
         SELECT
         c.*
         FROM
-        cost_document_wh c,
-        uc_user u
+        cost_document_wh c
         WHERE
-        c.create_by=u.ACCOUNT_
-        AND  c.is_deleted=0
+        c.is_deleted=0
         <if test=" whType != null and  whType != ''">
             and c.wh_type=#{whType}
         </if>
@@ -77,10 +75,10 @@
 
         <if test=" dataScope != null and  dataScope != ''">
             <if test=" dataScope ==1">
-                and  (u.CITY_CODE=#{ cityCode} or c.area_code=#{ cityCode})
+                and  ( c.area_code=#{ cityCode})
             </if>
             <if test=" dataScope ==2">
-                and (u.COUNTY_CODE=#{ countyCode} or c.area_code=#{ countyCode})
+                and ( c.area_code=#{ countyCode})
             </if>
         </if>
         ORDER BY c.create_time DESC

+ 6 - 1
assistMg/src/main/resources/mapper/CostSurveyFdTemplateMapper.xml

@@ -113,9 +113,14 @@
 			<if test=" keyword != null and  keyword != ''">
 				and c.survey_template_name LIKE CONCAT('%', #{ keyword}, '%')
 			</if>
-			<if test=" status != null and  status != ''">
+			<if test=" status != null">
 				and c.status=#{ status}
 			</if>
+
+			<if test=" catalogId != null and  catalogId != ''">
+				and c.catalog_id=#{catalogId}
+			</if>
+
 			<if test=" dataScope != null and dataScope >= 0">
 				<if test=" dataScope ==0">
 					and c.area_code= #{provinceCode}