Commit 05f61f16 by yiyu.li

add

parent 5b3c335c
...@@ -41,9 +41,11 @@ ...@@ -41,9 +41,11 @@
<span class="red">*</span> <span class="red">*</span>
</p> </p>
<Tabs type="card"> <Tabs type="card">
<TabPane label="上料"> <TabPane label="上料" :disabled="attr1">
<div class="filter"> <div class="filter">
<label>上料信息:</label> <label style="font-size: 16px"
>上料信息:</label
>
<Input <Input
type="text" type="text"
class="searchInput" class="searchInput"
...@@ -81,20 +83,86 @@ ...@@ -81,20 +83,86 @@
<span class="infoLabel">工装编号:</span> <span class="infoLabel">工装编号:</span>
<span class="info"></span> <span class="info"></span>
</p> </p>
<Button type="primary">储位选择</Button> <Button type="primary" @click="modal = true"
>储位选择</Button
>
</div> </div>
<div> <div>
<Button type="primary">准备上料</Button> <Button type="primary">准备上料</Button>
<Button type="primary">安装完成</Button> <Button type="primary">安装完成</Button>
</div> </div>
</TabPane> </TabPane>
<TabPane label="下料">下料</TabPane> <TabPane label="下料" :disabled="attr2"
><div class="flex">
<div>
<Table
class="tableClass"
:data="data2"
:columns="columns2"
:max-height="200"
style="width: 500px"
></Table>
</div>
<div>
<div class="row">
<p class="flex">
<span class="infoLabel"
>工单信息:</span
>
<span class="info"></span>
</p>
<p class="flex">
<span class="infoLabel"
>产品编号:</span
>
<span class="info"></span>
</p>
<p class="flex">
<span class="infoLabel"
>产品名称:</span
>
<span class="info"></span>
</p>
<p class="flex">
<span class="infoLabel"
>工件编号:</span
>
<span class="info"></span>
</p>
</div>
<div class="row">
<p class="flex">
<span class="infoLabel"
>状态:</span
>
<span class="info"></span>
</p>
<p class="flex">
<span class="infoLabel"
>储位编号:</span
>
<span class="info"></span>
</p>
<p class="flex">
<span class="infoLabel"
>工装编号:</span
>
<span class="info"></span>
</p>
</div>
<div>
<Button type="primary">准备上料</Button>
<Button type="primary">安装完成</Button>
</div>
</div>
</div></TabPane
>
</Tabs> </Tabs>
<Modal <Modal
class="newModalClass" class="newModalClass"
:title="$t(900249)" title="储位选择"
v-model="modal" v-model="modal"
:styles="{ width: '940px' }" :styles="{ width: '700px' }"
> >
<div class="modal_body" style="padding-right: 40px"> <div class="modal_body" style="padding-right: 40px">
<Table <Table
...@@ -115,7 +183,6 @@ ...@@ -115,7 +183,6 @@
<Button <Button
type="primary" type="primary"
size="large" size="large"
v-text="$t('1011')" v-text="$t('1011')"
>提交</Button >提交</Button
> >
...@@ -132,17 +199,153 @@ export default { ...@@ -132,17 +199,153 @@ export default {
data() { data() {
return { return {
productionLine: [], productionLine: [],
a: 0, stationList: [],
modal:false, a: -1,
columns1:[], attr1: false, //上料、下料、上下料
data1:[] attr2: false, //上料、下料、上下料
modal: false,
columns1: [
{
title: this.$t("1008"),
key: "xuhao",
render: (h, params) => {
return h(
"span",
params.index + (this.page - 1) * this.pagesize + 1
);
},
width: 70,
},
{
title: "仓库",
key: "warehouse",
},
{
title: "储位编号",
key: "storage_sn",
},
{
title: "工装编号",
key: "install_sn",
},
{
title: "工件编号",
key: "workpiece_sn",
},
],
data1: [],
columns2: [
{
title: this.$t("1008"),
key: "xuhao",
render: (h, params) => {
return h(
"span",
params.index + (this.page - 1) * this.pagesize + 1
);
},
width: 70,
},
{
title: "储位编号",
key: "storage_sn",
},
{
title: "工装编号",
key: "install_sn",
},
{
title: "工件编号",
key: "workpiece_sn",
},
],
data2: [],
}; };
}, },
created() {}, created() {
this.getProLine();
},
mounted() {
// this.getStations()
},
methods: { methods: {
// 获取生产线
getProLine() {
this.axios
.request({
url: "/qms/RepairPostionSetting/GetChanel",
method: "get",
})
.then((res) => {
this.productionLine = res.data.data;
// this.change(0);
if (this.productionLine.length == 0) {
this.$Message.error(this.$t(950057));
}
});
},
getStations(id) {
this.request(
"/qms/RepairPostionSetting/GetSettingByChanel?Id=" + id,
"",
"get"
).then((res) => {
// console.log(res.data.data);
if (res.data.ret == 1) {
this.stationList = res.data.data;
}
});
},
change(i) { change(i) {
this.a = i; this.a = i;
// 1. 选中产线后自动带出来工位属性中为上下料属性的工位 this.getStations(this.productionLine[i].id);
},
//获取储位
getStorages() {
this.request("", "", "")
.then((res) => {
if (res.data.ret == 1) {
}
})
.catch((err) => {
console.log(err);
});
},
// 获取工单信息
getWorkOrderInfo() {
this.request("", "", "")
.then((res) => {
if (res.data.ret == 1) {
}
})
.catch((err) => {
console.log(err);
});
},
request(url, data, type) {
if (type == "get") {
return this.axios
.request({
url: url,
params: data,
method: type,
})
.then((res) => {
return res;
})
.catch((error) => error);
} else {
return this.axios
.request({
url: url,
data,
method: type,
})
.then((res) => {
return res;
})
.catch((error) => error);
}
}, },
}, },
}; };
...@@ -199,4 +402,10 @@ export default { ...@@ -199,4 +402,10 @@ export default {
width: 200px; width: 200px;
font-size: 20px; font-size: 20px;
} }
.ivu-btn {
margin: 10px;
}
.m010 {
margin: 0 10px;
}
</style> </style>
\ No newline at end of file
<template> <template>
<div> <div>
产线监控管理 <div class="divborder">
</div> <h2>基本信息</h2>
<div class="newSearchDiv">
<div class="filter">
<label>{{ $t("1950574") }}</label>
<Cascader trigger="click" class="searchSelect"></Cascader>
</div>
<div class="searchBtn">
<Button type="primary" class="twoWord" icon="ios-search">{{
$t("1001")
}}</Button>
<Button type="primary" class="twoWord" icon="ios-search"
>导出</Button
>
</div>
</div>
</div>
<div class="divborder">
<div class="stateTitle flex">
<p><span>4</span>生产中</p>
<p><span>4</span>待下料</p>
<p><span>4</span>待上料</p>
<p><span>4</span>不可用</p>
</div>
<div class="stateWrap">
<div class="stateItem">
<p class="flex">
<span class="infoLabel">工位:</span>
<span class="info"></span>
</p>
<p class="flex">
<span class="infoLabel">产品:</span>
<span class="info"></span>
</p>
<p class="flex">
<span class="infoLabel">工装:</span>
<span class="info"></span>
</p>
<p class="flex">
<span class="infoLabel">储位:</span>
<span class="info"></span>
</p>
<p class="flex">
<span class="infoLabel">工件:</span>
<span class="info"></span>
</p>
</div>
</div>
<Table
class="tableClass"
:data="data1"
:columns="columns1"
:max-height="200"
></Table>
<Table
class="tableClass"
:data="data2"
:columns="columns2"
:max-height="200"
></Table>
<Table
class="tableClass"
:data="data3"
:columns="columns3"
:max-height="200"
></Table>
</div>
</div>
</template> </template>
<script> <script>
export default { export default {
data() {
} return {
productionLine: [],
a: 0,
modal: false,
columns1: [
{
title: this.$t("1008"),
key: "xuhao",
render: (h, params) => {
return h(
"span",
params.index + (this.page - 1) * this.pagesize + 1
);
},
width: 70,
},
{
title: "产线层级",
key: "warehouse",
},
{
title: "设备",
key: "storage_sn",
},
{
title: "工装编号",
key: "install_sn",
},
{
title: "产品编号",
key: "workpiece_sn",
},
{
title: "工件编号",
key: "storage_sn",
},
{
title: "状态",
key: "install_sn",
},
{
title: "最后更新时间",
key: "workpiece_sn",
},
],
data1: [],
columns2: [
{
title: this.$t("1008"),
key: "xuhao",
render: (h, params) => {
return h(
"span",
params.index + (this.page - 1) * this.pagesize + 1
);
},
width: 70,
},
{
title: "父工装类别",
key: "warehouse",
},
{
title: "父工装编号",
key: "storage_sn",
},
{
title: "父工装名称",
key: "install_sn",
},
{
title: "父工装规格",
key: "workpiece_sn",
},
{
title: "父工装编号",
key: "storage_sn",
},
{
title: "子工装类别",
key: "install_sn",
},
{
title: "最后更新时间",
key: "workpiece_sn",
},
],
data1: [],
columns3: [
{
title: this.$t("1008"),
key: "xuhao",
render: (h, params) => {
return h(
"span",
params.index + (this.page - 1) * this.pagesize + 1
);
},
width: 70,
},
{
title: "产线层级",
key: "warehouse",
},
{
title: "设备",
key: "storage_sn",
},
{
title: "工装编号",
key: "install_sn",
},
{
title: "产品编号",
key: "workpiece_sn",
},
{
title: "工件编号",
key: "storage_sn",
},
{
title: "状态",
key: "install_sn",
},
{
title: "最后更新时间",
key: "workpiece_sn",
},
],
data1: [],
};
},
created() {},
};
</script> </script>
<style> <style lang="less" scoped>
.flex {
display: flex;
}
.stateWrap {
margin: 20px 10px;
}
.stateItem {
border: 1px solid #000;
width: 200px;
height: 150px;
padding-left: 10px;
p {
height: 30px;
line-height: 30px;
font-size: 16px;
}
}
.stateTitle {
p {
font-size: 20px;
width: 150px;
height: 40px;
line-height: 40px;
span {
display: inline-block;
margin: 0 10px;
text-align: center;
width: 40px;
height: 40px;
color: #fff;
// border: 1px solid #333;
}
}
p:nth-child(1) span {
background-color: #2db7f5;
}
p:nth-child(2) span {
background-color: #19be6b;
}
p:nth-child(3) span {
background-color: #ff9900;
}
p:nth-child(4) span {
background-color: #ed4014;
}
}
</style> </style>
\ No newline at end of file
<template> <template>
<div class="testdiv"> <div class="testdiv">
\任务清单管理
<div class="divborder"> <div class="divborder">
<h2>基本信息</h2> <h2>基本信息</h2>
<div class="newSearchDiv"> <div class="newSearchDiv">
<div class="filter"> <div class="filter">
<label>{{ $t("1950574") }}</label> <label>{{ $t("1132") }}</label>
<Cascader trigger="click" class="searchSelect"></Cascader> <Cascader
trigger="click"
class="searchSelect"
:data="datalevel"
:value="leveldata"
></Cascader>
</div> </div>
<div class="filter"> <div class="filter">
<label>任务类型:</label> <label>任务类型:</label>
...@@ -83,17 +87,33 @@ ...@@ -83,17 +87,33 @@
></DatePicker> ></DatePicker>
</div> </div>
<div class="searchBtn"> <div class="searchBtn">
<Button type="primary" class="twoWord" icon="ios-search">{{ <Button
$t("1001") type="primary"
}}</Button> class="twoWord"
icon="ios-search"
@click="search()"
>{{ $t("1001") }}</Button
>
<!-- --> <!-- -->
<Button type="primary" class="twoWord" icon="ios-search" <Button
type="warning"
class="twoWord"
icon="ios-search"
@click="cancel()"
>取消</Button >取消</Button
><!--只有状态是待执行的可以改成取消--> ><!--只有状态是待执行的可以改成取消-->
<Button type="primary" class="twoWord" icon="ios-search" <Button
type="primary"
class="twoWord"
icon="ios-search"
@click="manual()"
>手动</Button >手动</Button
><!--当生产线的模式是手动是才可以进行手动任务执行--> ><!--当生产线的模式是手动是才可以进行手动任务执行-->
<Button type="primary" class="twoWord" icon="ios-search" <Button
type="primary"
class="twoWord"
icon="ios-search"
@click="exportExcel()"
>导出</Button >导出</Button
> >
</div> </div>
...@@ -121,22 +141,91 @@ ...@@ -121,22 +141,91 @@
export default { export default {
data() { data() {
return { return {
leveldata: [], // 产线层级插件所需数据
datalevel: [], // 产线层级选中数据
columns1: [ columns1: [
{ {
title: this.$t('1008'), title: this.$t("1008"),
key: 'xuhao', key: "xuhao",
render: (h, params) => { render: (h, params) => {
return h( return h(
'span', "span",
params.index + (this.page - 1) * this.pagesize + 1 params.index + (this.page - 1) * this.pagesize + 1
); );
}, },
width: 70 width: 70,
},
{
title: "任务清单",
key: "productcode",
},
{
title: "产线层级",
key: "productcode",
},
{
title: "触发方",
key: "productcode",
},
{
title: "任务类型",
key: "productcode",
}, },
{ {
title: this.$t('100089'), title: "发起地",
key: 'productcode', key: "productcode",
minWidth: 150 },
{
title: "工件编号",
key: "productcode",
},
{
title: "工单编号",
key: "productcode",
},
{
title: "产品编号",
key: "productcode",
},
{
title: "工序编号",
key: "productcode",
},
{
title: "工序",
key: "productcode",
},
{
title: "程序号",
key: "productcode",
},
{
title: "储位位置",
key: "productcode",
},
{
title: "工装编号",
key: "productcode",
},
{
title: "动作",
key: "productcode",
},
{
title: "执行类型",
key: "productcode",
},
{
title: "状态",
key: "productcode",
},
{
title: "触发时间",
key: "productcode",
},
{
title: "完成时间",
key: "productcode",
}, },
], ],
data1: [], data1: [],
...@@ -147,8 +236,30 @@ export default { ...@@ -147,8 +236,30 @@ export default {
}, },
created() { created() {
this.columns1 = this.$time.initTableTitle(this.columns1); this.columns1 = this.$time.initTableTitle(this.columns1);
this.initlevel()
},
methods: {
search() {},
cancel() {},
manual() {},
exportExcel() {},
initlevel() {
// 初始化产线层级
this.axios
.request({
url: "config/ProjectLevelSection/GetSectionTree",
method: "get",
})
.then((res) => {
const arr = [];
if (res.data.data.length > 0) {
this.datalevel = res.data.data;
arr.push(res.data.data[0].value);
this.leveldata = arr;
}
});
},
}, },
methods: {},
}; };
</script> </script>
......
<template> <template>
<div class="entryWrap" id="entry"> <div class="entryWrap" id="entry">
<div class="expand" id="full" @click="handleFullScreen"> <div class="expand" id="full" @click="handleFullScreen">
<Icon type="md-expand" size="50" /> <Icon type="md-expand" size="50" />
</div>
<div class="entryItem">
<div class="choose">
<p class="selectTitle">
1.{{$t(90000016)}}
<span class="red">*</span>
</p>
<div class="row">
<p
:key="index"
class="options"
v-for="(item,index) in passageList"
@click="change(index)"
:class="{active:a==index}"
>{{item.title}}</p>
</div> </div>
</div> <div class="entryItem">
<div class="choose"> <div class="choose">
<p class="selectTitle"> <p class="selectTitle">
2.{{$t('1052')}} 1.{{ $t(90000016) }}
<span class="red">*</span> <span class="red">*</span>
({{$t('1220')}}) </p>
</p> <div class="row">
<div class="row"> <p
<p :key="index"
class="options" class="options"
:key="index" v-for="(item, index) in passageList"
v-for="(item,index) in stationList" @click="change(index)"
@click="change1(index)" :class="{ active: a == index }"
:class="{active:b==index}" >
>{{item.item}}</p> {{ item.title }}
</p>
</div>
</div>
<div class="choose">
<p class="selectTitle">
2.{{ $t("1052") }}
<span class="red">*</span>
({{ $t("1220") }})
</p>
<div class="row">
<p
class="options"
:key="index"
v-for="(item, index) in stationList"
@click="change1(index)"
:class="{ active: b == index }"
>
{{ item.item }}
</p>
</div>
</div>
</div> </div>
</div> <div class="entryItem">
</div> <div class="choose">
<div class="entryItem"> <p class="selectTitle">
<div class="choose"> 3.{{ $t("100217") }}
<p class="selectTitle"> <span class="red">*</span>
3.{{$t('100217')}} </p>
<span class="red">*</span> <div class="row">
</p> <p
<div class="row"> :key="index"
<p class="options"
:key="index" v-for="(item, index) in productList"
class="options" @click="change2(index)"
v-for="(item,index) in productList" :class="{ active: c == index }"
@click="change2(index)" >
:class="{active:c==index}" {{ item.productName }}
>{{item.productName}}</p> </p>
</div>
</div>
<div class="choose">
<p class="selectTitle">4.{{ $t(1950603) }}</p>
<div class="row">
<p
:key="index"
class="options"
v-for="(item, index) in materialList"
@click="change3(index)"
:class="{ active: d == index && must == true }"
>
{{ item.name + "【" + item.pn + "】" }}
</p>
</div>
</div>
</div> </div>
</div> <div class="entryItem">
<div class="choose"> <div class="choose">
<p class="selectTitle">4.{{$t(1950603)}}</p> <p class="selectTitle">5.{{ $t(90000048) }}</p>
<div class="row"> <div class="row">
<p <p
:key="index" :key="index"
class="options" class="options"
v-for="(item,index) in materialList" v-for="(item, index) in projectList"
@click="change3(index)" @click="change4(index)"
:class="{active:d==index && must==true}" :class="{ active: e == index && pmust == true }"
>{{item.name +"【"+item.pn+"】"}}</p> >
{{ item.item }}
</p>
</div>
</div>
</div> </div>
</div> <div class="entryItem">
</div> <div class="choose">
<div class="entryItem"> <p class="selectTitle">6.{{ $t(5500006) }}</p>
<div class="choose"> <div class="row">
<p class="selectTitle">5.{{$t(90000048)}}</p> <p
<div class="row"> :key="index"
<p class="options"
:key="index" v-for="(item, index) in referType"
class="options" @click="change5(index)"
v-for="(item,index) in projectList" :class="{ active: f == index && tmust == true }"
@click="change4(index)" >
:class="{active:e==index && pmust==true}" {{ item.name }}
>{{item.item}}</p> </p>
</div>
</div>
</div> </div>
</div> <div class="entryItem">
</div> <div class="choose">
<div class="entryItem"> <p class="selectTitle">7.{{ $t(5500005) }}</p>
<div class="choose"> <div class="row">
<p class="selectTitle">6.{{$t(5500006)}}</p> <p
<div class="row"> :key="index"
<p class="options"
:key="index" v-for="(item, index) in reference"
class="options" @click="change6(index)"
v-for="(item,index) in referType" :class="{ active: g == index && rmust == true }"
@click="change5(index)" >
:class="{active:f==index && tmust==true}" {{ item.remark }}
>{{item.name}}</p> </p>
</div>
</div>
</div> </div>
</div> <div class="entryItem">
</div> <div class="choose">
<div class="entryItem"> <p class="selectTitle">8.{{ $t(90000049) }}</p>
<div class="choose"> <div class="row">
<p class="selectTitle">7.{{$t(5500005)}}</p> <div class="number row">
<div class="row"> <p class="minus" @click="reduce">-</p>
<p <input type="text" class="digit" v-model="number" />
:key="index" <p class="plus" @click="add">+</p>
class="options" </div>
v-for="(item,index) in reference" <input
@click="change6(index)" class="erweima"
:class="{active:g==index && rmust==true}" type="text"
>{{item.remark}}</p> v-model="qrcode"
@keyup.enter="save()"
/>
</div>
</div>
</div> </div>
</div> <div class="entryItem pr">
</div> <!-- <div class="tip" v-show="tip==true">提示:返工{{successnum}}个工件成功!</div> -->
<div class="entryItem"> <div class="tip" v-html="showMsg"></div>
<div class="choose"> <button class="save" @click="save" v-text="$t(900306)">保存</button>
<p class="selectTitle">8.{{$t(90000049)}}</p>
<div class="row">
<div class="number row">
<p class="minus" @click="reduce">-</p>
<input type="text" class="digit" v-model="number" />
<p class="plus" @click="add">+</p>
</div>
<input class="erweima" type="text" v-model="qrcode" @keyup.enter="save()" />
</div> </div>
</div>
</div> </div>
<div class="entryItem pr">
<!-- <div class="tip" v-show="tip==true">提示:返工{{successnum}}个工件成功!</div> -->
<div class="tip" v-html="showMsg"></div>
<button class="save" @click="save" v-text="$t(900306)">保存</button>
</div>
</div>
</template> </template>
<script> <script>
import axios from '@/libs/api.request'; import axios from "@/libs/api.request";
export default { export default {
data () { data() {
return { return {
passageList: ['CH3.3', 'CH3.3fsgfdgd', 'CH3.3', 'CH3.3', 'CH3.3'], passageList: ["CH3.3", "CH3.3fsgfdgd", "CH3.3", "CH3.3", "CH3.3"],
stationList: [], stationList: [],
productList: [], productList: [],
materialList: [], materialList: [],
...@@ -148,9 +167,9 @@ export default { ...@@ -148,9 +167,9 @@ export default {
material: 0, // 物料 material: 0, // 物料
project: 0, // 不良项目 project: 0, // 不良项目
typeid: 0, typeid: 0,
reason: '', reason: "",
number: 0, // 返工数量 number: 0, // 返工数量
qrcode: '', // 二维码 qrcode: "", // 二维码
settingId: 0, // 返工设置ID settingId: 0, // 返工设置ID
a: 0, a: 0,
b: 0, b: 0,
...@@ -170,20 +189,20 @@ export default { ...@@ -170,20 +189,20 @@ export default {
arr2: [], arr2: [],
arr3: [], arr3: [],
array: [], array: [],
showMsg: '' showMsg: "",
}; };
}, },
created () { created() {
this.init(); this.init();
this.loadReferType(); this.loadReferType();
// this.change(0); // this.change(0);
}, },
methods: { methods: {
init () { init() {
axios axios
.request({ .request({
url: '/qms/RepairPostionSetting/GetChanel', url: "/qms/RepairPostionSetting/GetChanel",
method: 'get' method: "get",
}) })
.then((res) => { .then((res) => {
this.passageList = res.data.data; this.passageList = res.data.data;
...@@ -193,7 +212,7 @@ export default { ...@@ -193,7 +212,7 @@ export default {
} }
}); });
}, },
initData () { initData() {
this.station = 0; this.station = 0;
this.product = 0; this.product = 0;
this.material = 0; this.material = 0;
...@@ -204,7 +223,7 @@ export default { ...@@ -204,7 +223,7 @@ export default {
this.tip = false; this.tip = false;
}, },
// 选择通道 // 选择通道
change (i) { change(i) {
this.a = i; this.a = i;
this.initData(); this.initData();
this.passage = this.passageList[i].id; this.passage = this.passageList[i].id;
...@@ -214,8 +233,9 @@ export default { ...@@ -214,8 +233,9 @@ export default {
axios axios
.request({ .request({
url: url:
'/qms/RepairPostionSetting/GetSettingByChanel?Id=' + this.passage, "/qms/RepairPostionSetting/GetSettingByChanel?Id=" +
method: 'get' this.passage,
method: "get",
}) })
.then((res) => { .then((res) => {
// console.log(res.data.data); // console.log(res.data.data);
...@@ -229,7 +249,7 @@ export default { ...@@ -229,7 +249,7 @@ export default {
}); });
}, },
// 选择工位 // 选择工位
change1 (i) { change1(i) {
this.tip = false; this.tip = false;
this.material = 0; this.material = 0;
this.project = 0; this.project = 0;
...@@ -243,8 +263,9 @@ export default { ...@@ -243,8 +263,9 @@ export default {
axios axios
.request({ .request({
url: url:
'/qms/InspectStandard/GetOQCItemProduct?sectionId=' + this.station, "/qms/InspectStandard/GetOQCItemProduct?sectionId=" +
method: 'get' this.station,
method: "get",
}) })
.then((res) => { .then((res) => {
this.productList = res.data.data; this.productList = res.data.data;
...@@ -261,14 +282,14 @@ export default { ...@@ -261,14 +282,14 @@ export default {
// 根据产品选择物料 // 根据产品选择物料
var params = { var params = {
productId: this.product, productId: this.product,
section: this.station section: this.station,
}; };
if (this.productList.length > 0) { if (this.productList.length > 0) {
axios axios
.request({ .request({
url: '/qms/ManufacturingMaterial/GetMaterialByCell', url: "/qms/ManufacturingMaterial/GetMaterialByCell",
params, params,
method: 'get' method: "get",
}) })
.then((res) => { .then((res) => {
if (res.data.ret === 1) { if (res.data.ret === 1) {
...@@ -280,11 +301,11 @@ export default { ...@@ -280,11 +301,11 @@ export default {
axios axios
.request({ .request({
url: url:
'/qms/InspectStandard/GetItems?productid=' + "/qms/InspectStandard/GetItems?productid=" +
this.product + this.product +
'&sectionid=' + "&sectionid=" +
this.station, this.station,
method: 'get' method: "get",
}) })
.then((res) => { .then((res) => {
this.projectList = res.data.data; this.projectList = res.data.data;
...@@ -295,7 +316,7 @@ export default { ...@@ -295,7 +316,7 @@ export default {
} }
}, },
// 选择产品 // 选择产品
change2 (i) { change2(i) {
this.project = 0; this.project = 0;
this.material = 0; this.material = 0;
this.must = false; this.must = false;
...@@ -305,13 +326,13 @@ export default { ...@@ -305,13 +326,13 @@ export default {
// 根据产品选择物料 // 根据产品选择物料
var params = { var params = {
productId: this.productList[i].productId, productId: this.productList[i].productId,
section: this.station section: this.station,
}; };
axios axios
.request({ .request({
url: '/qms/ManufacturingMaterial/GetMaterialByCell', url: "/qms/ManufacturingMaterial/GetMaterialByCell",
params, params,
method: 'get' method: "get",
}) })
.then((res) => { .then((res) => {
if (res.data.ret == 1 && res.data.data.length > 0) { if (res.data.ret == 1 && res.data.data.length > 0) {
...@@ -326,11 +347,11 @@ export default { ...@@ -326,11 +347,11 @@ export default {
axios axios
.request({ .request({
url: url:
'/qms/InspectStandard/GetItems?productid=' + "/qms/InspectStandard/GetItems?productid=" +
this.product + this.product +
'&sectionid=' + "&sectionid=" +
this.station, this.station,
method: 'get' method: "get",
}) })
.then((res) => { .then((res) => {
this.projectList = res.data.data; this.projectList = res.data.data;
...@@ -338,7 +359,7 @@ export default { ...@@ -338,7 +359,7 @@ export default {
}); });
}, },
// 选择物料 // 选择物料
change3 (i) { change3(i) {
this.tip = false; this.tip = false;
// this.must = true; // this.must = true;
// this.d = i; // this.d = i;
...@@ -362,7 +383,7 @@ export default { ...@@ -362,7 +383,7 @@ export default {
}, },
// 选择不良项目 // 选择不良项目
change4 (i) { change4(i) {
this.tip = false; this.tip = false;
let arrIndex = this.arr2.indexOf(i); let arrIndex = this.arr2.indexOf(i);
...@@ -381,7 +402,7 @@ export default { ...@@ -381,7 +402,7 @@ export default {
} }
}, },
// 选择返工类型 // 选择返工类型
change5 (i) { change5(i) {
this.tip = false; this.tip = false;
let arrIndex = this.arr3.indexOf(i); let arrIndex = this.arr3.indexOf(i);
...@@ -389,7 +410,7 @@ export default { ...@@ -389,7 +410,7 @@ export default {
this.arr3 = []; this.arr3 = [];
this.tmust = true; this.tmust = true;
this.f = -1; this.f = -1;
this.remark = ''; this.remark = "";
this.reasonList = []; this.reasonList = [];
} else { } else {
this.arr3 = []; this.arr3 = [];
...@@ -402,14 +423,14 @@ export default { ...@@ -402,14 +423,14 @@ export default {
} }
}, },
// 选择返工原因 // 选择返工原因
change6 (i) { change6(i) {
let arrIndex = this.array.indexOf(i); let arrIndex = this.array.indexOf(i);
if (arrIndex > -1) { if (arrIndex > -1) {
this.array = []; this.array = [];
this.rmust = false; this.rmust = false;
this.g = -1; this.g = -1;
this.reason = ''; this.reason = "";
} else { } else {
this.array = []; this.array = [];
this.g = -1; this.g = -1;
...@@ -420,7 +441,7 @@ export default { ...@@ -420,7 +441,7 @@ export default {
} }
// console.log(this.reason); // console.log(this.reason);
}, },
reduce () { reduce() {
this.tip = false; this.tip = false;
if (this.number > 1) { if (this.number > 1) {
...@@ -429,11 +450,11 @@ export default { ...@@ -429,11 +450,11 @@ export default {
this.number = 1; this.number = 1;
} }
}, },
add () { add() {
this.tip = false; this.tip = false;
this.number++; this.number++;
}, },
save () { save() {
if (this.number < 1) { if (this.number < 1) {
// window_warning('返工数量不能小于1') // window_warning('返工数量不能小于1')
this.showMsg = this.$t(930026) + this.$t(930058); this.showMsg = this.$t(930026) + this.$t(930058);
...@@ -466,27 +487,28 @@ export default { ...@@ -466,27 +487,28 @@ export default {
QID: this.project, QID: this.project,
Remark: this.reason, Remark: this.reason,
Count: this.number, Count: this.number,
SettingId: this.settingId SettingId: this.settingId,
}; };
axios axios
.request({ .request({
url: '/qms/RepairData/AddRepair', url: "/qms/RepairData/AddRepair",
data, data,
method: 'post' method: "post",
}) })
.then((res) => { .then((res) => {
if (res.data.ret == 1) { if (res.data.ret == 1) {
this.tip = true; this.tip = true;
this.number = 0; this.number = 0;
this.qrcode = ''; this.qrcode = "";
this.showMsg = this.$t(930059) + this.successnum + this.$t(930060); this.showMsg =
this.$t(930059) + this.successnum + this.$t(930060);
} }
// 成功后显示提示 // 成功后显示提示
}); });
}, },
// 全屏事件 // 全屏事件
handleFullScreen () { handleFullScreen() {
let element = document.getElementById('entry'); let element = document.getElementById("entry");
// 判断是否已经是全屏 // 判断是否已经是全屏
// 如果是全屏,退出 // 如果是全屏,退出
if (this.fullscreen) { if (this.fullscreen) {
...@@ -515,14 +537,16 @@ export default { ...@@ -515,14 +537,16 @@ export default {
// 改变当前全屏状态 // 改变当前全屏状态
this.fullscreen = !this.fullscreen; this.fullscreen = !this.fullscreen;
}, },
submitqr () { submitqr() {
if (this.qrcode == '') { if (this.qrcode == "") {
this.$Message.error(this.$t(9000436)); this.$Message.error(this.$t(9000436));
} else { } else {
axios axios
.request({ .request({
url: "'/qms/RepairData/GetProductRoute?sn=" + this.qrcode, url:
method: 'post' "'/qms/RepairData/GetProductRoute?sn=" +
this.qrcode,
method: "post",
}) })
.then((res) => { .then((res) => {
if (res.data.ret == 1) { if (res.data.ret == 1) {
...@@ -533,11 +557,11 @@ export default { ...@@ -533,11 +557,11 @@ export default {
}); });
} }
}, },
loadReferType () { loadReferType() {
axios axios
.request({ .request({
url: '/qms/ReworkReferenceType/GetItem?type=1', url: "/qms/ReworkReferenceType/GetItem?type=1",
method: 'get' method: "get",
}) })
.then((res) => { .then((res) => {
if (res.data.ret === 1) { if (res.data.ret === 1) {
...@@ -547,11 +571,13 @@ export default { ...@@ -547,11 +571,13 @@ export default {
} }
}); });
}, },
loadRefer () { loadRefer() {
axios axios
.request({ .request({
url: '/qms/ReworkReference/GetItem?type=1&referType=' + this.typeid, url:
method: 'get' "/qms/ReworkReference/GetItem?type=1&referType=" +
this.typeid,
method: "get",
}) })
.then((res) => { .then((res) => {
if (res.data.ret === 1) { if (res.data.ret === 1) {
...@@ -561,144 +587,144 @@ export default { ...@@ -561,144 +587,144 @@ export default {
console.log(this.$t(res.data.msg)); console.log(this.$t(res.data.msg));
} }
}); });
} },
} },
}; };
</script> </script>
<style scoped> <style scoped>
.row { .row {
display: flex; display: flex;
flex-direction: row; flex-direction: row;
flex-wrap: wrap; flex-wrap: wrap;
flex-shrink: 1; flex-shrink: 1;
} }
.entryWrap { .entryWrap {
position: relative; position: relative;
background-color: #f5f7f9; background-color: #f5f7f9;
overflow-y: auto; overflow-y: auto;
overflow-x: hidden; overflow-x: hidden;
} }
.expand { .expand {
position: absolute; position: absolute;
top: 10px; top: 10px;
right: 10px; right: 10px;
/* left: 95%; */ /* left: 95%; */
} }
.entryItem { .entryItem {
background-color: #fff; background-color: #fff;
border-radius: 10px; border-radius: 10px;
margin-bottom: 20px; margin-bottom: 20px;
padding: 20px; padding: 20px;
width: 100%; width: 100%;
} }
.selectTitle { .selectTitle {
font-size: 18px; font-size: 18px;
} }
.options { .options {
font-size: 12px; font-size: 12px;
padding: 0 12px; padding: 0 12px;
/* width: 100px; */ /* width: 100px; */
height: 50px; height: 50px;
line-height: 50px; line-height: 50px;
text-align: center; text-align: center;
border-radius: 5px; border-radius: 5px;
background-color: #f2f2f2; background-color: #f2f2f2;
margin: 10px 0; margin: 10px 0;
margin-right: 50px; margin-right: 50px;
cursor: pointer; cursor: pointer;
} }
.active { .active {
background-color: #2d8cf0; background-color: #2d8cf0;
color: #fff; color: #fff;
} }
.number { .number {
margin: 10px 55px 10px 0; margin: 10px 55px 10px 0;
} }
.minus { .minus {
width: 55px; width: 55px;
height: 42px; height: 42px;
line-height: 42px; line-height: 42px;
font-size: 20px; font-size: 20px;
text-align: center; text-align: center;
color: #fff; color: #fff;
background-color: #2d8cf0; background-color: #2d8cf0;
border-radius: 5px; border-radius: 5px;
cursor: pointer; cursor: pointer;
} }
.plus { .plus {
width: 55px; width: 55px;
height: 42px; height: 42px;
line-height: 42px; line-height: 42px;
font-size: 20px; font-size: 20px;
text-align: center; text-align: center;
color: #fff; color: #fff;
background-color: #2d8cf0; background-color: #2d8cf0;
border-radius: 5px; border-radius: 5px;
cursor: pointer; cursor: pointer;
} }
.digit { .digit {
display: block; display: block;
outline: none; outline: none;
width: 180px; width: 180px;
height: 42px; height: 42px;
line-height: 42px; line-height: 42px;
text-align: center; text-align: center;
font-size: 20px; font-size: 20px;
border: 1px solid #d8d8d8; border: 1px solid #d8d8d8;
background-color: #f4f7f9; background-color: #f4f7f9;
margin: 0 5px; margin: 0 5px;
color: #000; color: #000;
} }
.erweima { .erweima {
display: block; display: block;
outline: none; outline: none;
width: 582px; width: 582px;
height: 42px; height: 42px;
line-height: 42px; line-height: 42px;
font-size: 20px; font-size: 20px;
color: #000; color: #000;
text-align: center; text-align: center;
border: 1px solid #d8d8d8; border: 1px solid #d8d8d8;
margin: 10px 0; margin: 10px 0;
background-color: #f4f7f9; background-color: #f4f7f9;
} }
.save { .save {
width: 95px; width: 95px;
height: 55px; height: 55px;
background-color: #2d8cf0; background-color: #2d8cf0;
color: #fff; color: #fff;
line-height: 55px; line-height: 55px;
text-align: center; text-align: center;
font-size: 20px; font-size: 20px;
/* cursor: pointer; */ /* cursor: pointer; */
outline: none; outline: none;
border: none; border: none;
border-radius: 10px; border-radius: 10px;
/* position: absolute; /* position: absolute;
right: 20px; */ right: 20px; */
margin-left: 90%; margin-left: 90%;
} }
.pr { .pr {
position: relative; position: relative;
height: 80px; height: 80px;
} }
.tip { .tip {
width: 200px; width: 200px;
height: 40px; height: 40px;
line-height: 40px; line-height: 40px;
text-align: center; text-align: center;
font-size: 16px; font-size: 16px;
/* border: 1px solid #d2d2d2; */ /* border: 1px solid #d2d2d2; */
border-radius: 5px; border-radius: 5px;
color: red; color: red;
position: absolute; position: absolute;
left: 20px; left: 20px;
top: 50%; top: 50%;
transform: translateY(-50%); transform: translateY(-50%);
} }
.red { .red {
color: red; color: red;
} }
</style> </style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment