@@ -37,7 +37,9 @@ | |||
"pages/Bookkeeping/seeBook/seeBook", | |||
"pages/Bookkeeping/seeBookZC/seeBookZC", | |||
"pages/contractAssets/fixedAssets", | |||
"pages/fixedAssets/change/change" | |||
"pages/fixedAssets/change/change", | |||
"pages/paymentManager/paymentManager", | |||
"pages/paymentManager/toPay/toPay" | |||
], | |||
"window": { | |||
"backgroundTextStyle": "light", | |||
@@ -1,4 +1,4 @@ | |||
// pages/bank/bank.js | |||
// pages/fixedAssets/fixedAssets.js | |||
import * as UTIL from '../../utils/util.js'; | |||
import * as API from '../../utils/API.js'; | |||
let EVN_CONFIG = require('../../env/env'); | |||
@@ -101,6 +101,10 @@ | |||
<view class="image"><image class="attribute" src="../../image/index/child_function_10.png" mode="aspectFit"></image></view> | |||
<text class="desc">固定资产</text> | |||
</view> | |||
<view class="flex_block" data-url="/pages/paymentManager/paymentManager" bindtap="navigate" hover-class="btnView"> | |||
<view class="image"><image class="attribute" src="../../image/index/paymentManager_icon.png" mode="aspectFit"></image></view> | |||
<text class="desc">支付管理</text> | |||
</view> | |||
</block> | |||
<view class="flex_block" bindtap="openView" hover-class="btnView"> | |||
<view class="image"><image class="attribute" src="../../image/index/child_function_06.png" mode="aspectFit"></image></view> | |||
@@ -0,0 +1,504 @@ | |||
// pages/paymentManager/paymentManager.js | |||
import * as UTIL from '../../utils/util.js'; | |||
import * as API from '../../utils/API.js'; | |||
let EVN_CONFIG = require('../../env/env'); | |||
const DISTRIBUTE_ENVIROMENT = 'IMGURL'; | |||
let { | |||
URL_PREFIX, | |||
} = EVN_CONFIG[DISTRIBUTE_ENVIROMENT]; | |||
const app = getApp(); | |||
Page({ | |||
/** | |||
* 页面的初始数据 | |||
*/ | |||
data: { | |||
isIPX: app.globalData.isIPX, | |||
list:[], | |||
isLoading:false, | |||
pageNums:1, | |||
scrollHeight:"", | |||
name:"", | |||
showUpload:false, | |||
uploadOptions:[], | |||
fileList:[], | |||
showPopup:false, | |||
fileEvent:{}, | |||
itemId:"", | |||
assetTypeOptions:[], | |||
option1: [ | |||
{ text: '支付状态', value: '' }, | |||
{ text: '待支付', value: '1' }, | |||
{ text: '银行受理', value: '3' }, | |||
{ text: '支付失败', value: '4' }, | |||
{ text: '部分失败', value: '5' }, | |||
], | |||
option2: [ | |||
{ text: '支出类别', value: '' }, | |||
{ text: '结算类', value: '1' }, | |||
{ text: '工程项目类', value: '2' }, | |||
{ text: '合同类', value: '4' }, | |||
{ text: '其他', value: '5' }, | |||
], | |||
option3: [ | |||
{ text: '申请类别', value: '' }, | |||
{ text: '银行卡转账', value: '1' }, | |||
{ text: '信用卡还款', value: '2' }, | |||
], | |||
value1: '', | |||
value2: '', | |||
value3: '', | |||
}, | |||
goAdd(){ | |||
wx.navigateTo({ | |||
url: 'add/add', | |||
}) | |||
}, | |||
back:function(){ | |||
wx.navigateBack({ | |||
delta: 1 | |||
}) | |||
}, | |||
assetTypeDict(val){ | |||
this.data.assetTypeOptions.map(res => { | |||
if(res.dictValue == val){ | |||
return res.dictLabel | |||
} | |||
}) | |||
}, | |||
/** | |||
* 生命周期函数--监听页面加载 | |||
*/ | |||
onLoad(options) { | |||
var that = this; | |||
let qu = wx.createSelectorQuery() | |||
qu.select("#top_view1").boundingClientRect() | |||
qu.select("#top_ban").boundingClientRect() | |||
qu.exec(res => { | |||
that.setData({ | |||
scrollHeight:wx.getSystemInfoSync().windowHeight-res[0].height-res[0].top | |||
}) | |||
}) | |||
this.getList(); | |||
}, | |||
/** | |||
* 生命周期函数--监听页面初次渲染完成 | |||
*/ | |||
onReady() { | |||
}, | |||
getList:function(){ | |||
let params = { | |||
pageNum:this.data.pageNums, | |||
pageSize:10, | |||
name:this.data.name, | |||
paymentState:this.data.value1, | |||
capitalExpenditureType:this.data.value2, | |||
transferType:this.data.value3 | |||
} | |||
UTIL.httpRequest(API.URL_GET_TRANSFERPAYLIST,params,{ | |||
success: (res) => { | |||
console.log(res); | |||
let _this = this | |||
if(res.code == 200){ | |||
if(this.data.pageNums!=1&&this.data.list.length<res.total){ | |||
let lists = [] | |||
res.rows.map((rr,index) => { | |||
rr.expenditureAmount = Number(rr.expenditureAmount ).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||
return $1 + ","; }).replace(/\.$/, "") | |||
if(index==(res.rows.length-1)){ | |||
lists = _this.data.list.concat(res.rows) | |||
} | |||
}) | |||
//获取资产类别 | |||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'asset_type', {method:'GET'}, { | |||
success: (r) => { | |||
if(r.data.length>0){ | |||
let li = lists.map( res => { | |||
r.data.map(rr => { | |||
if(res.assetType == rr.dictValue){ | |||
res.assetType = rr.dictLabel | |||
} | |||
}) | |||
return res | |||
}) | |||
_this.setData({list:li}) | |||
}else{ | |||
_this.setData({list:lists}) | |||
} | |||
} | |||
}) | |||
}else if(this.data.pageNums==1){ | |||
//获取资产类别 | |||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'asset_type', {method:'GET'}, { | |||
success: (r) => { | |||
if(r.data.length>0){ | |||
let li = res.rows.map( ress => { | |||
ress.originalValue = Number(ress.originalValue ).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||
return $1 + ","; }).replace(/\.$/, "") | |||
r.data.map(rr => { | |||
if(ress.assetType == rr.dictValue){ | |||
ress.assetType = rr.dictLabel | |||
} | |||
}) | |||
return ress | |||
}) | |||
_this.setData({list:li}) | |||
}else{ | |||
_this.setData({list:res.rows}) | |||
} | |||
} | |||
}) | |||
} | |||
}else{ | |||
UTIL.showToastNoneIcon(res.msg); | |||
} | |||
} | |||
}) | |||
}, | |||
paging(){ | |||
this.setData({ | |||
pageNums:this.data.pageNums+1, | |||
}) | |||
this.getList(); | |||
}, | |||
goSearch(e){ | |||
this.setData({name:e.detail}); | |||
this.setData({pageNums:1}); | |||
this.getList(); | |||
}, | |||
toPay(e){ | |||
wx.navigateTo({ | |||
url: '/pages/paymentManager/toPay/toPay?id='+e.currentTarget.dataset.id, | |||
}) | |||
}, | |||
scrap(e){ | |||
console.log(e.currentTarget.dataset.data.id,e.currentTarget.dataset.data.index); | |||
if(e.currentTarget.dataset.data.assetStatus != 1){ | |||
UTIL.showToastNoneIcon('只允许修改资产状态为正常的资产!'); | |||
return false; | |||
}else if(e.currentTarget.dataset.data.useType == 3){ | |||
UTIL.showToastNoneIcon('使用状态为出租或出借不允许操作!'); | |||
return false; | |||
}else{ | |||
UTIL.httpRequest(API.URL_GET_UPDATERSCRAP + e.currentTarget.dataset.data.id , {method:'GET'}, { | |||
success: (res) => { | |||
if(res.code==200){ | |||
let new_list = this.data.list | |||
new_list.splice(e.currentTarget.dataset.data.index,1) | |||
this.setData({'list':new_list}) | |||
UTIL.showToastNoneIcon('报废成功!'); | |||
}else{ | |||
UTIL.showToastNoneIcon('报废失败!:'+res.msg); | |||
} | |||
} | |||
}) | |||
} | |||
}, | |||
sell(e){ | |||
console.log(e.currentTarget.dataset.data.id,e.currentTarget.dataset.data.index); | |||
if(e.currentTarget.dataset.data.assetStatus != 1){ | |||
UTIL.showToastNoneIcon('只允许修改资产状态为正常的资产!'); | |||
return false; | |||
}else if(e.currentTarget.dataset.data.useType == 3){ | |||
UTIL.showToastNoneIcon('使用状态为出租或出借不允许操作!'); | |||
return false; | |||
}else{ | |||
UTIL.httpRequest(API.URL_GET_UPDATERSALE + e.currentTarget.dataset.data.id , {method:'GET'}, { | |||
success: (res) => { | |||
if(res.code==200){ | |||
let new_list = this.data.list | |||
new_list.splice(e.currentTarget.dataset.data.index,1) | |||
this.setData({'list':new_list}) | |||
UTIL.showToastNoneIcon('出售成功!'); | |||
}else{ | |||
UTIL.showToastNoneIcon('出售失败!:'+res.msg); | |||
} | |||
} | |||
}) | |||
} | |||
}, | |||
change(e){ | |||
wx.navigateTo({ | |||
url: '/pages/fixedAssets/change/change?id='+e.currentTarget.dataset.id, | |||
}) | |||
}, | |||
changeTab(e){ | |||
var that = this ; | |||
that.setData({value1:e.detail}) | |||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'order_type', {method:'GET'}, { | |||
success: (res) => { | |||
UTIL.httpRequest(API.URL_GET_GETMONEYORDERLIST, {method:'GET',orderType:that.data.value1,orderStatus:that.data.value2},{ | |||
success: (response) => { | |||
if (response.code == API.SUCCESS_CODE) { | |||
for (let i = 0; i < response.rows.length; i++) { | |||
response.rows[i].orderTypeText = UTIL.getTransform(response.rows[i].orderType,res.data); | |||
response.rows[i].startTime = response.rows[i].startTime.replace(/-/g,"."); | |||
response.rows[i].endTime = response.rows[i].endTime.replace(/-/g,"."); | |||
response.rows[i].orderAmount = parseFloat(response.rows[i].orderAmount).toFixed(2); | |||
} | |||
that.setData({ | |||
moneyorderList:response.rows | |||
}) | |||
} | |||
} | |||
}) | |||
} | |||
}) | |||
}, | |||
changeTab2(e){ | |||
var that = this ; | |||
that.setData({value2:e.detail}) | |||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'order_type', {method:'GET'}, { | |||
success: (res) => { | |||
UTIL.httpRequest(API.URL_GET_GETMONEYORDERLIST, {method:'GET',orderType:that.data.value1,orderStatus:that.data.value2},{ | |||
success: (response) => { | |||
if (response.code == API.SUCCESS_CODE) { | |||
for (let i = 0; i < response.rows.length; i++) { | |||
response.rows[i].orderTypeText = UTIL.getTransform(response.rows[i].orderType,res.data); | |||
response.rows[i].startTime = response.rows[i].startTime.replace(/-/g,"."); | |||
response.rows[i].endTime = response.rows[i].endTime.replace(/-/g,"."); | |||
response.rows[i].orderAmount = parseFloat(response.rows[i].orderAmount).toFixed(2); | |||
} | |||
that.setData({ | |||
moneyorderList:response.rows | |||
}) | |||
} | |||
} | |||
}) | |||
} | |||
}) | |||
}, | |||
delete(e){ | |||
this.setData({ | |||
'itemId':e.currentTarget.dataset.id, | |||
'itemIndex':e.currentTarget.dataset.index, | |||
"showPopupDel":true | |||
}); | |||
}, | |||
cancelTemDel:function(e){ | |||
this.setData({ | |||
"itemId":"", | |||
"itemIndex":"", | |||
"showPopupDel":false | |||
}); | |||
}, | |||
confirmTemDel:function(e){ | |||
this.setData({ | |||
"showPopupDel":false | |||
}); | |||
UTIL.httpRequest(API.URL_GET_PERMANENTDELETE + this.data.itemId , {method:'GET'}, { | |||
success: (res) => { | |||
if(res.code==200){ | |||
let new_list = this.data.list | |||
new_list.splice(this.data.index,1) | |||
this.setData({'list':new_list}) | |||
UTIL.showToastNoneIcon('删除成功!'); | |||
}else{ | |||
UTIL.showToastNoneIcon('删除失败!'); | |||
} | |||
} | |||
}) | |||
}, | |||
upload(e){ | |||
this.setData({itemId:e.currentTarget.dataset.id}); | |||
this.asyncFun(e.currentTarget.dataset.id) | |||
}, | |||
asyncFun(id){ | |||
this.setData({"fileList":[]}) | |||
let uploadList = this.data.uploadOptions | |||
let newList = [] | |||
let _this = this | |||
uploadList.map( res => { | |||
let oData = { | |||
tableId: id, | |||
tableName: "t_asset_permanent", //上传表 | |||
bizPath: "asset", | |||
fileType: res.dictValue, //附件类型 1原始发票 2会议纪要 3会议照片 4 参会人员签字 | |||
method:'GET' | |||
} | |||
UTIL.httpRequest(API.URL_GET_ATTACHMENTLIST, oData, { | |||
success: (rr) => { | |||
if(rr.rows.length>0){ | |||
rr.rows.map((rrr,index) => { | |||
rrr.url = URL_PREFIX + rrr.fileUrl | |||
if(index==rr.rows.length-1){ | |||
newList.push(Object.assign({},res,{"list":rr.rows})) | |||
_this.setData({"fileList":_this.data.fileList.concat(newList)}); | |||
_this.setData({"showUpload":true}) | |||
} | |||
}) | |||
}else{ | |||
let newuploadList = uploadList | |||
newuploadList.map(rd => { | |||
rd.list = newList | |||
}) | |||
_this.setData({"fileList":newuploadList}); | |||
_this.setData({"showUpload":true}) | |||
} | |||
} | |||
}) | |||
}) | |||
}, | |||
closeBox(){ | |||
this.setData({"showUpload":false}) | |||
}, | |||
deleteImg(event){ | |||
this.setData({"fileEvent":event}) | |||
this.setData({"showPopup":true}); | |||
}, | |||
cancelTem:function(e){ | |||
this.setData({"fileEvent":"{}"}); | |||
this.setData({"showPopup":false}); | |||
}, | |||
confirmTem:function(e){ | |||
let event = this.data.fileEvent | |||
UTIL.httpRequest(API.URL_GET_GETFILEREMOVE+event.detail.file.id , {method:'GET'}, { | |||
success: (res) => { | |||
if(res.code==200){ | |||
let ll = this.data.fileList | |||
var jsonlist = ll[event.target.dataset.idx].list; | |||
jsonlist.splice(event.detail.index, 1) | |||
ll[event.target.dataset.idx].list = jsonlist | |||
this.setData({"fileList":ll}) | |||
this.setData({showPopup:false}); | |||
wx.showToast({ | |||
title: '删除成功!', | |||
icon: 'success', | |||
duration: 2000, | |||
}) | |||
} | |||
} | |||
}) | |||
}, | |||
uploadFile(uploadFile,event) { | |||
let _this = this | |||
return new Promise((resolve, reject) => { | |||
wx.uploadFile({ | |||
url: API.URL_GET_UPLOAD, | |||
filePath: uploadFile.file.file.url, | |||
name: 'file', | |||
header: { | |||
"Content-Type": "multipart/form-data",//记得设置 | |||
"chartset":"utf-8", | |||
'Authorization':'Bearer '+getApp().globalData.userInfo.token | |||
}, | |||
formData:uploadFile, | |||
success: (res) => { | |||
res.data = JSON.parse(res.data); | |||
if(res.statusCode == 200){ | |||
let files = _this.data.fileList | |||
let fName = res.data.fileUrl.split('/') | |||
let fLength = fName.length | |||
files[event.currentTarget.dataset.idx].list.push({ | |||
"fileName": fName[fLength-1], | |||
"fileType": "0", | |||
"fileUrl":res.data.fileUrl , | |||
"id": res.data.id, | |||
"tableId": 6, | |||
"url":URL_PREFIX+res.data.fileUrl | |||
}) | |||
_this.setData({"fileList":files}) | |||
wx.hideLoading() | |||
} | |||
}, | |||
fail: (err) => { | |||
//上传失败:修改pedding为reject | |||
reject(err) | |||
} | |||
}); | |||
}) | |||
}, | |||
afterRead(event) { | |||
let _this = this | |||
wx.showLoading({ | |||
title: '上传中...' | |||
}) | |||
let fileForm={ | |||
file: event.detail, | |||
fileType:event.currentTarget.dataset.idx, | |||
tableName: "t_asset_permanent", //上传表 | |||
bizPath: "asset", | |||
tableId:_this.data.itemId | |||
} | |||
this.uploadFile(fileForm,event) | |||
}, | |||
lookDown(file,detail){ | |||
// 获取指定字符串最后一次出现的位置,返回index | |||
var index1 = file.detail.url.lastIndexOf('.'); | |||
// substr(start, length) 抽取从start下标开始的length个字符,返回新的字符串; | |||
var style = file.detail.url.substr(index1 + 1) | |||
//判断图片类型,不需要下载,不做处理 | |||
if(style=='png'||style=='jpg'||style=='jpeg'||style=='bmp'||style=='gif'||style=='webp'||style=='psd'||style== 'svg'||style=='tiff'){ | |||
//判断非图片类型 | |||
}else{ | |||
wx.downloadFile({ | |||
url: file.detail.url, | |||
success(data){ | |||
wx.openDocument({ | |||
filePath: data.tempFilePath, | |||
fileType: style, | |||
showMenu:true, | |||
success(res){ | |||
} | |||
}) | |||
} | |||
}) | |||
} | |||
}, | |||
/** | |||
* 生命周期函数--监听页面显示 | |||
*/ | |||
onShow() { | |||
this.setData({'pageNums':1}) | |||
this.getList(); | |||
}, | |||
/** | |||
* 生命周期函数--监听页面隐藏 | |||
*/ | |||
onHide() { | |||
}, | |||
/** | |||
* 生命周期函数--监听页面卸载 | |||
*/ | |||
onUnload() { | |||
}, | |||
/** | |||
* 页面相关事件处理函数--监听用户下拉动作 | |||
*/ | |||
onPullDownRefresh() { | |||
}, | |||
/** | |||
* 页面上拉触底事件的处理函数 | |||
*/ | |||
onReachBottom() { | |||
}, | |||
/** | |||
* 用户点击右上角分享 | |||
*/ | |||
onShareAppMessage() { | |||
} | |||
}) |
@@ -0,0 +1,16 @@ | |||
{ | |||
"usingComponents": { | |||
"van-checkbox": "@vant/weapp/checkbox/index", | |||
"van-checkbox-group": "@vant/weapp/checkbox-group/index", | |||
"van-cell": "@vant/weapp/cell/index", | |||
"van-cell-group": "@vant/weapp/cell-group/index", | |||
"van-search": "@vant/weapp/search/index", | |||
"van-radio": "@vant/weapp/radio/index", | |||
"van-radio-group": "@vant/weapp/radio-group/index", | |||
"van-swipe-cell": "@vant/weapp/swipe-cell/index", | |||
"van-action-sheet": "@vant/weapp/action-sheet/index", | |||
"van-upload": "@vant/weapp/uploader/index", | |||
"van-dropdown-menu": "@vant/weapp/dropdown-menu/index", | |||
"van-dropdown-item": "@vant/weapp/dropdown-item/index" | |||
} | |||
} |
@@ -0,0 +1,116 @@ | |||
<!--pages/paymentManager/paymentManager.wxml--> | |||
<view class="ns" id="top_ban" style="height:{{isIPX?'88px':'64px'}};"> | |||
<image src="../../image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};height: 19.0909px;" mode="widthFix" bindtap="back" referrer="no-referrer|origin|unsafe-url"></image> | |||
<text style="top:{{isIPX?'54px':'30px'}};">支出管理</text> | |||
</view> | |||
<van-dropdown-menu active-color="#5CAE77" bind:change="changeTab" id="top_view1" class="search_box" style="margin-top:{{isIPX?'88px':'64px'}};"> | |||
<van-dropdown-item value="{{ value1 }}" options="{{ option1 }}" bind:change="changeTab" /> | |||
<van-dropdown-item value="{{ value2 }}" options="{{ option2 }}" bind:change="changeTab2" /> | |||
<van-dropdown-item value="{{ value3 }}" options="{{ option3 }}" bind:change="changeTab2" /> | |||
</van-dropdown-menu> | |||
<scroll-view scroll-y refresher-threshold="0" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100"> | |||
<van-swipe-cell right-width="{{ 130 }}" left-width="{{ 90 }}" class="workflow" wx:for="{{list}}" wx:key="index" wx:for-item="item" > | |||
<view class="li" bindtap="goUpdate" data-id="{{item.id}}"> | |||
<view style="width:70%;flex:7;"> | |||
<view class="tit_box"> | |||
<image src="/image/icon/paymentManager_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="no-referrer|origin|unsafe-url"></image> | |||
<text class="tit">{{item.payer}}</text> | |||
</view> | |||
<view class="detail_box"> | |||
<view style="margin-left:5%;color:grey;font-size: 12px;justify-content: space-between;display: contents;"> | |||
<text>{{item.payerAccount}}</text> | |||
<text style="color:#62AD66;background-color: rgb(98,173,102,0.2);padding:2px 4px;text-align: right;">{{item.transferType==1?"银行还款":"信用卡还款"}}</text> | |||
</view> | |||
</view> | |||
<view class="detail_box"> | |||
<view style="width: 50%;"> | |||
<image src="/image/icon/clock_icon.png" style="width: 15px;height: 15px;border-radius:5px;margin-right: 5px;"></image> | |||
<text>{{item.applyDate}}</text> | |||
</view> | |||
<view style="width: 50%;"> | |||
<image src="/image/icon/clock_red_icon.png" style="width: 15px;height: 15px;border-radius:5px;margin-right: 5px;"></image> | |||
<text>{{item.applyDate}}</text> | |||
</view> | |||
</view> | |||
</view> | |||
<view style="width:30%;flex:3;"> | |||
<view style="text-align: right;"> | |||
<text style="color:red;line-height: 50px;">¥{{item.expenditureAmount}}</text> | |||
</view> | |||
<view style="text-align: right;" bindtap="toPay"> | |||
<button wx-if="{{item.paymentState==1}}" type="primary" size="mini" style="border-radius: 15px;" >待支付</button> | |||
<button wx-if="{{item.paymentState==3}}" type="primary" size="mini" style="border-radius: 15px;">银行受理</button> | |||
<button wx-if="{{item.paymentState==4}}" type="warn" size="mini" style="border-radius: 15px;">支付失败</button> | |||
<button wx-if="{{item.paymentState==5}}" type="primary" size="mini" style="border-radius: 15px;">部分失败</button> | |||
</view> | |||
</view> | |||
</view> | |||
<view slot="left" class="moreBox" > | |||
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(165,165,165,0.2);" data-data="{{item}}" data-index="{{index}}" bindtap="scrap"> | |||
<view> | |||
<image src="../../image/icon/scrap_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image> | |||
</view> | |||
<view> | |||
<text style="color:#A5A5A5">报废</text> | |||
</view> | |||
</view> | |||
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(238,95,0,0.2);" data-data="{{item}}" data-index="{{index}}" bindtap="sell"> | |||
<view> | |||
<image src="../../image/icon/sell_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image> | |||
</view> | |||
<view> | |||
<text style="color: rgb(238,95,0);">出售</text> | |||
</view> | |||
</view> | |||
</view> | |||
<view slot="right" class="deleteBox"> | |||
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(255,0,0,0.2);" data-id="{{item.id}}" data-index="{{index}}" bindtap="delete"> | |||
<view> | |||
<image src="../../image/apply/icon_delete.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image> | |||
</view> | |||
<view> | |||
<text style="color:red">删除</text> | |||
</view> | |||
</view> | |||
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(98,173,102,0.2);" data-id="{{item.id}}" data-index="{{index}}" bindtap="upload"> | |||
<view> | |||
<image src="../../image/icon/upload_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image> | |||
</view> | |||
<view> | |||
<text style="color: #62AD66;">附件</text> | |||
</view> | |||
</view> | |||
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(239,135,7,0.2);" data-id="{{item.id}}" data-index="{{index}}" bindtap="change"> | |||
<view> | |||
<image src="../../image/icon/relevance_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image> | |||
</view> | |||
<view> | |||
<text style="color: rgb(239,135,7);">变更</text> | |||
</view> | |||
</view> | |||
</view> | |||
</van-swipe-cell> | |||
</scroll-view> | |||
<van-action-sheet show="{{showUpload}}" title="附件" bind:close="closeBox"> | |||
<scroll-view scroll-y="true" style="height: 600rpx;" bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll" scroll-top="0"> | |||
<view class="fj-box"> | |||
<view class="fj-li" wx:for="{{fileList}}" wx:key="index" wx:for-item="item" > | |||
<view> | |||
<text>{{item.dictLabel}}</text> | |||
</view> | |||
<view class="img_box"> | |||
<view class="img_li"> | |||
<van-upload file-list="{{ item.list }}" bind:after-read="afterRead" bind:delete="deleteImg" bind:click-preview="lookDown" data-idx="{{index}}"> | |||
</van-upload> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</scroll-view> | |||
</van-action-sheet> | |||
<modal hidden="{{!showPopup}}" title="是否删除?" confirm-text="是" cancel-text="否" bindcancel="cancelTem" bindconfirm="confirmTem"> | |||
</modal> | |||
<modal hidden="{{!showPopupDel}}" title="是否删除?" confirm-text="是" cancel-text="否" bindcancel="cancelTemDel" bindconfirm="confirmTemDel"> | |||
</modal> |
@@ -0,0 +1,285 @@ | |||
/* pages/paymentManager/paymentManager.wxss */ | |||
.van-search__content { | |||
border: 1px solid #5CAE77!important; | |||
background: #fff!important; | |||
} | |||
van-search { | |||
flex: 0.8; | |||
} | |||
.search_box{ | |||
display: flex; | |||
} | |||
.add_btn{ | |||
flex: 0.2; | |||
padding: var(--search-padding,10px 12px); | |||
padding-left: 0; | |||
} | |||
.add_btn text{ | |||
background-color: #62AD66; | |||
display: block; | |||
height: 100%; | |||
text-align: center; | |||
line-height: 36px; | |||
color: #fff; | |||
border-radius: 36px; | |||
box-shadow: 0px 5px 5px #ddd; | |||
} | |||
text{display: block;} | |||
.work_plan{ | |||
padding: 40rpx 32.5rpx 30rpx; | |||
display: flex; | |||
} | |||
.work_plan .menu_item{ | |||
background-color: #fff; | |||
box-shadow: 2px 5px 5px #ddd; | |||
border-radius: 60rpx; | |||
text-align: center; | |||
position: relative; | |||
margin-right: 20px; | |||
padding: 8px 10px; | |||
} | |||
.work_plan .menu_item.active{ | |||
background-color: #2C8E68; | |||
color: #fff; | |||
} | |||
.work_plan .menu_item .remind{ | |||
height: 30rpx; | |||
background: #e90101; | |||
color: #fff; | |||
font-size: 26rpx; | |||
position: absolute; | |||
line-height: 30rpx; | |||
padding:0 10rpx; | |||
border-radius: 25px; | |||
top: -10rpx; | |||
right: -10rpx; | |||
} | |||
.work_plan .more{ | |||
flex: 1; | |||
text-align: center; | |||
line-height: 60rpx; | |||
font-size: 36rpx; | |||
color: #31936c; | |||
} | |||
.deleteBox{ | |||
width: 130px; | |||
text-align: center; | |||
height: 100%; | |||
background: #F6F6F6; | |||
align-items: center; | |||
display: flex; | |||
} | |||
.moreBox{ | |||
width: 90px; | |||
text-align: center; | |||
height: 100%; | |||
background: #F6F6F6; | |||
align-items: center; | |||
display: flex; | |||
} | |||
.workflow .workflow_list{ | |||
height: 150rpx; | |||
background-color: #fff; | |||
border-radius: 24rpx; | |||
box-shadow:0rpx 0rpx 10rpx rgba(0,0,0,.1); | |||
margin-bottom: 20rpx; | |||
padding:15rpx 25rpx 10rpx 35rpx; | |||
} | |||
.workflow .workflow_list .process_intro{ | |||
display: flex; | |||
height: 62rpx; | |||
align-items: center; | |||
} | |||
.workflow .process_intro .name{ | |||
width: 390rpx; | |||
font-size: 34rpx; | |||
margin-right: 30rpx; | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
} | |||
.workflow .process_intro .name .name_tit{ | |||
width: 290rpx; | |||
overflow: hidden; | |||
text-overflow: ellipsis; | |||
white-space: nowrap; | |||
} | |||
.van-swipe-cell { | |||
width: 94%; | |||
background: #fff; | |||
border-radius: 10px; | |||
box-shadow: 2px 5px 5px #ddd; | |||
margin: 0 auto; | |||
margin-bottom: 15px; | |||
} | |||
.li{ | |||
width: 100%; | |||
padding: 14px; | |||
display: flex; | |||
} | |||
.tit_box{ | |||
display: flex; | |||
} | |||
.detail_box{ | |||
margin-top: 10px; | |||
display: flex; | |||
justify-content: space-between; | |||
} | |||
.li view text{ | |||
/* margin-top: 15px; */ | |||
} | |||
.li .detail_box view{ | |||
display: flex; | |||
align-items: center; | |||
} | |||
.li .detail_box view text{ | |||
color: #666666; | |||
font-size: 12px; | |||
} | |||
.li view text:nth-child(1){ | |||
margin-top: 0px; | |||
} | |||
.li .fksr{ | |||
display: flex; | |||
align-items: center; | |||
margin-top: 15px; | |||
color: #2C8E68; | |||
font-size: 16px; | |||
} | |||
.li .wtj{ | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
padding: 3px 8px; | |||
border-radius: 5px; | |||
font-size: 14px; | |||
} | |||
.no{ | |||
background-color:#fbe3e3; | |||
color: #e90000; | |||
} | |||
.white{ | |||
background-color:#feeadc; | |||
color: #fc9a55; | |||
} | |||
.yes{ | |||
background-color:#ddeee3; | |||
color: #5cae77; | |||
} | |||
.other{ | |||
background-color:#f0f1f6; | |||
color: #878787; | |||
} | |||
.li .tit{ | |||
font-size: 16px; | |||
color: #444444; | |||
line-height: 14px; | |||
display: -webkit-box; | |||
-webkit-box-orient: vertical; | |||
-webkit-line-clamp: 1; | |||
word-break: break-all; | |||
overflow: hidden; | |||
} | |||
.li .fj_name{ | |||
font-size: 14px; | |||
color: #B3DB62; | |||
line-height: 25px; | |||
} | |||
.li .time{ | |||
font-size: 14px; | |||
color: #9B9CAA; | |||
} | |||
.li .money{ | |||
font-size: 18px; | |||
color: #5CAE77; | |||
} | |||
.van-checkbox__label { | |||
display: flex; | |||
justify-content: space-between; | |||
width: 100%; | |||
} | |||
.van-checkbox__icon-wrap { | |||
border-radius: 5px; | |||
} | |||
.van-checkbox__icon { | |||
border-radius: 5px; | |||
border: 2px solid #2C8E68!important; | |||
background-color: rgba(44, 142, 104, 0.2); | |||
} | |||
.bottom{ | |||
width: 100%; | |||
margin: 0 auto; | |||
text-align: center; | |||
padding: 15px 0; | |||
display: flex; | |||
position: fixed; | |||
bottom: 0%; | |||
background: #fff; | |||
box-shadow: 0 0 5px #ddd; | |||
} | |||
.bottom view { | |||
width: 47%; | |||
margin: 0 auto; | |||
border-radius: 30px; | |||
display: inline-block; | |||
} | |||
.bottom .btn2{ | |||
border: 1px solid transparent; | |||
padding: 10px 0px; | |||
background-image: linear-gradient(to right, #2C8E68, #5CAE77); | |||
color: #fff; | |||
} | |||
.downView{ | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
padding: 0 20px; | |||
border: 1px solid #5CAE77; | |||
border-radius: 50px; | |||
background: #fff; | |||
margin-left: auto; | |||
} | |||
.downView image{ | |||
width: 10px; | |||
height: 8px; | |||
margin-left: 10px; | |||
} | |||
.fj-box text{ | |||
background-color: #5CAE77; | |||
color: #ffffff; | |||
text-align: center; | |||
border-radius: 5px; | |||
white-space:pre-wrap; | |||
padding: 5rpx 8rpx; | |||
width: 50rpx; | |||
margin: 0px 14px; | |||
font-size: 24rpx; | |||
} | |||
.fj-li{ | |||
margin-top: 20px; | |||
display: flex; | |||
/* flex-wrap: wrap; */ | |||
} | |||
.fj-li .img_li{ | |||
width: 100%; | |||
height: 18.5vw; | |||
} | |||
.fj-li .img_add{ | |||
overflow: hidden; | |||
} | |||
.van-icon-description{ | |||
font-size: 60px; | |||
} | |||
.van-dropdown-menu { | |||
width:100%; | |||
margin-bottom: 15px; | |||
} |
@@ -354,6 +354,10 @@ const URL_GET_UPDATERSALE = `${URL_PREFIX}/asset/permanent/updateSale/`; | |||
//作废固定资产 | |||
const URL_GET_UPDATESCRAP = `${URL_PREFIX}/asset/permanent/updateScrap/`; | |||
//查询支付管理列表 | |||
const URL_GET_TRANSFERPAYLIST = `${URL_PREFIX}/yinnong/transfer/payList/`; | |||
/****************接口地址end****************/ | |||
export { | |||
@@ -485,5 +489,6 @@ export { | |||
URL_POST_UPDATEDEPRECIATIONVALUE, | |||
URL_POST_UPDATERESIDUALSRATE, | |||
URL_GET_UPDATERSALE, | |||
URL_GET_UPDATESCRAP | |||
URL_GET_UPDATESCRAP, | |||
URL_GET_TRANSFERPAYLIST | |||
} |