licp
2024-05-28 bd5c073e28f11235fe0ed7754ead4c0b52bc2ef0
完善光纤配置功能
已修改3个文件
171 ■■■■■ 文件已修改
src/components/do/b1-ins-order/add.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/do/b1-ins-order/fiberoptic-config.vue 165 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/do/b1-ins-order/add.vue
@@ -670,7 +670,7 @@
        orderType: [],
        filters: [],
        formType: [],
        configShow: false
        configShow: false,
      }
    },
    watch: {
src/components/do/b1-ins-order/fiberoptic-config.vue
@@ -63,14 +63,21 @@
        <el-col :span="15">
          <div class="grid-content">
            <h5>检测项信息</h5>
            <el-table ref="table1" :data="detectionItems" tooltip-effect="dark" style="width: 100%" height="282px"
              size="small" @selection-change="handleSelectionChange">
              <el-table-column type="selection" width="55">
            <el-table ref="table1" :data="detectionItems" tooltip-effect="dark" style="width: 100%"
            :row-class-name="tableRowClassName"
            :header-cell-class-name="setClassName"
            height="283px"
              size="small" @selection-change="handleSelectionChange2"
              @select-all="handleAll"
              @select="upProductSelect"
              >
              <el-table-column type="selection" width="55"
              :selectable="()=>(currentDetectionItems||this.multiFiberList.length > 0)">
              </el-table-column>
              <el-table-column label="实验室" show-overflow-tooltip prop="sonLaboratory"></el-table-column>
              <el-table-column label="实验室" show-overflow-tooltip prop="sonLaboratory" ></el-table-column>
              <el-table-column prop="inspectionItem" label="检验项" show-overflow-tooltip>
              </el-table-column>
              <el-table-column prop="inspectionItemSubclass" label="检验项子项" show-overflow-tooltip>
              <el-table-column prop="inspectionItemSubclass" label="检验项子项" show-overflow-tooltip width="100px">
              </el-table-column>
              <el-table-column prop="methodS" label="试验方法" show-overflow-tooltip>
              </el-table-column>
@@ -80,7 +87,7 @@
              </el-table-column>
              <el-table-column prop="manDay" label="预计时间" show-overflow-tooltip>
              </el-table-column>
              <el-table-column prop="ask" label="检测要求" show-overflow-tooltip>
              <el-table-column prop="ask" label="检测要求" show-overflow-tooltip width="200px">
                <template slot-scope="scope">
                  <el-input v-model="scope.row.ask" placeholder="请输入" size="small"></el-input>
                </template>
@@ -111,7 +118,7 @@
              </div>
            </div>
            <el-table ref="table2" :data="tableData" tooltip-effect="dark" style="width: 100%" height="270px"
              size="small" @selection-change="handleSelectionChange">
              size="small" @selection-change="handleSelectionChange3">
              <el-table-column type="selection" width="55">
              </el-table-column>
              <el-table-column label="光纤带编号" show-overflow-tooltip>
@@ -141,6 +148,7 @@
              <div class="search-item" style="width: 50%;">
                <label style="width: 80px;">参考标准</label>
                <el-select v-model="mireStandard" placeholder="请选择" size="small" style="width: 100%;" :disabled="mireModel===null"
                :loading="mireStandardLoading"
                @focus="selectsStandardMethodByFLSSM()" @change="(value)=>methodChange(value)">
                  <el-option v-for="item in mireStandards" :key="item.id" :label="item.code" :value="item.id">
                  </el-option>
@@ -148,7 +156,7 @@
              </div>
            </div>
            <el-table ref="table3" :data="fiberList" tooltip-effect="dark" style="width: 100%" height="270px"
              size="small" @selection-change="handleSelectionChange"
              size="small" @selection-change="handleSelectionChange4"
              @row-click="rowClickFiber">
              <el-table-column type="selection" width="55">
              </el-table-column>
@@ -202,7 +210,35 @@
        selectBushing: [],
        productList: [],
        fiberList: [],
        detectionItems:[]
        detectionItems:[],
        currentDetectionItems:null,
        mireStandardLoading:false,
        multiFiberList:[]
      }
    },
    computed: {
      isAllDisabled() {
        return this.multiFiberList.length > 0||this.currentDetectionItems
      },
    },
    watch: {
      mireModel(val1,val0) {
        if(val1!=val0){
          this.mireStandards = []
          this.fiberList = []
          this.multiFiberList = []
          this.detectionItems = []
          this.currentDetectionItems = null;
          this.mireStandard = null;
        }
      },
      mireStandard(val1,val0) {
        if(val1!=val0){
          this.fiberList = []
          this.multiFiberList = []
          this.detectionItems = []
          this.currentDetectionItems = null;
        }
      }
    },
    mounted() {
@@ -225,6 +261,15 @@
      handleSelectionChange(val) {},
      handleSelectionChange1(val){
        this.selectBushing = val
        this.mireModel = null
      },
      handleSelectionChange2(val){},
      handleSelectionChange3(val){
        this.detectionItems = this.HaveJson(this.productList)
      },
      handleSelectionChange4(val){
        this.multiFiberList = val
        this.detectionItems = this.HaveJson(this.productList)
      },
      outConfig(){
        this.$parent.configShow = false
@@ -295,9 +340,11 @@
      },
      selectsStandardMethodByFLSSM() {
        this.mireStandards = []
        this.mireStandardLoading = true
        this.$axios.post(this.$api.standardTree.selectsStandardMethodByFLSSM, {
          tree: '中天科技检测中心 - 通信产品实验室 - 光纤 - ' + this.mireModel
        }).then(res => {
          this.mireStandardLoading = false
          this.mireStandards = res.data.standardMethodList
        })
      },
@@ -312,10 +359,11 @@
            'Content-Type': 'application/json'
          }
        }).then(res => {
          res.data.forEach(a => {
          let arr = res.data.map(a => {
            a.state = 0
            return a
          })
          this.productList = res.data
          this.productList = arr
          setTimeout(() => {
            this.productList.forEach(a => {
              if (a.state == 1) this.toggleSelection(a)
@@ -354,10 +402,96 @@
            }
          }
        })
        console.log(this.productList)
      },
      rowClickFiber(row, column, event){
        this.detectionItems = row.productList
      }
        this.currentDetectionItems = row
        this.detectionItems = this.HaveJson(this.productList)
      },
      tableRowClassName({
        row,
        rowIndex
      }) {
        if (row.state === 0) {
          return 'warning-row';
        }
        return '';
      },
      handleAll(e) {
        if (e.length > 0) {
          this.detectionItems.map(m => {
            m.state = 1
            return m
          })
        } else {
          this.detectionItems.map(m => {
            m.state = 0
            return m
          })
        }
        if (e.length > 0) {
          if(this.multiFiberList.length > 0){
            this.multiFiberList.map(item => {
              item.productList.map(m=>{
                m.state = 1;
                return m;
              })
              return item
            })
          }else{
          this.currentDetectionItems.productList.map(m=>{
              m.state = 1;
              return m;
            })
          }
        } else {
          if(this.multiFiberList.length > 0){
            this.multiFiberList.map(item => {
              item.productList.map(m=>{
                m.state = 0;
                return m;
              })
              return item
            })
          }else{
            this.currentDetectionItems.productList.map(m=>{
              m.state = 0;
              return m;
            });
          }
        }
        this.$nextTick(() => {
          this.$refs.table1.doLayout()
        })
        console.log(222,this.currentDetectionItems,this.multiFiberList)
      },
      upProductSelect(selection, row) {
        row.state = row.state == 1 ? 0 : 1
        if(this.multiFiberList.length > 0){
          this.multiFiberList.map(item => {
            item.productList.map(m=>{
              if(m.id == row.id){
                m.state = row.state;
              }
              return m
            })
            return item
          })
        }else{
          this.currentDetectionItems.productList.map(m=>{
            if(m.id == row.id){
                m.state = row.state;
              }
              return m;
            });
        }
        console.log(1111,this.currentDetectionItems,this.multiFiberList)
      },
      setClassName({ column }) {
        if (column.type == 'selection' && !this.isAllDisabled) {
          return 'all-disabled'
        }
      },
    }
  }
</script>
@@ -420,4 +554,9 @@
    padding-top: 2px !important;
    padding-bottom: 2px !important;
  }
  >>>.all-disabled .el-checkbox__input .el-checkbox__inner {
    background-color: #edf2fc;
    border-color: #dcdfe6;
    cursor: not-allowed;
  }
</style>
src/main.js
@@ -13,11 +13,11 @@
//本地
Vue.prototype.LOCATIONVUE = "http://127.0.0.1:80";
// const javaApi = 'http://192.168.11.200:8001';//李
const javaApi = 'http://192.168.11.200:8001';//李
// const javaApi = 'http://10.20.102.168:8001';//张
// const javaApi = 'http://172.20.10.3:8001';//姜
// const javaApi = 'http://192.168.11.2:8001';//柴
 const javaApi = 'http://127.0.0.1:8001';//晏
//  const javaApi = 'http://127.0.0.1:8001';//晏
// const javaApi = 'http://114.132.189.42:1234';//测试服
//胜云服务器
// Vue.prototype.LOCATIONVUE = "http://syxt.shxiao2.cn";