Преглед изворни кода

Merge branch 'master' of http://47.108.172.52:3000/dayou/item-management-1phase

wucl пре 1 година
родитељ
комит
053368ec88

+ 14 - 3
biz-base/src/main/java/com/dayou/controller/AssetsController.java

@@ -124,13 +124,24 @@ public class AssetsController extends BaseController {
     }
 
     /**
-     * 资产业务产品取号
+     * 资产业务意见书产品取号
      * @param dto 取号dto
      * @return RestResponse<String>
      */
-    @PostMapping("/takeAssetsProductionNo")
-    public RestResponse<String> takeAssetsProductionNo(@RequestBody TakeAssetsProductionNoDTO dto) {
+    @PostMapping("/takeAssetsStatementProductionNo")
+    public RestResponse<Boolean> takeAssetsStatementProductionNo(@RequestBody TakeAssetsProductionNoDTO dto) {
         return RestResponse.data(assetsService.takeAssetsProductionNo(dto));
     }
+
+    /**
+     * 资产业务报告产品取号
+     * @param dto 取号dto
+     * @return RestResponse<String>
+     */
+    @FinishTask
+    @PostMapping("/takeAssetsReportProductionNo")
+    public RestResponse<Boolean> takeAssetsReportProductionNo(@RequestBody TaskRecordDTO<TakeAssetsProductionNoDTO> dto) {
+        return RestResponse.data(assetsService.takeAssetsProductionNo(dto.getTaskData()));
+    }
 }
 

+ 16 - 6
biz-base/src/main/java/com/dayou/controller/AssetsProductionController.java

@@ -50,8 +50,8 @@ public class AssetsProductionController extends BaseController {
     }
 
     /**
-    * 资产产品表列表
-    */
+     * 资产产品表列表
+     */
     @GetMapping("")
     public RestResponse<Page<AssetsProduction>> page(AssetsProduction assetsProduction, Page page){
         Page<AssetsProduction> pages=assetsProductionService.selectPage(page,assetsProduction);
@@ -59,13 +59,13 @@ public class AssetsProductionController extends BaseController {
     }
 
     /**
-         * 资产产品表详情
+     * 资产产品表详情
      */
     @GetMapping("detail/{id}")
     public RestResponse<AssetsProduction> detail(@PathVariable Long id){
         AssetsProduction xAssetsProduction =assetsProductionService.detail(id);
         return RestResponse.data(xAssetsProduction);
-     }
+    }
 
     /**
      * 资产产品表新增
@@ -155,12 +155,22 @@ public class AssetsProductionController extends BaseController {
      * @param aProListSelectDTO 查询dto
      * @return RestResponse<Integer>
      */
-    @GetMapping("/getInatanceCount")
-    public RestResponse<Integer> getInatanceCount(AProListSelectDTO aProListSelectDTO) {
+    @PostMapping("/getInatanceCount")
+    public RestResponse<Integer> getInatanceCount(@RequestBody AProListSelectDTO aProListSelectDTO) {
         return RestResponse.data(assetsProductionService.getInatanceCount(aProListSelectDTO));
     }
 
     /**
+     * 根据业务id与产品号集合获取每个产品是否有提交过的流程实例信息
+     * @param aProListSelectDTO 查询dto
+     * @return RestResponse<Integer>
+     */
+    @PostMapping("/getInatanceCountList")
+    public RestResponse<List<Integer>> getInatanceCountList(@RequestBody AProListSelectDTO aProListSelectDTO) {
+        return RestResponse.data(assetsProductionService.getInatanceCountList(aProListSelectDTO));
+    }
+
+    /**
      * 资产产品出入库
      * @param taskRecordDTO 节点完成DTO
      * @return RestResponse<Boolean>

+ 6 - 0
dao/src/main/java/com/dayou/mapper/AssetsProductionMapper.java

@@ -76,4 +76,10 @@ public interface AssetsProductionMapper extends CustomBaseMapper<AssetsProductio
      * @return Integer
      */
     Integer getInatanceCount(AProListSelectDTO aProListSelectDTO);
+
+    /**
+     * 根据业务id与产品号集合获取每个产品是否有提交过的流程实例信息
+     * @return Integer
+     */
+    Integer getInatanceCountByIdAndProNo(@Param("businessId") Long businessId, @Param("productionNo") String productionNo);
 }

+ 13 - 13
dao/src/main/resources/mapper/AssetsEvaluationTargetMapper.xml

@@ -63,9 +63,9 @@
         <if test="(statementNo != null and statementNo != '') or (reportNo != null and reportNo != '') ">
             AND production_no = #{statementNo} OR production_no = #{reportNo}
         </if>
-        <if test="(statementNo == null or statementNo == '') and (reportNo == null or reportNo == '') ">
-            AND create_production_date IS NULL
-        </if>
+        <!--        <if test="(statementNo == null or statementNo == '') and (reportNo == null or reportNo == '') ">-->
+        <!--            AND create_production_date IS NULL-->
+        <!--        </if>-->
         AND target.deleted = 0
     </select>
 
