提交 ff266bf6 编写于 作者: NoSubject's avatar NoSubject

草稿模式下,启动流程错误修复

上级 f32f0018
......@@ -1224,15 +1224,31 @@ MWF.xScript.CMSEnvironment = function(ev){
"identity": identity,
"latest": latest,
"onStarted": function(data, title, processName){
var currentTask = [];
data.each(function(work){
if (work.currentTaskIndex != -1) currentTask.push(work.taskList[work.currentTaskIndex].work);
}.bind(this));
if (currentTask.length==1){
var options = {"workId": currentTask[0], "appId": currentTask[0]};
if (data.work){
var work = data.work;
var options = {"draft": work, "appId": "process.Work"+(new o2.widget.UUID).toString(), "desktopReload": false};
layout.desktop.openApplication(null, "process.Work", options);
}else{}
}else{
var currentTask = [];
data.each(function(work){
if (work.currentTaskIndex != -1) currentTask.push(work.taskList[work.currentTaskIndex].work);
}.bind(this));
if (currentTask.length==1){
var options = {"workId": currentTask[0], "appId": currentTask[0]};
layout.desktop.openApplication(null, "process.Work", options);
}else{}
}
// var currentTask = [];
// data.each(function(work){
// if (work.currentTaskIndex != -1) currentTask.push(work.taskList[work.currentTaskIndex].work);
// }.bind(this));
//
// if (currentTask.length==1){
// var options = {"workId": currentTask[0], "appId": currentTask[0]};
// layout.desktop.openApplication(null, "process.Work", options);
// }else{}
if (callback) callback(data);
}.bind(this)
......
......@@ -1350,15 +1350,21 @@ debugger;
"identity": identity,
"latest": latest,
"onStarted": function(data, title, processName){
var currentTask = [];
data.each(function(work){
if (work.currentTaskIndex != -1) currentTask.push(work.taskList[work.currentTaskIndex].work);
}.bind(this));
if (currentTask.length==1){
var options = {"workId": currentTask[0], "appId": currentTask[0]};
if (data.work){
var work = data.work;
var options = {"draft": work, "appId": "process.Work"+(new o2.widget.UUID).toString(), "desktopReload": false};
layout.desktop.openApplication(null, "process.Work", options);
}else{}
}else{
var currentTask = [];
data.each(function(work){
if (work.currentTaskIndex != -1) currentTask.push(work.taskList[work.currentTaskIndex].work);
}.bind(this));
if (currentTask.length==1){
var options = {"workId": currentTask[0], "appId": currentTask[0]};
layout.desktop.openApplication(null, "process.Work", options);
}else{}
}
if (callback) callback(data);
}.bind(this)
......
......@@ -1178,15 +1178,31 @@ MWF.xScript.PageEnvironment = function (ev) {
"identity": identity,
"latest": latest,
"onStarted": function (data, title, processName) {
var currentTask = [];
data.each(function (work) {
if (work.currentTaskIndex != -1) currentTask.push(work.taskList[work.currentTaskIndex].work);
}.bind(this));
if (currentTask.length == 1) {
var options = { "workId": currentTask[0], "appId": currentTask[0] };
if (data.work){
var work = data.work;
var options = {"draft": work, "appId": "process.Work"+(new o2.widget.UUID).toString(), "desktopReload": false};
layout.desktop.openApplication(null, "process.Work", options);
} else { }
}else{
var currentTask = [];
data.each(function(work){
if (work.currentTaskIndex != -1) currentTask.push(work.taskList[work.currentTaskIndex].work);
}.bind(this));
if (currentTask.length==1){
var options = {"workId": currentTask[0], "appId": currentTask[0]};
layout.desktop.openApplication(null, "process.Work", options);
}else{}
}
// var currentTask = [];
// data.each(function (work) {
// if (work.currentTaskIndex != -1) currentTask.push(work.taskList[work.currentTaskIndex].work);
// }.bind(this));
//
// if (currentTask.length == 1) {
// var options = { "workId": currentTask[0], "appId": currentTask[0] };
// layout.desktop.openApplication(null, "process.Work", options);
// } else { }
if (callback) callback(data);
}.bind(this)
......
......@@ -1066,15 +1066,31 @@ MWF.xScript.ViewEnvironment = function (ev) {
"identity": identity,
"latest": latest,
"onStarted": function (data, title, processName) {
var currentTask = [];
data.each(function (work) {
if (work.currentTaskIndex != -1) currentTask.push(work.taskList[work.currentTaskIndex].work);
}.bind(this));
if (currentTask.length == 1) {
var options = { "workId": currentTask[0], "appId": currentTask[0] };
if (data.work){
var work = data.work;
var options = {"draft": work, "appId": "process.Work"+(new o2.widget.UUID).toString(), "desktopReload": false};
layout.desktop.openApplication(null, "process.Work", options);
} else { }
}else{
var currentTask = [];
data.each(function(work){
if (work.currentTaskIndex != -1) currentTask.push(work.taskList[work.currentTaskIndex].work);
}.bind(this));
if (currentTask.length==1){
var options = {"workId": currentTask[0], "appId": currentTask[0]};
layout.desktop.openApplication(null, "process.Work", options);
}else{}
}
// var currentTask = [];
// data.each(function (work) {
// if (work.currentTaskIndex != -1) currentTask.push(work.taskList[work.currentTaskIndex].work);
// }.bind(this));
//
// if (currentTask.length == 1) {
// var options = { "workId": currentTask[0], "appId": currentTask[0] };
// layout.desktop.openApplication(null, "process.Work", options);
// } else { }
if (callback) callback(data);
}.bind(this)
......
......@@ -1063,8 +1063,6 @@ MWF.xApplication.process.TaskCenter.Process = new Class({
afterStartProcess: function(data, title, processName){
this.recordProcessData();
//if (data[0].startMode==="draft"){
debugger;
if (data.work){
this.startProcessDraft(data, title, processName);
}else{
......
......@@ -1235,11 +1235,11 @@ MWF.xApplication.process.Xform.Form = MWF.APPForm = new Class({
}
},
saveFormData: function (callback, failure, history, data, issubmit) {
saveFormData: function (callback, failure, history, data, issubmit, isstart) {
if (this.businessData.work.startTime) {
this.saveFormDataInstance(callback, failure, history, data, issubmit);
} else {
this.saveFormDataDraft(callback, failure, history, data, issubmit);
this.saveFormDataDraft(callback, failure, history, data, issubmit, isstart);
}
},
saveFormDataInstance: function (callback, failure, history, data, issubmit) {
......@@ -1258,7 +1258,7 @@ MWF.xApplication.process.Xform.Form = MWF.APPForm = new Class({
this.businessData.originalData = null;
this.businessData.originalData = Object.clone(data);
},
saveFormDataDraft: function (callback, failure, history, data, issubmit) {
saveFormDataDraft: function (callback, failure, history, data, issubmit, isstart) {
if (this.officeList) {
this.officeList.each(function (module) {
module.save(history);
......@@ -1274,17 +1274,25 @@ MWF.xApplication.process.Xform.Form = MWF.APPForm = new Class({
this.workAction.getDraft(json.data.id, function (json) {
this.businessData.work = json.data.work;
this.app.options.draftId = json.data.work.id;
this.app.options.desktopReload = true;
this.app.appId = "process.Work" + json.data.work.id;
if (layout.desktop.apps) {
delete layout.desktop.apps[this.app.options.appId];
} else {
layout.desktop.apps = {};
if (layout.app && layout.app.inBrowser){
if (layout.app) layout.app.$openWithSelf = true;
if (callback) callback();
if (!isstart) layout.desktop.openApplication(null, "process.Work", {"draftId": this.app.options.draftId});
}else{
this.app.options.desktopReload = true;
this.app.appId = "process.Work" + json.data.work.id;
if (layout.desktop.apps) {
delete layout.desktop.apps[this.app.options.appId];
} else {
layout.desktop.apps = {};
}
layout.desktop.apps[this.app.appId] = this.app;
if (callback) callback();
}
layout.desktop.apps[this.app.appId] = this.app;
if (callback) callback();
}.bind(this));
}.bind(this), failure);
this.businessData.originalData = null;
......@@ -1840,20 +1848,25 @@ MWF.xApplication.process.Xform.Form = MWF.APPForm = new Class({
this.saveFormData(function () {
this.workAction.startDraft(this.businessData.work.id, function (json) {
this.app.options.workId = json.data[0].work;
if (layout.mobile) {
if (layout.mobile || !layout.desktop.message) {
if (layout.notice) {
layout.notice(MWF.xApplication.process.Xform.LP.processStartedMessage + "“[" + json.data[0].processName + "]" + (this.businessData.data.title || this.businessData.data.subject));
}
} else {
var msg = {
"subject": MWF.xApplication.process.Xform.LP.processStarted,
"content": "<div>" + MWF.xApplication.process.Xform.LP.processStartedMessage + "“[" + json.data[0].processName + "]" + (this.businessData.data.title || this.businessData.data.subject) + "”</div>"
};
var tooltip = layout.desktop.message.addTooltip(msg);
var item = layout.desktop.message.addMessage(msg);
if (layout.desktop.message){
var msg = {
"subject": MWF.xApplication.process.Xform.LP.processStarted,
"content": "<div>" + MWF.xApplication.process.Xform.LP.processStartedMessage + "“[" + json.data[0].processName + "]" + (this.businessData.data.title || this.businessData.data.subject) + "”</div>"
};
var tooltip = layout.desktop.message.addTooltip(msg);
var item = layout.desktop.message.addMessage(msg);
}
}
if (layout.app && layout.app.inBrowser){
if (layout.app) layout.app.$openWithSelf = true;
layout.desktop.openApplication(null, "process.Work", {"workId": this.app.options.workId});
}
this.app.reload();
//this.app.notice(MWF.xApplication.process.Xform.LP.dataSaved, "success");
......@@ -1892,7 +1905,7 @@ MWF.xApplication.process.Xform.Form = MWF.APPForm = new Class({
// }.bind(this), "failure": function(){}}, json.data[0].work);
}.bind(this));
}.bind(this), null, false, null, false)
}.bind(this), null, false, null, false, true)
},
getCurrentTaskData: function (data) {
if ((data.currentTaskIndex || data.currentTaskIndex === 0) && data.currentTaskIndex != -1) {
......
......@@ -232,6 +232,10 @@ o2.xDesktop.requireApp = function (module, clazz, callback, async) {
} else if (options.workCompletedId) {
url += "?workcompletedid=" + options.workCompletedId;
//window.location = o2.filterUrl("../x_desktop/workmobilewithaction.html?workcompletedid=" + options.workCompletedId + ((layout.debugger) ? "&debugger" : "") + "&redirectlink=" + redirectlink);
} else if (options.draftId){
url += "?draftId=" + options.draftId;
} else if (options.draft) {
url = "../x_desktop/app.html?" + par;
}
var job = (options.jobid || options.jobId || options.job);
if (job) url += ((url.indexOf("?")!=-1) ? "&" : "?") + "jobid="+job;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册