Browse Source

2024-07-23

master
qiezi 1 year ago
parent
commit
ae12a0d83b
  1. 2
      src/api/code/codeParameterDef.js
  2. 123
      src/views/modules/code/generation.vue
  3. 29
      src/views/modules/code/item/itemValue.vue
  4. 98
      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 searchCodeParameter = (data) => createAPI("/code/parameter/list", "post", data);
export const saveCodeParameter = (data) => createAPI("/code/parameter/edit", "post", data); export const saveCodeParameter = (data) => createAPI("/code/parameter/edit", "post", data);
export const searchCodeParameterById = (data) => createAPI(`/code/parameter/${data}`, "post"); export const searchCodeParameterById = (data) => createAPI(`/code/parameter/${data}`, "post");
export const queryCodeErpPartNo = (data) => createAPI("/code/drawing/erp/part", "post", data);

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

@ -3,7 +3,7 @@ import {searchCodeItemAllDefsSeq, searchCodeItemDefs, searchCodeItemDefsSeq} fro
import {searchCodeGenerationItemValueList} from "../../../api/code/codeItemValue"; import {searchCodeGenerationItemValueList} from "../../../api/code/codeItemValue";
import {codeNoGenerate, saveDrawing} from "../../../api/code/codeDrawing"; import {codeNoGenerate, saveDrawing} from "../../../api/code/codeDrawing";
import dayjs from "dayjs"; import dayjs from "dayjs";
import {searchCodeParameterById} from "../../../api/code/codeParameterDef";
import {queryCodeErpPartNo, searchCodeParameterById} from "../../../api/code/codeParameterDef";
import itemValue from "./item/itemValue.vue"; import itemValue from "./item/itemValue.vue";
export default { export default {
@ -28,6 +28,8 @@ export default {
drawingNo: "", drawingNo: "",
drawingNoNew: "", drawingNoNew: "",
drawingDesc: "", drawingDesc: "",
erpPartNo: "",
erpPartDesc: "",
remark: "", remark: "",
seqFlag: "N", seqFlag: "N",
}, },
@ -38,6 +40,13 @@ export default {
checkCodeFlag:'N', checkCodeFlag:'N',
getCodeNoLoading: false, getCodeNoLoading: false,
saveCodeLoading: 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() { created() {
@ -135,7 +144,12 @@ export default {
codeNoGenerate(params){ codeNoGenerate(params){
codeNoGenerate(params).then(({data})=>{ codeNoGenerate(params).then(({data})=>{
if (data && data.code === 0){ 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 { }else {
this.$message.warning(data.msg) this.$message.warning(data.msg)
} }
@ -154,7 +168,7 @@ export default {
}, },
changeCodeItemValue(index,val){ changeCodeItemValue(index,val){
let codeItemDef = this.codeItemDefs[index] let codeItemDef = this.codeItemDefs[index]
if (val === true && codeItemDef.itemByCondition === 'Y' && !this.codeItemValues[index]){
if (val === true && codeItemDef.itemByCondition === 'Y'){
if (index === 0){ if (index === 0){
this.$message.warning("请先检查该元素的定义可选值设置中是否都已经维护了条件!") this.$message.warning("请先检查该元素的定义可选值设置中是否都已经维护了条件!")
}else { }else {
@ -205,32 +219,45 @@ export default {
} }
}, },
saveDrawing(){ saveDrawing(){
let params = {
...this.searchModel,
site:this.$store.state.user.site,
creator:this.$store.state.user.name,
createDate:dayjs().format('YYYY-MM-DD HH:mm:ss'),
}
this.saveCodeLoading = true;
saveDrawing(params).then(({data})=>{
if (data && data.code === 0){
this.$alert(`成功获取并保存了编码${this.searchModel.drawingNo}`, '提示', {
confirmButtonText: '确定',
});
Object.keys(this.searchModel).forEach(key => {
this.$set(this.searchModel, key, '')
})
for (let i = 0; i < this.codeItemDefs.length; i++) {
this.$set(this.codeItemValues, i, undefined)
this.$refs.drawingForm.validate((valid,obj)=>{
if (valid){
let params = {
...this.searchModel,
site:this.$store.state.user.site,
creator:this.$store.state.user.name,
createDate:dayjs().format('YYYY-MM-DD HH:mm:ss'),
} }
this.saveCodeLoading = false;
this.searchCodeItemDefs();
this.saveCodeLoading = true;
saveDrawing(params).then(({data})=>{
if (data && data.code === 0){
this.$alert(`成功获取并保存了编码${this.searchModel.drawingNo}`, '提示', {
confirmButtonText: '确定',
});
Object.keys(this.searchModel).forEach(key => {
this.$set(this.searchModel, key, '')
})
for (let i = 0; i < this.codeItemDefs.length; i++) {
this.$set(this.codeItemValues, i, undefined)
}
this.saveCodeLoading = false;
this.searchCodeItemDefs();
}else {
this.saveCodeLoading = false;
this.$message.warning(data.msg)
}
}).catch((error) => {
this.$message.error(error);
})
}else { }else {
this.saveCodeLoading = false;
this.$message.warning(data.msg)
let i = 1;
for (let key in obj) {
this.$message.error(`${obj[key][0].message}`);
if (i === 1){
return
}
i++;
}
} }
}).catch((error) => {
this.$message.error(error);
}) })
}, },
searchCodeParameterById(){ searchCodeParameterById(){
@ -244,34 +271,58 @@ export default {
this.$message.error(error) 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> </script>
<template> <template>
<div> <div>
<el-form :model="searchModel" label-position="top">
<el-form :model="searchModel" ref="drawingForm" :rules="rules" label-position="top">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="6"> <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-input readonly v-model="searchModel.drawingNo"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8">
<el-col :span="3">
<el-form-item label=" "> <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="getCodeNoLoading" @click="getCodeNoBtn">获取编码</el-button>
<el-button type="primary" :loading="saveCodeLoading" @click="saveDrawing">占有编码</el-button> <el-button type="primary" :loading="saveCodeLoading" @click="saveDrawing">占有编码</el-button>
</el-form-item> </el-form-item>
</el-col> </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-col :span="24">
<el-form-item label="编码描述:"> <el-form-item label="编码描述:">
<el-input readonly v-model="searchModel.drawingDesc"></el-input> <el-input readonly v-model="searchModel.drawingDesc"></el-input>

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

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

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

@ -13,6 +13,8 @@ export default {
creator:undefined, creator:undefined,
drawingDesc:undefined, drawingDesc:undefined,
remark:undefined, remark:undefined,
erpPartNo:undefined,
erpPartDesc:undefined,
startDate:"", startDate:"",
endDate:"", endDate:"",
}, },
@ -92,47 +94,73 @@ export default {
<template> <template>
<div> <div>
<el-form :inline="true" label-position="top" :model="searchModel">
<el-form-item label="编码:">
<el-input v-model="searchModel.drawingNo" style="width: 200px"></el-input>
</el-form-item>
<el-form-item label="编码描述:">
<el-input v-model="searchModel.drawingDesc" style="width: 200px"></el-input>
</el-form-item>
<el-form-item label="备注:">
<el-input v-model="searchModel.remark" style="width: 200px"></el-input>
</el-form-item>
<br>
<el-form-item label="创建人:">
<el-input v-model="searchModel.creator" style="width: 150px"></el-input>
</el-form-item>
<el-form-item label="开始日期:">
<el-date-picker
value-format="yyyy-MM-dd HH:mm:ss"
v-model="searchModel.startDate"
style="width: 150px"
type="date"
placeholder="开始日期">
<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"></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="编码描述:">
<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" ></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="创建人:">
<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: 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-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-form-item>
<el-form-item label=" ">
<el-button type="primary" @click="searchDrawingList">搜索</el-button>
</el-form-item>
</el-date-picker>
</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: 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-form>
<el-table :data="drawingList" height="750" border style="width: 100%"> <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="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="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="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}"> <template slot-scope="{row}">
<el-link style="cursor:pointer;" type="text" @click="handleEdit(row)">编辑</el-link> <el-link style="cursor:pointer;" type="text" @click="handleEdit(row)">编辑</el-link>
<el-link style="cursor:pointer;" type="text" @click="handleDelete(row)">删除</el-link> <el-link style="cursor:pointer;" type="text" @click="handleDelete(row)">删除</el-link>

Loading…
Cancel
Save