@@ -74,7 +74,7 @@
         UPDATE assets_evaluation_target
         SET statement_no = #{productionNo}
         WHERE id = #{id}
-        AND deleted = 0
+          AND deleted = 0
     </update>
 
     <!--评估对象添加报告产品号-->
@@ -82,7 +82,7 @@
         UPDATE assets_evaluation_target
         SET report_no = #{productionNo}
         WHERE id = #{id}
-        AND deleted = 0
+          AND deleted = 0
     </update>
 
     <!--根据业务id获取已取号评估对象的产品号-->
@@ -90,19 +90,19 @@
         SELECT statement_no
         FROM assets_evaluation_target
         WHERE assets_id = #{businessId}
-        AND deleted = 0
-        AND statement_no IS NOT NULL
-        AND statement_no != ''
+          AND deleted = 0
+          AND statement_no IS NOT NULL
+          AND statement_no != ''
     </select>
 
     <!--根据业务id获取已取号评估对象的产品号-->
     <select id="getReportNoList" resultType="java.lang.String">
-        SELECT statement_no
+        SELECT report_no
         FROM assets_evaluation_target
         WHERE assets_id = #{businessId}
           AND deleted = 0
-          AND statement_no IS NOT NULL
-          AND statement_no != ''
+          AND report_no IS NOT NULL
+          AND report_no != ''
     </select>
 
     <!--评估对象审核定价-->
@@ -112,8 +112,8 @@
             evaluation_method_id = #{evaluationMethodId},
             choice_evaluation_method_id = #{choiceEvaluationMethodId}
         WHERE id = #{id}
-        AND assets_id = #{assetsId}
-        AND deleted = 0
+          AND assets_id = #{assetsId}
+          AND deleted = 0
     </update>
 
 </mapper>

+ 45 - 35
dao/src/main/resources/mapper/AssetsProductionMapper.xml

@@ -44,7 +44,7 @@
         SELECT production_type
         FROM assets_production
         WHERE business_id = #{businessId}
-        AND deleted = 0
+          AND deleted = 0
     </select>
 
     <!--根据业务id获取已选择产品-->
@@ -52,7 +52,8 @@
         SELECT id, production_type, print_count
         FROM assets_production
         WHERE business_id = #{businessId}
-          AND deleted = 0
+        AND deleted = 0
+        AND create_production_date IS NULL
         LIMIT 1
     </select>
 
@@ -61,25 +62,25 @@
         SELECT production_no
         FROM assets_evaluation_target
         WHERE assets_id = #{id}
-        AND deleted = 0
-        AND production_no IS NOT NULL
-        AND production_no != ''
+          AND deleted = 0
+          AND production_no IS NOT NULL
+          AND production_no != ''
     </select>
 
-    <!--新产品的产品号信息-->
+    <!--新产品的产品号信息-->
     <update id="updateProductionNo">
         UPDATE assets_production
         SET production_no = #{productionNo}
         WHERE deleted = 0
-        AND business_id = #{businessId}
-        AND production_type = #{productionType}
-        AND (production_no IS NULL OR production_no = '')
+          AND business_id = #{businessId}
+          AND production_type = #{productionType}
+          AND (production_no IS NULL OR production_no = '')
     </update>
 
     <!--取子号情况下,再复制一份产品信息并添加-->
     <insert id="copyProductionInfo">
         INSERT INTO assets_production(id, business_id, production_type, print_count)
