| | |
| | | <template> |
| | | <div> |
| | | <div class="bg-1"> |
| | | <div style="margin: 5px 15px"> |
| | | <el-row class="title"> |
| | | <el-col :span="12" style="text-align: left">检验下单</el-col> |
| | |
| | | <el-button size="medium" type="primary" @click="print" |
| | | >标签打印</el-button |
| | | > |
| | | <el-button size="medium" type="primary" @click="playOrder(1)" |
| | | <el-button |
| | | size="medium" |
| | | type="primary" |
| | | @click="playOrder(1)" |
| | | v-hasPermi="['business:order:add']" |
| | | >下单</el-button |
| | | > |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | <basic-container> |
| | | <div class="search" :style="`height: ${more ? 130 : 80}px;`"> |
| | | <div class="search" :style="`height: ${more ? 100 : 50}px;`"> |
| | | <el-row :gutter="10" style="width: 100%"> |
| | | <el-col :span="20" style="display: flex; flex-wrap: wrap"> |
| | | <div class="search_thing" style="width: 20%"> |
| | |
| | | </div> |
| | | </basic-container> |
| | | <basic-container> |
| | | <div style="width: 100%; height: 100%" v-show="active == 0"> |
| | | <div v-show="active == 0"> |
| | | <div class="table"> |
| | | <ul class="tab"> |
| | | <li |
| | |
| | | </li> |
| | | </ul> |
| | | <lims-table |
| | | highlightCurrentRow |
| | | isSelection |
| | | :tableData="tableData" |
| | | :height="tableHeight + ''" |
| | | @pagination="pagination" |
| | | :handleSelectionChange="selectionChange" |
| | | :column="column" |
| | | :page="page" |
| | | :tableLoading="tableLoading" |
| | |
| | | width="100%" |
| | | fullscreen |
| | | > |
| | | <div style="height: 80vh; overflow-y: auto" v-if="dataDialogVisible"> |
| | | <ValueTable |
| | | ref="ValueTableDataLook" |
| | | :rowKey="'insProductId'" |
| | | :url="$api.insOrder.selectSampleAndProductByOrderId" |
| | | :componentData="componentDataDataLook" |
| | | /> |
| | | </div> |
| | | <lims-table |
| | | highlightCurrentRow |
| | | :heigt="'80vh'" |
| | | :tableData="dataLooktableData" |
| | | :column="dataLookcolumn" |
| | | :tableLoading="dataLookTableLoading" |
| | | ></lims-table> |
| | | </el-dialog> |
| | | <el-dialog |
| | | top="5vh" |
| | |
| | | ></el-table-column> |
| | | </el-table> |
| | | </el-dialog> |
| | | |
| | | <!-- 导出已检数据 --> |
| | | <el-dialog |
| | | title="选择日期" |
| | |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | <div style="width: 100%; height: 100%" v-if="active > 0"> |
| | | <!-- <div style="width: 100%; height: 100%" v-if="active > 0"> |
| | | <Add |
| | | :active="active" |
| | | :currentId="currentId" |
| | | v-if="active < 4" |
| | | :examine="examine" |
| | | /> |
| | | </div> |
| | | </div> --> |
| | | <el-dialog |
| | | title="标签打印" |
| | | :visible.sync="printDialogVisible" |
| | |
| | | <el-checkbox |
| | | :label="i" |
| | | :key="i" |
| | | style="position: relative; top: -20px; left: 5px" |
| | | style="position: relative; top: -10px; left: 5px" |
| | | ><br |
| | | /></el-checkbox> |
| | | <div> |
| | |
| | | import limsTable from "@/components/Table/lims-table.vue"; |
| | | import { |
| | | selectInsOrderParameter, |
| | | labelPrinting, |
| | | exportChecked, |
| | | selectSampleAndProductByOrderId, |
| | | hasSendUrgentOrder, |
| | | delCustomById, |
| | | upCustom, |
| | |
| | | import vueQr from "vue-qr"; |
| | | import getLodop from "@/utils/lodop"; |
| | | import Add from "./add.vue"; |
| | | import { mapGetters } from "vuex"; |
| | | import LimsTable from "@/components/Table/lims-table.vue"; |
| | | export default { |
| | | components: { |
| | | limsTable, |
| | | Add, |
| | | vueQr, |
| | | LimsTable, |
| | | }, |
| | | computed: { |
| | | ...mapGetters(["permissions"]), |
| | | }, |
| | | data() { |
| | | return { |
| | |
| | | prop: "sampleName", |
| | | minWidth: "160px", |
| | | width: "160px", |
| | | dataType: "link", |
| | | linkEvent: { |
| | | method: "showDetails", |
| | | vueComponent: this, |
| | | }, |
| | | }, |
| | | { |
| | | label: "样品编号", |
| | |
| | | name: "数据查看", |
| | | type: "text", |
| | | clickFun: (row) => {}, |
| | | disabled: (row) => { |
| | | return row.state != 1 && row.state != 4; |
| | | }, |
| | | clickFun: (row) => { |
| | | this.handleDataLook(row); |
| | | }, |
| | | }, |
| | | { |
| | | name: "报告下载", |
| | | type: "text", |
| | | clickFun: (row) => {}, |
| | | disabled: (row, index) => { |
| | | return row.state != 4 || row.isRatify != 1; |
| | | }, |
| | | }, |
| | | { |
| | | name: "审核", |
| | | type: "text", |
| | | clickFun: (row) => {}, |
| | | disabled: (row, index) => { |
| | | return row.state != 0; |
| | | }, |
| | | }, |
| | | { |
| | | name: "撤销", |
| | | type: "text", |
| | | clickFun: (row) => {}, |
| | | disabled: (row, index) => { |
| | | return row.state != 1 && row.state != 0; |
| | | }, |
| | | }, |
| | | { |
| | | name: "撤销审核", |
| | | type: "text", |
| | | clickFun: (row) => {}, |
| | | disabled: (row, index) => { |
| | | return ( |
| | | (row.state != 1 && row.state != 0) || |
| | | this.tabIndex != 1 || |
| | | row.isRevocation != 1 |
| | | ); |
| | | }, |
| | | }, |
| | | { |
| | | name: "分配", |
| | | type: "text", |
| | | clickFun: (row) => {}, |
| | | disabled: (row, index) => { |
| | | return ( |
| | | row.state != 1 || |
| | | (row.entrustCode != null && |
| | | Number(row.assign) > 0 && |
| | | row.inspectId != null) |
| | | ); |
| | | }, |
| | | }, |
| | | ], |
| | | }, |
| | | ], |
| | | dataLookTableLoading: false, |
| | | dataLookcolumn: [ |
| | | { |
| | | label: "委托编号", |
| | | prop: "entrustCode", |
| | | minWidth: "160px", |
| | | width: "160px", |
| | | }, |
| | | { |
| | | label: "样品编号", |
| | | prop: "sampleCode", |
| | | minWidth: "160px", |
| | | width: "160px", |
| | | }, |
| | | { |
| | | label: "管套色标", |
| | | prop: "bushColor", |
| | | minWidth: "160px", |
| | | width: "160px", |
| | | }, |
| | | { |
| | | label: "光纤带编号", |
| | | prop: "code", |
| | | minWidth: "160px", |
| | | width: "160px", |
| | | }, |
| | | { |
| | | label: "光纤色标", |
| | | prop: "color", |
| | | minWidth: "160px", |
| | | width: "160px", |
| | | }, |
| | | { |
| | | label: "检验项", |
| | | prop: "inspectionItem", |
| | | minWidth: "120px", |
| | | width: "120px", |
| | | }, |
| | | { |
| | | label: "检验子项", |
| | | prop: "inspectionItemSubclass", |
| | | minWidth: "120px", |
| | | width: "120px", |
| | | }, |
| | | { |
| | | label: "检验结果", |
| | | prop: "lastValue", |
| | | minWidth: "120px", |
| | | width: "120px", |
| | | }, |
| | | { |
| | | label: "结果判定", |
| | | prop: "insResult", |
| | | minWidth: "100px", |
| | | width: "100px", |
| | | dataType: "tag", |
| | | formatData: (params) => { |
| | | let index = this.urgencyDictList.findIndex( |
| | | (item) => item.dictValue == params |
| | | ); |
| | | if (index > -1) { |
| | | return this.urgencyDictList[index].dictLabel; |
| | | } else { |
| | | return null; |
| | | } |
| | | }, |
| | | formatType: (params) => { |
| | | let index = this.urgencyDictList.findIndex( |
| | | (item) => item.dictValue == params |
| | | ); |
| | | if (index > -1) { |
| | | return this.urgencyDictList[index].listClass; |
| | | } else { |
| | | return null; |
| | | } |
| | | }, |
| | | }, |
| | | { |
| | | label: "单位", |
| | | prop: "unit", |
| | | minWidth: "120px", |
| | | width: "120px", |
| | | }, |
| | | { |
| | | label: "试验要求", |
| | | prop: "tell", |
| | | minWidth: "120px", |
| | | width: "120px", |
| | | }, |
| | | { |
| | | label: "检验人", |
| | | prop: "checkName", |
| | | minWidth: "120px", |
| | | width: "120px", |
| | | }, |
| | | { |
| | | label: "检验日期", |
| | | prop: "checkTime", |
| | | minWidth: "120px", |
| | | width: "120px", |
| | | }, |
| | | { |
| | | label: "样品名称", |
| | | prop: "sample", |
| | | minWidth: "160px", |
| | | width: "160px", |
| | | }, |
| | | { |
| | | label: "样品型号", |
| | | prop: "model", |
| | | minWidth: "160px", |
| | | width: "160px", |
| | | }, |
| | | { |
| | | label: "试验室", |
| | | prop: "sonLaboratory", |
| | | minWidth: "120px", |
| | | width: "120px", |
| | | }, |
| | | { |
| | | dataType: "action", |
| | | fixed: "right", |
| | | label: "操作", |
| | | operation: [ |
| | | { |
| | | name: "查看", |
| | | type: "text", |
| | | clickFun: (row) => {}, |
| | | showHide: (row) => { |
| | | console.log(row); |
| | | console.log(row.inspectionItem); |
| | | return ( |
| | | row.inspectionItem == "单根垂直燃烧" || |
| | | row.inspectionItem.includes("松套管") || |
| | | row.inspectionItemSubclass.includes("松套管") || |
| | | (row.inspectionItem == "抗拉强度" && |
| | | (row.inspectionItemSubclass == "热老化处理前" || |
| | | row.inspectionItemSubclass == "热老化处理后")) || |
| | | (row.inspectionItem == "断裂伸长率" && |
| | | (row.inspectionItemSubclass == "热老化处理前" || |
| | | row.inspectionItemSubclass == "热老化处理后")) |
| | | ); |
| | | }, |
| | | }, |
| | | ], |
| | | }, |
| | | ], |
| | | dataLooktableData: [], |
| | | |
| | | //old |
| | | tableHeader: [], |
| | | type: "", |
| | |
| | | // 人员列表 |
| | | personList: [], |
| | | currentTableData: [], |
| | | componentData: { |
| | | entity: { |
| | | entrustCode: null, |
| | | sample: null, |
| | | sampleName: null, |
| | | sampleModel: null, |
| | | sampleCode: null, |
| | | outEntrustCode: null, |
| | | state: 0, |
| | | name: null, |
| | | engineering: null, |
| | | production: null, |
| | | startAndEndTime: [], |
| | | // orderBy: { |
| | | // field: '', |
| | | // order: '' |
| | | // } |
| | | }, |
| | | isIndex: true, |
| | | showSelect: true, |
| | | select: true, |
| | | selectMethod: "selectMethod", |
| | | do: [ |
| | | { |
| | | id: "dataLook", |
| | | font: "数据查看", |
| | | type: "text", |
| | | method: "handleDataLook", |
| | | disabFun: (row, index) => { |
| | | return row.state != 1 && row.state != 4; |
| | | }, |
| | | }, |
| | | { |
| | | id: "download", |
| | | font: "报告下载", |
| | | type: "text", |
| | | method: "download", |
| | | disabFun: (row, index) => { |
| | | return row.state != 4 || row.isRatify != 1; |
| | | }, |
| | | }, |
| | | { |
| | | id: "verify", |
| | | font: "审核", |
| | | type: "text", |
| | | method: "handleVerify", |
| | | disabFun: (row, index) => { |
| | | return row.state != 0; |
| | | }, |
| | | }, |
| | | { |
| | | id: "quash", |
| | | font: "撤销", |
| | | type: "text", |
| | | method: "handlEquash", |
| | | disabFun: (row, index) => { |
| | | return row.state != 1 && row.state != 0; |
| | | }, |
| | | }, |
| | | { |
| | | id: "quashCheck", |
| | | font: "撤销审核", |
| | | type: "text", |
| | | method: "handlEquashCheck", |
| | | disabFun: (row, index) => { |
| | | return ( |
| | | (row.state != 1 && row.state != 0) || |
| | | this.tabIndex != 1 || |
| | | row.isRevocation != 1 |
| | | ); |
| | | }, |
| | | }, |
| | | { |
| | | font: "分配", |
| | | type: "text", |
| | | method: "handleIssued", |
| | | disabFun: (row, index) => { |
| | | return ( |
| | | row.state != 1 || |
| | | (row.entrustCode != null && |
| | | Number(row.assign) > 0 && |
| | | row.inspectId != null) |
| | | ); |
| | | }, |
| | | }, |
| | | ], |
| | | linkEvent: { |
| | | sampleName: { |
| | | method: "selectAllByOne", |
| | | }, |
| | | }, |
| | | tagField: { |
| | | type: { |
| | | select: [], |
| | | }, |
| | | createUser: { |
| | | select: [], |
| | | }, |
| | | orderType: { |
| | | select: [], |
| | | }, |
| | | processing: { |
| | | select: [ |
| | | { |
| | | value: 1, |
| | | label: "实验室处理", |
| | | }, |
| | | { |
| | | value: 0, |
| | | label: "委托单位取回", |
| | | }, |
| | | ], |
| | | }, |
| | | isLeave: { |
| | | select: [ |
| | | { |
| | | value: 1, |
| | | label: "留样", |
| | | }, |
| | | { |
| | | value: 0, |
| | | label: "不留样", |
| | | }, |
| | | ], |
| | | }, |
| | | send: { |
| | | select: [ |
| | | { |
| | | value: 1, |
| | | label: "自取", |
| | | }, |
| | | { |
| | | value: 0, |
| | | label: "其他", |
| | | }, |
| | | ], |
| | | }, |
| | | }, |
| | | selectField: {}, |
| | | requiredAdd: [], |
| | | requiredUp: [], |
| | | needSort: ["createTime", "sendTime", "type", "appointed"], |
| | | }, |
| | | // componentData: { |
| | | // entity: { |
| | | // entrustCode: null, |
| | | // sample: null, |
| | | // sampleName: null, |
| | | // sampleModel: null, |
| | | // sampleCode: null, |
| | | // outEntrustCode: null, |
| | | // state: 0, |
| | | // name: null, |
| | | // engineering: null, |
| | | // production: null, |
| | | // startAndEndTime: [], |
| | | // // orderBy: { |
| | | // // field: '', |
| | | // // order: '' |
| | | // // } |
| | | // }, |
| | | // isIndex: true, |
| | | // showSelect: true, |
| | | // select: true, |
| | | // selectMethod: "selectMethod", |
| | | // do: [ |
| | | // { |
| | | // id: "dataLook", |
| | | // font: "数据查看", |
| | | // type: "text", |
| | | // method: "handleDataLook", |
| | | // disabFun: (row, index) => { |
| | | // return row.state != 1 && row.state != 4; |
| | | // }, |
| | | // }, |
| | | // { |
| | | // id: "download", |
| | | // font: "报告下载", |
| | | // type: "text", |
| | | // method: "download", |
| | | // disabFun: (row, index) => { |
| | | // return row.state != 4 || row.isRatify != 1; |
| | | // }, |
| | | // }, |
| | | // { |
| | | // id: "verify", |
| | | // font: "审核", |
| | | // type: "text", |
| | | // method: "handleVerify", |
| | | // disabFun: (row, index) => { |
| | | // return row.state != 0; |
| | | // }, |
| | | // }, |
| | | // { |
| | | // id: "quash", |
| | | // font: "撤销", |
| | | // type: "text", |
| | | // method: "handlEquash", |
| | | // disabFun: (row, index) => { |
| | | // return row.state != 1 && row.state != 0; |
| | | // }, |
| | | // }, |
| | | // { |
| | | // id: "quashCheck", |
| | | // font: "撤销审核", |
| | | // type: "text", |
| | | // method: "handlEquashCheck", |
| | | // disabFun: (row, index) => { |
| | | // return ( |
| | | // (row.state != 1 && row.state != 0) || |
| | | // this.tabIndex != 1 || |
| | | // row.isRevocation != 1 |
| | | // ); |
| | | // }, |
| | | // }, |
| | | // { |
| | | // font: "分配", |
| | | // type: "text", |
| | | // method: "handleIssued", |
| | | // disabFun: (row, index) => { |
| | | // return ( |
| | | // row.state != 1 || |
| | | // (row.entrustCode != null && |
| | | // Number(row.assign) > 0 && |
| | | // row.inspectId != null) |
| | | // ); |
| | | // }, |
| | | // }, |
| | | // ], |
| | | // linkEvent: { |
| | | // sampleName: { |
| | | // method: "selectAllByOne", |
| | | // }, |
| | | // }, |
| | | // tagField: { |
| | | // type: { |
| | | // select: [], |
| | | // }, |
| | | // createUser: { |
| | | // select: [], |
| | | // }, |
| | | // orderType: { |
| | | // select: [], |
| | | // }, |
| | | // processing: { |
| | | // select: [ |
| | | // { |
| | | // value: 1, |
| | | // label: "实验室处理", |
| | | // }, |
| | | // { |
| | | // value: 0, |
| | | // label: "委托单位取回", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | // isLeave: { |
| | | // select: [ |
| | | // { |
| | | // value: 1, |
| | | // label: "留样", |
| | | // }, |
| | | // { |
| | | // value: 0, |
| | | // label: "不留样", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | // send: { |
| | | // select: [ |
| | | // { |
| | | // value: 1, |
| | | // label: "自取", |
| | | // }, |
| | | // { |
| | | // value: 0, |
| | | // label: "其他", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | // }, |
| | | // selectField: {}, |
| | | // requiredAdd: [], |
| | | // requiredUp: [], |
| | | // needSort: ["createTime", "sendTime", "type", "appointed"], |
| | | // }, |
| | | orderId: "", |
| | | revocationInsProductIds: "", |
| | | componentDataDataLook: { |
| | | isPage: false, |
| | | entity: { |
| | | id: 0, |
| | | orderBy: { |
| | | field: "sampleCode", |
| | | order: "asc", |
| | | }, |
| | | }, |
| | | isIndex: false, |
| | | showSelect: false, |
| | | select: false, |
| | | do: [ |
| | | { |
| | | id: "", |
| | | font: "查看", |
| | | type: "text", |
| | | method: "viewDetails", |
| | | showFun: (row, index) => { |
| | | return ( |
| | | row.inspectionItem == "单根垂直燃烧" || |
| | | row.inspectionItem.includes("松套管") || |
| | | row.inspectionItemSubclass.includes("松套管") || |
| | | (row.inspectionItem == "抗拉强度" && |
| | | (row.inspectionItemSubclass == "热老化处理前" || |
| | | row.inspectionItemSubclass == "热老化处理后")) || |
| | | (row.inspectionItem == "断裂伸长率" && |
| | | (row.inspectionItemSubclass == "热老化处理前" || |
| | | row.inspectionItemSubclass == "热老化处理后")) |
| | | ); |
| | | }, |
| | | }, |
| | | ], |
| | | tagField: { |
| | | insState: { |
| | | select: [], |
| | | }, |
| | | insResult: { |
| | | select: [ |
| | | { |
| | | value: 1, |
| | | label: "合格", |
| | | type: "success", |
| | | }, |
| | | { |
| | | value: 0, |
| | | label: "不合格", |
| | | type: "danger", |
| | | }, |
| | | { |
| | | value: 3, |
| | | label: "不判定", |
| | | type: "", |
| | | }, |
| | | ], |
| | | }, |
| | | }, |
| | | selectField: {}, |
| | | spanConfig: { |
| | | rows: [ |
| | | // { |
| | | // name: "entrustCode", |
| | | // index: 0, |
| | | // }, |
| | | // { |
| | | // name: "sampleCode", |
| | | // index: 1, |
| | | // }, |
| | | ], |
| | | }, |
| | | requiredAdd: [], |
| | | requiredUp: [], |
| | | }, |
| | | componentDataDelete: { |
| | | entity: { |
| | | // orderId: '', |
| | | // orderBy: { |
| | | // field: 'sampleCode', |
| | | // order: 'asc' |
| | | // } |
| | | }, |
| | | isPage: false, |
| | | isIndex: false, |
| | | showSelect: true, |
| | | select: true, |
| | | selectMethod: "selectDelete", |
| | | do: [], |
| | | tagField: { |
| | | insState: { |
| | | select: [], |
| | | }, |
| | | insResult: { |
| | | select: [ |
| | | { |
| | | value: 1, |
| | | label: "合格", |
| | | type: "success", |
| | | }, |
| | | { |
| | | value: 0, |
| | | label: "不合格", |
| | | type: "danger", |
| | | }, |
| | | ], |
| | | }, |
| | | }, |
| | | selectField: {}, |
| | | spanConfig: {}, |
| | | requiredAdd: [], |
| | | requiredUp: [], |
| | | }, |
| | | // componentDataDataLook: { |
| | | // isPage: false, |
| | | // entity: { |
| | | // id: 0, |
| | | // orderBy: { |
| | | // field: "sampleCode", |
| | | // order: "asc", |
| | | // }, |
| | | // }, |
| | | // isIndex: false, |
| | | // showSelect: false, |
| | | // select: false, |
| | | // do: [ |
| | | // { |
| | | // id: "", |
| | | // font: "查看", |
| | | // type: "text", |
| | | // method: "viewDetails", |
| | | // showFun: (row, index) => { |
| | | // return ( |
| | | // row.inspectionItem == "单根垂直燃烧" || |
| | | // row.inspectionItem.includes("松套管") || |
| | | // row.inspectionItemSubclass.includes("松套管") || |
| | | // (row.inspectionItem == "抗拉强度" && |
| | | // (row.inspectionItemSubclass == "热老化处理前" || |
| | | // row.inspectionItemSubclass == "热老化处理后")) || |
| | | // (row.inspectionItem == "断裂伸长率" && |
| | | // (row.inspectionItemSubclass == "热老化处理前" || |
| | | // row.inspectionItemSubclass == "热老化处理后")) |
| | | // ); |
| | | // }, |
| | | // }, |
| | | // ], |
| | | // tagField: { |
| | | // insState: { |
| | | // select: [], |
| | | // }, |
| | | // insResult: { |
| | | // select: [ |
| | | // { |
| | | // value: 1, |
| | | // label: "合格", |
| | | // type: "success", |
| | | // }, |
| | | // { |
| | | // value: 0, |
| | | // label: "不合格", |
| | | // type: "danger", |
| | | // }, |
| | | // { |
| | | // value: 3, |
| | | // label: "不判定", |
| | | // type: "", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | // }, |
| | | // selectField: {}, |
| | | // spanConfig: { |
| | | // rows: [ |
| | | // // { |
| | | // // name: "entrustCode", |
| | | // // index: 0, |
| | | // // }, |
| | | // // { |
| | | // // name: "sampleCode", |
| | | // // index: 1, |
| | | // // }, |
| | | // ], |
| | | // }, |
| | | // requiredAdd: [], |
| | | // requiredUp: [], |
| | | // }, |
| | | // componentDataDelete: { |
| | | // entity: { |
| | | // // orderId: '', |
| | | // // orderBy: { |
| | | // // field: 'sampleCode', |
| | | // // order: 'asc' |
| | | // // } |
| | | // }, |
| | | // isPage: false, |
| | | // isIndex: false, |
| | | // showSelect: true, |
| | | // select: true, |
| | | // selectMethod: "selectDelete", |
| | | // do: [], |
| | | // tagField: { |
| | | // insState: { |
| | | // select: [], |
| | | // }, |
| | | // insResult: { |
| | | // select: [ |
| | | // { |
| | | // value: 1, |
| | | // label: "合格", |
| | | // type: "success", |
| | | // }, |
| | | // { |
| | | // value: 0, |
| | | // label: "不合格", |
| | | // type: "danger", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | // }, |
| | | // selectField: {}, |
| | | // spanConfig: {}, |
| | | // requiredAdd: [], |
| | | // requiredUp: [], |
| | | // }, |
| | | deleteDialogVisible: false, |
| | | entityCopy: {}, |
| | | upIndex: 0, |
| | |
| | | beforeDestroy() { |
| | | window.removeEventListener("resize", this.getTableHeight); |
| | | }, |
| | | watch: { |
| | | more() { |
| | | this.getTableHeight(); |
| | | }, |
| | | printDialogVisible(newVal) { |
| | | if (!newVal) { |
| | | this.checkIndexList = []; |
| | | } |
| | | }, |
| | | }, |
| | | methods: { |
| | | selectionChange(val) { |
| | | console.log(val); |
| | | this.multipleSelection = val; |
| | | }, |
| | | //获取表格高度 |
| | | getTableHeight() { |
| | | const otherHeight = 400; // 其余高度 |
| | | const tableH = 50; // 距离页面下方的高度 |
| | | const tableHeightDetil = window.innerHeight - tableH; |
| | | const otherHeight = this.more ? 430 : 380; // 其余高度 |
| | | const tableBottom = 50; // 距离页面下方的高度 |
| | | const tableHeightDetil = window.innerHeight - tableBottom; |
| | | if (tableHeightDetil <= 300) { |
| | | this.tableHeight = 200; |
| | | } else { |
| | | this.tableHeight = window.innerHeight - tableH - otherHeight; |
| | | this.tableHeight = window.innerHeight - tableBottom - otherHeight; |
| | | } |
| | | }, |
| | | getDictList() { |
| | |
| | | startTime: this.exportCheckedDate[0], |
| | | endTime: this.exportCheckedDate[1], |
| | | }; |
| | | console.log("data", data); |
| | | this.exportCheckedLoading = true; |
| | | this.dialogVisible1 = false; |
| | | this.$axios |
| | | .post(this.$api.insOrder.exportChecked, data, { |
| | | headers: { |
| | | "Content-Type": "application/json", |
| | | }, |
| | | responseType: "blob", |
| | | }) |
| | | exportChecked(data) |
| | | .then((res) => { |
| | | this.$message.success("导出成功"); |
| | | this.exportCheckedDate = []; |
| | |
| | | link.download = "检验结果.xlsx"; |
| | | document.body.appendChild(link); |
| | | link.click(); |
| | | }) |
| | | .catch((error) => { |
| | | console.error(error); |
| | | }); |
| | | }, |
| | | // 查看详情 |
| | |
| | | } |
| | | }); |
| | | }, |
| | | selectMethod(val) { |
| | | this.multipleSelection = val; |
| | | }, |
| | | getLabelPrinting(selection) { |
| | | this.loadPint = true; |
| | | this.$axios |
| | | .post(this.$api.insOrder.labelPrinting, { |
| | | ids: selection.map((m) => m.id).join(","), |
| | | }) |
| | | labelPrinting({ |
| | | ids: selection.map((m) => m.id).join(","), |
| | | }) |
| | | .then((res) => { |
| | | let arr = res.data; |
| | | arr.forEach((a) => { |
| | | this.loadPint = false; |
| | | let arr1 = []; |
| | | a.insProduct.forEach((b) => { |
| | | arr1.push(b.inspectionItem); |
| | | if (res.code === 200) { |
| | | let arr = res.data; |
| | | arr.forEach((a) => { |
| | | this.loadPint = false; |
| | | let arr1 = []; |
| | | a.insProduct.forEach((b) => { |
| | | arr1.push(b.inspectionItem); |
| | | }); |
| | | a.item = [...new Set(arr1)].join(","); |
| | | }); |
| | | a.item = [...new Set(arr1)].join(","); |
| | | }); |
| | | this.qrData = arr; |
| | | this.qrData = arr; |
| | | } |
| | | }) |
| | | .catch((error) => { |
| | | console.error(error); |
| | | }); |
| | | }, |
| | | //开始标签打印 |
| | |
| | | this.beginPrint(this.qrData); |
| | | }); |
| | | this.printDialogVisible = false; |
| | | |
| | | // PrintJS({ |
| | | // printable: "printMOrder", //页面 |
| | | // type: "html", //文档类型 |
| | | // maxWidth: 360, |
| | | // style: `@page { |
| | | // margin:0; |
| | | // size: 400px 75px collapse; |
| | | // margin-top:3px; |
| | | // &:first-of-type{ |
| | | // margin-top:0 !important; |
| | | // } |
| | | // } |
| | | // html{ |
| | | // zoom:100%; |
| | | // } |
| | | // @media print{ |
| | | // width: 400px; |
| | | // height: 75px; |
| | | // margin:0; |
| | | // }`, |
| | | // onPrintDialogClose: (this.erexcel = false), |
| | | // targetStyles: ["*"], // 使用dom的所有样式,很重要 |
| | | // font_size: "0.15cm", |
| | | // }); |
| | | }, |
| | | print() { |
| | | if (this.multipleSelection.length == 0) { |
| | |
| | | this.personList = res.data; |
| | | }); |
| | | }, |
| | | refreshTable(e) { |
| | | this.$refs["ValueTable"].selectList(e); |
| | | this.queryCount = 0; |
| | | refreshTable() { |
| | | this.getList(); |
| | | }, |
| | | getTableData(newData) { |
| | | if (newData && newData.length == 1) { |
| | |
| | | } |
| | | }, |
| | | refresh() { |
| | | this.componentData.entity = this.HaveJson(this.entityCopy); |
| | | this.upIndex++; |
| | | this.queryParams = { |
| | | entrustCode: "", |
| | | outEntrustCode: "", |
| | | sampleName: "", |
| | | sampleModel: "", |
| | | sampleCode: "", |
| | | startAndEndTime: [], |
| | | name: "", |
| | | engineering: "", |
| | | production: "", |
| | | }; |
| | | this.refreshTable(); |
| | | }, |
| | | // 权限分配 |
| | | getPower(radio) { |
| | | let power = JSON.parse(sessionStorage.getItem("power")); |
| | | let up = false; |
| | | let del = false; |
| | | let revoke = false; |
| | | let check = false; |
| | | let checkUpdate = false; |
| | | for (var i = 0; i < power.length; i++) { |
| | | if (power[i].menuMethod == "upInsOrder") { |
| | | up = true; |
| | | } |
| | | if (power[i].menuMethod == "updateStatus") { |
| | | revoke = true; |
| | | } |
| | | if (power[i].menuMethod == "upInsOrderOfState") { |
| | | check = true; |
| | | } |
| | | if (power[i].menuMethod == "checkUpdate") { |
| | | checkUpdate = true; |
| | | } |
| | | } |
| | | if (!up) { |
| | | this.componentData.do.splice(5, 1); |
| | | } |
| | | if (!checkUpdate) { |
| | | this.componentData.do.splice(4, 1); |
| | | } |
| | | if (!revoke) { |
| | | this.componentData.do.splice(3, 1); |
| | | } |
| | | if (!check) { |
| | | this.componentData.do.splice(2, 1); |
| | | } |
| | | }, |
| | | handleClose() { |
| | | this.verifyDialogVisible = false; |
| | |
| | | this.exportCheckedDate = []; |
| | | this.dialogVisible1 = false; |
| | | }, |
| | | // 详情 |
| | | selectAllByOne(row) { |
| | | this.active = 2; |
| | | // console.log(row); |
| | | // //打开弹框 |
| | | // this.dialogVisible = true; |
| | | // //row = 点击对应行值 |
| | | // //复制给formData |
| | | // this.formData = this.HaveJson(row); |
| | | this.currentId = row.id; |
| | | this.examine = 1; |
| | | // 查看详情 |
| | | showDetails(row) { |
| | | this.$router.push({ |
| | | name: "showDetails", |
| | | query: { |
| | | active: 2, |
| | | currentId: row.id, |
| | | examine: 1, |
| | | isReview: true, |
| | | }, |
| | | }); |
| | | }, |
| | | // 数据查看 |
| | | handleDataLook(row) { |
| | | this.componentDataDataLook.entity.id = row.id; |
| | | selectSampleAndProductByOrderId({ id: row.id }) |
| | | .then((res) => { |
| | | if (res.code === 200) { |
| | | this.dataLooktableData = res.data; |
| | | } |
| | | }) |
| | | .catch((error) => { |
| | | console.error(error); |
| | | }); |
| | | this.dataDialogVisible = true; |
| | | }, |
| | | // 下载报告 |
| | |
| | | this.deleteDialogVisible = false; |
| | | this.printLoading = false; |
| | | this.revokeData = []; |
| | | this.refreshTable("page"); |
| | | this.refreshTable(); |
| | | this.$message.success("撤销成功"); |
| | | } |
| | | }); |
| | |
| | | if (res.code === 200) { |
| | | this.printLoading = false; |
| | | this.deleteDialogVisible = false; |
| | | this.refreshTable("page"); |
| | | this.refreshTable(); |
| | | this.$message.success("更新成功"); |
| | | } |
| | | }); |
| | |
| | | if (res.code === 200) { |
| | | this.printLoading = false; |
| | | this.deleteDialogVisible = false; |
| | | this.refreshTable("page"); |
| | | this.refreshTable(); |
| | | this.$message.success("更新成功"); |
| | | } |
| | | }); |
| | |
| | | this.$message.success("修改成功"); |
| | | this.upLoad = false; |
| | | this.issuedDialogVisible = false; |
| | | this.refreshTable("page"); |
| | | this.refreshTable(); |
| | | }) |
| | | .catch((e) => { |
| | | this.$message.error("修改失败"); |
| | |
| | | if (res.code === 200) { |
| | | this.upLoad = false; |
| | | this.quashDialogVisible = false; |
| | | this.refreshTable("page"); |
| | | this.refreshTable(); |
| | | this.$message.success("更新成功"); |
| | | } |
| | | }); |
| | |
| | | if (res.code === 200) { |
| | | this.upLoad = false; |
| | | this.quashDialogVisible = false; |
| | | this.refreshTable("page"); |
| | | this.refreshTable(); |
| | | this.$message.success("更新成功"); |
| | | } |
| | | }); |
| | |
| | | }, |
| | | // 下单 |
| | | playOrder(num) { |
| | | this.active = num; |
| | | this.examine = 0; |
| | | this.refreshTable("page"); |
| | | // this.active = num; |
| | | // this.examine = 0; |
| | | this.$router.push({ |
| | | name: "addOrder", |
| | | query: { |
| | | active: num, |
| | | examine: 0, |
| | | }, |
| | | }); |
| | | }, |
| | | handleTab(m, i) { |
| | | this.tabIndex = i; |
| | |
| | | this.componentData.tagField.orderType.select = res.data; |
| | | }); |
| | | }, |
| | | getStyle() { |
| | | return "height: calc(100% - " + (this.more ? "94" : "44") + "px)"; |
| | | }, |
| | | changeUser() { |
| | | if (this.sonLaboratoryList.length > 0) { |
| | | this.distributeData.sonLaboratory = this.sonLaboratoryList[0].value; |
| | |
| | | |
| | | .search { |
| | | background-color: #fff; |
| | | height: 80px; |
| | | height: 50px; |
| | | display: flex; |
| | | align-items: center; |
| | | overflow: hidden; |
| | |
| | | .tab { |
| | | list-style-type: none; |
| | | display: flex; |
| | | margin-bottom: 12px; |
| | | /* margin-bottom: 12px; */ |
| | | padding-inline-start: 0px; |
| | | } |
| | | |
| | |
| | | .el-form-item { |
| | | margin-bottom: 16px; |
| | | } |
| | | |
| | | .box-card >>> .el-radio__inner { |
| | | border-radius: 2px !important; |
| | | } |
| | | |
| | | .box-card >>> .el-radio__input.is-checked .el-radio__inner::after { |
| | | content: ""; |
| | | width: 8px; |
| | |
| | | border-radius: 0px; |
| | | background: none; |
| | | } |
| | | |
| | | >>> .el-radio__label { |
| | | color: #000 !important; |
| | | } |
| | | |
| | | .el-dialog__body >>> .el-radio__label { |
| | | font-size: 8px; |
| | | } |
| | | |
| | | .el-dialog__body >>> .el-radio__input.is-checked .el-radio__inner::after { |
| | | content: ""; |
| | | width: 4px; |
| | |
| | | border-radius: 0px; |
| | | background: none; |
| | | } |
| | | |
| | | >>> .el-radio__input.is-disabled.is-checked .el-radio__inner { |
| | | background: #3a7bfa; |
| | | } |
| | | |
| | | .el-dialog__body >>> .el-radio__input.is-disabled.is-checked .el-radio__inner { |
| | | background: transparent; |
| | | } |
| | | |
| | | .el-dialog__body >>> .el-radio__inner { |
| | | width: 8px !important; |
| | | height: 8px !important; |
| | | } |
| | | |
| | | .el-dialog__body >>> .el-radio__label { |
| | | padding-left: 2px !important; |
| | | } |
| | | |
| | | .el-dialog__body >>> .el-card__body { |
| | | padding: 0 !important; |
| | | } |
| | | |
| | | .el-dialog__body >>> .el-card { |
| | | border: none; |
| | | } |
| | | |
| | | .el-dialog__body >>> .el-radio__input.is-disabled .el-radio__inner { |
| | | border-color: #000 !important; |
| | | } |
| | | |
| | | .el-dialog__body >>> .el-radio__input.is-disabled.is-checked .el-radio__inner { |
| | | border: none !important; |
| | | } |
| | | |
| | | .scor { |
| | | width: 0.01cm; |
| | | height: 0.01cm; |
| | |
| | | border: 1px solid #000; |
| | | display: inline-block; |
| | | } |
| | | |
| | | .ellipsis-multiline { |
| | | display: -webkit-box; |
| | | -webkit-line-clamp: 2; |
| | |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |
| | | word-wrap: break-word; |
| | | max-height: 3em; /* 高度为字体大小的两倍 */ |
| | | line-height: 1.5em; /* 行高 */ |
| | | height: 3em; /* 高度为行高的两倍 */ |
| | | max-height: 3em; |
| | | /* 高度为字体大小的两倍 */ |
| | | line-height: 1.5em; |
| | | /* 行高 */ |
| | | height: 3em; |
| | | /* 高度为行高的两倍 */ |
| | | } |
| | | |
| | | .table-container { |
| | | height: 70vh; |
| | | overflow-y: auto; |
| | | } |
| | | |
| | | .table-container.el-table { |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |