ticketConfig.js 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462
  1. // pages/ticketReceive/ticketReceive.js
  2. const utils = require('../../utils/util.js')
  3. Page({
  4. /**
  5. * 页面的初始数据
  6. */
  7. data: {
  8. list: [],
  9. pageNum: 1,
  10. pageSize: 10,
  11. pages: '',
  12. finish: false,
  13. keywords: '',
  14. placeholder: '搜索商品',
  15. allSelected: false, //是否全选
  16. tabIndex: 0,
  17. },
  18. /**
  19. * 生命周期函数--监听页面加载
  20. */
  21. onLoad: function (options) {
  22. this.getList()
  23. },
  24. //列表
  25. getList(type) {
  26. let params = {
  27. // reqChannel: 5,
  28. pageNum: this.data.pageNum,
  29. pageSize: this.data.pageSize
  30. }
  31. let keywords = utils.trimAll(this.data.keywords)
  32. let url = ''
  33. if (this.data.tabIndex === 0) {
  34. url = '/sys/product/findPage'
  35. if (keywords !== '') {
  36. params.productName = keywords
  37. }
  38. params.mobile = utils.getInfo().mobile
  39. params.entTaxId=wx.getStorageSync('entTaxId')
  40. }
  41. if (this.data.tabIndex === 1) {
  42. url = '/sys/customer/findPage'
  43. if (keywords !== '') {
  44. params.customerName = keywords
  45. }
  46. params.mobile = utils.getInfo().mobile
  47. params.entTaxId=wx.getStorageSync('entTaxId')
  48. }
  49. if (this.data.tabIndex === 2) {
  50. url = '/auth/ent/user/findEntUserRoleInfo'
  51. if (keywords !== '') {
  52. params.entUserMobile = keywords
  53. }
  54. params.entTaxId=wx.getStorageSync('entTaxId')
  55. params.mobile = utils.getInfo().mobile
  56. }
  57. utils.axios({
  58. method: 'get',
  59. url: url,
  60. data: params,
  61. sendBefore() {
  62. wx.showLoading({
  63. title: '加载中...'
  64. })
  65. },
  66. complete() {
  67. wx.hideLoading()
  68. wx.stopPullDownRefresh()
  69. },
  70. success: res => {
  71. let result = res.data
  72. if (this.data.tabIndex === 0) {
  73. for (let i = 0; i < result.records.length; i++) {
  74. result.records[i].selected = false
  75. }
  76. }
  77. if (type === 'toFresh') {
  78. this.setData({
  79. list: result.records,
  80. pages: result.pages
  81. })
  82. } else {
  83. let list = this.data.list
  84. list = list.concat(result.records)
  85. this.setData({
  86. list,
  87. pages: result.pages
  88. })
  89. }
  90. if (result.total <= this.data.pageSize) {
  91. this.setData({
  92. finish: true
  93. })
  94. }
  95. this.isAllselected()
  96. }
  97. })
  98. },
  99. toFresh() {
  100. this.setData({
  101. pageNum: 1,
  102. pages: '',
  103. finish: false
  104. })
  105. wx.pageScrollTo({
  106. scrollTop: 0,
  107. duration: 300
  108. })
  109. this.getList('toFresh')
  110. },
  111. //点击选中
  112. select(e) {
  113. let selected = e.currentTarget.dataset.selected
  114. let index = e.currentTarget.dataset.index
  115. let str = `list[${index}].selected`
  116. if (this.data.tabIndex !== 2) {
  117. this.setData({
  118. [str]: !selected
  119. })
  120. this.isAllselected()
  121. } else {
  122. let list = this.data.list
  123. for (let i = 0; i < list.length; i++) {
  124. if (i !== index) {
  125. list[i].selected = false
  126. }
  127. }
  128. list[index].selected = !list[index].selected
  129. this.setData({
  130. list
  131. })
  132. }
  133. },
  134. //点击全选
  135. selectedAll() {
  136. let allSelected = !this.data.allSelected
  137. let list = this.data.list
  138. this.setData({
  139. allSelected
  140. })
  141. if (allSelected) {
  142. for (let i = 0; i < list.length; i++) {
  143. list[i].selected = true
  144. }
  145. } else {
  146. for (let i = 0; i < list.length; i++) {
  147. list[i].selected = false
  148. }
  149. }
  150. this.setData({
  151. list
  152. })
  153. },
  154. //判断是否全选
  155. isAllselected() {
  156. let list = this.data.list
  157. let sList = 0
  158. for (let i = 0; i < list.length; i++) {
  159. if (list[i].selected) {
  160. sList++
  161. }
  162. }
  163. if (list.length === sList) {
  164. this.setData({
  165. allSelected: true
  166. })
  167. } else {
  168. this.setData({
  169. allSelected: false
  170. })
  171. }
  172. },
  173. //搜素
  174. search(e) {
  175. let keywords = e.detail.value
  176. this.setData({
  177. keywords
  178. })
  179. this.toFresh()
  180. },
  181. //切换
  182. switchTab(e) {
  183. let index = e.currentTarget.dataset.index
  184. if (index === this.data.tabIndex) {
  185. return
  186. }
  187. this.setData({
  188. tabIndex: index
  189. })
  190. if (index === 0) {
  191. this.setData({
  192. placeholder: '搜索商品'
  193. })
  194. }
  195. if (index === 1) {
  196. this.setData({
  197. placeholder: '搜索购方'
  198. })
  199. }
  200. if (index === 2) {
  201. this.setData({
  202. placeholder: '搜索员工'
  203. })
  204. }
  205. this.toFresh()
  206. },
  207. //新增
  208. add() {
  209. let tabIndex = this.data.tabIndex
  210. if (tabIndex === 0) {
  211. wx.navigateTo({
  212. url: '/pages/goodsAdd/goodsAdd?type=0'
  213. })
  214. }
  215. if (tabIndex === 1) {
  216. wx.navigateTo({
  217. url: '/pages/buyerAdd/buyerAdd?type=0'
  218. })
  219. }
  220. if (tabIndex === 2) {
  221. wx.navigateTo({
  222. url: '/pages/empAdd/empAdd?type=0'
  223. })
  224. }
  225. },
  226. //编辑(type=0是新增,=1是编辑)
  227. edit(e) {
  228. let index = Number(e.currentTarget.dataset.index)
  229. let list = this.data.list
  230. if (this.data.tabIndex === 0) {
  231. let configPro = list[index]
  232. wx.setStorageSync('configPro', configPro)
  233. wx.navigateTo({
  234. url: '/pages/goodsAdd/goodsAdd?type=1'
  235. })
  236. }
  237. if (this.data.tabIndex === 1) {
  238. let configBuyer = list[index]
  239. wx.setStorageSync('configBuyer', configBuyer)
  240. wx.navigateTo({
  241. url: '/pages/buyerAdd/buyerAdd?type=1'
  242. })
  243. }
  244. if (this.data.tabIndex === 2) {
  245. // let userMobile = e.currentTarget.dataset.userMobile
  246. let configUser = list[index]
  247. wx.setStorageSync('configUser', configUser)
  248. wx.navigateTo({
  249. url: `/pages/empAdd/empAdd?type=1`
  250. })
  251. }
  252. },
  253. //删除
  254. showDelete() {
  255. let tabIndex = this.data.tabIndex
  256. let delList = 0
  257. for (let i = 0; i < this.data.list.length; i++) {
  258. if (this.data.list[i].selected === true) {
  259. delList++
  260. }
  261. }
  262. if (delList <= 0) {
  263. utils.toast('请选择要删除的条目')
  264. return
  265. }
  266. let text = ''
  267. if (tabIndex === 0) {
  268. text = '确定要删除选中的商品信息吗?'
  269. }
  270. if (tabIndex === 1) {
  271. text = '确定要删除选中的购方信息吗?'
  272. }
  273. if (tabIndex === 2) {
  274. text = '确定要删除选中的人员方信息吗?'
  275. }
  276. wx.showModal({
  277. content: text,
  278. confirmColor: '#007dff',
  279. success: res => {
  280. if (res.confirm) {
  281. this.del()
  282. }
  283. }
  284. })
  285. },
  286. del() {
  287. let tabIndex = this.data.tabIndex
  288. let list = this.data.list
  289. if (tabIndex === 0) {
  290. let params = {
  291. mobile: utils.getInfo().mobile,
  292. reqChannel: 5,
  293. delList: []
  294. }
  295. for (let i = 0; i < list.length; i++) {
  296. if (list[i].selected === true) {
  297. params.delList.push({
  298. productId: list[i].productId,
  299. entTaxId:list[i].entTaxId
  300. })
  301. }
  302. }
  303. utils.axios({
  304. method: 'post',
  305. url: '/sys/product/delete',
  306. data: params,
  307. sendBefore() {
  308. wx.showLoading({
  309. title: '删除中...',
  310. mask: true
  311. })
  312. },
  313. complete() {
  314. wx.hideLoading()
  315. },
  316. success: res => {
  317. utils.toast('商品信息删除成功')
  318. this.toFresh()
  319. }
  320. })
  321. }
  322. if (tabIndex === 1) {
  323. let params = {
  324. mobile: utils.getInfo().mobile,
  325. reqChannel: 5,
  326. delList: []
  327. }
  328. for (let i = 0; i < list.length; i++) {
  329. if (list[i].selected === true) {
  330. params.delList.push({
  331. customerId: list[i].customerId,
  332. customerCode: list[i].customerCode,
  333. entTaxId: list[i].entTaxId
  334. })
  335. }
  336. }
  337. utils.axios({
  338. method: 'post',
  339. url: '/sys/customer/delete',
  340. data: params,
  341. sendBefore() {
  342. wx.showLoading({
  343. title: '删除中...',
  344. mask: true
  345. })
  346. },
  347. complete() {
  348. wx.hideLoading()
  349. },
  350. success: res => {
  351. utils.toast('购方信息删除成功')
  352. this.toFresh()
  353. }
  354. })
  355. }
  356. if (tabIndex === 2) {
  357. let params = {
  358. entUserMobile:'',
  359. entTaxId:wx.getStorageSync('entTaxId'),
  360. reqChannel: 5,
  361. mobile: utils.getInfo().mobile
  362. }
  363. for (let i = 0; i < list.length; i++) {
  364. if (list[i].selected === true) {
  365. params.entUserMobile = list[i].userMobile
  366. }
  367. }
  368. utils.axios({
  369. method: 'post',
  370. url: '/auth/ent/user/delOnEnt',
  371. data: params,
  372. sendBefore() {
  373. wx.showLoading({
  374. title: '删除中...',
  375. mask: true
  376. })
  377. },
  378. complete() {
  379. wx.hideLoading()
  380. },
  381. success: res => {
  382. utils.toast('人员信息删除成功')
  383. this.toFresh()
  384. }
  385. })
  386. }
  387. },
  388. /**
  389. * 生命周期函数--监听页面初次渲染完成
  390. */
  391. onReady: function () {
  392. },
  393. /**
  394. * 生命周期函数--监听页面显示
  395. */
  396. onShow: function () {
  397. },
  398. /**
  399. * 生命周期函数--监听页面隐藏
  400. */
  401. onHide: function () {
  402. },
  403. /**
  404. * 生命周期函数--监听页面卸载
  405. */
  406. onUnload: function () {
  407. },
  408. /**
  409. * 页面相关事件处理函数--监听用户下拉动作
  410. */
  411. onPullDownRefresh: function () {
  412. this.toFresh()
  413. },
  414. /**
  415. * 页面上拉触底事件的处理函数
  416. */
  417. onReachBottom: function () {
  418. let pageNum = this.data.pageNum
  419. let pages = this.data.pages
  420. pageNum++
  421. if (pageNum <= pages) {
  422. this.setData({
  423. pageNum
  424. })
  425. this.getList()
  426. } else {
  427. this.setData({
  428. finish: true
  429. })
  430. return
  431. }
  432. },
  433. /**
  434. * 用户点击右上角分享
  435. */
  436. onShareAppMessage: function () {
  437. return {
  438. title: '诺信云',
  439. path: '/pages/index/index'
  440. }
  441. }
  442. })