Merge branch 'master' of http://www.koelndom.cn:13030/Huabao/FactorySystemWeb
commit
116e7ac736
@ -0,0 +1,118 @@
|
||||
<template>
|
||||
<lay-table style="margin:0 0 30px 0;" height="200px" :columns="dataColumn" :data-source="dataList">
|
||||
<template v-slot:toolbar>
|
||||
<p style="float:left;">配方视图</p>
|
||||
</template>
|
||||
</lay-table>
|
||||
</template>
|
||||
<script>
|
||||
import {
|
||||
ref
|
||||
} from 'vue';
|
||||
import {
|
||||
getTeamworkView
|
||||
} from "/src/api/api/teamwork";
|
||||
|
||||
export default {
|
||||
setup() {
|
||||
const viewList = ref([]);
|
||||
const dataColumn = ref([
|
||||
{type: 'number', title: '序号', width: '56'},
|
||||
{key: '工厂', title: '工厂', align: 'center', width: '130px'},
|
||||
{key: '开始生效日期', title: '开始生效日期', align: 'center', width: '130px'},
|
||||
{key: 'BOM用途', title: 'BOM用途', align: 'center', width: '130px'},
|
||||
{key: 'BOM状态', title: 'BOM状态', align: 'center', width: '130px'},
|
||||
{key: '可选文本', title: '可选文本', align: 'center', width: '130px'},
|
||||
{key: '可选BOM', title: '可选BOM', align: 'center', width: '130px'},
|
||||
{key: '父项编码', title: '父项编码', align: 'center', width: '200px'},
|
||||
{key: '父项描述', title: '父项描述', align: 'center', width: '300px'},
|
||||
{key: '基本数量', title: '基本数量', align: 'center', width: '130px'},
|
||||
{key: '基本单位', title: '基本单位', align: 'center', width: '130px'},
|
||||
{key: '子项序号', title: '子项序号', align: 'center', width: '130px'},
|
||||
{key: '项目类别', title: '项目类别', align: 'center', width: '130px'},
|
||||
{key: '子项编码', title: '子项编码', align: 'center', width: '200px'},
|
||||
{key: '子件描述', title: '子件描述', align: 'center', width: '300px'},
|
||||
{key: '组件数量', title: '组件数量', align: 'center', width: '130px'},
|
||||
{key: '计量单位', title: '计量单位', align: 'center', width: '130px'},
|
||||
{key: '工程变更号', title: '工程变更号', align: 'center', width: '130px'},
|
||||
{key: '项目ID', title: '项目ID', align: 'center', width: '130px'},
|
||||
{key: '物料供应标识符', title: '物料供应标识符', align: 'center', width: '130px'},
|
||||
{key: '备件标示', title: '备件标示', align: 'center', width: '130px'},
|
||||
{key: '生产仓储地点', title: '生产仓储地点', align: 'center', width: '130px'},
|
||||
{key: '组件损耗率', title: '组件损耗率', align: 'center', width: '130px'},
|
||||
{key: '成本核算标识相关', title: '成本核算标识相关', align: 'center', width: '130px'},
|
||||
{key: '生产相关', title: '生产相关', align: 'center', width: '130px'},
|
||||
{key: 'BOM项目文本1', title: 'BOM项目文本1', align: 'center', width: '130px'},
|
||||
{key: 'BOM项目文本2', title: 'BOM项目文本2', align: 'center', width: '130px'},
|
||||
{key: '替代项目组', title: '替代项目组', align: 'center', width: '130px'},
|
||||
{key: '优先级', title: '优先级', align: 'center', width: '130px'},
|
||||
{key: '策略', title: '策略', align: 'center', width: '130px'},
|
||||
{key: '使用可能性', title: '使用可能性', align: 'center', width: '130px'},
|
||||
{key: '固定损耗数量', title: '固定损耗数量', align: 'center', width: '130px'}
|
||||
]);
|
||||
const dataList = ref([]);
|
||||
|
||||
return {
|
||||
viewList,
|
||||
dataColumn,
|
||||
dataList
|
||||
}
|
||||
},
|
||||
props: {
|
||||
teamId: {
|
||||
type: String,
|
||||
default: () => ""
|
||||
},
|
||||
halfId: {
|
||||
type: String,
|
||||
default: () => ""
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.initPage();
|
||||
},
|
||||
methods: {
|
||||
async initPage() {
|
||||
let dataColumn = [{
|
||||
type: "number",
|
||||
title: "序号",
|
||||
width: "56"
|
||||
}];
|
||||
let dataList = [];
|
||||
|
||||
let postData = {
|
||||
FTeamID: this.teamId,
|
||||
FViewType: 2,
|
||||
FType: 1,
|
||||
HalfId : this.halfId
|
||||
};
|
||||
|
||||
let result = await getTeamworkView(postData);
|
||||
|
||||
let formulaList = result["List1"]
|
||||
|
||||
if (formulaList) {
|
||||
for (let key in formulaList[0]) {
|
||||
let width = (key.indexOf("描述") != -1 || key == "文本" || key == "物料") ? "300px" :
|
||||
"130px";
|
||||
width = key.indexOf("编码") != -1 ? "200px" : width;
|
||||
dataColumn.push({
|
||||
key: key,
|
||||
title: key.split('.').pop(),
|
||||
align: "center",
|
||||
width: width
|
||||
});
|
||||
}
|
||||
|
||||
formulaList.forEach((item) => {
|
||||
dataList.push(item);
|
||||
});
|
||||
}
|
||||
|
||||
// this.dataColumn = dataColumn;
|
||||
this.dataList = dataList;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
@ -0,0 +1,78 @@
|
||||
<template>
|
||||
<lay-container>
|
||||
<view class="layui-item33 color999" :style="'max-height:900px'">
|
||||
<lay-row space="10">
|
||||
<lay-col md="4" sm="12" xs="24" v-for="(item, index) in columns">
|
||||
<lay-checkbox-group v-model="checkedItem">
|
||||
<lay-checkbox :name="item.title" skin="primary" :value="item.key">
|
||||
{{ item.title }}
|
||||
</lay-checkbox>
|
||||
</lay-checkbox-group>
|
||||
</lay-col>
|
||||
</lay-row>
|
||||
</view>
|
||||
<view class="menuBtn">
|
||||
<lay-button type="primary" @click="submitClick">确定</lay-button>
|
||||
<lay-button @click="cancelClick">取消</lay-button>
|
||||
</view>
|
||||
</lay-container>
|
||||
</template>
|
||||
<script>
|
||||
import {
|
||||
ref
|
||||
} from 'vue';
|
||||
export default {
|
||||
setup() {
|
||||
const columnList = ref([]);
|
||||
const checkedItem = ref([]);
|
||||
|
||||
return {
|
||||
columnList,
|
||||
checkedItem,
|
||||
}
|
||||
},
|
||||
props: {
|
||||
columns: {
|
||||
type: Object,
|
||||
default: () => [],
|
||||
},
|
||||
freezingColumns: {
|
||||
type: Object,
|
||||
default: () => [],
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.initPage();
|
||||
},
|
||||
methods: {
|
||||
initPage() {
|
||||
this.columnList = this.columns;
|
||||
this.checkedItem = this.freezingColumns
|
||||
},
|
||||
cancelClick() {
|
||||
this.$emit('cancelClick');
|
||||
},
|
||||
submitClick() {
|
||||
this.$emit('cancelClick', this.checkedItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
.layui-item33 {
|
||||
width: 90%;
|
||||
padding-right: 30px;
|
||||
margin: 30px auto 10px;
|
||||
display: block;
|
||||
overflow: auto;
|
||||
position: relative;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.menuBtn {
|
||||
display: block;
|
||||
text-align: center;
|
||||
width: 96%;
|
||||
margin: 20px auto;
|
||||
}
|
||||
</style>
|
||||
Loading…
Reference in new issue