-        VALUE (NULL, #{businessId}, #{productionType}, #{printCount})
+            VALUE (NULL, #{businessId}, #{productionType}, #{printCount})
     </insert>
 
     <!--撰写产品信息-->
@@ -98,33 +99,33 @@
             comment = #{comment},
             file_path = #{filePath}
         WHERE production_no = #{productionNo}
-        AND business_id = #{businessId}
+          AND business_id = #{businessId}
     </update>
 
     <!--根据业务id与产品号查询产品信息-->
     <select id="getProductionList" resultType="com.dayou.entity.AssetsProduction">
         SELECT id,
-               business_id,
-               production_no,
-               production_type,
-               signatory,
-               client_name,
-               client_tel,
-               valuation_basis_date,
-               evaluate_acreage,
-               evaluate_amount,
-               evaluate_price,
-               owner,
-               print_count,
-               create_production_date,
-               comment,
-               repertory_state,
-               repertory_in_time,
-               repertory_out_time,
-               file_path,
-               save_file_date,
-               delivery,
-               qr_code
+        business_id,
+        production_no,
+        production_type,
+        signatory,
+        client_name,
+        client_tel,
+        valuation_basis_date,
+        evaluate_acreage,
+        evaluate_amount,
+        evaluate_price,
+        owner,
+        print_count,
+        create_production_date,
+        comment,
+        repertory_state,
+        repertory_in_time,
+        repertory_out_time,
+        file_path,
+        save_file_date,
+        delivery,
+        qr_code
         FROM assets_production
         WHERE business_id = #{businessId}
         <if test="(statementNo != null and statementNo != '') or (reportNo != null and reportNo != '') ">
@@ -139,8 +140,17 @@
         SELECT COUNT(id)
         FROM work_flow_node_instance
         WHERE deleted = 0
-        AND business_id = #{businessId}
-        AND (business_sub_id = #{statementNo} OR business_min_id = #{reportNo})
+          AND business_id = #{businessId}
+          AND (business_sub_id = #{productionNo} OR business_min_id = #{productionNo})
+    </select>
+
+    <!--根据业务id与产品号集合获取每个产品是否有提交过的流程实例信息-->
+    <select id="getInatanceCountByIdAndProNo" resultType="java.lang.Integer">
+        SELECT COUNT(id)
+        FROM work_flow_node_instance
+        WHERE deleted = 0
+          AND business_id = #{businessId}
+          AND (business_sub_id = #{productionNo} OR business_min_id = #{productionNo})
     </select>
 
     <!--根据id获取产品出入库状态-->
@@ -148,7 +158,7 @@
         SELECT repertory_state
         FROM assets_production
         WHERE deleted = 0
-        AND id = #{id}
+          AND id = #{id}
     </select>
 
 

+ 8 - 0
domain/src/main/java/com/dayou/dto/AProListSelectDTO.java

@@ -2,6 +2,8 @@ package com.dayou.dto;
 
 import lombok.Data;
 
+import java.util.List;
+
 @Data
 public class AProListSelectDTO {
     /**
@@ -10,6 +12,11 @@ public class AProListSelectDTO {
     private Long businessId;
 
     /**
+     * 产品号(不区分时使用)
+     */
+    private String productionNo;
+
+    /**
      * 资产业务意见书产品号
      */
     private String statementNo;
@@ -19,4 +26,5 @@ public class AProListSelectDTO {
      */
     private String reportNo;
 
+    List<String> productionNos;
 }

+ 6 - 0
service/src/main/java/com/dayou/service/IAssetsProductionService.java

@@ -79,6 +79,12 @@ public interface IAssetsProductionService extends IService<AssetsProduction> {
         Integer getInatanceCount(AProListSelectDTO aProListSelectDTO);
 
         /**
+         * 根据业务id与产品号集合获取每个产品是否有提交过的流程实例信息
+         * @return List<Integer>
+         */
+        List<Integer> getInatanceCountList(AProListSelectDTO aProListSelectDTO);
+
+        /**
          * 产品出入库
          * @param wareHouseDTO 出入库dto
          * @return Boolean

+ 1 - 1
service/src/main/java/com/dayou/service/IAssetsService.java

@@ -69,6 +69,6 @@ public interface IAssetsService extends IService<Assets> {
          * @param takeAssetsProductionNoDTO 取号dto
          * @return String
          */
-        String takeAssetsProductionNo(TakeAssetsProductionNoDTO takeAssetsProductionNoDTO);
+        Boolean takeAssetsProductionNo(TakeAssetsProductionNoDTO takeAssetsProductionNoDTO);
 
 }

+ 13 - 0
service/src/main/java/com/dayou/service/impl/AssetsProductionServiceImpl.java

@@ -173,6 +173,19 @@ public class AssetsProductionServiceImpl extends ServiceImpl<AssetsProductionMap
     }
 
     /**
+     * 根据业务id与产品号集合获取每个产品是否有提交过的流程实例信息
+     * @return List<Integer>
+     */
+    @Override
+    public List<Integer> getInatanceCountList(AProListSelectDTO aProListSelectDTO) {
+        List<Integer> countList = new ArrayList<>();
+        for (String productionNo : aProListSelectDTO.getProductionNos()){
+            countList.add(assetsProductionMapper.getInatanceCountByIdAndProNo(aProListSelectDTO.getBusinessId(),productionNo));
+        }
+        return countList;
+    }
+
+    /**
      * 产品出入库
      *
      * @param wareHouseDTO 出入库信息dto

+ 7 - 2
service/src/main/java/com/dayou/service/impl/AssetsServiceImpl.java

@@ -156,7 +156,7 @@ public class AssetsServiceImpl extends ServiceImpl<AssetsMapper, Assets> impleme
      */
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public String takeAssetsProductionNo(TakeAssetsProductionNoDTO dto) {
+    public Boolean takeAssetsProductionNo(TakeAssetsProductionNoDTO dto) {
         String productionNo = genProductionNo(dto);
         //产品添加产品号
         assetsProductionMapper.updateProductionNo(dto.getBusinessId(), dto.getProductionType(), productionNo);
@@ -174,7 +174,12 @@ public class AssetsServiceImpl extends ServiceImpl<AssetsMapper, Assets> impleme
             }
 
         }
-        return productionNo;
+        if (ObjectUtil.isNotNull(productionNo) && ObjectUtil.isNotEmpty(productionNo)){
+            return Boolean.TRUE;
+        }else {
+            return Boolean.FALSE;
+        }
+
     }
 
     /**