微信小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

311 lines
7.6 KiB

  1. // pages/payee/add/add.js
  2. import * as UTIL from '../../../utils/util.js';
  3. import * as API from '../../../utils/API.js';
  4. const app = getApp();
  5. Page({
  6. /**
  7. * 页面的初始数据
  8. */
  9. data: {
  10. isIPX: app.globalData.isIPX,
  11. form:{
  12. payee:'',
  13. payeeAccount:'',
  14. bankType:'',
  15. bankDeposit:'',
  16. accountType:'2',
  17. payeeType:'1',
  18. payeeTypeText:'收款方',
  19. payeePaymentLines:'',
  20. status:'0',
  21. },
  22. showBankType:false,
  23. showAccountType:false,
  24. bankTypeOptions:[],
  25. bankTypeText:'',
  26. accountTypeOptions:[],
  27. payeeTypeOptions:[],
  28. accountTypeText:'',
  29. },
  30. /**
  31. * 生命周期函数--监听页面加载
  32. */
  33. onLoad(options) {
  34. var that = this ;
  35. that.setData({
  36. projectId:options.id
  37. })
  38. var that = this;
  39. // 所属银行字典查询
  40. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'bank_type_all', {method:'GET'}, {
  41. success: (res) => {
  42. // let array = res.data.filter(function (e) { return e.dictValue == event.detail.value.bankType; });
  43. this.setData({
  44. bankTypeOptions:res.data
  45. });
  46. }
  47. })
  48. // 付款方式类型字典查询
  49. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'account_type', {method:'GET'}, {
  50. success: (res) => {
  51. that.setData({
  52. accountTypeOptions:res.data,
  53. })
  54. }
  55. })
  56. // 付款方式类型字典查询
  57. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'payee_type', {method:'GET'}, {
  58. success: (res) => {
  59. that.setData({
  60. payeeTypeOptions:res.data,
  61. })
  62. }
  63. })
  64. if(options.id){
  65. UTIL.httpRequest(API.URL_GET_PAYEEGET + options.id, {method:'GET'}, {
  66. success: (res) => {
  67. UTIL.httpRequest(API.URL_GET_DEPOSITLIST, {method:'GET',bankType:res.data.bankType,status:'0'}, {
  68. success: (res2) => {
  69. that.setData({
  70. depositOptions:res2.rows,
  71. })
  72. console.log(res.data.bankType)
  73. console.log(res2.rows)
  74. res.data.payeeTypeText = UTIL.getTransform(res.data.payeeType,that.data.payeeTypeOptions);
  75. res.data.bankTypeText = UTIL.getTransform(res.data.bankType,that.data.bankTypeOptions);
  76. that.setData({
  77. form:res.data,
  78. })
  79. }
  80. })
  81. }
  82. })
  83. }
  84. },
  85. /**
  86. * 生命周期函数--监听页面初次渲染完成
  87. */
  88. onReady() {
  89. },
  90. bindKeyInput(e){
  91. console.log(e.detail);
  92. var that = this;
  93. var str = e.detail.value.replace(/\s/g, "");
  94. console.log(str);
  95. var numArr = str.match(/\d+/g);
  96. var nameArr = str.match(/[\u4e00-\u9fa5]/g).join("");
  97. if (numArr) {
  98. numArr.map(rr=>{
  99. console.log(rr);
  100. console.log(UTIL.isBankCard(rr));
  101. // const carId = UTIL.isBankCard(rr);
  102. // if (carId) {
  103. that.setData({
  104. ["form.payee"]:nameArr,
  105. ["form.payeeAccount"]:rr
  106. })
  107. // }
  108. })
  109. }
  110. },
  111. /**
  112. * 生命周期函数--监听页面显示
  113. */
  114. onShow() {
  115. //6217002190007972186庞东旭,,,,, 山东省威海市文登区XXXXXX
  116. },
  117. back:function(){
  118. wx.navigateBack({
  119. delta: 1
  120. })
  121. },
  122. openBox(even){
  123. console.log(even);
  124. var that = this ;
  125. if(even.currentTarget.dataset.name == "showDeposit"){
  126. if(that.data.form.bankType == ''){
  127. UTIL.showToastNoneIcon('请先选择所属银行!');
  128. that.setData({
  129. [even.currentTarget.dataset.name]:false,
  130. })
  131. return;
  132. }
  133. }
  134. this.setData({
  135. [even.currentTarget.dataset.name]:true
  136. })
  137. },
  138. onConfirm(even){
  139. console.log(even);
  140. var that = this ;
  141. if(even.currentTarget.dataset.name == "showBankType"){
  142. this.setData({
  143. ['form.bankDeposit']:'',
  144. ["form.payeePaymentLines"]:'',
  145. })
  146. }
  147. this.setData({
  148. [even.currentTarget.dataset.value]:even.detail.value.dictValue,
  149. [even.currentTarget.dataset.value+"Text"]:even.detail.value.dictLabel,
  150. [even.currentTarget.dataset.name]:false,
  151. })
  152. },
  153. onConfirmDeposit(even){
  154. console.log(even);
  155. this.setData({
  156. [even.currentTarget.dataset.value]:even.detail.value.bankDeposit,
  157. [even.currentTarget.dataset.value+"Text"]:even.detail.value.bankDeposit,
  158. [even.currentTarget.dataset.name]:false,
  159. ["form.payeePaymentLines"]:even.detail.value.payeePaymentLines
  160. })
  161. },
  162. closeBox(even){
  163. console.log(even.currentTarget.dataset.name);
  164. this.setData({
  165. [even.currentTarget.dataset.name]:false
  166. })
  167. },
  168. goSubmit(){
  169. console.log(this.data.form);
  170. var that = this;
  171. wx.showLoading({
  172. title: '正在保存',
  173. mask:true
  174. })
  175. if(that.data.form.payee == ''){
  176. wx.hideLoading();
  177. UTIL.showToastNoneIcon('请填写收款方!');
  178. return;
  179. }
  180. if(that.data.form.payeeAccount == ''){
  181. wx.hideLoading();
  182. UTIL.showToastNoneIcon('请填写收款账号!');
  183. return;
  184. }
  185. if(that.data.form.payeeType == ''){
  186. wx.hideLoading();
  187. UTIL.showToastNoneIcon('请选择收款人类型!');
  188. return;
  189. }
  190. if(that.data.form.accountType == ''){
  191. wx.hideLoading();
  192. UTIL.showToastNoneIcon('请选择账户类型!');
  193. return;
  194. }
  195. if(that.data.form.bankType == ''){
  196. wx.hideLoading();
  197. UTIL.showToastNoneIcon('请选择所属银行!');
  198. return;
  199. }
  200. if(that.data.form.bankDeposit == ''){
  201. wx.hideLoading();
  202. UTIL.showToastNoneIcon('请选择开户行!');
  203. return;
  204. }
  205. if(that.data.form.payeePaymentLines == ''){
  206. wx.hideLoading();
  207. UTIL.showToastNoneIcon('请输入联行号!');
  208. return;
  209. }
  210. that.setData({
  211. ['form.method']:'POST'
  212. })
  213. let url = '';
  214. if(this.data.projectId){
  215. url = API.URL_GET_PAYEEEDIT;
  216. console.log("修改");
  217. }else{
  218. url = API.URL_GET_PAYEEADD;
  219. console.log("新增");
  220. }
  221. UTIL.httpRequest(url, that.data.form, {
  222. success: (res) => {
  223. if (res.code == API.SUCCESS_CODE) {
  224. wx.showToast({
  225. title: "提交成功!",
  226. duration: 2000,
  227. icon:"success",
  228. mask:true
  229. })
  230. let pages = getCurrentPages();
  231. let currentPage = null; //当前页面
  232. let prevPage = null; //上一个页面
  233. currentPage = pages[pages.length - 1]; //获取当前页面,将其赋值
  234. prevPage = pages[pages.length - 2]; //获取上一个页面,将其赋值
  235. prevPage.onLoad(prevPage.options)
  236. setTimeout(function(){
  237. wx.navigateBack({
  238. delta:1
  239. })
  240. wx.hideLoading();
  241. },2000)
  242. }else{
  243. wx.hideLoading();
  244. wx.showToast({
  245. title: "提交失败!",
  246. duration: 2000,
  247. icon:"error"
  248. })
  249. }
  250. }
  251. })
  252. },
  253. onChange(even){
  254. console.log(even);
  255. this.setData({
  256. [even.currentTarget.dataset.formname]:even.detail
  257. })
  258. },
  259. goBank(){
  260. var that = this ;
  261. if (that.data.form.bankType == '') {
  262. UTIL.showToastNoneIcon('请先选择所属银行!');
  263. return;
  264. }
  265. wx.navigateTo({
  266. url: '/pages/bank/bankList?banktype='+that.data.form.bankType,
  267. })
  268. },
  269. /**
  270. * 生命周期函数--监听页面隐藏
  271. */
  272. onHide() {
  273. },
  274. /**
  275. * 生命周期函数--监听页面卸载
  276. */
  277. onUnload() {
  278. },
  279. /**
  280. * 页面相关事件处理函数--监听用户下拉动作
  281. */
  282. onPullDownRefresh() {
  283. },
  284. /**
  285. * 页面上拉触底事件的处理函数
  286. */
  287. onReachBottom() {
  288. },
  289. /**
  290. * 用户点击右上角分享
  291. */
  292. onShareAppMessage() {
  293. }
  294. })