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

bankDraft.js 11 KiB

3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
3 jaren geleden
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394
  1. // pages/bankDraft/bankDraft.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. option1: [
  17. { text: '汇票类型', value: '' },
  18. { text: '银行承兑', value: '1' },
  19. { text: '商业承兑', value: '2' },
  20. ],
  21. option2: [
  22. { text: '汇票状态', value: '' },
  23. { text: '在库', value: '1' },
  24. { text: '转付中', value: '2' },
  25. { text: '转付', value: '3' },
  26. { text: '承兑', value: '4' },
  27. ],
  28. value1: '',
  29. value2: '',
  30. moneyorderList:[],
  31. value:'',
  32. pageNums:1,
  33. showUpload:false,
  34. uploadOptions:[],
  35. fileList:[],
  36. itemId:"",
  37. list:[],
  38. fileEvent:{},
  39. },
  40. /**
  41. * 生命周期函数--监听页面加载
  42. */
  43. onLoad(options) {
  44. var _this = this;
  45. let qu = wx.createSelectorQuery()
  46. qu.select("#top_view").boundingClientRect()
  47. qu.select("#top_ban").boundingClientRect()
  48. qu.select("#top_view1").boundingClientRect()
  49. qu.select("#top_view2").boundingClientRect()
  50. qu.exec(res => {
  51. _this.setData({
  52. scrollHeight:wx.getSystemInfoSync().windowHeight-res[3].top
  53. })
  54. })
  55. //获取附件字典
  56. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'common_attach', {method:'GET'}, {
  57. success: (res) => {
  58. this.setData({
  59. uploadOptions:res.data,
  60. })
  61. }
  62. })
  63. },
  64. goAdd(){
  65. wx.navigateTo({
  66. url: 'add/add',
  67. })
  68. },
  69. back:function(){
  70. wx.navigateBack({
  71. delta: 1
  72. })
  73. },
  74. /**
  75. * 生命周期函数--监听页面初次渲染完成
  76. */
  77. onReady() {
  78. },
  79. goUpdate(e){
  80. wx.navigateTo({
  81. url: 'add/add?id='+ e.currentTarget.dataset.id,
  82. })
  83. },
  84. goSearch(e){
  85. this.setData({'value':e.detail})
  86. this.onShow();
  87. },
  88. paging(){
  89. console.log(1);
  90. this.setData({
  91. pageNums:this.data.pageNums+1,
  92. })
  93. this.onShow();
  94. },
  95. /**
  96. * 生命周期函数--监听页面显示
  97. */
  98. onShow() {
  99. var that = this;
  100. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'order_type', {method:'GET'}, {
  101. success: (res) => {
  102. this.setData({
  103. orderTypeOptions:res.data
  104. });
  105. let param = {
  106. 'billPayUnit' : this.data.value,
  107. pageNum:this.data.pageNums,
  108. pageSize:10,
  109. }
  110. UTIL.httpRequest(API.URL_GET_GETMONEYORDERLIST, param,{
  111. success: (response) => {
  112. if (response.code == API.SUCCESS_CODE) {
  113. for (let i = 0; i < response.rows.length; i++) {
  114. response.rows[i].orderTypeText = UTIL.getTransform(response.rows[i].orderType,res.data);
  115. response.rows[i].startTime = response.rows[i].startTime.replace(/-/g,".");
  116. response.rows[i].endTime = response.rows[i].endTime.replace(/-/g,".");
  117. response.rows[i].orderAmount = parseFloat(response.rows[i].orderAmount).toFixed(2);
  118. }
  119. that.setData({
  120. moneyorderList:response.rows
  121. })
  122. }
  123. }
  124. })
  125. }
  126. })
  127. },
  128. delete(e){
  129. var that = this;
  130. UTIL.httpRequest(API.URL_GET_MONEYORDERDELETE + e.currentTarget.dataset.id, {method:'GET'},{
  131. success: (res) => {
  132. if (res.code == API.SUCCESS_CODE) {
  133. let list = that.data.moneyorderList
  134. list.splice(e.currentTarget.dataset.index, 1);
  135. wx.showToast({
  136. title: '删除成功!',
  137. icon: 'success',
  138. duration: 2000
  139. })
  140. that.setData({
  141. moneyorderList : list,
  142. })
  143. }
  144. }
  145. })
  146. },
  147. changeTab(e){
  148. var that = this ;
  149. that.setData({value1:e.detail})
  150. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'order_type', {method:'GET'}, {
  151. success: (res) => {
  152. UTIL.httpRequest(API.URL_GET_GETMONEYORDERLIST, {method:'GET',orderType:that.data.value1,orderStatus:that.data.value2},{
  153. success: (response) => {
  154. if (response.code == API.SUCCESS_CODE) {
  155. for (let i = 0; i < response.rows.length; i++) {
  156. response.rows[i].orderTypeText = UTIL.getTransform(response.rows[i].orderType,res.data);
  157. response.rows[i].startTime = response.rows[i].startTime.replace(/-/g,".");
  158. response.rows[i].endTime = response.rows[i].endTime.replace(/-/g,".");
  159. response.rows[i].orderAmount = parseFloat(response.rows[i].orderAmount).toFixed(2);
  160. }
  161. that.setData({
  162. moneyorderList:response.rows
  163. })
  164. }
  165. }
  166. })
  167. }
  168. })
  169. },
  170. changeTab2(e){
  171. var that = this ;
  172. that.setData({value2:e.detail})
  173. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'order_type', {method:'GET'}, {
  174. success: (res) => {
  175. UTIL.httpRequest(API.URL_GET_GETMONEYORDERLIST, {method:'GET',orderType:that.data.value1,orderStatus:that.data.value2},{
  176. success: (response) => {
  177. if (response.code == API.SUCCESS_CODE) {
  178. for (let i = 0; i < response.rows.length; i++) {
  179. response.rows[i].orderTypeText = UTIL.getTransform(response.rows[i].orderType,res.data);
  180. response.rows[i].startTime = response.rows[i].startTime.replace(/-/g,".");
  181. response.rows[i].endTime = response.rows[i].endTime.replace(/-/g,".");
  182. response.rows[i].orderAmount = parseFloat(response.rows[i].orderAmount).toFixed(2);
  183. }
  184. that.setData({
  185. moneyorderList:response.rows
  186. })
  187. }
  188. }
  189. })
  190. }
  191. })
  192. },
  193. upload(e){
  194. this.setData({itemId:e.currentTarget.dataset.id});
  195. this.asyncFun(e.currentTarget.dataset.id)
  196. },
  197. asyncFun(id){
  198. this.setData({"fileList":[]})
  199. let uploadList = this.data.uploadOptions
  200. let newList = []
  201. let _this = this
  202. uploadList.map( res => {
  203. let oData = {
  204. tableId: id,
  205. tableName: "t_yinnong_moneyorder", //上传表
  206. bizPath: "yinnong",
  207. fileType: res.dictValue, //附件类型 1原始发票 2会议纪要 3会议照片 4 参会人员签字
  208. method:'GET'
  209. }
  210. UTIL.httpRequest(API.URL_GET_ATTACHMENTLIST, oData, {
  211. success: (rr) => {
  212. if(rr.code==200&&rr.rows.length>0){
  213. rr.rows.map((rrr,index) => {
  214. rrr.url = URL_PREFIX + rrr.fileUrl
  215. if(index==rr.rows.length-1){
  216. newList.push(Object.assign({},res,{"list":rr.rows}))
  217. _this.setData({"fileList":_this.data.fileList.concat(newList)});
  218. _this.setData({"showUpload":true})
  219. }
  220. })
  221. }else{
  222. let newuploadList = uploadList
  223. newuploadList.map(rd => {
  224. rd.list = newList
  225. })
  226. _this.setData({"fileList":newuploadList});
  227. _this.setData({"showUpload":true})
  228. }
  229. },
  230. fail:(rr) =>{
  231. },
  232. complete:(rr) => {
  233. }
  234. })
  235. })
  236. },
  237. closeBox(){
  238. this.setData({"showUpload":false})
  239. },
  240. deleteImg(event){
  241. this.setData({"fileEvent":event})
  242. this.setData({"showPopup":true});
  243. },
  244. cancelTem:function(e){
  245. this.setData({"fileEvent":"{}"});
  246. this.setData({"showPopup":false});
  247. },
  248. confirmTem:function(e){
  249. let event = this.data.fileEvent
  250. console.log(event);
  251. UTIL.httpRequest(API.URL_GET_GETFILEREMOVE+event.detail.file.id , {method:'GET'}, {
  252. success: (res) => {
  253. if(res.code==200){
  254. let ll = this.data.fileList
  255. var jsonlist = ll[event.target.dataset.idx].list;
  256. jsonlist.splice(event.detail.index, 1)
  257. ll[event.target.dataset.idx].list = jsonlist
  258. this.setData({"fileList":ll})
  259. this.setData({showPopup:false});
  260. wx.showToast({
  261. title: '删除成功!',
  262. icon: 'success',
  263. duration: 2000,
  264. })
  265. }
  266. }
  267. })
  268. },
  269. uploadFile(uploadFile,event) {
  270. let _this = this
  271. return new Promise((resolve, reject) => {
  272. wx.uploadFile({
  273. url: API.URL_GET_UPLOAD,
  274. filePath: uploadFile.file.file[0].url,
  275. name: 'file',
  276. header: {
  277. "Content-Type": "multipart/form-data",//记得设置
  278. "chartset":"utf-8",
  279. 'Authorization':'Bearer '+getApp().globalData.userInfo.token
  280. },
  281. formData:uploadFile,
  282. success: (res) => {
  283. res.data = JSON.parse(res.data);
  284. if(res.statusCode == 200){
  285. let files = _this.data.fileList
  286. let fName = res.data.fileUrl.split('/')
  287. let fLength = fName.length
  288. files[event.currentTarget.dataset.idx].list.push({
  289. "fileName": fName[fLength-1],
  290. "fileType": "0",
  291. "fileUrl":res.data.fileUrl ,
  292. "id": res.data.id,
  293. "tableId": 6,
  294. "url":URL_PREFIX+res.data.fileUrl
  295. })
  296. _this.setData({"fileList":files})
  297. wx.hideLoading()
  298. }
  299. },
  300. fail: (err) => {
  301. //上传失败:修改pedding为reject
  302. reject(err)
  303. }
  304. });
  305. })
  306. },
  307. afterRead(event) {
  308. let _this = this
  309. wx.showLoading({
  310. title: '上传中...'
  311. })
  312. let fileForm={
  313. file: event.detail,
  314. fileType:event.currentTarget.dataset.idx,
  315. tableName: "t_yinnong_moneyorder", //上传表
  316. bizPath: "yinnong",
  317. tableId:_this.data.itemId
  318. }
  319. this.uploadFile(fileForm,event)
  320. },
  321. lookDown(file,detail){
  322. // 获取指定字符串最后一次出现的位置,返回index
  323. var index1 = file.detail.url.lastIndexOf('.');
  324. // substr(start, length) 抽取从start下标开始的length个字符,返回新的字符串;
  325. var style = file.detail.url.substr(index1 + 1)
  326. //判断图片类型,不需要下载,不做处理
  327. if(style=='png'||style=='jpg'||style=='jpeg'||style=='bmp'||style=='gif'||style=='webp'||style=='psd'||style== 'svg'||style=='tiff'){
  328. //判断非图片类型
  329. }else{
  330. wx.downloadFile({
  331. url: file.detail.url,
  332. success(data){
  333. wx.openDocument({
  334. filePath: data.tempFilePath,
  335. fileType: style,
  336. showMenu:true,
  337. success(res){
  338. }
  339. })
  340. }
  341. })
  342. }
  343. },
  344. /**
  345. * 生命周期函数--监听页面隐藏
  346. */
  347. onHide() {
  348. },
  349. /**
  350. * 生命周期函数--监听页面卸载
  351. */
  352. onUnload() {
  353. },
  354. /**
  355. * 页面相关事件处理函数--监听用户下拉动作
  356. */
  357. onPullDownRefresh() {
  358. },
  359. /**
  360. * 页面上拉触底事件的处理函数
  361. */
  362. onReachBottom() {
  363. },
  364. /**
  365. * 用户点击右上角分享
  366. */
  367. onShareAppMessage() {
  368. }
  369. })