Fixiaobai
2023-08-21 95fe284d1b3c11b573653f1564d0e084e7de5bb5
src/views/laboratory/measure/index.vue
@@ -117,11 +117,12 @@
          </div>
        </div>
      </div>
      <div style="position: absolute;top:14px;left: 9px;transition: 1s;width: 99%;height: 82vh;background-color: #fff;z-index: 21;">
          <Add/>
      <div
        :style="`position: absolute;top:${addTop}px;left: 9px;transition: 1s;width: 99%;height: 82vh;background-color: #fff;z-index: 21;`">
        <Add ref="add" />
      </div>
      <div id="myMOdel"
        :style="`position: absolute;transition: 1s;top:${mymodelTop}px; left: 9px; width: 99%; height: 65vh; background-color: #fff;z-index: 20;`">
        :style="`position: absolute;transition: 1s;top:${mymodelTop}px; left: 9px; width: 99%; height: 85vh; background-color: #fff;z-index: 20;`">
        <el-col :span="10">
          <p style="font-size: 13px;padding-left: 40px;">计划信息</p>
        </el-col>
@@ -188,16 +189,77 @@
            <el-table-column prop="imCreateTime" label="创建日期" />
            <el-table-column prop="measurementName" label="创建人" />
            <el-table-column prop="measurementUnit" label="计量单位" />
            <el-table-column prop="equipmentCode" label="计量编号" />
            <el-table-column prop="code" label="计量编号" />
            <el-table-column prop="equipmentCode" label="操作">
              <template slot-scope="scope">
                <a @click="measureUp(scope)" style="color: deepskyblue;">计量</a>
              </template>
            </el-table-column>
          </el-table>
        </el-col>
        <el-col style="width: 93%;margin-left: 40px; margin-top: 90px;display: flex;justify-content: end;">
        <el-col style="width: 93%;margin-left: 40px; margin-top: 250px;display: flex;justify-content: end;">
          <el-pagination @size-change="handleSizeChangePlan" @current-change="handleCurrentChangePllan"
            :current-page="currentPagePlan" :page-sizes="[5, 10, 20]" :page-size="pageSizePlan"
            :current-page="currentPagePlan" :page-sizes="[5, 10]" :page-size="pageSizePlan"
            layout="total, sizes, prev, pager, next, jumper" :total="totalPlan">
          </el-pagination>
        </el-col>
      </div>
      <el-dialog class="measureForm" title="计量" :visible.sync="dialogVisible">
      <el-form label-position="top" ref="upmeasureForm" :model="measureUpInfo">
        <el-row :gutter="20">
          <el-col :span="24">
            <el-form-item label="检定有效期" prop="date" :rules="[{ required: true, message: '请选择检定有效期', trigger: 'change' }]">
              <el-date-picker v-model="measureUpInfo.date" type="daterange" range-separator="至" start-placeholder="开始日期"
                end-placeholder="结束日期" />
            </el-form-item>
          </el-col>
        </el-row>
        <el-row :gutter="20">
          <el-col :span="12">
            <el-form-item label="不确定度" prop="uncertainty"
              :rules="[{ required: true, message: '请填写不确定度', trigger: 'blur' }]">
              <el-input placeholder="请填写不确定度" v-model="measureUpInfo.uncertainty" />
            </el-form-item>
          </el-col>
          <el-col :span="12">
            <el-form-item label="结果" prop="result" :rules="[{ required: true, message: '请选择结果', trigger: 'change' }]">
              <el-select v-model="measureUpInfo.result" clearable filterable :allow-create="true" placeholder="请选择结果"
                style="width:100%">
                <el-option v-for="item in result" :key="item.id" :label="item.label" :value="item.value" />
              </el-select>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row :gutter="20">
          <el-col :span="24">
            <el-form-item label="性能指标">
              <el-input v-model="measureUpInfo.performanceIndex" type="textarea" :rows="2" placeholder="请输入内容" />
            </el-form-item>
          </el-col>
        </el-row>
        <el-row :gutter="20">
          <el-col :span="24">
            <el-form-item label="备注">
              <el-input v-model="measureUpInfo.remarks" type="textarea" :rows="2" placeholder="请输入内容" />
            </el-form-item>
          </el-col>
        </el-row>
        <el-row :gutter="20">
          <el-col :span="24">
            <el-form-item label="">
              <el-upload class="upload-demo" action="#" :on-change="handleUpload" :auto-upload="false">
                <el-button size="small" type="primary">点击上传</el-button>
              </el-upload>
            </el-form-item>
          </el-col>
        </el-row>
      </el-form>
      <span slot="footer" class="dialog-footer">
        <el-button type="primary" @click="addMeasure">确 定</el-button>
        <el-button @click="dialogVisible=false">取 消</el-button>
      </span>
    </el-dialog>
    </div>
  </div>
