Parcourir la source

同步order_found客户经理id & 区分老系统土规订单

wucl il y a 4 mois
Parent
commit
233fb20c7b

+ 7 - 0
biz-base/src/main/java/com/dayou/controller/DyoaController.java

@@ -152,4 +152,11 @@ public class DyoaController {
         Boolean ret = dyoaHistoryService.assetsMarketDepartment();
         return RestResponse.data(ret);
     }
+
+    @IgnoreAuth
+    @GetMapping("/update/orderFundClientManagerId")
+    public RestResponse<Boolean> orderFundClientManagerId(){
+        Boolean ret = dyoaHistoryService.orderFundClientManagerId();
+        return RestResponse.data(ret);
+    }
 }

+ 1 - 1
dao/src/main/resources/mapper/FinanceClaimMapper.xml

@@ -146,7 +146,7 @@
         LEFT JOIN customer_company cc2 ON cc2.id = m.clientele_sub_id
         LEFT JOIN customer_linkman cl1 ON cl1.id = m.clientele_contact_id
         <where>
-            d.id !=32
+            m.financial is not null
             <if test="keyword!=null and keyword!='' ">
                 and (
                 m.order_id like concat ('%',#{keyword},'%')

+ 2 - 0
dao/src/main/resources/mapper/FinanceRealFundMapper.xml

@@ -452,6 +452,7 @@
         LEFT JOIN customer_company cc1 ON cc1.id = m.clientele_sub_id
         LEFT JOIN department d ON d.id = m.department_id
         <where>
+            m.financial is not null
             <if test="keyword!=null and keyword!='' ">
                 and (
                 mp.report_no like concat ('%',#{keyword},'%')
@@ -561,6 +562,7 @@
         LEFT JOIN customer_company cc1 ON cc1.id = m.clientele_sub_id
         LEFT JOIN department d ON d.id = m.department_id
         <where>
+            m.financial is not null
             <if test="keyword!=null and keyword!='' ">
                 and (
                 mp.report_no like concat ('%',#{keyword},'%')

+ 32 - 1
service/src/main/java/com/dayou/dyoa/DyoaHistoryServiceImpl.java

@@ -780,7 +780,7 @@ public class DyoaHistoryServiceImpl implements IDyoaHistoryService{
             Long mbsOrderId = record.getMbsId();
             if (StrUtil.isNotEmpty(managerName)){
                 Assets assets = assetsService.getOne(new LambdaQueryWrapper<Assets>().eq(BaseEntity::getId, mbsOrderId).select(BaseEntity::getId, Assets::getPrincipalId));
-                if (assets.getPrincipalId()==null){
+                if (assets != null && assets.getPrincipalId()==null){
                     assetsService.update(new LambdaUpdateWrapper<Assets>().set(Assets::getPrincipalId,getMbsUserId(managerName)).eq(BaseEntity::getId, mbsOrderId));
                     log.info("项目负责人被更新 mbsId: {}",mbsOrderId);
                 }
@@ -1204,12 +1204,17 @@ public class DyoaHistoryServiceImpl implements IDyoaHistoryService{
 
     private Long doCreateMajorOrder(Map<String,Object> dyMajorOrder) throws NoSuchFieldException, IllegalAccessException {
         String dyoaId = (String) dyMajorOrder.get("id");
+        String sourceType = (String) dyMajorOrder.get("sourceType");
         String managerName = (String) dyMajorOrder.get("managerName");
 
         DyoaRecord record = dyoaRecordService.getOne(new LambdaQueryWrapper<DyoaRecord>().eq(DyoaRecord::getMbsType, MAJOR_ORDER.name()).eq(DyoaRecord::getDyoaId, dyoaId));
         if (record != null){
             //更新项目负责人
             Long mbsOrderId = record.getMbsId();
+            //更新大中型订单类型的financial 字段
+            if (sourceType.equals("LAND")){
+                majorServiceImpl.update(new LambdaUpdateWrapper<Major>().set(Major::getFinancial,null).eq(BaseEntity::getId,mbsOrderId));
+            }
             if (StrUtil.isNotEmpty(managerName)){
                 Major major = majorServiceImpl.getOne(new LambdaQueryWrapper<Major>().eq(BaseEntity::getId, mbsOrderId).select(BaseEntity::getId, Major::getPrincipalId));
                 if (major.getPrincipalId()==null){
@@ -2098,6 +2103,32 @@ public class DyoaHistoryServiceImpl implements IDyoaHistoryService{
         return null;
     }
 
+    @Override
+    public Boolean orderFundClientManagerId() {
+        List<OrderFund> list = orderFundService.list(new LambdaQueryWrapper<OrderFund>().select(BaseEntity::getId, OrderFund::getBusinessType, OrderFund::getBusinessId));
+        for (OrderFund orderFund : list){
+            if (orderFund.getBusinessType().equals(PERSONAL_BUSINESS.name())){
+                Personal p = personalService.getOne(new LambdaQueryWrapper<Personal>().eq(BaseEntity::getId, orderFund.getBusinessId()).select(Personal::getClientManagerId, BaseEntity::getId));
+                if (p!=null){
+                    orderFundService.update(new LambdaUpdateWrapper<OrderFund>().set(OrderFund::getClientManagerId,p.getClientManagerId()).eq(BaseEntity::getId,orderFund.getId()));
+                }
+            }
+            if (orderFund.getBusinessType().equals(MAJOR_BUSINESS.name())){
+                Major m = majorServiceImpl.getOne(new LambdaQueryWrapper<Major>().eq(BaseEntity::getId, orderFund.getBusinessId()).select(Major::getClientManagerId, BaseEntity::getId));
+                if (m!=null){
+                    orderFundService.update(new LambdaUpdateWrapper<OrderFund>().set(OrderFund::getClientManagerId,m.getClientManagerId()).eq(BaseEntity::getId,orderFund.getId()));
+                }
+            }
+            if (orderFund.getBusinessType().equals(ASSET_BUSINESS.name())){
+                Assets a = assetsService.getOne(new LambdaQueryWrapper<Assets>().eq(BaseEntity::getId, orderFund.getBusinessId()).select(Assets::getClientManagerId, BaseEntity::getId));
+                if (a!=null){
+                    orderFundService.update(new LambdaUpdateWrapper<OrderFund>().set(OrderFund::getClientManagerId,a.getClientManagerId()).eq(BaseEntity::getId,orderFund.getId()));
+                }
+            }
+        }
+        return true;
+    }
+
 
     @Override
     public Boolean updateProductionFund() {

+ 2 - 0
service/src/main/java/com/dayou/dyoa/IDyoaHistoryService.java

@@ -59,4 +59,6 @@ public interface IDyoaHistoryService {
     Boolean majorProductionTime();
 
     Boolean assetsMarketDepartment();
+
+    Boolean orderFundClientManagerId();
 }