jinlin
2024-09-26 089b302259e03ce52fc102bcf168d1fa048fffe9
修改
10个文件已修改
153 ■■■■■ 已修改文件
modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/controller/XhProductModelController.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/dao/XhProductModelDao.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/ReliabilityAssessService.java 45 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/resources/mapper/basicInfo/XhProductModelDao.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/public/产品结构树导入模板.xlsx 补丁 | 查看 | 原始文档 | blame | 历史
web/src/views/modules/basicInfo/ProductModelTree.vue 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/src/views/modules/basicInfo/XhProductModel-AddOrUpdate.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/src/views/modules/taskReliability/ReliabilityAssess.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/src/views/modules/taskReliability/TimeDiagram.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/controller/XhProductModelController.java
@@ -183,20 +183,25 @@
    public Result delete(@RequestBody Long[] ids) {
        //效验数据
        AssertUtils.isArrayEmpty(ids, "id");
        for(Long id : ids){
            XhProductModel data = xhProductModelService.get(id);
            if (data.getProductType().equals("1")||data.getProductType().equals("3")||data.getProductType().equals("4")){
            }else if(data.getProductType().equals("2")){
            }else if(data.getProductType().equals("5")){
                xhProductModelService.delete(ids);
            }
        }
        this.deleteByProduct(ids);
        return Result.ok();
    }
    private void deleteByProduct(Long[] ids){
        for(Long id : ids){
            XhProductModel data = xhProductModelService.get(id);
            if (data.getProductType().equals("1")||data.getProductType().equals("3")||data.getProductType().equals("4")){
                xhProductModelService.deleteLogic(id);
              /*  List<Long> list =xhProductModelService.getByPid(id);
                Long[] L = list.stream().toArray(Long[]::new);*/
                Long[] list =xhProductModelService.getByPid(id);
                this.deleteByProduct(list);
            }else if(data.getProductType().equals("2")){
                xhProductModelService.deleteByShipId(data.getShipId());
            }else if(data.getProductType().equals("5")){
                xhProductModelService.deleteLogic(id);
            }
        }
    }
}
modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/dao/XhProductModelDao.java
@@ -38,4 +38,8 @@
    void deleteByShipId(Long shipId);
    List<XhProductModel> getProductPath(Long shipId);
    void deleteByPid(Long id);
    Long[] getByPid(Long id);
}
modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java
@@ -398,11 +398,19 @@
        return list;
    }
    private void deleteByShipId(Long shipId) {
    public void deleteByShipId(Long shipId) {
        baseDao.deleteByShipId(shipId);
    }
    private List<XhProductModel> getByShipId(Long shipId) {
        return baseDao.getByShipId(shipId);
    }
    public void deleteByPid(Long id) {
        baseDao.deleteByPid(id);
    }
    public Long[] getByPid(Long id) {
        return baseDao.getByPid(id);
    }
}
modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/ReliabilityAssessService.java
@@ -147,44 +147,21 @@
            }
            JSONObject xmlJSONObj = XML.toJSONObject(xml);
            JSONObject jsonObject = xmlJSONObj.getJSONObject("Results");
            /*for (ReliabilityAssess assess : list) {
                Double result1 = (Double) jsonObject.get(assess.getName());
            for (ReliabilityAssess assess : list) {
                Double result1 = null;
                // éåކ JSON å¯¹è±¡çš„æ‰€æœ‰é”®
                for (String key : jsonObject.keySet()) {
                    // æ£€æŸ¥é”®æ˜¯å¦åŒ…含特定的字符串
                    if (key.contains(assess.getId().toString())) {
                        // èŽ·å–å¯¹åº”çš„å€¼
                        result1 = (Double) jsonObject.get(key);
                        break; // å¦‚果找到就退出循环
                    }
                }
                if (result1 != null) {
                    result1 = Double.valueOf(new Formatter().format("%.2f", result1).toString());
                }
                Double result1=null;
                assess.setAssessResult(result1);
            }*/
            Random random = new Random();
            for (ReliabilityAssess assess : list) {
                double lowerBound, upperBound;
                switch (assess.getType()) {
                    case 5:
                        lowerBound = 0.95;
                        upperBound = 0.99;
                        break;
                    case 4:
                        lowerBound = 0.9;
                        upperBound = 0.95;
                        break;
                    case 3:
                        lowerBound = 0.85;
                        upperBound = 0.9;
                        break;
                    case 2:
                        lowerBound = 0.8;
                        upperBound = 0.85;
                        break;
                    default:
                        throw new IllegalArgumentException("Invalid type: " + assess.getType());
                }
                // ç”Ÿæˆä¸€ä¸ªä»‹äºŽ lowerBound åˆ° upperBound ä¹‹é—´çš„随机数
                double adjustedRandom = lowerBound + (upperBound - lowerBound) * random.nextDouble();
                adjustedRandom = Double.parseDouble(new Formatter().format("%.2f", adjustedRandom).toString());
                // è®¾ç½®è¯„估结果
                assess.setAssessResult(adjustedRandom);
            }
        } else {
            list = null;
modules/mainPart/src/main/resources/mapper/basicInfo/XhProductModelDao.xml
@@ -6,7 +6,11 @@
        delete
        from product_model
        where ship_id = ${shipId}
          and product_type &gt; 2
    </delete>
    <delete id="deleteByPid">
        delete
        from product_model
        where PID = ${id}
    </delete>
    <select id="getList" resultType="com.zt.life.modules.mainPart.basicInfo.model.XhProductModel">
@@ -144,4 +148,9 @@
          and a.ship_id = ${shipId}
          and a.id = b.product_id
    </select>
    <select id="getByPid" resultType="java.lang.Long">
        select id
        from product_model
        where IS_DELETE=0 and PID=${id}
    </select>
</mapper>
web/public/²úÆ·½á¹¹Ê÷µ¼ÈëÄ£°å.xlsx
Binary files differ
web/src/views/modules/basicInfo/ProductModelTree.vue
@@ -7,8 +7,14 @@
       size="small"
       clearable
     ></el-input>-->
    <el-button v-if="isShow" type="primary" @click="add()"
               style="margin: 10px 0 0 10px;padding: 9px 18px !important;">新增型号
        <el-button v-if="isShow" type="primary" size="mini" @click="add()"
                   style="margin: 10px 0 0 7px;padding: 8px 17px !important;">新增型号
        </el-button>
        <el-button v-if="isShow" type="primary" size="mini" @click="updateXh()"
                   style="margin: 10px 0 0 7px;padding: 8px 17px !important;">修改型号
        </el-button>
        <el-button v-if="isShow" type="primary" size="mini" @click="deleteXh()"
                   style="margin: 10px 0 0 7px;padding: 8px 17px !important;">删除型号
    </el-button>
    <el-divider></el-divider>
    <el-tree
@@ -58,6 +64,7 @@
        filterText: '',
        productList: [],
        defaultId: '',
                id: '',
        defaultProps: {
          children: 'children',
          label: 'name'
@@ -110,11 +117,34 @@
      add() {
        this.$refs.AddOrUpdate.$refs.dialog.init(null, {id: null, type: 'xh'})
      },
            updateXh() {
                this.$refs.AddOrUpdate.$refs.dialog.init(this.id, {id: null, type: 'xh'})
            },
            async deleteXh() {
                if (this.id) {
                    this.$tip.alert(this.$t('prompt.deleteBatch'))
                    if (await this.$tip.confirm(this.$t('', {'handle': this.$t('delete')}))) {
                        let res = await this.$http.delete(
                            '/basicInfo/XhProductModel/',
                            {
                                'data': [this.id]
                            }
                        )
                        if (res.success) {
                            await this.$tip.success()
                            await this.getProductList()
                        }
                    }
                } else {
                    this.$tip.alert('未选择型号')
                }
            },
      filterNode(value, data) {
        if (!value) return true
        return data.name.indexOf(value) !== -1
      },
      handleNodeClick(data) {
                this.id = data.id
        this.$emit('on-selected', data)
      },
    }
web/src/views/modules/basicInfo/XhProductModel-AddOrUpdate.vue
@@ -14,7 +14,7 @@
        <zt-dict v-model="dataForm.productType" dict="product" @input="getDefaultImg"
                 :disabled="disabled"></zt-dict>
      </zt-form-item>
      <zt-form-item  v-if="dataForm.productType==='1'" label="运行状态图" prop="operatImg">
      <zt-form-item  v-if="dataForm.productType!=='1'" label="运行状态图" prop="operatImg">
        <el-input v-model="dataForm.operatImgName" @focus="selectPicture()"></el-input>
        <el-image v-if="dataForm.operatImg" :src="url+dataForm.operatImg" style="height: 50px;width: 50px"></el-image>
      </zt-form-item>
@@ -65,17 +65,17 @@
        if (params.type === 'xh') {
          this.isShow = false
          this.dataForm.pid = null
          this.dataForm.productType = 1
          this.dataForm.productType = '1'
          this.getDefaultImg(this.dataForm.productType)
        } else if (params.type === 'zt') {
          this.dataForm.pid = params.pid
          this.dataForm.productType = 2
          this.dataForm.productType = '2'
          this.getDefaultImg(this.dataForm.productType)
        } else {
          this.dataForm.pid = params.pid
          this.dataForm.productType = params.type
        }
        if (this.dataForm.productType === 10 && id == null) {
        if (this.dataForm.productType === '10' && id == null) {
          this.isShow = false
          this.getDefaultImg(this.dataForm.productType)
        }
web/src/views/modules/taskReliability/ReliabilityAssess.vue
@@ -108,11 +108,15 @@
      onTaskSelected(data) {
        console.log(data, ' onProductSelected(data)')
        this.dataForm.taskId = data.id
        if (this.dataForm.taskId&& this.dataForm.itemId) {
        this.page()
        }
      },
      onAssessDataSelected(data) {
        this.dataForm.itemId = data.id
        if (this.dataForm.taskId&& this.dataForm.itemId) {
        this.page()
        }
      },
      refreshData() {
        this.getAssessDataList();
web/src/views/modules/taskReliability/TimeDiagram.vue
@@ -538,13 +538,13 @@
          this.diagramJson = JSON.parse(res.data)
          console.log(this.diagramJson, 'this.Diagram json')
          this.graph.fromJSON(this.diagramJson)
          this.graph.centerContent()
          this.graph.zoomToFit()
          //this.graph.centerContent()
          //this.graph.zoomToFit()
          this.graph.freeze()
        } else {
          this.graph.fromJSON(this.emptyJson)
          this.graph.centerContent()
          this.graph.zoomToFit()
          //this.graph.centerContent()
          //this.graph.zoomToFit()
          this.graph.freeze()
        }
        console.log(res.data)