进度管理(甘特图):右侧拖拽事件
This commit is contained in:
parent
1243ede43e
commit
e6d68d55d8
@ -157,12 +157,12 @@
|
|||||||
children: [], //子级
|
children: [], //子级
|
||||||
remark: dataArr[i].remark, //备注
|
remark: dataArr[i].remark, //备注
|
||||||
// "PredecessorLink":dataArr[i].predecessorIds,
|
// "PredecessorLink":dataArr[i].predecessorIds,
|
||||||
PredecessorLink: [
|
// PredecessorLink: [
|
||||||
{
|
// {
|
||||||
Type: 1,
|
// Type: 1,
|
||||||
PredecessorUID: number-1
|
// PredecessorUID: number-1
|
||||||
},
|
// },
|
||||||
],
|
// ],
|
||||||
};
|
};
|
||||||
console.log("参数传进去了吗", data.PredecessorLink);
|
console.log("参数传进去了吗", data.PredecessorLink);
|
||||||
if (dataArr[i].children.length > 0) {
|
if (dataArr[i].children.length > 0) {
|
||||||
@ -188,13 +188,13 @@
|
|||||||
children: [], //子级
|
children: [], //子级
|
||||||
remark: dataArr[i].children[j].remark, //备注
|
remark: dataArr[i].children[j].remark, //备注
|
||||||
// "PredecessorLink":dataArr[i].children[j].predecessorIds,
|
// "PredecessorLink":dataArr[i].children[j].predecessorIds,
|
||||||
PredecessorLink: [
|
// PredecessorLink: [
|
||||||
//前置任务字段
|
// //前置任务字段
|
||||||
{
|
// {
|
||||||
Type: 1,
|
// Type: 1,
|
||||||
PredecessorUID:number-1
|
// PredecessorUID:number-1
|
||||||
},
|
// },
|
||||||
],
|
// ],
|
||||||
};
|
};
|
||||||
console.log(
|
console.log(
|
||||||
"参数传进去了吗2222",
|
"参数传进去了吗2222",
|
||||||
@ -224,13 +224,13 @@
|
|||||||
children: [], //子级
|
children: [], //子级
|
||||||
remark: threeData[j].children[k].remark, //备注
|
remark: threeData[j].children[k].remark, //备注
|
||||||
// "PredecessorLink":threeData[j].children[k].predecessorIds,
|
// "PredecessorLink":threeData[j].children[k].predecessorIds,
|
||||||
PredecessorLink: [
|
// PredecessorLink: [
|
||||||
//前置任务字段
|
// //前置任务字段
|
||||||
{
|
// {
|
||||||
Type: 1,
|
// Type: 1,
|
||||||
PredecessorUID:number-1
|
// PredecessorUID:number-1
|
||||||
},
|
// },
|
||||||
],
|
// ],
|
||||||
};
|
};
|
||||||
data.children[0].children.push(children2);
|
data.children[0].children.push(children2);
|
||||||
}
|
}
|
||||||
@ -446,7 +446,7 @@
|
|||||||
gantt.setColumns(columns);
|
gantt.setColumns(columns);
|
||||||
gantt.setTreeColumn("name");
|
gantt.setTreeColumn("name");
|
||||||
gantt.addTask({
|
gantt.addTask({
|
||||||
name: "11111",
|
taskName: "11111",
|
||||||
});
|
});
|
||||||
// // 新增时触发
|
// // 新增时触发
|
||||||
// var cellCommitAdd = (e) => {
|
// var cellCommitAdd = (e) => {
|
||||||
@ -490,8 +490,8 @@
|
|||||||
if (d == "Start" || d == "Finish" || d == "PercentComplete") {
|
if (d == "Start" || d == "Finish" || d == "PercentComplete") {
|
||||||
if (d == "Start") {
|
if (d == "Start") {
|
||||||
data2.startDate = data[d];
|
data2.startDate = data[d];
|
||||||
} else if (d == "finishDate") {
|
} else if (d == "Finish") {
|
||||||
data2.startDate = data[d];
|
data2.finishDate = data[d];
|
||||||
}else if( d == "PercentComplete"){
|
}else if( d == "PercentComplete"){
|
||||||
data2.progressRatio = data[d];
|
data2.progressRatio = data[d];
|
||||||
}
|
}
|
||||||
@ -529,17 +529,21 @@
|
|||||||
|
|
||||||
//右侧 拖拽
|
//右侧 拖拽
|
||||||
var itemdragcomplete = (e) => {
|
var itemdragcomplete = (e) => {
|
||||||
|
// console.log('=====拖拽回调',e)
|
||||||
let requestData = {
|
let requestData = {
|
||||||
id: e.item.UID,
|
id: e.item.id,
|
||||||
projectSn: projectSn,
|
projectSn: projectSn,
|
||||||
|
taskName:e.item.taskName,
|
||||||
|
progressRatio:e.item.PercentComplete
|
||||||
};
|
};
|
||||||
let startTime = formatDateTime(e.item.Start).substring(0, 10);
|
let startTime = formatDateTime(e.item.Start).substring(0, 10);
|
||||||
let endTime = formatDateTime(e.item.Finish).substring(0, 10);
|
let endTime = formatDateTime(e.item.Finish).substring(0, 10);
|
||||||
requestData.startTime = startTime;
|
requestData.startDate = startTime;
|
||||||
requestData.endTime = endTime;
|
requestData.finishDate = endTime;
|
||||||
axios
|
axios
|
||||||
.post(requestUrl + "xmgl/progressItem/edit", requestData)
|
.post(requestUrl + "xmgl/progressTask/updateProgressTask", requestData)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
|
// console.log('=======',res)
|
||||||
if (res.data.code == 200) {
|
if (res.data.code == 200) {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -568,17 +572,6 @@
|
|||||||
}
|
}
|
||||||
return url;
|
return url;
|
||||||
}
|
}
|
||||||
document.getElementById('cancel').onclick=function(){
|
|
||||||
console.log('取消')
|
|
||||||
document.getElementById('addDiv').style.display = 'none';
|
|
||||||
}
|
|
||||||
// function cancel(){
|
|
||||||
// console.log('取消')
|
|
||||||
// document.getElementById('addDiv').style.display = 'none';
|
|
||||||
// }
|
|
||||||
// function submit(){
|
|
||||||
// console.log('确定')
|
|
||||||
// }
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
@ -601,9 +594,16 @@
|
|||||||
<div class="addbox">
|
<div class="addbox">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<p>任务名称:</p><input id="taskName" type="input">
|
<p>任务名称:</p><input id="taskName" type="input">
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<p>工期:</p><input id="duration" type="input">
|
||||||
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<p>前置任务:</p><input id="predecessorIds" type="input">
|
<p>前置任务:</p><input id="predecessorIds" type="input">
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<p>进度比例:</p><input id="progressRatio" type="input">
|
||||||
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<p>计划开始日期:</p><input id="startDate" type="text" placeholder="yyyy-MM-dd格式">
|
<p>计划开始日期:</p><input id="startDate" type="text" placeholder="yyyy-MM-dd格式">
|
||||||
</div>
|
</div>
|
||||||
@ -616,9 +616,12 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<p>实际完成时间:</p><input id="actualFinishDate" type="text" placeholder="yyyy-MM-dd格式">
|
<p>实际完成时间:</p><input id="actualFinishDate" type="text" placeholder="yyyy-MM-dd格式">
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<p>备注:</p><input id="remark" type="input">
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<button id="cancel" class="btn cancel">取消</button>
|
<button id="cancel" class="btn cancel">取消</button>
|
||||||
<button id="" class="btn submit">确定</button>
|
<button id="submit" class="btn submit">确定</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -93,40 +93,50 @@ mini.extend(GanttMenu, mini.Menu, {
|
|||||||
// gantt.downgradeTask(task);
|
// gantt.downgradeTask(task);
|
||||||
// }
|
// }
|
||||||
// },
|
// },
|
||||||
|
|
||||||
__OnAdd: function(e) {
|
__OnAdd: function(e) {
|
||||||
console.log("点击新增执行",e);
|
console.log("点击新增执行",e);
|
||||||
var gantt = this.owner;
|
var gantt = this.owner;
|
||||||
var targetTask = gantt.getSelected();
|
var targetTask = gantt.getSelected();
|
||||||
var task = gantt.newTask()
|
var task = gantt.newTask()
|
||||||
|
let url = window.parent.document.getElementById("iframe").contentWindow.location.search;
|
||||||
|
var parameter = url.split("="); //所有参数
|
||||||
|
var requestUrl = parameter[1].split("&")[0]; //请求服务器的地址
|
||||||
|
var projectSn = parameter[2].split("&")[0]; //projectSn
|
||||||
|
// var createUserId = store.state.userInfo.userId
|
||||||
//加到选中任务之后
|
//加到选中任务之后
|
||||||
// gantt.addTask(task, "after", targetTask);
|
// gantt.addTask(task, "after", targetTask);
|
||||||
document.getElementById('addDiv').style.display = 'block';
|
document.getElementById('addDiv').style.display = 'block';
|
||||||
console.log('vvvvv',document.getElementById('addDiv'))
|
console.log('vvvvv',document.getElementById('addDiv'))
|
||||||
|
document.getElementById('cancel').onclick=function(){
|
||||||
// if(!e.task.taskName){
|
document.getElementById('addDiv').style.display = 'none';
|
||||||
// data.taskName = e.task.taskName
|
}
|
||||||
// }
|
document.getElementById('submit').onclick=function(){
|
||||||
// console.log('data',data)
|
let data = {}
|
||||||
// if(e.task.taskName !="" && e.task.Start!="" && e.task.Finish!="" && e.task.duration!=""&&e.task.progressRatio!=""&&e.task.remark!=""){
|
data.taskName = document.getElementById("taskName").value;
|
||||||
// var data2 = {
|
data.duration = document.getElementById("duration").value;
|
||||||
// taskName: e.task.taskName,
|
data.progressRatio = document.getElementById("progressRatio").value;
|
||||||
// Start: e.task.Start,
|
data.predecessorIds = document.getElementById("predecessorIds").value;
|
||||||
// Finish: e.task.Finish,
|
data.startDate = document.getElementById("startDate").value;
|
||||||
// // actualStartDate: e.task.actualStartDate,
|
data.finishDate = document.getElementById("finishDate").value;
|
||||||
// // actualFinishDate: e.task.actualFinishDate,
|
data.actualStartDate = document.getElementById("actualStartDate").value;
|
||||||
// duration: e.task.duration,
|
data.actualFinishDate = document.getElementById("actualFinishDate").value;
|
||||||
// progressRatio: e.task.progressRatio,
|
data.remark = document.getElementById("remark").value;
|
||||||
// remark: e.task.remark,
|
console.log('data',data)
|
||||||
// // projectSn: projectSn,
|
// document.getElementById('addDiv').style.display = 'none';
|
||||||
// };
|
// if (!targetTask) {
|
||||||
// // 没有父级的时候
|
|
||||||
// if (targetTask) {
|
|
||||||
// data.parentId = e.task.id
|
// data.parentId = e.task.id
|
||||||
// }
|
// }
|
||||||
// console.log('添加data',data)
|
data.projectSn = projectSn
|
||||||
// }
|
data.createUserId = '4'
|
||||||
|
console.log('data',data)
|
||||||
|
axios
|
||||||
|
.post(requestUrl + "xmgl/progressTask/addProgressTask", data)
|
||||||
|
.then((res) => {
|
||||||
|
console.log('====新增',res)
|
||||||
|
alert('新增成功!')
|
||||||
|
document.getElementById('addDiv').style.display = 'none';
|
||||||
|
});
|
||||||
|
}
|
||||||
},
|
},
|
||||||
__OnEdit: function(e) {
|
__OnEdit: function(e) {
|
||||||
var gantt = this.owner;
|
var gantt = this.owner;
|
||||||
|
|||||||
@ -128,16 +128,16 @@ GanttSchedule.prototype = {
|
|||||||
task.Finish = maxTime(value);
|
task.Finish = maxTime(value);
|
||||||
if (task.Finish && task.Start) {
|
if (task.Finish && task.Start) {
|
||||||
var days = parseInt((task.Finish - task.Start) / (3600 * 24 * 1000));
|
var days = parseInt((task.Finish - task.Start) / (3600 * 24 * 1000));
|
||||||
task.Duration = days + 1;
|
task.duration = days + 1;
|
||||||
|
|
||||||
gantt.setTaskModified(task, "Duration");
|
gantt.setTaskModified(task, "duration");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (action == "percentcomplete") {
|
if (action == "percentcomplete") {
|
||||||
|
console.log('是更改进度',task)
|
||||||
gantt.setTaskModified(task, "PercentComplete");
|
gantt.setTaskModified(task, "PercentComplete");
|
||||||
|
// console.log('更改进度的时候的task',task)
|
||||||
task.PercentComplete = value;
|
task.PercentComplete = value;
|
||||||
|
|
||||||
}
|
}
|
||||||
if (action == "move") {
|
if (action == "move") {
|
||||||
gantt.setTaskModified(task, "Start");
|
gantt.setTaskModified(task, "Start");
|
||||||
@ -146,7 +146,7 @@ GanttSchedule.prototype = {
|
|||||||
|
|
||||||
if (task.Start) {
|
if (task.Start) {
|
||||||
task.Finish = maxTime(task.Start);
|
task.Finish = maxTime(task.Start);
|
||||||
task.Finish.setDate(task.Start.getDate() + task.Duration - 1);
|
task.Finish.setDate(task.Start.getDate() + task.duration - 1);
|
||||||
|
|
||||||
gantt.setTaskModified(task, "Finish");
|
gantt.setTaskModified(task, "Finish");
|
||||||
}
|
}
|
||||||
@ -168,7 +168,7 @@ GanttSchedule.prototype = {
|
|||||||
if (nodes && nodes.length > 0) {
|
if (nodes && nodes.length > 0) {
|
||||||
for (var i = 0, l = nodes.length; i < l; i++) {
|
for (var i = 0, l = nodes.length; i < l; i++) {
|
||||||
var node = nodes[i];
|
var node = nodes[i];
|
||||||
var d = parseInt(node.Duration);
|
var d = parseInt(node.duration);
|
||||||
if (!isNaN(d)) {
|
if (!isNaN(d)) {
|
||||||
duration += d;
|
duration += d;
|
||||||
}
|
}
|
||||||
@ -184,9 +184,9 @@ GanttSchedule.prototype = {
|
|||||||
var t = ans[i];
|
var t = ans[i];
|
||||||
//2)获取父任务下子任务的Duration之和
|
//2)获取父任务下子任务的Duration之和
|
||||||
var duration = getDuration(t);
|
var duration = getDuration(t);
|
||||||
if (t.Duration != duration) {
|
if (t.duration != duration) {
|
||||||
t.Duration = duration;
|
t.duration = duration;
|
||||||
gantt.setTaskModified(t, "Duration");
|
gantt.setTaskModified(t, "duration");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -40,7 +40,8 @@ if (process.env.NODE_ENV == 'development') {
|
|||||||
// axios.defaults.baseURL = 'http://124.71.178.44:100/' // 河南
|
// axios.defaults.baseURL = 'http://124.71.178.44:100/' // 河南
|
||||||
// tag: 本地
|
// tag: 本地
|
||||||
// axios.defaults.baseURL = 'http://192.168.34.174:6023/' // 老大本地
|
// axios.defaults.baseURL = 'http://192.168.34.174:6023/' // 老大本地
|
||||||
axios.defaults.baseURL = 'http://192.168.34.116:6023/' // 邱平毅本地
|
// axios.defaults.baseURL = 'http://192.168.34.116:6023/' // 邱平毅本地
|
||||||
|
axios.defaults.baseURL = 'http://192.168.34.117:6023/' // 杨杰本地
|
||||||
// axios.defaults.baseURL = 'http://ue6a4s.natappfree.cc' // 邱平毅vpn本地
|
// axios.defaults.baseURL = 'http://ue6a4s.natappfree.cc' // 邱平毅vpn本地
|
||||||
// axios.defaults.baseURL = 'http://139.9.66.234:6324/' // 河南春笋
|
// axios.defaults.baseURL = 'http://139.9.66.234:6324/' // 河南春笋
|
||||||
// axios.defaults.baseURL ='http://124.71.67.160:8088/' //中建四局线上
|
// axios.defaults.baseURL ='http://124.71.67.160:8088/' //中建四局线上
|
||||||
|
|||||||
@ -44,9 +44,9 @@ export default new Vuex.Store({
|
|||||||
PAGESIZRS: [10, 20, 30, 50],
|
PAGESIZRS: [10, 20, 30, 50],
|
||||||
// UPLOADURL:'http://10.0.1.43:6023/upload/image',//测试
|
// UPLOADURL:'http://10.0.1.43:6023/upload/image',//测试
|
||||||
// FILEURL:'http://10.0.1.43:6023/image/',//测试
|
// FILEURL:'http://10.0.1.43:6023/image/',//测试
|
||||||
// BASEURL: baseUrl ? baseUrl : window.location.protocol + '//' + window.location.host + '/', //
|
BASEURL: baseUrl ? baseUrl : window.location.protocol + '//' + window.location.host + '/', //
|
||||||
// UPLOADURL: window.location.protocol + '//' + window.location.host + '/upload/image', //
|
UPLOADURL: window.location.protocol + '//' + window.location.host + '/upload/image', //
|
||||||
// FILEURL: window.location.protocol + '//' + window.location.host + '/image/', //测试 // tag: 本地测试接口
|
FILEURL: window.location.protocol + '//' + window.location.host + '/image/', //测试 // tag: 本地测试接口
|
||||||
/* 2022-05-16 */
|
/* 2022-05-16 */
|
||||||
// tag: 部署河南项目时,需要打开这两行代码
|
// tag: 部署河南项目时,需要打开这两行代码
|
||||||
// UPLOADURL: 'http://139.9.66.234:6324/upload/image',
|
// UPLOADURL: 'http://139.9.66.234:6324/upload/image',
|
||||||
@ -56,9 +56,9 @@ export default new Vuex.Store({
|
|||||||
// UPLOADURL: 'http://182.90.224.237:7000/upload/image',
|
// UPLOADURL: 'http://182.90.224.237:7000/upload/image',
|
||||||
// FILEURL: 'http://182.90.224.237:7000/image/',
|
// FILEURL: 'http://182.90.224.237:7000/image/',
|
||||||
// 邱平毅的
|
// 邱平毅的
|
||||||
BASEURL:'http://192.168.34.116:6023/',
|
// BASEURL:'http://192.168.34.116:6023/',
|
||||||
UPLOADURL: 'http://192.168.34.116:6023/upload/image',
|
// UPLOADURL: 'http://192.168.34.116:6023/upload/image',
|
||||||
FILEURL: 'http://192.168.34.116:6023/image/',
|
// FILEURL: 'http://192.168.34.116:6023/image/',
|
||||||
// UPLOADURL: 'http://124.71.67.160:8088/upload/image',
|
// UPLOADURL: 'http://124.71.67.160:8088/upload/image',
|
||||||
// FILEURL: 'http://124.71.67.160:8088/image/',
|
// FILEURL: 'http://124.71.67.160:8088/image/',
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user