浏览代码

客户跟进记录

zhaoxiaohai 2 年之前
父节点
当前提交
5aee55688d

+ 37 - 7
packageA/setclient/modules/trace/add/index.js

@@ -65,7 +65,7 @@ Page({
             "id": 20220930121601,
             content
         }).then(res => {
-            console.log(res)
+            console.log("新增或编辑", res)
             if (res.msg != '成功') return wx.showToast({
                 title: res.data,
                 icon: "none"
@@ -75,12 +75,42 @@ Page({
                 icon: "none"
             });
             setTimeout(() => {
-                wx.navigateBack();
-                return;
-                const detail = getCurrentPages().find(v => v.__route__ == 'packageA/setclient/modules/trace/detail/index');
-                if (detail) wx.navigateBack();
-                const list = getCurrentPages().find(v => v.__route__ == 'packageA/setclient/detail');
-                if (list) list.selectComponent("#Trace").getList(this.data.sys_datafollowupid)
+                getCurrentPages().forEach(v => {
+                    switch (v.__route__) {
+                        //详情界面更新数据
+                        case 'packageA/setclient/modules/trace/detail/index':
+                            v.getDetail();
+                            break;
+                            //列表页更新数据
+                        case 'packageA/setclient/detail':
+                            let page = v.selectComponent("#Trace"),
+                                list = page.data.list,
+                                index = list.findIndex(value => value.sys_datafollowupid == res.data.sys_datafollowupid);
+                            if (index != -1) {
+                                //列表中存在说明是编辑,返回上一级页面并更新数据
+                                list[index] = res.data;
+                                page.setData({
+                                    list
+                                });
+                                wx.navigateBack();
+                            } else {
+                                //列表中不存在说明是新增,返回上一级页面更新数据 并进入详情
+                                list.push(res.data);
+                                page.setData({
+                                    list
+                                });
+                                wx.navigateBack();
+                                wx.navigateTo({
+                                    url: `/packageA/setclient/modules/trace/detail/index?data=` + JSON.stringify({
+                                        "sys_datafollowupid": res.data.sys_datafollowupid,
+                                        "ownertable": this.data.ownertable,
+                                        "ownerid": this.data.ownerid
+                                    }),
+                                })
+                            }
+                            break;
+                    }
+                });
             }, 500)
         })
     },

+ 23 - 6
packageA/setclient/modules/trace/detail/index.js

@@ -1,7 +1,9 @@
+const _Http = getApp().globalData.http;
 Page({
     data: {
         ownertable: null,
         ownerid: null,
+        sys_datafollowupid: null,
         detail: {},
         tabbarList: [{
             icon: "icon-bianji",
@@ -12,15 +14,30 @@ Page({
         }]
     },
     onLoad(options) {
-        this.setData({
-            ownertable: options.ownertable,
-            ownerid: options.ownerid,
-            detail: {
-                ...wx.getStorageSync('temporary')
+        if (options.data) {
+            this.setData({
+                ...JSON.parse(options.data)
+            })
+            this.getDetail();
+        }
+    },
+    getDetail() {
+        _Http.basic({
+            "id": 20221026085601,
+            "content": {
+                "sys_datafollowupid": this.data.sys_datafollowupid
             }
+        }).then(res => {
+            if (res.msg != '成功') return wx.showToast({
+                title: res.data,
+                icon: "none"
+            })
+            this.setData({
+                detail: res.data
+            })
         })
-        wx.removeStorage("temporary");
     },
+    /* tab 切换回调 */
     tabbarOnClick({
         detail
     }) {

+ 16 - 6
packageA/setclient/modules/trace/list/delete.js

@@ -27,13 +27,23 @@ Page({
                 title: res.data,
                 icon: "none"
             });
+            getCurrentPages().forEach(v => {
+                switch (v.__route__) {
+                    //如果页面历史有详情,退出详情
+                    case 'packageA/setclient/modules/trace/detail/index':
+                        wx.navigateBack();
+                        break;
+                        //如果页面历史有列表页 刷新列表
+                    case 'packageA/setclient/detail':
+                        let page = v.selectComponent("#Trace")
+                        page.setData({
+                            list: page.data.list.filter(s => s.sys_datafollowupid != this.data.sys_datafollowupid)
+                        })
+                        page.changeTotal()
+                        break;
+                }
+            });
             wx.navigateBack();
-            //如果页面历史有详情,退出详情
-            const detail = getCurrentPages().find(v => v.__route__ == 'packageA/setclient/modules/trace/detail/index');
-            if (detail) wx.navigateBack();
-            //如果页面历史有列表页 刷新列表
-            const list = getCurrentPages().find(v => v.__route__ == 'packageA/setclient/detail');
-            if (list) list.selectComponent("#Trace").setDelete(this.data.sys_datafollowupid)
         })
     }
 })

+ 5 - 2
packageA/setclient/modules/trace/list/index.js

@@ -18,9 +18,12 @@ Component({
             const {
                 item
             } = e.currentTarget.dataset;
-            wx.setStorageSync('temporary', item)
             wx.navigateTo({
-                url: `/packageA/setclient/modules/trace/detail/index?ownertable=${this.data.ownertable}&ownerid=${this.data.ownerid}`,
+                url: `/packageA/setclient/modules/trace/detail/index?data=` + JSON.stringify({
+                    "sys_datafollowupid": item.sys_datafollowupid,
+                    "ownertable": this.data.ownertable,
+                    "ownerid": this.data.ownerid
+                }),
             })
         },
         editItem(e) {