From d7fe8ae3888c8e2b1eea3c1e3769be0d42a21cc9 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期一, 16 十月 2023 09:03:47 +0800 Subject: [PATCH] Merge branch '1.0.3' of http://139.186.142.91:10010/r/productDev/dmMes into 1.0.3 --- server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java | 129 ++++++++++++++++++++++++++++++++++++------- 1 files changed, 108 insertions(+), 21 deletions(-) diff --git a/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java b/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java index 6b36bd8..ac96eba 100644 --- a/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java +++ b/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java @@ -137,6 +137,9 @@ for(WorkorderRecordExtListVO model : result){ //鏌ヨ鐢熶骇浜哄憳濮撳悕 initProUser(user,model,allDepartList); +// BigDecimal s =new BigDecimal(Constants.formatIntegerNum(model.getSalary())); +// s.divide(new BigDecimal(0),2); +// model.setSalary(s.doubleValue()); } } return PageData.from(new PageInfo<>(result)); @@ -157,6 +160,9 @@ //鏌ヨ鐢熶骇浜哄憳濮撳悕 // model.setUserName(initProUser(user,model.getUserId(),allDepartList)); model.setUserInfo(initProUser(user,model.getUserId(),allDepartList)); + model.setJijianSalary(model.getJijianSalary().divide(new BigDecimal("100"),2,BigDecimal.ROUND_HALF_UP)); + model.setJishiSalary(model.getJishiSalary().divide(new BigDecimal("100"),2,BigDecimal.ROUND_HALF_UP)); + model.setTotalSalary(model.getTotalSalary().divide(new BigDecimal("100"),2,BigDecimal.ROUND_HALF_UP)); } } return PageData.from(new PageInfo<>(result)); @@ -173,13 +179,16 @@ PageHelper.startPage(pageWrap.getPage(), pageWrap.getCapacity()); //鏁版嵁鏉冮檺 - List<Integer> dataPermission = user.getDepartPermissionList(); +// List<Integer> dataPermission = user.getDepartPermissionList(); List<UserSalaryListVO> result = workorderRecordExtMapper.userSalaryPage(pageWrap.getModel()); if(result!=null){ List<DepartmentExtListVO> allDepartList = RedisUtil.getObject(redisTemplate,Constants.RedisKeys.COM_DEPART_LIST_KEY+user.getCompany().getId(),ArrayList.class); for(UserSalaryListVO model : result){ //鏌ヨ鐢熶骇浜哄憳濮撳悕 model.setUserInfo(initProUser(user,model.getUserId(),allDepartList)); + if(Constants.formatBigdecimal4Float(model.getNum()).compareTo(new BigDecimal(0))>0){ + model.setRate(Constants.formatBigdecimal4Float(model.getQualifiedNum()).divide(model.getNum(),4).multiply(new BigDecimal(100))); + } } } return PageData.from(new PageInfo<>(result)); @@ -489,6 +498,7 @@ } if(!Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.create) && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.material) + && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.producing) && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.check) && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.done)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝璇ュ伐鍗曠姸鎬佸凡娴佽浆锛屼笉鑳借繘琛岃鎿嶄綔锛�"); @@ -526,6 +536,7 @@ } if(!Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.create) && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.material) + && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.producing) && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.check) && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.done)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝璇ュ伐鍗曠姸鎬佸凡娴佽浆锛屼笉鑳借繘琛岃鎿嶄綔锛�"); @@ -829,9 +840,11 @@ if(!Constants.equalsInteger(tModel.getDoneType(),Constants.ZERO)){ //濡傛灉涓嶈壇锛岀疮璁″伐鍗曠殑涓嶈壇浜у嚭 mp.setUnqualifiedNum(Constants.formatIntegerNum(mp.getUnqualifiedNum())+(Constants.formatBigdecimal(tModel.getNum()).intValue())); +// mp.setUnqualifiedNum(mp.getUnqualifiedNum().add(tModel.getNum())); }else{ //濡傛灉鏄悎鏍硷紝绱宸ュ崟鐨勫悎鏍兼暟閲� mp.setQualifiedNum(Constants.formatIntegerNum(mp.getQualifiedNum())+(Constants.formatBigdecimal(tModel.getNum()).intValue())); +// mp.setUnqualifiedNum(mp.getQualifiedNum().add(tModel.getNum())); } //妫�鏌ョ绛愭槸鍚﹁浣滀负浜у嚭绡瓙锛屽鏋滄槸锛屽垯闇�瑕佸垽鏂绡瓙鏄惁鎶曟枡浣欓涓�0 Appliances curUpdateModel = getApplianceFromList(tModel.getAppliancesId(),updateApplianceList); @@ -1576,6 +1589,7 @@ } if(!Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.create) && !Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.material) + && !Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.producing) && !Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.check) && !Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.done)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝璇ュ伐鍗曠姸鎬佸凡娴佽浆锛屼笉鑳借繘琛岃鎿嶄綔锛�"); @@ -1670,6 +1684,33 @@ @Override + public void exportUserSalary(PageWrap<QueryUserSalaryListDTO> pageWrap, HttpServletResponse response) { + List<UserSalaryListVO> result=this.userSalaryPage(pageWrap).getRecords(); + for(UserSalaryListVO model : result) { + if(model.getUserInfo()!=null){ + model.setUserName(model.getUserInfo().getUserName()); + model.setDepartName(model.getUserInfo().getDepartName()); + model.setNum(Constants.formatBigdecimalFloat(model.getNum(),2)); + model.setQualifiedNum(Constants.formatBigdecimalFloat(model.getQualifiedNum(),2)); + model.setUnQualifiedNum(Constants.formatBigdecimalFloat(model.getUnQualifiedNum(),2)); + model.setRate(Constants.formatBigdecimalFloat(model.getRate(),2)); + } + } + ExcelExporter.build(UserSalaryListVO.class).export(result, "鍛樺伐缁╂晥鏄庣粏"+System.currentTimeMillis(), response); + } + @Override + public void exportSalaryStatistics(PageWrap<QuerySalaryStatisticDTO> pageWrap, HttpServletResponse response){ + List<SalaryStatisticsListVO> result=this.salaryStatistic(pageWrap).getRecords(); + for(SalaryStatisticsListVO model : result) { + if(model.getUserInfo()!=null){ + model.setUserName(model.getUserInfo().getUserName()); + model.setDepartName(model.getUserInfo().getDepartName()); + } + } + ExcelExporter.build(SalaryStatisticsListVO.class).export(result, "宸ヨ祫鎶ヨ〃"+System.currentTimeMillis(), response); + + } + @Override public void exportExcel(PageWrap<QueryWorkorderRecordExtDTO> pageWrap, HttpServletResponse response) { List<WorkorderRecordExtListVO> result=this.findPage(pageWrap).getRecords(); SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); @@ -1699,45 +1740,91 @@ unintname = re.getUmodel().getName(); } if (re.getPmodel() != null) { - Integer pmodelnum = re.getPmodel().getNum() != null ? re.getPmodel().getNum() : 0; + BigDecimal pmodelnum = re.getNum() != null ? re.getNum() : new BigDecimal("0"); // wreev.setPlanNum( new BigDecimal(pmodelnum).stripTrailingZeros().toPlainString() + unintname); - wreev.setPlanNum( new BigDecimal(pmodelnum).stripTrailingZeros().toPlainString() ); - } - if (re.getDoneType() != null) { - switch (re.getDoneType()) { - case 0: - wreev.setDoneType("鍚堟牸"); - break; - case 1: - wreev.setDoneType("涓嶈壇"); - break; - case 2: - wreev.setDoneType("鎶ュ簾"); - break; - default: - break; - } + wreev.setPlanNum( re.getNum().stripTrailingZeros().toPlainString()+unintname); } wreev.setProcedureName(re.getProcedureName()); + wreev.setUnintname(unintname); if(re.getNum()!=null){ - wreev.setAppliancenum(re.getNum().stripTrailingZeros().toPlainString() ); + wreev.setAppliancenum(re.getNum().stripTrailingZeros().toPlainString()+unintname ); } - wreev.setUnintname(unintname); + if (re.getAmodel() != null) { wreev.setAppliancecode(re.getAmodel().getCode()); } wreev.setDeviceCode(re.getDeviceCode()+"|"+re.getDeviceName()); wreev.setCreateTime(format.format(re.getCreateTime())); + wreev.setQualifiedNum( (Objects.nonNull(re.getQualifiedNum()) ? re.getQualifiedNum() : 0)+unintname); + wreev.setUnqualifiedNum((Objects.nonNull(re.getUnqualifiedNum()) ? re.getUnqualifiedNum() : 0)+unintname); + Integer duration = re.getDuration(); + if (Objects.nonNull(duration)){ + Integer h = duration/3600; + Integer m = (duration%3600)/60; + Integer s = ((duration%3600)%60); + wreev.setDuration(h+"灏忔椂"+m+"鍒嗛挓"+s+"绉�"); + }else { + wreev.setDuration("-"); + } + wreev.setSalaryType(re.getSalaryType()); + wreev.setSalaryPrice(re.getSalary()); list.add(wreev); } - ExcelExporter.build(WorkorderRecordExportExtListVO.class).export(list, "宸ュ崟鐢熶骇杩囩▼璁板綍"+System.currentTimeMillis(), response); + ExcelExporter.build(WorkorderRecordExportExtListVO.class).export(list, "鐢熶骇浜у嚭鏄庣粏"+System.currentTimeMillis(), response); // EasyExcelUtil.exportExcel(list, "宸ュ崟鐢熶骇杩囩▼璁板綍","宸ュ崟鐢熶骇杩囩▼璁板綍",WorkorderRecordExportExtListVO.class,"宸ュ崟鐢熶骇杩囩▼璁板綍"+System.currentTimeMillis()+".xls", response); } + @Override + public void exportExcel2(PageWrap<QueryWorkorderRecordExtDTO> pageWrap, HttpServletResponse response) { + List<WorkorderRecordExtListVO> result=this.findPage(pageWrap).getRecords(); + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + List<WorkorderRecordBathExportExtListVO> list=new ArrayList<>(); + for(int i=0;i<result.size();i++) { + WorkorderRecordExtListVO re = result.get(i); + WorkorderRecordBathExportExtListVO wreev = new WorkorderRecordBathExportExtListVO(); + if (re.getOmodel() != null) { + wreev.setWorkordercode(re.getOmodel().getCode()); + if (re.getOmodel().getStatus() != null) { + String status = Constants.WORKORDER_STATUS.getTitleByStatus(null, re.getOmodel().getStatus()); + wreev.setStatus(status); + } + } + if (re.getMmodel() != null) { + wreev.setMaterialcode(re.getMmodel().getCode()); + wreev.setMaterialname(re.getMmodel().getName()); + } + wreev.setBatch(re.getBatch()); + if (re.getPromodel() != null) { + wreev.setProceduresname(re.getPromodel().getName()); + } + + String unintname = ""; + if (re.getUmodel() != null) { + unintname = re.getUmodel().getName(); + } + if (re.getNum() != null) { + BigDecimal pmodelnum = re.getNum() != null ? re.getNum() : new BigDecimal("0"); + // wreev.setPlanNum( new BigDecimal(pmodelnum).stripTrailingZeros().toPlainString() + unintname); + wreev.setNum( pmodelnum.stripTrailingZeros().toPlainString()+unintname); + } + wreev.setProcedureName(re.getProcedureName()); + wreev.setUnintname(unintname); + if(re.getOmodel().getPlanNum() != null){ + wreev.setPlanNum(re.getOmodel().getPlanNum().toString() ); + } + wreev.setMaterialDonetype(re.getMaterialDonetype()); + wreev.setDeviceCode(re.getDeviceCode()+"|"+re.getDeviceName()); + wreev.setCreateTime(format.format(re.getCreateTime())); + list.add(wreev); + + } + ExcelExporter.build(WorkorderRecordBathExportExtListVO.class).export(list, "鐢熶骇鎶曟枡鏄庣粏"+System.currentTimeMillis(), response); + + } } -- Gitblit v1.9.3