Commit 0b533c42 authored by kangzhenfei's avatar kangzhenfei

Merge branch 'product' of git.mes123.com:zhouyx/mes-ui into product

parents 9d966ce5 cda71c87
...@@ -4,6 +4,9 @@ export default { ...@@ -4,6 +4,9 @@ export default {
paged(params) { paged(params) {
return Api.get(`${apsUrl}/scheduletotal/getall`, params); return Api.get(`${apsUrl}/scheduletotal/getall`, params);
}, },
getalldetails(params) {
return Api.get(`${apsUrl}/scheduletotal/getalldetails`, params);
},
getall(params) { getall(params) {
return Api.get(`${apsUrl}/schema/getall`, params); return Api.get(`${apsUrl}/schema/getall`, params);
}, },
......
<template> <template>
<div class="q-pa-sm"> <div class="q-pa-sm">
<div class="pr mt50" v-if="tasks.length==0" > <div class="pr mt50" v-if="tasks.length==0">
<Spin size="large" fix ></Spin> <Spin size="large" fix></Spin>
</div> </div>
<gantt-elastic <gantt-elastic
v-else v-else
:options="options" :options="options"
...@@ -44,10 +44,10 @@ function getDate(hours) { ...@@ -44,10 +44,10 @@ function getDate(hours) {
return new Date(timeStamp + hours * 60 * 60 * 1000).getTime(); return new Date(timeStamp + hours * 60 * 60 * 1000).getTime();
} }
function GetTimeByTimeStr(dateString) { function GetTimeByTimeStr(dateString) {
var timeArr = dateString.split(" "); var timeArr = dateString.split(" ");
var d = timeArr[0].split("-"); var d = timeArr[0].split("-");
var t = timeArr[1].split(":"); var t = timeArr[1].split(":");
return new Date(d[0], d[1] - 1, d[2], t[0], t[1], t[2]).getTime(); return new Date(d[0], d[1] - 1, d[2], t[0], t[1], t[2]).getTime();
} }
let tasks = [ let tasks = [
{ {
...@@ -58,7 +58,7 @@ let tasks = [ ...@@ -58,7 +58,7 @@ let tasks = [
start: getDate(-24 * 5), start: getDate(-24 * 5),
duration: 15 * 24 * 60 * 60 * 1000, duration: 15 * 24 * 60 * 60 * 1000,
percent: 85, percent: 85,
type: "project" type: "project",
//collapsed: true, //collapsed: true,
}, },
{ {
...@@ -75,9 +75,9 @@ let tasks = [ ...@@ -75,9 +75,9 @@ let tasks = [
style: { style: {
base: { base: {
fill: "#1EBC61", fill: "#1EBC61",
stroke: "#0EAC51" stroke: "#0EAC51",
} },
} },
}, },
{ {
id: 3, id: 3,
...@@ -88,7 +88,7 @@ let tasks = [ ...@@ -88,7 +88,7 @@ let tasks = [
start: getDate(-24 * 3), start: getDate(-24 * 3),
duration: 2 * 24 * 60 * 60 * 1000, duration: 2 * 24 * 60 * 60 * 1000,
percent: 100, percent: 100,
type: "task" type: "task",
}, },
{ {
id: 4, id: 4,
...@@ -99,7 +99,7 @@ let tasks = [ ...@@ -99,7 +99,7 @@ let tasks = [
duration: 2 * 24 * 60 * 60 * 1000, duration: 2 * 24 * 60 * 60 * 1000,
percent: 50, percent: 50,
type: "task", type: "task",
dependentOn: [3] dependentOn: [3],
}, },
{ {
id: 5, id: 5,
...@@ -114,9 +114,9 @@ let tasks = [ ...@@ -114,9 +114,9 @@ let tasks = [
style: { style: {
base: { base: {
fill: "#0287D0", fill: "#0287D0",
stroke: "#0077C0" stroke: "#0077C0",
} },
} },
}, },
{ {
id: 6, id: 6,
...@@ -132,9 +132,9 @@ let tasks = [ ...@@ -132,9 +132,9 @@ let tasks = [
style: { style: {
base: { base: {
fill: "#8E44AD", fill: "#8E44AD",
stroke: "#7E349D" stroke: "#7E349D",
} },
} },
}, },
{ {
id: 7, id: 7,
...@@ -147,7 +147,7 @@ let tasks = [ ...@@ -147,7 +147,7 @@ let tasks = [
duration: 4 * 60 * 60 * 1000, duration: 4 * 60 * 60 * 1000,
percent: 20, percent: 20,
type: "task", type: "task",
collapsed: true collapsed: true,
}, },
{ {
id: 8, id: 8,
...@@ -159,7 +159,7 @@ let tasks = [ ...@@ -159,7 +159,7 @@ let tasks = [
start: getDate(24 * 3), start: getDate(24 * 3),
duration: 1 * 24 * 60 * 60 * 1000, duration: 1 * 24 * 60 * 60 * 1000,
percent: 0, percent: 0,
type: "task" type: "task",
}, },
{ {
id: 9, id: 9,
...@@ -175,9 +175,9 @@ let tasks = [ ...@@ -175,9 +175,9 @@ let tasks = [
style: { style: {
base: { base: {
fill: "#8E44AD", fill: "#8E44AD",
stroke: "#7E349D" stroke: "#7E349D",
} },
} },
}, },
{ {
id: 10, id: 10,
...@@ -187,7 +187,7 @@ let tasks = [ ...@@ -187,7 +187,7 @@ let tasks = [
start: getDate(24 * 5), start: getDate(24 * 5),
duration: 24 * 60 * 60 * 1000, duration: 24 * 60 * 60 * 1000,
percent: 0, percent: 0,
type: "task" type: "task",
}, },
{ {
id: 11, id: 11,
...@@ -197,7 +197,7 @@ let tasks = [ ...@@ -197,7 +197,7 @@ let tasks = [
start: getDate(24 * 6), start: getDate(24 * 6),
duration: 24 * 60 * 60 * 1000, duration: 24 * 60 * 60 * 1000,
percent: 0, percent: 0,
type: "task" type: "task",
}, },
{ {
id: 12, id: 12,
...@@ -208,7 +208,7 @@ let tasks = [ ...@@ -208,7 +208,7 @@ let tasks = [
duration: 24 * 60 * 60 * 1000, duration: 24 * 60 * 60 * 1000,
percent: 0, percent: 0,
type: "task", type: "task",
parentId: 11 parentId: 11,
}, },
{ {
id: 13, id: 13,
...@@ -218,7 +218,7 @@ let tasks = [ ...@@ -218,7 +218,7 @@ let tasks = [
start: getDate(24 * 8), start: getDate(24 * 8),
duration: 24 * 60 * 60 * 1000, duration: 24 * 60 * 60 * 1000,
percent: 0, percent: 0,
type: "task" type: "task",
}, },
{ {
id: 14, id: 14,
...@@ -228,7 +228,7 @@ let tasks = [ ...@@ -228,7 +228,7 @@ let tasks = [
start: getDate(24 * 9), start: getDate(24 * 9),
duration: 24 * 60 * 60 * 1000, duration: 24 * 60 * 60 * 1000,
percent: 0, percent: 0,
type: "task" type: "task",
}, },
{ {
id: 15, id: 15,
...@@ -238,45 +238,45 @@ let tasks = [ ...@@ -238,45 +238,45 @@ let tasks = [
start: getDate(24 * 16), start: getDate(24 * 16),
duration: 24 * 60 * 60 * 1000, duration: 24 * 60 * 60 * 1000,
percent: 0, percent: 0,
type: "task" type: "task",
} },
]; ];
let options = { let options = {
taskMapping: { taskMapping: {
progress: "percent" progress: "percent",
}, },
maxRows: 100, maxRows: 100,
maxHeight: 500, maxHeight: 500,
title: { title: {
label: "Your project title as html (link or whatever...)", label: "Your project title as html (link or whatever...)",
html: false html: false,
}, },
row: { row: {
height: 24 height: 24,
}, },
calendar: { calendar: {
hour: { hour: {
display: true display: true,
} },
}, },
chart: { chart: {
progress: { progress: {
bar: false bar: false,
}, },
expander: { expander: {
display: true display: true,
} },
}, },
taskList: { taskList: {
expander: { expander: {
straight: false straight: false,
}, },
columns: [ columns: [
{ {
id: 1, id: 1,
label: "ID", label: "ID",
value: "id", value: "id",
width: 40 width: 40,
}, },
{ {
id: 2, id: 2,
...@@ -288,46 +288,46 @@ let options = { ...@@ -288,46 +288,46 @@ let options = {
events: { events: {
click({ data, column }) { click({ data, column }) {
this.$Message.info(data.name); this.$Message.info(data.name);
} },
} },
}, },
{ {
id: 3, id: 3,
label: "设备编号", label: "设备编号",
value: "EquipmentNo", value: "EquipmentNo",
width: 160, width: 160,
html: true html: true,
}, },
{ {
id: 4, id: 4,
label: "计划开始时间", label: "计划开始时间",
value: task => dayjs(task.start).format("YYYY-MM-DD"), value: (task) => dayjs(task.start).format("YYYY-MM-DD"),
width: 100 width: 100,
}, },
{ {
id: 5, id: 5,
label: "计划结束时间", label: "计划结束时间",
value: task => dayjs(task.endTime).format("YYYY-MM-DD"), value: (task) => dayjs(task.endTime).format("YYYY-MM-DD"),
width: 100 width: 100,
}, },
{ {
id: 6, id: 6,
label: "计划数量", label: "计划数量",
value: "plan_qty", value: "plan_qty",
width: 68 width: 68,
}, },
{ {
id: 7, id: 7,
label: "投入数量", label: "投入数量",
value: "put_into_qty", value: "put_into_qty",
width: 68 width: 68,
}, },
{ {
id: 8, id: 8,
label: "派工数量", label: "派工数量",
value: "dispatch_qty", value: "dispatch_qty",
width: 68 width: 68,
}, },
{ {
id: 9, id: 9,
...@@ -337,15 +337,15 @@ let options = { ...@@ -337,15 +337,15 @@ let options = {
style: { style: {
"task-list-header-label": { "task-list-header-label": {
"text-align": "center", "text-align": "center",
width: "100%" width: "100%",
}, },
"task-list-item-value-container": { "task-list-item-value-container": {
"text-align": "center", "text-align": "center",
width: "100%" width: "100%",
} },
} },
} },
] ],
}, },
locale: { locale: {
weekdays: ["周日", "周一", "周二", "周三", "周四", "周五", "周六"], weekdays: ["周日", "周一", "周二", "周三", "周四", "周五", "周六"],
...@@ -361,8 +361,8 @@ let options = { ...@@ -361,8 +361,8 @@ let options = {
"九月", "九月",
"十月", "十月",
"十一月", "十一月",
"十二月" "十二月",
] ],
// name: "en", // name: "en",
// Now: "Now", // Now: "Now",
// "X-Scale": "Zoom-X", // "X-Scale": "Zoom-X",
...@@ -370,25 +370,25 @@ let options = { ...@@ -370,25 +370,25 @@ let options = {
// "Task list width": "Task list", // "Task list width": "Task list",
// "Before/After": "Expand", // "Before/After": "Expand",
// "Display task list": "Task list" // "Display task list": "Task list"
} },
}; };
export default { export default {
name: "Gantt", name: "Gantt",
components: { components: {
GanttElastic, GanttElastic,
GanttHeader GanttHeader,
}, },
props: { props: {
id: String id: String,
}, },
data() { data() {
return { return {
tasks:[], tasks: [],
options, options,
dynamicStyle: {}, dynamicStyle: {},
lastId: 16 lastId: 16,
}; };
}, },
created() { created() {
...@@ -399,62 +399,55 @@ export default { ...@@ -399,62 +399,55 @@ export default {
methods: { methods: {
gantData() { gantData() {
if (this.id) { if (this.id) {
Api.paged({ scheduleId: this.id }) Api.getalldetails({ scheduleId: this.id })
.then(r => { .then((r) => {
if (r.result) { if (r.result) {
var parentId = r.result[0].id; //父级id
var list = []; var list = [];
var obj = { r.result.map((u) => {
id: r.result[0].id, var parentId = u.id; //父级id
// parentId: 0, var obj = {
name: r.result[0].part_name, id: u.id,
start:GetTimeByTimeStr(r.result[0].plan_start) , // parentId: 0,
// endTime: GetTimeByTimeStr(r.result[0].plan_finish), name: u.part_name,
EquipmentNo: "/", start: GetTimeByTimeStr(u.plan_start),
duration: GetTimeByTimeStr(r.result[0].plan_finish)-GetTimeByTimeStr(r.result[0].plan_start), // endTime: GetTimeByTimeStr(r.result[0].plan_finish),
percent: 85, EquipmentNo: "/",
plan_qty: r.result[0].plan_qty, duration:
put_into_qty: "/", GetTimeByTimeStr(u.plan_finish) -
dispatch_qty: "/", GetTimeByTimeStr(u.plan_start),
type: "project" percent: 85,
}; plan_qty: u.plan_qty,
list.push(obj); put_into_qty: "/",
Api.getdetail({ dispatch_qty: "/",
part_task_pk: r.result[0].id, type: "project",
scheduleId: this.id };
}).then(r => { list.push(obj);
if (r.result) { if (u.children) {
for (var i = 0; i < r.result.length; i++) { u.children.map((p,i) => {
var start=GetTimeByTimeStr(r.result[i].plan_start); var start = GetTimeByTimeStr(p.plan_start);
var jg= GetTimeByTimeStr(r.result[i].plan_finish)- start; var jg = GetTimeByTimeStr(p.plan_finish) - start;
let temp = { let temp = {
id: r.result[i].op_task_pk, id: p.op_task_pk,
name: r.result[i].task_name, name:p.task_name,
EquipmentNo: r.result[i].equip_id, EquipmentNo:p.equip_id,
// parentId: i<5?parentId:368, parentId: parentId,
parentId: parentId,
// start: r.result[i].plan_start,
// endTime: r.result[i].plan_finish,
// endTime: "2020-7-30",
start: start, start: start,
duration: jg, duration: jg,
percent: i*9, percent: i * 9,
put_into_qty: r.result[i].put_into_qty, put_into_qty:p.put_into_qty,
dispatch_qty: r.result[i].dispatch_qty, dispatch_qty:p.dispatch_qty,
type:i%2?"task":'milestone', type: i % 2 ? "task" : "milestone",
// type: "milestone",
}; };
list.push(temp); list.push(temp);
} });
this.tasksUpdate(list);
console.warn(list)
} }
}); });
this.tasksUpdate(list);
} }
}) })
.catch(error => { .catch((error) => {
this.$Message.error("请求失败"); console.warn("err",error)
this.$Message.error("请求失败222");
}); });
} }
}, },
...@@ -468,7 +461,7 @@ export default { ...@@ -468,7 +461,7 @@ export default {
start: getDate(24 * 3), start: getDate(24 * 3),
duration: 1 * 24 * 60 * 60 * 1000, duration: 1 * 24 * 60 * 60 * 1000,
percent: 50, percent: 50,
type: "project" type: "project",
}); });
}, },
tasksUpdate(tasks) { tasksUpdate(tasks) {
...@@ -481,7 +474,7 @@ export default { ...@@ -481,7 +474,7 @@ export default {
}, },
styleUpdate(style) { styleUpdate(style) {
this.dynamicStyle = style; this.dynamicStyle = style;
} },
} },
}; };
</script> </script>
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