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