微信小程序
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

1006 rindas
33 KiB

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