</template>
@@ -211,6 +273,26 @@
  },
  data() {
    return {
      dialogVisible: false,
      tableIndex: null,
      measureUpInfo:{
        result: null,
        date: null,
        uncertainty: null,
        performanceIndex: null,
        remarks: null,
        file: null
      },
      result: [{
        label: '合格',
        value: 1
      }, {
        label: '矫正后可用',
        value: 2
      }, {
        label: '不合格',
        value: 3
      }],
      searchData: {
        code: '',
        name: '',
@@ -232,9 +314,8 @@
      currentPagePlan: 1,
      pageSizePlan: 5,
      totalPlan: 0,
      drawer: false,
      direction: 'rtl',
      lookVisible: true,
      lookVisible: false,
      measureData: [],
      planInfo: {
        plannedOrderNumber: 7897897987,
@@ -244,7 +325,8 @@
        createPerson: '某某负责人',
        createTime: '2021-09-08'
      },
      mymodelTop: -600,//14
      mymodelTop: -700,//14
      addTop: -700,
      planId: 0
    }
  },
@@ -253,7 +335,29 @@
    // this.getPlanPageList()
  },
  methods: {
    upResult(){
        this.measureData[this.tableIndex].result=this.resultUp
    },
    measureUp(scope) {
      console.log(scope);
      this.dialogVisible = true
      this.tableIndex=scope.$index
      this.measureUpInfo.result=scope.row.result
    },
    measureAdd() {
      let add = this.$refs.add.add()
      if (add) {
        this.addTop = -700
        this.$message({
          message: '操作成功!',
          type: 'success'
        });
        this.lookVisible = false
      }
    },
    async handleSizeChangePlan(num) {
      console.log(num);
      this.pageSizePlan = num
      await this.limitGetPlanMeasureInstrument()
    },
@@ -262,14 +366,18 @@
      await this.limitGetPlanMeasureInstrument()
    },
    addPlan() {
      this.drawer = true
      this.addTop = 14
      this.lookVisible = true
      this.$parent.mainShowAdd()
    },
    async limitGetPlanMeasureInstrument() {
      let res = await limitGetPlanMeasureRequest({
      let param = {
        id: this.planId,
        currentPage: this.currentPagePlan,
        pageSize: this.pageSize
      })
        pageSize: this.pageSizePlan
      }
      console.log(param);
      let res = await limitGetPlanMeasureRequest(param)
      this.totalPlan = res.data.taotal
      this.measureData = res.data.list
    },
@@ -299,7 +407,7 @@
    },
    combackLookPlan() {
      this.lookVisible = false
      this.mymodelTop = -600
      this.mymodelTop = -700
    },
    blurSearch() {
      if (this.radioValue === 1) {
@@ -309,17 +417,21 @@
    handleClose() {
      this.drawer = false
    },
    handleCurrentChange() {
      this.getStandingPageList()
    handleCurrentChange(num) {
      this.currentPage = num
      this.radioValue ? this.getPlanPageList() : this.getStandingPageList()
    },
    handleSizeChange() {
      this.getStandingPageList()
    handleSizeChange(num) {
      this.pageSize = num
      this.radioValue ? this.getPlanPageList() : this.getStandingPageList()
    },
    async getStandingPageList() {
      const res = await getStandingPageList({
      let param = {
        currentPage: this.currentPage, pageSize: this.pageSize,
        code: this.searchData.code, name: this.searchData.name, unit: this.searchData.measureunit
      })
      }
      console.log(param);
      const res = await getStandingPageList(param)
      this.measureLedgerTable = res.data.records
      this.total = res.data.total
      this.measureLedgerTable.forEach(item => {
@@ -362,10 +474,12 @@
      this.reset()
    },
    async getPlanPageList() {
      const res = await getPlanPageList({
      let param = {
        currentPage: this.currentPage, pageSize: this.pageSize,
        code: this.searchData.code, name: this.searchData.name, unit: this.searchData.measureunit
      })
      }
      console.log(param);
      const res = await getPlanPageList(param)
      res.data.list.forEach(item => {
        item.palanDate = item.beginTime + " ~ " + item.endTime
      })