From 60b3a617617ae46ba72bc04cee50c67ddf30a76c Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期二, 24 十月 2023 18:16:30 +0800
Subject: [PATCH] 111

---
 server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordStandardServiceImpl.java |   16 ++++++++++++++++
 server/src/main/java/doumeemes/service/business/impl/UnqualifiedRecordServiceImpl.java  |   33 +++++++++++++++++++++++++++++++++
 server/src/main/java/doumeemes/service/business/UnqualifiedRecordService.java           |    2 ++
 server/src/main/java/doumeemes/dao/business/model/WorkorderRecord.java                  |    6 ++++++
 4 files changed, 57 insertions(+), 0 deletions(-)

diff --git a/server/src/main/java/doumeemes/dao/business/model/WorkorderRecord.java b/server/src/main/java/doumeemes/dao/business/model/WorkorderRecord.java
index 8844310..dcd6ef7 100644
--- a/server/src/main/java/doumeemes/dao/business/model/WorkorderRecord.java
+++ b/server/src/main/java/doumeemes/dao/business/model/WorkorderRecord.java
@@ -13,6 +13,7 @@
 import java.io.Serializable;
 import java.math.BigDecimal;
 import java.util.Date;
+import java.util.List;
 
 /**
  * 宸ュ崟绫�-宸ュ崟鐢熶骇杩囩▼璁板綍琛�
@@ -183,4 +184,9 @@
 
     @ApiModelProperty(value = "宸ヨ祫缁撴灉锛堝垎锛�"  )
     private BigDecimal salary;
+
+    @ApiModelProperty(value = "涓嶈壇璁板綍鍒楄〃"  )
+    @TableField(exist = false)
+    private List<UnqualifiedRecord> unqualifiedRecordList;
+
 }
diff --git a/server/src/main/java/doumeemes/service/business/UnqualifiedRecordService.java b/server/src/main/java/doumeemes/service/business/UnqualifiedRecordService.java
index 70a959e..eb3f856 100644
--- a/server/src/main/java/doumeemes/service/business/UnqualifiedRecordService.java
+++ b/server/src/main/java/doumeemes/service/business/UnqualifiedRecordService.java
@@ -99,4 +99,6 @@
 
 
     PageData<UnqualifiedRecord> findJoinPage(PageWrap<QueryUnQualifiedRecordDTO> pageWrap);
+
+    List<UnqualifiedRecord> findJoinList(Integer recordId);
 }
diff --git a/server/src/main/java/doumeemes/service/business/impl/UnqualifiedRecordServiceImpl.java b/server/src/main/java/doumeemes/service/business/impl/UnqualifiedRecordServiceImpl.java
index 7257dbe..aaee653 100644
--- a/server/src/main/java/doumeemes/service/business/impl/UnqualifiedRecordServiceImpl.java
+++ b/server/src/main/java/doumeemes/service/business/impl/UnqualifiedRecordServiceImpl.java
@@ -180,4 +180,37 @@
     }
 
 
+    @Override
+    public List<UnqualifiedRecord> findJoinList(Integer recordId) {
+        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+        if(!Constants.equalsInteger(user.getType(),Constants.USERTYPE.COM)){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝鎮ㄦ棤鏉冮檺杩涜璇ユ搷浣滐紒");
+        }
+
+        MPJLambdaWrapper<UnqualifiedRecord> mpjLambdaWrapper = new MPJLambdaWrapper<>();
+        mpjLambdaWrapper.selectAll(UnqualifiedRecord.class);
+        mpjLambdaWrapper.selectAs(Workorder::getCode, UnqualifiedRecord::getWorkOrderCode);
+        mpjLambdaWrapper.selectAs(Material::getName, UnqualifiedRecord::getMaterialName);
+        mpjLambdaWrapper.selectAs(Material::getCode, UnqualifiedRecord::getMaterialCode);
+        mpjLambdaWrapper.selectAs(Procedures::getName, UnqualifiedRecord::getProceduresName);
+        mpjLambdaWrapper.selectAs(Category::getName, UnqualifiedRecord::getCategoryName);
+        mpjLambdaWrapper.selectAs(SystemUser::getRealname, UnqualifiedRecord::getCreateUserName);
+
+        mpjLambdaWrapper.leftJoin(Workorder.class,Workorder::getId,UnqualifiedRecord::getWorkorderId);
+        mpjLambdaWrapper.leftJoin(MaterialDistribute.class,MaterialDistribute::getId,Workorder::getMaterialId);
+        mpjLambdaWrapper.leftJoin(Material.class,Material::getId,MaterialDistribute::getMaterialId);
+        mpjLambdaWrapper.leftJoin(Procedures.class,Procedures::getId,Workorder::getProcedureId);
+        mpjLambdaWrapper.leftJoin(Category.class,Category::getId,UnqualifiedRecord::getCategoryId);
+        mpjLambdaWrapper.leftJoin(SystemUser.class,SystemUser::getId,UnqualifiedRecord::getCreateUser);
+        //鍙兘鏌ョ湅褰撳墠鏍圭粍缁囩殑鏁版嵁
+        mpjLambdaWrapper.eq(Workorder::getRootDepartId,user.getRootDepartment().getId());
+        //濡傛灉褰撳墠閫夋嫨鐨勫叕鍙哥骇缁勭粐闈炴牴缁勭粐淇℃伅锛屽彧鑳芥煡鐪嬪綋鍓嶉�夋嫨鍏徃绾х粍缁囨暟鎹�
+        mpjLambdaWrapper.eq(Workorder::getDepartId,user.getCurComDepartment().getId());
+        mpjLambdaWrapper.eq(UnqualifiedRecord::getDeleted,Constants.ZERO);
+        mpjLambdaWrapper.eq(UnqualifiedRecord::getRecordId, recordId);
+        List<UnqualifiedRecord> unqualifiedRecordList =  unQualifiedRecordJoinMapper.selectJoinList(UnqualifiedRecord.class,mpjLambdaWrapper);
+        return unqualifiedRecordList;
+    }
+
+
 }
diff --git a/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordStandardServiceImpl.java b/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordStandardServiceImpl.java
index 370d482..3b866da 100644
--- a/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordStandardServiceImpl.java
+++ b/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordStandardServiceImpl.java
@@ -26,6 +26,7 @@
 import doumeemes.dao.ext.dto.*;
 import doumeemes.dao.ext.vo.*;
 import doumeemes.dao.system.model.SystemDictData;
+import doumeemes.service.business.UnqualifiedRecordService;
 import doumeemes.service.business.WOutboundService;
 import doumeemes.service.ext.*;
 import doumeemes.service.system.SystemDictDataService;
@@ -89,6 +90,9 @@
     private UnqualifiedRecordMapper unqualifiedRecordMapper;
     @Autowired
     private CompanyUserExtMapper companyUserExtMapper;
+
+    @Autowired
+    private UnqualifiedRecordService unqualifiedRecordService;
 
     @Transactional(rollbackFor = {BusinessException.class,Exception.class})
     @Override
@@ -1401,6 +1405,15 @@
     public List<WorkorderRecord> getWorkorderRecordList(Integer workorderId) {
         List<WorkorderRecord>  workorderRecordList = workorderRecordExtMapper.selectList(
                 new QueryWrapper<WorkorderRecord>().eq("WORKORDER_ID",workorderId).eq("TYPE",Constants.ONE).eq("DELETED",Constants.ZERO).orderByAsc(" DONE_TYPE "));
+        if(!Objects.isNull(workorderRecordList)&workorderRecordList.size()>Constants.ZERO){
+            for (WorkorderRecord workorderRecord:workorderRecordList) {
+                //鏌ヨ涓嶈壇浜у嚭璁板綍璇︽儏 浜у嚭 涓� 涓嶈壇 鎵嶅瓨鍦ㄨ鏁版嵁
+                if(workorderRecord.getType().equals(Constants.ONE)&&workorderRecord.getUnqualifiedNum().compareTo(BigDecimal.ZERO)>Constants.ZERO){
+                    List<UnqualifiedRecord> unqualifiedRecordList = unqualifiedRecordService.findJoinList(workorderRecord.getId());
+                    workorderRecord.setUnqualifiedRecordList(unqualifiedRecordList);
+                }
+            }
+        }
         return  workorderRecordList;
     }
 
@@ -1563,12 +1576,15 @@
             workorderRecord.setSalaryPrice(salaryParam.getSalary());
             workorderRecord.setSalaryType(salaryParam.getType());
             workorderRecord.setSalaryUnqualified(salaryParam.getUnqualified());
+            workorderRecord.setSalaryTimes(salaryParam.getTimes());
             //璁′欢宸ヨ祫
             if(salaryParam.getType().equals(Constants.ZERO)){
                 workorderRecord.setSalaryNum(salaryParam.getNum());
+                workorderRecord.setDuration(createWorkorderRecordDTO.getDuration());
                 workorderRecord.setSalary(salaryParam.getSalary().multiply(salaryParam.getUnqualified()==Constants.ONE?num:createWorkorderRecordDTO.getQualifiedNum()));
             }else{
                 if(!Objects.isNull(createWorkorderRecordDTO.getDuration())&&Constants.formatIntegerNum(createWorkorderRecordDTO.getDuration())>Constants.ZERO){
+                    workorderRecord.setSalaryNum(salaryParam.getNum());
                     workorderRecord.setDuration(createWorkorderRecordDTO.getDuration());
                     workorderRecord.setSalary(BigDecimal.valueOf(createWorkorderRecordDTO.getDuration()).multiply(salaryParam.getSalary()).divide(new BigDecimal(3600),BigDecimal.ROUND_HALF_UP));
                 }

--
Gitblit v1.9.3