From 2837bdd57f72e386bbf9a725e7b3a13e5eb9e930 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 21 八月 2023 09:19:57 +0800
Subject: [PATCH] 修复bug

---
 server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordStandardServiceImpl.java |   17 +++++++++++------
 1 files changed, 11 insertions(+), 6 deletions(-)

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 497bbb0..feedfbe 100644
--- a/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordStandardServiceImpl.java
+++ b/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordStandardServiceImpl.java
@@ -1527,11 +1527,14 @@
         workorderRecord = new WorkorderRecord();
         workorderRecord.setDeleted(Constants.ZERO);
         if(!Objects.isNull(userId)){
-            CompanyUser companyUser = companyUserExtMapper.selectById(userId);
+            CompanyUser companyUser = new CompanyUser();
+            companyUser.setUserId(userId);
+            companyUser.setRootDepartId(loginUserInfo.getRootDepartment().getId());
+            companyUser =     companyUserExtMapper.selectOne(new QueryWrapper<>(companyUser).last("limit 1"));
             if(Objects.isNull(companyUser)){
                 throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鏈煡璇㈠埌鐢熶骇浜哄憳瀵瑰簲浼佷笟鐢ㄦ埛淇℃伅锛�");
             }
-            workorderRecord.setCreateUser(companyUser.getUserId());
+            workorderRecord.setCreateUser(userId);
             workorderRecord.setRootDepartId(loginUserInfo.getRootDepartment().getId());
             workorderRecord.setDepartId(loginUserInfo.getCurComDepartment().getId());
         }else{
@@ -1555,8 +1558,8 @@
         workorderRecord.setQualifiedNum(createWorkorderRecordDTO.getQualifiedNum());
         //璁$畻宸ヨ祫淇℃伅
         SalaryParam salaryParam = salaryParamMapper.selectOne(new QueryWrapper<SalaryParam>().eq("DELETED",Constants.ZERO).eq("MATERIAL_ID",workorderRecord.getMaterialId())
-                .eq("DEPART_ID",workorderRecord.getFactoryId()).eq("PROCEDURE_ID",workorderRecord.getProcedureId()).eq("TYPE",workorderRecord.getSalaryType()).last(" limit 1  "));
-        if(!Objects.isNull(salaryParam)&&!Objects.isNull(createWorkorderRecordDTO.getDuration())){
+                .eq("DEPART_ID",workorderRecord.getFactoryId()).eq("PROCEDURE_ID",workorderRecord.getProcedureId()).eq("TYPE",createWorkorderRecordDTO.getType()).last(" limit 1  "));
+        if(!Objects.isNull(salaryParam)){
             workorderRecord.setSalaryPrice(salaryParam.getSalary());
             workorderRecord.setSalaryType(salaryParam.getType());
             workorderRecord.setSalaryUnqualified(salaryParam.getUnqualified());
@@ -1565,8 +1568,10 @@
                 workorderRecord.setSalaryNum(salaryParam.getNum());
                 workorderRecord.setSalary(salaryParam.getSalary().multiply(salaryParam.getUnqualified()==Constants.ONE?num:createWorkorderRecordDTO.getQualifiedNum()));
             }else{
-                workorderRecord.setDuration(createWorkorderRecordDTO.getDuration());
-                workorderRecord.setSalary(BigDecimal.valueOf(createWorkorderRecordDTO.getDuration()).multiply(salaryParam.getSalary()).divide(new BigDecimal(3600),BigDecimal.ROUND_HALF_UP));
+                if(!Objects.isNull(createWorkorderRecordDTO.getDuration())&&Constants.formatIntegerNum(createWorkorderRecordDTO.getDuration())>Constants.ZERO){
+                    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