index.js 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321
  1. const _Http = getApp().globalData.http;
  2. let downCount = null;
  3. Page({
  4. data: {
  5. selectShow: false,
  6. userMsg: {},
  7. pathList: [], //功能权限
  8. showPicker: false
  9. },
  10. onLoad(options) {
  11. this.queryUserMsg();
  12. //美大关闭团队管理
  13. let authlist = getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ['通用'], ['个人中心']);
  14. let pathList = [{
  15. name: "修改登录密码",
  16. icon: "icon-a-wodeguanyuyingyong",
  17. color: "var(--warning)",
  18. path: `/pages/tabbar/mine/changePassword/index`
  19. }]
  20. if (authlist[0].apps.some(v => v.name == "teamManagement")) {
  21. this.data.pathList.unshift({
  22. name: "团队管理",
  23. icon: "icon-a-wodetuanduiguanli",
  24. color: "var(--assist)",
  25. path: `/pages/teams/index`
  26. });
  27. this.setData({
  28. pathList: this.data.pathList
  29. })
  30. }
  31. },
  32. /* 选择代理人 */
  33. onSelectUset({
  34. detail
  35. }) {
  36. console.log(detail)
  37. let that = this;
  38. wx.showModal({
  39. title: '提示',
  40. content: `是否确定任命“${detail.value.name}”为代理人`,
  41. complete: ({
  42. confirm
  43. }) => {
  44. if (confirm) _Http.basic({
  45. "classname": "webmanage.sale.agents.agents",
  46. "method": "changeAgentModel",
  47. "content": {
  48. "sa_agent_hrid": detail.value.sa_agent_hrid,
  49. "authmodel": 3
  50. }
  51. }).then(res => {
  52. console.log("修改跟进模式", res)
  53. wx.showToast({
  54. title: res.msg == '成功' ? '修改成功' : res.msg,
  55. icon: "none"
  56. });
  57. if (res.msg == '成功') that.setData({
  58. "userMsg.agenthr.authmodel": 3,
  59. modelList: that.data.modelList.map(v => {
  60. v.disabled = v.value == 3
  61. return v
  62. }),
  63. showPicker: false,
  64. sa_agent_hrid: detail.value.sa_agent_hrid
  65. })
  66. })
  67. }
  68. })
  69. },
  70. closePicker() {
  71. this.setData({
  72. showPicker: false
  73. })
  74. },
  75. openPicker() {
  76. this.setData({
  77. showPicker: true
  78. })
  79. },
  80. /* 选择模式 */
  81. onSelect({
  82. detail
  83. }) {
  84. this.onCancel();
  85. let that = this;
  86. if (detail.value == 3) {
  87. this.setData({
  88. showPicker: true,
  89. selectShow: false
  90. })
  91. } else {
  92. wx.showModal({
  93. title: '提示',
  94. content: `将模式改为“${detail.name}”后${detail.subname}`,
  95. complete: ({
  96. confirm
  97. }) => {
  98. if (confirm) _Http.basic({
  99. "classname": "webmanage.sale.agents.agents",
  100. "method": "changeAgentModel",
  101. "content": {
  102. "sa_agent_hrid": 0,
  103. "authmodel": detail.value
  104. }
  105. }).then(res => {
  106. console.log("修改跟进模式", res)
  107. wx.showToast({
  108. title: res.msg == '成功' ? '修改成功' : res.msg,
  109. icon: "none"
  110. });
  111. if (res.msg == '成功') that.setData({
  112. "userMsg.agenthr.authmodel": detail.value,
  113. modelList: that.data.modelList.map(v => {
  114. v.disabled = detail.value == v.value
  115. return v
  116. })
  117. })
  118. })
  119. }
  120. })
  121. }
  122. },
  123. /* 开始选择模式 */
  124. startSelect() {
  125. this.setData({
  126. selectShow: true
  127. })
  128. },
  129. /* 取消选择模式 */
  130. onCancel() {
  131. this.setData({
  132. selectShow: false
  133. })
  134. },
  135. /* 查询用户信息 */
  136. queryUserMsg() {
  137. _Http.basic({
  138. "classname": "common.usercenter.usercenter",
  139. "method": "queryUserMsg",
  140. "content": {
  141. "nochace": true
  142. }
  143. }).then(res => {
  144. console.log("用户信息", res)
  145. if (res.msg != '成功') return wx.showToast({
  146. title: res.msg,
  147. icon: "none"
  148. });
  149. switch (res.data.usertype) {
  150. case 1:
  151. res.data.usertype = '企业职员'
  152. break;
  153. case 21:
  154. res.data.usertype = '负责人'
  155. break;
  156. case 22:
  157. res.data.usertype = '员工'
  158. break;
  159. default:
  160. res.data.usertype = ''
  161. break;
  162. }
  163. this.setData({
  164. userMsg: res.data
  165. })
  166. if (res.data.agenthr) {
  167. let modelList = [{
  168. name: '抢单模式',
  169. subname: '待跟进线索所有人可见',
  170. value: 1
  171. }, {
  172. name: '分配模式',
  173. subname: '由负责人将销售线索转移给其他成员',
  174. value: 2
  175. },
  176. {
  177. name: '代理模式',
  178. subname: '指定一位成员代理销售线索管理',
  179. value: 3
  180. }
  181. ];
  182. if (res.data.agenthr.authmodel != 0) modelList[res.data.agenthr.authmodel - 1].disabled = true;
  183. if (res.data.agenthr.authmodel == 3) _Http.basic({
  184. "classname": "webmanage.sale.agents.agents",
  185. "method": "getAgentModel",
  186. "content": {
  187. "sa_agentsid": res.data.agent.sa_agentsid
  188. }
  189. }, false).then(res => {
  190. console.log("获取经销商信息", res)
  191. this.setData({
  192. sa_agent_hrid: res.data.sa_agent_hrid.sa_agent_hrid
  193. })
  194. })
  195. this.setData({
  196. modelList
  197. })
  198. }
  199. })
  200. },
  201. onShow() {
  202. this.getTabBar().init();
  203. this.getUser();
  204. },
  205. /* 获取users */
  206. getUser() {
  207. _Http.basic({
  208. "classname": "sale.team.team",
  209. "method": "query_teamList",
  210. "content": {
  211. "pageNumber": 1,
  212. "pageSize": 999999,
  213. "where": {
  214. "condition": ""
  215. }
  216. }
  217. }).then(res => {
  218. console.log("用户列表", res)
  219. if (res.msg == '成功') {
  220. let columnsObj = {};
  221. res.data.forEach(v => {
  222. columnsObj[v.sa_agent_hrid] = v.name
  223. })
  224. this.setData({
  225. columns: res.data,
  226. columnsObj
  227. })
  228. }
  229. })
  230. },
  231. /* 退出登录 */
  232. outLogin() {
  233. clearTimeout(downCount);
  234. wx.showLoading({
  235. title: '正在退出...',
  236. })
  237. downCount = setTimeout(() => {
  238. _Http.logout().then(res => {
  239. wx.showToast({
  240. title: '退出成功'
  241. });
  242. let loginMsg = wx.getStorageSync("loginMsg");
  243. wx.clearStorageSync();
  244. wx.setStorageSync('loginMsg', loginMsg)
  245. setTimeout(() => {
  246. wx.reLaunch({
  247. url: '/pages/login/phone',
  248. })
  249. }, 300)
  250. })
  251. }, 300);
  252. },
  253. /* 去修改用户信息 */
  254. changeUserMsg() {
  255. let {
  256. name,
  257. phonenumber,
  258. attinfos,
  259. hr
  260. } = this.data.userMsg;
  261. wx.navigateTo({
  262. url: `./userMsg/index?attinfos=${JSON.stringify(attinfos)}&name=${name}&phonenumber=${phonenumber}&email=${hr.email}`
  263. })
  264. },
  265. /* 绑定或解绑微信 */
  266. bindingWechat(e) {
  267. if (this.data.userMsg.iswechatbinding) {
  268. let that = this;
  269. wx.showModal({
  270. title: "提示",
  271. content: "是否解除绑定",
  272. success: (res) => {
  273. if (res.confirm) that.handleBDWechat(0);
  274. }
  275. })
  276. } else {
  277. this.handleBDWechat(1);
  278. }
  279. },
  280. handleBDWechat(isbinging) {
  281. let that = this;
  282. wx.getUserProfile({
  283. desc: '用于完善用户资料',
  284. success: ({
  285. userInfo
  286. }) => {
  287. wx.login({
  288. success(res) {
  289. if (res.code) _Http.basic({
  290. "classname": "common.usercenter.usercenter",
  291. "method": "WechatBinding",
  292. content: {
  293. "wechat_code": res.code,
  294. isbinging, // 0解绑 1绑定
  295. wechatuserinfo: userInfo
  296. }
  297. }).then(s => {
  298. if (s.msg != '成功') return wx.showToast({
  299. title: s.data,
  300. icon: "none"
  301. });
  302. setTimeout(() => {
  303. wx.showToast({
  304. title: isbinging == 0 ? '解除成功' : '绑定成功',
  305. icon: "none"
  306. })
  307. }, 100);
  308. that.queryUserMsg();
  309. })
  310. }
  311. })
  312. },
  313. fail: () => {
  314. wx.showToast({
  315. title: '操作失败,未获得授权',
  316. icon: "none"
  317. })
  318. }
  319. })
  320. }
  321. })