approve.js 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. var app = getApp()
  2. var that;
  3. var animation;
  4. Page({
  5. data: {
  6. item: {//录入选项列表
  7. checked: false,//判断是否开启指定规则
  8. isArrindex: true,
  9. isArrindex2: true,
  10. review_id: '',//id
  11. action: 'complete',
  12. rule_id: '',//积分分类id
  13. rule_id2: '',//分类ID
  14. rule_name: '',
  15. item_id: '',//积分细则id 不选可以为0
  16. point: '',//积分
  17. point2: '',//积分
  18. reviewer_id: '',//递交者
  19. remark: '',//备注
  20. ticket_count: false,//奖票数量
  21. disabled: false,
  22. defaultRuleId: '',
  23. reviewerObj: [],
  24. },
  25. users: {
  26. id: '',
  27. name: '',
  28. },
  29. animationInfo: '',
  30. isShowType: "0",//是显示选择规则还是显示选择分类
  31. isData: false,
  32. isGzType: '',
  33. popupCx: ''
  34. },
  35. onLoad(e) {
  36. that = this;
  37. if (e.id) {
  38. that.getData(e.id);
  39. }
  40. dd.setNavigationBar({ title: "审批" });
  41. },
  42. onShow() {
  43. animation = dd.createAnimation({
  44. duration: 200,
  45. timeFunction: "linear",
  46. });
  47. },
  48. //关闭规则
  49. onClose() {
  50. animation.translateY(1200).step();
  51. that.setData({
  52. animationInfo: animation.export(),
  53. popupCx: ''
  54. });
  55. },
  56. //备注输入
  57. bindTextAreaBlur: function (e) {
  58. this.setData({
  59. ['item.remark']: e.detail.value,
  60. });
  61. },
  62. onSelectUser(item) {
  63. this.setData({
  64. users: item[0] ? item[0] : { id: '', name: '' },
  65. reviewerObj: item
  66. })
  67. },
  68. bindTextAreaBlur(e) {
  69. this.setData({
  70. ['item.remark']: e.detail.value,
  71. });
  72. },
  73. showToast(text) {
  74. app.globalData.showToast(text);
  75. },
  76. //提交
  77. formSubmit() {
  78. var item = that.data.item;
  79. var data, point;
  80. var num = item.checked ? item.point : item.point2;
  81. // console.log(item)
  82. if (item.checked) {
  83. if (!item.rule_id) {
  84. this.showToast("请选择所属规则")
  85. return;
  86. }
  87. if (item.isArrindex != true) {
  88. point = 0 - num;
  89. } else {
  90. point = num;
  91. }
  92. if (point == 0 || !point) {
  93. this.showToast("积分不能为0或空")
  94. return;
  95. }
  96. } else {
  97. if (!item.rule_id2) {
  98. this.showToast("请选择所属分类")
  99. return;
  100. }
  101. if (item.isArrindex2 != true) {
  102. point = 0 - num;
  103. } else {
  104. point = num;
  105. }
  106. if (point == 0 || !point) {
  107. this.showToast("积分不能为0或空")
  108. return;
  109. }
  110. }
  111. data = {
  112. review_id: item.review_id,
  113. action: 'complete',
  114. rule_id: item.checked ? item.rule_id : item.rule_id2,
  115. item_id: item.checked ? item.item_id : 0,
  116. point: Number(point),
  117. reviewer_id: that.data.users.id ? that.data.users.id : 0,
  118. remark: item.remark,
  119. ticket_count: item.ticket_count ? 1 : 0,
  120. }
  121. // console.log(data)
  122. // return false
  123. this.setData({ disabled: true });
  124. app.$post("api/integral/review", data).then((res) => {
  125. if (res.data.code == 1) {
  126. this.showToast("已通过");
  127. var pages = getCurrentPages();//当上一页的page不等于一时,执行上一页的方法
  128. var active = pages[pages.length - 3];
  129. if (active) {
  130. if (active.data.page != 1) {
  131. active.refreshData(item.review_id);
  132. active.filtrationList(2, item.review_id);
  133. }
  134. setTimeout(() => {
  135. this.setData({ disabled: false });
  136. dd.navigateBack({ delta: 2 })
  137. }, 1000);
  138. } else {
  139. setTimeout(() => {
  140. dd.reLaunch({
  141. url: '/pages/workbench/index/index'
  142. })
  143. }, 1000);
  144. }
  145. } else {
  146. this.setData({ disabled: false });
  147. this.showToast(res.data.msg);
  148. }
  149. }).catch(err => {
  150. this.setData({ disabled: false });
  151. })
  152. },
  153. bindKeyInput(e) {
  154. that.setData({
  155. ['item.point']: e.detail.value
  156. })
  157. },
  158. bindKeyInput2(e) {
  159. that.setData({
  160. ['item.point2']: e.detail.value
  161. })
  162. },
  163. switchChange(e) {
  164. that.setData({
  165. ['item.checked']: e.detail.value
  166. })
  167. },
  168. switchChange2(e) {
  169. that.setData({
  170. ['item.ticket_count']: e.detail.value
  171. })
  172. },
  173. bindPickerChange(e) {
  174. this.setData({
  175. ['item.isArrindex']: !that.data.item.isArrindex,
  176. });
  177. },
  178. bindPickerChange2(e) {
  179. this.setData({
  180. ['item.isArrindex2']: !that.data.item.isArrindex2,
  181. });
  182. },
  183. //选择规则分类
  184. onSelectType(item) {
  185. this.setData({
  186. ['item.rule_id2']: item.id,
  187. ['item.rule_name']: item.name,
  188. });
  189. },
  190. //选择规则
  191. onSelectItem(item) {
  192. var strMin;
  193. if (item.min_point < 0) {
  194. var min = item.min_point.toString();
  195. var strMin = min.slice(1, min.length);
  196. } else {
  197. strMin = item.min_point;
  198. }
  199. that.setData({
  200. ['item.rule_id']: item.rule_id,
  201. ['item.selectRule']: item,
  202. ['item.item_id']: item.id,
  203. ['item.point']: Number(strMin),
  204. ['item.isArrindex']: item.min_point > 0 ? true : false,
  205. })
  206. },
  207. //显示规则
  208. openSelect(e) {
  209. if (e.target.dataset.ruleId) {
  210. that.setData({ defaultRuleId: e.target.dataset.ruleId });
  211. }
  212. that.setData({ activeIndex: '', isShowType: '' });
  213. animation.translateY(0).step();
  214. that.setData({
  215. isShowType: e.target.dataset.num,
  216. activeIndex: e.target.dataset.index,
  217. popupCx: 'container__mask',
  218. animationInfo: animation.export()
  219. });
  220. },
  221. getData(id) {
  222. var getPoint = 0;//积分1017 1030 1006 992 985 1389
  223. app.$get("api/integral/review", { review_id: id }).then((res) => {
  224. var data = res.data.data;
  225. if (data.point) {
  226. if (data.point < 0) {
  227. var min = data.point.toString();
  228. getPoint = min.slice(1, min.length);
  229. } else {
  230. getPoint = data.point;
  231. }
  232. }
  233. var isData, selectRule;
  234. var checked = false;
  235. if (data.rule_id && data.item_id) {
  236. console.log(1);
  237. isData = 1;
  238. checked = true;
  239. selectRule = {
  240. range_type: data.item_range_type,
  241. min_point: data.item_min_point,
  242. max_point: data.item_max_point,
  243. remark: data.item_name,
  244. pt_Obj: app.getTypesItem(data.pt_id),
  245. }
  246. } else if (data.rule_id && data.point) {
  247. console.log(3);
  248. isData = 3
  249. selectRule = '';
  250. } else if (data.rule_id) {
  251. console.log(3);
  252. isData = 3;
  253. selectRule = '';
  254. } else {
  255. console.log(4);
  256. isData = 4
  257. selectRule = '';
  258. }
  259. that.setData({
  260. isGzType: data.pt_code,
  261. isData: isData,
  262. ['item.pid']: data.pid == 0 ? false : true,
  263. ['item.review_id']: data.id,
  264. ['item.checked']: checked,
  265. ['item.selectRule']: selectRule,
  266. ['item.rule_id']: data.rule_id,
  267. ['item.rule_id2']: data.rule_id,
  268. ['item.item_id']: data.item_id,
  269. ['item.rule_name']: data.rule_name,
  270. ['item.point']: getPoint == 0 ? '' : getPoint,
  271. ['item.point2']: getPoint == 0 ? '' : getPoint,
  272. ['item.isArrindex']: data.point >= 0 ? true : false,
  273. ['item.isArrindex2']: data.point >= 0 ? true : false,
  274. })
  275. })
  276. },
  277. });