licp
2024-03-22 a075ef6b7cbd09d727068ef3d7e08691775dbb16
合并冲突
已修改6个文件
118 ■■■■■ 文件已修改
src/assets/api/controller.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/do/b1-ins-order/add.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/do/b1-inspect-order-plan/Inspection.vue 92 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/tool/value-table.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/b1-inspect-order-plan.vue 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/b1-inspection-order.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/api/controller.js
@@ -133,6 +133,7 @@
const insOrderPlan = {
    selectInsOrderPlanList: "/insOrderPlan/selectInsOrderPlanList", //查询检验任务
  claimInsOrderPlan: "/insOrderPlan/claimInsOrderPlan",//认领检验任务
    doInsOrder: "/insOrderPlan/doInsOrder",//执行检验操作
}
const systemLog = {
src/components/do/b1-ins-order/add.vue
@@ -417,9 +417,9 @@
                <el-button type="primary" @click="onSample()" :loading="getProductLoad">确 定</el-button>
            </span>
        </el-dialog>
        <el-dialog title="保存模板" :visible.sync="templateDia" width="30%">
            <div class="body" style="height: 10vh;display: flex;align-items: center;" v-if="templateDia">
                <div class="search_label"><span class="required-span">* </span>模板名称:</div>
        <el-dialog title="保存模板" :visible.sync="templateDia" width="400px">
            <div class="body" style="display: flex;align-items: center;" v-if="templateDia">
                <div class="search_label" style="width: 90px;"><span class="required-span">* </span>模板名称:</div>
                <div class="search_input">
                    <el-input size="small" clearable v-model="templateName"></el-input>
                </div>
src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -55,30 +55,30 @@
                    </el-col>
                </el-row>
        <div class="search">
            <el-form :inline="true" :model="searchForm" class="form-inline" label-width="90px">
            <el-form :inline="true" :model="searchForm" class="form-inline" label-width="100px">
                <el-form-item label="委托编号:">
                    <el-input clearable v-model="searchForm.sampleName" disabled size="small" placeholder="请输入"></el-input>
                    <el-input clearable v-model="insOrder.entrustCode" disabled size="small" placeholder="请输入"></el-input>
                </el-form-item>
                <el-form-item label="样品编号:">
                    <el-input clearable v-model="searchForm.sampleName" disabled size="small" placeholder="请输入"></el-input>
                    <el-input clearable v-model="currentSample.sampleCode" disabled size="small" placeholder="请输入"></el-input>
                </el-form-item>
        <el-form-item label="样品名称:">
                    <el-input clearable v-model="searchForm.sampleName" disabled size="small" placeholder="请输入"></el-input>
                    <el-input clearable v-model="currentSample.sample" disabled size="small" placeholder="请输入"></el-input>
                </el-form-item>
        <el-form-item label="样品数量:">
                    <el-input clearable v-model="searchForm.sampleName" disabled size="small" placeholder="请输入"></el-input>
                    <el-input clearable v-model="sampleProduct.length" disabled size="small" placeholder="请输入"></el-input>
                </el-form-item>
        <el-form-item label="下发时间:">
                    <el-input clearable v-model="searchForm.sampleName" disabled size="small" placeholder="请输入"></el-input>
                    <el-input clearable v-model="insOrder.sendTime" disabled size="small" placeholder="请输入"></el-input>
                </el-form-item>
        <el-form-item label="紧急程度:">
                    <el-input clearable v-model="searchForm.sampleName" disabled size="small" placeholder="请输入"></el-input>
                    <el-input clearable v-model="insOrder.typeName" disabled size="small" placeholder="请输入"></el-input>
                </el-form-item>
        <el-form-item label="约定时间:">
                    <el-input clearable v-model="searchForm.sampleName" disabled size="small" placeholder="请输入"></el-input>
                    <el-input clearable v-model="insOrder.appointed" disabled size="small" placeholder="请输入"></el-input>
                </el-form-item>
        <el-form-item label="当前样品数:">
                    <el-input clearable v-model="searchForm.sampleName" disabled size="small" placeholder="请输入"></el-input>
        <el-form-item label="当前样品位数:" >
          <span v-if="currentSample.index">{{ `NO.${currentSample.index}` }}</span>
                </el-form-item>
            </el-form>
        </div>
@@ -87,31 +87,37 @@
    <el-drawer
      title="样品切换"
      :visible.sync="sampleVisible"
      :destroy-on-close="true"
      size="55%">
      <el-table class="el-table" ref="productTable" :data="productList" height="100%" tooltip-effect="dark" border highlight-current-row @row-click="handleChangeSample">
                <el-table-column type="index" align="center" label="序号" width="70" :key="Math.random()">
      size="50%">
      <el-table class="el-table" ref="productTable" :data="sampleProduct" height="100%" tooltip-effect="dark" border highlight-current-row @row-click="handleChangeSample" :row-class-name="tableRowClassName">
                <el-table-column type="index" align="center" label="序号" width="70px" :key="Math.random()">
                </el-table-column>
                <el-table-column prop="inspectionItemSubclass" label="样品编号" min-width="100"
                <el-table-column prop="sampleCode" label="样品编号" min-width="100px"
                    show-overflow-tooltip></el-table-column>
        <el-table-column prop="method" label="样品型号" min-min-width="100" show-overflow-tooltip></el-table-column>
                <el-table-column prop="sonLaboratory" label="检测状态" min-width="100" show-overflow-tooltip></el-table-column>
                <el-table-column prop="unit" label="是否留样" min-width="100" show-overflow-tooltip></el-table-column>
        <el-table-column prop="model" label="样品型号" min-width="100px" show-overflow-tooltip></el-table-column>
                <el-table-column prop="insState" label="检测状态" min-width="100px" show-overflow-tooltip>
          <template slot-scope="scope">
            <el-tag v-for="(item, i) in typeList" :key="i" v-if="item.value == scope.row.insState"
                                        :type="item.type" size="medium" style="margin-right: 5px;">{{item.label}}</el-tag>
          </template>
        </el-table-column>
                <el-table-column prop="isLeave" label="是否留样" min-width="100px" show-overflow-tooltip>
          <template slot-scope="scope">
            <span>{{ scope.row.isLeave==0?'否':'是' }}</span>
          </template>
        </el-table-column>
        <!-- 检验单会有一个是否有配套样品字段控制显示 -->
        <el-table-column prop="unit" label="配套样品型号" min-width="100" show-overflow-tooltip></el-table-column>
        <el-table-column prop="unit" label="配套样品名称" min-width="100" show-overflow-tooltip></el-table-column>
        <el-table-column prop="unit" label="配套样品数量" min-width="100" show-overflow-tooltip></el-table-column>
        <el-table-column prop="joinModel" label="配套样品型号" min-width="130px" show-overflow-tooltip v-if="insOrder.mating>0"></el-table-column>
        <el-table-column prop="joinName" label="配套样品名称" min-width="130px" show-overflow-tooltip v-if="insOrder.mating>0"></el-table-column>
        <el-table-column prop="joinNum" label="配套样品数量" min-width="130px" show-overflow-tooltip v-if="insOrder.mating>0"></el-table-column>
            </el-table>
    </el-drawer>
    <el-drawer
      title="任务切换"
      :visible.sync="taskVisible"
      :destroy-on-close="true"
      size="55%"
      :append-to-body="true">
      size="45%">
      <ValueTable class="value-table" ref="insOrderPlan"
                    :url="$api.insOrderPlan.selectInsOrderPlanList" :componentData="componentData"
                    :key="upIndex" v-if="taskVisible"/>
                    :key="upIndex"/>
    </el-drawer>
    </div>
</template>
@@ -119,7 +125,7 @@
<script>
  import ValueTable from '../../tool/value-table.vue'
    export default {
        props: ['sonLaboratory'],
        props: ['sonLaboratory','orderId'],
    components: {
            ValueTable,
        },
@@ -131,7 +137,6 @@
                    sampleName: null,
                    state: null
                },
        productList:[],
                id: 0,
        componentData: {
                    entity: {
@@ -159,22 +164,44 @@
                    requiredUp: []
                },
        upIndex: 0,
                insOrder: {},
                sampleProduct: [],
        typeList:[],
        urgentList:[],
        currentSample:{},//当前样品信息
            }
        },
        created() {
      this.componentData.entity.sonLaboratory = this.sonLaboratory;
      this.id = this.orderId;
        },
        mounted() {
      this.getTypeDicts()
      this.getInsStateDicts()
        },
        watch:{
            id(val){
                this.$axios.post(this.$api.insOrderPlan.doInsOrder,{
                    id: val
                }).then(res=>{
                    this.insOrder = res.data.insOrder;
          this.urgentList.forEach(m=>{
            if(m.value==this.insOrder.type){
              this.insOrder.typeName = m.label
            }
          })
                    this.sampleProduct = res.data.sampleProduct
          this.currentSample = this.sampleProduct[0]
                })
            }
        },
        methods: {
      handleChangeSample(row){
        console.log(1111111111,row)
      handleChangeSample(row, column, event){
        this.currentSample = row;
        this.sampleVisible = false;
      },
      handleChangeTask(row){
        console.log(222222222,row)
        this.id = row[0].id;
        this.taskVisible = false;
      },
      getTypeDicts() {
@@ -191,6 +218,7 @@
                            ele.type = 'danger'
                        }
                    })
          this.urgentList = data;
                    this.componentData.tagField.type.select = data
                })
            },
