Răsfoiți Sursa

中间合同BUG修复

caozj 1 an în urmă
părinte
comite
4670e1460a

+ 5 - 0
hx-sale/src/main/java/com/fjhx/sale/entity/intermediate/vo/IntermediateContractVo.java

@@ -125,4 +125,9 @@ public class IntermediateContractVo extends IntermediateContract {
 
     private Map<String,Object> contractMap;
 
+    /**
+     * 流程ID
+     */
+    private Long flowId;
+
 }

+ 8 - 0
hx-sale/src/main/java/com/fjhx/sale/service/intermediate/impl/IntermediateContractServiceImpl.java

@@ -9,7 +9,9 @@ import com.fjhx.common.entity.corporation.po.Corporation;
 import com.fjhx.common.service.corporation.CorporationService;
 import com.fjhx.common.utils.Assert;
 import com.fjhx.customer.service.customer.CustomerService;
+import com.fjhx.flow.service.flow.FlowExampleService;
 import com.fjhx.sale.entity.contract.vo.ContractPdfInfoVo;
+import com.fjhx.sale.entity.contract.vo.ContractVo;
 import com.fjhx.sale.entity.documents.po.Documents;
 import com.fjhx.sale.entity.intermediate.dto.IntermediateContractDto;
 import com.fjhx.sale.entity.intermediate.dto.IntermediateContractSelectDto;
@@ -32,6 +34,7 @@ import org.springframework.stereotype.Service;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 
@@ -54,6 +57,8 @@ public class IntermediateContractServiceImpl extends ServiceImpl<IntermediateCon
     private CustomerService customerService;
     @Autowired
     private CorporationService corporationService;
+    @Autowired
+    private FlowExampleService flowExampleService;
 
     @Override
     public Page<IntermediateContractVo> getPage(IntermediateContractSelectDto dto) {
@@ -88,6 +93,9 @@ public class IntermediateContractServiceImpl extends ServiceImpl<IntermediateCon
         corporationService.attributeAssign(records, IntermediateContractVo::getSellCorporationId, (item, corporation) -> {
             item.setSellCorporationName(corporation.getName());
         });
+        // 赋值流程id
+        List<IntermediateContractVo> collect = records.stream().filter(item -> Objects.isNull(item.getFlowId())).collect(Collectors.toList());
+        flowExampleService.setFlowId(collect, IntermediateContractVo::setFlowId);
         UserUtil.assignmentNickName(records, IntermediateContractVo::getCreateUser, IntermediateContractVo::setUserName);
         return page;
     }

+ 21 - 7
hx-sale/src/main/resources/mapper/intermediate/IntermediateContractMapper.xml

@@ -9,7 +9,8 @@
             c.currency,
             c.sell_corporation_id,
             c.buy_corporation_id,
-            d.create_user
+            d.create_user,
+            c.flow_id AS flowId
         FROM
             documents d
         LEFT JOIN contract c ON d.contract_id = c.id
@@ -18,15 +19,28 @@
     <select id="getPage2" resultType="com.fjhx.sale.entity.intermediate.vo.IntermediateContractVo">
         SELECT
             t1.*,
-            MAX( d.create_time ) ,
+            MAX( d.create_time ),
             d.id AS documentsId,
-            c.`code`AS `code`,
-            c.amount AS amount
+            SUM( c.amount ) AS amount,
+            c.flow_id AS flowId,
+            (
+                SELECT
+                    `code`
+                FROM
+                    intermediate_contract i
+                        JOIN documents d ON FIND_IN_SET( d.id, i.documents_ids )
+                        LEFT JOIN contract c ON d.contract_id = c.id
+                WHERE
+                    i.id = t1.id
+                ORDER BY
+                    d.create_time DESC
+                LIMIT 1
+            ) AS `code`
         FROM
             intermediate_contract t1
-                JOIN documents d ON FIND_IN_SET( d.id, t1.documents_ids )
-                LEFT JOIN contract c ON d.contract_id = c.id
-        ${ew.customSqlSegment}
+            JOIN documents d ON FIND_IN_SET( d.id, t1.documents_ids )
+            LEFT JOIN contract c ON d.contract_id = c.id
+            ${ew.customSqlSegment}
     </select>
 
     <select id="contactList" resultType="com.fjhx.sale.entity.intermediate.vo.IntermediateContractVo">