Merge remote-tracking branch 'origin/master'

yangwl
wws 1 year ago
commit 9ba845c490

@ -16,3 +16,11 @@ export function getMesBoardEquProductionToday(data) {
data: data
});
}
// 获取班次
export function getBoardShifts(data) {
return request({
url: '/mes/wcsInterface/getBoardShifts',
method: 'post',
data: data
});
}

@ -19,7 +19,11 @@
<div class="content-top">
<div class="factory">
<div class="selectborder">
<select v-model="selectxt" @change="selectline(selectxt)">
<select
v-model="selectxt"
class="select1"
@change="selectline(selectxt)"
>
<option
:key="index"
:value="x.parentName"
@ -30,6 +34,22 @@
<!-- <option :key="index" :value="x.seriesName" v-for="(x, index) in ceshib">{{ x.seriesName }}</option> -->
</select>
</div>
<div class="selectborder selectborder1">
<select
v-model="selectxtclasses"
class="select1"
@change="selectline2(selectxtclasses)"
>
<option
:key="index"
:value="x.shiftId"
v-for="(x, index) in classesList"
>
{{ x.shiftDesc }}
</option>
<!-- <option :key="index" :value="x.seriesName" v-for="(x, index) in ceshib">{{ x.seriesName }}</option> -->
</select>
</div>
</div>
<div class="timebox">
<div class="time">
@ -162,6 +182,7 @@
import {
getBoardFactory,
getMesBoardEquProductionToday,
getBoardShifts,
} from "@/api/kanban/dailyoutput";
import * as echarts from "echarts";
import moment from "moment";
@ -177,7 +198,9 @@ export default {
return {
gettimedata: "",
selectxt: null,
selectxtclasses: null,
getLineList: [],
classesList: [],
number1: 0,
number2: 0,
number3: 0,
@ -204,8 +227,8 @@ export default {
},
created() {},
destroyed() {
clearInterval(this.time1)
this.time1 = null
clearInterval(this.time1);
this.time1 = null;
},
mounted() {
// this.datetime = moment().subtract(2, "day").format("yyyy-MM-DD");
@ -224,19 +247,26 @@ export default {
}, 1000);
},
selectFactorylist() {
const _this = this;
getBoardFactory({
factory: null,
}).then((response) => {
if (response.data) {
this.getLineList = response.data;
this.selectxt = this.getLineList[0].parentName;
this.initChart1();
this.time1 = setInterval(() => {
this.initChart1();
_this.getLineList = response.data;
_this.selectxt = _this.getLineList[0].parentName;
getBoardShifts({
factory: _this.selectxt,
}).then((response) => {
if (response.data) {
console.log(response.data);
_this.classesList = response.data;
_this.selectxtclasses = _this.classesList[0].shiftId;
_this.initChart1();
_this.time1 = setInterval(() => {
_this.initChart1();
}, 1000 * 60 * 1);
// this.initChart2();
// this.initChart3();
// this.initChart4();
}
});
}
});
},
@ -346,6 +376,7 @@ export default {
myChart1.setOption(option1);
getMesBoardEquProductionToday({
factory: _this.selectxt,
shiftId: _this.selectxtclasses,
ymd: _this.datetime,
equTypeCode: "equ_type_cxj",
}).then((response) => {
@ -578,6 +609,7 @@ export default {
myChart2.setOption(option2);
getMesBoardEquProductionToday({
factory: _this.selectxt,
shiftId: _this.selectxtclasses,
ymd: _this.datetime,
equTypeCode: "equ_type_hf",
}).then((response) => {
@ -770,6 +802,7 @@ export default {
myChart3.setOption(option3);
getMesBoardEquProductionToday({
factory: _this.selectxt,
shiftId: _this.selectxtclasses,
ymd: _this.datetime,
equTypeCode: "equ_type_spj",
}).then((response) => {
@ -963,6 +996,7 @@ export default {
myChart4.setOption(option4);
getMesBoardEquProductionToday({
factory: _this.selectxt,
shiftId: _this.selectxtclasses,
ymd: _this.datetime,
equTypeCode: "equ_type_lg",
}).then((response) => {
@ -1052,613 +1086,54 @@ export default {
}
});
},
initChart2() {
selectline() {
const _this = this;
var myChart2 = echarts.init(document.querySelector("#echart2"));
var option2 = {
grid: {
left: "70",
right: "7%",
top: "5%",
bottom: "1%",
containLabel: true,
},
tooltip: {
trigger: "axis",
show: true,
axisPointer: {
type: "none",
},
formatter: function (e) {
return `${e[0].data.name}\n${e[0].marker}${e[0].data.value}`;
},
},
xAxis: {
name: "辆",
// max: total,
splitLine: {
show: false,
},
axisLine: {
show: true,
},
axisLabel: {
show: true,
},
axisTick: {
show: true,
},
},
yAxis: [
{
type: "category",
inverse: false,
data: [],
axisLine: {
show: true,
},
axisTick: {
show: false,
},
axisLabel: {
show: false,
},
},
],
series: [
{
type: "pictorialBar",
symbol: "rect",
// symbolRepeat: "fixed",
// symbolMargin: "2",
// symbolClip: true,
// symbolSize: [5, 20],
barWidth: 20,
data: [],
label: {
normal: {
formatter: "{b}",
textStyle: {
color: "#D0DEEE",
fontSize: 14,
},
position: "left",
distance: 10, //
show: true,
},
},
z: 10,
},
{
type: "bar",
itemStyle: {
color: "#141A27",
},
label: {
normal: {
formatter: "{b}",
textStyle: {
color: "#D0DEEE",
fontSize: 14,
},
position: "right",
distance: 10, //
show: true,
},
},
data: [], // value<EFBFBD>
tooltip: {
show: false,
},
barWidth: 30,
},
],
};
myChart2.setOption(option2);
getMesBoardEquProductionToday({
this.optionDatalist1 = [];
this.optionDatalist2 = [];
this.optionDatalist3 = [];
this.optionDatalist4 = [];
getBoardShifts({
factory: _this.selectxt,
ymd: _this.datetime,
equTypeCode: "equ_type_cxj",
}).then((response) => {
if (response) {
if (response.data) {
let numberlist = [];
let dataoption = [];
let totalArr = [];
_this.optionDatalist2 = [];
_this.number2 = response.data.totalNum[0].totalNum;
response.data.everyNum.forEach((item) => {
let a = {};
a.name = item.equName;
a.value = item.totalNum;
a.code = item.equCode;
_this.optionDatalist2.push(a);
dataoption.push(a);
numberlist.push(item.totalNum);
});
dataoption.sort((a, b) => {
return a.value - b.value;
});
let max = Math.max(...numberlist);
max = max + 100;
dataoption.forEach((item) => {
totalArr.push(max);
});
option2 = {
yAxis: [
{
data: dataoption,
},
],
series: [
{
data: dataoption,
itemStyle: {
normal: {
color: function (params) {
var index_num = params.value;
for (var i = 0; i < dataoption.length; i++) {
//1
if (index_num > 1131) {
//var colorList = ['#ff7f50', '#87cefa', '#da70d6', '#32cd32', '#6495ed', '#ff69b4', '#ba55d3', '#cd5c5c', '#ffa500', '#40e0d0'];
//return colorList[params.dataIndex];
return new echarts.graphic.LinearGradient(
0,
0,
1,
0,
[
{ offset: 0, color: "#FFB742" },
{ offset: 1, color: "#FFB742" },
]
);
} else {
//var colorList = ['blue'];
//return colorList[params.dataIndex];
return new echarts.graphic.LinearGradient(
0,
0,
1,
0,
[
{ offset: 0, color: "#005954" },
{ offset: 1, color: "#66E1DF" },
]
);
console.log(response.data);
_this.classesList = response.data;
_this.selectxtclasses = _this.classesList[0].shiftId;
_this.initChart1();
}
}
},
},
});
},
selectline2() {
this.initChart1();
},
{
data: totalArr,
//
},
],
};
myChart2.setOption(option2);
</script>
<style lang="scss" scoped>
.app-container {
padding: 0px 24px;
}
}
});
},
initChart3() {
const _this = this;
var myChart3 = echarts.init(document.querySelector("#echart3"));
var option3 = {
grid: {
left: "70",
right: "7%",
top: "5%",
bottom: "1%",
containLabel: true,
},
tooltip: {
trigger: "axis",
show: true,
axisPointer: {
type: "none",
},
formatter: function (e) {
return `${e[0].data.name}\n${e[0].marker}${e[0].data.value}`;
},
},
xAxis: {
name: "辆",
// max: total,
splitLine: {
show: false,
},
axisLine: {
show: true,
},
axisLabel: {
show: true,
},
axisTick: {
show: true,
},
},
yAxis: [
{
type: "category",
inverse: false,
data: [],
axisLine: {
show: true,
},
axisTick: {
show: false,
},
axisLabel: {
show: false,
},
},
],
series: [
{
type: "pictorialBar",
symbol: "rect",
// symbolRepeat: "fixed",
// symbolMargin: "2",
// symbolClip: true,
// symbolSize: [5, 20],
barWidth: 20,
data: [],
label: {
normal: {
formatter: "{b}",
textStyle: {
color: "#D0DEEE",
fontSize: 14,
},
position: "left",
distance: 10, //
show: true,
},
},
z: 10,
},
{
type: "bar",
itemStyle: {
color: "#141A27",
},
label: {
normal: {
formatter: "{b}",
textStyle: {
color: "#D0DEEE",
fontSize: 14,
},
position: "right",
distance: 10, //
show: true,
},
},
data: [], // value<EFBFBD>
tooltip: {
show: false,
},
barWidth: 30,
},
],
};
myChart3.setOption(option3);
getMesBoardEquProductionToday({
factory: _this.selectxt,
ymd: _this.datetime,
equTypeCode: "equ_type_cxj",
}).then((response) => {
if (response) {
if (response.data) {
let numberlist = [];
let dataoption = [];
let totalArr = [];
_this.optionDatalist3 = [];
_this.number3 = response.data.totalNum[0].totalNum;
response.data.everyNum.forEach((item) => {
let a = {};
a.name = item.equName;
a.value = item.totalNum;
a.code = item.equCode;
_this.optionDatalist3.push(a);
dataoption.push(a);
numberlist.push(item.totalNum);
});
dataoption.sort((a, b) => {
return a.value - b.value;
});
let max = Math.max(...numberlist);
max = max + 100;
dataoption.forEach((item) => {
totalArr.push(max);
});
option3 = {
yAxis: [
{
data: dataoption,
},
],
series: [
{
data: dataoption,
itemStyle: {
normal: {
color: function (params) {
var index_num = params.value;
for (var i = 0; i < dataoption.length; i++) {
//1
if (index_num > 1131) {
//var colorList = ['#ff7f50', '#87cefa', '#da70d6', '#32cd32', '#6495ed', '#ff69b4', '#ba55d3', '#cd5c5c', '#ffa500', '#40e0d0'];
//return colorList[params.dataIndex];
return new echarts.graphic.LinearGradient(
0,
0,
1,
0,
[
{ offset: 0, color: "#FFB742" },
{ offset: 1, color: "#FFB742" },
]
);
} else {
//var colorList = ['blue'];
//return colorList[params.dataIndex];
return new echarts.graphic.LinearGradient(
0,
0,
1,
0,
[
{ offset: 0, color: "#005954" },
{ offset: 1, color: "#66E1DF" },
]
);
}
}
},
},
},
},
{
data: totalArr,
},
],
};
myChart3.setOption(option3);
}
}
});
},
initChart4() {
const _this = this;
var myChart4 = echarts.init(document.querySelector("#echart4"));
var option4 = {
grid: {
left: "70",
right: "7%",
top: "5%",
bottom: "1%",
containLabel: true,
},
tooltip: {
trigger: "axis",
show: true,
axisPointer: {
type: "none",
},
formatter: function (e) {
return `${e[0].data.name}\n${e[0].marker}${e[0].data.value}`;
},
},
xAxis: {
name: "辆",
// max: total,
splitLine: {
show: false,
},
axisLine: {
show: true,
},
axisLabel: {
show: true,
},
axisTick: {
show: true,
},
},
yAxis: [
{
type: "category",
inverse: false,
data: [],
axisLine: {
show: true,
},
axisTick: {
show: false,
},
axisLabel: {
show: false,
},
},
],
series: [
{
type: "pictorialBar",
symbol: "rect",
// symbolRepeat: "fixed",
// symbolMargin: "2",
// symbolClip: true,
// symbolSize: [5, 20],
barWidth: 20,
data: [],
label: {
normal: {
formatter: "{b}",
textStyle: {
color: "#D0DEEE",
fontSize: 14,
},
position: "left",
distance: 10, //
show: true,
},
},
z: 10,
},
{
type: "bar",
itemStyle: {
color: "#141A27",
},
label: {
normal: {
formatter: "{b}",
textStyle: {
color: "#D0DEEE",
fontSize: 14,
},
position: "right",
distance: 10, //
show: true,
},
},
data: [], // value<EFBFBD>
tooltip: {
show: false,
},
barWidth: 30,
},
],
};
myChart4.setOption(option4);
getMesBoardEquProductionToday({
factory: _this.selectxt,
ymd: _this.datetime,
equTypeCode: "equ_type_cxj",
}).then((response) => {
if (response) {
if (response.data) {
let numberlist = [];
let dataoption = [];
let totalArr = [];
_this.optionDatalist4 = [];
_this.number4 = response.data.totalNum[0].totalNum;
response.data.everyNum.forEach((item) => {
let a = {};
a.name = item.equName;
a.value = item.totalNum;
a.code = item.equCode;
_this.optionDatalist4.push(a);
dataoption.push(a);
numberlist.push(item.totalNum);
});
dataoption.sort((a, b) => {
return a.value - b.value;
});
let max = Math.max(...numberlist);
max = max + 100;
dataoption.forEach((item) => {
totalArr.push(max);
});
option4 = {
yAxis: [
{
data: dataoption,
},
],
series: [
{
data: dataoption,
itemStyle: {
normal: {
color: function (params) {
var index_num = params.value;
for (var i = 0; i < dataoption.length; i++) {
//1
if (index_num > 1131) {
//var colorList = ['#ff7f50', '#87cefa', '#da70d6', '#32cd32', '#6495ed', '#ff69b4', '#ba55d3', '#cd5c5c', '#ffa500', '#40e0d0'];
//return colorList[params.dataIndex];
return new echarts.graphic.LinearGradient(
0,
0,
1,
0,
[
{ offset: 0, color: "#FFB742" },
{ offset: 1, color: "#FFB742" },
]
);
} else {
//var colorList = ['blue'];
//return colorList[params.dataIndex];
return new echarts.graphic.LinearGradient(
0,
0,
1,
0,
[
{ offset: 0, color: "#005954" },
{ offset: 1, color: "#66E1DF" },
]
);
}
}
},
},
},
},
{
data: totalArr,
},
],
};
myChart4.setOption(option4);
}
}
});
},
selectline() {
this.initChart1();
// this.initChart2();
// this.initChart3();
// this.initChart4();
},
//
},
};
</script>
<style lang="scss" scoped>
.app-container {
padding: 0px 24px;
}
.home {
width: 100%;
height: 100vh;
background: url("../../../assets/images/bg-body.png") no-repeat;
background-size: 100% 100%;
background-color: #050711;
.head {
width: 100%;
height: 74px;
position: relative;
.head-content {
height: 74px;
background-image: url("../../../assets/images/bg-head.png");
background-repeat: no-repeat;
background-size: 100% 100%;
text-align: center;
.title {
font-size: 42px;
font-weight: 400;
color: #ffffff;
.home {
width: 100%;
height: 100vh;
background: url("../../../assets/images/bg-body.png") no-repeat;
background-size: 100% 100%;
background-color: #050711;
.head {
width: 100%;
height: 74px;
position: relative;
.head-content {
height: 74px;
background-image: url("../../../assets/images/bg-head.png");
background-repeat: no-repeat;
background-size: 100% 100%;
text-align: center;
.title {
font-size: 42px;
font-weight: 400;
color: #ffffff;
}
}
.head-logo {
@ -1763,15 +1238,31 @@ export default {
// left: 24px;
// }
}
.factory {
display: flex;
// justify-content: space-around;
}
.selectborder {
margin: auto;
width: 354px;
height: 50px;
background-color: transparent;
border-radius: 4px;
// border: 2px solid #27408c;
position: relative;
margin-top: 10px;
display: flex;
align-items: center;
justify-content: space-around;
width: 310px;
margin-left: 50px;
}
.selectborder1 {
background-color: transparent;
border-radius: 4px;
// border: 2px solid #27408c;
position: relative;
display: flex;
align-items: center;
justify-content: space-around;
width: 88px;
margin-left: 25px;
}
.selectborder select {
/*清除select的边框样式*/
@ -1786,7 +1277,7 @@ export default {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-size: 28px;
font-size: 25px;
font-weight: 400;
color: #ffffff;
line-height: 42px;
@ -1805,7 +1296,26 @@ export default {
-moz-appearance: none;
appearance: none;
padding-left: 20px;
font-size: 28px;
font-size: 25px;
font-weight: 500;
color: #3fa2ff;
border-radius: 0%;
}
.selectborder1 option {
/*清除select的边框样式*/
border: none;
/*清除select聚焦时候的边框颜色*/
outline: none;
background-color: transparent;
/*将select的宽高等于div的宽高*/
width: 200px;
height: 50px;
/*隐藏select的下拉图标*/
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
padding-left: 20px;
font-size: 25px;
font-weight: 500;
color: #3fa2ff;
border-radius: 0%;
@ -1817,7 +1327,19 @@ export default {
background: url(../../../assets/images/xiala.png) no-repeat center;
/*通过定位将图标放在合适的位置*/
position: absolute;
right: 15px;
right: 0px;
top: 25%;
/*给自定义的图标实现点击下来功能*/
pointer-events: none;
}
.selectborder1:after {
content: "";
width: 24px;
height: 24px;
background: url(../../../assets/images/xiala.png) no-repeat center;
/*通过定位将图标放在合适的位置*/
position: absolute;
right: 0px;
top: 25%;
/*给自定义的图标实现点击下来功能*/
pointer-events: none;

@ -9,7 +9,8 @@
size="mini"
@click="handleAdd"
v-hasPermi="['mes:pro:processcontent:add']"
>新增</el-button>
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
@ -20,7 +21,8 @@
:disabled="single"
@click="handleUpdate"
v-hasPermi="['mes:pro:processcontent:edit']"
>修改</el-button>
>修改</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
@ -31,7 +33,8 @@
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['mes:pro:processcontent:remove']"
>删除</el-button>
>删除</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
@ -41,19 +44,54 @@
size="mini"
@click="handleExport"
v-hasPermi="['mes:pro:processcontent:export']"
>导出</el-button>
>导出</el-button
>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="processcontentList" @selection-change="handleSelectionChange">
<el-table
v-loading="loading"
:data="processcontentList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="顺序编号" align="center" prop="orderNum" />
<el-table-column label="步骤说明" width="400px" align="center" prop="contentText" :show-overflow-tooltip="true"/>
<el-table-column label="辅助设备" align="center" prop="device" :show-overflow-tooltip="true"/>
<el-table-column label="BOM材料" align="center" prop="material" :show-overflow-tooltip="true"/>
<el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip="true"/>
<el-table-column label="操作" width="100px" v-if="optType !='view'" align="center" class-name="small-padding fixed-width">
<el-table-column
label="步骤说明"
width="400px"
align="center"
prop="contentText"
:show-overflow-tooltip="true"
/>
<el-table-column
label="辅助设备"
align="center"
prop="device"
:show-overflow-tooltip="true"
/>
<el-table-column
label="BOM材料"
align="center"
prop="material"
:show-overflow-tooltip="true"
/>
<el-table-column
label="备注"
align="center"
prop="remark"
:show-overflow-tooltip="true"
/>
<el-table-column
label="操作"
width="100px"
v-if="optType != 'view'"
align="center"
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button
size="mini"
@ -61,14 +99,16 @@
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['mes:pro:processcontent:edit']"
>修改</el-button>
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['mes:pro:processcontent:remove']"
>删除</el-button>
>删除</el-button
>
</template>
</el-table-column>
</el-table>
@ -87,7 +127,11 @@
<el-row>
<el-col :span="12">
<el-form-item label="顺序编号" prop="orderNum">
<el-input-number :min="1" v-model="form.orderNum" placeholder="请输入顺序编号" />
<el-input-number
:min="1"
v-model="form.orderNum"
placeholder="请输入顺序编号"
/>
</el-form-item>
</el-col>
<!--
@ -99,35 +143,115 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="辅助设备" prop="device">
<!-- <el-form-item label="辅助设备" prop="device">
<el-input v-model="form.device" placeholder="请选择辅助设备">
<el-button slot="append" @click="handleSelectEquipment" icon="el-icon-search"></el-button>
<el-button
slot="append"
@click="handleSelectEquipment"
icon="el-icon-search"
></el-button>
</el-input>
<ItemSelect ref="itemSelect" @onSelected="onItemSelectedEquipment" > </ItemSelect>
</el-form-item>
<ItemSelect
ref="itemSelect"
@onSelected="onItemSelectedEquipment"
>
</ItemSelect>
</el-form-item> -->
</el-col>
<el-col :span="24">
<div class="tagbox">
<div class="tagboxlabel" style="font-weight: 600; color: #606266">
辅助设备
</div>
<div class="tag" style="" placeholder="请选择辅助设备">
<el-tag
:key="index"
class="tagitem"
v-for="(tag, index) in selectsubsidiaryListtag"
closable
:disable-transitions="false"
@close="handleClose(tag)"
>
{{ tag }}
</el-tag>
</div>
<el-button
slot="append"
class="button1"
@click="handleSelectEquipment"
icon="el-icon-search"
></el-button>
<ItemSelect
ref="itemSelect"
@onSelected="onItemSelectedEquipment"
>
</ItemSelect>
</div>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="BOM材料" prop="material">
<!-- <el-form-item label="BOM材料" prop="material">
<el-input v-model="form.material" placeholder="请选择BOM材料">
<el-button slot="append" @click="handleSelectBom" icon="el-icon-search"></el-button>
<el-button
slot="append"
@click="handleSelectBom"
icon="el-icon-search"
></el-button>
</el-input>
<ItemSelectBom ref="itemSelectBom" @onSelected="onItemSelectedBom" ></ItemSelectBom>
</el-form-item>
<ItemSelectBom
ref="itemSelectBom"
@onSelected="onItemSelectedBom"
></ItemSelectBom>
</el-form-item> -->
<div class="tagbox">
<div class="tagboxlabel" style="font-weight: 600; color: #606266">
BOM材料
</div>
<div class="tag" style="" placeholder="请选择BOM材料">
<el-tag
:key="index"
class="tagitem"
v-for="(tag, index) in selectBOMListtag"
closable
:disable-transitions="false"
@close="handleCloseBOM(tag)"
>
{{ tag }}
</el-tag>
</div>
<el-button
slot="append"
class="button1"
@click="handleSelectBom"
icon="el-icon-search"
></el-button>
<ItemSelectBom
ref="itemSelectBom"
@onSelected="onItemSelectedBom"
></ItemSelectBom>
</div>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="步骤说明" prop="contentText">
<el-input v-model="form.contentText" type="textarea" placeholder="请输入内容" />
<el-input
v-model="form.contentText"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
<el-input
v-model="form.remark"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item>
</el-col>
</el-row>
@ -141,10 +265,16 @@
</template>
<script>
import { listProcesscontent, getProcesscontent, delProcesscontent, addProcesscontent, updateProcesscontent } from "@/api/technology/processcontent";
import {
listProcesscontent,
getProcesscontent,
delProcesscontent,
addProcesscontent,
updateProcesscontent,
} from "@/api/technology/processcontent";
import ItemSelect from "./single.vue";
import ItemSelectBom from "./singleBom.vue";
import { Message } from 'element-ui'
import { Message } from "element-ui";
export default {
name: "Processcontent",
@ -187,45 +317,79 @@ export default {
//
rules: {
processId: [
{ required: true, message: "工序不能为空", trigger: "blur" }
{ required: true, message: "工序不能为空", trigger: "blur" },
],
}
},
// -listtag
selectsubsidiaryListtag: [],
selectBOMListtag: [],
};
},
props: {
processId: undefined,
optType: undefined
optType: undefined,
},
created() {
this.getList();
},
methods: {
//
handleClose(tag) {
this.selectsubsidiaryListtag.splice(
this.selectsubsidiaryListtag.indexOf(tag),
1
);
this.form.device = "";
var code = [];
this.selectsubsidiaryListtag.forEach((item) => {
if (item) {
code.push(item);
}
});
console.log(code, this.selectsubsidiaryListtag);
this.form.device = code.join(",");
},
// BOM
handleCloseBOM(tag) {
this.selectBOMListtag.splice(this.selectBOMListtag.indexOf(tag), 1);
this.form.material = "";
var code = [];
this.selectBOMListtag.forEach((item) => {
if (item) {
code.push(item);
}
});
console.log(code, this.selectBOMListtag);
this.form.material = code.join(",");
},
//
onItemSelectedEquipment(obj) {
if (this.form.device == null || this.form.device == "") {
console.log("device是空if获取的obj", obj);
console.log("device是空if获取的device", this.form.device);
this.form.device = obj;
this.selectsubsidiaryListtag = obj.split(",");
} else {
if (obj != undefined && obj != null && obj != "") {
const a = obj.split(',');
const len = obj.split(',').length;
console.log('切割的数组',obj.split(','));
a.forEach(item => {
const b = this.form.device.split(',');
const a = obj.split(",");
const len = obj.split(",").length;
console.log("切割的数组", obj.split(","));
a.forEach((item) => {
const b = this.form.device.split(",");
const size = b.length;
console.log("size",size,b[size-1])
const item1 = item+',';
console.log("size", size, b[size - 1]);
const item1 = item + ",";
console.log("打印item1", item1);
this.checkDevice = this.form.device.search(item1) != -1;
console.log("check的值", this.checkDevice);
if (this.checkDevice == true || b[size - 1] == item) {
console.log("重复添加", true);
Message.warning('您已经添加过该设备,请勿重复添加!!!');
Message.warning("您已经添加过该设备,请勿重复添加!!!");
} else if (this.checkDevice == false) {
this.selectsubsidiaryListtag.push(item);
this.form.device = this.form.device + "," + item;
}
})
});
}
}
},
@ -236,21 +400,23 @@ export default {
console.log("material是空if获取的obj", obj);
console.log("material是空if获取的material", this.form.material);
this.form.material = obj;
this.selectBOMListtag = obj.split(",");
} else {
if (obj != undefined && obj != null) {
const a = obj.split(',');
const len = obj.split(',').length;
console.log('切割的数组',obj.split(','));
a.forEach(item => {
const a = obj.split(",");
const len = obj.split(",").length;
console.log("切割的数组", obj.split(","));
a.forEach((item) => {
this.checkMaterial = this.form.material.search(item) != -1;
console.log("check的值", this.check);
if (this.checkMaterial == true) {
console.log("重复添加", true);
Message.warning('您已经添加过该物料Bom,请勿重复添加!!!');
Message.warning("您已经添加过该物料Bom,请勿重复添加!!!");
} else if (this.checkMaterial == false) {
this.selectBOMListtag.push(item);
this.form.material = this.form.material + "," + item;
}
})
});
}
}
},
@ -265,7 +431,7 @@ export default {
/** 查询生产工序内容列表 */
getList() {
this.loading = true;
listProcesscontent(this.queryParams).then(response => {
listProcesscontent(this.queryParams).then((response) => {
this.processcontentList = response.rows;
this.total = response.total;
this.loading = false;
@ -290,7 +456,7 @@ export default {
createBy: null,
createTime: null,
updateBy: null,
updateTime: null
updateTime: null,
};
this.resetForm("form");
},
@ -306,22 +472,36 @@ export default {
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.contentId)
this.single = selection.length!==1
this.multiple = !selection.length
this.ids = selection.map((item) => item.contentId);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加操作步骤";
this.selectsubsidiaryListtag = [];
this.selectBOMListtag = [];
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const contentId = row.contentId || this.ids
getProcesscontent(contentId).then(response => {
const contentId = row.contentId || this.ids;
this.selectsubsidiaryListtag = [];
this.selectBOMListtag = [];
getProcesscontent(contentId).then((response) => {
this.form = response.data;
if (this.form.material != "" && this.form.material != null) {
this.selectBOMListtag = JSON.parse(
JSON.stringify(this.form.material.split(","))
);
}
if (this.form.device != "" && this.form.device != null) {
this.selectsubsidiaryListtag = JSON.parse(
JSON.stringify(this.form.device.split(","))
);
}
this.open = true;
this.title = "修改操作步骤";
});
@ -329,16 +509,16 @@ export default {
/** 提交按钮 */
submitForm() {
// debugger
this.$refs["form"].validate(valid => {
this.$refs["form"].validate((valid) => {
if (valid) {
if (this.form.contentId != null) {
updateProcesscontent(this.form).then(response => {
updateProcesscontent(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addProcesscontent(this.form).then(response => {
addProcesscontent(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
@ -350,19 +530,70 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const contentIds = row.contentId || this.ids;
this.$modal.confirm('是否确认删除操作步骤?').then(function() {
this.$modal
.confirm("是否确认删除操作步骤?")
.then(function () {
return delProcesscontent(contentIds);
}).then(() => {
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('technology/pro/processcontent/export', {
...this.queryParams
}, `processcontent_${new Date().getTime()}.xlsx`)
}
}
this.download(
"technology/pro/processcontent/export",
{
...this.queryParams,
},
`processcontent_${new Date().getTime()}.xlsx`
);
},
},
};
</script>
<style lang="scss" scoped>
.tagbox {
display: flex;
/* overflow: scroll; */
position: relative;
width: 100%;
// padding-left: 26px;
margin-bottom: 15px;
.tagboxlabel {
width: 109px;
text-align: right;
vertical-align: middle;
font-size: 14px;
color: black;
line-height: 40px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin-right: 15px;
}
.tag {
width: 82%;
border: 1px #dcdfe6 solid;
height: 70px;
padding: 5px 15px;
overflow-y: scroll;
.tagitem {
margin-left: 5px;
}
}
.button1 {
width: 57px;
height: 35px;
margin-left: 10px;
background: #f5f7fa;
}
}
div.tag:empty:before {
content: attr(placeholder);
color: #bbb;
}
</style>

@ -341,8 +341,8 @@
</el-col>
<el-col :span="16">
<div class="tagbox">
<div class="tagboxlabel">线体设备</div>
<div class="tag" style="">
<div class="tagboxlabel" style="font-weight: 600;color: #606266;">线体设备</div>
<div class="tag" style="" placeholder="请选择线体设备">
<el-tag
:key="index"
class="tagitem"
@ -910,4 +910,8 @@ export default {
background: #F5F7FA;
}
}
div.tag:empty:before {
content: attr(placeholder);
color: #bbb;
}
</style>

@ -26,7 +26,7 @@
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="105px" align="center">
<el-form-item label="BOM物料编码" prop="itemCode">
<el-input
v-model="queryParams.itemCode"
v-model="queryParams.component"
placeholder="请输入BOM物料编码"
clearable
style="width: 240px"
@ -35,7 +35,7 @@
</el-form-item>
<el-form-item label="产品名称" prop="itemName">
<el-input
v-model="queryParams.itemName"
v-model="queryParams.componentName"
placeholder="请输入产品名称"
clearable
style="width: 240px"
@ -55,9 +55,6 @@
</el-table-column>
<!-- 序号 -->
<el-table-column type="index" width="90" align="center" :index="indexMethod" label="序号"></el-table-column>
<el-table-column label="BOM物料编码" align="center" key="itemCode" prop="bomCode" v-if="columns[0].visible" >
</el-table-column>
<el-table-column label="产品名称" align="left" key="itemName" prop="productDescZh" v-if="columns[1].visible" :show-overflow-tooltip="true" />
<el-table-column label="BOM物料组件编码" align="left" key="component" prop="component" v-if="columns[2].visible" :show-overflow-tooltip="true" />
<el-table-column label="BOM物料组件名称" align="left" key="componentName" prop="componentName" v-if="columns[3].visible" :show-overflow-tooltip="true" />
</el-table>
@ -112,10 +109,10 @@ export default {
pageNum: 1,
pageSize: 10,
itemName: undefined,
bomCode: undefined,
itemTypeId: 0,
component: '',
//itemTypeId: 0,
itemCodeGet: '',
productDescZh : undefined,
componentName : ''
},
//
columns: [
@ -203,51 +200,15 @@ export default {
this.handleQuery();
},
// handleCurrent(row){
// if(row){
// this.selectedRows = row;
// }
// },
// handleRowDbClick(row){
// if(row){
// this.selectedRows = row;
// this.$emit('onSelected',this.selectedRows);
// this.showFlag = false;
// }
// },
//
handleBomSelectionChange(selection) {
this.ids = selection.map(item => item.bomCode);
this.ids = selection.map(item => item.component);
this.single = selection.length!==1;
this.multiple = !selection.length;
console.log("多选框",this.ids);
},
//
// handleRowChange(row) {
// debugger;
// if(row){
// this.selectedRows = row;
// }
// },
//
// confirmSelect(){
// if(this.selectedItemId ==null || this.selectedItemId==0){
// this.$notify({
// title:'',
// type:'warning',
// message: '!'
// });
// return;
// }
// this.$emit('onSelected',this.selectedRows);
// this.showFlag = false;
// }
//
submitBomForm() {
const data = this.ids;
console.log("数据",data);

@ -8,8 +8,8 @@
icon="el-icon-plus"
size="mini"
@click="handleAdd"
>新增</el-button>
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
@ -19,8 +19,8 @@
size="mini"
:disabled="single"
@click="handleUpdate"
>修改</el-button>
>修改</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
@ -30,8 +30,8 @@
size="mini"
:disabled="multiple"
@click="handleDelete"
>删除</el-button>
>删除</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
@ -40,39 +40,93 @@
icon="el-icon-download"
size="mini"
@click="handleExport"
>导出</el-button>
>导出</el-button
>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="recipecontentList" @selection-change="handleSelectionChange">
<el-table
v-loading="loading"
:data="recipecontentList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="顺序编号" align="center" prop="orderNum" />
<el-table-column label="步骤说明" width="300px" align="center" prop="contentText" :show-overflow-tooltip="true"/>
<el-table-column label="辅助设备" align="center" prop="device" :show-overflow-tooltip="true"/>
<el-table-column label="BOM材料" align="center" prop="material" :show-overflow-tooltip="true"/>
<el-table-column label="用量" align="center" prop="dosage" :show-overflow-tooltip="true"/>
<el-table-column label="单位" align="center" prop="unit" :show-overflow-tooltip="true"/>
<el-table-column label="安全用量" align="center" prop="safeDosage" :show-overflow-tooltip="true"/>
<el-table-column label="控制参数" align="center" prop="controlParameters" :show-overflow-tooltip="true"/>
<el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip="true"/>
<el-table-column label="操作" width="100px" v-if="optType !='view'" align="center" class-name="small-padding fixed-width">
<el-table-column
label="步骤说明"
width="300px"
align="center"
prop="contentText"
:show-overflow-tooltip="true"
/>
<el-table-column
label="辅助设备"
align="center"
prop="device"
:show-overflow-tooltip="true"
/>
<el-table-column
label="BOM材料"
align="center"
prop="material"
:show-overflow-tooltip="true"
/>
<el-table-column
label="用量"
align="center"
prop="dosage"
:show-overflow-tooltip="true"
/>
<el-table-column
label="单位"
align="center"
prop="unit"
:show-overflow-tooltip="true"
/>
<el-table-column
label="安全用量"
align="center"
prop="safeDosage"
:show-overflow-tooltip="true"
/>
<el-table-column
label="控制参数"
align="center"
prop="controlParameters"
:show-overflow-tooltip="true"
/>
<el-table-column
label="备注"
align="center"
prop="remark"
:show-overflow-tooltip="true"
/>
<el-table-column
label="操作"
width="100px"
v-if="optType != 'view'"
align="center"
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
>修改</el-button>
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
>删除</el-button>
>删除</el-button
>
</template>
</el-table-column>
</el-table>
@ -91,7 +145,11 @@
<el-row>
<el-col :span="12">
<el-form-item label="顺序编号" prop="orderNum">
<el-input-number :min="1" v-model="form.orderNum" placeholder="请输入顺序编号" />
<el-input-number
:min="1"
v-model="form.orderNum"
placeholder="请输入顺序编号"
/>
</el-form-item>
</el-col>
<!--
@ -102,21 +160,80 @@
</el-col>-->
</el-row>
<el-row>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="辅助设备" prop="device">
<el-input v-model="form.device" placeholder="请选择辅助设备" >
<el-button slot="append" @click="handleSelectEquipment" icon="el-icon-search"></el-button>
</el-input>
<ItemSelect ref="itemSelect" @onSelected="onItemSelectedEquipment" > </ItemSelect>
</el-form-item>
</el-col> -->
<el-col :span="24">
<div class="tagbox">
<div class="tagboxlabel" style="font-weight: 600; color: #606266">
辅助设备
</div>
<div class="tag" style="" placeholder="请选择辅助设备">
<el-tag
:key="index"
class="tagitem"
v-for="(tag, index) in selectsubsidiaryListtag"
closable
:disable-transitions="false"
@close="handleClose(tag)"
>
{{ tag }}
</el-tag>
</div>
<el-button
slot="append"
class="button1"
@click="handleSelectEquipment"
icon="el-icon-search"
></el-button>
<ItemSelect
ref="itemSelect"
@onSelected="onItemSelectedEquipment"
>
</ItemSelect>
</div>
</el-col>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="BOM材料" prop="material">
<el-input v-model="form.material" placeholder="请选择BOM材料" >
<el-button slot="append" @click="handleSelectBom" icon="el-icon-search"></el-button>
</el-input>
<ItemSelectBom ref="itemSelectBom" @onSelected="onItemSelectedBom" ></ItemSelectBom>
</el-form-item>
</el-col> -->
<el-col :span="24">
<div class="tagbox">
<div class="tagboxlabel" style="font-weight: 600; color: #606266">
BOM材料
</div>
<div class="tag" style="" placeholder="请选择BOM材料">
<el-tag
:key="index"
class="tagitem"
v-for="(tag, index) in selectBOMListtag"
closable
:disable-transitions="false"
@close="handleCloseBOM(tag)"
>
{{ tag }}
</el-tag>
</div>
<el-button
slot="append"
class="button1"
@click="handleSelectBom"
icon="el-icon-search"
></el-button>
<ItemSelectBom
ref="itemSelectBom"
@onSelected="onItemSelectedBom"
></ItemSelectBom>
</div>
</el-col>
</el-row>
<el-row>
@ -134,7 +251,10 @@
<el-row>
<el-col :span="12">
<el-form-item label="控制参数" prop="controlParameters">
<el-input v-model="form.controlParameters" placeholder="请输入控制参数" />
<el-input
v-model="form.controlParameters"
placeholder="请输入控制参数"
/>
</el-form-item>
</el-col>
<el-col :span="12">
@ -146,14 +266,22 @@
<el-row>
<el-col :span="24">
<el-form-item label="步骤说明" prop="contentText">
<el-input v-model="form.contentText" type="textarea" placeholder="请输入内容" />
<el-input
v-model="form.contentText"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
<el-input
v-model="form.remark"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item>
</el-col>
</el-row>
@ -167,10 +295,16 @@
</template>
<script>
import { listProcesscontent, getProcesscontent, delProcesscontent, addProcesscontent, updateProcesscontent } from "@/api/technology/recipecontent";
import {
listProcesscontent,
getProcesscontent,
delProcesscontent,
addProcesscontent,
updateProcesscontent,
} from "@/api/technology/recipecontent";
import ItemSelect from "./single.vue";
import ItemSelectBom from "./singleBom.vue";
import { Message } from 'element-ui'
import { Message } from "element-ui";
export default {
name: "Processcontent",
@ -183,6 +317,7 @@ export default {
loading: true,
//
ids: [],
idsName: [],
//
single: true,
//
@ -213,14 +348,17 @@ export default {
//
rules: {
recipeId: [
{ required: true, message: "工序不能为空", trigger: "blur" }
{ required: true, message: "工序不能为空", trigger: "blur" },
],
}
},
// -listtag
selectsubsidiaryListtag: [],
selectBOMListtag: [],
};
},
props: {
recipeId: undefined,
optType: undefined
optType: undefined,
},
created() {
this.getList();
@ -229,7 +367,7 @@ export default {
/** 查询生产工序内容列表 */
getList() {
this.loading = true;
listProcesscontent(this.queryParams).then(response => {
listProcesscontent(this.queryParams).then((response) => {
this.recipecontentList = response.rows;
this.total = response.total;
this.loading = false;
@ -254,7 +392,7 @@ export default {
createBy: null,
createTime: null,
updateBy: null,
updateTime: null
updateTime: null,
};
this.resetForm("form");
},
@ -270,9 +408,9 @@ export default {
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.contentId)
this.single = selection.length!==1
this.multiple = !selection.length
this.ids = selection.map((item) => item.contentId);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
/** 新增按钮操作 */
handleAdd() {
@ -283,9 +421,21 @@ export default {
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const contentId = row.contentId || this.ids
getProcesscontent(contentId).then(response => {
const contentId = row.contentId || this.ids;
this.selectsubsidiaryListtag = [];
this.selectBOMListtag = [];
getProcesscontent(contentId).then((response) => {
this.form = response.data;
if (this.form.material != "" && this.form.material != null) {
this.selectBOMListtag = JSON.parse(
JSON.stringify(this.form.material.split(","))
);
}
if (this.form.device != "" && this.form.device != null) {
this.selectsubsidiaryListtag = JSON.parse(
JSON.stringify(this.form.device.split(","))
);
}
this.open = true;
this.title = "修改操作步骤";
});
@ -293,16 +443,16 @@ export default {
/** 提交按钮 */
submitForm() {
// debugger
this.$refs["form"].validate(valid => {
this.$refs["form"].validate((valid) => {
if (valid) {
if (this.form.contentId != null) {
updateProcesscontent(this.form).then(response => {
updateProcesscontent(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addProcesscontent(this.form).then(response => {
addProcesscontent(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
@ -311,56 +461,89 @@ export default {
}
});
},
//
handleClose(tag) {
this.selectsubsidiaryListtag.splice(
this.selectsubsidiaryListtag.indexOf(tag),
1
);
this.form.device = "";
var code = [];
this.selectsubsidiaryListtag.forEach((item) => {
if (item) {
code.push(item);
}
});
console.log(code, this.selectsubsidiaryListtag);
this.form.device = code.join(",");
},
// BOM
handleCloseBOM(tag) {
this.selectBOMListtag.splice(this.selectBOMListtag.indexOf(tag), 1);
this.form.material = "";
var code = [];
this.selectBOMListtag.forEach((item) => {
if (item) {
code.push(item);
}
});
console.log(code, this.selectBOMListtag);
this.form.material = code.join(",");
},
//
onItemSelectedEquipment(obj) {
if (this.form.device == null || this.form.device == "") {
console.log("device是空if获取的obj", obj);
console.log("device是空if获取的device", this.form.device);
this.form.device = obj;
this.selectsubsidiaryListtag = obj.split(",");
} else {
if (obj != undefined && obj != null && obj != "") {
const a = obj.split(',');
console.log('切割的数组',obj.split(','));
a.forEach(item => {
const b = this.form.device.split(',');
const a = obj.split(",");
console.log("切割的数组", obj.split(","));
a.forEach((item) => {
const b = this.form.device.split(",");
const size = b.length;
console.log("size",size,b[size-1])
const item1 = item+',';
console.log("size", size, b[size - 1]);
const item1 = item + ",";
console.log("打印item1", item1);
this.checkDevice = this.form.device.search(item1) != -1;
console.log("check的值", this.checkDevice);
if (this.checkDevice == true || b[size - 1] == item) {
console.log("重复添加", true);
Message.warning('您已经添加过该设备,请勿重复添加!!!');
Message.warning("您已经添加过该设备,请勿重复添加!!!");
} else if (this.checkDevice == false) {
this.selectsubsidiaryListtag.push(item);
this.form.device = this.form.device + "," + item;
}
})
});
}
}
},
//
// BOM
onItemSelectedBom(obj) {
if (this.form.material == null || this.form.material == "") {
console.log("material是空if获取的obj", obj);
console.log("material是空if获取的material", this.form.material);
this.form.material = obj;
this.selectBOMListtag = obj.split(",");
} else {
if (obj != undefined && obj != null && obj != "") {
const a = obj.split(',');
const len = obj.split(',').length;
console.log('切割的数组',obj.split(','));
a.forEach(item => {
const a = obj.split(",");
const len = obj.split(",").length;
console.log("切割的数组", obj.split(","));
a.forEach((item) => {
this.checkMaterial = this.form.material.search(item) != -1;
console.log("check的值", this.check);
if (this.checkMaterial == true) {
console.log("重复添加", true);
Message.warning('您已经添加过该物料Bom,请勿重复添加!!!');
Message.warning("您已经添加过该物料Bom,请勿重复添加!!!");
} else if (this.checkMaterial == false) {
this.selectBOMListtag.push(item);
this.form.material = this.form.material + "," + item;
}
})
});
}
}
},
@ -375,19 +558,68 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const contentIds = row.contentId || this.ids;
this.$modal.confirm('是否确认删除操作步骤?').then(function() {
this.$modal
.confirm("是否确认删除操作步骤?")
.then(function () {
return delProcesscontent(contentIds);
}).then(() => {
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('technology/pro/recipecontent/export', {
...this.queryParams
}, `recipecontent_${new Date().getTime()}.xlsx`)
}
}
this.download(
"technology/pro/recipecontent/export",
{
...this.queryParams,
},
`recipecontent_${new Date().getTime()}.xlsx`
);
},
},
};
</script>
<style lang="scss" scoped>
.tagbox {
display: flex;
/* overflow: scroll; */
position: relative;
width: 100%;
// padding-left: 26px;
margin-bottom: 15px;
.tagboxlabel {
width: 109px;
text-align: right;
vertical-align: middle;
font-size: 14px;
color: black;
line-height: 40px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin-right: 15px;
}
.tag {
width: 82%;
border: 1px #dcdfe6 solid;
height: 70px;
padding: 5px 15px;
overflow-y: scroll;
.tagitem {
margin-left: 5px;
}
}
.button1 {
width: 57px;
height: 35px;
margin-left: 10px;
background: #f5f7fa;
}
}
div.tag:empty:before {
content: attr(placeholder);
color: #bbb;
}
</style>

@ -26,7 +26,7 @@
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="105px" align="center">
<el-form-item label="BOM物料编码" prop="itemCode">
<el-input
v-model="queryParams.itemCode"
v-model="queryParams.component"
placeholder="请输入BOM物料编码"
clearable
style="width: 240px"
@ -35,7 +35,7 @@
</el-form-item>
<el-form-item label="产品名称" prop="itemName">
<el-input
v-model="queryParams.itemName"
v-model="queryParams.componentName"
placeholder="请输入产品名称"
clearable
style="width: 240px"
@ -55,9 +55,6 @@
</el-table-column>
<!-- 序号 -->
<el-table-column type="index" width="90" align="center" :index="indexMethod" label="序号"></el-table-column>
<el-table-column label="BOM物料编码" align="center" key="itemCode" prop="bomCode" v-if="columns[0].visible" >
</el-table-column>
<el-table-column label="产品名称" align="left" key="itemName" prop="productDescZh" v-if="columns[1].visible" :show-overflow-tooltip="true" />
<el-table-column label="BOM物料组件编码" align="left" key="component" prop="component" v-if="columns[2].visible" :show-overflow-tooltip="true" />
<el-table-column label="BOM物料组件名称" align="left" key="componentName" prop="componentName" v-if="columns[3].visible" :show-overflow-tooltip="true" />
</el-table>
@ -112,10 +109,10 @@ export default {
pageNum: 1,
pageSize: 10,
itemName: undefined,
bomCode: undefined,
itemTypeId: 0,
component: '',
//itemTypeId: 0,
itemCodeGet: '',
productDescZh : undefined,
componentName : ''
},
//
columns: [
@ -219,7 +216,8 @@ export default {
//
handleBomSelectionChange(selection) {
this.ids = selection.map(item => item.bomCode);
this.ids = selection.map(item => item.component);
this.idsName = selection.map(item => item.componentName);
this.single = selection.length!==1;
this.multiple = !selection.length;
console.log("多选框",this.ids);

Loading…
Cancel
Save