From 6c39483f61a39553ad5993147d58e2d17e3b6f89 Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期一, 06 十一月 2023 17:27:33 +0800 Subject: [PATCH] Merge branch 'master' of http://114.132.189.42:9002/r/mes-ocea-before --- src/api/quality/processInspect.js | 18 src/views/equipment/equipment/index.vue | 12 src/views/equipment/metering/metering-form.vue | 201 ++++++++ src/views/quality/processconfiguration/index.vue | 17 package.json | 3 src/api/quality/rawMaterial.js | 2 src/views/equipment/metering/index.vue | 268 +++++++++++ src/views/quality/finishedProductInspection/finishedProduct-form.vue | 42 + src/views/quality/processInspect/index.vue | 12 src/api/equipment/metering.js | 53 ++ src/views/common/ztt-table.vue | 2 src/views/quality/processInspect/processInspect-form.vue | 768 ++++++++++++++++--------------- 12 files changed, 1,001 insertions(+), 397 deletions(-) diff --git a/package.json b/package.json index 6fea7ba..fd460e9 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,8 @@ "vue-quill-editor": "3.0.6", "vue-router": "^3.0.2", "vuedraggable": "^2.24.3", - "vuex": "^3.0.1" + "vuex": "^3.0.1", + "xlsx-style": "^0.8.13" }, "devDependencies": { "@vue/cli-plugin-babel": "~3.8.0", diff --git a/src/api/equipment/metering.js b/src/api/equipment/metering.js new file mode 100644 index 0000000..24d7552 --- /dev/null +++ b/src/api/equipment/metering.js @@ -0,0 +1,53 @@ +import request from '@/router/axios' + +export function fetchList(query) { + return request({ + url: '/mes/equipmentDevice/page', + method: 'get', + params: query + }) +} + +export function pullEquip() { + return request({ + url: '/mes/equipmentDevice/updateDevicd', + method: 'post', + }) +} + +export function addObj(obj) { + return request({ + url: '/mes/equipmentDevice/addDevicd', + method: 'post', + data: obj + }) +} + +export function getObj(id) { + return request({ + url: '/mes/equipmentDevice/' + id, + method: 'get' + }) +} + +export function delObj(id) { + return request({ + url: '/mes/equipmentDevice/' + id, + method: 'delete' + }) +} + +export function putObj(obj) { + return request({ + url: '/mes/equipmentDevice/updateDevicd', + method: 'post', + data: obj + }) +} + +export function getEquipmentPageByWorkstation(id) { + return request({ + url: '/mes/equipmentDevice/page/' + id, + method: 'get' + }) +} \ No newline at end of file diff --git a/src/api/quality/processInspect.js b/src/api/quality/processInspect.js index 8968102..acccc59 100644 --- a/src/api/quality/processInspect.js +++ b/src/api/quality/processInspect.js @@ -77,4 +77,20 @@ method: 'post', params: obj }) -} \ No newline at end of file +} + +export function selectDevice() { + return request({ + url: '/mes/qualityProcessInsProduct/selectDevice', + method: 'get', + }) +} + +export function exportProcessInsProduct(query) { + return request({ + url: '/mes/qualityProcessInspect/exportExcel', + method: 'get', + responseType : 'blob', + params: query + }) +} diff --git a/src/api/quality/rawMaterial.js b/src/api/quality/rawMaterial.js index 74c5001..f63dcd5 100644 --- a/src/api/quality/rawMaterial.js +++ b/src/api/quality/rawMaterial.js @@ -10,7 +10,7 @@ export function selectDevice() { return request({ - url: '/mes/rawInsProduct/selectDevice', + url: '/mes/qualityFinishedInsProduct/scope', method: 'get', }) } diff --git a/src/views/common/ztt-table.vue b/src/views/common/ztt-table.vue index 6367bee..8f65553 100644 --- a/src/views/common/ztt-table.vue +++ b/src/views/common/ztt-table.vue @@ -937,7 +937,7 @@ } }, getDataList(selectedId) { - this.dataListLoading = true + // this.dataListLoading = true var criteria = {} criteria.dateTimeFilters = this.dateTimeFilters criteria.multiSearchFilter = this.multiSearchFilter diff --git a/src/views/equipment/equipment/index.vue b/src/views/equipment/equipment/index.vue index 59fead3..f65ac9d 100644 --- a/src/views/equipment/equipment/index.vue +++ b/src/views/equipment/equipment/index.vue @@ -198,12 +198,12 @@ type: 'primary', fun: this.addOrUpdateHandle }, - { - text: '鍚屾', - type: 'primary', - loading: false, - fun: this.pullEquipFun - } + // { + // text: '鍚屾', + // type: 'primary', + // loading: false, + // fun: this.pullEquipFun + // } ], operator: [ { diff --git a/src/views/equipment/metering/index.vue b/src/views/equipment/metering/index.vue new file mode 100644 index 0000000..bbc96a2 --- /dev/null +++ b/src/views/equipment/metering/index.vue @@ -0,0 +1,268 @@ +<template> + <div class="mod-config"> + <basic-container> + <ttable + :table="table" + @handleSelectionChange="handleSelectionChange" + :uploadInfo="uploadInfo" + :prelang="prelang" + :options="options" + :ajaxFun="ajaxFun" + ref="equipmentTable" + > + <template #toolbar></template> + </ttable> + <!-- 寮圭獥, 鏂板 / 淇敼 --> + <table-form + v-if="addOrUpdateVisible" + ref="addOrUpdate" + @refreshDataList="getData" + ></table-form> + </basic-container> + </div> + </template> + + <script> + import { delObj, fetchList,pullEquip } from '@/api/equipment/metering' + import TableForm from './metering-form' + import ttable from '@/views/common/ztt-table.vue' + import { mapGetters } from 'vuex' + import * as fecha from 'element-ui/lib/utils/date' + import { remote } from '../../../api/admin/dict' + export default { + data() { + return { + ajaxFun: fetchList, + multipleSelection: [], + uploadInfo: { + // 鏄惁灞曠ず涓婁紶EXCEL浠ュ強瀵瑰簲鐨剈rl + isShow: true, + url: '/mes/equipment/upload' + }, + prelang: 'workstation', + options: { + height: 300, // 榛樿楂樺害-涓轰簡琛ㄥご鍥哄畾 + stripe: true, // 鏄惁涓烘枒椹汗 table + highlightCurrentRow: false, // 鏄惁瑕侀珮浜綋鍓嶈 + border: true, // 鏄惁鏈夌旱鍚戣竟妗� + lazy: false, // 鏄惁闇�瑕佹噿鍔犺浇 + fit: true, // 鍒楃殑瀹藉害鏄惁鑷拺寮� + multiSelect: true, // + seqNo: true, + isRefresh: true, // 鏄惁鏄剧ず鍒锋柊鎸夐挳 + isShowHide: true, // 鏄惁鏄剧ず鏄惧奖鎸夐挳 + isSearch: false, // 楂樼骇鏌ヨ鎸夐挳 + defaultOrderBy: { column: 'manufactureDate', direction: 'desc' } + }, + table: { + total: 0, + currentPage: 1, + pageSize: 20, + data: [], + // 鏍囬 + column: [ + // 璁惧缂栧彿 + { + minWidth: '30', + prop: 'code', + label: '璁惧缂栧彿', + sort: true, + isTrue: true, + formatter: (row, column, cellValue) => { + return cellValue + }, + isSearch: true, + searchInfoType: 'text' + }, + // 璁惧鍚嶇О + { + minWidth: '30', + prop: 'name', + label: '璁惧鍚嶇О', + sort: true, + isTrue: true, + isSearch: true, + searchInfoType: 'text' + }, + // 宸ュ巶 + // { + // minWidth: '30', + // prop: 'factoryName', + // label: '宸ュ巶', + // sort: true, + // isTrue: true, + // isSearch: true, + // searchInfoType: 'text' + // }, + { + minWidth: '30', + prop: 'type', + label: '璁惧绫诲瀷', + // sort: true, + isTrue: true, + isSearch: true, + // searchInfoType: 'select', + formatter: this.workShopFormatter, + // optList: () => { + // return this.workshopList + // } + }, + // 鍨嬪彿瑙勬牸 + { + minWidth: '30', + prop: 'supplier', + label: '鍘傚', + sort: true, + isTrue: true, + isSearch: false, + searchInfoType: 'text' + }, + // 鐘舵�� + { + minWidth: '30', + prop: 'status', + label: '鐘舵��', + sort: true, + isTrue: true, + isSearch: true, + searchInfoType: 'text' + }, + // 鍒堕�犳棩鏈� + { + minWidth: '150', + width: '250', + prop: 'createTime', + label: '鍒涘缓鏃堕棿', + sort: true, + isTrue: true, + formatter: this.formatReceiveTime, + isSearch: true, + searchInfoType: 'datetime' + }, + + { + minWidth: '150', + width: '250', + prop: 'updateTime', + label: '淇敼鏃堕棿', + sort: true, + isTrue: true, + formatter: this.formatReceiveTime, + isSearch: true, + searchInfoType: 'datetime' + }, + ], + toolbar: [ + { + text: '鏂板', + type: 'primary', + fun: this.addOrUpdateHandle + }, + // { + // text: '鍚屾', + // type: 'primary', + // loading: false, + // fun: this.pullEquipFun + // } + ], + operator: [ + { + text: '淇敼', + icon: 'el-icon-edit', + type: 'text', + size: 'small', + fun: this.addOrUpdateHandle + }, + { + text: '鍒犻櫎', + icon: 'el-icon-delete', + type: 'text', + size: 'small', + fun: this.deleteHandle + } + ], + operatorConfig: { + fixed: 'right', + label: '鎿嶄綔', + width: 130, + minWidth: 130 + } + }, + addOrUpdateVisible: false, + workshopList: [] + } + }, + components: { + ttable, + TableForm + }, + computed: { + ...mapGetters(['permissions']) + }, + created() { + remote('work_shop').then((response) => { + if (response.data.code === 0) { + this.workshopList = response.data.data + } else { + this.workshopList = [] + } + }) + }, + methods: { + pullEquipFun(){ + this.table.toolbar.find((e) => e.text === '鍚屾').loading = true + pullEquip().then(res=>{ + this.$message.success(res.data.data.msg) + this.table.toolbar.find((e) => e.text === '鍚屾').loading = false + }).catch(error=>{ + this.$message.error("鍚屾澶辫触",error) + this.getData() + this.table.toolbar.find((e) => e.text === '鍚屾').loading = false + }) + }, + workShopFormatter(row, column, cellValue) { + if(cellValue==='鍘熸潗鏂欐楠�'){ + cellValue=="鍘熸潗鏂欐楠�" + } + if(cellValue==='杩囩▼妫�楠�'){ + cellValue=="杩囩▼妫�楠�" + } + return cellValue + }, + // 鑾峰彇鏁版嵁鍒楄〃 + getData() { + this.$refs.equipmentTable.getDataList() + }, + formatReceiveTime(row, column, cellValue) { + return cellValue ? fecha.format(new Date(cellValue), 'yyyy-MM-dd HH:mm:ss') : '' + }, + handleSelectionChange(val) { + this.multipleSelection = val + }, + // 鏂板 / 淇敼 + addOrUpdateHandle(row) { + this.addOrUpdateVisible = true + this.$nextTick(() => { + this.$refs.addOrUpdate.init(row == null ? null : row.id) + }) + }, + // 鍒犻櫎 + deleteHandle(row) { + this.$confirm('鏄惁纭鍒犻櫎璁惧鍚嶇О涓�' + row.name, '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + closeOnClickModal: false, + type: 'warning' + }) + .then(function() { + return delObj(row.id) + }) + .then((data) => { + this.$message.success('鍒犻櫎鎴愬姛') + this.getData() + }) + } + } + } + </script> + \ No newline at end of file diff --git a/src/views/equipment/metering/metering-form.vue b/src/views/equipment/metering/metering-form.vue new file mode 100644 index 0000000..1d290dd --- /dev/null +++ b/src/views/equipment/metering/metering-form.vue @@ -0,0 +1,201 @@ +<template> + <el-dialog + :title="!dataForm.id ? '鏂板' : '淇敼'" + :close-on-click-modal="false" + :visible.sync="visible" + > + <el-form + :model="dataForm" + :rules="dataRule" + ref="dataForm" + label-width="80px" + class="l-mes" + > + <el-row> + <el-col :span="12"> + <el-form-item label="缂栧彿" prop="code"> + <el-input v-model="dataForm.code" placeholder="缂栧彿"></el-input> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鍚嶇О" prop="name"> + <el-input v-model="dataForm.name" placeholder="鍚嶇О"></el-input> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="绫诲瀷" prop="type"> + <el-select + v-model="dataForm.type" + filterable + placeholder="璇烽�夋嫨" + style="width:100%" + > + <el-option + v-for="item in workshopList" + :key="item.id" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鍘傚" prop="supplier"> + <el-input + v-model="dataForm.supplier" + placeholder="鍘傚" + ></el-input> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鐘舵��" prop="state"> + <el-select + v-model="dataForm.status" + placeholder="鐘舵��" + filterable + style="width: 100%" + > + <el-option + v-for="item in equipmentState" + :key="item.id" + :label="item.label" + :value="item.label" + /> + </el-select> + </el-form-item> + </el-col> + </el-row> + </el-form> + <span slot="footer" class="dialog-footer"> + <el-button @click="visible = false">鍙栨秷</el-button> + <el-button + type="primary" + :disabled="isSubmit" + v-thinclick="`dataFormSubmit`" + >纭畾</el-button + > + </span> + </el-dialog> + </template> + <script> + import { getObj, addObj, putObj } from '@/api/equipment/metering' + import { loadFactoryList } from '@/api/basic/factory' + import { remote } from '../../../api/admin/dict' + export default { + data() { + return { + // options: regionData, + visible: false, + dataForm: { + id: 0, + number: '', + name: '', + factoryId: '', + workshop: '', + position: '', + email: '', + supplier: '', + manufacturer: '', + typeSpecification: '', + manufactureDate: '', + installDate: '', + state: '', + description: '', + value1: '', + code: null, + type: null, + status: null, + supplier: null + }, + dataRule: { + number: [{ required: true, message: '缂栧彿涓嶈兘涓虹┖', trigger: 'blur' }], + name: [{ required: true, message: '鍚嶇О涓嶈兘涓虹┖', trigger: 'blur' }] + }, + factoryOptions: [], + equipmentState: [], + isSubmit: false, + workshopList: [{ + label: "鍘熸潗鏂欐楠�", + value: '鍘熸潗鏂欐楠�' + },{ + label: '杩囩▼妫�楠�', + value: '杩囩▼妫�楠�' + }] + } + }, + methods: { + init(id) { + this.dataForm.id = id || 0 + this.visible = true + this.$nextTick(() => { + this.$refs.dataForm.resetFields() + if (this.dataForm.id) { + getObj(this.dataForm.id).then((response) => { + this.dataForm = response.data.data + }) + } else { + if (this.factoryOptions.length > 0) { + this.dataForm.factoryId = this.factoryOptions[0].id + } + } + }) + }, + // 琛ㄥ崟鎻愪氦 + getEquipmentState() { + remote('equipment_state').then((response) => { + if (response.data.code === 0) { + this.equipmentState = response.data.data + } + }) + }, + dataFormSubmit() { + this.isSubmit = true + this.$refs.dataForm.validate((valid) => { + if (valid) { + if (this.dataForm.id) { + putObj(this.dataForm).then((data) => { + this.$message.success('淇敼鎴愬姛') + this.visible = false + this.isSubmit = false + this.$emit('refreshDataList') + }) + } else { + addObj(this.dataForm).then((data) => { + this.$message.success('娣诲姞鎴愬姛') + this.visible = false + this.isSubmit = false + this.$emit('refreshDataList') + }) + } + } else { + this.isSubmit = false + } + }) + }, + + initFactorySelect() { + loadFactoryList().then((res) => { + this.factoryOptions = res.data + if (this.factoryOptions.length > 0) { + this.dataForm.factoryId = this.factoryOptions[0].id + } + }) + } + }, + + created() { + this.initFactorySelect() + this.getEquipmentState() + + // remote('work_shop').then((response) => { + // if (response.data.code === 0) { + // this.workshopList = response.data.data + // } else { + // this.workshopList = [] + // } + // }) + } + } + </script> + \ No newline at end of file diff --git a/src/views/quality/finishedProductInspection/finishedProduct-form.vue b/src/views/quality/finishedProductInspection/finishedProduct-form.vue index 34cd401..c5a4687 100644 --- a/src/views/quality/finishedProductInspection/finishedProduct-form.vue +++ b/src/views/quality/finishedProductInspection/finishedProduct-form.vue @@ -97,24 +97,39 @@ <el-table-column prop="inspectionValue" v-for="(item, index) in empiricalValueAdd" :key="index" label="妫�娴嬪��" width="240" style="text-align: center;"> <template slot-scope="scope"> - <el-tooltip v-if="scope.row.iname!=null" :disabled="scope.row.eId != null" - class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" - placement="top-start"> - <el-input :disabled="scope.row.eId == null" v-model="scope.row.empiricalValueAddss[index]" - @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input> - <span v-if="resultVal != null" v-text="scope.row.empiricalValueAddss[index]"></span> + <el-col v-if="scope.row.itype === '1'"> + <el-tooltip v-if="scope.row.iname!=null" :disabled="scope.row.eId != null" + class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" + placement="top-start"> + <el-input :disabled="scope.row.eId == null" v-model="scope.row.empiricalValueAddss[index]" + @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input> + <span v-if="resultVal != null" v-text="scope.row.empiricalValueAddss[index]"></span> </el-tooltip> + </el-col> + <el-col v-else> + <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null" + class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start"> + <el-select style="width: 100%;" @change="changeState(scope.row, index)" :disabled="scope.row.eId == null" v-model="scope.row.empiricalValueAddss[index]" placeholder="璇烽�夋嫨"> + <el-option v-for="item in dataVal" :key="item.value" :label="item.label" + :value="item.value"> + </el-option> + </el-select> + <span v-if="resultVal != null && processInspectVo.id != null" + v-text="scope.row.empiricalValueAddss[index]"></span> + </el-tooltip> + </el-col> </template> </el-table-column> <el-table-column prop="deviceName" label="璇曢獙璁惧" min-width="250"> <template slot-scope="scope"> <span v-if="resultVal!=null && processInspectVo.id!=null" v-text="scope.row.ename"></span> <div v-else> - <el-select style="width:100%" v-model="scope.row.eId" + <el-input v-model="scope.row.eId" v-if="scope.row.iname != null" placeholder="璇疯緭鍏ヨ澶囧彿"></el-input> + <!-- <el-select style="width:100%" v-model="scope.row.eId" v-if="scope.row.iname != null" filterable @change="updateDevice(scope.row,scope.$index)"> <el-option v-for="(item,index) in deviceList" :key="index" :value="item.id" :label="item.number +'-'+ item.name"></el-option> - </el-select> + </el-select> --> </div> </template> </el-table-column> @@ -175,6 +190,13 @@ export default { data() { return { + dataVal: [{ + label: '鏄�', + value: '鏄�' + }, { + label: '鍚�', + value: '鍚�' + }], resultVal: null, deviceList: [], hasChildren: true, @@ -220,6 +242,7 @@ this.init() }, methods: { + submitSave(){ let pro = 0 this.inspectionItems.forEach(item => { @@ -323,7 +346,8 @@ }, getDeviceList(){ selectDevice(null).then(res=>{ - this.deviceList = res.data.data + // this.deviceList = res.data.data + console.log(res); }) }, updateDevice(row,index){ diff --git a/src/views/quality/processInspect/index.vue b/src/views/quality/processInspect/index.vue index fdc05d8..b1b35e5 100644 --- a/src/views/quality/processInspect/index.vue +++ b/src/views/quality/processInspect/index.vue @@ -20,7 +20,8 @@ import ttable from '@/views/common/ztt-table.vue' import * as fecha from 'element-ui/lib/utils/date' import processInspectForm from './processInspect-form' - import { page,deleteById } from '@/api/quality/processInspect' + import { transform } from '@/util/fileTransform' + import { page,deleteById,exportProcessInsProduct } from '@/api/quality/processInspect' export default { components: { processInspectForm, @@ -153,6 +154,7 @@ }, { text: '瀵煎嚭', + fun: this.exportExcel } ], operator: [{ @@ -172,6 +174,14 @@ }, created() { }, methods: { + exportExcel(){ + let queryParam=this.$refs.processInspect.getQueryParam(); + delete queryParam.criteria + console.log(queryParam); + exportProcessInsProduct(queryParam).then((res)=>{ + transform(res) + }) + }, deleteHandle(row){ this.$confirm('纭鍒犻櫎璇ユ暟鎹悧锛�', '鎻愮ず', { confirmButtonText: '纭畾', diff --git a/src/views/quality/processInspect/processInspect-form.vue b/src/views/quality/processInspect/processInspect-form.vue index d486d2d..cfbecd9 100644 --- a/src/views/quality/processInspect/processInspect-form.vue +++ b/src/views/quality/processInspect/processInspect-form.vue @@ -4,45 +4,46 @@ <div class="page-header"> <div class="header-left"> <a @click="$router.go(-1)"><i class="icon-btn-back"></i></a> - <h2 v-if="resultVal != null && processInspectVo.id!=null">鏌ョ湅-杩囩▼妫�楠屽崟</h2> + <h2 v-if="resultVal != null && processInspectVo.id != null">鏌ョ湅-杩囩▼妫�楠屽崟</h2> <h2 v-else>缂栬緫-杩囩▼妫�楠屽崟</h2> </div> <div class="btn-group header-right"> - <el-button @click="addTestProject" v-if="processInspectVo.id==null">鐢熸垚妫�楠岄」鐩�</el-button> + <el-button @click="addTestProject" v-if="processInspectVo.id == null">鐢熸垚妫�楠岄」鐩�</el-button> </div> </div> <div class="page-main"> <div class="finishedProduct-basic"> - <el-form :model="processInspectVo" ref="addInspectionform" class="l-mes" - label-position="right" label-width="120px" style="width: 100%" size="small"> + <el-form :model="processInspectVo" ref="addInspectionform" class="l-mes" label-position="right" + label-width="120px" style="width: 100%" size="small"> <div class="formwrapper"> <el-row> <el-col :span="6"> <el-form-item label="璁㈠崟鍙凤細"> <el-input @blur="selectInfoByOrderId" :disabled="processInspectVo.id != null" - v-model="processInspectVo.orderNumber" placeholder="璇疯緭鍏ヨ鍗曞彿" autocomplete="off" /> + v-model="processInspectVo.orderNumber" placeholder="璇疯緭鍏ヨ鍗曞彿" autocomplete="off" /> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="浜у搧鍚嶇О锛�"> - <el-select style="width: 100%" @change="changeOptionsSamplename" :disabled="processInspectVo.id != null" - v-model="processInspectVo.material" size="small" placeholder="璇烽�夋嫨浜у搧鍚嶇О"> - <el-option v-for="(item,index) in optionsSamplename" :key="index" :label="item.material" - :value="item.materialCode"> + <el-select style="width: 100%" @change="changeOptionsSamplename" + :disabled="processInspectVo.id != null" v-model="processInspectVo.material" + size="small" placeholder="璇烽�夋嫨浜у搧鍚嶇О"> + <el-option v-for="(item, index) in optionsSamplename" :key="index" + :label="item.material" :value="item.materialCode"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="浜у搧缂栫爜锛�"> - <el-input disabled v-model="processInspectVo.materialCode" - placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�" autocomplete="off" /> + <el-input disabled v-model="processInspectVo.materialCode" placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�" + autocomplete="off" /> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="瑙勬牸鍨嬪彿锛�"> - <el-input disabled v-model="processInspectVo.specs" - placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�" autocomplete="off" /> + <el-input disabled v-model="processInspectVo.specs" placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�" + autocomplete="off" /> </el-form-item> </el-col> </el-row> @@ -51,7 +52,7 @@ <el-form-item label="宸ュ簭鍚嶇О"> <el-select style="width: 100%" :disabled="processInspectVo.id != null" v-model="processInspectVo.technologyOperationId" size="small" placeholder="璇烽�夋嫨宸ュ簭"> - <el-option v-for="(item,index) in technologyList" :key="index" :label="item.name" + <el-option v-for="(item, index) in technologyList" :key="index" :label="item.name" :value="item.technologyOperationId"> </el-option> </el-select> @@ -59,16 +60,16 @@ </el-col> <el-col :span="6"> <el-form-item label="鍗曚綅锛�"> - <el-input disabled v-model="processInspectVo.unit" - placeholder="璇疯緭鍏ュ崟浣�" autocomplete="off" /> + <el-input disabled v-model="processInspectVo.unit" placeholder="璇疯緭鍏ュ崟浣�" + autocomplete="off" /> </el-form-item> </el-col> </el-row> <el-row> <el-col :span="6"> <el-form-item label="鏁伴噺锛�"> - <el-input v-model="processInspectVo.quantity" placeholder="璇疯緭鍏ユ暟閲�" - autocomplete="off" :disabled="processInspectVo.id != null" /> + <el-input v-model="processInspectVo.quantity" placeholder="璇疯緭鍏ユ暟閲�" autocomplete="off" + :disabled="processInspectVo.id != null" /> </el-form-item> </el-col> </el-row> @@ -86,41 +87,60 @@ <el-row style="width:100%;"> <el-col :span="24"> <el-table border :data="inspectionItems" height="400" - :header-cell-style="{textAlign:'center',color:'black',backgroundColor:'#fafafa'}" - :cell-style="{textAlign:'center'}" row-key="iid" default-expand-all - style="width: 100%" ref="table" :tree-props="{children: 'children', hasChildren: 'hasChildren'}"> + :header-cell-style="{ textAlign: 'center', color: 'black', backgroundColor: '#fafafa' }" + :cell-style="{ textAlign: 'center' }" row-key="iid" default-expand-all style="width: 100%" + ref="table" :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"> <el-table-column type="index" label="搴忓彿" width="60"></el-table-column> - <el-table-column label="椤圭洰" prop="father" width="240" ></el-table-column> - <el-table-column prop="iname" label="鎸囨爣" width="240" ></el-table-column> - <el-table-column prop="iunit" label="鍗曚綅" width="240" ></el-table-column> - <el-table-column prop="required" label="鏍囧噯鍊�" width="240" ></el-table-column> - <el-table-column prop="inspectionValue" v-for="(item, index) in empiricalValueAdd" :key="index" label="妫�娴嬪��" - width="240" style="text-align: center;"> + <el-table-column label="椤圭洰" prop="father" width="240"></el-table-column> + <el-table-column prop="iname" label="鎸囨爣" width="240"></el-table-column> + <el-table-column prop="iunit" label="鍗曚綅" width="240"></el-table-column> + <el-table-column prop="required" label="鏍囧噯鍊�" width="240"></el-table-column> + <el-table-column prop="inspectionValue" v-for="(item, index) in empiricalValueAdd" :key="index" + label="妫�娴嬪��" width="240" style="text-align: center;"> <template slot-scope="scope"> - <el-tooltip v-if="scope.row.iname!=null" :disabled="scope.row.eId != null" - class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" - placement="top-start"> - <el-input :disabled="scope.row.eId == null" v-model="scope.row.empiricalValueAddss[index]" + <el-col v-if="scope.row.itype === '1'"> + <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null" + class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start"> + <el-input :disabled="scope.row.eId == null" + v-model="scope.row.empiricalValueAddss[index]" @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input> - <span v-if="resultVal != null && processInspectVo.id!=null" v-text="scope.row.empiricalValueAddss[index]"></span> + <span v-if="resultVal != null && processInspectVo.id != null" + v-text="scope.row.empiricalValueAddss[index]"></span> </el-tooltip> + </el-col> + <el-col v-else> + <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null" + class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start"> + <!-- <el-input :disabled="scope.row.eId == null" + v-model="scope.row.empiricalValueAddss[index]" + @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input> --> + <el-select style="width: 100%;" @change="changeState(scope.row, index)" :disabled="scope.row.eId == null" v-model="scope.row.empiricalValueAddss[index]" placeholder="璇烽�夋嫨"> + <el-option v-for="item in dataVal" :key="item.value" :label="item.label" + :value="item.value"> + </el-option> + </el-select> + <span v-if="resultVal != null && processInspectVo.id != null" + v-text="scope.row.empiricalValueAddss[index]"></span> + </el-tooltip> + </el-col> </template> </el-table-column> <el-table-column prop="deviceName" label="璇曢獙璁惧" min-width="250"> <template slot-scope="scope"> - <span v-if="resultVal != null && scope.row.iname != null" v-text="scope.row.ename"></span> + <span v-if="resultVal != null && scope.row.iname != null" + v-text="scope.row.ename"></span> <div v-else> - <el-select style="width:100%" v-model="scope.row.eId" - v-if="scope.row.iname != null" filterable @change="updateDevice(scope.row,scope.$index)"> - <el-option v-for="(item,index) in deviceList" - :key="index" :value="item.id" :label="item.number +'-'+ item.name"></el-option> + <el-select style="width:100%" v-model="scope.row.eId" v-if="scope.row.iname != null" + filterable @change="updateDevice(scope.row, scope.$index)"> + <el-option v-for="(item, index) in deviceList" :key="index" :value="item.id" + :label="item.code + '-' + item.name"></el-option> </el-select> </div> </template> </el-table-column> <el-table-column label="缁撹" fixed="right" min-width="100"> <template slot-scope="scope"> - <div v-if="scope.row.iname!=null"> + <div v-if="scope.row.iname != null"> <span style="color: #34BD66;" v-if="scope.row.iresult == 1">鍚堟牸</span> <span style="color: #E84738;" v-else-if="scope.row.iresult == 0">涓嶅悎鏍�</span> <span v-else>鏆傛棤缁撹</span> @@ -138,8 +158,8 @@ <el-row style="width:100%;"> <el-col :span="24"> <el-table border height="90" :data="inspectionResultForm" - :header-cell-style="{textAlign:'center',color:'black',backgroundColor:'#fafafa'}" - :cell-style="{textAlign:'center'}"> + :header-cell-style="{ textAlign: 'center', color: 'black', backgroundColor: '#fafafa' }" + :cell-style="{ textAlign: 'center' }"> <el-table-column prop="materialCode" label="鐗╂枡缂栧彿"></el-table-column> <el-table-column prop="material" label="鐗╂枡鍚嶇О"></el-table-column> <el-table-column prop="userName" label="妫�楠屽憳"></el-table-column> @@ -149,9 +169,10 @@ <el-tag type="danger" v-if="scope.row.result == '0'">涓嶅悎鏍�</el-tag> </template> </el-table-column> - <el-table-column label="鎿嶄綔"> + <el-table-column label="鎿嶄綔"> <template> - <el-button type="text" :disabled="resultVal != null && processInspectVo.id!=null" @click="submitSave()" size="small">涓婃姤</el-button> + <el-button type="text" :disabled="resultVal != null && processInspectVo.id != null" + @click="submitSave()" size="small">涓婃姤</el-button> </template> </el-table-column> </el-table> @@ -160,358 +181,359 @@ </div> </div> </div> - </template> +</template> - <script> - import { - chooseMater, - addProcess, - queryById, - updateDeviceBypppId, - updateProcessInsProduct, - updateProcessInspectsById, - } from '@/api/quality/processInspect' - import { selectDevice } from '@/api/quality/rawMaterial' - export default { - data() { - return { - resultVal: null, - technologyList: [], - deviceList: [], - hasChildren: true, - optionsSamplename: [], - // 娣诲姞鍒� - empiricalValueAdd: 1, - // 缂栬緫鏃跺瓨鍌ㄦ渶闀跨殑鍒楁暟瀛楋紝鍋氬垹闄ゅ垽鏂� - empiricalValueAddMaxNumber: 0, - processInspectVo: { - id: null, - material: null, - materialCode: null, - orderNumber: "ZTTIC20230001", - quantity: null, - specs: null, - unit: null, - technologyOperationId: null - }, - inspectionItems: [], // 鏂板妫�楠岄」鐩〃鏍� - inspectionResultForm: [], - } - }, - watch: { - }, - beforeUpdate(){ - this.$nextTick(()=>{ +<script> +import { + chooseMater, + addProcess, + queryById, + updateDeviceBypppId, + updateProcessInsProduct, + updateProcessInspectsById, +} from '@/api/quality/processInspect' +import { selectDevice } from '@/api/quality/processInspect' +export default { + data() { + return { + dataVal: [{ + label: '鏄�', + value: '鏄�' + }, { + label: '鍚�', + value: '鍚�' + }], + resultVal: null, + technologyList: [], + deviceList: [], + hasChildren: true, + optionsSamplename: [], + // 娣诲姞鍒� + empiricalValueAdd: 1, + // 缂栬緫鏃跺瓨鍌ㄦ渶闀跨殑鍒楁暟瀛楋紝鍋氬垹闄ゅ垽鏂� + empiricalValueAddMaxNumber: 0, + processInspectVo: { + id: null, + material: null, + materialCode: null, + orderNumber: "ZTTIC20230001", + quantity: null, + specs: null, + unit: null, + technologyOperationId: null + }, + inspectionItems: [], // 鏂板妫�楠岄」鐩〃鏍� + inspectionResultForm: [], + } + }, + watch: { + }, + beforeUpdate() { + this.$nextTick(() => { this.$refs.table.doLayout(); - }) - }, - created() { - }, - mounted() { - this.getDeviceList() - this.processInspectVo.id = this.$route.query.id - this.resultVal = this.$route.query.resultVal - if(this.resultVal == null){ - let val = sessionStorage.getItem("process-resultVal-"+this.processInspectVo.id); - val == undefined ? this.resultVal=null : this.resultVal = val - } - this.init() - }, - methods: { - submitSave(){ - let pro = 0 - console.log(this.inspectionItems); - this.inspectionItems.forEach(item => { - if(item.children){ - let arr = item.children.filter(obj=>{ - return obj.iresult == 0; - }) - pro+=arr.length + }) + }, + created() { + }, + mounted() { + this.getDeviceList() + this.processInspectVo.id = this.$route.query.id + this.resultVal = this.$route.query.resultVal + if (this.resultVal == null) { + let val = sessionStorage.getItem("process-resultVal-" + this.processInspectVo.id); + val == undefined ? this.resultVal = null : this.resultVal = val + } + this.init() + }, + methods: { + submitSave() { + let pro = 0 + console.log(this.inspectionItems); + this.inspectionItems.forEach(item => { + if (item.children) { + let arr = item.children.filter(obj => { + return obj.iresult == 0; + }) + pro += arr.length + } + }) + if (pro > 0) { + this.$prompt('璇疯緭鍏ヤ笉鍚堟牸鏁伴噺', '涓嶅悎鏍兼暟閲�', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + inputPattern: /^\d+$/, + inputErrorMessage: '璇疯緭鍏ユ纭暟瀛楁牸寮�' + }).then(({ value }) => { + let data = { + id: this.processInspectVo.id, + number: value } - }) - if (pro > 0) { - this.$prompt('璇疯緭鍏ヤ笉鍚堟牸鏁伴噺', '涓嶅悎鏍兼暟閲�', { - confirmButtonText: '纭畾', - cancelButtonText: '鍙栨秷', - inputPattern: /^\d+$/, - inputErrorMessage: '璇疯緭鍏ユ纭暟瀛楁牸寮�' - }).then(({ value }) => { - let data = { - id: this.processInspectVo.id, - number: value - } - updateProcessInspectsById(data).then(res => { - let data = res.data.data - if(data){ - if(data.indexOf("鎴愬姛")>0){ - this.$message.success(data); - this.checkTestState() - }else{ - this.$message.warning(data); - } - return - } - }); - }).catch(() => {}); - }else{ - updateProcessInspectsById({id:this.processInspectVo.id,number:0}).then(res => { + updateProcessInspectsById(data).then(res => { let data = res.data.data - if(data){ - if(data.indexOf("鎴愬姛") > 0){ + if (data) { + if (data.indexOf("鎴愬姛") > 0) { this.$message.success(data); this.checkTestState() - }else{ + } else { this.$message.warning(data); } return } }); + }).catch(() => { }); + } else { + updateProcessInspectsById({ id: this.processInspectVo.id, number: 0 }).then(res => { + let data = res.data.data + if (data) { + if (data.indexOf("鎴愬姛") > 0) { + this.$message.success(data); + this.checkTestState() + } else { + this.$message.warning(data); + } + return + } + }); + } + this.init() + }, + checkTestState() { + let resultVal = '1' + this.inspectionItems.forEach(item => { + if (item.children) { + item.children.forEach(obj => { + if (obj.iresult == 0) { + resultVal = '0' + } + }) } - this.init() - }, - checkTestState(){ - let resultVal = '1' - this.inspectionItems.forEach(item=>{ - if(item.children){ - item.children.forEach(obj=>{ - if(obj.iresult == 0){ - resultVal = '0' - } - }) + }) + this.resultVal = resultVal + this.inspectionResultForm[0].result = resultVal + sessionStorage.setItem("process-resultVal-" + this.processInspectVo.id, resultVal) + }, + init() { + let id = this.processInspectVo.id + if (id != null) { + queryById(id).then(res => { + let result = res.data.data + this.processInspectVo.orderNumber = result.orderNumber + this.processInspectVo.materialCode = result.materialCode + this.processInspectVo.material = result.material + this.processInspectVo.technologyOperationId = result.technologyOperationName + this.processInspectVo.specs = result.specs + this.processInspectVo.unit = result.punit + this.processInspectVo.quantity = result.quantity + let userList = [] + result.children.forEach(item => { + item.iid = Math.random() + if (item.children != undefined) { + item.children.forEach(obj => { + let arr = [] + if (obj.userName) { + userList.push(obj.userName) + } + if (obj.inspectionValue) { + arr = obj.inspectionValue.split(",") + } + obj.empiricalValueAddss = arr + if (arr.length > this.empiricalValueAdd) { + this.empiricalValueAdd = arr.length + } + }) + } + }) + this.inspectionItems = result.children + this.inspectionResultForm = [{ + materialCode: result.materialCode, + material: result.material, + userName: Array.from(new Set(userList)).join(","), + result: this.resultVal == null ? '' : this.resultVal, + }] + }).catch(error => { + console.log(error) + }) + } + }, + getDeviceList() { + selectDevice(null).then(res => { + this.deviceList = res.data.data + }) + }, + updateDevice(row, index) { + updateDeviceBypppId({ deviceId: row.eId, ppid: row.iid }).then(res => { + this.inspectionItems.forEach(obj => { + console.log(obj); + if (obj.children) { + obj.children[index - 1].inspectionValue = null + obj.children[index - 1].iresult = null + obj.children[index - 1].empiricalValueAddss = [] } }) - this.resultVal = resultVal - this.inspectionResultForm[0].result = resultVal - sessionStorage.setItem("process-resultVal-"+this.processInspectVo.id,resultVal) - }, - init(){ - let id = this.processInspectVo.id - if(id != null){ - queryById(id).then(res=>{ - let result = res.data.data - this.processInspectVo.orderNumber = result.orderNumber - this.processInspectVo.materialCode = result.materialCode - this.processInspectVo.material = result.material - this.processInspectVo.technologyOperationId = result.technologyOperationName - this.processInspectVo.specs = result.specs - this.processInspectVo.unit = result.punit - this.processInspectVo.quantity = result.quantity - let userList = [] - result.children.forEach(item=>{ - item.iid = Math.random() - if(item.children != undefined){ - item.children.forEach(obj=>{ - let arr = [] - if(obj.userName){ - userList.push(obj.userName) - } - if(obj.inspectionValue){ - arr = obj.inspectionValue.split(",") - } - obj.empiricalValueAddss = arr - if(arr.length > this.empiricalValueAdd){ - this.empiricalValueAdd = arr.length - } + }).catch(error => { + console.log(error) + }) + }, + //浜у搧鍚嶇О锛岄�夋嫨 + changeOptionsSamplename(val) { + let sample = this.optionsSamplename.filter(o => { + return o.materialCode == val + })[0] + this.processInspectVo.materialCode = sample.materialCode + this.processInspectVo.specs = sample.specs + this.processInspectVo.unit = sample.unit + this.processInspectVo.material = sample.material + this.technologyList = sample.children + }, + changeState(row, index) { + if (row.iid != null && row.iid != '') { + let str = "" + row.empiricalValueAddss.forEach(e => { + str += e + "," + }) + str = str.slice(0, -1); + if (str === undefined || str === '' || str === null) { + return + } + let obj = { + devideId: row.eId, + ppid: row.iid, + inspectionValue: str + } + updateProcessInsProduct(obj).then(res => { + if (res.data.code == 0) { + this.$message.success("鏇存柊鎴愬姛") + } else { + this.$message.error("鏇存柊澶辫触") + } + this.init() + }) + } + }, + addTestProject() { + let val = this.processInspectVo + addProcess(val).then(res => { + let id = res.data.data + if (id != null) { + queryById(id).then(response => { + console.log(response.data.data.children) + let proList = response.data.data.children + proList.forEach(item => { + item.iid = Math.random(); + if (item.children != undefined) { + item.children.forEach(obj => { + obj.empiricalValueAddss = [] }) } }) - this.inspectionItems = result.children - this.inspectionResultForm = [{ - materialCode: result.materialCode, - material: result.material, - userName: Array.from(new Set(userList)).join(","), - result: this.resultVal == null ? '' : this.resultVal, - }] - }).catch(error=>{ - console.log(error) + this.inspectionItems = proList + }).catch(error => { + console.log(error); }) } - }, - getDeviceList(){ - selectDevice(null).then(res=>{ - this.deviceList = res.data.data - }) - }, - updateDevice(row,index){ - updateDeviceBypppId({equiomentId:row.eId,ppid:row.iId}).then(res=>{ - this.inspectionItems.forEach(obj=>{ - if(obj.children){ - obj.children[index-1].inspectionValue = '' - obj.children[index-1].iresult = null - obj.children[index-1].empiricalValueAddss = [] - } - }) - }).catch(error=>{ - console.log(error) - }) - }, - //浜у搧鍚嶇О锛岄�夋嫨 - changeOptionsSamplename(val) { - let sample = this.optionsSamplename.filter(o=>{ - return o.materialCode == val - })[0] - this.processInspectVo.materialCode = sample.materialCode - this.processInspectVo.specs = sample.specs - this.processInspectVo.unit = sample.unit - this.processInspectVo.material = sample.material - this.technologyList = sample.children - }, - changeState(row, index) { - if (row.iid != null && row.iid != '') { - let str = "" - row.empiricalValueAddss.forEach(e => { - str += e + "," - }) - str = str.slice(0,-1); - if (str === undefined || str === '' || str === null ) { - return - } - let obj = { - equiomentId: row.eId, - ppid: row.iid, - inspectionValue: str - } - updateProcessInsProduct(obj).then(res=>{ - if(res.data.code == 0){ - this.$message.success("鏇存柊鎴愬姛") - }else{ - this.$message.error("鏇存柊澶辫触") - } - this.init() - }) - } - }, - addTestProject() { - let val = this.processInspectVo - addProcess(val).then(res=>{ - let id = res.data.data - if(id != null){ - queryById(id).then(response=>{ - console.log(response.data.data.children) - let proList = response.data.data.children - proList.forEach(item=>{ - item.iid = Math.random(); - if(item.children != undefined){ - item.children.forEach(obj=>{ - obj.empiricalValueAddss = [] - }) - } - }) - this.inspectionItems = proList - }).catch(error=>{ - console.log(error); - }) - } - }).catch(error=>{ - console.log(error) - }) - }, - selectInfoByOrderId() { - chooseMater({ - orderNumber: this.processInspectVo.orderNumber - }).then(res => { - if (res.data.data != null) { - this.optionsSamplename = res.data.data.children - } else { - this.$message({ - message: '娌℃湁璇ヨ鍗曞彿锛�', - type: 'warning' - }); - this.optionsSamplename = [] - this.processInspectVo.materialCode = null - this.processInspectVo.material = null - this.processInspectVo.specs = null - this.processInspectVo.unit = null - } - }) - }, - // 鍒犻櫎妫�楠屽�煎垪 - clickDeleteInspectionColumn() { - if (this.empiricalValueAdd - 1 === 0) { + }).catch(error => { + console.log(error) + }) + }, + selectInfoByOrderId() { + chooseMater({ + orderNumber: this.processInspectVo.orderNumber + }).then(res => { + if (res.data.data != null) { + this.optionsSamplename = res.data.data.children } else { - if (this.empiricalValueAddMaxNumber != this.empiricalValueAdd - 1) { - this.empiricalValueAdd = this.empiricalValueAdd - 1; - this.inspectionItems.forEach(i => { - i.empiricalValueAddss.splice(this.empiricalValueAdd, 1); - }); - } + this.$message({ + message: '娌℃湁璇ヨ鍗曞彿锛�', + type: 'warning' + }); + this.optionsSamplename = [] + this.processInspectVo.materialCode = null + this.processInspectVo.material = null + this.processInspectVo.specs = null + this.processInspectVo.unit = null } - }, - // 娣诲姞妫�楠屽�煎垪 - clickAddInspectionColumn() { - this.empiricalValueAdd = this.empiricalValueAdd + 1; + }) + }, + // 鍒犻櫎妫�楠屽�煎垪 + clickDeleteInspectionColumn() { + if (this.empiricalValueAdd - 1 === 0) { + } else { + if (this.empiricalValueAddMaxNumber != this.empiricalValueAdd - 1) { + this.empiricalValueAdd = this.empiricalValueAdd - 1; + this.inspectionItems.forEach(i => { + i.empiricalValueAddss.splice(this.empiricalValueAdd, 1); + }); + } } }, - } - </script> + // 娣诲姞妫�楠屽�煎垪 + clickAddInspectionColumn() { + this.empiricalValueAdd = this.empiricalValueAdd + 1; + } + }, +} +</script> - <style scoped> - .finishedProduct-detail { - width: 100%; - height: 470px; - padding: 10px 20px; - display: flex; - border: 1px solid #ddd; - background-color: #fff; - margin-top: 10px; - box-sizing: border-box; - flex-wrap: wrap; - } - - .finishedProduct-result { - width: 100%; - height: 150px; - padding: 10px 20px; - display: flex; - border: 1px solid #ddd; - background-color: #fff; - margin-top: 10px; - box-sizing: border-box; - flex-wrap: wrap; - } - - .finishedProduct-basic { - background-color: #fff; - height: 155px; - display: flex; - flex-wrap: wrap; - padding: 10px 20px; - border: 1px solid #ddd; - box-sizing: border-box; - } - /*鑷畾涔塪isabled鐘舵�佷笅checkbox鐨勬牱寮�*/ - .completeproductstructure-checkout - .el-checkbox__input.is-disabled.is-checked - .el-checkbox__inner { - background-color: #006eff; - border-color: #006eff; - } - - .completeproductstructure-checkout - .el-checkbox__input.is-disabled.is-checked - + span.el-checkbox__label { - color: #006eff; - border-color: #006eff; - } - - .completeproductstructure-checkout - .el-checkbox__input.is-disabled - .el-checkbox__inner { - background-color: #ffffff; - cursor: pointer; - } - - .completeproductstructure-checkout - .el-checkbox__input.is-disabled - + span.el-checkbox__label { - color: #606266; - cursor: pointer; - } - - .completeproductstructure-checkout .el-checkbox__inner::after { - border: 1px solid #fff !important; - border-left: 0 !important; - border-top: 0 !important; - cursor: pointer !important; - } - </style> \ No newline at end of file +<style scoped> +.finishedProduct-detail { + width: 100%; + height: 470px; + padding: 10px 20px; + display: flex; + border: 1px solid #ddd; + background-color: #fff; + margin-top: 10px; + box-sizing: border-box; + flex-wrap: wrap; +} + +.finishedProduct-result { + width: 100%; + height: 150px; + padding: 10px 20px; + display: flex; + border: 1px solid #ddd; + background-color: #fff; + margin-top: 10px; + box-sizing: border-box; + flex-wrap: wrap; +} + +.finishedProduct-basic { + background-color: #fff; + height: 155px; + display: flex; + flex-wrap: wrap; + padding: 10px 20px; + border: 1px solid #ddd; + box-sizing: border-box; +} + +/*鑷畾涔塪isabled鐘舵�佷笅checkbox鐨勬牱寮�*/ +.completeproductstructure-checkout .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner { + background-color: #006eff; + border-color: #006eff; +} + +.completeproductstructure-checkout .el-checkbox__input.is-disabled.is-checked+span.el-checkbox__label { + color: #006eff; + border-color: #006eff; +} + +.completeproductstructure-checkout .el-checkbox__input.is-disabled .el-checkbox__inner { + background-color: #ffffff; + cursor: pointer; +} + +.completeproductstructure-checkout .el-checkbox__input.is-disabled+span.el-checkbox__label { + color: #606266; + cursor: pointer; +} + +.completeproductstructure-checkout .el-checkbox__inner::after { + border: 1px solid #fff !important; + border-left: 0 !important; + border-top: 0 !important; + cursor: pointer !important; +} +</style> \ No newline at end of file diff --git a/src/views/quality/processconfiguration/index.vue b/src/views/quality/processconfiguration/index.vue index b4aaf27..6bc79bd 100644 --- a/src/views/quality/processconfiguration/index.vue +++ b/src/views/quality/processconfiguration/index.vue @@ -43,14 +43,23 @@ <el-radio label="鎺ユ敹">鎺ユ敹</el-radio> <el-radio label="闄嶇骇浣跨敤">闄嶇骇浣跨敤</el-radio> <el-radio label="鎶ュ簾">鎶ュ簾</el-radio> + <el-radio label="闄嶄负浠栫敤">闄嶄负浠栫敤</el-radio> </el-radio-group> </div> <div v-if="type === '杩囩▼妫�楠�'"> <el-radio-group v-model="checkList"> - <el-radio label="杩斾慨">杩斾慨</el-radio> - <el-radio label="鎺ユ敹">鎺ユ敹</el-radio> - <el-radio label="闄嶇骇浣跨敤">闄嶇骇浣跨敤</el-radio> - <el-radio label="鎶ュ簾">鎶ュ簾</el-radio> + <el-row> + <div style="padding: 20px;"> + <el-radio label="杩斾慨">杩斾慨</el-radio> + <el-radio label="鎺ユ敹">鎺ユ敹</el-radio> + <el-radio label="闄嶇骇浣跨敤">闄嶇骇浣跨敤</el-radio> + <el-radio label="鎶ュ簾">鎶ュ簾</el-radio> + </div> + <div style="padding: 20px;"> + <el-radio label="杩斿伐">杩斿伐</el-radio> + <el-radio label="闄嶄负浠栫敤">闄嶄负浠栫敤</el-radio> + </div> + </el-row> </el-radio-group> </div> </el-form> -- Gitblit v1.9.3