@@ -209,9 +237,13 @@
                            ele.type = 'danger'
                        }
                    })
          this.typeList = data
                    this.componentData.tagField.insState.select = data
                })
            },
      tableRowClassName({ row, rowIndex }){
        row.index = rowIndex + 1;
      }
        }
    }
</script>
src/components/tool/value-table.vue
@@ -55,11 +55,11 @@
    } */
    .value-table .highlight-danger-row-border td:first-child {
        border-left: 4px solid red;
        border-left: 4px solid #f56c6c;
    }
    .value-table .highlight-danger-row-border td:last-child {
        border-right: 4px solid red;
        border-right: 4px solid #f56c6c;
    }
    .value-table .el-upload {
src/components/view/b1-inspect-order-plan.vue
@@ -164,7 +164,7 @@
        <div style="width: 100%;height: 100%;" v-if="activeFace >0">
            <Add :active="activeFace" :currentId="currentId"/>
        </div>
    <Inspection v-if="state==1" @goback="state=0" :orderId="orderId" :sonLaboratory="componentData.entity.sonLaboratory"/>
    <Inspection v-if="state==1" @goback="goback" :orderId="orderId" :sonLaboratory="componentData.entity.sonLaboratory"/>
    </div>
</template>
@@ -209,7 +209,10 @@
                            id: '',
                            font: '检验',
                            type: 'text',
                            method: 'handleInspection'
                            method: 'handleInspection',
                            disabFun: (row, index) => {
                                return row.userId == null
                            }
                        }, {
                            id: '',
                            font: '交接',
@@ -270,7 +273,7 @@
                activeFace: 0, //1:下单,2:查看,3:审核
                currentId: null,
                entityCopy: {},
                orderId: 0
                orderId: 0,
            }
        },
        created() {
@@ -413,6 +416,10 @@
            playOrder(num) {
                this.activeFace = num
            },
            goback() {
                this.state = 0
                this.refreshTable()
            },
      handleInspection(row){
        this.state = 1;
                this.orderId = row.id
src/components/view/b1-inspection-order.vue
@@ -157,7 +157,7 @@
                        <el-col class="search_thing" :span="22">
                            <div class="search_label"><span class="required-span" v-show="distributeData.type==2">* </span>指派人员:</div>
                            <div class="search_input">
                                <el-select v-model="distributeData.userId" placeholder="请选择" size="small" style="width: 100%;">
                                <el-select v-model="distributeData.userId" placeholder="请选择" size="small" style="width: 100%;" clearable>
                                    <el-option v-for="item in personList" :key="item.value" :label="item.label" :value="item.value">
                                    </el-option>
                                </el-select>