remoteServiceAdd.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423
  1. var util = require('../../../utils/util.js')
  2. const app = getApp();
  3. Page({
  4. data: {
  5. allDisabled:true,//有客户下拉时临时用来控制其他下拉不显示
  6. c_txt_Show:false,
  7. customerShow:false,
  8. customerNameList: [
  9. // {id: 11, name: "海文牧场"}, {id: 22, name: "成宏牧场"}, {id: 32, name: "瑞福牧业"}
  10. ],
  11. customerIndex:'',
  12. customerId:'',
  13. receiverNameList: [
  14. // {id: 56, name: "苗舒怡"},{id: 57, name: "颛孙洋洋"},{id: 58, name: "李涛"}
  15. ],
  16. receiverIndex:'',
  17. receiverId:'',
  18. visitNameList: [
  19. // {id: 222, name: "拜访"}, {id: 223, name: "远程服务"}, {id: 224, name: "现场服务"}
  20. ],
  21. visitIndex:'',
  22. visitId:'',
  23. telvisitNameList: [
  24. // {id: 222, name: "拜访"}, {id: 223, name: "远程服务"}, {id: 224, name: "现场服务"}
  25. ],
  26. telvisitIndex:'',
  27. telvisitId:'',
  28. groupId: '',
  29. groupName: '',
  30. receiverShow:false,
  31. r_txt_Show:false,
  32. receiverChoose:'false',
  33. telephone:"",
  34. rules: {
  35. customerName: [{ required: true, message: '客户必填', trigger: 'blur' }],
  36. rdate: [{ required: true, message: '拜访日期必填', trigger: 'blur' }],
  37. // visiterId: [{ required: true, message: '必填', trigger: 'blur' }],
  38. receiverName: [{ required: true, message: '客户接待人必填', trigger: 'blur' }],
  39. content: [{ required: true, message: '情况说明必填', trigger: 'blur' }],
  40. },
  41. // 新增/编辑
  42. create: {
  43. dialogStatus: '',
  44. temp: {
  45. customerId: '',
  46. customerName: '',
  47. groupId: '',
  48. groupName: '',
  49. rdate: util.getToday(),
  50. employeeId: '',
  51. employeeName: '',
  52. receiverId: '',
  53. receiverId2: '@insertContactsNew.LastInsertId',
  54. receiverName: '',
  55. remark: '',
  56. content: '',
  57. visitId: '',
  58. visitName: '',
  59. telvisitId: '',
  60. telvisitName: '',
  61. created: util.getToday(),
  62. receiverChoose: 'true'
  63. },
  64. }
  65. },
  66. onLoad: function (options) {
  67. // 表单初始化
  68. wx.lin.initValidateForm(this)
  69. console.log(app.globalData.g_lgName)
  70. this.setData({
  71. ['create.temp.employeeId']: app.globalData.g_lgNameId,
  72. ['create.temp.employeeName']: app.globalData.g_lgName
  73. })
  74. //客户下拉
  75. //util.getDataByName({ name:'getCustomerSelect',parammaps: {} }, this.getPickerList1)
  76. },
  77. getPickerList1: function (res) {
  78. console.log('客户下拉数据======>', res.data.list)
  79. var customerNameList = res.data.list
  80. this.setData({
  81. customerShow:true,
  82. allDisabled:false,
  83. customerNameList: customerNameList
  84. })
  85. if(customerNameList !== null){
  86. this.setData({c_txt_Show:false})
  87. } else {
  88. this.setData({c_txt_Show:true})
  89. }
  90. },
  91. // getPickerList2: function (res) {
  92. // console.log('接待人下拉数据======>', res.data.list)
  93. // this.setData({
  94. // receiverNameList: res.data.list
  95. // })
  96. // },
  97. getPickerList3: function (res) {
  98. console.log('拜访下拉数据======>', res.data.list)
  99. if(res.data.list !== null) {
  100. this.setData({
  101. visitNameList: res.data.list
  102. })
  103. } else {
  104. this.setData({
  105. visitNameList: [{id: "", name: "无数据"}]
  106. })
  107. }
  108. },
  109. getPickerList4: function (res) {
  110. console.log('回访下拉数据======>', res.data.list)
  111. this.setData({
  112. telvisitNameList: res.data.list
  113. })
  114. },
  115. //客户文本框输入
  116. change_customer_input:function(e){
  117. var value =e.detail.value
  118. console.log(value)
  119. //客户列表框
  120. util.getDataByName({ name:'getCustomerNameFuzzy',parammaps: {"inputvalue":value} }, this.getPickerList1)
  121. },
  122. //客户列表点击
  123. on_cust_tap: function (e) {
  124. console.log("客户列表点击")
  125. var newId = e.currentTarget.dataset.id;
  126. var name = e.currentTarget.dataset.name;
  127. var that = this
  128. this.setData({
  129. customerShow:false,
  130. allDisabled:true,
  131. customerId: newId,
  132. ['create.temp.customerName']: name,
  133. ['create.temp.customerId']: newId,
  134. })
  135. //获取集团
  136. util.getDataByName({name: 'getgroupNameById',returntype: 'Map',parammaps: { id: newId }
  137. }, function(e){
  138. var groupId = e.data.list[0].groupId
  139. var groupName = e.data.list[0].groupName
  140. that.setData({
  141. ['create.temp.groupName']: groupName,
  142. ['create.temp.groupId']: groupId,
  143. groupName: groupName,
  144. groupId: groupId
  145. })
  146. })
  147. //获取接待人
  148. //util.getDataByName({name: 'getContacts',returntype: 'Map',parammaps: { customerId: newId }}, this.getPickerList2)
  149. //获取拜访记录
  150. util.getDataByName({name: 'getVisitByCustomerId',returntype: 'Map',parammaps: { customerId: newId }}, this.getPickerList3)
  151. //获取回访记录
  152. util.getDataByName({name: 'getTelvisitByCustomerId',returntype: 'Map',parammaps: { customerId: newId }}, this.getPickerList4)
  153. },
  154. //下拉框:客户
  155. // change_customer:function(e){
  156. // var that = this
  157. // console.log('customer的选项', e.detail.value)
  158. // var newId = this.data.customerNameList[e.detail.value]['id']
  159. // this.setData({
  160. // customerIndex: e.detail.value,
  161. // customerId: newId,
  162. // ['create.temp.customerId']: newId,
  163. // })
  164. // //获取集团
  165. // util.getDataByName({name: 'getgroupNameById',returntype: 'Map',parammaps: { id: newId }
  166. // }, function(e){
  167. // var groupId = e.data.list[0].groupId
  168. // var groupName = e.data.list[0].groupName
  169. // that.setData({
  170. // ['create.temp.groupName']: groupName,
  171. // ['create.temp.groupId']: groupId,
  172. // groupName: groupName,
  173. // groupId: groupId
  174. // })
  175. // })
  176. // //获取接待人
  177. // util.getDataByName({name: 'getContacts',returntype: 'Map',parammaps: { customerId: newId }}, this.getPickerList2)
  178. // //获取拜访记录
  179. // util.getDataByName({name: 'getVisitByCustomerId',returntype: 'Map',parammaps: { customerId: newId }}, this.getPickerList3)
  180. // //获取回访记录
  181. // util.getDataByName({name: 'getTelvisitByCustomerId',returntype: 'Map',parammaps: { customerId: newId }}, this.getPickerList4)
  182. // },
  183. //日期选择触发
  184. on_rdate_tap:function(e){
  185. this.setData({
  186. ['create.temp.rdate']:e.detail.value
  187. })
  188. },
  189. //下拉框:接待人
  190. change_receiver:function(e){
  191. console.log('receiver的选项', e.detail.value)
  192. var newId = this.data.receiverNameList[e.detail.value]['id']
  193. this.setData({
  194. receiverIndex: e.detail.value,
  195. receiverId: newId,
  196. ['create.temp.receiverId']: newId,
  197. })
  198. },
  199. //下拉框:拜访记录
  200. change_visit:function(e){
  201. console.log('change_visit的选项', e.detail.value)
  202. var newId = this.data.visitNameList[e.detail.value]['id']
  203. this.setData({
  204. visitIndex: e.detail.value,
  205. visitId: newId,
  206. ['create.temp.visitId']: newId,
  207. })
  208. },
  209. //下拉框:回访记录
  210. change_telvisit:function(e){
  211. console.log('cchange_telvisit的选项', e.detail.value)
  212. var newId = this.data.telvisitNameList[e.detail.value]['id']
  213. this.setData({
  214. telvisitIndex: e.detail.value,
  215. telvisitId: newId,
  216. ['create.temp.telvisitId']: newId,
  217. })
  218. },
  219. //接待人文本框输入
  220. change_receiver_input:function(e){
  221. var value =e.detail.value
  222. var customerId = this.data.customerId
  223. console.log(value)
  224. //接待人列表框
  225. util.getDataByName({ name:'getContactsByNameApp',parammaps: {"customerId":customerId,"contactName":value,} }, this.getPickerList2)
  226. },
  227. getPickerList2: function (res) {
  228. console.log('接待人下拉数据======>', res.data.list)
  229. var receiverNameList = res.data.list
  230. this.setData({
  231. receiverShow:true,
  232. allDisabled:false,
  233. receiverNameList: receiverNameList
  234. })
  235. if(receiverNameList !== null){
  236. this.setData({r_txt_Show:false})
  237. } else {
  238. this.setData({r_txt_Show:true})
  239. }
  240. },
  241. //接待人列表点击
  242. on_rece_tap: function (e) {
  243. console.log("接待人列表点击")
  244. var newId = e.currentTarget.dataset.id;
  245. var name = e.currentTarget.dataset.name;
  246. var that = this
  247. this.setData({
  248. receiverShow:false,
  249. allDisabled:true,
  250. ['create.temp.receiverName']: name,
  251. ['create.temp.receiverId']: newId,
  252. receiverChoose: 'true'
  253. })
  254. //获取电话
  255. util.getDataByName({name: 'getTelById',returntype: 'Map',parammaps: { id: newId }
  256. }, function(e){
  257. console.log(e)
  258. var telephone = e.data.list[0].telephone
  259. that.setData({
  260. ['create.temp.receiverTel']: telephone,
  261. telephone: telephone
  262. })
  263. })
  264. },
  265. //接待人完成
  266. confirm_receiver_input:function(e){
  267. console.log("接收人直接输入")
  268. this.setData({
  269. receiverShow:false,
  270. allDisabled:true,
  271. receiverChoose: 'false'
  272. })
  273. },
  274. //保存
  275. submit:function(e){
  276. var detail_value = e.detail.values
  277. var detail_errors = e.detail.errors
  278. var detail_errors = e.detail.errors
  279. console.log("detail_value",detail_value)
  280. console.log("create.temp",this.data.create.temp)
  281. const submit_data = Object.assign({}, this.data.create.temp, detail_value)
  282. console.log("保存发送:",submit_data)
  283. submit_data.createrId = app.globalData.g_createrId
  284. submit_data.receiverChoose = this.data.receiverChoose
  285. var send_data = {
  286. "common": { "returnmap": "0" },
  287. "data": [
  288. {
  289. "name": "insertContactsNewApp", "type": "e",
  290. "parammaps": {
  291. "customerId": submit_data.customerId,
  292. "contactName": submit_data.receiverName,
  293. "telephone": submit_data.receiverTel,
  294. "address": "",
  295. "remark": submit_data.remark,
  296. "receiverChoose": this.data.receiverChoose
  297. }
  298. },
  299. {
  300. "name": "insertRemoteApp", "type": "e",
  301. "parammaps": submit_data
  302. }
  303. ]
  304. }
  305. //验证必填项是否为空
  306. if(submit_data.customerId == ""){
  307. wx.showToast({title: '客户名称必填',icon: 'none',duration: 2000})
  308. } else if(submit_data.rdate == ""){
  309. wx.showToast({title: '服务日期必填',icon: 'none',duration: 2000})
  310. } else if(submit_data.receiverName == ""){
  311. wx.showToast({title: '客户对接人必填',icon: 'none',duration: 2000})
  312. } else if(submit_data.content == ""){
  313. wx.showToast({title: '情况说明必填',icon: 'none',duration: 2000})
  314. } else {
  315. if( wx.getStorageSync('isLoading') == "true"){
  316. wx.showToast({
  317. title: '正在保存中,请稍等!',
  318. icon: 'none',
  319. duration: 2000
  320. })
  321. } else {
  322. util.execDataByConfig(send_data, this.getListSuccess)
  323. }
  324. }
  325. },
  326. getListSuccess: function (res) {
  327. console.log('table数据======>', res)
  328. if (res.msg !== 'fail') {
  329. wx.showToast({
  330. title: '保存成功',
  331. icon: 'success',
  332. duration: 2000,
  333. success: function(){
  334. wx.redirectTo({ url:"../remoteService/remoteService"})
  335. }
  336. })
  337. } else {
  338. wx.showToast({
  339. title: '保存失败'+res.data,
  340. icon: 'error',
  341. duration: 2000,
  342. })
  343. }
  344. },
  345. onReady: function () {
  346. },
  347. onShow: function () {
  348. },
  349. onHide: function () {
  350. },
  351. onUnload: function () {
  352. },
  353. /**
  354. * 页面相关事件处理函数--监听用户下拉动作
  355. */
  356. onPullDownRefresh: function () {
  357. },
  358. /**
  359. * 页面上拉触底事件的处理函数
  360. */
  361. onReachBottom: function () {
  362. },
  363. onShareAppMessage: function () {
  364. }
  365. })