Merge branch 'master' of http://114.132.189.42:9002/r/mes-ocea-before
| | |
| | | "vue-echarts": "^4.0.1", |
| | | "vue-json-editor": "^1.2.3", |
| | | "vue-json-tree-view": "^2.1.4", |
| | | "vue-qr": "^4.0.9", |
| | | "vue-quill-editor": "3.0.6", |
| | | "vue-router": "^3.0.2", |
| | | "vuedraggable": "^2.24.3", |
| | |
| | | }) |
| | | } |
| | | |
| | | export function selectDeviceAPI(query) { |
| | | return request({ |
| | | url: '/mes/qualityFinishedInsProduct/selectDevice', |
| | | method: 'get', |
| | | params: query |
| | | }) |
| | | } |
| | | |
| | | export function addFinish(obj) { |
| | | return request({ |
| | | url: '/mes/qualityFinishedInspect/addFinish', |
| | |
| | | > |
| | | <i class="el-icon-upload"></i> |
| | | <div class="el-upload__text"><em>点击导入数据</em></div> |
| | | <div class="el-upload__tip" slot="tip"> |
| | | <div class="el-upload__tip" slot="tip" > |
| | | 只能上传xlsx/xls文件,且不超过10M<el-button |
| | | type="text" |
| | | style="font-size:12px;" |
| | | @click="downDataTemplate" |
| | | @click="downDataTemplate" v-if="uploadInfo.Download" |
| | | >下载模板</el-button |
| | | > |
| | | </div> |
| | |
| | | ref="addOrUpdate" |
| | | @refreshDataList="getData" |
| | | ></table-form> |
| | | <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="500px"> |
| | | <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;"> |
| | | <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 15px;"> |
| | | <el-row> |
| | | <el-col :span="10" :offset="3">序号:</el-col> |
| | | <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="10" :offset="3">编号:</el-col> |
| | | <el-col :span="10" style="font-weight: bold;">{{ tem.code }}</el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="10" :offset="3">设备名称:</el-col> |
| | | <el-col :span="10" style="font-weight: bold;">{{ tem.name }}</el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="10" :offset="3">设备二维码:</el-col> |
| | | <el-col :span="10"> |
| | | <vueQr :text="tem.number" :size="80" :margin="2"></vueQr> |
| | | </el-col> |
| | | </el-row> |
| | | </el-card> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="diaPrintTab = false">取 消</el-button> |
| | | <el-button type="primary" @click="diaPrintTab = false">打 印</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </basic-container> |
| | | </div> |
| | | </template> |
| | |
| | | import { mapGetters } from 'vuex' |
| | | import * as fecha from 'element-ui/lib/utils/date' |
| | | import { remote } from '../../../api/admin/dict' |
| | | import vueQr from 'vue-qr' |
| | | export default { |
| | | data() { |
| | | return { |
| | |
| | | isShow: true, |
| | | url: '/mes/equipment/upload' |
| | | }, |
| | | diaPrintTab: false, |
| | | prelang: 'workstation', |
| | | options: { |
| | | height: 300, // 默认高度-为了表头固定 |
| | |
| | | type: 'primary', |
| | | fun: this.addOrUpdateHandle |
| | | }, |
| | | { |
| | | text: '标签打印', |
| | | type: 'primary', |
| | | fun: this.labelPrint |
| | | }, |
| | | // { |
| | | // text: '同步', |
| | | // type: 'primary', |
| | |
| | | }, |
| | | components: { |
| | | ttable, |
| | | TableForm |
| | | TableForm, |
| | | vueQr |
| | | }, |
| | | computed: { |
| | | ...mapGetters(['permissions']) |
| | |
| | | }, |
| | | handleSelectionChange(val) { |
| | | this.multipleSelection = val |
| | | console.log(this.multipleSelection); |
| | | }, |
| | | // 新增 / 修改 |
| | | addOrUpdateHandle(row) { |
| | |
| | | this.$message.success('删除成功') |
| | | this.getData() |
| | | }) |
| | | } |
| | | }, |
| | | labelPrint(){ |
| | | if(this.multipleSelection.length==0){ |
| | | this.$message.warning('请选择一条数据') |
| | | return |
| | | } |
| | | this.diaPrintTab = true |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | |
| | | @refreshDataList="getData" |
| | | ></table-form> |
| | | </basic-container> |
| | | <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="500px"> |
| | | <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;"> |
| | | <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 15px;"> |
| | | <el-row> |
| | | <el-col :span="10" :offset="3">序号:</el-col> |
| | | <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="10" :offset="3">编号:</el-col> |
| | | <el-col :span="10" style="font-weight: bold;">{{ tem.code }}</el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="10" :offset="3">设备名称:</el-col> |
| | | <el-col :span="10" style="font-weight: bold;">{{ tem.name }}</el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="10" :offset="3">设备二维码:</el-col> |
| | | <el-col :span="10"> |
| | | <vueQr :text="tem.code" :size="80" :margin="2"></vueQr> |
| | | </el-col> |
| | | </el-row> |
| | | </el-card> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="diaPrintTab = false">取 消</el-button> |
| | | <el-button type="primary" @click="diaPrintTab = false">打 印</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | import { mapGetters } from 'vuex' |
| | | import * as fecha from 'element-ui/lib/utils/date' |
| | | import { remote } from '../../../api/admin/dict' |
| | | import vueQr from 'vue-qr' |
| | | export default { |
| | | data() { |
| | | return { |
| | |
| | | multipleSelection: [], |
| | | uploadInfo: { |
| | | // 是否展示上传EXCEL以及对应的url |
| | | isShow: true, |
| | | Download:false, |
| | | isShow: true, |
| | | url: '/mes/equipmentDevice/upload' |
| | | }, |
| | | prelang: 'workstation', |
| | |
| | | minWidth: '150', |
| | | width: '250', |
| | | prop: 'createTime', |
| | | label: '创建时间', |
| | | label: '校准时间', |
| | | sort: true, |
| | | isTrue: true, |
| | | formatter: this.formatReceiveTime, |
| | |
| | | minWidth: '150', |
| | | width: '250', |
| | | prop: 'updateTime', |
| | | label: '修改时间', |
| | | label: '校准到期时间', |
| | | sort: true, |
| | | isTrue: true, |
| | | formatter: this.formatReceiveTime, |
| | |
| | | }, |
| | | { |
| | | minWidth: '30', |
| | | prop: 'InspectionUnit', |
| | | prop: 'inspectionUnit', |
| | | label: '检验单位', |
| | | sort: true, |
| | | isTrue: true, |
| | |
| | | }, |
| | | { |
| | | minWidth: '30', |
| | | prop: 'FixedPointPosition', |
| | | prop: 'fixedPointPosition', |
| | | label: '定点位置', |
| | | sort: true, |
| | | isTrue: true, |
| | |
| | | text: '新增', |
| | | type: 'primary', |
| | | fun: this.addOrUpdateHandle |
| | | }, |
| | | { |
| | | text: '标签打印', |
| | | type: 'primary', |
| | | fun: this.labelPrint |
| | | }, |
| | | // { |
| | | // text: '同步', |
| | |
| | | } |
| | | }, |
| | | addOrUpdateVisible: false, |
| | | workshopList: [] |
| | | workshopList: [], |
| | | diaPrintTab: false |
| | | } |
| | | }, |
| | | components: { |
| | | ttable, |
| | | TableForm |
| | | TableForm, |
| | | vueQr |
| | | }, |
| | | computed: { |
| | | ...mapGetters(['permissions']) |
| | |
| | | this.$message.success('删除成功') |
| | | this.getData() |
| | | }) |
| | | }, |
| | | labelPrint(){ |
| | | if(this.multipleSelection.length==0){ |
| | | this.$message.warning('请选择一条数据') |
| | | return |
| | | } |
| | | this.diaPrintTab = true |
| | | } |
| | | } |
| | | } |
| | |
| | | <el-input v-model="dataForm.name" placeholder="名称"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <!-- <el-col :span="12"> |
| | | <el-form-item label="类型" prop="type"> |
| | | <el-select |
| | | v-model="dataForm.type" |
| | |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-col> --> |
| | | <!-- <el-col :span="12"> |
| | | <el-form-item label="责任人" prop="createUser"> |
| | | <el-input |
| | | v-model="dataForm.createUser" |
| | | placeholder="责任人" |
| | | ></el-input> |
| | | </el-form-item> |
| | | </el-col> --> |
| | | |
| | | <el-col :span="12"> |
| | | <el-form-item label="厂家" prop="supplier"> |
| | | <el-input |
| | |
| | | ></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="12"> |
| | | <el-form-item label="状态" prop="state"> |
| | | <el-select |
| | | <el-form-item label="责任部门" prop="responsibleDepartment"> |
| | | <el-input |
| | | v-model="dataForm.responsibleDepartment" |
| | | placeholder="责任部门" |
| | | ></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-input |
| | | v-model="dataForm.status" |
| | | placeholder="状态" |
| | | ></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="规格" prop="specifications"> |
| | | <el-input |
| | | v-model="dataForm.specifications" |
| | | placeholder="规格" |
| | | ></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | |
| | | <!-- <el-col :span="12"> |
| | | <el-form-item label="设备状态" prop="status"> |
| | | <el-select |
| | | v-model="dataForm.status" |
| | | placeholder="设备状态" |
| | | filterable |
| | | style="width: 100%" |
| | | > |
| | |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-col> --> |
| | | </el-row> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | |
| | | typeSpecification: '', |
| | | manufactureDate: '', |
| | | installDate: '', |
| | | state: '', |
| | | // state: '', |
| | | specifications:'', |
| | | responsibleDepartment:'', |
| | | // createUser:'', |
| | | status:'', |
| | | |
| | | |
| | | description: '', |
| | | value1: '', |
| | | code: null, |
| | | type: null, |
| | | status: null, |
| | | // type: null, |
| | | // status: null, |
| | | supplier: null |
| | | }, |
| | | dataRule: { |
| | |
| | | </div> |
| | | <div class="page-main"> |
| | | <div class="finishedProduct-basic"> |
| | | <el-form :model="processInspectVo" ref="addInspectionform" class="l-mes" |
| | | <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-row style="width:100%;"> |
| | | <el-col :span="24"> |
| | | <el-table border :data="inspectionItems" height="400" |
| | | :header-cell-style="{textAlign:'center',color:'black',backgroundColor:'#fafafa'}" |
| | | :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 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-col v-if="scope.row.itype === '1'"> |
| | | <el-tooltip v-if="scope.row.iname!=null" :disabled="scope.row.eId != null" |
| | | <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]" |
| | |
| | | <template slot-scope="scope"> |
| | | <span v-if="resultVal!=null && processInspectVo.id!=null" v-text="scope.row.ename"></span> |
| | | <div v-else> |
| | | <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" |
| | | <!-- <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" |
| | | <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> |
| | |
| | | <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.inote" |
| | | @blur="changeState(scope.row, index)" placeholder="请输入检验描述"></el-input> |
| | | |
| | | <span v-if="resultVal != null && processInspectVo.id != null" |
| | | v-text="scope.row.inote"></span> |
| | | </el-tooltip> |
| | |
| | | <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.inote" placeholder="请选择"> |
| | | <el-input :disabled="scope.row.eId == null" |
| | | v-model="scope.row.inote" |
| | | @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.inote" placeholder="请选择"> |
| | | <el-option v-for="item in dataVal" :key="item.value" :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-select> --> |
| | | <span v-if="resultVal != null && processInspectVo.id != null" |
| | | v-text="scope.row.inote"></span> |
| | | </el-tooltip> |
| | |
| | | <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'}" |
| | | :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> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | import { |
| | | chooseMater, |
| | | addFinish, |
| | | queryById, |
| | | updateDeviceById, |
| | | updateFinishedInsProduct, |
| | | updateFinishedInspectById, |
| | | selectDeviceAPI, |
| | | } from '@/api/quality/finishedProduct' |
| | | import { selectDevice } from '@/api/quality/rawMaterial' |
| | | export default { |
| | |
| | | } |
| | | }, |
| | | getDeviceList(){ |
| | | selectDevice(null).then(res=>{ |
| | | selectDeviceAPI(null).then(res=>{ |
| | | // this.deviceList = res.data.data |
| | | console.log(res); |
| | | this.deviceList = res.data.data |
| | | |
| | | }) |
| | | }, |
| | | updateDevice(row,index){ |
| | |
| | | border-top: 0 !important; |
| | | cursor: pointer !important; |
| | | } |
| | | </style> |
| | | </style> |
| | |
| | | <td colspan=2 height=53 class=xl7624921 style='border-right:.5pt solid black; |
| | | height:40.05pt'>项目名称</td> |
| | | <td colspan=2 class=xl6624921 style='border-right:.5pt solid black; |
| | | border-left:none'> </td> |
| | | border-left:none'> |
| | | <p class="MsoNormal" align="center" style="text-align:center"> |
| | | <span lang="EN-US" style="font-family:"Arial",sans-serif" v-text="deviceStr"></span></p> |
| | | </td> |
| | | <td class=xl6924921 style='border-top:none;border-left:none'>产品名称</td> |
| | | <td colspan=2 class=xl6624921 style='border-right:.5pt solid black; |
| | | border-left:none'> </td> |
| | | border-left:none'> |
| | | <p class="MsoNormal" align="center" style="text-align:center"> |
| | | <span lang="EN-US" style="font-family:"Arial",sans-serif" v-text="product"></span></p> |
| | | </td> |
| | | </tr> |
| | | <tr class=xl6524921 height=53 style='mso-height-source:userset;height:40.05pt'> |
| | | <td colspan=2 height=53 class=xl7624921 style='border-right:.5pt solid black; |
| | |
| | | |
| | | <script> |
| | | export default { |
| | | |
| | | props:{ |
| | | formData:{ |
| | | type: Object, |
| | | default:()=>{ |
| | | return {} |
| | | } |
| | | } |
| | | }, |
| | | data(){ |
| | | return{ |
| | | tableData: null, |
| | | projectList: [], |
| | | deviceStr: null, |
| | | product:null, |
| | | childrenData: [], |
| | | } |
| | | }, |
| | | created(){ |
| | | this.tableData = this.formData |
| | | console.log("============",this.tableData) |
| | | this.initData() |
| | | // this.initProjectList(this.projectList) |
| | | }, |
| | | methods:{ |
| | | initData(){ |
| | | this.deviceStr = this.tableData.projectName |
| | | this.product = this.tableData.material |
| | | }, |
| | | }, |
| | | watch:{ |
| | | formData(newVal){ |
| | | if(newVal){ |
| | | this.projectList = [] |
| | | console.log(newVal) |
| | | this.tableData = newVal |
| | | this.initData() |
| | | // this.initProjectList(this.projectList) |
| | | } |
| | | } |
| | | }, |
| | | } |
| | | </script> |
| | | |
| | |
| | | } |
| | | }, |
| | | created() { }, |
| | | watch:{ |
| | | printFormData(newVal){ |
| | | if(newVal){ |
| | | this.printFormData = newVal |
| | | } |
| | | } |
| | | }, |
| | | methods: { |
| | | //查看报告按钮 |
| | | // showPrint(row){ |
| | | // queryById(row.id).then(res=>{ |
| | | // console.log(res); |
| | | // this.printFormData = res.data.data |
| | | // this.printDialogVisible = true |
| | | // }) |
| | | // .catch(error=>{ |
| | | // console.log(error); |
| | | // }) |
| | | // }, |
| | | //打印按钮 |
| | | printFun() { |
| | | this.printDialogVisible = false; |
| | |
| | | showPrint(row){ |
| | | queryById(row.id).then(res=>{ |
| | | console.log(res); |
| | | this.printFormData = res.data.data |
| | | this.printDialogVisible = true |
| | | }).catch(error=>{ |
| | | console.log(error); |
| | |
| | | //查看报告按钮 |
| | | previewFun(row){ |
| | | getObj(row.id).then(res=>{ |
| | | console.log(res); |
| | | this.printFormData = res.data.data |
| | | this.printDialogVisible = true |
| | | }).catch(error=>{ |
| | |
| | | this.tableData = this.formData |
| | | this.initData() |
| | | this.initProjectList(this.projectList) |
| | | // console.log("aa--",this.tableData) |
| | | console.log("aa--",this.tableData) |
| | | }, |
| | | watch:{ |
| | | formData(newVal){ |