remoteServiceEdit.js 9.5 KB

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