Browse Source

2024-07-23

master
qiezi 1 year ago
parent
commit
ae12a0d83b
  1. 2
      src/api/code/codeParameterDef.js
  2. 77
      src/views/modules/code/generation.vue
  3. 21
      src/views/modules/code/item/itemValue.vue
  4. 56
      src/views/modules/code/list.vue

2
src/api/code/codeParameterDef.js

@ -3,3 +3,5 @@ import {createAPI} from "../../utils/httpRequest";
export const searchCodeParameter = (data) => createAPI("/code/parameter/list", "post", data);
export const saveCodeParameter = (data) => createAPI("/code/parameter/edit", "post", data);
export const searchCodeParameterById = (data) => createAPI(`/code/parameter/${data}`, "post");
export const queryCodeErpPartNo = (data) => createAPI("/code/drawing/erp/part", "post", data);

77
src/views/modules/code/generation.vue

@ -3,7 +3,7 @@ import {searchCodeItemAllDefsSeq, searchCodeItemDefs, searchCodeItemDefsSeq} fro
import {searchCodeGenerationItemValueList} from "../../../api/code/codeItemValue";
import {codeNoGenerate, saveDrawing} from "../../../api/code/codeDrawing";
import dayjs from "dayjs";
import {searchCodeParameterById} from "../../../api/code/codeParameterDef";
import {queryCodeErpPartNo, searchCodeParameterById} from "../../../api/code/codeParameterDef";
import itemValue from "./item/itemValue.vue";
export default {
@ -28,6 +28,8 @@ export default {
drawingNo: "",
drawingNoNew: "",
drawingDesc: "",
erpPartNo: "",
erpPartDesc: "",
remark: "",
seqFlag: "N",
},
@ -38,6 +40,13 @@ export default {
checkCodeFlag:'N',
getCodeNoLoading: false,
saveCodeLoading: false,
rules:{
drawingNo: [{ required: true, message: '请输入编码', trigger: 'blur' }],
erpPartNo: [{ required: true, message: '请输入IFS Part No', trigger: 'blur' }],
erpPartDesc: [{ required: true, message: '请输入IFS Part Descriptions', trigger: 'blur' }],
drawingDesc: [{ required: true, message: '请输入编码描述', trigger: 'blur' }],
remark: [{ required: true, message: '请输入编码备注', trigger: 'blur' }],
}
}
},
created() {
@ -135,7 +144,12 @@ export default {
codeNoGenerate(params){
codeNoGenerate(params).then(({data})=>{
if (data && data.code === 0){
this.searchModel = {...data.row}
this.searchModel = {
...this.searchModel,
drawingNo: data.row.drawingNo,
drawingDesc: data.row.drawingDesc,
remark: data.row.remark,
}
}else {
this.$message.warning(data.msg)
}
@ -154,7 +168,7 @@ export default {
},
changeCodeItemValue(index,val){
let codeItemDef = this.codeItemDefs[index]
if (val === true && codeItemDef.itemByCondition === 'Y' && !this.codeItemValues[index]){
if (val === true && codeItemDef.itemByCondition === 'Y'){
if (index === 0){
this.$message.warning("请先检查该元素的定义可选值设置中是否都已经维护了条件!")
}else {
@ -205,6 +219,8 @@ export default {
}
},
saveDrawing(){
this.$refs.drawingForm.validate((valid,obj)=>{
if (valid){
let params = {
...this.searchModel,
site:this.$store.state.user.site,
@ -232,6 +248,17 @@ export default {
}).catch((error) => {
this.$message.error(error);
})
}else {
let i = 1;
for (let key in obj) {
this.$message.error(`${obj[key][0].message}`);
if (i === 1){
return
}
i++;
}
}
})
},
searchCodeParameterById(){
searchCodeParameterById(11).then(({data})=>{
@ -244,34 +271,58 @@ export default {
this.$message.error(error)
})
},
searchDrawingNo(){
if (!this.searchModel.drawingNo){
this.$message.warning("请先获取编码!")
return
handleBlurErpPartNo(){
let params = {
erpPartNo:this.searchModel.erpPartNo,
}
//
queryCodeErpPartNo(params).then(({data})=>{
if (data && data.code === 0){
if (data.row){
this.searchModel.erpPartDesc = data.row.partDesc
}else {
this.searchModel.erpPartDesc = ''
}
}else {
this.$message.warning(data.msg)
}
}).catch((error)=>{
this.$message.error(error)
})
}
},
watch:{
'searchModel.erpPartNo'(newVal,oldVal){
this.searchModel.erpPartNo = newVal.toUpperCase()
}
}
}
</script>
<template>
<div>
<el-form :model="searchModel" label-position="top">
<el-form :model="searchModel" ref="drawingForm" :rules="rules" label-position="top">
<el-row :gutter="20">
<el-col :span="6">
<el-form-item label="编码:">
<el-form-item label="编码:" prop="drawingNo" :show-message="false">
<el-input readonly v-model="searchModel.drawingNo"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="3">
<el-form-item label=" ">
<!-- <el-button type="primary" @click="searchDrawingNo">查询编码</el-button>-->
<el-button type="primary" :loading="getCodeNoLoading" @click="getCodeNoBtn">获取编码</el-button>
<el-button type="primary" :loading="saveCodeLoading" @click="saveDrawing">占有编码</el-button>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="IFS Part No" prop="erpPartNo" :show-message="false">
<el-input v-model="searchModel.erpPartNo" @blur="handleBlurErpPartNo"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="IFS Part Description" prop="erpPartDesc" :show-message="false">
<el-input v-model="searchModel.erpPartDesc" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="编码描述:">
<el-input readonly v-model="searchModel.drawingDesc"></el-input>

21
src/views/modules/code/item/itemValue.vue

@ -145,10 +145,13 @@ export default {
this.$message.error(error)
})
},
searchConditionHeader(){
searchConditionHeader(flag){
searchCodeConditionHeaderList(this.itemValue).then(({data})=>{
if (data && data.code === 0){
this.conditionHeaders = data.rows
this.conditionHeaders = data.rows;
if (flag){
this.conditionHeaderIndex = this.conditionHeaders.length - 1;
}
}else {
this.$message.warning(data.msg)
}
@ -187,7 +190,7 @@ export default {
if (data && data.code === 0){
this.$message.success(data.msg)
this.saveConditionHeaderFlag = false
this.searchConditionHeader()
this.searchConditionHeader(true)
}else {
this.$message.warning(data.msg)
}
@ -676,13 +679,19 @@ export default {
</el-dialog>
<el-dialog title="元素可选值快速输入" v-drag :close-on-click-modal="false" :visible.sync="saveItemValueListDialog" append-to-body width="520px">
<el-form :inline="true" label-position="top" style="margin-bottom: 10px">
<el-form label-position="top" style="margin-bottom: 10px">
<el-row :gutter="10">
<el-col :span="6">
<el-form-item label="元素">
<el-input v-model="itemValue.itemDesc" readonly style="width: 120px"></el-input>
<el-input v-model="itemValue.itemDesc" readonly ></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="条件描述">
<el-input v-if="conditionHeaders.length > 0" v-model="conditionHeaders[conditionHeaderIndex].conditionDesc" readonly style="width: 120px"></el-input>
<el-input v-if="conditionHeaders.length > 0" v-model="conditionHeaders[conditionHeaderIndex].conditionDesc" readonly ></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<!--表格形式-->
<el-transfer class="rq" :props="{key: 'valueItemNo',label: 'itemValue' }"

56
src/views/modules/code/list.vue

@ -13,6 +13,8 @@ export default {
creator:undefined,
drawingDesc:undefined,
remark:undefined,
erpPartNo:undefined,
erpPartDesc:undefined,
startDate:"",
endDate:"",
},
@ -92,47 +94,73 @@ export default {
<template>
<div>
<el-form :inline="true" label-position="top" :model="searchModel">
<el-form label-position="top" :model="searchModel">
<el-row :gutter="10">
<el-col :span="3">
<el-form-item label="编码:">
<el-input v-model="searchModel.drawingNo" style="width: 200px"></el-input>
<el-input v-model="searchModel.drawingNo"></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="编码描述:">
<el-input v-model="searchModel.drawingDesc" style="width: 200px"></el-input>
<el-input v-model="searchModel.drawingDesc" ></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="备注:">
<el-input v-model="searchModel.remark" style="width: 200px"></el-input>
<el-input v-model="searchModel.remark" ></el-input>
</el-form-item>
<br>
</el-col>
<el-col :span="3">
<el-form-item label="创建人:">
<el-input v-model="searchModel.creator" style="width: 150px"></el-input>
<el-input v-model="searchModel.creator" ></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="10">
<el-col :span="3">
<el-form-item label="IFS Part No:">
<el-input v-model="searchModel.erpPartNo" ></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="IFS Part Description:">
<el-input v-model="searchModel.erpPartDesc" ></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="开始日期:">
<el-date-picker
value-format="yyyy-MM-dd HH:mm:ss"
v-model="searchModel.startDate"
style="width: 150px"
style="width: 100%"
type="date"
placeholder="开始日期">
</el-date-picker>
</el-form-item>
<el-form-item label=" ">
<div style="text-align: center;"><i class="el-icon-right"></i></div>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="结束日期:">
<el-date-picker value-format="yyyy-MM-dd HH:mm:ss" v-model="searchModel.endDate" style="width: 150px" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker value-format="yyyy-MM-dd HH:mm:ss" v-model="searchModel.endDate" style="width: 100%" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label=" ">
<el-button type="primary" @click="searchDrawingList">搜索</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-table :data="drawingList" height="750" border style="width: 100%">
<el-table-column prop="drawingNo" header-align="center" width="140" align="left" label="编码"></el-table-column>
<el-table-column prop="drawingDesc" show-overflow-tooltip header-align="center" align="left" label="编码描述"></el-table-column>
<el-table-column prop="drawingDesc" show-overflow-tooltip width="600" header-align="center" align="left" label="编码描述"></el-table-column>
<el-table-column prop="erpPartNo" show-overflow-tooltip width="150" header-align="center" align="left" label="IFS Part No"></el-table-column>
<el-table-column prop="erpPartDesc" show-overflow-tooltip width="180" header-align="center" align="left" label="IFS Part Description"></el-table-column>
<el-table-column prop="creator" header-align="center" width="100" align="left" label="创建人"></el-table-column>
<el-table-column prop="createDate" header-align="center" width="130" align="center" label="创建时间"></el-table-column>
<el-table-column prop="remark" show-overflow-tooltip header-align="center" align="left" label="备注"></el-table-column>
<el-table-column header-align="center" width="140" align="center" label="操作">
<el-table-column prop="remark" show-overflow-tooltip width="600" header-align="center" align="left" label="备注"></el-table-column>
<el-table-column header-align="center" width="140" align="center" fixed="right" label="操作">
<template slot-scope="{row}">
<el-link style="cursor:pointer;" type="text" @click="handleEdit(row)">编辑</el-link>
<el-link style="cursor:pointer;" type="text" @click="handleDelete(row)">删除</el-link>

Loading…
Cancel
Save