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

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