Commit e79a603d authored by 仇晓婷's avatar 仇晓婷

数据包ok

parent 0e19d11e
<template>
<div class="orderDetail">
<div class="orderDetail">
<Row>
<Col span="8">
<span class="fwBold">{{l('mesCode')}}</span>
<p>{{baseData.mesCode}}</p>
</Col>
<Col span="8">
<span class="fwBold">{{l('taskType')}}</span>
<Col span="8">
<span class="fwBold">{{ l("mesCode") }}</span>
<p>{{ baseData.mesCode }}</p>
</Col>
<Col span="8">
<span class="fwBold">{{ l("taskType") }}</span>
<p>
<state code="plan.order.taskType" :value="baseData.taskType" type="text"></state>
<state
code="plan.order.taskType"
:value="baseData.taskType"
type="text"
></state>
</p>
</Col>
<Col span="8">
<span class="fwBold">{{l('quantity')}}</span>
<p>{{baseData.quantity}}</p>
</Col>
</Col>
<Col span="8">
<span class="fwBold">{{ l("quantity") }}</span>
<p>{{ baseData.quantity }}</p>
</Col>
</Row>
<Row>
<Col span="8">
<span class="fwBold">{{l('status')}}</span>
<Col span="8">
<span class="fwBold">{{ l("status") }}</span>
<p>
<state code="plan.order.status" :value="baseData.status" type="text"></state>
<state
code="plan.order.status"
:value="baseData.status"
type="text"
></state>
</p>
</Col>
<Col span="8">
<span class="fwBold">{{l('productName')}}</span>
<p>{{baseData.productName}}</p>
</Col>
<Col span="8">
<span class="fwBold">{{l('drawnNumber')}}</span>
<p>{{baseData.drawnNumber}}</p>
</Col>
</Col>
<Col span="8">
<span class="fwBold">{{ l("productName") }}</span>
<p>{{ baseData.productName }}</p>
</Col>
<Col span="8">
<span class="fwBold">{{ l("drawnNumber") }}</span>
<p>{{ baseData.drawnNumber }}</p>
</Col>
</Row>
<Row>
<Col span="8">
<span class="fwBold">{{l('batchNumber')}}</span>
<p>{{baseData.batchNumber}}</p>
</Col>
<Col span="8">
<span class="fwBold">{{l('projectNumber')}}</span>
<p>{{baseData.projectNumber}}</p>
</Col>
<Col span="8">
<span class="fwBold">{{l('urgencyLevel')}}</span>
<Col span="8">
<span class="fwBold">{{ l("batchNumber") }}</span>
<p>{{ baseData.batchNumber }}</p>
</Col>
<Col span="8">
<span class="fwBold">{{ l("projectNumber") }}</span>
<p>{{ baseData.projectNumber }}</p>
</Col>
<Col span="8">
<span class="fwBold">{{ l("urgencyLevel") }}</span>
<p>
<state code="plan.order.urgencyLevel" :value="baseData.urgencyLevel" type="text"></state>
<state
code="plan.order.urgencyLevel"
:value="baseData.urgencyLevel"
type="text"
></state>
</p>
</Col>
</Col>
</Row>
<Row>
<Col span="8">
<span class="fwBold">{{l('demandStartDate')}}</span>
<Col span="8">
<span class="fwBold">{{ l("demandStartDate") }}</span>
<p>
<DTSpan type="date" v-model="baseData.demandStartDate"></DTSpan>
<DTSpan type="date" v-model="baseData.demandStartDate"></DTSpan>
</p>
</Col>
<Col span="8">
<span class="fwBold">{{l('demandFinishDate')}}</span>
</Col>
<Col span="8">
<span class="fwBold">{{ l("demandFinishDate") }}</span>
<p>
<DTSpan type="date" v-model="baseData.demandFinishDate"></DTSpan>
<DTSpan type="date" v-model="baseData.demandFinishDate"></DTSpan>
</p>
</Col>
<Col span="8">
<span class="fwBold">{{l('taskRequire')}}</span>
<p>{{baseData.taskRequire}}</p>
</Col>
</Col>
<Col span="8">
<span class="fwBold">{{ l("taskRequire") }}</span>
<p>{{ baseData.taskRequire }}</p>
</Col>
</Row>
<Row class="lastRow">
<Col span="24">
<span class="fwBold">{{l('remark')}}</span>
<p>{{baseData.remark}}</p>
</Col>
<Col span="24">
<span class="fwBold">{{ l("remark") }}</span>
<p>{{ baseData.remark }}</p>
</Col>
</Row>
</div>
</div>
</template>
<script>
export default {
props: ['baseData'],
data() {
return {
themeBg: 'light',
basicData: {},
}
},
methods: {
l(key) {
key = "mes_plan" + "." + key;
return this.$t(key);
}
props: ["baseData"],
data() {
return {
themeBg: "light",
basicData: {},
};
},
methods: {
l(key) {
key = "mes_plan" + "." + key;
return this.$t(key);
},
}
},
};
</script>
<style lang="less">
.orderDetail {
line-height: 30px;
width: 90%;
margin: 0 auto;
line-height: 30px;
width: 100%;
margin: 0 auto;
.ivu-row {
padding-top: 20px;
padding-bottom: 20px;
border-bottom: #ccc solid 1px;
}
.ivu-row {
padding-top: 20px;
padding-bottom: 20px;
margin-right: 25px;
border-bottom: #ccc solid 1px;
}
.lastRow {
border-bottom: none;
}
.lastRow {
border-bottom: none;
}
}
</style>
<template>
<div class>
<Tabs :animated="false" @on-click="tabChange" value="1">
<Tabs :animated="false" @on-click="tabChange" v-model="selectName">
<TabPane label="工艺信息" name="1">
<Form :model="craftData" :label-width="130" inline>
<Row>
......@@ -74,25 +74,27 @@
</Form>
</TabPane> -->
<TabPane label="质量信息" name="3">
<orderqcrecord ref="orderqcrecord1" :items="items"/>
<Orderqcrecord ref="orderqcrecord1" :items="items" />
</TabPane>
<TabPane label="配套数据" name="4">
<!-- <orderqcrecord ref="orderqcrecord1" /> -->
<Matching ref="matching" :items="items" />
</TabPane>
</Tabs>
</div>
</template>
<script>
import service from "@/plugins/request";
import orderqcrecord from "./orderqcrecord.vue";
import Orderqcrecord from "./orderqcrecord.vue";
import Matching from "./matching.vue";
export default {
components: { orderqcrecord },
components: { Orderqcrecord, Matching },
props: {
baseData: {
type: [String, Number, Array, Object],
},
items: {
mesCodeId: {
orderId: {
type: Number,
},
headerid: {
......@@ -108,8 +110,9 @@ export default {
},
data() {
return {
selectName: "1",
themeBg: "light",
craftData:this.items.craftData, //工艺信息
craftData: this.items.craftData, //工艺信息
equipmentData: {}, //设备信息
headerid: "", //暂存传字段
routingType: "", //工艺类型(主/专业)
......@@ -121,22 +124,22 @@ export default {
},
methods: {
// 获取设备信息 10020 /equipinfo/getlistall
getlistall(equipids) {
let url02 = `${systemUrl}/equipinfo/getlistall?equipids=` + equipids;
service.get(`${url02}`).then((res) => {
if (res.success) {
if (res.result.length != 0) {
this.equipmentData = res.result[0];
} else {
this.equipmentData = [];
console.log("获取主工艺设备信息为空.");
}
} else {
this.equipmentData = [];
console.log("获取主工艺设备数据失败.");
}
});
},
// getlistall(equipids) {
// let url02 = `${systemUrl}/equipinfo/getlistall?equipids=` + equipids;
// service.get(`${url02}`).then((res) => {
// if (res.success) {
// if (res.result.length != 0) {
// this.equipmentData = res.result[0];
// } else {
// this.equipmentData = [];
// console.log("获取主工艺设备信息为空.");
// }
// } else {
// this.equipmentData = [];
// console.log("获取主工艺设备数据失败.");
// }
// });
// },
getqc(executeid) {
this.$refs.orderqcrecord1.qcdatasearch.execute_id = executeid;
},
......@@ -151,17 +154,17 @@ export default {
},
},
mounted() {},
watch: {
baseData: {
handler(v, o) {
// this.pamasId = v.id
// console.log(v.id)
// this.loaddata(v.id)
// console.info(o.id)
},
deep: true,
},
},
// watch: {
// baseData: {
// handler(v, o) {
// // this.pamasId = v.id
// // console.log(v.id)
// // this.loaddata(v.id)
// // console.info(o.id)
// },
// deep: true,
// },
// },
};
</script>
<style scoped>
......
<template>
<div>
<Table border :columns="cols" :data="datas" class="tableCommon"> </Table>
</div>
</template>
<script>
import service from "@/plugins/request";
export default {
data() {
return {
datas: [],
cols: [
{
key: "routingDetailNo",
title: this.l("routingDetailNo"),
align: "left",
width: 80,
},
{
key: "routingDetailName",
title: this.l("routingDetailName"),
align: "left",
},
{
key: "nameMaterial",
title: this.l("nameMaterial"),
align: "left",
},
{
key: "materialNumber",
title: this.l("materialNumber"),
align: "left",
width: 150,
},
{
key: "totalCount",
title: this.l("totalCount"),
align: "left",
},
{
key: "applicationNumber",
title: this.l("applicationNumber"),
align: "right",
},
{
key: "",
title: this.l("count3"),
align: "right",
width: 150,
width: 150,
render: (h, params) => {
return h(
"div",
{},
params.row.receiveNumber + "/" + params.row.outStockNumber
);
},
},
{
key: "creatorUserId",
title: "领用人",
align: "center",
width: 150,
render: (h, params) => {
if (params.row.creatorUserId) {
return h("User", {
props: {
value: params.row.creatorUserId,
},
});
}
},
},
// {
// key: "remark",
// title: this.l("remark"),
// align: "left",
// },
],
};
},
async fetch({ store, params }) {
await store.dispatch("loadDictionary"); // 加载数据字典
},
props: {
items: {
orderId: {
type: Number,
},
headerid: {
type: Number,
},
routingType: {
type: Number,
},
craftData: {
type: Object,
},
},
},
mounted() {
this.matchdetail();
},
methods: {
matchdetail() {
//配套审核单列表
let orderId = this.items.orderId;
let url = `${technologyUrl}materiallist/matchdetaillist?id=` + orderId;
service.get(`${url}`).then((res) => {
if (res.result) {
this.datas = [];
let suport = [];
res.result.forEach((e, index) => {
console.log(e);
if (this.items.headerid == e.routingHeaderId) {
suport = e.suport;
this.datas = suport;
}
});
}
console.log(this.datas);
});
},
l(key) {
let vkey = "support_item" + "." + key;
return this.$t(vkey) || key;
},
},
};
</script>
\ No newline at end of file
......@@ -159,7 +159,7 @@ export default {
components: { entryrecordfiles, entryrecordMovie, entryrecorddata },
props: {
items: {
mesCodeId: {
orderId: {
type: Number,
},
headerid: {
......@@ -258,6 +258,7 @@ export default {
},
mounted() {
this.getmainorder();
},
watch: {},
methods: {
......@@ -269,12 +270,12 @@ export default {
// this.$refs.orderqcrecord1.onqcpage()
},
getmainorder() {
let mesCodeId = this.items.mesCodeId;
let orderId = this.items.orderId;
let headerid = this.items.headerid;
let routingType = this.items.routingType;
let url01 =
`${PlanUrl}/orderexecute/getorderproductandequip?orderId=` +
mesCodeId +
orderId +
`&headerid=` +
headerid +
`&routingType=` +
......@@ -311,6 +312,7 @@ export default {
console.log(err);
});
},
onPageChanged(page_index) {
this.pageindex = page_index;
this.onqcpage();
......
<template>
<div class="reve_cont">
<Row>
<Col span="4">
<Menu
:active-name="actNum"
ref="actNum"
class="menuBg"
@on-select="openView"
:theme="themeBg"
>
<MenuItem name="1" replace> 基本信息 </MenuItem>
<MenuItem
<Col span="5">
<ul>
<li :class="isactive == -1 ? 'addclass' : ''" @click="listData1">
基本信息
</li>
<li
v-for="(li, index) in nameList"
:key="index"
:name="index + 2"
replace
@click="listData2(li, index)"
:class="isactive == index ? 'addclass' : ''"
>
{{ li.name }}
</MenuItem>
</Menu>
</li>
</ul>
</Col>
<Col span="20" class="revieweBox">
<Col span="19" class="revieweBox">
<component
:is="detail"
:baseData="basicData"
......@@ -55,20 +51,18 @@ export default {
default: 1,
},
},
created() {
this.detail = () => import("./basicView");
this.openView(this.actNum);
},
data() {
return {
items: {
mesCodeId: this.basicData.id,
orderId: this.basicData.id,
headerid: 0,
routingType: 0,
craftData: {},
},
isactive: -1,
nameList: [],
detail: null,
detail: () => import("./basicView"),
actNum: "1",
themeBg: "light",
basicmodal: true,
......@@ -82,11 +76,54 @@ export default {
mainexecuteid: 0,
};
},
created() {
this.isactive = -1;
if (this.isactive == -1) {
this.detail = () => import("./basicView");
}
// this.openView(this.actNum);
},
mounted() {
this.actNum = "1";
this.loaddata(this.basicData.id);
},
methods: {
listData1() {
this.items.orderId = this.basicData.id;
this.isactive = -1;
this.detail = () => import("./basicView");
},
listData2(e, index) {
// console.log(e)
this.items.orderId = this.basicData.id;
this.items.craftData = e;
this.items.headerid = e.id;
this.items.routingType = e.routingType;
this.isactive = index;
this.detail = () => import("./mainView");
},
// 更换左侧
// openView(v) {
// // console.log(v);
// this.items.orderId = this.basicData.id;
// if (v == 1) {
// this.detail = () => import("./basicView");
// // this.this.basicmodal = true;
// // this.mainmodal = false;
// } else {
// let i = v - 2;
// this.nameList.forEach((e, index) => {
// if (i == index) {
// this.items.craftData = e;
// this.items.headerid = e.id;
// this.items.routingType = e.routingType;
// }
// });
// this.detail = () => import("./mainView");
// // this.$refs.mainView.getqc(this.mainexecuteid);
// }
// },
loaddata(pamasId) {
this.basicmodal = true;
this.mainmodal = false;
......@@ -96,7 +133,7 @@ export default {
`${technologyUrl}orderrouting/getordersheaderinfo?orderId=` + pamasId;
if (pamasId) {
service.get(`${url}`).then((response) => {
console.log(response);
// console.log(response);
if (response.result.length > 0) {
this.nameList = response.result;
......@@ -197,29 +234,14 @@ export default {
// console.log(err);
// });
// },
// 更换左侧
openView(v) {
console.log(v);
if (v == 1) {
this.detail = () => import("./basicView");
// this.this.basicmodal = true;
// this.mainmodal = false;
} else {
let i = v - 2;
this.nameList.forEach((e, index) => {
if (i == index) {
this.items.craftData = e;
this.items.headerid = e.id;
this.items.routingType = e.routingType;
}
});
this.detail = () => import("./mainView");
// this.$refs.mainView.getqc(this.mainexecuteid);
}
cancel() {
this.detail = null;
this.selectName = "1";
},
ok() {
this.detail = null;
},
cancel() {},
ok() {},
},
watch: {
basicData: {
......@@ -227,6 +249,7 @@ export default {
this.loaddata(v.id);
if (v) {
this.actNum == "1";
this.items.orderId = v;
this.openView(this.actNum);
}
},
......@@ -236,7 +259,27 @@ export default {
};
</script>
<style scoped>
<style scoped lang="less">
.reve_cont {
ul {
height: 630px;
border-right: 1px solid #eee;
overflow: auto;
li {
height: 35px;
line-height: 35px;
padding: 0 15px;
cursor: pointer;
}
}
.addclass {
height: 35px;
line-height: 35px;
background-color: #f0faff;
color: #2d8cf0;
border-right: 2px solid #2d8cf0;
}
}
.menuBg {
background: none;
height: 630px;
......
<template>
<div class="content">
<div class="content">
<!-- 搜索+按钮 -->
<div class="title_box mb10">
<div class="table_title">
<Input search enter-button style="width:300px;" v-model="orderSearchForm.SimpleSearch" placeholder="请输入查询条件" @on-search="tableSearch"></Input>
</div>
<Button type="primary" class="title_btn" @click="searchModel">高级查询</Button>
<div class="table_title">
<Input
search
enter-button
style="width: 300px"
v-model="orderSearchForm.SimpleSearch"
placeholder="请输入查询条件"
@on-search="tableSearch"
></Input>
</div>
<Button type="primary" class="title_btn" @click="searchModel"
>高级查询</Button
>
</div>
<div class="tableBox mb10" :style="{height:tbHeight}">
<div>
<div v-if="listTask.length==0" class="wu_data">暂无数据</div>
<Row :gutter="16" :style="{width:rowWidth}">
<Col :span="6" v-for="(item,index) in listTask" :key="index">
<Card class="card">
<h3 slot="title">
订单编号:{{item.mesCode}}
</h3>
<ul class="card_body01">
<li class="card_line">
产品名称:{{item.productName}}
</li>
<li class="card_line">
任务类型:{{item.equipment}}
</li>
</ul>
<p class="footer01">
<a class="footer_btn" href="#" @click.event="reviewFn(item)">
追 溯
</a>
</p>
</Card>
</Col>
</Row>
</div>
<div v-show="noData" class="no_data">
<h3>暂无数据</h3>
</div>
<div class="tableBox mb10" :style="{ height: tbHeight }">
<div>
<div v-if="listTask.length == 0" class="wu_data">暂无数据</div>
<Row :gutter="16" :style="{ width: rowWidth }">
<Col :span="6" v-for="(item, index) in listTask" :key="index">
<Card class="card">
<h3 slot="title">订单编号:{{ item.mesCode }}</h3>
<ul class="card_body01">
<li class="card_line">产品名称:{{ item.productName }}</li>
<li class="card_line">任务类型:{{ item.equipment }}</li>
</ul>
<p class="footer01">
<a class="footer_btn" href="#" @click.event="reviewFn(item)">
追 溯
</a>
</p>
</Card>
</Col>
</Row>
</div>
<div v-show="noData" class="no_data">
<h3>暂无数据</h3>
</div>
</div>
<Page class="mr10 fr" id="pageComent" show-total size="small" show-elevator show-sizer :total="search.total" :current="search.pageIndex" :page-size="search.pageSize" :page-size-opts="showPagesize" @on-change="pageChange" @on-page-size-change="pageSizeChange" />
<Page
class="mr10 fr"
id="pageComent"
show-total
size="small"
show-elevator
show-sizer
:total="search.total"
:current="search.pageIndex"
:page-size="search.pageSize"
:page-size-opts="showPagesize"
@on-change="pageChange"
@on-page-size-change="pageSizeChange"
/>
<!-- 高级搜索弹框 -->
<Modal v-model="showModel" title="高级搜索" :width="800" :mask-closable="false">
<Form :model="orderSearchForm" ref="orderSearchForm" :label-width="100" inline>
<Row>
<Col span="12">
<FormItem label="产品名称" style="width:100%">
<Select v-model="orderSearchForm.productName" placeholder="请选择" style="width:240px;">
<Option v-for="(item,index) in list" :key="index" :value="item.value" style="display:none">{{item.label}}</Option>
<Tree key="mytree" :data="data1" ref="mytree" :render="renderContent"></Tree>
</Select>
</FormItem>
</Col>
<Col span="12">
<FormItem label="状态" style="width:100%">
<dictionary code="plan.order.status" v-model="orderSearchForm.status" style="width:240px"></dictionary>
<Input v-model="orderSearchForm.productId" style="width:240px" v-if="false" />
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="工艺编号" style="width:100%">
<Input v-model="orderSearchForm.processcode" placeholder="请输入工艺编号" style="width: 240px" />
</FormItem>
</Col>
<Col span="12">
<FormItem label="工艺名称" style="width:100%">
<Input v-model="orderSearchForm.processname" placeholder="请输入工艺名称" style="width: 240px" />
</FormItem>
</Col>
</Row>
<Modal
v-model="showModel"
title="高级搜索"
:width="800"
:mask-closable="false"
>
<Form
:model="orderSearchForm"
ref="orderSearchForm"
:label-width="100"
inline
>
<Row>
<Col span="12">
<FormItem label="产品名称" style="width: 100%">
<Select
v-model="orderSearchForm.productName"
placeholder="请选择"
style="width: 240px"
>
<Option
v-for="(item, index) in list"
:key="index"
:value="item.value"
style="display: none"
>{{ item.label }}</Option
>
<Tree
key="mytree"
:data="data1"
ref="mytree"
:render="renderContent"
></Tree>
</Select>
</FormItem>
</Col>
<Col span="12">
<FormItem label="状态" style="width: 100%">
<dictionary
code="plan.order.status"
v-model="orderSearchForm.status"
style="width: 240px"
></dictionary>
<Input
v-model="orderSearchForm.productId"
style="width: 240px"
v-if="false"
/>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="工艺编号" style="width: 100%">
<Input
v-model="orderSearchForm.processcode"
placeholder="请输入工艺编号"
style="width: 240px"
/>
</FormItem>
</Col>
<Col span="12">
<FormItem label="工艺名称" style="width: 100%">
<Input
v-model="orderSearchForm.processname"
placeholder="请输入工艺名称"
style="width: 240px"
/>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="项目号" style="width:100%">
<Input v-model="orderSearchForm.projectNumber" placeholder style="width:240px" />
</FormItem>
</Col>
<Col span="12">
<FormItem label="批次号" style="width:100%">
<Input v-model="orderSearchForm.batchNumber" placeholder style="width:240px" />
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="紧急程度" style="width:100%">
<dictionary code="plan.order.urgencyLevel" v-model="orderSearchForm.urgencyLevel" style="width:240px"></dictionary>
</FormItem>
</Col>
<Row>
<Col span="12">
<FormItem label="项目号" style="width: 100%">
<Input
v-model="orderSearchForm.projectNumber"
placeholder
style="width: 240px"
/>
</FormItem>
</Col>
<Col span="12">
<FormItem label="批次号" style="width: 100%">
<Input
v-model="orderSearchForm.batchNumber"
placeholder
style="width: 240px"
/>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="紧急程度" style="width: 100%">
<dictionary
code="plan.order.urgencyLevel"
v-model="orderSearchForm.urgencyLevel"
style="width: 240px"
></dictionary>
</FormItem>
</Col>
<Col span="12">
<FormItem label="任务类型" style="width:100%">
<dictionary code="plan.order.taskType" v-model="orderSearchForm.taskType" style="width:240px"></dictionary>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="阶段" style="width:100%">
<dictionary code="plan.order.stage" v-model="orderSearchForm.stage" style="width:240px"></dictionary>
</FormItem>
</Col>
<Col span="12">
<FormItem label="材料" style="width:100%">
<dictionary code="plan.order.material" v-model="orderSearchForm.materialId" style="width:240px"></dictionary>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="数量" style="width:100%">
<InputNumber :min="0" v-model="orderSearchForm.quantity" style="width:240px"></InputNumber>
</FormItem>
</Col>
<Col span="12">
<FormItem label="甲方客户" style="width:100%">
<dictionary code="plan.order.guestName" v-model="orderSearchForm.guestName" style="width:240px"></dictionary>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="厂内责任机关" style="width:100%">
<Input v-model="orderSearchForm.functionaryOffice" placeholder style="width:240px" />
</FormItem>
</Col>
<Col span="12">
<FormItem label="厂内责任主体部门" style="width:100%">
<dictionary code="plan.order.mainDepartment" v-model="orderSearchForm.mainDepartmentId" style="width:240px"></dictionary>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="任务节点要求" style="width:100%">
<Input v-model="orderSearchForm.taskRequire" placeholder style="width:240px" />
</FormItem>
</Col>
<Col span="12">
<FormItem label="甲方投产输入文件(编号)" style="width:100%">
<Input v-model="orderSearchForm.putintDocmentCode" placeholder style="width:240px" />
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="甲方技术输入文件(编号)" style="width:100%">
<Input v-model="orderSearchForm.technologyDocmentCode" placeholder style="width:240px" />
</FormItem>
</Col>
<Col span="12">
<FormItem label="外部图号/模型号" style="width:100%">
<Input v-model="orderSearchForm.outerDrawnNumber" placeholder style="width:240px" />
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="模型版本" style="width:100%">
<Input v-model="orderSearchForm.modelVersion" placeholder style="width:240px" />
</FormItem>
</Col>
<Col span="12">
<FormItem label="甲方任务号" style="width:100%">
<Input v-model="orderSearchForm.taskCode" placeholder style="width:240px" />
</FormItem>
</Col>
</Row>
</Form>
<div slot="footer">
<Button @click="close" style="margin-left:20px;">取消</Button>
<Button @click="complexSearch" type="primary" class="ml10">查询</Button>
</div>
<Col span="12">
<FormItem label="任务类型" style="width: 100%">
<dictionary
code="plan.order.taskType"
v-model="orderSearchForm.taskType"
style="width: 240px"
></dictionary>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="阶段" style="width: 100%">
<dictionary
code="plan.order.stage"
v-model="orderSearchForm.stage"
style="width: 240px"
></dictionary>
</FormItem>
</Col>
<Col span="12">
<FormItem label="材料" style="width: 100%">
<dictionary
code="plan.order.material"
v-model="orderSearchForm.materialId"
style="width: 240px"
></dictionary>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="数量" style="width: 100%">
<InputNumber
:min="0"
v-model="orderSearchForm.quantity"
style="width: 240px"
></InputNumber>
</FormItem>
</Col>
<Col span="12">
<FormItem label="甲方客户" style="width: 100%">
<dictionary
code="plan.order.guestName"
v-model="orderSearchForm.guestName"
style="width: 240px"
></dictionary>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="厂内责任机关" style="width: 100%">
<Input
v-model="orderSearchForm.functionaryOffice"
placeholder
style="width: 240px"
/>
</FormItem>
</Col>
<Col span="12">
<FormItem label="厂内责任主体部门" style="width: 100%">
<dictionary
code="plan.order.mainDepartment"
v-model="orderSearchForm.mainDepartmentId"
style="width: 240px"
></dictionary>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="任务节点要求" style="width: 100%">
<Input
v-model="orderSearchForm.taskRequire"
placeholder
style="width: 240px"
/>
</FormItem>
</Col>
<Col span="12">
<FormItem label="甲方投产输入文件(编号)" style="width: 100%">
<Input
v-model="orderSearchForm.putintDocmentCode"
placeholder
style="width: 240px"
/>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="甲方技术输入文件(编号)" style="width: 100%">
<Input
v-model="orderSearchForm.technologyDocmentCode"
placeholder
style="width: 240px"
/>
</FormItem>
</Col>
<Col span="12">
<FormItem label="外部图号/模型号" style="width: 100%">
<Input
v-model="orderSearchForm.outerDrawnNumber"
placeholder
style="width: 240px"
/>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="模型版本" style="width: 100%">
<Input
v-model="orderSearchForm.modelVersion"
placeholder
style="width: 240px"
/>
</FormItem>
</Col>
<Col span="12">
<FormItem label="甲方任务号" style="width: 100%">
<Input
v-model="orderSearchForm.taskCode"
placeholder
style="width: 240px"
/>
</FormItem>
</Col>
</Row>
</Form>
<div slot="footer">
<Button @click="close" style="margin-left: 20px">取消</Button>
<Button @click="complexSearch" type="primary" class="ml10">查询</Button>
</div>
</Modal>
<!-- 数据包追溯 -->
<Modal v-model="reviewModal" title="数据包追溯" :width="1280" :mask-closable="false">
<reviewCount ref="reviewCount" :basicData="itemData" :actValue="actValue" />
<div slot="footer">
<!-- <Button @click="close" style="margin-left:20px;">取消</Button> -->
<Button @click="reviewOk" type="primary" style="margin-left:10px;">确定</Button>
</div>
<Modal
v-model="reviewModal"
title="数据包追溯"
:width="1280"
:mask-closable="false"
>
<reviewCount
ref="reviewCount"
:basicData="itemData"
:actValue="actValue"
/>
<div slot="footer">
<!-- <Button @click="close" style="margin-left:20px;">取消</Button> -->
<Button @click="reviewOk" type="primary" style="margin-left: 10px"
>确定</Button
>
</div>
</Modal>
</div>
</div>
</template>
<script>
import service from "@/plugins/request";
import reviewCount from "./components/reviewCount.vue";
export default {
components: {
reviewCount
components: {
reviewCount,
},
async fetch({ store, params }) {
await store.dispatch("loadDictionary"); // 加载数据字典
},
data() {
return {
search: {
pageIndex: 1, //当前页数
pageSize: 20, //分页数
total: 0, //总数
conditions: [],
},
rowWidth: "",
showPagesize: [20, 50, 100],
showModel: false,
list: [],
data1: [],
noData: false,
selectdata: [],
tbHeight: "550px",
itemData: {}, //追溯传的数据
actValue: 1, //追溯传的选中meniu
orderSearchForm: {
//高级搜索字段内容
MaxResultCount: 20,
SkipCount: 0,
SimpleSearch: "", //搜索框内容
productId: null, //产品id
productName: "", //产品名称
taskType: "", //任务类型
stage: "", //阶段
materialId: "", //材料
quantity: 0, //数量
guestName: "", //甲方客户
printSupply: "", //3D打印承制单位
functionaryOffice: "", //厂内责任机关
mainDepartmentId: "", //厂内责任主体部门ID
taskRequire: "", //任务接点要求
putintDocmentCode: "", //甲方投产输入文件编号
technologyDocmentCode: "", //甲方技术输入文件编号
outerDrawnNumber: "", //外部图号/模型号
modelVersion: "", //模型版本
taskCode: "", //甲方任务号
designer: "", //甲方设计人员
officeFunctionary: "", //厂内机关负责人
mainRoutingPeople: "", //厂内主工艺人员
routing_Method: "", //工艺方法
outer_Envelope_Size: "", //包装尺寸
demandStartDate: "", //开始时间
demandFinishDate: "", //完成时间
remark: "", //备注
projectNumber: "", //项目号
batchNumber: "", //批次号
urgencyLevel: null, //紧急程度
},
listTask: [], //card数据
reviewModal: false, //追溯弹框
};
},
created() {
this.laode();
this.tbHeight = window.innerHeight - 208 + "px";
},
async fetch({ store, params }) {
await store.dispatch("loadDictionary"); // 加载数据字典
},
methods: {
// 加载数据
laode() {
let url = `${PlanUrl}/orderexecute/pageddatamesorders`;
service
.post(`${url}`, {
MaxResultCount: 20,
SkipCount: 0,
})
.then((res) => {
// console.log(res)
this.listTask = res.result.items;
this.search.total = res.result.totalCount;
});
},
async fetch({
store,
params
}) {
await store.dispatch("loadDictionary"); // 加载数据字典
reviewFn(item) {
//追溯
this.reviewModal = true;
this.itemData = item;
this.$refs.reviewCount.isactive = -1;
},
data() {
return {
search: {
pageIndex: 1, //当前页数
pageSize: 20, //分页数
total: 0, //总数
conditions: []
},
rowWidth: '',
showPagesize: [20, 50, 100],
showModel: false,
list: [],
data1: [],
noData: false,
selectdata: [],
tbHeight: "550px",
itemData: {}, //追溯传的数据
actValue: 1, //追溯传的选中meniu
orderSearchForm: {
//高级搜索字段内容
MaxResultCount: 20,
SkipCount: 0,
SimpleSearch: "", //搜索框内容
productId: null, //产品id
productName: "", //产品名称
taskType: "", //任务类型
stage: "", //阶段
materialId: "", //材料
quantity: 0, //数量
guestName: "", //甲方客户
printSupply: "", //3D打印承制单位
functionaryOffice: "", //厂内责任机关
mainDepartmentId: "", //厂内责任主体部门ID
taskRequire: "", //任务接点要求
putintDocmentCode: "", //甲方投产输入文件编号
technologyDocmentCode: "", //甲方技术输入文件编号
outerDrawnNumber: "", //外部图号/模型号
modelVersion: "", //模型版本
taskCode: "", //甲方任务号
designer: "", //甲方设计人员
officeFunctionary: "", //厂内机关负责人
mainRoutingPeople: "", //厂内主工艺人员
routing_Method: "", //工艺方法
outer_Envelope_Size: "", //包装尺寸
demandStartDate: "", //开始时间
demandFinishDate: "", //完成时间
remark: "", //备注
projectNumber: "", //项目号
batchNumber: "", //批次号
urgencyLevel: null //紧急程度
},
listTask: [], //card数据
reviewModal: false //追溯弹框
};
reviewOk() {
this.reviewModal = false;
// 手动更新选中的菜单
// menuChange(){
// this.$refs.reviewCount.actNum = "";
// this.$nextTick(()=>{
// this.$refs.reviewCount.$refs.menus.updateActiveName();
// })
// }
// this.$refs.reviewCount.actNum = "1";
},
created() {
this.laode();
this.tbHeight = window.innerHeight - 208 + "px";
// 分页
pageChange(pageNum) {
this.orderSearchForm.SkipCount =
(pageNum - 1) * this.orderSearchForm.MaxResultCount;
this.laodePage(this.orderSearchForm);
},
async fetch({
store,
params
}) {
await store.dispatch("loadDictionary"); // 加载数据字典
pageSizeChange(val) {
this.orderSearchForm.SkipCount = 0;
this.orderSearchForm.MaxResultCount = val;
this.laodePage(this.orderSearchForm);
},
laodePage(pageData) {
let url = `${PlanUrl}/orderexecute/pageddatamesorders`;
service.post(`${url}`, pageData).then((res) => {
this.listTask = res.result.items;
this.search.total = res.result.totalCount;
});
},
methods: {
// 加载数据
laode() {
let url = `${PlanUrl}/orderexecute/pageddatamesorders`;
service
.post(`${url}`, {
MaxResultCount: 20,
SkipCount: 0
})
.then(res => {
// console.log(res)
this.listTask = res.result.items;
this.search.total = res.result.totalCount;
});
},
reviewFn(item) {
//追溯
this.reviewModal = true;
this.itemData = item;
// this.$refs.reviewCount.actNum = "1";
},
reviewOk() {
this.reviewModal = false;
// 手动更新选中的菜单
// menuChange(){
// this.$refs.reviewCount.actNum = "";
// this.$nextTick(()=>{
// this.$refs.reviewCount.$refs.menus.updateActiveName();
// })
// }
// this.$refs.reviewCount.actNum = "1";
},
// 分页
pageChange(pageNum) {
this.orderSearchForm.SkipCount =
(pageNum - 1) * this.orderSearchForm.MaxResultCount;
this.laodePage(this.orderSearchForm);
},
pageSizeChange(val) {
this.orderSearchForm.SkipCount = 0;
this.orderSearchForm.MaxResultCount = val;
this.laodePage(this.orderSearchForm);
},
laodePage(pageData) {
let url = `${PlanUrl}/orderexecute/pageddatamesorders`;
service.post(`${url}`, pageData).then(res => {
this.listTask = res.result.items;
this.search.total = res.result.totalCount;
});
},
// 搜索
tableSearch(searchData) {
let MaxResultCount = this.orderSearchForm.MaxResultCount;
let url = `${PlanUrl}/orderexecute/pageddatamesorders`;
service
.post(`${url}`, {
MaxResultCount: MaxResultCount,
SkipCount: 0,
SimpleSearch: searchData
})
.then(res => {
this.listTask = res.result.items;
this.search.total = res.result.totalCount;
if (this.listTask.length < 4) {
this.rowWidth = "100%"
}
});
},
searchModel() {
this.showModel = true;
},
async openDetails(lemData) {
this.$router.push({
name: "qcimplement",
params: {
transmitData: lemData
}
});
},
renderContent(h, {
root,
node,
data
}) {
//渲染树的样式
return h(
"span", {
style: {
color: data.isProduct != "1" ? "#249E91" : "#333", //根据选中状态设置样式
cursor: "pointer"
},
on: {
click: () => {
let arrTree = [];
arrTree.push(data);
this.handleSelect(arrTree); //手动选择树节点
}
}
},
data.title
);
},
handleSelect(data) {
if (data.length > 0) {
this.selectdata = [];
this.selectdata = data;
this.list = [];
this.list.push({
label: data[0].title,
value: data[0].id
});
if (data[0].isProduct == "1") {
this.orderSearchForm.productName = data[0].id;
this.orderSearchForm.productId = data[0].productId;
} else {
this.$Message.error("此节点不是产品,请选择产品节点!");
}
}
},
close() {
this.showModel = false;
// 搜索
tableSearch(searchData) {
let MaxResultCount = this.orderSearchForm.MaxResultCount;
let url = `${PlanUrl}/orderexecute/pageddatamesorders`;
service
.post(`${url}`, {
MaxResultCount: MaxResultCount,
SkipCount: 0,
SimpleSearch: searchData,
})
.then((res) => {
this.listTask = res.result.items;
this.search.total = res.result.totalCount;
if (this.listTask.length < 4) {
this.rowWidth = "100%";
}
});
},
searchModel() {
this.showModel = true;
},
async openDetails(lemData) {
this.$router.push({
name: "qcimplement",
params: {
transmitData: lemData,
},
complexSearch() {
// this.$emit('easySearch',this.orderSearchForm);
let parmes = this.orderSearchForm;
parmes.SimpleSearch = "";
let url = `${PlanUrl}/orderexecute/pageddatamesorders`;
// console.log(parmes)
service.post(`${url}`, parmes).then(res => {
// console.log(res)
this.listTask = res.result.items;
this.search.total = res.result.totalCount;
if (this.search.total == 0) {
this.noData = true;
} else {
this.noData = false;
}
});
this.close();
});
},
renderContent(h, { root, node, data }) {
//渲染树的样式
return h(
"span",
{
style: {
color: data.isProduct != "1" ? "#249E91" : "#333", //根据选中状态设置样式
cursor: "pointer",
},
on: {
click: () => {
let arrTree = [];
arrTree.push(data);
this.handleSelect(arrTree); //手动选择树节点
},
},
},
//得到数据字典对应的label和value,用于table排序、筛选
getArry(arryList) {
let arry = [];
arryList.forEach(data => {
var that = this;
let arryObj = {};
arryObj["label"] = data.name;
arryObj["value"] = data.code;
arry.push(arryObj);
});
return arry;
data.title
);
},
handleSelect(data) {
if (data.length > 0) {
this.selectdata = [];
this.selectdata = data;
this.list = [];
this.list.push({
label: data[0].title,
value: data[0].id,
});
if (data[0].isProduct == "1") {
this.orderSearchForm.productName = data[0].id;
this.orderSearchForm.productId = data[0].productId;
} else {
this.$Message.error("此节点不是产品,请选择产品节点!");
}
}
},
close() {
this.showModel = false;
},
complexSearch() {
// this.$emit('easySearch',this.orderSearchForm);
let parmes = this.orderSearchForm;
parmes.SimpleSearch = "";
let url = `${PlanUrl}/orderexecute/pageddatamesorders`;
// console.log(parmes)
service.post(`${url}`, parmes).then((res) => {
// console.log(res)
this.listTask = res.result.items;
this.search.total = res.result.totalCount;
if (this.search.total == 0) {
this.noData = true;
} else {
this.noData = false;
}
});
this.close();
},
//得到数据字典对应的label和value,用于table排序、筛选
getArry(arryList) {
let arry = [];
arryList.forEach((data) => {
var that = this;
let arryObj = {};
arryObj["label"] = data.name;
arryObj["value"] = data.code;
arry.push(arryObj);
});
return arry;
},
mounted() {
window.onresize = () => {
///浏览器窗口大小变化
return (() => {
this.tbHeight = window.innerHeight - 208 + "px";
})();
};
}
},
mounted() {
window.onresize = () => {
///浏览器窗口大小变化
return (() => {
this.tbHeight = window.innerHeight - 208 + "px";
})();
};
},
};
</script>
<style scoped>
#pageComent .ivu-select-dropdown {
top: 0 !important;
bottom: 36px;
top: 0 !important;
bottom: 36px;
}
ul,
li {
list-style: none;
list-style: none;
}
.table_title {
width: 320px;
float: left;
width: 320px;
float: left;
}
.title_btn {
margin-top: 1px;
margin-top: 1px;
}
.tableBox {
/* height: 582px; 笔记本高度*/
/* height: 778px; */
border: #ddd solid 1px;
overflow-y: scroll;
overflow-x: hidden;
/* height: 582px; 笔记本高度*/
/* height: 778px; */
border: #ddd solid 1px;
overflow-y: scroll;
overflow-x: hidden;
}
.table {
margin: 10px 0 0 0;
display: -webkit-flex;
display: flex;
flex-wrap: wrap;
margin: 10px 0 0 0;
display: -webkit-flex;
display: flex;
flex-wrap: wrap;
}
.no_data {
height: 800px;
text-align: center;
line-height: 800px;
height: 800px;
text-align: center;
line-height: 800px;
}
.card {
margin: 10px 0 10px 20px;
margin: 10px 0 10px 20px;
}
.wu_data {
margin: 200px auto;
font-size: 18px;
margin: 200px auto;
font-size: 18px;
}
.card_line {
height: 30px;
line-height: 30px;
height: 30px;
line-height: 30px;
}
.footer01 {
text-align: center;
text-align: center;
}
.footer_btn {
border-top: 1px solid #ccc;
display: block;
padding: 10px 0 0 0;
color: #0099ff;
border-top: 1px solid #ccc;
display: block;
padding: 10px 0 0 0;
color: #0099ff;
}
</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