src/assets/api/controller.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/view/Technicalindex.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/view/rawInsDetail.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/assets/api/controller.js
@@ -48,6 +48,7 @@ rawSelectDevice: "/rawInsProduct/selectDevice", //查询设备信息 addRawInspects: "/rawInspect/addRawInspects", // 添加 updateDevByRpId: "/rawInsProduct/updateDevByRpId", // 更改设备 rawInspectChooseIFS: "/rawInspect/chooseIFS",//通过设备编码得到信息 } //不合格原材料 const unqualifiedaa = { src/components/view/Technicalindex.vue
@@ -7,6 +7,8 @@ <el-button type="primary" icon="el-icon-plus" style="background: #004EA2;" @click="event">新增</el-button> <!-- <el-button icon="el-icon-edit-outline" @click="modify">修改</el-button> --> <el-button icon="el-icon-delete" @click="dels">删除</el-button> <el-button icon="el-icon-download" @click="clickDownload">导出</el-button> <el-button icon="el-icon-upload2">导入</el-button> </el-col> </el-row> </div> @@ -18,7 +20,8 @@ <el-form-item label="类型"> <template> <el-select v-model="value" placeholder="请选择" style="width: 560px;"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </template> @@ -72,7 +75,8 @@ <el-tree :data="list" ref="tree" :props="{children: 'children',label: 'father'}" node-key="name" default-expand-all @node-click="handleNodeClick" highlight-current> <div class="custom-tree-node" slot-scope="{ node, data }"> <span><i :class="`node_i ${data.code != '[2]'?'el-icon-folder-opened':'el-icon-tickets'}`"></i> <span><i :class="`node_i ${data.code != '[2]' ? 'el-icon-folder-opened' : 'el-icon-tickets'}`"></i> {{data.code}} {{ data.name }}</span> </div> </el-tree> @@ -103,7 +107,8 @@ <template slot-scope="scope" style="text-align: center;"> <div v-if="!scope.row.children"> <el-button type="text" size="mini" @click="childrenClick(scope.row)">编辑</el-button> <el-button type="text" size="mini" @click="deleteRow(scope.$index, scope.row)">删除</el-button> <el-button type="text" size="mini" @click="deleteRow(scope.$index, scope.row)">删除</el-button> </div> </template> </el-table-column> @@ -127,9 +132,10 @@ <el-col :span="4" style="font-size: 14px;text-align: right;">工序:</el-col> <el-col :span="16" :offset="1"> <template> <el-select v-model="edit.techFather" placeholder="请选择" allow-create disabled style="width: 306px;" filterable @change="workevent"> <el-option v-for="(item,index) in process" :key="item.name" :label="item.name" :value="item.name"> <el-select v-model="edit.techFather" placeholder="请选择" allow-create disabled style="width: 306px;" filterable @change="workevent"> <el-option v-for="(item, index) in process" :key="item.name" :label="item.name" :value="item.name"> </el-option> </el-select> </template> @@ -139,9 +145,10 @@ <el-col :span="4" style="font-size: 14px;text-align: right;">工艺:</el-col> <el-col :span="16" :offset="1"> <template> <el-select v-model="edit.techName" placeholder="请选择" disabled style="width: 306px;" allow-create filterable> <el-option v-for="item in craftapi" :key="item.id" :label="item.name" :value="item.id"> <el-select v-model="edit.techName" placeholder="请选择" disabled style="width: 306px;" allow-create filterable> <el-option v-for="item in craftapi" :key="item.id" :label="item.name" :value="item.id"> </el-option> </el-select> </template> @@ -189,8 +196,8 @@ <el-form-item label="工序"> <template> <el-select v-model="form.work" placeholder="请选择" @change="workevent"> <el-option v-for="(item,index) in process" :key="item.name" :label="item.name" :value="item.name"> <el-option v-for="(item, index) in process" :key="item.name" :label="item.name" :value="item.name"> </el-option> </el-select> </template> @@ -199,8 +206,10 @@ <el-col :span="11" :offset="2"> <el-form-item label="工艺"> <template> <el-select v-model="form.name" style="width: 95%;" placeholder="请选择" @change="craftrow"> <el-option v-for="item in craftapi" :key="item.id" :label="item.name" :value="item.id"> <el-select v-model="form.name" style="width: 95%;" placeholder="请选择" @change="craftrow"> <el-option v-for="item in craftapi" :key="item.id" :label="item.name" :value="item.id"> </el-option> </el-select> </template> @@ -211,8 +220,10 @@ <el-col :span="11"> <el-form-item label="项目组"> <template> <el-select v-model="form.father" placeholder="请选择" allow-create filterable @create="electadd"> <el-option v-for="item in higherlevel" :key="item" :label="item" :value="item"> <el-select v-model="form.father" placeholder="请选择" allow-create filterable @create="electadd"> <el-option v-for="item in higherlevel" :key="item" :label="item" :value="item"> </el-option> </el-select> </template> @@ -231,6 +242,20 @@ <span slot="footer" class="dialog-footer"> <el-button @click="dialogVisible = false">取 消</el-button> <el-button type="primary" @click="add">确 定</el-button> </span> </el-dialog> </div> <div> <el-dialog title="导出类型选择" :visible.sync="isDownload" width="30%"> <el-col> 请选择类型: </el-col> <el-select v-model="downloadTypeSelect" style="width: 100%;margin-top: 10px;" placeholder="请选择"> <el-option v-for="(a, ai) in typeTable" :key="ai" :value="a"></el-option> </el-select> <span slot="footer" class="dialog-footer"> <el-button @click="isDownload = false">取 消</el-button> <el-button type="primary" @click="downloadSelect">确 定</el-button> </span> </el-dialog> </div> @@ -265,6 +290,9 @@ children: [], modifyevent: false, dialogVisible: false, isDownload: false,//导出按钮 downloadTypeSelect: null, typeTable: [], tableData: [], crafval: '', typeselect: 0, @@ -287,6 +315,19 @@ this.chooseType() }, methods: { clickDownload() { this.isDownload = true this.typeTable = [] let data=JSON.parse(JSON.stringify(this.bigType)) data.unshift("全部") this.typeTable=data }, downloadSelect() { console.log(this.downloadTypeSelect); }, handleSelectionChange() { }, chooseType() { this.$axios.get(this.$api.url.chooseType).then(res => { this.bigType = res.data @@ -331,7 +372,6 @@ }, //递归子级 toggleSelect(data, flag, type) { // console.log('222'); if (type === "all") { if (data.length > 0) { data.forEach((item) => { @@ -377,7 +417,6 @@ } }).then(res => { this.edit = res.data[0] console.log(this.edit); }) }, childrenClick(val) { @@ -386,7 +425,6 @@ this.upDia = true }, writeTechByIdskill() { // console.log(this.upData.id); this.$axios.post(this.$api.url.writeTechByIdskill + '?id=' + this.upData.id, { name: this.edit.name, father: this.edit.father, @@ -407,7 +445,6 @@ }, //删除 delTechBy() { console.log(this.$api.url.delTechBy, this.upData.id); this.$axios.post(this.$api.url.delTechBy, { id: this.upData.id }).then(res => { @@ -432,9 +469,7 @@ }) }, dels() { let ee = [] console.log(this.selects); this.selects.forEach(el => { if (el.children) { el.children.forEach(ele => { @@ -444,7 +479,6 @@ }) // cc.splice(0,1) this.delete = ee.join(',') console.log(this.delete); this.delAllTechskill() this.$message.success('删除完成') }, @@ -454,7 +488,6 @@ this.form = {}; }, electadd(value) { console.log(value); this.higherlevel.push({}); this.form.father = value; }, @@ -476,7 +509,6 @@ }, TYpe(val) { this.typeselect = val console.log(this.typeselect); this.selectAllleft() }, edittype(val) { @@ -492,7 +524,6 @@ } }).then(res => { this.list = res.data; console.log(this.list); this.selectDataList() this.$nextTick(() => { this.$refs.tree.setCurrentKey(this.list[0].children[0].name) // 默认选中节点第一个 @@ -500,10 +531,8 @@ let one = this.list.filter(item => { return item.children.length > 0 })[0] console.log(one); let name = one.children[0].id this.checkTreeNode.id = name console.log(name); this.selectAllrightStart(name) this.selectDataList(); }); @@ -515,7 +544,6 @@ } }).then(res => { this.tableData = res.data; console.log(this.tableData); }); }, // @@ -531,7 +559,6 @@ } }).then(res => { this.tableData = res.data; console.log(this.tableData); }); }, craftrow(val) { @@ -540,14 +567,12 @@ }, //上级 chooseProFath() { console.log(this.checkTreeNode.id); this.$axios.get(this.$api.url.chooseProFath, { params: { techTemId: this.crafval } }).then(res => { this.higherlevel = res.data; console.log(this.higherlevel); }, { headers: { "Content-Type": "application/json" @@ -562,7 +587,6 @@ } }).then(res => { this.process = res.data; console.log(this.process); }, { headers: { "Content-Type": "application/json" @@ -570,14 +594,12 @@ }) }, workevent(val) { console.log(val); let idx = this.process.findIndex(el => el.name === val) this.craftapi = this.process[idx].children }, handleNodeClick(data) { this.checkTreeNode = data console.log(this.checkTreeNode.id); this.selectAllright() }, event() { src/components/view/rawInsDetail.vue
@@ -6,8 +6,7 @@ <el-col :span="12" style="text-align: right;"> <el-button icon="el-icon-circle-plus-outline" v-show="detailId === null" @click="addNewRawInspect" style="background-color: #004ea2; color: #ffffff;">提 交</el-button> <el-button icon="el-icon-back" @click=" () => { <el-button icon="el-icon-back" @click="() => { goBack(); } ">返 回</el-button> @@ -19,7 +18,8 @@ <el-row> <el-col :span="7"> <el-form-item label="来料日期:"> <el-input v-if="detailId !== null" :disabled="detailId !== null" v-model="detailInfo.formTime"></el-input> <el-input v-if="detailId !== null" :disabled="detailId !== null" v-model="detailInfo.formTime"></el-input> <el-date-picker v-else type="date" value-format="yyyy-MM-dd" v-model="detailInfo.formTime" placeholder="选择日期"> </el-date-picker> @@ -27,12 +27,15 @@ </el-col> <el-col :span="7"> <el-form-item label="原材料名称:"> <el-input v-if="detailId !== null" :disabled="detailId !== null" v-model="detailInfo.name"></el-input> <el-input v-else v-model="detailInfo.name" placeholder="请输入原材料名称"></el-input> </el-form-item></el-col> <el-input v-if="detailId !== null" :disabled="detailId !== null" v-model="detailInfo.name"></el-input> <el-input v-else v-model="detailInfo.name" placeholder="请输入原材料名称"></el-input> </el-form-item></el-col> <el-col :span="7"> <el-form-item label="原材料编码:"> <el-input v-if="detailId !== null" :disabled="detailId !== null" v-model="detailInfo.code"></el-input> <el-input v-else v-model="detailInfo.code" placeholder="请输入原材料编码"></el-input> <el-input v-if="detailId !== null" :disabled="detailId !== null" v-model="detailInfo.code"></el-input> <el-input @blur="blurCode" v-else v-model="detailInfo.code" placeholder="请输入原材料编码"></el-input> </el-form-item> </el-col> </el-row> @@ -46,8 +49,10 @@ </el-col> <el-col :span="7"> <el-form-item label="单位:"> <el-input v-if="detailId !== null" :disabled="detailId !== null" v-model="detailInfo.runit"></el-input> <el-input v-else placeholder="请输入检验单位" :disabled="detailId !== null" v-model="detailInfo.unit"></el-input> <el-input v-if="detailId !== null" :disabled="detailId !== null" v-model="detailInfo.runit"></el-input> <el-input v-else placeholder="请输入检验单位" :disabled="detailId !== null" v-model="detailInfo.unit"></el-input> </el-form-item> </el-col> <el-col :span="7"> @@ -82,7 +87,8 @@ <el-col :span="12" style="line-height: 32px;">检验项目</el-col> <el-col :span="12" style="line-height: 32px; padding-top: 6px;"> <el-button style="float: right;" @click="clickDeleteInspectionColumn()">删除检验值列</el-button> <el-button style="float: right;margin-right: 30px;" @click="clickAddInspectionColumn()">添加检验值列</el-button> <el-button style="float: right;margin-right: 30px;" @click="clickAddInspectionColumn()">添加检验值列</el-button> <el-button v-if="detailId == null" style="float: right;margin-right: 30px;" @click="clickAddLine()">添加检验行</el-button> </el-col> @@ -94,7 +100,9 @@ </el-table-column> <el-table-column prop="rpName" label="项目" width="212"> <template slot-scope="scope"> <el-input v-if="detailId == null" v-model="scope.row.name" placeholder="请输入项目名称"></el-input> <!-- <el-input v-if="detailId == null" v-model="scope.row.name" placeholder="请输入项目名称"></el-input> --> <el-autocomplete v-if="detailId == null" class="inline-input" v-model="scope.row.name" :fetch-suggestions="querySearch" placeholder="请输入项目名称" @select="handleSelect(scope.row)" @blur="handleSelect(scope.row)"></el-autocomplete> <el-input v-else v-model="scope.row.rpName" disabled></el-input> </template> </el-table-column> @@ -159,8 +167,8 @@ <el-table-column prop="name" label="物料名称"> </el-table-column> <el-table-column v-if="detailId != null" prop="uName" label="检验员"> <template slot-scope="scope"> <span v-for="item in scope.row.uName" :key="item && item.uName" :style="{ marginRight: '8px' }">{{ item }}</span> <span v-for="item in scope.row.uName" :key="item && item.uName" :style="{ marginRight: '8px' }">{{ item }}</span> </template> </el-table-column> <el-table-column prop="testState" label="检验结论"> @@ -182,12 +190,10 @@ <div class="div_device_dialog"> <el-input placeholder="输入关键字进行过滤" v-model="filterText" style="margin-bottom: 6px;"> </el-input> <el-tree class="filter-tree" :data="materialOptions" :props="defaultProps" default-expand-all highlight-current @node-click="nodeClick" :filter-node-method="filterNode" ref="tree"> <el-tree class="filter-tree" :data="materialOptions" :props="defaultProps" default-expand-all highlight-current @node-click="nodeClick" :filter-node-method="filterNode" ref="tree"> <div class="custom-tree-node" slot-scope="{ data }"> <span><i :class=" `node_i ${ data.children ? 'el-icon-folder-opened' : 'el-icon-tickets' <span><i :class="`node_i ${data.children ? 'el-icon-folder-opened' : 'el-icon-tickets' }` "></i> {{ data.name }}</span> @@ -244,6 +250,8 @@ centerDialogVisible: false, // 详情页就是详情信息 detailInfo: {}, //产品信息 ifsInfo: {}, // 表格 projectTable: [], // 新建检验单参数对象 @@ -261,7 +269,8 @@ clickSelectDevice: { index: "", // 点击选择存储当前行索引 rpId: "" // 点击选择存储当前行项目Id } }, restaurants: [] }; }, watch: { @@ -270,6 +279,56 @@ } }, methods: { blurCode() { // this.detailId=10 let data = { code: this.detailInfo.code } console.log(data); this.$axios.post( this.$api.url.rawInspectChooseIFS, { code: this.detailInfo.code } ).then(res => { this.ifsInfo = res.data console.log("ifs", this.ifsInfo); this.$set(this.detailInfo, "formTime", this.ifsInfo.formTime) this.detailInfo.formTime = this.ifsInfo.formTime this.detailInfo.name = this.ifsInfo.name this.detailInfo.supplier = this.ifsInfo.supplier this.detailInfo.unit = this.ifsInfo.unit this.detailInfo.userName = this.ifsInfo.userName this.detailInfo.number = this.ifsInfo.number this.detailInfo.specifications = this.ifsInfo.specifications this.restaurants = JSON.parse(JSON.stringify(this.ifsInfo.rawInsProducts)) this.restaurants.forEach(item=>{ this.$set(item,"value",item.name) }) console.log("restaurants",this.restaurants); }) }, querySearch(queryString, cb) { var restaurants = this.restaurants; var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants; // 调用 callback 返回建议列表的数据 cb(results); }, createFilter(queryString) { return (restaurant) => { return (restaurant.value.toLowerCase().indexOf(queryString.toLowerCase()) === 0); }; }, handleSelect(row) { let select=this.restaurants.filter(item=>{ return item.name===row.name })[0] if(select!=undefined){ this.$set(row,"internal",select.internal) this.$set(row,"required",select.required) this.$set(row,"unit",select.unit) //检验值 } }, assertTest(row) { // let fuArr=['>', '<', '='] // if(!fuArr.includes(row.required[0])){ src/main.js
@@ -23,7 +23,7 @@ Vue.use(qs); Vue.use(api); const javaApi = 'http://192.168.14.249:8001' const javaApi = 'http://127.0.0.1:8001' // const javaApi = 'http://127.0.0.1:8001/'