Commit 5d5bcee3 authored by renjintao's avatar renjintao

execute

parent 059cf8b3
...@@ -46,6 +46,7 @@ ...@@ -46,6 +46,7 @@
@on-drag-drop="onDragDrop" @on-drag-drop="onDragDrop"
@on-selection-change="selectionChange" @on-selection-change="selectionChange"
@on-select="onSelect" @on-select="onSelect"
:row-key="rowKey"
></Table> ></Table>
</div> </div>
<div class="table-footer"> <div class="table-footer">
...@@ -225,6 +226,10 @@ export default { ...@@ -225,6 +226,10 @@ export default {
span: {//栅格数 span: {//栅格数
type: Number, type: Number,
default: 24 default: 24
},
//table控件children子数据控制功能
rowKey: {
type: [String, Number]
}, },
gutter:{//间距 gutter:{//间距
type:Number, type:Number,
......
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
@on-selection-change="onSelect" @on-selection-change="onSelect"
:batch="true" :batch="true"
:border="false" :border="false"
:rowKey="id" rowKey="id"
> >
<template slot="easySearch"> <template slot="easySearch">
<Form ref="formInline" :model="easySearch" inline> <Form ref="formInline" :model="easySearch" inline>
......
...@@ -13,4 +13,17 @@ export default { ...@@ -13,4 +13,17 @@ export default {
orderanddispatchinfos(params) { orderanddispatchinfos(params) {
return Api.get(`${PlanUrl}/orderexecutenew/orderanddispatchinfos`, params); return Api.get(`${PlanUrl}/orderexecutenew/orderanddispatchinfos`, params);
}, },
//工单开工
entrystart(params) {
return Api.post(`${PlanUrl}/orderexecute/entrystart`, params);
},
//工单暂停
entrypause(params) {
return Api.post(`${PlanUrl}/orderexecute/entrypause`, params);
},
//工单继续
entrentrycontinuestart(params) {
return Api.post(`${PlanUrl}/orderexecute/entrycontinue`, params);
},
} }
\ No newline at end of file
...@@ -2,25 +2,27 @@ ...@@ -2,25 +2,27 @@
<template> <template>
<div class="order_list"> <div class="order_list">
<div class="card_box"> <div class="card_box">
<Card class="card_order" v-for="(item,index) in listTasks" <Card
@click.native="goPage(item)" :key="index" class="card_order"
v-for="(item,index) in listTasks"
:style="order==item.id?'box-shadow: 0px 0px 15px #333;':''"
@click.native="goPage(item)"
:key="index"
:class="item.status==12 ? 'card_border1' : (item.status==14 ? 'card_border2': (item.status==5 ?'card_border3': :class="item.status==12 ? 'card_border1' : (item.status==14 ? 'card_border2': (item.status==5 ?'card_border3':
(item.status==7?'card_border4':(item.status==-1?'card_border5':''))))" (item.status==7?'card_border4':(item.status==-1?'card_border5':''))))"
> >
<!-- :class="item.status=='未开工'? 'card_border1' : (item.status=='执行中' ? 'card_border2': (item.status=='暂停中' ?'card_border3': <!-- :class="item.status=='未开工'? 'card_border1' : (item.status=='执行中' ? 'card_border2': (item.status=='暂停中' ?'card_border3':
(item.status=='交检中'?'card_border4':(item.status=='交接中'?'card_border5':''))))" --> (item.status=='交检中'?'card_border4':(item.status=='交接中'?'card_border5':''))))"-->
<p slot="title">{{item.mesCode}} <p slot="title">
<state {{item.mesCode}}
code="taskList.status" <state code="taskList.status" ref="state" class="fr" :value="item.status" type="text"></state>
ref="state" class="fr"
:value="item.status"
type="text"
></state>
<!-- <span >{{item.status}}</span> --> <!-- <span >{{item.status}}</span> -->
</p> </p>
<p class="order_tit">{{item.productName}}</p> <p class="order_tit">{{item.productName}}</p>
<p><Icon type="ios-pricetags" />{{item.taskName}}</p> <p>
<Icon type="ios-pricetags" />
{{item.taskName}}
</p>
<p>{{item.beginTime}}~{{item.endTime}}</p> <p>{{item.beginTime}}~{{item.endTime}}</p>
</Card> </Card>
<p>{{listTasks.length}} 个工单</p> <p>{{listTasks.length}} 个工单</p>
...@@ -30,40 +32,57 @@ ...@@ -30,40 +32,57 @@
<script> <script>
import Api from "../../api"; import Api from "../../api";
export default { export default {
name:'orderlist', name: "orderlist",
data(){ data() {
return{ return {
gnFlag:0, gnFlag: 0,
listTasks:[], listTasks: [],
dataLength:0, dataLength: 0
};
},
props: {
order: {
type: String,
default: '',
} }
}, },
created() { created() {
this.loadTree(-9); this.loadTree(-9);
}, },
methods: { methods: {
loadTree(value){ loadTree(value) {
let parmse = { let parmse = {
status: value, status: value,
isAsc: true isAsc: true
};
Api.getCardList(parmse).then(res => {
if (res.success) {
this.listTasks = res.result;
this.dataLength = res.result.length;
} }
Api.getCardList(parmse).then(res=>{ });
if(res.success){
this.listTasks = res.result
this.dataLength = res.result.length
}
})
},
gnFunto(number,type){
this.gnFlag = number
},
goPage(item){
console.log(item)
this.$Message.success("工单查询数据...")
}, },
gnFunto(number, type) {
this.gnFlag = number;
}, },
watch:{ goPage(item) {
this.$router.push({
path: "/produce/execute",
query: {
id: item.id,
orderId: item.orderId,
executeId: item.executeId,
headid: item.routingHeaderId,
dispatchStatus: item.status
}
});
}
}, },
} watch: {
order(v)
{
//alert(v)
}
}
};
</script> </script>
\ No newline at end of file
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
</div> </div>
</div> </div>
<!-- 列表卡片主内容 --> <!-- 列表卡片主内容 -->
<orderlist ref="orderlist" /> <orderlist ref="orderlist" :order="inputId" />
</Drawer> </Drawer>
<!-- 功能区 --> <!-- 功能区 -->
<Drawer <Drawer
...@@ -56,8 +56,9 @@ export default { ...@@ -56,8 +56,9 @@ export default {
detail: null, detail: null,
row:{}, row:{},
odermodel: -9, odermodel: -9,
orderId: null, orderId: this.$route.query.id,
condition: [] condition: [],
inputId: null,
}; };
}, },
created() { created() {
...@@ -66,6 +67,7 @@ export default { ...@@ -66,6 +67,7 @@ export default {
row.orderId = this.$route.query.orderId; row.orderId = this.$route.query.orderId;
row.executeId = this.$route.query.executeId; row.executeId = this.$route.query.executeId;
this.row=row this.row=row
this.inputId=this.$route.query.id
this.detail = () => import("./starOrder/index"); this.detail = () => import("./starOrder/index");
}, },
async fetch({ store, params }) { async fetch({ store, params }) {
...@@ -120,6 +122,14 @@ export default { ...@@ -120,6 +122,14 @@ export default {
} //测试数据 } //测试数据
} }
}, },
watch: {} watch: {
'$route.query.id'(v)
{
this.row.id = v
this.inputId=v
this.detail = () => import("./starOrder/index")
},
}
}; };
</script> </script>
<template> <template>
<div class> <div class>
<div class="star" v-if="!starmodal"> <div class="star" v-if="dispatchStatus==12">
<a class="start" @click="starFun"> <a class="start" @click="starFun">
<Icon type="md-play" />开工 <Icon type="md-play" />开工
</a> </a>
</div> </div>
<div class="star" v-else-if="starmodal"> <div class="star" v-else>
<div class="flex fc-b"> <div class="flex fc-b">
<Button class="button" size="large" type="primary"> <Button class="button" size="large" type="primary" @click="pauseFun" v-show="btnTextStatus">
<Icon type="ios-pause" />暂停 <Icon type="ios-pause" />
{{btnText}}
</Button> </Button>
<Button class="button" size="large" type="primary"> <Button class="button" size="large" type="primary" @click="goPage(8,'数据填报')">
<Icon type="logo-angular" />交检 <Icon type="logo-angular" />数据填报
</Button> </Button>
<Button class="button" size="large" type="primary"> <Button class="button" size="large" type="primary" @click="goPage(7,'质量判定')">
<Icon type="ios-checkmark-circle-outline" />完工 <Icon type="ios-checkmark-circle-outline" />质量判定
</Button> </Button>
<Button class="button" size="large" type="primary" @click="transferFn"> <Button class="button" size="large" type="primary" @click="transferFn">
<Icon type="md-swap" />转序交接 <Icon type="md-swap" />转序交接
</Button> </Button>
</div> </div>
<div class="star_step"> <div class="star_step" v-if="false">
<div class="step_item" v-for="i of 6" :key="i"> <div class="step_item" v-for="i of 6" :key="i">
<p class="icon_A" v-if="i>=4"> <p class="icon_A" v-if="i>=4">
<Icon type="md-checkmark-circle" /> <Icon type="md-checkmark-circle" />
...@@ -50,7 +51,10 @@ ...@@ -50,7 +51,10 @@
<ul> <ul>
<li>产品名称:{{entity.productName}}</li> <li>产品名称:{{entity.productName}}</li>
<li>图号:{{entity.drawnNumber}}</li> <li>图号:{{entity.drawnNumber}}</li>
<li>状态:{{entity.status}}</li> <li>
状态:
<state code="plan.order.status" ref="state" :value="entity.status" type="text"></state>
</li>
<li>订单编号:{{entity.mesCode}}</li> <li>订单编号:{{entity.mesCode}}</li>
<li>批次号:{{entity.batchNumber}}</li> <li>批次号:{{entity.batchNumber}}</li>
<li>计划数量:{{entity.quantity}}</li> <li>计划数量:{{entity.quantity}}</li>
...@@ -64,13 +68,14 @@ ...@@ -64,13 +68,14 @@
<li>派工数量:{{entity.dispatchQuantity}}</li> <li>派工数量:{{entity.dispatchQuantity}}</li>
<li>人员信息:{{entity.userNames}}</li> <li>人员信息:{{entity.userNames}}</li>
<li>准备工时:{{entity.setupTime}}</li> <li>准备工时:{{entity.setupTime}}</li>
<li>工单状态: <state code="taskList.status" ref="state1" :value="dispatchStatus" type="text"></state></li>
</ul> </ul>
</div> </div>
<div class="img_box fl" style="background:#DDD"> <div class="img_box fl" style="background:#DDD">
<ViewerImg :images="images" /> <ViewerImg :images="images" />
</div> </div>
</div> </div>
<Modal v-model="ransferModal" :title="transferTitle" width="800" > <Modal v-model="ransferModal" :title="transferTitle" width="800">
<!-- <component :is="detail" :eid="curId" @on-close="cancel" @on-ok="ok" footer-hide/> --> <!-- <component :is="detail" :eid="curId" @on-close="cancel" @on-ok="ok" footer-hide/> -->
<p>转序交接</p> <p>转序交接</p>
</Modal> </Modal>
...@@ -90,9 +95,29 @@ export default { ...@@ -90,9 +95,29 @@ export default {
ransferModal: false, ransferModal: false,
transferTitle: "确认转序", transferTitle: "确认转序",
images: [], images: [],
iamges1: [
{
thumbnail: iconImg + "noPic_product.png",
source: iconImg + "noPic_product.png"
}
],
entity: {}, entity: {},
id: Number(this.$route.query.id), id: Number(this.$route.query.id),
eid: "" orderId: Number(this.$route.query.orderId),
dispatchStatus: Number(this.$route.query.dispatchStatus),
eid: "",
btnText:
Number(this.$route.query.dispatchStatus) == 14
? "暂停"
: Number(this.$route.query.dispatchStatus) == 5
? "继续"
: "",
btnTextStatus:
Number(this.$route.query.dispatchStatus) == 14
? true
: Number(this.$route.query.dispatchStatus) == 5
? true
: false
}; };
}, },
created() { created() {
...@@ -102,7 +127,7 @@ export default { ...@@ -102,7 +127,7 @@ export default {
await store.dispatch("loadDictionary"); // 加载数据字典 await store.dispatch("loadDictionary"); // 加载数据字典
}, },
mounted() { mounted() {
this.load(this.id) this.load(this.id);
window.onresize = () => { window.onresize = () => {
///浏览器窗口大小变化 ///浏览器窗口大小变化
return (() => { return (() => {
...@@ -112,12 +137,81 @@ export default { ...@@ -112,12 +137,81 @@ export default {
}, },
methods: { methods: {
starFun() { starFun() {
this.$Message.success("开工..."); //开工
let params = {
id: this.id,
orderid: this.orderId + ""
};
Api.entrystart(params)
.then(res => {
if (res.success) {
this.$Message.success("开工成功!");
this.dispatchStatus = 14;
this.textBtn();
} else {
this.$Message.error("开工失败!");
}
})
.catch(err => {
this.$Message.error("连接错误");
});
}, },
transferFn(){ pauseFun() {
this.ransferModal = true //暂停or继续
let params = {
id: this.id,
orderid: this.orderId + ""
};
if (this.btnText == "暂停") {
Api.entrypause(params)
.then(res => {
if (res.success) {
this.$Message.success("暂停成功!");
this.dispatchStatus = 5;
this.btnText = "继续";
this.textBtn();
} else {
this.$Message.error("暂停失败!");
}
})
.catch(err => {
this.$Message.error("连接错误");
});
} else if (this.btnText == "继续") {
Api.entrentrycontinuestart(params)
.then(res => {
if (res.success) {
this.$Message.success("继续成功!");
this.dispatchStatus = 14;
this.btnText = "暂停";
this.textBtn();
} else {
this.$Message.error("继续失败!");
}
})
.catch(err => {
this.$Message.error("连接错误");
});
}
},
textBtn() {
//控制第一个按钮的text及显示
if (this.dispatchStatus == 14) {
this.btnText = "暂停";
this.btnTextStatus = true;
} else if (this.dispatchStatus == 5) {
this.btnText = "继续";
this.btnTextStatus = true;
} else {
this.btnText = "";
this.btnTextStatus = false;
}
},
transferFn() {
this.ransferModal = true;
}, },
load(v) { load(v) {
//加载基础数据
let params = { let params = {
id: v id: v
}; };
...@@ -128,13 +222,13 @@ export default { ...@@ -128,13 +222,13 @@ export default {
if (r.result.productId && r.result.productId > 0) { if (r.result.productId && r.result.productId > 0) {
ApiTech.get({ id: r.result.productId }).then(res => { ApiTech.get({ id: r.result.productId }).then(res => {
if (res.success && res.result) { if (res.success && res.result) {
if(res.result.productUrlList&& res.result.productUrlList.length>0) if (
{ res.result.productUrlList &&
res.result.productUrlList.length > 0
) {
this.eid = res.result.productUrlList; this.eid = res.result.productUrlList;
} } else {
else this.eid = this.$u.guid();
{
this.eid=this.$u.guid();
} }
//查询上传到文件服务器上的文件 //查询上传到文件服务器上的文件
let parms = { let parms = {
...@@ -143,18 +237,24 @@ export default { ...@@ -143,18 +237,24 @@ export default {
name: "", name: "",
field: "" field: ""
}; };
this.$http.sysUser.getFile(parms).then(res1 => { this.$http.sysUser
.getFile(parms)
.then(res1 => {
if (res1.data != [] && res1.data.length > 0) { if (res1.data != [] && res1.data.length > 0) {
this.images = []; this.images.splice(0);
res1.data.forEach(datas => { res1.data.forEach(datas => {
let objImag = {}; let objImag = {};
objImag.thumbnail=this.downUrl+datas.downloadPath objImag.thumbnail = this.downUrl + datas.downloadPath;
objImag.source=this.downUrl+datas.downloadPath objImag.source = this.downUrl + datas.downloadPath;
this.images.push(objImag) this.images.push(objImag);
}); });
} else {
this.images = this.iamges1;
} }
})
.catch(err => {
this.images = this.iamges1;
}); });
} }
}); });
} }
...@@ -169,11 +269,36 @@ export default { ...@@ -169,11 +269,36 @@ export default {
}, },
show() { show() {
this.$viewer.show(); this.$viewer.show();
},
goPage(type,title)
{
this.$parent.changeTitle(type,title)
}
},
watch: {
"$route.query.id"(v1) {
this.images = [];
this.id = v1;
this.load(v1);
},
"$route.query.dispatchStatus"(v2) {
this.dispatchStatus = v2;
if (v2 == 14) {
this.btnText = "暂停";
this.btnTextStatus = true;
} else if (v2 == 5) {
this.btnText = "继续";
this.btnTextStatus = true;
} else {
this.btnText = "";
this.btnTextStatus = false;
} }
}, },
watch:{ "$route.query.orderId"(v3) {
images(v){ this.orderId = v3;
this.images=v },
images(v) {
this.images = v;
} }
} }
}; };
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
<Button :icon="iconInfo" shape="circle" :title="titleInfo" @click="changeShwo"></Button> <Button :icon="iconInfo" shape="circle" :title="titleInfo" @click="changeShwo"></Button>
</template> </template>
<template slot="card" slot-scope="{row}"> <template slot="card" slot-scope="{row}">
<div class="body" @click="toExecute(row.id,row.orderId,row.executeId,row.routingHeaderId)"> <div class="body" @click="toExecute(row.id,row.orderId,row.executeId,row.routingHeaderId,row.status)">
<Row class="title-i"> <Row class="title-i">
<Col :span="10" class="order-code">{{row.productName}}</Col> <Col :span="10" class="order-code">{{row.productName}}</Col>
<Col :span="10" class="order-code">{{row.mesCode}}</Col> <Col :span="10" class="order-code">{{row.mesCode}}</Col>
...@@ -181,7 +181,8 @@ export default { ...@@ -181,7 +181,8 @@ export default {
params.row.id, params.row.id,
params.row.orderId, params.row.orderId,
params.row.executeId, params.row.executeId,
params.row.routingHeaderId params.row.routingHeaderId,
params.row.status
) )
} }
}, },
...@@ -211,11 +212,11 @@ export default { ...@@ -211,11 +212,11 @@ export default {
search() { search() {
this.$refs.grid.reload(this.easySearch); this.$refs.grid.reload(this.easySearch);
}, },
toExecute(id, orderId, executeId,headid) { toExecute(id, orderId, executeId,headid,status) {
//跳转到对应操作页面 获取id:this.$route.query.id //跳转到对应操作页面 获取id:this.$route.query.id
this.$router.push({ this.$router.push({
path: "/produce/execute", path: "/produce/execute",
query: { id: id, orderId: orderId, executeId: executeId,headid:headid } query: { id: id, orderId: orderId, executeId: executeId,headid:headid,dispatchStatus:status }
}); });
}, },
tdStyle(val) { tdStyle(val) {
...@@ -349,8 +350,8 @@ export default { ...@@ -349,8 +350,8 @@ export default {
} }
.box { .box {
color: white; color: white;
width: 70px; width: 80px;
height: 20px; height: 30px;
overflow: hidden; overflow: hidden;
/* Rotate div */ /* Rotate div */
transform: rotate(33deg); transform: rotate(33deg);
......
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