parent
aa8def0782
commit
3cf26c95a7
@ -0,0 +1,295 @@
|
|||||||
|
<template>
|
||||||
|
<lay-container class="content-box" :style="'padding-top:'+(editType!=1?0:35)+'px'">
|
||||||
|
<view class="edit-box">
|
||||||
|
<lay-form :model="searchObj" class="search-box edit-info">
|
||||||
|
<lay-row class="color666">
|
||||||
|
<lay-form-item label="物料号" prop="FCode">
|
||||||
|
<lay-input v-model="searchObj.FCode"></lay-input>
|
||||||
|
</lay-form-item>
|
||||||
|
<lay-form-item label="试验号" prop="FTestCode">
|
||||||
|
<lay-input v-model="searchObj.FTestCode"></lay-input>
|
||||||
|
</lay-form-item>
|
||||||
|
<lay-form-item label="物料描述" prop="FName">
|
||||||
|
<lay-input v-model="searchObj.FName"></lay-input>
|
||||||
|
</lay-form-item>
|
||||||
|
<lay-form-item label="产品分类" prop="FType">
|
||||||
|
<lay-select v-model="searchObj.FType">
|
||||||
|
<lay-select-option v-for="(tIdv,tIdx) in typeListObj" :key="tIdx" :value="tIdv.FValue"
|
||||||
|
:label="tIdv.FName"></lay-select-option>
|
||||||
|
</lay-select>
|
||||||
|
</lay-form-item>
|
||||||
|
<lay-form-item v-if="editType != 1"></lay-form-item>
|
||||||
|
</lay-row>
|
||||||
|
<lay-form-item class="search-btn">
|
||||||
|
<lay-button size="sm" type="primary" @click="_clickSearch">搜索</lay-button>
|
||||||
|
<lay-button size="sm" @click="_clickReset">重置</lay-button>
|
||||||
|
</lay-form-item>
|
||||||
|
</lay-form>
|
||||||
|
<lay-form :model="objInfo" class="search-box edit-info color999">
|
||||||
|
<lay-form-item label="主物料号" prop="FCode">
|
||||||
|
<lay-input :disabled="isDisabled" v-model="objInfo.FCode"></lay-input>
|
||||||
|
</lay-form-item>
|
||||||
|
<lay-form-item label="主物料描述" prop="FName">
|
||||||
|
<lay-input :disabled="isDisabled" v-model="objInfo.FName" type="FName"></lay-input>
|
||||||
|
</lay-form-item>
|
||||||
|
<lay-form-item :label=" editType == 1 ? '替代料物料号' : '副产物物料号' ">
|
||||||
|
<lay-input :disabled="isDisabled" v-model="objInfo.choseData.FCode"></lay-input>
|
||||||
|
</lay-form-item>
|
||||||
|
<lay-form-item :label=" editType == 1 ? '替代料描述' : '副产物描述' ">
|
||||||
|
<lay-input :disabled="isDisabled" v-model="objInfo.choseData.FName"></lay-input>
|
||||||
|
</lay-form-item>
|
||||||
|
<lay-form-item v-if="editType != 1" label="副产物数量">
|
||||||
|
<lay-input v-model="objInfo.choseData.FCount"></lay-input>
|
||||||
|
</lay-form-item>
|
||||||
|
<lay-form-item v-if="editType != 1" label="副产物单位">
|
||||||
|
<lay-input v-model="objInfo.choseData.FUnit"></lay-input>
|
||||||
|
</lay-form-item>
|
||||||
|
<lay-form-item class="search-btn">
|
||||||
|
<lay-button size="sm" type="danger" @click="submitClick">确定</lay-button>
|
||||||
|
<lay-button size="sm" @click="cancelClick">取消</lay-button>
|
||||||
|
</lay-form-item>
|
||||||
|
</lay-form>
|
||||||
|
</view>
|
||||||
|
<view class="edit-box">
|
||||||
|
<lay-table :class=" 'empty-small' + editType " :columns="dataColumn" id="id" :dataSource="dataList"
|
||||||
|
v-model:selected-key="selectedKey" :page="dataList.length>0?pageInfo:null" @change="changePage">
|
||||||
|
</lay-table>
|
||||||
|
</view>
|
||||||
|
</lay-container>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.content-box {
|
||||||
|
height: 744px;
|
||||||
|
display: block;
|
||||||
|
position: relative;
|
||||||
|
clear: both;
|
||||||
|
float: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.edit-box {
|
||||||
|
display: block;
|
||||||
|
width: 99%;
|
||||||
|
text-align: center;
|
||||||
|
margin: 0 auto;
|
||||||
|
clear: both;
|
||||||
|
float: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.edit-info {
|
||||||
|
margin: 20px 0 10px;
|
||||||
|
width: 47%;
|
||||||
|
padding-left: 1%;
|
||||||
|
padding-right: 1%;
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 0.75%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.edit-info+.edit-info {
|
||||||
|
margin-left: 0.75%;
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layui-form-item {
|
||||||
|
margin-bottom: 16px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script>
|
||||||
|
import {
|
||||||
|
ref,
|
||||||
|
watch
|
||||||
|
} from 'vue';
|
||||||
|
import {
|
||||||
|
updateDataInfo,
|
||||||
|
getPageList
|
||||||
|
} from "/src/api/api/common";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
setup() {
|
||||||
|
const objInfo = ref({
|
||||||
|
choseData: {
|
||||||
|
FName: "",
|
||||||
|
FType: "",
|
||||||
|
FCode: ""
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const postData = ref({});
|
||||||
|
|
||||||
|
const pageInfo = ref({
|
||||||
|
total: 0,
|
||||||
|
limit: 5,
|
||||||
|
current: 1
|
||||||
|
});
|
||||||
|
let dataColumn = [{
|
||||||
|
type: "radio"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "物料号",
|
||||||
|
key: "FCode",
|
||||||
|
width: "200px"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "试验号",
|
||||||
|
key: "FTestCode",
|
||||||
|
width: "200px"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "物料描述",
|
||||||
|
key: "FName",
|
||||||
|
minWidth: "300px"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "产品分类",
|
||||||
|
key: "FTypeName",
|
||||||
|
width: "110px"
|
||||||
|
}
|
||||||
|
];
|
||||||
|
dataColumn.forEach((item) => {
|
||||||
|
item.align = "center";
|
||||||
|
});
|
||||||
|
const dataList = ref([]);
|
||||||
|
const selectedKey = ref("");
|
||||||
|
const isDisabled = ref(true);
|
||||||
|
const searchObj = ref({});
|
||||||
|
watch(selectedKey, function() {
|
||||||
|
const choseObj = dataList.value.find(s => s.id == selectedKey.value) || null;
|
||||||
|
if (choseObj != null) {
|
||||||
|
objInfo.value.choseData.FID = choseObj.FID;
|
||||||
|
objInfo.value.choseData.FName = choseObj.FName;
|
||||||
|
objInfo.value.choseData.FType = choseObj.FType;
|
||||||
|
objInfo.value.choseData.FCode = choseObj.FCode;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return {
|
||||||
|
objInfo,
|
||||||
|
postData,
|
||||||
|
pageInfo,
|
||||||
|
dataColumn,
|
||||||
|
dataList,
|
||||||
|
selectedKey,
|
||||||
|
isDisabled,
|
||||||
|
searchObj
|
||||||
|
}
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
dataInfoObj: {
|
||||||
|
type: Object,
|
||||||
|
default: () => {},
|
||||||
|
},
|
||||||
|
MaterialModel:{
|
||||||
|
type: Object,
|
||||||
|
default: () => {},
|
||||||
|
},
|
||||||
|
typeListObj: {
|
||||||
|
type: Array,
|
||||||
|
default: () => [],
|
||||||
|
},
|
||||||
|
editType: {
|
||||||
|
type: Number,
|
||||||
|
default: () => 1,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
debugger
|
||||||
|
|
||||||
|
this.objInfoObj=this.MaterialModel;
|
||||||
|
let objInfo = JSON.parse(JSON.stringify(this.objInfoObj));
|
||||||
|
objInfo.choseData = {
|
||||||
|
FID: this.editType == 1 ? objInfo.FSuccedaneumID : objInfo.FFuProductsID,
|
||||||
|
FName: this.editType == 1 ? objInfo.FSuccedaneumInfo : objInfo.FFuProductsInfo,
|
||||||
|
FType: this.editType == 1 ? objInfo.FSuccedaneumType : objInfo.FFuProductsType,
|
||||||
|
FCode: this.editType == 1 ? objInfo.FSuccedaneumCode : objInfo.FFuProductsCode,
|
||||||
|
FCount: objInfo.FFuProductsCount || "",
|
||||||
|
FUnit: objInfo.FFuProductsUnit || ""
|
||||||
|
};
|
||||||
|
if (this.editType == 1) this.pageInfo.limit = 6;
|
||||||
|
this.objInfo = objInfo;
|
||||||
|
this._getPageList();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
//列表-分页
|
||||||
|
changePage(obj) {
|
||||||
|
this.pageInfo.current = obj.current;
|
||||||
|
this._getPageList();
|
||||||
|
},
|
||||||
|
//检索-检索
|
||||||
|
_clickSearch() {
|
||||||
|
this.postData = {};
|
||||||
|
for (let key in this.searchObj) {
|
||||||
|
let val = this.searchObj[key];
|
||||||
|
if (val != null && val != "") this.postData[key] = val;
|
||||||
|
}
|
||||||
|
this._getPageList(true);
|
||||||
|
},
|
||||||
|
//检索-重置
|
||||||
|
_clickReset() {
|
||||||
|
this.searchObj = {};
|
||||||
|
this._clickSearch();
|
||||||
|
},
|
||||||
|
//列表-数据
|
||||||
|
async _getPageList(isFirst) {
|
||||||
|
debugger
|
||||||
|
this.pageInfo.total = 0;
|
||||||
|
if (isFirst) {
|
||||||
|
this.pageInfo.current = 1;
|
||||||
|
this.pageInfo.total = 0;
|
||||||
|
}
|
||||||
|
this.postData.FPageIndex = this.pageInfo.current;
|
||||||
|
this.postData.FPageSize = this.pageInfo.limit;
|
||||||
|
let result = await getPageList(this.postData, "Material");
|
||||||
|
result.Data.List = result.Data.List || [];
|
||||||
|
let cD = this.objInfo.choseData;
|
||||||
|
result.Data.List.forEach((item) => {
|
||||||
|
let type = this.typeListObj.find(s => s.FValue == item.FType);
|
||||||
|
item.FTypeName = type == null ? "" : type.FName;
|
||||||
|
item.id = item.FID;
|
||||||
|
if (item.FCode == cD.FCode && item.FName == cD.FName && item.FType == cD.FType &&
|
||||||
|
this.selectedKey != item.id) {
|
||||||
|
this.selectedKey = item.id
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.pageInfo.total = result.Data.Total || 0;
|
||||||
|
this.dataList = result.Data.List;
|
||||||
|
},
|
||||||
|
//提交
|
||||||
|
async submitClick() {
|
||||||
|
let updateInfo = {
|
||||||
|
FID: this.objInfo.FID
|
||||||
|
};
|
||||||
|
if (this.editType == 1) {
|
||||||
|
updateInfo.FSuccedaneumID = this.objInfo.choseData.FID || -1;
|
||||||
|
updateInfo.FSuccedaneumInfo = this.objInfo.choseData.FName || "";
|
||||||
|
updateInfo.FSuccedaneumType = this.objInfo.choseData.FType || "";
|
||||||
|
updateInfo.FSuccedaneumCode = this.objInfo.choseData.FCode || "";
|
||||||
|
} else {
|
||||||
|
updateInfo.FFuProductsID = this.objInfo.choseData.FID || -1;
|
||||||
|
updateInfo.FFuProductsInfo = this.objInfo.choseData.FName || "";
|
||||||
|
updateInfo.FFuProductsType = this.objInfo.choseData.FType || "";
|
||||||
|
updateInfo.FFuProductsCode = this.objInfo.choseData.FCode || "";
|
||||||
|
updateInfo.FFuProductsCount = this.objInfo.choseData.FCount || "";
|
||||||
|
updateInfo.FFuProductsUnit = this.objInfo.choseData.FUnit || "";
|
||||||
|
}
|
||||||
|
let result = await updateDataInfo(updateInfo, "Material") || 0;
|
||||||
|
if (result > 0) {
|
||||||
|
layer.msg("操作成功", {
|
||||||
|
time: 1500,
|
||||||
|
icon: 1
|
||||||
|
});
|
||||||
|
setTimeout(() => {
|
||||||
|
this.cancelClick(true);
|
||||||
|
this.$emit("showEditMaterial");
|
||||||
|
}, 150)
|
||||||
|
} else {
|
||||||
|
layer.msg("操作失败", {
|
||||||
|
time: 1000,
|
||||||
|
icon: 2
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
//取消
|
||||||
|
cancelClick(isRefresh) {
|
||||||
|
this.$emit('cancelClick', isRefresh == undefined ? false : isRefresh);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
Loading…
Reference in new issue