微信小程序
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.

add.js 28 KiB

3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897
  1. // pages/apply/paymentTemplate/add/add.js
  2. import * as UTIL from '../../../../utils/util.js';
  3. import * as API from '../../../../utils/API.js';
  4. let EVN_CONFIG = require('../../../../env/env');
  5. const DISTRIBUTE_ENVIROMENT = 'IMGURL';
  6. let {
  7. URL_PREFIX,
  8. } = EVN_CONFIG[DISTRIBUTE_ENVIROMENT];
  9. const app = getApp();
  10. Page({
  11. /**
  12. * 页面的初始数据
  13. */
  14. data: {
  15. isIPX: app.globalData.isIPX,
  16. radio:'1',
  17. active:0,
  18. projectText:'',
  19. balance:0,
  20. showCapitalExpenditureType:false,
  21. showApplyDate:false,
  22. showTransferType:false,
  23. showProject:false,
  24. showProjectFundType:false,
  25. showAccount:false,
  26. showDialog:false,
  27. capitalExpenditureTypeOptions:[],
  28. transferTypeOptions:[],
  29. projectOptions:[],
  30. projectFundTypeOptions:[],
  31. contractionOptions:[],
  32. accountOptions:[],
  33. moneyorderOptions:[],
  34. form:{
  35. approvalItemTemplate:{
  36. approvalItems:'',//审批事项
  37. submitCompany:'',//提交单位
  38. submitDate:'',//提交日期
  39. submitter:'',//提交人
  40. telephone:'',//联系方式
  41. totalAmount:0,//合计金额
  42. templateName:'',//模板名称 选择保存模板的时候添加
  43. dataType:'',//数据类型
  44. },
  45. transfers:[{//事项信息集合以下是List对象信息
  46. num:"一",
  47. capitalExpenditureType:'',//资金支出类别
  48. capitalExpenditureTypeText:'',//资金支出类别(展示用)
  49. succeedAmount:'',//成功支付金额
  50. payer:'',//付款方
  51. payerAccount:'',//付款方账户
  52. bankType:'',//所属银行
  53. bankTypeText:'',//所属银行(展示用)
  54. isPeers:'',//是否同行
  55. operatorCode:'',//操作员代码
  56. enterpriseCode:'',//企业编码
  57. expenditureAmount:'',//支出总金额
  58. applyDate:'',//申请时间
  59. transferStatus:'',//转账状态
  60. auditStatus:'0',//审批状态
  61. paymentState:'',//支付状态
  62. approvalMode:'1',//审批模式
  63. paymentTime:'',//支付时间
  64. bankPriority:'',//银行处理优先级
  65. clientPriority:'',//客户处理优先级
  66. transferType:'',//付款方式
  67. transferTypeText:'',//付款方式(展示用)
  68. requiredTransferTime:'',//要求转账时间
  69. remark:'',//付款事由
  70. startTime:'',//开票日期
  71. endTime:'',//到期日期
  72. orderType:'',//汇票类型
  73. bankAccountType:'',//账户类别1 公户2私户
  74. villageAccountType:'',//账户分类
  75. payeeList:[{//收款方账户集合
  76. payeeId:'0',//收款方id
  77. payee:'',//收款方
  78. bankDeposit:'',//开户行
  79. incomeAmount:'',//收入金额
  80. bankType:'',//所属银行0其他银行1中国银行2农商行(山东省)3农业银行4建设银行5工商银行
  81. payeeAccount:'',//收款账户
  82. }],
  83. }],
  84. },
  85. projectForm:{
  86. projectId:'',
  87. projectName:'',
  88. projectContractor:'',
  89. projectAmount:'',
  90. projectBillNum:'',
  91. projectFundType:'',
  92. outId:'',
  93. ynType:'1',
  94. },
  95. contractionForm:{
  96. id:'',
  97. name:'',
  98. code:'',
  99. totalAmount:'',
  100. },
  101. accountForm:{},
  102. fileForm:[],
  103. isUpdate:false,
  104. SJimage: [],
  105. FPimage: [],
  106. QTimage: [],
  107. imgcount:0
  108. },
  109. /**
  110. * 生命周期函数--监听页面加载
  111. */
  112. onLoad(options) {
  113. var that = this;
  114. if(options.id){
  115. setTimeout(function(){
  116. UTIL.httpRequest(API.URL_GET_APPROVALITEMS+options.id, {method:'GET'}, {
  117. success: (res) => {
  118. if (res.code == API.SUCCESS_CODE) {
  119. console.log(that.data.capitalExpenditureTypeOptions);
  120. if(res.data.approvalItemTemplate == null){return;}
  121. res.data.transfers.forEach( (item,index) => {
  122. res.data.transfers[index].capitalExpenditureTypeText = UTIL.getTransform(item.capitalExpenditureType,that.data.capitalExpenditureTypeOptions);
  123. res.data.transfers[index].transferTypeText = UTIL.getTransform(item.transferType,that.data.transferTypeOptions);
  124. res.data.transfers[index].bankTypeText = UTIL.getTransform(item.bankType,that.data.bankTypeOptions);
  125. res.data.transfers[index].payeeList.forEach( (response,i) => {
  126. res.data.transfers[index].payeeList[i].bankTypeText = UTIL.getTransform(response.bankType,that.data.bankTypeOptions);
  127. })
  128. })
  129. that.setData({
  130. form:res.data
  131. })
  132. //收据附件
  133. UTIL.httpRequest(
  134. API.URL_GET_FINDLIST,
  135. {
  136. method:'GET',
  137. tableName:'t_yinnong_transfer',
  138. tableId:res.data.approvalItemTemplate.id,
  139. fileType:1
  140. },
  141. {
  142. success: (res) => {
  143. let list = [];
  144. res.data.forEach(item=>{
  145. list.push({
  146. tempFilePath:URL_PREFIX+item.fileUrl
  147. })
  148. })
  149. that.setData({
  150. SJimage:list
  151. });
  152. }
  153. })
  154. //发票
  155. UTIL.httpRequest(
  156. API.URL_GET_FINDLIST,
  157. {
  158. method:'GET',
  159. tableName:'t_yinnong_transfer',
  160. tableId:res.data.approvalItemTemplate.id,
  161. fileType:2
  162. },
  163. {
  164. success: (res) => {
  165. let list = [];
  166. res.data.forEach(item=>{
  167. list.push({
  168. tempFilePath:URL_PREFIX+item.fileUrl
  169. })
  170. })
  171. that.setData({
  172. FPimage:list
  173. });
  174. }
  175. })
  176. //其他
  177. UTIL.httpRequest(
  178. API.URL_GET_FINDLIST,
  179. {
  180. method:'GET',
  181. tableName:'t_yinnong_transfer',
  182. tableId:res.data.approvalItemTemplate.id,
  183. fileType:3
  184. },
  185. {
  186. success: (res) => {
  187. let list = [];
  188. res.data.forEach(item=>{
  189. list.push({
  190. tempFilePath:URL_PREFIX+item.fileUrl
  191. })
  192. })
  193. that.setData({
  194. QTimage:list
  195. });
  196. }
  197. })
  198. }
  199. }
  200. })
  201. },1000)
  202. }else if(options.type == 'update'&!options.id){
  203. console.log(options);
  204. setTimeout(function(){
  205. let array = JSON.parse(options.array);
  206. array.transfers.forEach( (item,index) => {
  207. item.capitalExpenditureTypeText = UTIL.getTransform(item.capitalExpenditureType,that.data.capitalExpenditureTypeOptions);
  208. item.transferTypeText = UTIL.getTransform(item.transferType,that.data.transferTypeOptions);
  209. item.bankTypeText = UTIL.getTransform(item.bankType,that.data.bankTypeOptions);
  210. item.payeeList.forEach( (response,i) => {
  211. item.payeeList[i].bankTypeText = UTIL.getTransform(response.bankType,that.data.bankTypeOptions);
  212. })
  213. //收据附件
  214. UTIL.httpRequest(
  215. API.URL_GET_FINDLIST,
  216. {
  217. method:'GET',
  218. tableName:'t_yinnong_transfer',
  219. tableId:item.id,
  220. fileType:1
  221. },
  222. {
  223. success: (res) => {
  224. let list = [];
  225. res.data.forEach((item2,index2)=>{
  226. wx.downloadFile({
  227. url: URL_PREFIX+item2.fileUrl, //仅为示例,并非真实的资源
  228. success (response) {
  229. if (response.statusCode === 200) {
  230. let fileForm = item.fileForm?item.fileForm:[];
  231. fileForm.push({
  232. file: response.tempFilePath,
  233. fileType:'1',
  234. bizPath:'transfer',
  235. tableName:'t_yinnong_transfer',
  236. tableId:''
  237. })
  238. console.log("--------------fileForm2 start----------------");
  239. console.log(fileForm);
  240. console.log("--------------fileForm2 end----------------");
  241. list.push({
  242. tempFilePath:response.tempFilePath
  243. })
  244. that.setData({
  245. ["form.transfers["+index+"].SJimage"]:list,
  246. ["form.transfers["+index+"].fileForm"]:fileForm
  247. });
  248. }
  249. }
  250. })
  251. })
  252. }
  253. })
  254. //发票
  255. UTIL.httpRequest(
  256. API.URL_GET_FINDLIST,
  257. {
  258. method:'GET',
  259. tableName:'t_yinnong_transfer',
  260. tableId:item.id,
  261. fileType:2
  262. },
  263. {
  264. success: (res) => {
  265. let list = [];
  266. res.data.forEach((item2,index2)=>{
  267. wx.downloadFile({
  268. url: URL_PREFIX+item2.fileUrl, //仅为示例,并非真实的资源
  269. success (response) {
  270. if (response.statusCode === 200) {
  271. let fileForm = item.fileForm?item.fileForm:[];
  272. fileForm.push({
  273. file: response.tempFilePath,
  274. fileType:'2',
  275. bizPath:'transfer',
  276. tableName:'t_yinnong_transfer',
  277. tableId:item.id
  278. })
  279. list.push({
  280. tempFilePath:response.tempFilePath
  281. })
  282. that.setData({
  283. ["form.transfers["+index+"].FPimage"]:list,
  284. ["form.transfers["+index+"].fileForm"]:fileForm
  285. });
  286. }
  287. }
  288. })
  289. })
  290. }
  291. })
  292. //其他
  293. UTIL.httpRequest(
  294. API.URL_GET_FINDLIST,
  295. {
  296. method:'GET',
  297. tableName:'t_yinnong_transfer',
  298. tableId:item.id,
  299. fileType:3
  300. },
  301. {
  302. success: (res) => {
  303. let list = [];
  304. let fileForm = item.fileForm?item.fileForm:[];
  305. res.data.forEach((item2,index2)=>{
  306. wx.downloadFile({
  307. url: URL_PREFIX+item2.fileUrl, //仅为示例,并非真实的资源
  308. success (response) {
  309. if (response.statusCode === 200) {
  310. let fileForm = item.fileForm?item.fileForm:[];
  311. fileForm.push({
  312. file: response.tempFilePath,
  313. fileType:'3',
  314. bizPath:'transfer',
  315. tableName:'t_yinnong_transfer',
  316. tableId:item.id
  317. })
  318. list.push({
  319. tempFilePath:response.tempFilePath
  320. })
  321. that.setData({
  322. ["form.transfers["+index+"].QTimage"]:list,
  323. ["form.transfers["+index+"].fileForm"]:fileForm
  324. });
  325. }
  326. }
  327. })
  328. })
  329. }
  330. })
  331. })
  332. that.setData({
  333. form : array,
  334. isUpdate : true
  335. })
  336. },1000)
  337. }
  338. },
  339. /**
  340. * 生命周期函数--监听页面初次渲染完成
  341. */
  342. onReady() {
  343. },
  344. /**
  345. * 生命周期函数--监听页面显示
  346. */
  347. onShow() {
  348. var that = this;
  349. UTIL.httpRequest(API.URL_GET_GETINFO, {method:'GET'}, {
  350. success: (res) => {
  351. if (res.code == API.SUCCESS_CODE) {
  352. that.setData({
  353. ["form.approvalItemTemplate.submitCompany"]:res.user.bookName,
  354. ["form.approvalItemTemplate.submitDate"]:UTIL.js_date_time(new Date()),
  355. ["form.approvalItemTemplate.submitter"]:res.user.nickName,
  356. ["form.approvalItemTemplate.telephone"]:res.user.phonenumber,
  357. })
  358. }
  359. }
  360. })
  361. //所属银行
  362. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'bank_type', {method:'GET'}, {
  363. success: (res) => {
  364. this.setData({
  365. bankTypeOptions:res.data
  366. });
  367. }
  368. })
  369. // 资金支出类别字典查询
  370. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'capital_expenditure_type', {method:'GET'}, {
  371. success: (res) => {
  372. that.setData({
  373. capitalExpenditureTypeOptions:res.data,
  374. })
  375. }
  376. })
  377. // 付款方式类型字典查询
  378. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'transfer_type', {method:'GET'}, {
  379. success: (res) => {
  380. that.setData({
  381. transferTypeOptions:res.data,
  382. })
  383. }
  384. })
  385. // 项目工程列表
  386. UTIL.httpRequest(API.URL_GET_GETPROJECTLIST , {method:'GET'}, {
  387. success: (res) => {
  388. that.setData({
  389. projectOptions:res.rows,
  390. })
  391. }
  392. })
  393. // 工程款类型字典查询
  394. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'project_fund_type', {method:'GET'}, {
  395. success: (res) => {
  396. that.setData({
  397. projectFundTypeOptions:res.data,
  398. })
  399. }
  400. })
  401. // 获取合同信息列表
  402. UTIL.httpRequest(API.URL_GET_CONTRACTIONLIST , {method:'GET'}, {
  403. success: (res) => {
  404. that.setData({
  405. contractionOptions:res.rows,
  406. })
  407. }
  408. })
  409. },
  410. openBox(even){
  411. this.setData({
  412. [even.currentTarget.dataset.name]:true
  413. })
  414. },
  415. closeBox(even){
  416. console.log(even.currentTarget.dataset.name);
  417. this.setData({
  418. [even.currentTarget.dataset.name]:false
  419. })
  420. },
  421. onConfirm(event) {
  422. this.setData({
  423. [event.currentTarget.dataset.name]: false,
  424. [event.currentTarget.dataset.value]: UTIL.formatDate(event.detail),
  425. });
  426. },
  427. onConfirmPick(event) {
  428. console.log(event);
  429. this.setData({
  430. [event.currentTarget.dataset.name]: false,
  431. [event.currentTarget.dataset.value]: event.detail.value.dictValue,
  432. [event.currentTarget.dataset.value+'Text']: event.detail.value.dictLabel,
  433. });
  434. },
  435. onConfirmAccount(event) {
  436. console.log(event);
  437. var that = this;
  438. // 所属银行字典查询
  439. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'bank_type', {method:'GET'}, {
  440. success: (res) => {
  441. let array = res.data.filter(function (e) { return e.dictValue == event.detail.value.bankType; });
  442. this.setData({
  443. [event.currentTarget.dataset.name]: false,
  444. [event.currentTarget.dataset.value+'.payer']: event.detail.value.accountName,
  445. [event.currentTarget.dataset.value+'.cashierId']: event.detail.value.id,
  446. [event.currentTarget.dataset.value+'.payerAccount']: event.detail.value.bankAccountNumber,
  447. [event.currentTarget.dataset.value+'.bankTypeText']: array[0].dictLabel,
  448. [event.currentTarget.dataset.value+'.bankType']: event.detail.value.bankType,
  449. balance:event.detail.value.balance,
  450. });
  451. }
  452. })
  453. },
  454. onConfirmaTransfer(event) {
  455. console.log(event);
  456. var that = this;
  457. let perames = {};
  458. this.setData({
  459. [event.currentTarget.dataset.value+'.payer']: '',
  460. [event.currentTarget.dataset.value+'.payerAccount']: '',
  461. [event.currentTarget.dataset.value+'.bankTypeText']: '',
  462. [event.currentTarget.dataset.value+'.bankType']: '',
  463. [event.currentTarget.dataset.value+'.bankAccountType']: '',
  464. [event.currentTarget.dataset.value+'.isPeers']: '',
  465. balance:0,
  466. });
  467. if(event.detail.value.dictValue == 1){//村账户查询参数
  468. perames = {
  469. pageNum:1,
  470. pageSize:999,
  471. accountType:'102',
  472. method:'post',
  473.   params: {
  474.          "townAccountType":"0"
  475.     }
  476. }
  477. // 付款方列表
  478. UTIL.httpRequest(API.URL_GET_SELECTACCOUNTLIST , perames, {
  479. success: (res) => {
  480. that.setData({
  481. accountOptions:res.rows,
  482. })
  483. }
  484. })
  485. }
  486. if(event.detail.value.dictValue == 2 || event.detail.value.dictValue == 10){//公务卡和现金提现查询参数
  487. perames = {
  488. pageNum:1,
  489. pageSize:999,
  490. accountType:'102',
  491. method:'GET',
  492. villageAccountType:''
  493. }
  494. // 付款方列表
  495. UTIL.httpRequest(API.URL_GET_ACCOUNTLIST , perames, {
  496. success: (res) => {
  497. that.setData({
  498. accountOptions:res.rows,
  499. })
  500. }
  501. })
  502. }
  503. if(event.detail.value.dictValue == 11){//现金使用查询参数
  504. perames = {
  505. pageNum:1,
  506. pageSize:999,
  507. accountType:'101',
  508. method:'GET'
  509. }
  510. // 付款方列表
  511. UTIL.httpRequest(API.URL_GET_ACCOUNTLIST , perames, {
  512. success: (res) => {
  513. that.setData({
  514. accountOptions:res.rows
  515. })
  516. }
  517. })
  518. }
  519. if(event.detail.value.dictValue == 4){//代管账户查询参数
  520. perames = {
  521. pageNum:1,
  522. pageSize:999,
  523. accountType:'102',
  524. method:'GET',
  525. villageAccountType:'1'
  526. }
  527. // 付款方列表
  528. UTIL.httpRequest(API.URL_GET_ACCOUNTLIST , perames, {
  529. success: (res) => {
  530. that.setData({
  531. accountOptions:res.rows,
  532. })
  533. }
  534. })
  535. }
  536. if(event.detail.value.dictValue == 12){//汇票支出查询参数
  537. perames = {
  538. pageNum:1,
  539. pageSize:999,
  540. }
  541. // 付款方列表
  542. UTIL.httpRequest(API.URL_GET_MONEYORDERLIST , perames, {
  543. success: (res) => {
  544. that.setData({
  545. moneyorderOptions:res.rows,
  546. })
  547. }
  548. })
  549. }
  550. this.setData({
  551. [event.currentTarget.dataset.name]: false,
  552. [event.currentTarget.dataset.value+'.transferType']: event.detail.value.dictValue,
  553. [event.currentTarget.dataset.value+'.transferTypeText']: event.detail.value.dictLabel,
  554. });
  555. },
  556. onConfirmProject(event) {
  557. console.log(event);
  558. this.setData({
  559. [event.currentTarget.dataset.name]: false,
  560. [event.currentTarget.dataset.value]: event.detail.value.projectName,
  561. ['projectForm.projectId']: event.detail.value.id,
  562. ['projectForm.projectContractor']: event.detail.value.projectContractor,
  563. ['projectForm.projectAmount']: event.detail.value.projectAmount,
  564. });
  565. },
  566. onConfirmContraction(event) {
  567. console.log(event);
  568. this.setData({
  569. [event.currentTarget.dataset.name]: false,
  570. [event.currentTarget.dataset.value]: event.detail.value.name,
  571. ['contractionForm.code']: event.detail.value.code,
  572. ['contractionForm.totalAmount']: event.detail.value.totalAmount,
  573. ['contractionForm.id']: event.detail.value.id,
  574. });
  575. },
  576. onConfirmMoneyorder(event) {
  577. console.log(event);
  578. this.setData({
  579. [event.currentTarget.dataset.name]: false,
  580. [event.currentTarget.dataset.value]: event.detail.value.name,
  581. ['contractionForm.code']: event.detail.value.code,
  582. ['contractionForm.totalAmount']: event.detail.value.totalAmount,
  583. ['contractionForm.id']: event.detail.value.id,
  584. });
  585. },
  586. goPayeeList(event){
  587. console.log(event);
  588. wx.navigateTo({
  589. url: '/pages/payee/index?isPeers='+event.currentTarget.dataset.ispeers+'&bankType='+event.currentTarget.dataset.banktype+'&accountType='+event.currentTarget.dataset.accounttype+'&transferType='+event.currentTarget.dataset.transfertype + '&index='+event.currentTarget.dataset.index,
  590. })
  591. },
  592. onChange(event){
  593. console.log(event);
  594. this.setData({
  595. [event.currentTarget.dataset.value]: event.detail,
  596. })
  597. },
  598. onChangeMoney(event){
  599. console.log(event);
  600. var that = this;
  601. this.setData({
  602. ["form.transfers["+event.currentTarget.dataset.index+"].payeeList["+event.currentTarget.dataset.childrenindex+"].incomeAmount"]: event.detail,
  603. ["form.transfers["+event.currentTarget.dataset.index+"].expenditureAmount"]:event.detail,
  604. })
  605. },
  606. back:function(){
  607. wx.navigateBack({
  608. delta: 1
  609. })
  610. },
  611. goSubmitMB(){
  612. this.setData({
  613. showDialog:true
  614. })
  615. },
  616. onClose(){
  617. this.setData({
  618. showDialog:false
  619. })
  620. },
  621. bindNameInput(even){
  622. this.setData({
  623. ["form.approvalItemTemplate.templateName"]:even.detail.value
  624. })
  625. },
  626. goSubmit(e){
  627. var that = this;
  628. if(e.currentTarget.dataset.type == 1){
  629. if(that.data.form.approvalItemTemplate.templateName == ''){
  630. UTIL.showToastNoneIcon('请输入模板名称!');
  631. return;
  632. }
  633. }
  634. if(e.currentTarget.dataset.type == 3){
  635. for (let i = 0; i < that.data.form.transfers.length; i++) {
  636. that.data.form.transfers[i].approvalMode = '2';
  637. }
  638. that.data.form.approvalItemTemplate.dataType = e.currentTarget.dataset.type
  639. }
  640. that.data.form.method = 'POST';
  641. that.data.form.approvalItemTemplate.dataType = e.currentTarget.dataset.type;
  642. let totalAmount = 0 ;
  643. for (let i = 0; i < that.data.form.transfers.length; i++) {
  644. totalAmount += parseInt(that.data.form.transfers[i].expenditureAmount);
  645. }
  646. that.data.form.approvalItemTemplate.totalAmount = totalAmount;
  647. UTIL.httpRequest(API.URL_GET_SAVE, that.data.form, {
  648. success: (res) => {
  649. if (res.code == API.SUCCESS_CODE) {
  650. for (let j = 0; j < res.data.transfers.length; j++) {
  651. for (let i = 0; i < that.data.form.transfers[j].fileForm.length; i++) {
  652. that.data.form.transfers[j].fileForm[i].tableId = res.data.transfers[j].id
  653. const element = that.data.form.transfers[j].fileForm[i];
  654. wx.uploadFile({
  655. url: API.URL_GET_UPLOAD,
  656. filePath: element.file,
  657. name: 'file',
  658. header: {
  659. "Content-Type": "multipart/form-data",//记得设置
  660. "chartset":"utf-8",
  661. 'Authorization':'Bearer '+getApp().globalData.userInfo.token
  662. },
  663. formData:element,
  664. success (response){
  665. console.log(res);
  666. if((j+1) == that.data.form.transfers[j].length && (i+1) == that.data.form.transfers[j].fileForm[i].length && e.currentTarget.dataset.type == 0){
  667. wx.navigateTo({
  668. url: '/pages/apply/approval/approval?id='+res.data.id,
  669. })
  670. }
  671. },
  672. fail(res){
  673. console.log(res)
  674. }
  675. })
  676. }
  677. }
  678. }
  679. }
  680. })
  681. },
  682. bindKeyInput(even){
  683. this.setData({
  684. ["form.approvalItemTemplate.approvalItems"]: even.detail.value,
  685. })
  686. },
  687. SJtakephoto(e){
  688. var that = this;
  689. let fileForm = that.data.form.transfers[e.currentTarget.dataset.index].fileForm?that.data.form.transfers[e.currentTarget.dataset.index].fileForm:[];
  690. wx.chooseMedia({
  691. count: 9,
  692. mediaType: ['image','video'],
  693. sourceType: ['album', 'camera'],
  694. maxDuration: 30,
  695. camera: 'back',
  696. success(res) {
  697. console.log(res);
  698. res.tempFiles.forEach(item => {
  699. fileForm.push({
  700. file: item.tempFilePath,
  701. fileType:'1',
  702. bizPath:'transfer',
  703. tableName:'t_yinnong_transfer',
  704. tableId:''
  705. })
  706. })
  707. console.log(fileForm);
  708. that.setData({
  709. ["form.transfers["+e.currentTarget.dataset.index+"].SJimage"]:res.tempFiles,
  710. ["form.transfers["+e.currentTarget.dataset.index+"].fileForm"]:fileForm
  711. })
  712. }
  713. })
  714. },
  715. FPtakephoto(e){
  716. var that = this;
  717. let fileForm = that.data.form.transfers[e.currentTarget.dataset.index].fileForm?that.data.form.transfers[e.currentTarget.dataset.index].fileForm:[];
  718. wx.chooseMedia({
  719. count: 9,
  720. mediaType: ['image','video'],
  721. sourceType: ['album', 'camera'],
  722. maxDuration: 30,
  723. camera: 'back',
  724. success(res) {
  725. console.log(res);
  726. res.tempFiles.forEach(item => {
  727. fileForm.push({
  728. file: item.tempFilePath,
  729. fileType:'2',
  730. bizPath:'transfer',
  731. tableName:'t_yinnong_transfer',
  732. tableId:''
  733. })
  734. })
  735. console.log(fileForm);
  736. that.setData({
  737. ["form.transfers["+e.currentTarget.dataset.index+"].FPimage"]:res.tempFiles,
  738. ["form.transfers["+e.currentTarget.dataset.index+"].fileForm"]:fileForm
  739. })
  740. }
  741. })
  742. },
  743. QTtakephoto(e){
  744. var that = this;
  745. let fileForm = that.data.form.transfers[e.currentTarget.dataset.index].fileForm?that.data.form.transfers[e.currentTarget.dataset.index].fileForm:[];
  746. wx.chooseMedia({
  747. count: 9,
  748. mediaType: ['image','video'],
  749. sourceType: ['album', 'camera'],
  750. maxDuration: 30,
  751. camera: 'back',
  752. success(res) {
  753. console.log(res);
  754. res.tempFiles.forEach(item => {
  755. fileForm.push({
  756. file: item.tempFilePath,
  757. fileType:'3',
  758. bizPath:'transfer',
  759. tableName:'t_yinnong_transfer',
  760. tableId:''
  761. })
  762. })
  763. console.log(fileForm);
  764. that.setData({
  765. ["form.transfers["+e.currentTarget.dataset.index+"].QTimage"]:res.tempFiles,
  766. ["form.transfers["+e.currentTarget.dataset.index+"].fileForm"]:fileForm
  767. })
  768. }
  769. })
  770. },
  771. addList(){
  772. let transList = this.data.form.transfers;
  773. transList.push({
  774. num:UTIL.convertToChinaNum(transList.length+1),
  775. capitalExpenditureType:'',//资金支出类别
  776. capitalExpenditureTypeText:'',//资金支出类别(展示用)
  777. succeedAmount:'',//成功支付金额
  778. payer:'',//付款方
  779. payerAccount:'',//付款方账户
  780. bankType:'',//所属银行
  781. bankTypeText:'',//所属银行(展示用)
  782. isPeers:'',//是否同行
  783. operatorCode:'',//操作员代码
  784. enterpriseCode:'',//企业编码
  785. expenditureAmount:'',//支出总金额
  786. applyDate:'',//申请时间
  787. transferStatus:'',//转账状态
  788. auditStatus:'0',//审批状态
  789. paymentState:'',//支付状态
  790. approvalMode:'1',//审批模式
  791. paymentTime:'',//支付时间
  792. bankPriority:'',//银行处理优先级
  793. clientPriority:'',//客户处理优先级
  794. transferType:'',//付款方式
  795. transferTypeText:'',//付款方式(展示用)
  796. requiredTransferTime:'',//要求转账时间
  797. remark:'',//付款事由
  798. startTime:'',//开票日期
  799. endTime:'',//到期日期
  800. orderType:'',//汇票类型
  801. bankAccountType:'',//账户类别1 公户2私户
  802. villageAccountType:'',//账户分类
  803. payeeList:[{//收款方账户集合
  804. payeeId:'0',//收款方id
  805. payee:'',//收款方
  806. bankDeposit:'',//开户行
  807. incomeAmount:'',//收入金额
  808. bankType:'',//所属银行0其他银行1中国银行2农商行(山东省)3农业银行4建设银行5工商银行
  809. payeeAccount:'',//收款账户
  810. }],
  811. });
  812. this.setData({
  813. ["form.transfers"] : transList
  814. })
  815. },
  816. openPreview(e){
  817. let array = [];
  818. console.log(e);
  819. e.currentTarget.dataset.option.forEach(item=>{
  820. array.push(item.tempFilePath)
  821. })
  822. console.log(array);
  823. wx.previewImage({
  824. urls: array,
  825. showmenu:true,
  826. current:array[e.currentTarget.dataset.index]
  827. })
  828. },
  829. goKeep(){
  830. var that = this;
  831. let pages = getCurrentPages();
  832. let currentPage = null; //当前页面
  833. let prevPage = null; //上一个页面
  834. currentPage = pages[pages.length - 1]; //获取当前页面,将其赋值
  835. prevPage = pages[pages.length - 2]; //获取上一个页面,将其赋值
  836. console.log(that.data.form);
  837. if (prevPage) {
  838. prevPage.setData({
  839. form : that.data.form,//将想要传的信息赋值给上一个页面data中的值
  840. })
  841. that.back()
  842. }
  843. },
  844. /**
  845. * 生命周期函数--监听页面隐藏
  846. */
  847. onHide() {
  848. },
  849. /**
  850. * 生命周期函数--监听页面卸载
  851. */
  852. onUnload() {
  853. },
  854. /**
  855. * 页面相关事件处理函数--监听用户下拉动作
  856. */
  857. onPullDownRefresh() {
  858. },
  859. /**
  860. * 页面上拉触底事件的处理函数
  861. */
  862. onReachBottom() {
  863. },
  864. /**
  865. * 用户点击右上角分享
  866. */
  867. onShareAppMessage() {
  868. }
  869. })