zouyu
2023-08-28 7d9cfe6dae6f3bc1016cdacb497e4724e22ca3db
Merge branch 'master' of http://192.168.110.209:9001/r/lims-before
已修改5个文件
279 ■■■■■ 文件已修改
src/api/experiment/planAssignments.js 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.js 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/experiment/inspectionApplication/Viewdetails/index.vue 44 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/experiment/inspectionApplication/index.vue 214 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/laboratory/measure/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/experiment/planAssignments.js
@@ -71,3 +71,19 @@
    params
  })
}
//標準庫
export function lookProByVer(params) {
  return request({
    url: '/inspection/lookProByVer',
    method: 'get',
    params
  })
}
//选择责任人
export function chooseinstum(params) {
  return request({
    url: '/plan/chooseinstum',
    method: 'get',
    params
  })
}
src/router/index.js
@@ -527,6 +527,8 @@
function createRouter(Routees) {
  if (JSON.parse(sessionStorage.getItem("user")) != undefined && JSON.parse(sessionStorage.getItem("user")) != null) {
    let sessionLayerId=JSON.parse(sessionStorage.getItem("user")).sessionLayerId
    if(sessionLayerId!='c3284d0f94606de1fd2af172aba15bf3'){
    let role = JSON.parse(sessionStorage.getItem("user")).role
    let menuFather = baseRouter
    const dataMenuFather = fn3(menuFather)
@@ -583,6 +585,7 @@
    dataMenuFather.push({path: '*', redirect: '/404', hidden: true})
    dataMenuFather.push()
    Routees = dataMenuFather
  }
  } else {
    Routees = baseRouter
  }
src/views/experiment/inspectionApplication/Viewdetails/index.vue
@@ -87,6 +87,7 @@
            <el-card style="margin: 10px;">
                <el-table
                    :data="insProducts"
                    height="calc(80vh - 250px)"
                    border      
                    style="width: 100%">
                    <el-table-column
@@ -122,10 +123,10 @@
                    <el-table-column
                        prop="inspectionMaterialId"
                        label="实验设备">
                        <template>
                            <!-- <el-select v-model="scope.row.checker" size="small" slot="append" style="width: 260px;">
                            <el-option v-for="item in checkeroptions" :key="item.value" :label="item.label">{{ item.label }}</el-option>
                            </el-select> -->
                        <template slot-scope="scope">
                            <el-select v-model="SHEbei" size="small" slot="append" style="width: 220px;">
                            <el-option v-for="item in getDevices" :key="item.id" :label="item.name"></el-option>
                            </el-select>
                        </template>
                    </el-table-column>
                </el-table>
@@ -136,20 +137,32 @@
</div>       
</template>
<script>
  import { selectInspectsListById,selectUser} from '@/api/experiment/planAssignments'
  import { selectInspectsListById,selectUser,chooseinstum} from '@/api/experiment/planAssignments'
export default {
    data(){
        return {
            searchData:{ },
            insProducts:[],
            uu:'',
            value:''
            value:'',
            SHEbei:'',
            aaa:{},
            ZERENren:[],
            // getDevices:[]
        }
    },
    created(){
        this.uu = this.$route.query.id;
        // if(this.$route.query){
            // this.uu = this.$route.query.id;
        // }
        this.aaa = this.$route.query
        // if(this.$route.query){
            // this.aaa = this.$router.query.data1
        //     console.log(this.aaa);
        // }
        console.log(this.aaa);
        this.selectInspectsListById()
        this.selectUser()
        this.chooseinstum()
    },
    methods: {
        //返回
@@ -160,11 +173,22 @@
      async selectUser(){
        const res = await selectUser()
        this.ZERENren = res.data
        // console.log(this.ZERENren);
        console.log(this.ZERENren);
      },
      //设备
    //   getDevices() {
    //             get(this.$url.chooseinstum).then(res => {
    //                 this.devices = res.data
    //             })
    //         },
    async chooseinstum(){
        const res =  await chooseinstum()
        this.getDevices = res.data
        console.log(this.getDevices);
    },
      //检验单表
      async selectInspectsListById() {
        const res = await selectInspectsListById({id:this.uu})
        const res = await selectInspectsListById({id:this.aaa.id})
        this.searchData = res.data
        this.insProducts = res.data.insProducts
      }
src/views/experiment/inspectionApplication/index.vue
@@ -194,7 +194,7 @@
                  <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="来料日期:">
                              <el-input style="width: 300px" type="text" :value="infoForm.dateSurvey" placeholder="请输入来料日期" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="infoForm.startTime" placeholder="请输入来料日期" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
@@ -206,19 +206,19 @@
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="原材料编码:">
                              <el-input style="width: 300px" type="text" :value="infoForm.materialCoding" placeholder="请输入原材料编码" autocomplete="off" />
                              <el-input style="width: 300px"  type="text" :value="infoForm.mcode" placeholder="请输入原材料编码" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="原材料名称:">
                              <el-input style="width: 300px" type="text" :value="infoForm.materialName" placeholder="请输入原材料名称" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="infoForm.name" placeholder="请输入原材料名称" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="规格型号:">
                              <el-input style="width: 300px" type="text" :value="infoForm.specificationsModels" placeholder="请输入规格型号" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="infoForm.specifications" placeholder="请输入规格型号" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
@@ -230,13 +230,13 @@
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="数量:">
                              <el-input style="width: 300px" type="text" :value="infoForm.quantity" placeholder="请输入数量" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="infoForm.num" placeholder="请输入数量" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="检验时间:">
                              <el-date-picker
                                  v-model="infoForm.checkdate"
                                  v-model="infoForm.endTime"
                                  type="daterange"
                                  range-separator="至"
                                  start-placeholder="开始日期"
@@ -249,7 +249,7 @@
                </el-form>
              </div>
              <div v-if="type === 1">
                <el-form :model="commisionSelection" ref="commisionTable" class="checkTypeForm" label-position="top" label-width="200px" size="mini">
                <el-form :model="commisionSelection" ref="commisionSelection" class="checkTypeForm" label-position="top" label-width="200px" size="mini">
                  <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="委托编号">
@@ -258,31 +258,31 @@
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="委托单位">
                              <el-input style="width: 300px" type="text" :value="commisionSelection.entrusted" placeholder="请输入委托单位" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="commisionSelection.supplier" placeholder="请输入委托单位" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="样品编号">
                              <el-input style="width: 300px" type="text" :value="commisionSelection.samples_number" placeholder="请输入样品编号" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="commisionSelection.mcode" placeholder="请输入样品编号" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="样品名称">
                              <el-input style="width: 300px" type="text" :value="commisionSelection.sample_name" placeholder="请输入样品名称" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="commisionSelection.name" placeholder="请输入样品名称" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="规格型号:">
                              <el-input style="width: 300px" type="text" :value="commisionSelection.specifications_models" placeholder="请输入型号规格" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="commisionSelection.specifications" placeholder="请输入型号规格" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="送达时间">
                            <el-input style="width: 300px" type="text" :value="commisionSelection.dateSurvey" placeholder="请输入单位" autocomplete="off" />
                            <el-input style="width: 300px" type="text" :value="commisionSelection.supplier" placeholder="请输入单位" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
@@ -379,21 +379,24 @@
        <el-dialog
              title="标准库"
              :visible.sync="Standardframe"
              width="48%">
              width="49%"
              >
              <el-card>
                  <template slot-scope="scope" >
                    <span>版本选择:</span>
                            <el-select v-model="commisionTable" size="small" slot="append" style="width: 220px;">
                            <el-option v-for="item in BANben" :key="item.id" :label="item.name"  :value="item.name"></el-option>
                            <el-select @change="ccc" v-model="selectedValue" size="small" slot="append" style="width: 220px;">
                            <el-option v-for="item in BANben" :key="item" :label="item"
                             :value="item"></el-option>
                            </el-select>
                  </template>
              </el-card>
                <el-table
                    :data="tableData"
                    style="width: 100%; margin-bottom: 20px"
                    row-key="name"
                    row-key="id"
                    border
                    height="calc(80vh - 250px)"
                    default-expand-all
                    ref="multipleTable"
                    :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
@@ -415,7 +418,7 @@
                          >
                            {{ scope.row.code == "[1]" ? "01" : "02" }}
                          </div>
                          <span style="color: black">{{ scope.row.name }}</span></el-tag
                       <span style="color: black">{{ scope.row.name }}</span></el-tag
                        >
                      </template>
                    </el-table-column>
@@ -447,7 +450,7 @@
                  </el-table>
                  <span slot="footer" class="dialog-footer">
                <el-button @click="Standardframe = false">取 消</el-button>
                <el-button type="primary" @click="Standardframe = false">确 定</el-button>
                <el-button type="primary" @click="GOfrom">确 定</el-button>
            </span>
            </el-dialog>
@@ -465,7 +468,7 @@
              :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
              :data="rawMaterialTable"
              style="width: 100%"
              @selection-change="handleSelectionChange_0"
              @selection-change="handleSelectionChange"
            >
            <el-table-column
                type="selection"
@@ -477,7 +480,7 @@
                min-width="8%"
              />
              <el-table-column
                prop="createTime"
                prop="startTime"
                label="来料日期"
                min-width="8%"
              />
@@ -487,17 +490,17 @@
                min-width="12%"
              />
              <el-table-column
                prop="materialCoding"
                prop="mcode"
                label="材料编码"
                min-width="8%"
              />
              <el-table-column
                prop="materialName"
                prop="name"
                label="材料名称"
                min-width="8%"
              />
              <el-table-column
                prop="specificationsModels"
                prop="specifications"
                label="规格型号"
                min-width="12%"
              />
@@ -507,22 +510,22 @@
                min-width="5%"
              />
              <el-table-column
                prop="quantity"
                prop="num"
                label="数量"
                min-width="5%"
              />
              <el-table-column
                prop="inspectionDate"
                prop="endTime"
                label="报检日期"
                min-width="8%"
              />
              <el-table-column
                prop="surveyor"
                prop="supplier"
                label="检验人"
                min-width="8%"
              />
              <el-table-column
                prop="dateSurvey"
                prop="startTime"
                label="检验日期"
                min-width="8%"
              />
@@ -562,14 +565,14 @@
              <el-table-column type="selection" min-width="10%" />
                            <el-table-column type="index" label="序号" min-width="10%" />
                            <el-table-column prop="entrust_coding" label="委托编号" min-width="10%" />
                            <el-table-column prop="entrusted" label="委托单位" min-width="12%" />
                            <el-table-column prop="samples_number" label="样品编号" min-width="8%" />
                            <el-table-column prop="sample_name" label="样品名称" min-width="8%" />
                            <el-table-column prop="specifications_models" label="规格型号" min-width="12%" />
                            <el-table-column prop="dateSurvey" label="送达时间" min-width="8%" />
                            <el-table-column prop="completionDeadline" label="完成期限" min-width="8%" />
                            <el-table-column prop="supplier" label="委托单位" min-width="12%" />
                            <el-table-column prop="mcode" label="样品编号" min-width="8%" />
                            <el-table-column prop="name" label="样品名称" min-width="8%" />
                            <el-table-column prop="specifications" label="规格型号" min-width="12%" />
                            <el-table-column prop="endTime" label="送达时间" min-width="8%" />
                            <el-table-column prop="formTime" label="完成期限" min-width="8%" />
                            <el-table-column prop="contacts" label="委托编制人" min-width="8%" />
                            <el-table-column prop="inspectionTime" label="检验日期" min-width="8%" />
                            <el-table-column prop="endTime" label="检验日期" min-width="8%" />
                            <el-table-column prop="inspection_status" label="状态" min-width="8%">
                                <template slot-scope="scope">
                                    <div v-if="scope.row.inspection_status === 1">
@@ -600,9 +603,10 @@
  </template>
  <script>
  import { selectInspectsList, selectAll, addInspect,getCommisionList,YANcailiso,chooseVer} from '@/api/experiment/planAssignments'
  import { selectInspectsList, selectAll, addInspect,chooseVer,lookProByVer} from '@/api/experiment/planAssignments'
  export default {
    data() {
      return {
        showDetail: false,
        searchData: {
@@ -611,6 +615,7 @@
          state: '',
        },
        valu:{},
        inputValue: '',
        icode:'',
        inspectionTable: [],
        rawMaterialTable: [],
@@ -625,6 +630,7 @@
          amount: '',
          checkdate: []
        },
        selectedValue:1,
        infoForm:{},
        commisionSelection:{
          entrust_coding: '',
@@ -674,7 +680,8 @@
                tableData: [],
        tableRow:{},
        BANben:[],
        select_1: []
        select_1: [],
        aa:{}
      }
    },
    watch: {
@@ -694,33 +701,59 @@
      if (this.$route.name === 'ForInspectionDetail') this.showDetail = true
    },
    methods: {
      async selectAll(){
        const res = selectAll({type:0})
        // console.log(res);
        this.rawMaterialTable = res.data
      },
      async selectAll(){
        const res = selectAll({type:2})
        // console.log(res);
        this.commisionTable = res.data
      },
      async handleClick(row){
        this.inspectionTable = row;
        this.id = row.id
        this.$router.push({name:'Viewdetails',query: {id:row.id}});
        this.selectInspectsList()
      },
      // validateInput() {
      //   if (this.inputValue.trim() === '') {
      //  }
      // },      // 输入值为空,弹出提示信息或进行其他处理
      //     alert('输入值不能为空');
      //     return;
      //版本库
      async chooseVer() {
        console.log(this.tmp.materialCoding);
        console.log(this.tmp.materialName);
        console.log(this.tmp.specificationsModels);
        const res = await chooseVer ({
          mcode:this.commisionTable.entrust_coding,
          name:this.commisionTable.entrusted,
          scifications:this.commisionTable.specifications_models
          mcode:this.tmp.mcode,
          name:this.tmp.name,
          specifications:this.tmp.specifications
         })
        console.log(res);
        this.BANben = res.data.row
         this.BANben = res.data
         console.log(res.data);
         this.aa = this.BANben[0]
         this.lookProByVer()
      },
      //委托检验
      async getCommisionList() {
        const res = await getCommisionList({pageNo:1,pageSize:10 })
      //标准库
      async lookProByVer() {
        const res = await lookProByVer({
          mcode:this.tmp.mcode,
          name:this.tmp.name,
          specifications:this.tmp.specifications,
          version:this.aa
        })
        console.log(res);
        this.commisionTable = res.data
        this.tableData = res.data
      },
      //原材料
      async selecYANcailisotAllAPI() {
        const res = await YANcailiso({pageNo:1,pageSize:10 })
        console.log(res);
        this.rawMaterialTable = res.data.row
      ccc(val){
        // console.log(val);
        this.aa = val
        this.lookProByVer()
      },
      async selectInspectsList() {
        // 获取分页列表
@@ -733,7 +766,7 @@
          var startTime = item["DATE_FORMAT(i"]["`start_time`,'%Y-%m-%d')"]
          var endTime = item["DATE_FORMAT(i"]["`end_time`,'%Y-%m-%d')"]
          var checkdate = startTime + '~' + endTime
          var createTime = item["DATE_FORMAT(i"]["`create_time`,'%Y-%m-%d')"]
          var createTime = item["DATE_FORMAT(i"]["`create_time`,'%Y-%d')"]
          item['formTime'] = formTime // 来料日期
          item['checkdate'] = checkdate // 检验日期
          item['createTime'] = createTime // 登记日期
@@ -787,6 +820,7 @@
        this.$refs.multipleTable.toggleRowSelection(val.pop())
      }
      this.tmp = val[0]
      // console.log(this.tmp);
    },
    handleCommisionSelection(){
      this.commisionSelection = this.tmp
@@ -794,29 +828,35 @@
    },
    handleRawMaterialSelection(){
      this.infoForm = this.tmp
      // console.log(this.infoForm);
      this.rawmaterialVisible = false
    },
    handleRadioChange(){
      setTimeout(()=>{
                if(this.type === 0){
                  // 原材料报检
                  this.rawmaterialVisible = true
                  selectAll({type: this.type}).then(res=>{
                        var data = res.data
                        data.forEach((item)=>{
                          var checkdate = []
                          checkdate.push(item['createTime'])
                          checkdate.push(item['updateTime'])
                          item['checkdate'] = checkdate // 检验日期
                        })
                        this.rawMaterialTable = res.data
                    })
                  // this.$router.push({ name: 'ReportForInspection' });
                }else if(this.type === 1){
        // 原材料报检
        this.rawmaterialVisible = true
        selectAll({type:0}).then(res=>{
          // console.log(res);
        //   var data = res.data
        // data.forEach((item)=>{
        //   var checkdate = []
        //   checkdate.push(item['createTime'])
        //   checkdate.push(item['updateTime'])
        //   item['checkdate'] = checkdate // 检验日期
        // })
        console.log(res);
        this.rawMaterialTable = res.data
        })
          // this.infoForm = res.data
        // this.$router.push({ name: 'ReportForInspection' });
      }else if(this.type === 1){
                  this.commisionVisible = true
                  getCnList({pageNo:1,pageSize:10}).then(res=>{
                    // consommisioole.log(res);
                    this.commisionTable = res.data.row
          selectAll({type:2}).then(res=>{
          this.commisionTable = res.data
                  })
                }
            },100)
@@ -885,25 +925,29 @@
      //确定跳转
      QUEding(){
        // this.tableRow = a
        this.Standardframe = true
        chooseVer({mcode:this.select_1[0].materialCoding,
          name:this.select_1[0].materialName,
          scifications:this.select_1[0].specificationsModels}).then(res => {
            this.BANben = res.data.row
            console.log(this.BANben);
          })
        this.chooseVer()
      },
      //確定詳情頁
      GOfrom( ){
        this.Standardframe = false
        // console.log(this.tmp.materialCoding);
        // console.log(this.tmp.materialName);
        // console.log(this.tmp.specificationsModels);
        // console.log(this.aa)
        // const data = {
        //   // mcode : this.tmp.mcode,
        //   // name:this.tmp.name,
        //   // specifications:this.tmp.specifications,
        //   version:this.tmp.id
        // }
        this.$router.push({name:'Viewdetails',query:{id:this.tmp.id}})
      },
      handleSelectionChange_0(val){
        this.select_1 = []
        val.forEach(v => {
          let obj = {}
          obj.materialCoding = v.materialCoding
          obj.materialName = v.materialName
          obj.specificationsModels = v.specificationsModels
          this.select_1.push(obj)
        })
      }
    }
  }
  </script>
src/views/laboratory/measure/index.vue
@@ -388,7 +388,7 @@
    },
    async handleSizeChangePlan(num) {
      this.pageSizePlan = num
      this.currentPagePlan=1
      this.currentPage
      await this.limitGetPlanMeasureInstrument()
    },
    handleCurrentChangePllan(num) {