From 7ec9326ce00d08f9d957981f2edff6df26f24a28 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期四, 26 九月 2024 13:25:02 +0800 Subject: [PATCH] 修改 --- modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java | 277 ++++++++++++++++++++++++++++++++----------------------- 1 files changed, 160 insertions(+), 117 deletions(-) diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java index fb30953..256e177 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java @@ -61,23 +61,43 @@ super.deleteLogic(ids); } - public List<XhProductModel> getAllTree(Boolean showXdy, Integer ztShow) { + public List<XhProductModel> getAllTree(Boolean showXdy, Integer ztShow, Long productId) { List<XhProductModel> productList = null; if (showXdy) { - productList = baseDao.selectList(new QueryWrapper<XhProductModel>().eq(Constant.TableColumn.IS_DELETE, - Constant.Bool.NO).ne("product_type", 5).orderByAsc(Constant.TableColumn.SORT)); - } else { - if (ztShow == 1) { + if (productId != null) { productList = baseDao.selectList(new QueryWrapper<XhProductModel>().eq(Constant.TableColumn.IS_DELETE, - Constant.Bool.NO).lt("product_type", 5).ne("product_type", 10).orderByAsc(Constant.TableColumn.SORT)); - } else if (ztShow == 2) { + Constant.Bool.NO).ne("product_type", 5).and(wrapper -> wrapper.eq("ship_id", productId).or().eq("id", productId)).orderByAsc(Constant.TableColumn.SORT)); + } else { productList = baseDao.selectList(new QueryWrapper<XhProductModel>().eq(Constant.TableColumn.IS_DELETE, - Constant.Bool.NO).lt("product_type", 4).ne("product_type", 10).orderByAsc(Constant.TableColumn.SORT)); - } else if (ztShow == 3) { - productList = baseDao.selectList(new QueryWrapper<XhProductModel>().eq(Constant.TableColumn.IS_DELETE, - Constant.Bool.NO).lt("product_type", 3).ne("product_type", 10).orderByAsc(Constant.TableColumn.SORT)); + Constant.Bool.NO).ne("product_type", 5).orderByAsc(Constant.TableColumn.SORT)); } - + } else { + if (productId == null) { + if (ztShow == 1) { + productList = baseDao.selectList(new QueryWrapper<XhProductModel>().eq(Constant.TableColumn.IS_DELETE, + Constant.Bool.NO).lt("product_type", 5).ne("product_type", 10).orderByAsc(Constant.TableColumn.SORT)); + } else if (ztShow == 2) { + productList = baseDao.selectList(new QueryWrapper<XhProductModel>().eq(Constant.TableColumn.IS_DELETE, + Constant.Bool.NO).lt("product_type", 4).ne("product_type", 10).orderByAsc(Constant.TableColumn.SORT)); + } else if (ztShow == 3) { + productList = baseDao.selectList(new QueryWrapper<XhProductModel>().eq(Constant.TableColumn.IS_DELETE, + Constant.Bool.NO).lt("product_type", 3).ne("product_type", 10).orderByAsc(Constant.TableColumn.SORT)); + } else if (ztShow == 4) { + productList = baseDao.selectList(new QueryWrapper<XhProductModel>().eq(Constant.TableColumn.IS_DELETE, + Constant.Bool.NO).lt("product_type", 5).ne("product_type", 1).orderByAsc(Constant.TableColumn.SORT)); + } else if (ztShow == 5) { + productList = baseDao.selectList(new QueryWrapper<XhProductModel>().eq(Constant.TableColumn.IS_DELETE, + Constant.Bool.NO).gt("product_type", 1).orderByAsc(Constant.TableColumn.SORT)); + } + } else { + if (ztShow == 4) { + productList = baseDao.selectList(new QueryWrapper<XhProductModel>().eq(Constant.TableColumn.IS_DELETE, + Constant.Bool.NO).lt("product_type", 5).ne("product_type", 1).and(wrapper -> wrapper.eq("ship_id", productId).or().eq("id", productId)).orderByAsc(Constant.TableColumn.SORT)); + } else if (ztShow == 5) { + productList = baseDao.selectList(new QueryWrapper<XhProductModel>().eq(Constant.TableColumn.IS_DELETE, + Constant.Bool.NO).gt("product_type", 1).and(wrapper -> wrapper.eq("ship_id", productId).or().eq("id", productId)).orderByAsc(Constant.TableColumn.SORT)); + } + } } return TreeUtils.build(productList); } @@ -105,7 +125,6 @@ } public List<Map<String, Object>> importProductExcel(MultipartFile mutFile, String progressId, Long shipId) { - int count = 0; Date beginDate = new Date(); List<Map<String, Object>> list = new ArrayList<>();//瀛樺偍鎵�鏈夌殑瀵煎叆鐘舵�� Map<String, Object> map;//瀛樺偍姣忎竴琛岀殑鐘舵�� @@ -116,24 +135,14 @@ Map<String, Object> errMap = new HashMap<>(); Map<String, Integer> reliabType = new HashMap<>(); reliabType.put("鎸囨暟鍒嗗竷", 1); - reliabType.put("浜岄」鍒嗗竷", 2); - reliabType.put("濞佸竷灏斿垎甯�", 3); + reliabType.put("浜岄」鍒嗗竷", 3); + reliabType.put("濞佸竷灏斿垎甯�", 2); Map<String, Integer> repairType = new HashMap<>(); repairType.put("鎸囨暟鍒嗗竷", 1); repairType.put("濞佸竷灏斿垎甯�", 2); Map<String, Integer> isOrNot = new HashMap<>(); isOrNot.put("鏄�", 1); isOrNot.put("鍚�", 0); - - //鑾峰彇鏄惁鏈夋暟鎹紝濡傛灉鏈夊垯鍒犻櫎鏁版嵁 - List<XhProductModel> productList = this.getByShipId(shipId); - List<ParamData> dataList = paramDataService.getByShipId(shipId); - if (productList.size() > 0) { - this.deleteByShipId(shipId); - } - if (dataList.size()>0){ - paramDataService.deleteByShipId(shipId); - } try { // 鑾峰彇瀵煎叆鏂囦欢鐨勫悗缂�鍚� @@ -148,185 +157,225 @@ assert workbook != null; //鏂█濡傛灉[boolean琛ㄨ揪寮廬涓簍rue锛屽垯绋嬪簭缁х画鎵ц銆� 濡傛灉涓篺alse锛屽垯绋嬪簭鎶涘嚭AssertionError锛屽苟缁堟鎵ц銆� int sheets = workbook.getNumberOfSheets(); - //List<LifeManagement> lifeManagementList = new ArrayList<LifeManagement>(); - String xt = null; - String fxt = null; - Long xtId = null; - Long fxtId = null; + Long curXtId = null; + Long curFxtId = null; + Long curSbId; + String curXtName = ""; + String curFxtName = ""; + Map<String, XhProductModel> modelMap = new HashMap<>(); + List<XhProductModel> prductList = baseDao.getProductPath(shipId); - //瀵煎叆棰勮鍙傛暟 - ParamData itemEntity1 = new ParamData(); - itemEntity1.setShipId(shipId); - itemEntity1.setProductId(shipId); - itemEntity1.setPageCode("expect"); - paramDataService.insert(itemEntity1); + for (XhProductModel product : prductList) { + if (StringUtils.isNotBlank(product.getNamePath())) { + modelMap.put(product.getNamePath(), product); + } + } + boolean insertXt; + boolean insertFxt; + Boolean insertSb; for (int i = 0; i < sheets; i++) { Sheet sheet = workbook.getSheetAt(i); int num = sheet.getLastRowNum(); // 涓�鍏辨湁澶氬皯琛� String sheetName = sheet.getSheetName(); //鑾峰彇褰撳墠sheet鍚嶇О for (int j = 1; j <= num; j++) { + insertXt = false; + insertFxt = false; + insertSb = false; CacheUtils.put(progressId, "speed", CommonUtils.getPercent(j, num)); CacheUtils.put(progressId, "msg", "鍏�" + num + "琛岋紝宸插畬鎴愮" + j + "琛�"); - DictTypeDto lifeManagement = new DictTypeDto(); - boolean isToggleXt = false; - boolean isToggleFxt = false; + row1 = j + 1; String pattern = "yyyy-MM-dd"; Row row = sheet.getRow(row1); String sort = com.zt.core.shiro.ImportUtil.getCellValue(row, 0, pattern); //搴忓彿 - if (StringUtils.isNotBlank(com.zt.core.shiro.ImportUtil.getCellValue(row, 1, pattern))) { - if (!com.zt.core.shiro.ImportUtil.getCellValue(row, 1, pattern).equals(xt)) { - isToggleXt = true; - xtId = UUIDUtil.generateId(); - } - xt = com.zt.core.shiro.ImportUtil.getCellValue(row, 1, pattern); //绯荤粺 - } - if (StringUtils.isNotBlank(com.zt.core.shiro.ImportUtil.getCellValue(row, 2, pattern)) && !isToggleXt) { - fxt = com.zt.core.shiro.ImportUtil.getCellValue(row, 2, pattern); //鍒嗙郴缁� - fxtId = UUIDUtil.generateId(); - isToggleFxt = true; - } else if (isToggleXt) { - if (StringUtils.isNotBlank(com.zt.core.shiro.ImportUtil.getCellValue(row, 2, pattern))) { - fxt = com.zt.core.shiro.ImportUtil.getCellValue(row, 2, pattern); //鍒嗙郴缁� - fxtId = UUIDUtil.generateId(); - isToggleFxt = true; - } else { - fxt = null; - isToggleFxt = true; - } - } - + String xt = com.zt.core.shiro.ImportUtil.getCellValue(row, 1, pattern); //绯荤粺 + String fxt = com.zt.core.shiro.ImportUtil.getCellValue(row, 2, pattern); String sb = com.zt.core.shiro.ImportUtil.getCellValue(row, 3, pattern); //璁惧 - String reliabDistribType = com.zt.core.shiro.ImportUtil.getCellValue(row, 4, pattern); //鍙潬鎬у垎甯冪被鍨� - String basicJoinCompute = com.zt.core.shiro.ImportUtil.getCellValue(row, 5, pattern); //鍙傚姞璁$畻 - String basicMtbfRegulate = com.zt.core.shiro.ImportUtil.getCellValue(row, 6, pattern); //mtbf - String basicMtbfRegulSuccRate = com.zt.core.shiro.ImportUtil.getCellValue(row, 7, pattern); //鎴愬姛鐜� - String basicMtbfOperatingRatio = com.zt.core.shiro.ImportUtil.getCellValue(row, 8, pattern); //杩愯姣� - String taskMtbcfRegulate = com.zt.core.shiro.ImportUtil.getCellValue(row, 9, pattern); //mtbcf - String taskMtbcfOtherParams2 = com.zt.core.shiro.ImportUtil.getCellValue(row, 10, pattern); //mtbcf鍏朵粬鍙傛暟2 - String taskMtbcfOtherParams3 = com.zt.core.shiro.ImportUtil.getCellValue(row, 11, pattern); //mtbcf鍏朵粬鍙傛暟3 - String taskMtbcfRegulSuccRate = com.zt.core.shiro.ImportUtil.getCellValue(row, 12, pattern); //mtbcf鎴愬姛鐜� - String taskMtbcfOperatingRatio = com.zt.core.shiro.ImportUtil.getCellValue(row, 13, pattern); //mtbcf杩愯姣� - String repairable = com.zt.core.shiro.ImportUtil.getCellValue(row, 14, pattern); //鏄惁鍙淮淇� - String repairDistribType = com.zt.core.shiro.ImportUtil.getCellValue(row, 15, pattern); //缁翠慨鍙戝竷绫诲瀷 - String repairMttcr = com.zt.core.shiro.ImportUtil.getCellValue(row, 16, pattern); //mttcr - String repairMttcrOtherParams2 = com.zt.core.shiro.ImportUtil.getCellValue(row, 17, pattern); //mttcr鍏朵粬鍙傛暟2 - String repairMttcrOtherParams3 = com.zt.core.shiro.ImportUtil.getCellValue(row, 18, pattern); //mttcr鍏朵粬鍙傛暟3 + String sameSbName = com.zt.core.shiro.ImportUtil.getCellValue(row, 4, pattern); //鍚岀被璁惧鍚嶇О + String equipType = com.zt.core.shiro.ImportUtil.getCellValue(row, 5, pattern); //璁惧绫诲瀷 + String reliabDistribType = com.zt.core.shiro.ImportUtil.getCellValue(row, 6, pattern); //鍙潬鎬у垎甯冪被鍨� + String basicJoinCompute = com.zt.core.shiro.ImportUtil.getCellValue(row, 7, pattern); //鍙傚姞璁$畻 + String basicMtbfRegulate = com.zt.core.shiro.ImportUtil.getCellValue(row, 8, pattern); //mtbf + String basicMtbfRegulSuccRate = com.zt.core.shiro.ImportUtil.getCellValue(row, 9, pattern); //鎴愬姛鐜� + String basicMtbfOperatingRatio = com.zt.core.shiro.ImportUtil.getCellValue(row, 10, pattern); //杩愯姣� + String taskMtbcfRegulate = com.zt.core.shiro.ImportUtil.getCellValue(row, 11, pattern); //mtbcf + String taskMtbcfOtherParams2 = com.zt.core.shiro.ImportUtil.getCellValue(row, 12, pattern); //mtbcf鍏朵粬鍙傛暟2 + String taskMtbcfOtherParams3 = com.zt.core.shiro.ImportUtil.getCellValue(row, 13, pattern); //mtbcf鍏朵粬鍙傛暟3 + String taskMtbcfRegulSuccRate = com.zt.core.shiro.ImportUtil.getCellValue(row, 14, pattern); //mtbcf鎴愬姛鐜� + String taskMtbcfOperatingRatio = com.zt.core.shiro.ImportUtil.getCellValue(row, 15, pattern); //mtbcf杩愯姣� + String repairable = com.zt.core.shiro.ImportUtil.getCellValue(row, 16, pattern); //鏄惁鍙淮淇� + String repairDistribType = com.zt.core.shiro.ImportUtil.getCellValue(row, 17, pattern); //缁翠慨鍙戝竷绫诲瀷 + String repairMttcr = com.zt.core.shiro.ImportUtil.getCellValue(row, 18, pattern); //mttcr + String repairMttcrOtherParams2 = com.zt.core.shiro.ImportUtil.getCellValue(row, 19, pattern); //mttcr鍏朵粬鍙傛暟2 + String repairMttcrOtherParams3 = com.zt.core.shiro.ImportUtil.getCellValue(row, 20, pattern); //mttcr鍏朵粬鍙傛暟3 + + if (StringUtils.isBlank(sb)) + continue; + + if (StringUtils.isBlank(xt)) { + if (StringUtils.isBlank(curXtName)) + continue; + else + xt = curXtName; + } else { + if (StringUtils.isBlank(curXtName) || !xt.equals(curXtName)) { + curXtName = xt; + if (modelMap.get(curXtName) == null) { + curXtId = UUIDUtil.generateId(); + insertXt = true; + } else { + curXtId = modelMap.get(curXtName).getId(); + } + curFxtId = null; + curFxtName = ""; + } + } + String fxtPath = ""; + if (StringUtils.isNotBlank(fxt) && !fxt.equals(curFxtName)) { + curFxtName = fxt; + fxtPath = curXtName + "," + curFxtName; + if (modelMap.get(fxtPath) == null) { + curFxtId = UUIDUtil.generateId(); + insertFxt = true; + } else { + curFxtId = modelMap.get(fxtPath).getId(); + } + } + + Long paramId = null; + String sbPath = curXtName + "," + (StringUtils.isBlank(curFxtName) ? "" : curFxtName + ",") + sb; + if (modelMap.get(sbPath) == null) { + curSbId = UUIDUtil.generateId(); + insertSb = true; + } else { + curSbId = modelMap.get(sbPath).getId(); + paramId = modelMap.get(sbPath).getParamId(); + } + + if(StringUtils.isBlank(sameSbName)){ + sameSbName = sb; + } if (StringUtils.isEmpty(sb)) { com.zt.life.util.ImportUtil.updateErrMap(errMap, "娌℃湁濉啓璁惧鍚嶇О", sheetName, row1); continue; } + //瀵煎叆鍨嬪彿浜у搧缁撴灉搴� XhProductModel xhProductModel = new XhProductModel(); - Long defultImg = null; xhProductModel.setShipId(shipId); //娣诲姞绯荤粺 - if (isToggleXt) { + if (insertXt) { xhProductModel.setPid(shipId); - xhProductModel.setId(xtId); + xhProductModel.setId(curXtId); xhProductModel.setName(xt); xhProductModel.setProductType("3"); xhProductModel.setSort(Integer.valueOf(sort)); defultImg = sysPictureBaseService.getDefaultImg(3).getId(); xhProductModel.setOperatImg(defultImg); + xhProductModel.setNamePath(curXtName); this.insert(xhProductModel); //瀵煎叆棰勮鍙傛暟 ParamData itemEntity = new ParamData(); itemEntity.setShipId(shipId); - itemEntity.setProductId(xtId); - itemEntity.setPageCode("expect"); + itemEntity.setProductId(curXtId); paramDataService.insert(itemEntity); } - if (StringUtils.isNotBlank(fxt) && isToggleFxt) { - xhProductModel.setPid(xtId); - xhProductModel.setId(fxtId); + if (insertFxt) { + xhProductModel.setPid(curXtId); + xhProductModel.setId(curFxtId); xhProductModel.setName(fxt); xhProductModel.setProductType("4"); xhProductModel.setSort(Integer.valueOf(sort)); defultImg = sysPictureBaseService.getDefaultImg(4).getId(); xhProductModel.setOperatImg(defultImg); + xhProductModel.setNamePath(fxtPath); this.insert(xhProductModel); //瀵煎叆棰勮鍙傛暟 ParamData itemEntity = new ParamData(); itemEntity.setShipId(shipId); - itemEntity.setProductId(fxtId); - itemEntity.setPageCode("expect"); + itemEntity.setProductId(curFxtId); paramDataService.insert(itemEntity); } - Long sbId = UUIDUtil.generateId(); - if (StringUtils.isNotBlank(fxt)) { - xhProductModel.setPid(fxtId); - } else { - xhProductModel.setPid(xtId); - } - xhProductModel.setId(sbId); + xhProductModel.setPid(curFxtId == null ? curXtId : curFxtId); + xhProductModel.setId(curSbId); xhProductModel.setName(sb); + xhProductModel.setSameSbName(sameSbName); + xhProductModel.setEquipType(equipType); xhProductModel.setProductType("5"); xhProductModel.setSort(Integer.valueOf(sort)); defultImg = sysPictureBaseService.getDefaultImg(5).getId(); xhProductModel.setOperatImg(defultImg); - this.insert(xhProductModel); + xhProductModel.setNamePath(sbPath); + if (insertSb) { + this.insert(xhProductModel); + }else{ + this.update(xhProductModel); + } //瀵煎叆棰勮鍙傛暟 ParamData itemEntity = new ParamData(); //缁戝畾璁惧ID itemEntity.setShipId(shipId); - itemEntity.setProductId(sbId); - itemEntity.setPageCode("expect"); + itemEntity.setProductId(curSbId); itemEntity.setReliabDistribType(reliabType.get(reliabDistribType)); itemEntity.setBasicJoinCompute(isOrNot.get(basicJoinCompute)); - if (StringUtils.isNotBlank(basicMtbfRegulate)){ + if (StringUtils.isNotBlank(basicMtbfRegulate)) { itemEntity.setBasicMtbfRegulate(Double.valueOf(basicMtbfRegulate)); } - if (StringUtils.isNotBlank(basicMtbfRegulSuccRate)){ + if (StringUtils.isNotBlank(basicMtbfRegulSuccRate)) { itemEntity.setBasicMtbfRegulSuccRate(Double.valueOf(basicMtbfRegulSuccRate)); } - if (StringUtils.isNotBlank(basicMtbfOperatingRatio)){ + if (StringUtils.isNotBlank(basicMtbfOperatingRatio)) { itemEntity.setBasicMtbfOperatingRatio(Double.valueOf(basicMtbfOperatingRatio)); - }else{ + } else { itemEntity.setBasicMtbfOperatingRatio(1.0); } - if (StringUtils.isNotBlank(taskMtbcfRegulate)){ + if (StringUtils.isNotBlank(taskMtbcfRegulate)) { itemEntity.setTaskMtbcfRegulate(Double.valueOf(taskMtbcfRegulate)); } - if (StringUtils.isNotBlank(taskMtbcfOtherParams2)){ + if (StringUtils.isNotBlank(taskMtbcfOtherParams2)) { itemEntity.setTaskMtbcfOtherParams2(Double.valueOf(taskMtbcfOtherParams2)); } - if (StringUtils.isNotBlank(taskMtbcfOtherParams3)){ + if (StringUtils.isNotBlank(taskMtbcfOtherParams3)) { itemEntity.setTaskMtbcfOtherParams3(Double.valueOf(taskMtbcfOtherParams3)); } - if (StringUtils.isNotBlank(taskMtbcfRegulSuccRate)){ + if (StringUtils.isNotBlank(taskMtbcfRegulSuccRate)) { itemEntity.setTaskMtbcfRegulSuccRate(Double.valueOf(taskMtbcfRegulSuccRate)); } - if (StringUtils.isNotBlank(taskMtbcfOperatingRatio)){ + if (StringUtils.isNotBlank(taskMtbcfOperatingRatio)) { itemEntity.setTaskMtbcfOperatingRatio(Double.valueOf(taskMtbcfOperatingRatio)); - }else{ + } else { itemEntity.setTaskMtbcfOperatingRatio(1.0); } itemEntity.setRepairable(isOrNot.get(repairable)); itemEntity.setRepairDistribType(repairType.get(repairDistribType)); - if (StringUtils.isNotBlank(repairMttcr)){ + if (StringUtils.isNotBlank(repairMttcr)) { itemEntity.setRepairMttcr(Double.valueOf(repairMttcr)); } - if (StringUtils.isNotBlank(repairMttcrOtherParams2)){ + if (StringUtils.isNotBlank(repairMttcrOtherParams2)) { itemEntity.setRepairMttcrOtherParams2(Double.valueOf(repairMttcrOtherParams2)); } - if (StringUtils.isNotBlank(repairMttcrOtherParams3)){ + if (StringUtils.isNotBlank(repairMttcrOtherParams3)) { itemEntity.setRepairMttcrOtherParams3(Double.valueOf(repairMttcrOtherParams3)); } - paramDataService.insert(itemEntity); + if (modelMap.get(sbPath) == null) { + paramDataService.insert(itemEntity); + } else { + itemEntity.setId(paramId); + paramDataService.update(itemEntity); + } } } @@ -335,13 +384,7 @@ ImportUtil.updateErrMap(errMap, "瀵煎叆寮傚父" + e.getMessage(), "", row1); //err++; } - /* if (batchList.size() > 0 && err == 0) { - super.insertBatch(batchList, 100); - baseDao.updateOldId(); - } - if (batchUpdateList.size() > 0) { - super.updateBatch(batchUpdateList, 100); - }*/ + Date nowDate = new Date(); String msg = "浜у搧妯″瀷瀵煎叆鏃堕棿锛�" + CommonUtils.getDatePoor(nowDate, beginDate) + "\r\n"; System.out.println(msg); -- Gitblit v1.9.1