|
|
@@ -26,7 +26,8 @@ Page({
|
|
|
placeholder: "",
|
|
|
valueName: "remarks",
|
|
|
checking: "base",
|
|
|
- required: false
|
|
|
+ required: false,
|
|
|
+ slot: "synchronization"
|
|
|
}, {
|
|
|
label: "执行人",
|
|
|
error: false,
|
|
|
@@ -88,17 +89,22 @@ Page({
|
|
|
checking: "base",
|
|
|
required: true
|
|
|
}],
|
|
|
- "content": {
|
|
|
- "sys_taskid": 0
|
|
|
- },
|
|
|
+ synchronization: null, //同步任务内容参数
|
|
|
disabled: true
|
|
|
},
|
|
|
onLoad(options) {
|
|
|
+ let content = {
|
|
|
+ "sys_taskid": 0,
|
|
|
+ "ownertable": "sys_task",
|
|
|
+ "ownerid": options.ownerid || 0,
|
|
|
+ };
|
|
|
+ // 详情中进入
|
|
|
if (options.data) {
|
|
|
wx.setNavigationBarTitle({
|
|
|
- title: '编辑任务',
|
|
|
+ title: '编辑任务',
|
|
|
})
|
|
|
let data = JSON.parse(options.data);
|
|
|
+ console.log(data)
|
|
|
if (options.group) {
|
|
|
let group = JSON.parse(options.group)
|
|
|
let leader = group.findIndex(v => v.userid == data.leader[0].userid);
|
|
|
@@ -133,10 +139,13 @@ Page({
|
|
|
checking: "base",
|
|
|
required: false
|
|
|
}]);
|
|
|
+ content = {
|
|
|
+ "sys_taskid": data.sys_taskid,
|
|
|
+ "ownertable": data.ownertable || "sys_task",
|
|
|
+ "ownerid": data.ownerid || 0,
|
|
|
+ }
|
|
|
this.setData({
|
|
|
- "content.sys_taskid": data.sys_taskid,
|
|
|
- "content.ownertable": data.ownertable || "sys_task",
|
|
|
- "content.ownerid": data.ownerid || 0,
|
|
|
+ content,
|
|
|
isReset: false,
|
|
|
disabled: false,
|
|
|
form: form.map(v => {
|
|
|
@@ -144,10 +153,55 @@ Page({
|
|
|
return v
|
|
|
})
|
|
|
})
|
|
|
+ } else if (options.ownertable) {
|
|
|
+ content = {
|
|
|
+ "ownertable": options.ownertable || "sys_task",
|
|
|
+ "ownerid": options.ownerid || 0
|
|
|
+ }
|
|
|
+ this.setData({
|
|
|
+ synchronization: content
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ //可修改情况
|
|
|
+ if (["sys_task", "sat_orderclue", "sa_customers", "sa_project"].includes(content.ownertable)) {
|
|
|
+ let form = this.data.form,
|
|
|
+ synchronization = content.ownertable != 'sys_task' ? {
|
|
|
+ "ownertable": content.ownertable,
|
|
|
+ "ownerid": content.ownerid,
|
|
|
+ } : null;
|
|
|
+ form.splice(1, 0, {
|
|
|
+ label: "关联应用",
|
|
|
+ error: false,
|
|
|
+ errMsg: "",
|
|
|
+ hint: "",
|
|
|
+ type: "radio",
|
|
|
+ value: content.ownertable,
|
|
|
+ radioList: [{
|
|
|
+ id: 'sa_customers',
|
|
|
+ name: '我的客户'
|
|
|
+ }, {
|
|
|
+ id: 'sa_project',
|
|
|
+ name: '项目商机'
|
|
|
+ }, {
|
|
|
+ id: 'sat_orderclue',
|
|
|
+ name: '销售线索'
|
|
|
+ }, {
|
|
|
+ id: 'sys_task',
|
|
|
+ name: '不关联'
|
|
|
+ }],
|
|
|
+ valueName: "ownertable", //绑定的字段名称
|
|
|
+ required: false, //必填
|
|
|
+ interrupt: true,
|
|
|
+ disabled: content.ownerid != 0
|
|
|
+ });
|
|
|
+ if (content.ownertable != 'sys_task') this.setSelectAppRoute(form, content.ownertable, content.ownerid != 0)
|
|
|
+ this.setData({
|
|
|
+ form
|
|
|
+ })
|
|
|
+ }
|
|
|
}
|
|
|
- if (options.ownertable) this.setData({
|
|
|
- "content.ownertable": options.ownertable || "sys_task",
|
|
|
- "content.ownerid": options.ownerid || 0
|
|
|
+ this.setData({
|
|
|
+ content
|
|
|
})
|
|
|
},
|
|
|
/* 打断处理form */
|
|
|
@@ -209,7 +263,6 @@ Page({
|
|
|
temporary.item.value = data.value;
|
|
|
form[temporary.index] = temporary.item;
|
|
|
wx.navigateBack()
|
|
|
- this.selectComponent("#Form").confirm();
|
|
|
break;
|
|
|
case '协助人':
|
|
|
index = form.findIndex(v => v.label == '执行人');
|
|
|
@@ -220,10 +273,125 @@ Page({
|
|
|
form[temporary.index] = temporary.item;
|
|
|
wx.navigateBack()
|
|
|
break;
|
|
|
+ case '关联应用':
|
|
|
+ this.setSelectAppRoute(form, data.value)
|
|
|
+ this.setData({
|
|
|
+ synchronization: null
|
|
|
+ })
|
|
|
+ break;
|
|
|
+ case '关联数据':
|
|
|
+ form[temporary.index].value = data.value;
|
|
|
+ wx.navigateBack()
|
|
|
+ this.setData({
|
|
|
+ synchronization: {
|
|
|
+ "ownertable": form[temporary.index - 1].value,
|
|
|
+ "ownerid": data.id[0]
|
|
|
+ }
|
|
|
+ })
|
|
|
+ break;
|
|
|
};
|
|
|
this.setData({
|
|
|
form
|
|
|
})
|
|
|
+ this.selectComponent("#Form").confirm();
|
|
|
+ },
|
|
|
+ startSynchronization() {
|
|
|
+ console.log("开始同步", this.data.synchronization)
|
|
|
+ wx.navigateTo({
|
|
|
+ url: '/packageA/work/synchronization?data=' + JSON.stringify(this.data.synchronization),
|
|
|
+ });
|
|
|
+ _Http.selectSync = (item, ownertable) => {
|
|
|
+ let form = this.data.form,
|
|
|
+ index = form.findIndex(v => v.label == '任务内容');
|
|
|
+ if (index != -1) {
|
|
|
+ if (ownertable == 'sat_orderclue') {
|
|
|
+ form[index].value = `跟进类型:${item.followupmode}\n跟进内容:${item.content}`;
|
|
|
+ } else {
|
|
|
+ form[index].value = `跟进类型:${item.type}\n跟进对象:${item.contacts ? item.contacts.join(","):""}\n${item.content}`;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.setData({
|
|
|
+ form
|
|
|
+ })
|
|
|
+ wx.navigateBack()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ setSelectAppRoute(form, ownertable, disabled = false) {
|
|
|
+ let owneridIndex = form.findIndex(v => v.valueName == 'ownerid');
|
|
|
+ if (ownertable == "sys_task") {
|
|
|
+ if (owneridIndex != -1) form.splice(owneridIndex, 1);
|
|
|
+ } else {
|
|
|
+ let data = {
|
|
|
+ label: "关联数据",
|
|
|
+ error: false,
|
|
|
+ errMsg: "",
|
|
|
+ type: "route",
|
|
|
+ url: "",
|
|
|
+ value: "",
|
|
|
+ query: "&radio=true",
|
|
|
+ interrupt: true,
|
|
|
+ valueName: "ownerid",
|
|
|
+ checking: "base",
|
|
|
+ required: true,
|
|
|
+ disabled
|
|
|
+ };
|
|
|
+ switch (ownertable) {
|
|
|
+ case "sa_project":
|
|
|
+ data.params = {
|
|
|
+ "id": 20221020143502,
|
|
|
+ "content": {
|
|
|
+ "nochace": true,
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "where": {
|
|
|
+ "condition": ""
|
|
|
+ },
|
|
|
+ "type": 1,
|
|
|
+ "deleted": 0
|
|
|
+ }
|
|
|
+ }
|
|
|
+ data.placeholder = "选择项目商机";
|
|
|
+ data.url = "/packageA/select/project/select";
|
|
|
+ break;
|
|
|
+ case "sa_customers":
|
|
|
+ data.params = {
|
|
|
+ "content": {
|
|
|
+ isExport: 0,
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "where": {
|
|
|
+ "condition": ""
|
|
|
+ },
|
|
|
+ "type": 1,
|
|
|
+ "deleted": 0,
|
|
|
+ "isend": 0
|
|
|
+ },
|
|
|
+ "id": 20221012164402,
|
|
|
+ }
|
|
|
+ data.placeholder = "选择我的客户";
|
|
|
+ data.url = "/packageA/select/setclient/select";
|
|
|
+ break;
|
|
|
+ case "sat_orderclue":
|
|
|
+ data.params = {
|
|
|
+ "content": {
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "where": {
|
|
|
+ "condition": ""
|
|
|
+ },
|
|
|
+ "type": 1
|
|
|
+ },
|
|
|
+ "id": 20221101094502,
|
|
|
+ }
|
|
|
+ data.placeholder = "选择销售线索";
|
|
|
+ data.url = "/packageA/select/clue/select";
|
|
|
+ break;
|
|
|
+ };
|
|
|
+ form.splice(2, owneridIndex == -1 ? 0 : 1, data);
|
|
|
+ }
|
|
|
+ this.setData({
|
|
|
+ form
|
|
|
+ })
|
|
|
},
|
|
|
submit() {
|
|
|
this.setData({
|
|
|
@@ -235,12 +403,12 @@ Page({
|
|
|
};
|
|
|
content.leaderuserid = content.principal[1][0];
|
|
|
delete(content.principal)
|
|
|
- console.log(content.member)
|
|
|
content.team = {
|
|
|
"userids": content.member.length ? content.member[1] : [],
|
|
|
"justuserids": 1
|
|
|
}
|
|
|
delete(content.member)
|
|
|
+ if (content.ownerid && typeof (content.ownerid) == 'object') content.ownerid = content.ownerid.length == 2 ? content.ownerid[1][0] : ""
|
|
|
_Http.basic({
|
|
|
"id": 20221211112101,
|
|
|
content
|