# Conflicts: # pages/paymentManager/toPay/toPay.js # pages/paymentManager/toPay/toPay.json # pages/paymentManager/toPay/toPay.wxml # pages/paymentManager/toPay/toPay.wxssrongxin_dev
| @@ -36,6 +36,11 @@ | |||||
| "pages/finance/finance", | "pages/finance/finance", | ||||
| "pages/Bookkeeping/seeBook/seeBook", | "pages/Bookkeeping/seeBook/seeBook", | ||||
| "pages/Bookkeeping/seeBookZC/seeBookZC", | "pages/Bookkeeping/seeBookZC/seeBookZC", | ||||
| "pages/pay/detail", | |||||
| "pages/pay/payee/payee", | |||||
| "pages/apply/paymentTemplate/add/upLoad/upLoad", | |||||
| "pages/apply/paymentTemplate/add/upError/upError", | |||||
| "pages/apply/paymentTemplate/add/payeeList/payee", | |||||
| "pages/contractAssets/fixedAssets", | "pages/contractAssets/fixedAssets", | ||||
| "pages/fixedAssets/change/change", | "pages/fixedAssets/change/change", | ||||
| "pages/paymentManager/paymentManager", | "pages/paymentManager/paymentManager", | ||||
| @@ -59,6 +59,7 @@ contact-button { | |||||
| position: absolute; | position: absolute; | ||||
| left: 3%; | left: 3%; | ||||
| width: 35px; | width: 35px; | ||||
| height: 20px; | |||||
| z-index: 9; | z-index: 9; | ||||
| } | } | ||||
| .ns text{ | .ns text{ | ||||
| @@ -61,22 +61,20 @@ | |||||
| <van-swipe-cell right-width="{{ 130 }}" class="workflow" wx:for="{{flowListZC}}" wx:key="index" disabled="{{item.checkedStatusText == '待审核' || item.checkedStatusText == '已审核'}}"> | <van-swipe-cell right-width="{{ 130 }}" class="workflow" wx:for="{{flowListZC}}" wx:key="index" disabled="{{item.checkedStatusText == '待审核' || item.checkedStatusText == '已审核'}}"> | ||||
| <view class="li" data-id="{{item.id}}" bindtap="{{item.checkedStatusText == '待审核' || item.checkedStatusText == '已审核'?'goSeeZC':''}}"> | <view class="li" data-id="{{item.id}}" bindtap="{{item.checkedStatusText == '待审核' || item.checkedStatusText == '已审核'?'goSeeZC':''}}"> | ||||
| <van-checkbox name="{{item.id}}" shape="square" disabled="{{item.checkedStatusText == '待审核' || item.checkedStatusText == '已审核'}}" checked-color="#2C8E68" style="width: 100%;"> | <van-checkbox name="{{item.id}}" shape="square" disabled="{{item.checkedStatusText == '待审核' || item.checkedStatusText == '已审核'}}" checked-color="#2C8E68" style="width: 100%;"> | ||||
| <view style="width: 35%;"> | |||||
| <view style="display: flex;justify-content: space-between;"> | |||||
| <text class="tit">{{item.accountSummary}}</text> | <text class="tit">{{item.accountSummary}}</text> | ||||
| <text class="fj_name">附件{{item.enclosureCount}}</text> | |||||
| <text class="time">{{item.accountDate}}</text> | |||||
| </view> | |||||
| <view style="display: flex;margin-top: 15px;justify-content: space-between;"> | |||||
| <view class="fksr"> | <view class="fksr"> | ||||
| <image src="/image/icon/inCome.png" style="width: 16px;height: 14px;margin-right: 5px;"></image> | <image src="/image/icon/inCome.png" style="width: 16px;height: 14px;margin-right: 5px;"></image> | ||||
| {{item.expenditureTypeText}} | {{item.expenditureTypeText}} | ||||
| </view> | </view> | ||||
| </view> | |||||
| <view> | |||||
| <text class="fj_name">附件{{item.enclosureCount}}</text> | |||||
| <text class="time">{{item.accountDate}}</text> | |||||
| </view> | |||||
| <view style="width: 30%;"> | |||||
| <view class="wtj {{item.checkedStatusText == '未提交' ? 'no':item.checkedStatusText == '待审核' ? 'white':item.checkedStatusText == '已审核' ? 'yes':item.checkedStatusText == '已挂起' ? 'other':''}}"> | |||||
| <!-- <view class="wtj {{item.checkedStatusText == '未提交' ? 'no':item.checkedStatusText == '待审核' ? 'white':item.checkedStatusText == '已审核' ? 'yes':item.checkedStatusText == '已挂起' ? 'other':''}}"> | |||||
| <image src="{{item.checkedStatusText == '未提交' ? '/image/icon/icon_no.png':item.checkedStatusText == '待审核' ? '/image/icon/icon_white.png':item.checkedStatusText == '已审核' ? '/image/icon/icon_yes.png':item.checkedStatusText == '已挂起' ? '/image/icon/icon_other.png':''}}" style="width: 12px;height: 12px;margin-right: 5px;"></image> | <image src="{{item.checkedStatusText == '未提交' ? '/image/icon/icon_no.png':item.checkedStatusText == '待审核' ? '/image/icon/icon_white.png':item.checkedStatusText == '已审核' ? '/image/icon/icon_yes.png':item.checkedStatusText == '已挂起' ? '/image/icon/icon_other.png':''}}" style="width: 12px;height: 12px;margin-right: 5px;"></image> | ||||
| {{item.checkedStatusText}} | {{item.checkedStatusText}} | ||||
| </view> | |||||
| </view> --> | |||||
| <text class="money">¥{{item.daiAmount}}</text> | <text class="money">¥{{item.daiAmount}}</text> | ||||
| </view> | </view> | ||||
| </van-checkbox> | </van-checkbox> | ||||
| @@ -128,6 +128,7 @@ text{display: block;} | |||||
| word-break: break-all; | word-break: break-all; | ||||
| overflow: hidden; | overflow: hidden; | ||||
| width: 50%; | width: 50%; | ||||
| font-size: 16px; | |||||
| } | } | ||||
| .li .fj_name{ | .li .fj_name{ | ||||
| font-size: 14px; | font-size: 14px; | ||||
| @@ -61,6 +61,7 @@ Page({ | |||||
| SJimage:[], | SJimage:[], | ||||
| FPimage:[], | FPimage:[], | ||||
| QTimage:[], | QTimage:[], | ||||
| activeName:0, | |||||
| showTitle:true, | showTitle:true, | ||||
| collapseDis:false, | collapseDis:false, | ||||
| capitalExpenditureType:'1',//资金支出类别 | capitalExpenditureType:'1',//资金支出类别 | ||||
| @@ -714,6 +715,12 @@ Page({ | |||||
| activeNames: event.detail, | activeNames: event.detail, | ||||
| }); | }); | ||||
| }, | }, | ||||
| onChangePayee(event) { | |||||
| console.log(event); | |||||
| this.setData({ | |||||
| ["form.transfers["+event.currentTarget.dataset.index+"].activeName"]:event.detail | |||||
| }); | |||||
| }, | |||||
| /** | /** | ||||
| * 生命周期函数--监听页面初次渲染完成 | * 生命周期函数--监听页面初次渲染完成 | ||||
| */ | */ | ||||
| @@ -950,6 +957,9 @@ Page({ | |||||
| UTIL.showToastNoneIcon('请先选择付款方!'); | UTIL.showToastNoneIcon('请先选择付款方!'); | ||||
| return; | return; | ||||
| } | } | ||||
| if(this.data.form.transfers[event.currentTarget.dataset.index].payeeList.length>1){ | |||||
| return; | |||||
| } | |||||
| if(event.currentTarget.dataset.accounttype == null ){ | if(event.currentTarget.dataset.accounttype == null ){ | ||||
| event.currentTarget.dataset.accounttype = '' | event.currentTarget.dataset.accounttype = '' | ||||
| } | } | ||||
| @@ -958,6 +968,11 @@ Page({ | |||||
| url: '/pages/payee/index?transferType='+event.currentTarget.dataset.transfertype+'&money='+this.data.form.transfers[event.currentTarget.dataset.index].expenditureAmount + '&index='+event.currentTarget.dataset.index, | url: '/pages/payee/index?transferType='+event.currentTarget.dataset.transfertype+'&money='+this.data.form.transfers[event.currentTarget.dataset.index].expenditureAmount + '&index='+event.currentTarget.dataset.index, | ||||
| }) | }) | ||||
| }, | }, | ||||
| goPayee(event){ | |||||
| wx.navigateTo({ | |||||
| url: 'payeeList/payee?options='+JSON.stringify(event.currentTarget.dataset.option) | |||||
| }) | |||||
| }, | |||||
| onChange(event){ | onChange(event){ | ||||
| console.log(event); | console.log(event); | ||||
| this.setData({ | this.setData({ | ||||
| @@ -1479,6 +1494,7 @@ Page({ | |||||
| SJimage:[], | SJimage:[], | ||||
| FPimage:[], | FPimage:[], | ||||
| QTimage:[], | QTimage:[], | ||||
| activeName:0, | |||||
| cashForm:{ | cashForm:{ | ||||
| payee:'', | payee:'', | ||||
| phone:'', | phone:'', | ||||
| @@ -1692,6 +1708,22 @@ Page({ | |||||
| }, | }, | ||||
| uploadFile(e){ | uploadFile(e){ | ||||
| var that = this; | var that = this; | ||||
| if(e.currentTarget.dataset.payer == null || e.currentTarget.dataset.payer == ''){ | |||||
| UTIL.showToastNoneIcon('请先选择付款方!'); | |||||
| return; | |||||
| } | |||||
| console.log(e); | |||||
| let moneyParents = e.currentTarget.dataset.totalamount == ''?'0.00':e.currentTarget.dataset.totalamount; | |||||
| let moneyChildren = e.currentTarget.dataset.expenditureamount == ''?'0.00':e.currentTarget.dataset.expenditureamount | |||||
| let totalAmount = parseFloat(moneyParents) - parseFloat(moneyChildren); | |||||
| console.log(moneyParents); | |||||
| console.log(moneyChildren); | |||||
| wx.navigateTo({ | |||||
| url: 'upLoad/upLoad?bankType='+e.currentTarget.dataset.banktype+'&&index='+e.currentTarget.dataset.index+'&&totalAmount='+totalAmount | |||||
| }) | |||||
| return; | |||||
| wx.chooseMessageFile({ | wx.chooseMessageFile({ | ||||
| count: 1, | count: 1, | ||||
| type: 'file', | type: 'file', | ||||
| @@ -222,15 +222,13 @@ | |||||
| </view> | </view> | ||||
| <text class="title">收款方信息</text> | |||||
| <!-- <view bindtap="uploadFile"> | |||||
| <image src="/image/apply/icon_exel.png" style="width: 25px;height: 25px;"></image> | |||||
| <text>批量上传</text> | |||||
| <view class="payee_box"> | |||||
| <text class="title">收款方信息</text> | |||||
| <view data-index="{{index}}" data-payer="{{form.transfers[index].payer}}" data-isPeers="{{ form.transfers[index].isPeers }}" data-bankType="{{ form.transfers[index].bankType }}" data-expenditureAmount="{{form.transfers[index].expenditureAmount}}" data-accountType="{{ form.transfers[index].bankAccountType }}" data-totalAmount="{{form.approvalItemTemplate.totalAmount}}" bindtap="uploadFile"> | |||||
| <image src="/image/apply/icon_exel.png" style="width: 15px;height: 15px;"></image> | |||||
| <text>批量上传</text> | |||||
| </view> | |||||
| </view> | </view> | ||||
| <view bindtap="downLoad"> | |||||
| <image src="/image/apply/icon_exel.png" style="width: 25px;height: 25px;"></image> | |||||
| <text>模板下载</text> | |||||
| </view> --> | |||||
| <view class="center-box"> | <view class="center-box"> | ||||
| <block wx:if="{{form.transfers[index].transferType == 12}}"> | <block wx:if="{{form.transfers[index].transferType == 12}}"> | ||||
| <view class="main-box table-box" wx:for="{{form.transfers[index].payeeList}}" wx:for-index="childrenIndex" wx:key="payeeId"> | <view class="main-box table-box" wx:for="{{form.transfers[index].payeeList}}" wx:for-index="childrenIndex" wx:key="payeeId"> | ||||
| @@ -258,7 +256,8 @@ | |||||
| </view> | </view> | ||||
| </block> | </block> | ||||
| <block wx:else> | <block wx:else> | ||||
| <view class="main-box table-box" wx:for="{{form.transfers[index].payeeList}}" wx:for-index="childrenIndex" wx:key="payeeId"> | |||||
| <view class="main-box table-box" wx:for="{{form.transfers[index].payeeList}}" wx:if="{{form.transfers[index].payeeList.length < 2}}" wx:for-index="childrenIndex" wx:key="payeeId"> | |||||
| <van-field required readonly value="{{ form.transfers[index].payeeList[childrenIndex].payee }}" placeholder="请选择收款方" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down" bindtap="goPayeeList" data-payer="{{form.transfers[index].payer}}" data-index="{{index}}" data-isPeers="{{ form.transfers[index].isPeers }}" data-bankType="{{ form.transfers[index].bankType }}" data-accountType="{{ form.transfers[index].bankAccountType }}" data-transferType="{{ form.transfers[index].transferType }}"> | <van-field required readonly value="{{ form.transfers[index].payeeList[childrenIndex].payee }}" placeholder="请选择收款方" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down" bindtap="goPayeeList" data-payer="{{form.transfers[index].payer}}" data-index="{{index}}" data-isPeers="{{ form.transfers[index].isPeers }}" data-bankType="{{ form.transfers[index].bankType }}" data-accountType="{{ form.transfers[index].bankAccountType }}" data-transferType="{{ form.transfers[index].transferType }}"> | ||||
| <view slot="label" style="color: var(--field-label-color,#646566);"> | <view slot="label" style="color: var(--field-label-color,#646566);"> | ||||
| 收款方<van-tag plain type="danger" color="#5CAE77" round style="margin-left:10px;">选择</van-tag> | 收款方<van-tag plain type="danger" color="#5CAE77" round style="margin-left:10px;">选择</van-tag> | ||||
| @@ -267,6 +266,33 @@ | |||||
| <van-field required readonly label="收款账号" value="{{ form.transfers[index].payeeList[childrenIndex].payeeAccount }}" placeholder="请输入收款账户" border="{{ false }}" bind:change="onChange" input-align="right"/> | <van-field required readonly label="收款账号" value="{{ form.transfers[index].payeeList[childrenIndex].payeeAccount }}" placeholder="请输入收款账户" border="{{ false }}" bind:change="onChange" input-align="right"/> | ||||
| <van-field required readonly label="开户银行" value="{{ form.transfers[index].payeeList[childrenIndex].bankDeposit }}" placeholder="请输入开户银行" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down"/> | <van-field required readonly label="开户银行" value="{{ form.transfers[index].payeeList[childrenIndex].bankDeposit }}" placeholder="请输入开户银行" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down"/> | ||||
| </view> | </view> | ||||
| <view class="main-box table-box payeeList" wx:if="{{form.transfers[index].payeeList.length > 1}}"> | |||||
| <van-collapse accordion value="{{ form.transfers[index].activeName }}" data-index="{{index}}" bind:change="onChangePayee"> | |||||
| <van-collapse-item title="{{ form.transfers[index].payeeList[childrenIndex].payee }}" value="¥{{ form.transfers[index].payeeList[childrenIndex].incomeAmount }}" name="{{childrenIndex}}" wx:for="{{form.transfers[index].payeeList}}" wx:if="{{childrenIndex<10}}" wx:for-index="childrenIndex" wx:key="payeeId"> | |||||
| <van-field required readonly border="{{ false }}" input-align="right" is-link arrow-direction ="down" > | |||||
| <view slot="label" style="color: var(--field-label-color,#646566);"> | |||||
| {{ form.transfers[index].payeeList[childrenIndex].payee }}<van-tag plain type="danger" color="#5CAE77" round style="margin-left:10px;">收款人</van-tag> | |||||
| </view> | |||||
| </van-field> | |||||
| <van-field required readonly label="收款账号" value="{{ form.transfers[index].payeeList[childrenIndex].payeeAccount }}" border="{{ false }}" input-align="right"/> | |||||
| <van-field required readonly label="开户银行" value="{{ form.transfers[index].payeeList[childrenIndex].bankDeposit }}" border="{{ false }}" input-align="right"/> | |||||
| <van-field required readonly label="收入金额" value="{{ form.transfers[index].payeeList[childrenIndex].incomeAmount }}" border="{{ false }}" input-align="right"/> | |||||
| <van-field required readonly label="所属银行" value="{{ form.transfers[index].payeeList[childrenIndex].bankTypeText }}" border="{{ false }}" input-align="right"/> | |||||
| <!-- <van-field required readonly label="转账状态" value="{{ form.transfers[index].payeeList[childrenIndex].transferStatusText }}" border="{{ false }}" input-align="right"/> | |||||
| <van-field required readonly label="交易结果描述" value="{{ form.transfers[index].payeeList[childrenIndex].causeFailure }}" border="{{ false }}" input-align="right"/> --> | |||||
| </van-collapse-item> | |||||
| </van-collapse> | |||||
| <text wx:if="{{form.transfers[index].payeeList.length>10}}" style="text-align: center;color: #2C8E68;padding-top: 10px;" data-option="{{form.transfers[index].payeeList}}" bindtap="goPayee">查看更多</text> | |||||
| <!-- | |||||
| <van-field required readonly label="{{ form.transfers[index].payeeList[childrenIndex].payee }}" value="¥{{ form.transfers[index].payeeList[childrenIndex].incomeAmount }}" wx:for="{{form.transfers[index].payeeList}}" wx:for-index="childrenIndex" wx:key="payeeId" is-link placeholder="请输入收款方" border="{{ false }}" bind:change="onChange" input-align="right" input-class="aaa" /> --> | |||||
| </view> | |||||
| </block> | </block> | ||||
| </view> | </view> | ||||
| @@ -469,3 +469,41 @@ text{display: block;} | |||||
| .van-field__control { | .van-field__control { | ||||
| color: var(--field-label-color,#646566)!important; | color: var(--field-label-color,#646566)!important; | ||||
| } | } | ||||
| .payee_box{ | |||||
| display: flex; | |||||
| justify-content: space-between; | |||||
| align-items: center; | |||||
| } | |||||
| .payee_box view{ | |||||
| display: flex; | |||||
| justify-content: space-between; | |||||
| align-items: center; | |||||
| padding: 10px calc(3% + 20px); | |||||
| } | |||||
| .payee_box view text{ | |||||
| margin-left: 5px; | |||||
| color: #2C8E68; | |||||
| } | |||||
| .aaa{ | |||||
| color: red; | |||||
| } | |||||
| .payeeList { | |||||
| padding: 10px 20px!important; | |||||
| } | |||||
| .payeeList .van-collapse-item { | |||||
| margin-top: 0; | |||||
| } | |||||
| .payeeList .van-collapse .van-cell { | |||||
| padding: 10px 0!important; | |||||
| } | |||||
| .payeeList van-field van-cell .van-cell{ | |||||
| margin-bottom: 0; | |||||
| } | |||||
| .payeeList .van-cell__value { | |||||
| color: #E90000; | |||||
| } | |||||
| .payeeList .van-cell__title{ | |||||
| flex-shrink: 0; | |||||
| max-width: inherit; | |||||
| } | |||||
| @@ -0,0 +1,85 @@ | |||||
| // pages/pay/payee/payee.js | |||||
| import * as UTIL from '../../../../../utils/util.js'; | |||||
| import * as API from '../../../../../utils/API.js'; | |||||
| const app = getApp(); | |||||
| Page({ | |||||
| /** | |||||
| * 页面的初始数据 | |||||
| */ | |||||
| data: { | |||||
| isIPX: app.globalData.isIPX, | |||||
| activeName:'', | |||||
| value:'123', | |||||
| list:{} | |||||
| }, | |||||
| onChange(event) { | |||||
| this.setData({ | |||||
| activeName: event.detail, | |||||
| }); | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面加载 | |||||
| */ | |||||
| onLoad(options) { | |||||
| console.log(JSON.parse(options.options)); | |||||
| this.setData({ | |||||
| list: JSON.parse(options.options), | |||||
| }); | |||||
| }, | |||||
| back:function(){ | |||||
| wx.navigateBack({ | |||||
| delta: 1 | |||||
| }) | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面初次渲染完成 | |||||
| */ | |||||
| onReady() { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面显示 | |||||
| */ | |||||
| onShow() { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面隐藏 | |||||
| */ | |||||
| onHide() { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面卸载 | |||||
| */ | |||||
| onUnload() { | |||||
| }, | |||||
| /** | |||||
| * 页面相关事件处理函数--监听用户下拉动作 | |||||
| */ | |||||
| onPullDownRefresh() { | |||||
| }, | |||||
| /** | |||||
| * 页面上拉触底事件的处理函数 | |||||
| */ | |||||
| onReachBottom() { | |||||
| }, | |||||
| /** | |||||
| * 用户点击右上角分享 | |||||
| */ | |||||
| onShareAppMessage() { | |||||
| } | |||||
| }) | |||||
| @@ -0,0 +1,14 @@ | |||||
| { | |||||
| "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-collapse": "@vant/weapp/collapse/index", | |||||
| "van-tag": "@vant/weapp/tag/index", | |||||
| "van-collapse-item": "@vant/weapp/collapse-item/index" | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,37 @@ | |||||
| <!--pages/pay/payee/payee.wxml--> | |||||
| <view class="ns" style="height:{{isIPX?'88px':'64px'}};"> | |||||
| <image src="/image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};" mode="widthFix" bindtap="back"></image> | |||||
| <text style="top:{{isIPX?'54px':'30px'}};">收款方列表</text> | |||||
| </view> | |||||
| <!-- <view class="search_box" style="margin-top:{{isIPX?'100px':'75px'}};"> | |||||
| <van-search | |||||
| value="{{ value }}" | |||||
| shape="round" | |||||
| background="transparent" | |||||
| placeholder="请输入收款方" | |||||
| clearable | |||||
| bind:change="goSearch" | |||||
| /> | |||||
| </view> --> | |||||
| <view class="main" style="margin-top:{{isIPX?'100px':'75px'}};"> | |||||
| <van-collapse accordion value="{{ activeName }}" bind:change="onChange" custom-class="list"> | |||||
| <van-collapse-item title="{{ item.payee }}" name="{{index}}" wx:for="{{list}}" wx:key="index"> | |||||
| <view slot="value"> | |||||
| <text class="money">¥{{ item.incomeAmount }}</text> | |||||
| </view> | |||||
| <view class="detailBox"> | |||||
| <van-cell border="{{ false }}" > | |||||
| <view slot="title"> | |||||
| {{ item.payee }}<van-tag plain type="danger" color="#5CAE77" round style="margin-left:10px;">收款方</van-tag> | |||||
| </view> | |||||
| </van-cell> | |||||
| <van-cell title="收款账户" value="{{ item.payeeAccount }}" border="{{ false }}" /> | |||||
| <van-cell title="开户银行" value="{{ item.bankDeposit }}" border="{{ false }}" /> | |||||
| <van-cell title="收入金额" value="{{ item.incomeAmount }}" border="{{ false }}" /> | |||||
| <van-cell title="所属银行" value="{{ item.bankTypeText }}" border="{{ false }}" /> | |||||
| <!-- <van-cell title="转账状态" value="6217002190007972186" border="{{ false }}" /> | |||||
| <van-cell title="交易结果" value="6217002190007972186" border="{{ false }}" /> --> | |||||
| </view> | |||||
| </van-collapse-item> | |||||
| </van-collapse> | |||||
| </view> | |||||
| @@ -0,0 +1,47 @@ | |||||
| /* pages/pay/payee/payee.wxss */ | |||||
| .main { | |||||
| padding:0 2.5%; | |||||
| } | |||||
| .main .van-cell{ | |||||
| background-color: #F4F4F4!important; | |||||
| } | |||||
| .main .van-collapse-item__content{ | |||||
| background-color: #F4F4F4!important; | |||||
| } | |||||
| .main .detailBox .van-cell{ | |||||
| padding: 0!important; | |||||
| margin-bottom: 15px; | |||||
| } | |||||
| .van-cell__title{ | |||||
| color: #969799; | |||||
| } | |||||
| .van-search__content { | |||||
| border: 1px solid #5CAE77!important; | |||||
| background: transparent!important; | |||||
| } | |||||
| van-search { | |||||
| flex: 0.7; | |||||
| } | |||||
| .search_box{ | |||||
| display: flex; | |||||
| align-items: center; | |||||
| } | |||||
| .add_btn{ | |||||
| flex: 0.3; | |||||
| 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; | |||||
| } | |||||
| .money{ | |||||
| color: #E90000; | |||||
| display: inline-block; | |||||
| } | |||||
| @@ -0,0 +1,80 @@ | |||||
| // pages/apply/paymentTemplate/add/upError/upError.js | |||||
| import * as UTIL from '../../../../../utils/util.js'; | |||||
| import * as API from '../../../../../utils/API.js'; | |||||
| const app = getApp(); | |||||
| Page({ | |||||
| /** | |||||
| * 页面的初始数据 | |||||
| */ | |||||
| data: { | |||||
| isIPX: app.globalData.isIPX, | |||||
| listNum:0, | |||||
| list:{} | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面加载 | |||||
| */ | |||||
| onLoad(options) { | |||||
| var that = this ; | |||||
| console.log(JSON.parse(options.options)); | |||||
| that.setData({ | |||||
| list:JSON.parse(options.options), | |||||
| listNum:JSON.parse(options.options).length | |||||
| }) | |||||
| }, | |||||
| back:function(){ | |||||
| wx.navigateBack({ | |||||
| delta: 1 | |||||
| }) | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面初次渲染完成 | |||||
| */ | |||||
| onReady() { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面显示 | |||||
| */ | |||||
| onShow() { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面隐藏 | |||||
| */ | |||||
| onHide() { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面卸载 | |||||
| */ | |||||
| onUnload() { | |||||
| }, | |||||
| /** | |||||
| * 页面相关事件处理函数--监听用户下拉动作 | |||||
| */ | |||||
| onPullDownRefresh() { | |||||
| }, | |||||
| /** | |||||
| * 页面上拉触底事件的处理函数 | |||||
| */ | |||||
| onReachBottom() { | |||||
| }, | |||||
| /** | |||||
| * 用户点击右上角分享 | |||||
| */ | |||||
| onShareAppMessage() { | |||||
| } | |||||
| }) | |||||
| @@ -0,0 +1,3 @@ | |||||
| { | |||||
| "usingComponents": {} | |||||
| } | |||||
| @@ -0,0 +1,30 @@ | |||||
| <!--pages/apply/paymentTemplate/add/upError/upError.wxml--> | |||||
| <view class="ns" style="height:{{isIPX?'88px':'64px'}};"> | |||||
| <image src="/image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};" mode="widthFix" bindtap="back"></image> | |||||
| <text style="top:{{isIPX?'54px':'30px'}};">规范检查</text> | |||||
| </view> | |||||
| <view class="top_tit" style="margin-top:{{isIPX?'100px':'75px'}};"> | |||||
| 异常收款方共<text>{{listNum}}</text>条,请修改原始表格,详情如下 | |||||
| </view> | |||||
| <view class="main-box" wx:for="{{list}}" wx:key="index"> | |||||
| <view class="main_tit"> | |||||
| <image src="/image/apply/icon_error.png" style="width: 15px;height:15px;" mode="widthFix"></image> | |||||
| <icon></icon> | |||||
| <text class="tit_num">第{{item.id}}行</text> | |||||
| <text>{{item.payee}}</text> | |||||
| </view> | |||||
| <view class="main_bank"> | |||||
| <text>{{item.payeeAccount}}</text> | |||||
| <text class="bank_type">{{item.accountType == 1 ? '公户':'私户'}}</text> | |||||
| </view> | |||||
| <view class="main_money"> | |||||
| <text>{{item.payeePaymentLines}}</text> | |||||
| <text class="money"><text class="icon_money">¥</text>{{item.incomeAmount}}</text> | |||||
| </view> | |||||
| <view class="main_text"> | |||||
| <image src="/image/apply/icon_text.png" style="width: 20px;height:15px;" mode="widthFix"></image> | |||||
| <text class="text_tit">{{item.remark}}</text> | |||||
| </view> | |||||
| </view> | |||||
| @@ -0,0 +1,72 @@ | |||||
| /* pages/apply/paymentTemplate/add/upError/upError.wxss */ | |||||
| .top_tit{ | |||||
| color: #878787; | |||||
| text-align: center; | |||||
| margin-bottom: 10px; | |||||
| } | |||||
| .top_tit text{ | |||||
| display: inline-block; | |||||
| background-color: #E90000; | |||||
| padding: 5px 10px; | |||||
| color: #ffffff; | |||||
| border-radius: 8px; | |||||
| margin: 0 5px; | |||||
| } | |||||
| .main-box{ | |||||
| background: #ffffff; | |||||
| padding: 15px 20px; | |||||
| width: 94%; | |||||
| margin: 0px auto 20px; | |||||
| border-radius: 10px; | |||||
| box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.16); | |||||
| } | |||||
| .main_tit { | |||||
| display: flex; | |||||
| align-items: center; | |||||
| margin-bottom: 10px; | |||||
| } | |||||
| .main_bank { | |||||
| display: flex; | |||||
| justify-content: space-between; | |||||
| align-items: center; | |||||
| padding-left: 20px; | |||||
| margin-bottom: 10px; | |||||
| } | |||||
| .main_money { | |||||
| display: flex; | |||||
| justify-content: space-between; | |||||
| padding-left: 20px; | |||||
| margin-bottom: 10px; | |||||
| } | |||||
| .main_bank text:nth-child(1),.main_money text:nth-child(1){ | |||||
| color: #878787; | |||||
| } | |||||
| .main_text { | |||||
| display: flex; | |||||
| } | |||||
| .tit_num{ | |||||
| margin: 0 25px 0 5px; | |||||
| color: #E90000; | |||||
| } | |||||
| .text_tit{ | |||||
| margin-left: 5px; | |||||
| color: #FC9A55; | |||||
| } | |||||
| .bank_type{ | |||||
| display: inline-block; | |||||
| background-color: rgb(91, 174, 119,0.2); | |||||
| padding: 2px 5px; | |||||
| color: #5CAE77; | |||||
| border-radius: 5px; | |||||
| } | |||||
| .money{ | |||||
| font-size: 18px; | |||||
| } | |||||
| .icon_money{ | |||||
| font-size: 12px; | |||||
| color: #000000!important; | |||||
| } | |||||
| @@ -0,0 +1,247 @@ | |||||
| // pages/apply/paymentTemplate/add/upLoad/upLoad.js | |||||
| import * as UTIL from '../../../../../utils/util.js'; | |||||
| import * as API from '../../../../../utils/API.js'; | |||||
| const app = getApp(); | |||||
| Page({ | |||||
| /** | |||||
| * 页面的初始数据 | |||||
| */ | |||||
| data: { | |||||
| isIPX: app.globalData.isIPX, | |||||
| exlName:'文件名', | |||||
| showUp:true, | |||||
| upText:'导入中...', | |||||
| bankType:'', | |||||
| bankAccountType:'1', | |||||
| isPeers:'Y', | |||||
| showBox:true, | |||||
| totalAmount:0 | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面加载 | |||||
| */ | |||||
| onLoad(options) { | |||||
| console.log(options); | |||||
| //所属银行 | |||||
| UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'bank_type', {method:'GET'}, { | |||||
| success: (res) => { | |||||
| this.setData({ | |||||
| bankTypeOptions:res.data | |||||
| }); | |||||
| } | |||||
| }) | |||||
| //转账状态 | |||||
| UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'transfer_status', {method:'GET'}, { | |||||
| success: (res) => { | |||||
| this.setData({ | |||||
| transferStatusOptions:res.data | |||||
| }); | |||||
| } | |||||
| }) | |||||
| this.setData({ | |||||
| bankType:options.bankType, | |||||
| index:options.index, | |||||
| totalAmount:options.totalAmount | |||||
| }) | |||||
| if(options.bankType != '1'){ | |||||
| this.setData({ | |||||
| showBox:false, | |||||
| bankAccountType:'' | |||||
| }) | |||||
| }else{ | |||||
| this.setData({ | |||||
| showBox:true, | |||||
| isPeers:'' | |||||
| }) | |||||
| } | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面初次渲染完成 | |||||
| */ | |||||
| onReady() { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面显示 | |||||
| */ | |||||
| onShow() { | |||||
| }, | |||||
| uploadFile(e){ | |||||
| var that = this; | |||||
| wx.chooseMessageFile({ | |||||
| count: 1, | |||||
| type: 'file', | |||||
| success (res) { | |||||
| console.log(res); | |||||
| that .setData({ | |||||
| exlName:res.tempFiles[0].name, | |||||
| showUp:false | |||||
| }) | |||||
| // tempFilePath可以作为 img 标签的 src 属性显示图片 | |||||
| const tempFilePaths = res.tempFiles | |||||
| wx.uploadFile({ | |||||
| url: API.URL_GET_UPLOADFILE, | |||||
| filePath: tempFilePaths[0].path, | |||||
| name: 'file', | |||||
| header: { | |||||
| "Content-Type": "multipart/form-data",//记得设置 | |||||
| "chartset":"utf-8", | |||||
| 'Authorization':'Bearer '+getApp().globalData.userInfo.token | |||||
| }, | |||||
| formData:{ | |||||
| bankType:'2', | |||||
| accountType:that.data.bankAccountType, | |||||
| isPeers:that.data.isPeers | |||||
| }, | |||||
| success (response){ | |||||
| console.log(response); | |||||
| let list = JSON.parse(response.data); | |||||
| console.log(list); | |||||
| if(list.code == 301){ | |||||
| that.setData({ | |||||
| upText:'导入失败' | |||||
| }) | |||||
| wx.navigateTo({ | |||||
| url: '../upError/upError?options='+JSON.stringify(list.rows), | |||||
| }) | |||||
| }else if(list.code == 200){ | |||||
| that.setData({ | |||||
| upText:'导入成功', | |||||
| payeeList:list.rows | |||||
| }) | |||||
| }else{ | |||||
| UTIL.showToastNoneIcon('导入失败,未知错误'+list.code); | |||||
| that.setData({ | |||||
| upText:'导入失败' | |||||
| }) | |||||
| } | |||||
| // that.setData({ | |||||
| // ['form.transfers[0].payeeList']:list.rows | |||||
| // }) | |||||
| }, | |||||
| fail(res){ | |||||
| } | |||||
| }) | |||||
| } | |||||
| }) | |||||
| }, | |||||
| goSubmit(){ | |||||
| var that = this ; | |||||
| if(this.data.upText != '导入成功'){ | |||||
| UTIL.showToastNoneIcon('请根据提示重新导入收款方文件'); | |||||
| return; | |||||
| } | |||||
| let moneyCount = 0; | |||||
| for(let i = 0 ; i < that.data.payeeList.length ; i++){ | |||||
| that.data.payeeList[i].bankTypeText = UTIL.getTransform(that.data.payeeList[i].bankType,that.data.bankTypeOptions); | |||||
| that.data.payeeList[i].transferStatusText = UTIL.getTransform(that.data.payeeList[i].transferStatus,that.data.transferStatusOptions); | |||||
| moneyCount += parseFloat(that.data.payeeList[i].incomeAmount); | |||||
| } | |||||
| console.log(that.data.totalAmount); | |||||
| let totalAmount = parseFloat(that.data.totalAmount)+parseFloat(moneyCount); | |||||
| console.log(totalAmount); | |||||
| console.log(moneyCount); | |||||
| let pages = getCurrentPages(); | |||||
| let currentPage = null; //当前页面 | |||||
| let prevPage = null; //上一个页面 | |||||
| currentPage = pages[pages.length - 1]; //获取当前页面,将其赋值 | |||||
| prevPage = pages[pages.length - 2]; //获取上一个页面,将其赋值 | |||||
| if (prevPage) { | |||||
| prevPage.setData({ | |||||
| ["form.transfers["+that.data.index+"].payeeList"]: that.data.payeeList,//将想要传的信息赋值给上一个页面data中的值 | |||||
| ["form.transfers["+that.data.index+"].expenditureAmount"]: moneyCount.toFixed(2), | |||||
| ["form.approvalItemTemplate.totalAmount"]:totalAmount.toFixed(2) | |||||
| }) | |||||
| that.back() | |||||
| } | |||||
| }, | |||||
| deleteimg(){ | |||||
| var that = this; | |||||
| that.setData({ | |||||
| upText:'导入中...', | |||||
| exlName:'文件名', | |||||
| showUp:true, | |||||
| }) | |||||
| }, | |||||
| back:function(){ | |||||
| wx.navigateBack({ | |||||
| delta: 1 | |||||
| }) | |||||
| }, | |||||
| onChange(e){ | |||||
| this.setData({ | |||||
| bankAccountType:e.detail | |||||
| }) | |||||
| }, | |||||
| onChangePee(e){ | |||||
| this.setData({ | |||||
| isPeers:e.detail | |||||
| }) | |||||
| }, | |||||
| downLoadExl(){ | |||||
| UTIL.httpRequest(API.URL_GET_DOWNFILE, {method:'GET'}, { | |||||
| success: (res) => { | |||||
| console.log(res); | |||||
| let url = ' https://dazu.nongshen.net/api/common/download?fileName='+res.msg+'&delete=true' | |||||
| wx.setClipboardData({ | |||||
| data: url, | |||||
| success (res) { | |||||
| wx.showModal({ | |||||
| title: '提示', | |||||
| content: '下载链接已复制,请使用手机自带浏览器访问下载', | |||||
| showCancel:false, | |||||
| success (res) { | |||||
| if (res.confirm) { | |||||
| console.log('用户点击确定') | |||||
| } else if (res.cancel) { | |||||
| console.log('用户点击取消') | |||||
| } | |||||
| } | |||||
| }) | |||||
| } | |||||
| }) | |||||
| } | |||||
| }) | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面隐藏 | |||||
| */ | |||||
| onHide() { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面卸载 | |||||
| */ | |||||
| onUnload() { | |||||
| }, | |||||
| /** | |||||
| * 页面相关事件处理函数--监听用户下拉动作 | |||||
| */ | |||||
| onPullDownRefresh() { | |||||
| }, | |||||
| /** | |||||
| * 页面上拉触底事件的处理函数 | |||||
| */ | |||||
| onReachBottom() { | |||||
| }, | |||||
| /** | |||||
| * 用户点击右上角分享 | |||||
| */ | |||||
| onShareAppMessage() { | |||||
| } | |||||
| }) | |||||
| @@ -0,0 +1,9 @@ | |||||
| { | |||||
| "usingComponents": { | |||||
| "van-radio": "@vant/weapp/radio/index", | |||||
| "van-radio-group": "@vant/weapp/radio-group/index", | |||||
| "van-cell": "@vant/weapp/cell/index", | |||||
| "van-icon": "@vant/weapp/icon/index", | |||||
| "van-cell-group": "@vant/weapp/cell-group/index" | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,98 @@ | |||||
| <!--pages/apply/paymentTemplate/add/upLoad/upLoad.wxml--> | |||||
| <view class="ns" style="height:{{isIPX?'88px':'64px'}};"> | |||||
| <image src="/image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};" mode="widthFix" bindtap="back"></image> | |||||
| <text style="top:{{isIPX?'54px':'30px'}};">收款方导入</text> | |||||
| </view> | |||||
| <view class="top_box" style="margin-top:{{isIPX?'100px':'75px'}};"> | |||||
| <text style="color: #878787;">下载导入模板,根据模板提示完善内容</text> | |||||
| <view class="upload_button" bindtap="downLoadExl"> | |||||
| <image src="/image/apply/icon_downLoad.png" style="width: 15px;height: 15px;margin-right: 5px;"></image> | |||||
| <text>下载模板</text> | |||||
| </view> | |||||
| <text style="color: #878787;">上传完善好的内容,支持上传文件为:xls、xlsx</text> | |||||
| </view> | |||||
| <view class="main-box" wx:if="{{showBox}}"> | |||||
| <van-cell title="收款账户类型" center border="{{false}}"> | |||||
| <view style="float: right;"> | |||||
| <van-radio-group | |||||
| value="{{ bankAccountType }}" | |||||
| bind:change="onChange" | |||||
| direction="horizontal" | |||||
| > | |||||
| <van-radio name="1" checked-color="#2C8E68">公户</van-radio> | |||||
| <van-radio name="2" checked-color="#2C8E68">私户</van-radio> | |||||
| </van-radio-group> | |||||
| </view> | |||||
| </van-cell> | |||||
| </view> | |||||
| <view class="main-box" wx:if="{{!showBox}}"> | |||||
| <van-cell title="是否同行" center border="{{false}}"> | |||||
| <view style="float: right;"> | |||||
| <van-radio-group | |||||
| value="{{ isPeers }}" | |||||
| bind:change="onChangePee" | |||||
| direction="horizontal" | |||||
| > | |||||
| <van-radio name="Y" checked-color="#2C8E68">是</van-radio> | |||||
| <van-radio name="N" checked-color="#2C8E68">否</van-radio> | |||||
| </van-radio-group> | |||||
| </view> | |||||
| </van-cell> | |||||
| </view> | |||||
| <view class="upload_box" wx:if="{{showUp}}"> | |||||
| <image src="/image/apply/icon_exl.png" style="width: 40px;height: 40px;"></image> | |||||
| <view class="upload_take_button" bindtap="uploadFile">选择文件</view> | |||||
| <text style="color: #878787;">支持上传文件为:xls、xlsx</text> | |||||
| </view> | |||||
| <view class="upload_box" wx:if="{{!showUp}}" style="padding-bottom: 0;"> | |||||
| <image src="/image/apply/icon_yes.png" style="width: 40px;height: 40px;"></image> | |||||
| <view class="exlList"> | |||||
| <view style="position: relative;"> | |||||
| <image src="/image/apply/icon_exl.png" style="width: 40px;height: 40px;"></image> | |||||
| <van-icon name="/image/apply/img_delete.png" size="15px" bindtap="deleteimg" style="position: absolute;top: 0;left: 25px;" /> | |||||
| <text>{{exlName}}</text> | |||||
| </view> | |||||
| <text style="color:{{upText == '导入失败' ? '#E90000' : '#2C8E68'}} ;flex-shrink: 0;">{{upText}}</text> | |||||
| </view> | |||||
| </view> | |||||
| <scroll-view scroll-y class="bottom_text" style="height: {{scrollHeight}}px;"> | |||||
| <text>提示:</text> | |||||
| <text>1、仅允许导入“xls”或“xlsx”格式文件,且表头模板不能修改!</text> | |||||
| <text>2、账户类型:公户、私户。</text> | |||||
| <text>3、当系统中存在表格中的收款方时,则根据收款账户自动为导入的收款方的其他信息赋值。</text> | |||||
| <text>4、导入前请在"开户银行"模块提前维护,系统根据联行号自动为收款方赋值所属银行和开户行信息,联行号分情况必填,填写规则如下:</text> | |||||
| <text>一、中国银行</text> | |||||
| <text>1、导入收款方的账户类型需要与页面选择的相同。</text> | |||||
| <text>2、联行号为必填项。</text> | |||||
| <text>二、农商行(山东省)</text> | |||||
| <text>1、导入收款方的所属银行需要根据页面选择的是否同行相匹配。</text> | |||||
| <text>2、跨行转账暂时只支持单笔转账。</text> | |||||
| <text>3、单笔跨行、批量跨行转账时联行号为必填项。</text> | |||||
| <text>三、农业银行</text> | |||||
| <text>1、导入收款方的所属银行需要根据页面选择的是否同行相匹配。</text> | |||||
| <text>2、联行号为必填项。</text> | |||||
| <text>四、建设银行</text> | |||||
| <text>1、导入收款方的所属银行需要根据页面选择的是否同行相匹配。</text> | |||||
| <text>2、单笔跨行、批量跨行转账时联行号为必填项。</text> | |||||
| <text>五、农商行(重庆)</text> | |||||
| <text>1、导入收款方最多可以有500条。</text> | |||||
| <text>2、联行号为必填项。</text> | |||||
| </scroll-view> | |||||
| <view class="bottom"> | |||||
| <!-- <view class="btn1" data-type="3" bindtap="goSubmit">提交复核</view> --> | |||||
| <view class="btn1" bindtap="back">关闭</view> | |||||
| <view class="btn2" data-type="0" bindtap="goSubmit" hover-class="btnView">确认</view> | |||||
| </view> | |||||
| @@ -0,0 +1,102 @@ | |||||
| /* pages/apply/paymentTemplate/add/upLoad/upLoad.wxss */ | |||||
| text{display: block;line-height: 1;} | |||||
| .upload_button{ | |||||
| display: flex; | |||||
| justify-content: center; | |||||
| width: 120px; | |||||
| background-color: #5CAE77; | |||||
| color: #ffffff; | |||||
| align-items: center; | |||||
| padding: .5rem 0; | |||||
| border-radius: 5px; | |||||
| margin: 20px 0; | |||||
| } | |||||
| .upload_take_button{ | |||||
| width: 120px; | |||||
| background-color: #5CAE77; | |||||
| color: #ffffff; | |||||
| padding: .5rem 0; | |||||
| border-radius: 5px; | |||||
| text-align: center; | |||||
| margin: 15px auto; | |||||
| } | |||||
| .top_box{ | |||||
| padding: 0 7%; | |||||
| } | |||||
| .upload_box{ | |||||
| width: 94%; | |||||
| background-color: #ffffff; | |||||
| margin: 20px auto; | |||||
| text-align: center; | |||||
| padding: 20px 0; | |||||
| border-radius: 15px; | |||||
| border: 1px dashed #5CAE77; | |||||
| } | |||||
| .main-box{ | |||||
| background: #ffffff; | |||||
| padding: 15px 20px; | |||||
| width: 94%; | |||||
| margin: 20px auto; | |||||
| border-radius: 10px; | |||||
| box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.16); | |||||
| } | |||||
| .van-cell{ | |||||
| padding: 0!important; | |||||
| } | |||||
| .bottom_text{ | |||||
| width: 86%; | |||||
| margin: 0 auto; | |||||
| } | |||||
| .bottom_text text{ | |||||
| line-height: 24px; | |||||
| color: #E90000; | |||||
| } | |||||
| .bottom{ | |||||
| width: 100%; | |||||
| margin: 0 auto; | |||||
| text-align: center; | |||||
| display: flex; | |||||
| z-index: 999999; | |||||
| position: fixed; | |||||
| bottom: 0; | |||||
| padding: 15px 8% 18px; | |||||
| background-color: #fff; | |||||
| } | |||||
| .bottom view { | |||||
| width: 47%; | |||||
| margin: 0 auto; | |||||
| border-radius: 30px; | |||||
| display: inline-block; | |||||
| } | |||||
| .bottom .btn1{ | |||||
| border: 1px solid #2C8E68; | |||||
| padding: 8px 0px; | |||||
| color: #2C8E68; | |||||
| } | |||||
| .bottom .btn2{ | |||||
| border: 1px solid transparent; | |||||
| padding: 8px 0px; | |||||
| background-image: linear-gradient(to right, #2C8E68, #5CAE77); | |||||
| margin-left: 6%; | |||||
| color: #fff; | |||||
| } | |||||
| .exlList{ | |||||
| display: flex; | |||||
| justify-content: space-between; | |||||
| align-items: center; | |||||
| border-top: 1px solid #DCDCDC; | |||||
| padding: 10px 15px; | |||||
| margin-top: 20px; | |||||
| } | |||||
| .exlList view{ | |||||
| display: flex; | |||||
| align-items: center; | |||||
| } | |||||
| .exlList view text{ | |||||
| margin-left: 10px; | |||||
| text-align: left; | |||||
| } | |||||
| @@ -0,0 +1,477 @@ | |||||
| // pages/handle/expenditureAudit/expenditureAudit.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, | |||||
| active:0, | |||||
| spsxOptions:[], | |||||
| paymentPatternOptions:[], | |||||
| nickName:'', | |||||
| comment:'', | |||||
| activeNames: 0, | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面加载 | |||||
| */ | |||||
| onLoad: function (options) { | |||||
| var that = this; | |||||
| that.setData({ | |||||
| taskId:options.taskId, | |||||
| pageType:options.type | |||||
| }) | |||||
| wx.showLoading({ | |||||
| title: '正在加载模板', | |||||
| mask:true | |||||
| }) | |||||
| //所属银行 | |||||
| UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'bank_type', {method:'GET'}, { | |||||
| success: (res) => { | |||||
| this.setData({ | |||||
| bankTypeOptions:res.data | |||||
| }); | |||||
| } | |||||
| }) | |||||
| // 资金支出类别字典查询 | |||||
| UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'capital_expenditure_type', {method:'GET'}, { | |||||
| success: (res) => { | |||||
| that.setData({ | |||||
| capitalExpenditureTypeOptions:res.data, | |||||
| }) | |||||
| } | |||||
| }) | |||||
| // 付款方式类型字典查询 | |||||
| UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'transfer_type', {method:'GET'}, { | |||||
| success: (res) => { | |||||
| that.setData({ | |||||
| transferTypeOptions:res.data, | |||||
| }) | |||||
| } | |||||
| }) | |||||
| // 项目工程列表 | |||||
| UTIL.httpRequest(API.URL_GET_GETPROJECTLIST , {method:'GET'}, { | |||||
| success: (res) => { | |||||
| that.setData({ | |||||
| projectOptions:res.rows, | |||||
| }) | |||||
| } | |||||
| }) | |||||
| // 工程款类型字典查询 | |||||
| UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'project_fund_type', {method:'GET'}, { | |||||
| success: (res) => { | |||||
| that.setData({ | |||||
| projectFundTypeOptions:res.data, | |||||
| }) | |||||
| } | |||||
| }) | |||||
| // 支付方式 | |||||
| UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'yn_pay_type', {method:'GET'}, { | |||||
| success: (res) => { | |||||
| that.setData({ | |||||
| paymentPatternOptions:res.data, | |||||
| }) | |||||
| } | |||||
| }) | |||||
| // 转账状态 | |||||
| UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'transfer_status', {method:'GET'}, { | |||||
| success: (res) => { | |||||
| that.setData({ | |||||
| transferStatusOptions:res.data, | |||||
| }) | |||||
| } | |||||
| }) | |||||
| // 获取合同信息列表 | |||||
| UTIL.httpRequest(API.URL_GET_CONTRACTIONLIST , {method:'GET'}, { | |||||
| success: (res) => { | |||||
| that.setData({ | |||||
| contractionOptions:res.rows, | |||||
| }) | |||||
| } | |||||
| }) | |||||
| UTIL.httpRequest(API.URL_GET_GETINFO, {method:'GET'}, { | |||||
| success: (res) => { | |||||
| if (res.code == API.SUCCESS_CODE) { | |||||
| that.setData({ | |||||
| nickName:res.user.nickName | |||||
| }) | |||||
| } | |||||
| } | |||||
| }) | |||||
| setTimeout(function(){ | |||||
| UTIL.httpRequest(API.URL_GET_APPROVALITEMS+options.id, {method:'GET'}, { | |||||
| success: (res) => { | |||||
| if (res.code == API.SUCCESS_CODE) { | |||||
| console.log(that.data.capitalExpenditureTypeOptions); | |||||
| if(res.data.approvalItemTemplate == null){return;} | |||||
| res.data.approvalItemTemplate.totalAmount = parseFloat(res.data.approvalItemTemplate.totalAmount).toFixed(2) | |||||
| res.data.transfers = res.data.transfers.filter(function (e) { return e.id == options.ids; }); | |||||
| console.log(options.ids); | |||||
| console.log(res.data.transfers.filter(function (e) { return e.id == options.ids; })); | |||||
| res.data.transfers.forEach( (item,index) => { | |||||
| res.data.transfers[index].capitalExpenditureTypeText = UTIL.getTransform(item.capitalExpenditureType,that.data.capitalExpenditureTypeOptions); | |||||
| res.data.transfers[index].transferTypeText = UTIL.getTransform(item.transferType,that.data.transferTypeOptions); | |||||
| res.data.transfers[index].bankTypeText = UTIL.getTransform(item.bankType,that.data.bankTypeOptions); | |||||
| res.data.transfers[index].paymentPatternText = UTIL.getTransform(item.paymentPattern,that.data.paymentPatternOptions); | |||||
| res.data.transfers[index].num = UTIL.convertToChinaNum(index+1), | |||||
| res.data.transfers[index].expenditureAmount = parseFloat(res.data.transfers[index].expenditureAmount).toFixed(2) | |||||
| res.data.transfers[index].showTitle = false; | |||||
| res.data.transfers[index].activeName = ''; | |||||
| res.data.transfers[index].payeeList.forEach( (response,i) => { | |||||
| res.data.transfers[index].payeeList[i].bankTypeText = UTIL.getTransform(response.bankType,that.data.bankTypeOptions); | |||||
| res.data.transfers[index].payeeList[i].transferStatusText = UTIL.getTransform(response.transferStatus,that.data.transferStatusOptions); | |||||
| }) | |||||
| console.log(res.data.transfers[index].capitalExpenditureType); | |||||
| if(res.data.transfers[index].capitalExpenditureType == 2){ | |||||
| let prames = { | |||||
| outId:res.data.transfers[index].id, | |||||
| ynType: res.data.transfers[index].transferType=='1'||res.data.transfers[index].transferType=='2'||res.data.transfers[index].transferType=='4'?'1':'2' | |||||
| } | |||||
| // 工程项目查询 | |||||
| UTIL.httpRequest(API.URL_GET_GETPROJECTTO , prames, { | |||||
| success: (res) => { | |||||
| res.data.projectFundTypeText = UTIL.getTransform(res.data.projectFundType,that.data.projectFundTypeOptions); | |||||
| that.setData({ | |||||
| ["form.transfers["+index+"].projectForm"]:res.data, | |||||
| }) | |||||
| } | |||||
| }) | |||||
| } | |||||
| if(res.data.transfers[index].capitalExpenditureType == 4){ | |||||
| let prames = { | |||||
| transferId:res.data.transfers[index].id, | |||||
| } | |||||
| // 关联合同查询 | |||||
| UTIL.httpRequest(API.URL_GET_GETSELECTINFOBYOUTID , prames, { | |||||
| success: (res) => { | |||||
| that.setData({ | |||||
| ["form.transfers["+index+"].contractionForm"]:res.data, | |||||
| }) | |||||
| } | |||||
| }) | |||||
| } | |||||
| if(res.data.transfers[index].transferType == '12'){ | |||||
| var transferTimer = setTimeout(function(){ | |||||
| that.setData({ | |||||
| ["form.transfers["+index+"].moneyOrderForm"]:{ | |||||
| billPayUnit : res.data.transfers[index].payer, | |||||
| orderNum : res.data.transfers[index].payerAccount, | |||||
| id : res.data.transfers[index].cashierId, | |||||
| startTime : res.data.transfers[index].startTime, | |||||
| endTime : res.data.transfers[index].endTime, | |||||
| orderType : res.data.transfers[index].orderType, | |||||
| orderAmount:res.data.transfers[index].expenditureAmount | |||||
| }, | |||||
| ["form.transfers["+index+"].amountReadonly"]:true | |||||
| }) | |||||
| },1000) | |||||
| } | |||||
| UTIL.httpRequest( | |||||
| API.URL_GET_FINDLIST, | |||||
| { | |||||
| method:'GET', | |||||
| tableName:'t_yinnong_transfer', | |||||
| tableId:item.id, | |||||
| fileType:1 | |||||
| }, | |||||
| { | |||||
| success: (res) => { | |||||
| let list = []; | |||||
| res.data.forEach((item2,index2)=>{ | |||||
| list.push({ | |||||
| tempFilePath:URL_PREFIX+item2.fileUrl | |||||
| }) | |||||
| that.setData({ | |||||
| ["form.transfers["+index+"].SJimage"]:list, | |||||
| }); | |||||
| }) | |||||
| } | |||||
| }) | |||||
| //发票 | |||||
| UTIL.httpRequest( | |||||
| API.URL_GET_FINDLIST, | |||||
| { | |||||
| method:'GET', | |||||
| tableName:'t_yinnong_transfer', | |||||
| tableId:item.id, | |||||
| fileType:2 | |||||
| }, | |||||
| { | |||||
| success: (res) => { | |||||
| let list = []; | |||||
| res.data.forEach((item2,index2)=>{ | |||||
| list.push({ | |||||
| tempFilePath:URL_PREFIX+item2.fileUrl | |||||
| }) | |||||
| that.setData({ | |||||
| ["form.transfers["+index+"].FPimage"]:list, | |||||
| }); | |||||
| }) | |||||
| } | |||||
| }) | |||||
| //其他 | |||||
| UTIL.httpRequest( | |||||
| API.URL_GET_FINDLIST, | |||||
| { | |||||
| method:'GET', | |||||
| tableName:'t_yinnong_transfer', | |||||
| tableId:item.id, | |||||
| fileType:3 | |||||
| }, | |||||
| { | |||||
| success: (res) => { | |||||
| let list = []; | |||||
| res.data.forEach((item2,index2)=>{ | |||||
| list.push({ | |||||
| tempFilePath:URL_PREFIX+item2.fileUrl | |||||
| }) | |||||
| that.setData({ | |||||
| ["form.transfers["+index+"].QTimage"]:list, | |||||
| }); | |||||
| }) | |||||
| } | |||||
| }) | |||||
| }) | |||||
| that.setData({ | |||||
| form:res.data, | |||||
| activeNames:null | |||||
| }) | |||||
| wx.hideLoading(); | |||||
| } | |||||
| } | |||||
| }) | |||||
| // 查询审批事项流转进度 | |||||
| // UTIL.httpRequest(API.URL_GET_GETPROCESS+options.id , {method:'GET'}, { | |||||
| // success: (res) => { | |||||
| // console.log(res); | |||||
| // if(res.data.processSchedule != null){ | |||||
| // that.setData({spsxOptions:res.data.processSchedule.spsx}) | |||||
| // } | |||||
| // that.setData({instanceId:res.data.instanceId}) | |||||
| // if(options.business == 'xj'){ | |||||
| // console.log(that.data.instanceId) | |||||
| // // 查询现金审批事项流转进度 | |||||
| // UTIL.httpRequest(API.URL_GET_REVIEWPROCESS+that.data.instanceId , {method:'GET'}, { | |||||
| // success: (res) => { | |||||
| // console.log(res); | |||||
| // if(res.data.processSchedule.spsx){ | |||||
| // that.setData({spsxOptions:res.data.processSchedule.spsx}) | |||||
| // } | |||||
| // that.setData({instanceId:res.data.instanceId}) | |||||
| // } | |||||
| // }) | |||||
| // } | |||||
| // } | |||||
| // }) | |||||
| },1000) | |||||
| }, | |||||
| onChangePayee(event) { | |||||
| console.log(event); | |||||
| this.setData({ | |||||
| ["form.transfers["+event.currentTarget.dataset.index+"].activeName"]:event.detail | |||||
| }); | |||||
| }, | |||||
| goPayee(event){ | |||||
| wx.navigateTo({ | |||||
| url: 'payee/payee?options='+JSON.stringify(event.currentTarget.dataset.option) | |||||
| }) | |||||
| }, | |||||
| goDis(){ | |||||
| var that = this ; | |||||
| console.log() | |||||
| let data = { | |||||
| taskId:that.data.taskId, | |||||
| instanceId:that.data.instanceId, | |||||
| variables:JSON.stringify({ | |||||
| comment:that.data.comment == '' ? '驳回':that.data.comment, | |||||
| pass:false, | |||||
| }), | |||||
| method:'POST' | |||||
| }; | |||||
| UTIL.httpRequest(API.URL_GET_PROCESSCOMPLETE , data, { | |||||
| success: (res) => { | |||||
| console.log(res); | |||||
| if (res.code == API.SUCCESS_CODE) { | |||||
| wx.showToast({ | |||||
| title: '审批成功', | |||||
| icon: 'success', | |||||
| duration: 2000, | |||||
| complete(){ | |||||
| setTimeout(function(){ | |||||
| that.back(); | |||||
| },2000) | |||||
| } | |||||
| }) | |||||
| }else{ | |||||
| wx.showToast({ | |||||
| title: '操作失败', | |||||
| icon: 'error', | |||||
| duration: 2000 | |||||
| }) | |||||
| } | |||||
| } | |||||
| }) | |||||
| }, | |||||
| goAgree(){ | |||||
| var that = this ; | |||||
| let data = { | |||||
| taskId:that.data.taskId, | |||||
| instanceId:that.data.instanceId, | |||||
| variables:JSON.stringify({ | |||||
| "comment":that.data.comment == '' ? '同意':that.data.comment, | |||||
| "pass":true, | |||||
| }), | |||||
| method:'POST' | |||||
| }; | |||||
| UTIL.httpRequest(API.URL_GET_PROCESSCOMPLETE ,data, { | |||||
| success: (res) => { | |||||
| console.log(res); | |||||
| if (res.code == API.SUCCESS_CODE) { | |||||
| wx.showToast({ | |||||
| title: '审批成功', | |||||
| icon: 'success', | |||||
| duration: 2000, | |||||
| complete(){ | |||||
| setTimeout(function(){ | |||||
| that.back(); | |||||
| },2000) | |||||
| } | |||||
| }) | |||||
| }else{ | |||||
| wx.showToast({ | |||||
| title: '操作失败', | |||||
| icon: 'error', | |||||
| duration: 2000 | |||||
| }) | |||||
| } | |||||
| } | |||||
| }) | |||||
| }, | |||||
| commentInput(e){ | |||||
| console.log(e); | |||||
| var that = this; | |||||
| that.setData({ | |||||
| comment:e.detail.value | |||||
| }) | |||||
| }, | |||||
| onChangeBox(event) { | |||||
| console.log(event); | |||||
| this.setData({ | |||||
| activeNames: event.detail, | |||||
| }); | |||||
| }, | |||||
| onCloseSecond(e){ | |||||
| var that = this ; | |||||
| console.log(e); | |||||
| that.setData({ | |||||
| ["form.transfers["+e.detail+"].showTitle"]:false | |||||
| }) | |||||
| }, | |||||
| onOpen(e){ | |||||
| var that = this ; | |||||
| console.log(that.data.activeNames); | |||||
| console.log(e); | |||||
| for (let i = 0; i < this.data.form.transfers.length; i++) { | |||||
| const element = this.data.form.transfers[i]; | |||||
| this.setData({ | |||||
| ["form.transfers["+i+"].showTitle"] : false, | |||||
| }) | |||||
| } | |||||
| that.setData({ | |||||
| ["form.transfers["+e.detail+"].showTitle"]:true | |||||
| }) | |||||
| }, | |||||
| openPreview(e){ | |||||
| let array = []; | |||||
| console.log(e); | |||||
| e.currentTarget.dataset.option.forEach(item=>{ | |||||
| array.push(item.tempFilePath) | |||||
| }) | |||||
| console.log(array); | |||||
| wx.previewImage({ | |||||
| urls: array, | |||||
| showmenu:true, | |||||
| current:array[e.currentTarget.dataset.index] | |||||
| }) | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面初次渲染完成 | |||||
| */ | |||||
| onReady: function () { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面显示 | |||||
| */ | |||||
| onShow: function () { | |||||
| }, | |||||
| back:function(){ | |||||
| wx.navigateBack({ | |||||
| delta: 1 | |||||
| }) | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面隐藏 | |||||
| */ | |||||
| onHide: function () { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面卸载 | |||||
| */ | |||||
| onUnload: function () { | |||||
| }, | |||||
| /** | |||||
| * 页面相关事件处理函数--监听用户下拉动作 | |||||
| */ | |||||
| onPullDownRefresh: function () { | |||||
| }, | |||||
| /** | |||||
| * 页面上拉触底事件的处理函数 | |||||
| */ | |||||
| onReachBottom: function () { | |||||
| }, | |||||
| /** | |||||
| * 用户点击右上角分享 | |||||
| */ | |||||
| onShareAppMessage: function () { | |||||
| } | |||||
| }) | |||||
| @@ -0,0 +1,22 @@ | |||||
| { | |||||
| "navigationStyle": "custom", | |||||
| "usingComponents": { | |||||
| "van-row": "@vant/weapp/row/index", | |||||
| "van-col": "@vant/weapp/col/index", | |||||
| "van-cell": "@vant/weapp/cell/index", | |||||
| "van-cell-group": "@vant/weapp/cell-group/index", | |||||
| "van-tag": "@vant/weapp/tag/index", | |||||
| "van-icon": "@vant/weapp/icon/index", | |||||
| "van-steps": "@vant/weapp/steps/index", | |||||
| "van-button": "@vant/weapp/button/index", | |||||
| "van-radio": "@vant/weapp/radio/index", | |||||
| "van-radio-group": "@vant/weapp/radio-group/index", | |||||
| "van-field": "@vant/weapp/field/index", | |||||
| "van-popup": "@vant/weapp/popup/index", | |||||
| "van-picker": "@vant/weapp/picker/index", | |||||
| "van-calendar": "@vant/weapp/calendar/index", | |||||
| "van-dialog": "@vant/weapp/dialog/index", | |||||
| "van-collapse": "@vant/weapp/collapse/index", | |||||
| "van-collapse-item": "@vant/weapp/collapse-item/index" | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,233 @@ | |||||
| <!--pages/handle/expenditureAudit/expenditureAudit.wxml--> | |||||
| <view class="ns" style="height:{{isIPX?'88px':'64px'}};"> | |||||
| <image src="/image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};" mode="widthFix" bindtap="back"></image> | |||||
| <text style="top:{{isIPX?'54px':'30px'}};">支出申请审批</text> | |||||
| </view> | |||||
| <view class="pure_top" style="top:{{isIPX?'88px':'64px'}};"></view> | |||||
| <view class="main-box top-box topBox" style="margin-top:{{isIPX?'100px':'75px'}};"> | |||||
| <text class="box-title">审批事项</text> | |||||
| <van-field required readonly class="input_tittop" value="{{ form.approvalItemTemplate.approvalItems }}" placeholder="请输入审批事项" border="{{ false }}" /> | |||||
| <text>支出总金额</text> | |||||
| <view class="money_box">¥<input class="input_money" type="digit" disabled placeholder="总金额" placeholder-style="color:#E90000;" value="{{form.approvalItemTemplate.totalAmount}}"/></view> | |||||
| <text>提交单位:{{form.approvalItemTemplate.submitCompany}}</text> | |||||
| <text>提交日期:{{form.approvalItemTemplate.submitDate}}</text> | |||||
| <text>提<text style="margin-right:0.5rem;display: inline-block;"></text>交<text style="margin-right:0.5rem;display: inline-block;"></text>人:{{form.approvalItemTemplate.submitter}}</text> | |||||
| <text>联系电话:{{form.approvalItemTemplate.telephone}}</text> | |||||
| </view> | |||||
| <van-collapse accordion value="0" bind:change="onChangeBox" bind:open="onOpen" bind:close="onCloseSecond"> | |||||
| <van-collapse-item name="0" disabled="{{item.collapseDis}}" is-link="{{false}}" wx:for="{{form.transfers}}" wx:key="index"> | |||||
| <view slot="title" class="main-title">事项{{form.transfers[index].num}}</view> | |||||
| <view class="center"> | |||||
| <text class="title">基础信息</text> | |||||
| <view class="main-box table-box"> | |||||
| <!-- <van-field label="申请流水号" value="{{ form.approvalItemTemplate.telephone }}" placeholder="请输入申请流水号" border="{{ false }}" bind:change="onChange" input-align="right"/> --> | |||||
| <van-field required readonly label="支出金额" focus="{{form.transfers[index].expenditureAmountTirme}}" error="{{form.transfers[index].expenditureAmountTirme}}" type="digit" value="{{ form.transfers[index].expenditureAmount }}" placeholder="请输入支出金额" border="{{ false }}" data-formname="form.transfers[{{index}}].expenditureAmount" data-index="{{index}}" input-align="right" bind:change="onChangeMoney" bind:blur="errorJE"/> | |||||
| <!-- <van-field required label="收入金额" value="{{ form.transfers[index].payeeList[childrenIndex].incomeAmount }}" placeholder="请输入收入金额" border="{{ false }}" bind:change="onChangeMoney" input-align="right" data-formname="form.transfers[{{index}}].payeeList[{{childrenIndex}}]" data-index="{{index}}" data-childrenIndex="{{childrenIndex}}"/> --> | |||||
| <van-field required readonly label="支出原因" value="{{ form.transfers[index].remark }}" placeholder="请输入支出原因" border="{{ false }}" input-align="right" /> | |||||
| <van-field required label="支付方式" readonly value="{{ form.transfers[index].paymentPatternText }}" placeholder="请选择支付方式" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down" bindtap="openBox" data-name="form.transfers[{{index}}].showTransferType"/> | |||||
| <van-field required label="支出类别" readonly value="{{ form.transfers[index].capitalExpenditureTypeText }}" placeholder="请选择支出类别" border="{{ false }}" input-align="right" is-link arrow-direction ="down"/> | |||||
| </view> | |||||
| <block wx:if="{{form.transfers[index].capitalExpenditureType == 2}}"> | |||||
| <text class="title">关联项目</text> | |||||
| <view class="main-box table-box"> | |||||
| <van-field label="项目名称" readonly value="{{ form.transfers[index].projectForm.projectName }}" placeholder="请输入项目名称" border="{{ false }}" bind:change="onChange" input-align="right" is-link/> | |||||
| <van-field label="承建单位" readonly value="{{ form.transfers[index].projectForm.projectContractor }}" placeholder="请输入承建单位" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| <van-field label="合同价款(元)" readonly value="{{ form.transfers[index].projectForm.projectAmount }}" placeholder="请输入合同价款(元)" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| <van-field label="工程款类型" readonly value="{{ form.transfers[index].projectForm.projectFundTypeText }}" placeholder="请选择工程款类型" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down"/> | |||||
| <van-field label="工程发票号" value="{{ form.transfers[index].projectForm.projectBillNum }}" placeholder="请输入工程发票号" border="{{ false }}" data-value="form.transfers[{{index}}].projectForm.projectBillNum" bind:change="onChange" input-align="right"/> | |||||
| </view> | |||||
| </block> | |||||
| <block wx:if="{{form.transfers[index].capitalExpenditureType == 4}}"> | |||||
| <text class="title">关联合同</text> | |||||
| <view class="main-box table-box"> | |||||
| <van-popup show="{{form.transfers[index].showContraction}}" round position="bottom" bind:close="closeBox" data-name="form.transfers[{{index}}].showContraction"> | |||||
| <van-picker | |||||
| columns="{{contractionOptions}}" | |||||
| show-toolbar | |||||
| value-key="name" | |||||
| bind:cancel="closeBox" | |||||
| bind:confirm="onConfirmContraction" | |||||
| data-name="form.transfers[{{index}}].showContraction" | |||||
| data-value="form.transfers[{{index}}].contractionForm.name" | |||||
| /> | |||||
| </van-popup> | |||||
| <van-field label="合同名称" readonly value="{{ form.transfers[index].contractionForm.name }}" placeholder="请选择合同名称" border="{{ false }}" bind:change="onChange" input-align="right" is-link bindtap="openBox" data-name="form.transfers[{{index}}].showContraction"/> | |||||
| <van-field label="合同编码" value="{{ form.transfers[index].contractionForm.code }}" placeholder="请输入合同编码" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| <van-field label="合同价款(元)" readonly value="{{ form.transfers[index].contractionForm.totalAmount }}" placeholder="请输入合同价款(元)" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| </view> | |||||
| </block> | |||||
| <text class="title">付款方信息</text> | |||||
| <view class="main-box table-box"> | |||||
| <van-field required label="付款方式" readonly value="{{ form.transfers[index].transferTypeText }}" placeholder="请输入付款方式" border="{{ false }}" input-align="right" is-link arrow-direction ="down"/> | |||||
| <van-field required wx:if="{{form.transfers[index].transferType != 12}}" readonly value="{{ form.transfers[index].payer }}" placeholder="请选择付款方名称" border="{{ false }}" input-align="right" is-link arrow-direction ="down"> | |||||
| <view slot="label"> | |||||
| 付款方<van-tag plain type="danger" color="#5CAE77" round style="margin-left:10px;">选择</van-tag> | |||||
| </view> | |||||
| </van-field> | |||||
| <van-field readonly wx:if="{{form.transfers[index].transferType == 11}}" label="可用余额(元)" value="{{ form.transfers[index].payerAccount }}" placeholder="可用余额" border="{{ false }}" data-value="form.transfers[{{index}}].payerAccount" bind:change="onChange" input-align="right"/> | |||||
| <block wx:elif="{{form.transfers[index].transferType == 12}}"> | |||||
| <van-popup show="{{form.transfers[index].showMoneyOrder}}" round position="bottom" bind:close="closeBox" data-name="showMoneyOrder"> | |||||
| <van-picker | |||||
| columns="{{moneyOrderOptions}}" | |||||
| show-toolbar | |||||
| value-key="billPayUnit" | |||||
| bind:cancel="closeBox" | |||||
| bind:confirm="onConfirmMoneyOrder" | |||||
| data-name="form.transfers[{{index}}].showMoneyOrder" | |||||
| data-value="form.transfers[{{index}}]" | |||||
| data-index="{{index}}" | |||||
| /> | |||||
| </van-popup> | |||||
| <van-field readonly label="出票方" value="{{form.transfers[index].moneyOrderForm.billPayUnit }}" placeholder="请选择出票方" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down" data-name="form.transfers[{{index}}].showMoneyOrder"/> | |||||
| <van-field readonly label="汇票号码" value="{{ form.transfers[index].moneyOrderForm.orderNum }}" placeholder="汇票号码" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| <van-field readonly label="出票金额(元)" value="{{ form.transfers[index].moneyOrderForm.orderAmount }}" placeholder="出票金额(元)" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| <van-field readonly label="汇票类型" value="{{ form.transfers[index].moneyOrderForm.orderType }}" placeholder="汇票类型" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| <van-field readonly label="开票日" value="{{ form.transfers[index].moneyOrderForm.startTime }}" placeholder="开票日" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| <van-field readonly label="到期日" value="{{ form.transfers[index].moneyOrderForm.endTime }}" placeholder="到期日" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| </block> | |||||
| <block wx:else> | |||||
| <van-field required readonly label="付款账号" value="{{ form.transfers[index].payerAccount }}" placeholder="请输入付款方账号" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| <van-field required readonly label="所属银行" value="{{ form.transfers[index].bankTypeText }}" placeholder="请输入所属银行" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| </block> | |||||
| </view> | |||||
| <text class="title">收款方信息</text> | |||||
| <view class="center-box"> | |||||
| <block wx:if="{{form.transfers[index].transferType == 12}}"> | |||||
| <view class="main-box table-box" wx:for="{{form.transfers[index].payeeList}}" wx:for-index="childrenIndex" wx:key="payeeId"> | |||||
| <van-field required value="{{ form.transfers[index].payeeList[childrenIndex].payee }}" placeholder="请输入收款方" border="{{ false }}" bind:change="onChange" input-align="right" data-value="form.transfers[{{index}}].payeeList[{{childrenIndex}}].payee"> | |||||
| <view slot="label"> | |||||
| 收票方<van-tag plain type="danger" color="#5CAE77" round style="margin-left:10px;">输入</van-tag> | |||||
| </view> | |||||
| </van-field> | |||||
| <van-field required label=" 联系方式" value="{{ form.transfers[index].payeeList[childrenIndex].phone }}" placeholder="请输入联系方式" border="{{ false }}" bind:change="onChange" data-value="form.transfers[{{index}}].payeeList[{{childrenIndex}}].phone" input-align="right"/> | |||||
| <van-field required label="所属单位" value="{{ form.transfers[index].payeeList[childrenIndex].unit }}" placeholder="请输入所属单位" border="{{ false }}" bind:change="onChange" data-value="form.transfers[{{index}}].payeeList[{{childrenIndex}}].unit" input-align="right"/> | |||||
| <van-field required label="负责人全称" value="{{ form.transfers[index].payeeList[childrenIndex].leader }}" placeholder="请输入负责人全称" border="{{ false }}" bind:change="onChange" data-value="form.transfers[{{index}}].payeeList[{{childrenIndex}}].leader" input-align="right"/> | |||||
| <van-field required label="资金用途" value="{{ form.transfers[index].payeeList[childrenIndex].remark }}" placeholder="请输入资金用途" border="{{ false }}" bind:change="onChange" data-value="form.transfers[{{index}}].payeeList[{{childrenIndex}}].remark" input-align="right"/> | |||||
| </view> | |||||
| </block> | |||||
| <block wx:elif="{{form.transfers[index].transferType == 11}}"> | |||||
| <view class="main-box table-box" wx:for="{{form.transfers[index].payeeList}}" wx:for-index="childrenIndex" wx:key="payeeId"> | |||||
| <van-field required readonly value="{{ form.transfers[index].payeeList[childrenIndex].payee }}" placeholder="请输入收款方" border="{{ false }}" bind:change="onChange" input-align="right" data-value="form.transfers[{{index}}].payeeList[{{childrenIndex}}].payee"> | |||||
| <view slot="label"> | |||||
| 收款方<van-tag plain type="danger" color="#5CAE77" round style="margin-left:10px;">输入</van-tag> | |||||
| </view> | |||||
| </van-field> | |||||
| <van-field required readonly label=" 联系方式" value="{{ form.transfers[index].payeeList[childrenIndex].phone }}" placeholder="请输入联系方式" border="{{ false }}" bind:change="onChange" data-value="form.transfers[{{index}}].payeeList[{{childrenIndex}}].phone" input-align="right"/> | |||||
| <!-- <van-field required label="申请使用金额" value="{{ form.transfers[index].payeeList[childrenIndex].incomeAmount }}" placeholder="请输入申请使用金额" border="{{ false }}" bind:change="onChange" data-value="form.transfers[{{index}}].payeeList[{{childrenIndex}}].incomeAmount" input-align="right"/> --> | |||||
| <van-field required readonly label="资金用途" value="{{ form.transfers[index].payeeList[childrenIndex].remark }}" placeholder="请输入资金用途" border="{{ false }}" bind:change="onChange" data-value="form.transfers[{{index}}].payeeList[{{childrenIndex}}].remark" input-align="right"/> | |||||
| </view> | |||||
| </block> | |||||
| <block wx:else> | |||||
| <view class="main-box table-box" wx:for="{{form.transfers[index].payeeList}}" wx:for-index="childrenIndex" wx:key="payeeId" wx:if="{{form.transfers[index].payeeList.length < 2}}"> | |||||
| <van-field required readonly value="{{ form.transfers[index].payeeList[childrenIndex].payee }}" placeholder="请选择收款方" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down" bindtap="goPayeeList" data-payer="{{form.transfers[index].payer}}" data-index="{{index}}" data-isPeers="{{ form.transfers[index].isPeers }}" data-bankType="{{ form.transfers[index].bankType }}" data-accountType="{{ form.transfers[index].bankAccountType }}" data-transferType="{{ form.transfers[index].transferType }}"> | |||||
| <view slot="label"> | |||||
| 收款方<van-tag plain type="danger" color="#5CAE77" round style="margin-left:10px;">选择</van-tag> | |||||
| </view> | |||||
| </van-field> | |||||
| <van-field required readonly label="收款账号" value="{{ form.transfers[index].payeeList[childrenIndex].payeeAccount }}" placeholder="请输入收款账户" border="{{ false }}" bind:change="onChange" input-align="right"/> | |||||
| <van-field required readonly label="开户银行" value="{{ form.transfers[index].payeeList[childrenIndex].bankDeposit }}" placeholder="请输入开户银行" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down"/> | |||||
| </view> | |||||
| <view class="main-box table-box payeeList" wx:if="{{form.transfers[index].payeeList.length > 1}}"> | |||||
| <van-collapse accordion value="{{ form.transfers[index].activeName }}" data-index="{{index}}" bind:change="onChangePayee"> | |||||
| <van-collapse-item title="{{ form.transfers[index].payeeList[childrenIndex].payee }}" value="¥{{ form.transfers[index].payeeList[childrenIndex].incomeAmount }}" name="{{childrenIndex}}" wx:for="{{form.transfers[index].payeeList}}" wx:if="{{childrenIndex<10}}" wx:for-index="childrenIndex" wx:key="payeeId"> | |||||
| <van-field required readonly border="{{ false }}" input-align="right" is-link arrow-direction ="down" > | |||||
| <view slot="label" style="color: var(--field-label-color,#646566);"> | |||||
| {{ form.transfers[index].payeeList[childrenIndex].payee }}<van-tag plain type="danger" color="#5CAE77" round style="margin-left:10px;">收款人</van-tag> | |||||
| </view> | |||||
| </van-field> | |||||
| <van-field required readonly label="收款账号" value="{{ form.transfers[index].payeeList[childrenIndex].payeeAccount }}" border="{{ false }}" input-align="right"/> | |||||
| <van-field required readonly label="开户银行" value="{{ form.transfers[index].payeeList[childrenIndex].bankDeposit }}" border="{{ false }}" input-align="right"/> | |||||
| <van-field required readonly label="收入金额" value="{{ form.transfers[index].payeeList[childrenIndex].incomeAmount }}" border="{{ false }}" input-align="right"/> | |||||
| <van-field required readonly label="所属银行" value="{{ form.transfers[index].payeeList[childrenIndex].bankTypeText }}" border="{{ false }}" input-align="right"/> | |||||
| <van-field required readonly label="转账状态" value="{{ form.transfers[index].payeeList[childrenIndex].transferStatusText }}" border="{{ false }}" input-align="right"/> | |||||
| <van-field required readonly label="交易结果描述" value="{{ form.transfers[index].payeeList[childrenIndex].causeFailure }}" border="{{ false }}" input-align="right"/> | |||||
| </van-collapse-item> | |||||
| </van-collapse> | |||||
| <!-- wx:if="{{form.transfers[index].payeeList.length>10}}" --> | |||||
| <text style="text-align: center;color: #2C8E68;padding-top: 10px;" data-option="{{form.transfers[index].payeeList}}" bindtap="goPayee">查看更多</text> | |||||
| <!-- | |||||
| <van-field required readonly label="{{ form.transfers[index].payeeList[childrenIndex].payee }}" value="¥{{ form.transfers[index].payeeList[childrenIndex].incomeAmount }}" wx:for="{{form.transfers[index].payeeList}}" wx:for-index="childrenIndex" wx:key="payeeId" is-link placeholder="请输入收款方" border="{{ false }}" bind:change="onChange" input-align="right" input-class="aaa" /> --> | |||||
| </view> | |||||
| </block> | |||||
| </view> | |||||
| <view class="main-box"> | |||||
| <van-cell> | |||||
| <!-- <view slot="icon"> | |||||
| <van-icon class-prefix="my-icon" name="extra" /> | |||||
| </view> --> | |||||
| <view slot="title"> | |||||
| <view class="van-cell-text">附件<van-tag type="danger" style="margin-left: 10px;">可拍照</van-tag></view> | |||||
| </view> | |||||
| <view> | |||||
| <view class="van-cell-text">总数<van-tag round color="#5CAE77" plain style="margin-left: 10px;"> {{form.transfers[index].fileNum?form.transfers[index].fileNum:0}}张 </van-tag></view> | |||||
| </view> | |||||
| </van-cell> | |||||
| <view class="fj-box"> | |||||
| <view class="fj-li"> | |||||
| <view> | |||||
| <text>收\n据</text> | |||||
| </view> | |||||
| <view class="img_box"> | |||||
| <image wx:for="{{form.transfers[index].SJimage}}" wx:for-index="childrenIndex" src="{{item.tempFilePath}}" wx:key="childrenIndex" data-option="{{form.transfers[index].SJimage}}" data-index="{{childrenIndex}}" bindtap="openPreview"></image> | |||||
| </view> | |||||
| </view> | |||||
| <view class="fj-li"> | |||||
| <view> | |||||
| <text>发\n票</text> | |||||
| </view> | |||||
| <view class="img_box"> | |||||
| <image wx:for="{{form.transfers[index].FPimage}}" wx:for-index="childrenIndex" src="{{item.tempFilePath}}" data-option="{{form.transfers[index].FPimage}}" data-index="{{childrenIndex}}" bindtap="openPreview" wx:key="childrenIndex"></image> | |||||
| </view> | |||||
| </view> | |||||
| <view class="fj-li"> | |||||
| <view> | |||||
| <text>其\n他</text> | |||||
| </view> | |||||
| <view class="img_box"> | |||||
| <image wx:for="{{form.transfers[index].QTimage}}" wx:for-index="childrenIndex" src="{{item.tempFilePath}}" data-option="{{form.transfers[index].QTimage}}" data-index="{{childrenIndex}}" bindtap="openPreview" wx:key="childrenIndex"></image> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| </van-collapse-item> | |||||
| </van-collapse> | |||||
| <view class="bottom"> | |||||
| <view type="primary" class="btnAgree" bindtap="goAgree">去支付</view> | |||||
| </view> | |||||
| <!-- <view class="bottom" wx:if="{{pageType!='see'}}"> | |||||
| <button type="primary" plain class="btnOther" bindtap="goAgree">转办</button> | |||||
| </view> --> | |||||
| <view class="ipXbtn"></view> | |||||
| <wxs module="sub"> | |||||
| var times = function(time){ | |||||
| console.log(time) | |||||
| return time.substring(0,10); | |||||
| } | |||||
| module.exports.times = times; | |||||
| </wxs> | |||||
| @@ -0,0 +1,597 @@ | |||||
| /* pages/apply/paymentTemplate/add/add.wxss */ | |||||
| text{display: block;} | |||||
| .top{ | |||||
| height: 64px; | |||||
| width: 100%; | |||||
| position: fixed; | |||||
| z-index: 999; | |||||
| top:0px; | |||||
| } | |||||
| .top text{ | |||||
| position: relative; | |||||
| top: 30px; | |||||
| margin-right: 30px; | |||||
| display: block; | |||||
| color: #eee; | |||||
| text-align: center; | |||||
| width: 100%; | |||||
| font-size: 16px; | |||||
| } | |||||
| .input_tittop input{ | |||||
| border: 1px solid #DCDCDC; | |||||
| padding: 0px 10px; | |||||
| height: 32px; | |||||
| line-height: 32px; | |||||
| border-radius: 5px; | |||||
| width: 100%; | |||||
| } | |||||
| .error input{ | |||||
| border: 1px solid red!important; | |||||
| } | |||||
| .bgPage{ | |||||
| width: 140%; | |||||
| position:absolute; | |||||
| transform: translate(-15%, -50%); | |||||
| height: 300px; | |||||
| z-index: -1; | |||||
| } | |||||
| .center{ | |||||
| padding-bottom: 15px; | |||||
| background: #f2f2f2; | |||||
| } | |||||
| .main-title{ | |||||
| background-image: linear-gradient(to right, #2C8E68 , #B3DB62); | |||||
| color: #ffffff; | |||||
| font-size: 18px; | |||||
| padding: 10px 0; | |||||
| text-align: center; | |||||
| position: relative; | |||||
| } | |||||
| .main-box{ | |||||
| background: #ffffff; | |||||
| padding: 20px; | |||||
| width: 94%; | |||||
| margin: 0 auto; | |||||
| border-radius: 10px; | |||||
| box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.16); | |||||
| } | |||||
| .main-box block{ | |||||
| float: right; | |||||
| } | |||||
| .title{ | |||||
| padding: 10px calc(3% + 20px); | |||||
| } | |||||
| .topBox .van-cell{ | |||||
| padding: 0!important; | |||||
| margin-bottom: 15px; | |||||
| } | |||||
| .topBox .van-cell .van-cell__title, .topBox .van-cell .van-cell__value , .topBox .van-cell .van-field__label{ | |||||
| font-size: 15px; | |||||
| color: #000000!important; | |||||
| } | |||||
| .topBox .van-cell .van-cell__title{ | |||||
| margin-right: 0!important; | |||||
| max-width: 76px!important; | |||||
| min-width: 76px!important; | |||||
| } | |||||
| .top-box{ | |||||
| /* margin-top: 20px; | |||||
| margin-bottom: 28px; */ | |||||
| } | |||||
| .top-box text{ | |||||
| margin-bottom: 15px; | |||||
| } | |||||
| .top-box text:last-child{ | |||||
| margin-bottom: 0px; | |||||
| } | |||||
| .box-title{ | |||||
| color: #2C8E68; | |||||
| text-align: center; | |||||
| font-size: 16px; | |||||
| } | |||||
| .center-box .main-box{ | |||||
| margin-bottom: 15px; | |||||
| } | |||||
| .xm van-cell:first-child .van-cell{ | |||||
| border-bottom: 1px solid #cccccc; | |||||
| margin: 0; | |||||
| padding-bottom: 15px!important; | |||||
| margin-bottom: 15px; | |||||
| } | |||||
| .table-box van-field van-cell .van-cell{ | |||||
| margin-bottom: 15px; | |||||
| } | |||||
| .table-box van-field:last-child van-cell .van-cell{ | |||||
| margin-bottom: 0px; | |||||
| } | |||||
| .table-box view text icon{ | |||||
| display: inline-block; | |||||
| font-size: 14px; | |||||
| border: 1px solid red; | |||||
| color: red; | |||||
| } | |||||
| .table-box .van-cell{ | |||||
| padding: 0!important; | |||||
| } | |||||
| @font-face { | |||||
| font-family: 'my-icon'; | |||||
| src: url('../../../image/icon/fj_icon.png') format('truetype'); | |||||
| } | |||||
| .my-icon { | |||||
| font-family: 'my-icon'; | |||||
| } | |||||
| .my-icon-extra::before { | |||||
| content: '\e626'; | |||||
| } | |||||
| .fj-box text{ | |||||
| background-color: #5CAE77; | |||||
| color: #ffffff; | |||||
| text-align: center; | |||||
| border-radius: 5px; | |||||
| white-space:pre-wrap; | |||||
| padding: 22px 8px; | |||||
| } | |||||
| .fj-li{ | |||||
| margin-top: 20px; | |||||
| display: flex; | |||||
| /* flex-wrap: wrap; */ | |||||
| } | |||||
| .fj-li image{ | |||||
| width: 25%; | |||||
| height: 18.5vw; | |||||
| margin-left: 5%; | |||||
| } | |||||
| .fj-li image:nth-child(n+5){ | |||||
| margin-top: 15px; | |||||
| } | |||||
| .bottomBtn{ | |||||
| display: flex; | |||||
| width: 94%; | |||||
| margin: 0 auto; | |||||
| justify-content:space-between; | |||||
| margin-top: 30px; | |||||
| } | |||||
| .bottomBtn view{ | |||||
| display: flex; | |||||
| width: 48%; | |||||
| background-color: #ffffff; | |||||
| border-radius: 5px; | |||||
| box-shadow: 0px 5px 9px #DCDCDC; | |||||
| padding: 10px 0px; | |||||
| text-align: center; | |||||
| align-items:center; | |||||
| justify-content:center; | |||||
| font-size: 14px; | |||||
| color: #2C8E68; | |||||
| } | |||||
| .bottomBtn view image{ | |||||
| width: 18px; | |||||
| height: 18px; | |||||
| margin-right: 5px; | |||||
| } | |||||
| .steps-box{ | |||||
| padding: 0; | |||||
| margin-top: 15px; | |||||
| } | |||||
| .steps-box .van-row{ | |||||
| padding: 0 20px; | |||||
| } | |||||
| .steps-box view{ | |||||
| margin-bottom: 0; | |||||
| } | |||||
| .steps-box .van-col{ | |||||
| position: relative; | |||||
| height: 70px; | |||||
| } | |||||
| .steps-box .van-col--21{ | |||||
| padding: 12PX 0; | |||||
| padding-left: 10px; | |||||
| } | |||||
| .steps-box .van-row:nth-child(2n){ | |||||
| background: rgba(29,111,233,0.1); | |||||
| } | |||||
| .steps-box .van-cell{ | |||||
| background: transparent; | |||||
| padding: 0 10Px; | |||||
| } | |||||
| .steps-box .bq{ | |||||
| display: inline-block; | |||||
| padding: 0PX 10PX; | |||||
| line-height: 0.64rem; | |||||
| border-radius: 5PX; | |||||
| } | |||||
| .steps-box .index{ | |||||
| background: #1D6FE9; | |||||
| color: #ffffff; | |||||
| text-align: center; | |||||
| width: 20PX; | |||||
| height: 20PX; | |||||
| line-height: 20PX; | |||||
| border-radius: 50%; | |||||
| position: absolute; | |||||
| left: 0; | |||||
| top: 50%; | |||||
| transform: translate(0,-50%); | |||||
| } | |||||
| .steps-box .indexCenter{ | |||||
| top: 0!important; | |||||
| } | |||||
| .steps-box .van-row:first-child .van-col:first-child .indexBorder{ | |||||
| top: calc(50% - 5px); | |||||
| } | |||||
| .steps-box .indexBorder{ | |||||
| width: 10PX; | |||||
| position: absolute; | |||||
| right: 0; | |||||
| top: 0; | |||||
| height: 100%; | |||||
| } | |||||
| .steps-box .indexBorder .yq{ | |||||
| height: 10PX; | |||||
| width: 10PX; | |||||
| background: #C9C9C9; | |||||
| border-radius: 50%; | |||||
| } | |||||
| .steps-box .indexBorder .ss{ | |||||
| height: calc(50% - 5PX); | |||||
| width: 1PX; | |||||
| background: #C9C9C9; | |||||
| position: relative; | |||||
| left: 4PX; | |||||
| } | |||||
| .steps-box .indexBorder .ssT{ | |||||
| height: calc(50% - 5PX); | |||||
| width: 1PX; | |||||
| background: #C9C9C9; | |||||
| position: relative; | |||||
| left: 4PX; | |||||
| } | |||||
| .agree{ | |||||
| background-color: rgba(92, 174, 119, 0.1); | |||||
| color:#5CAE77 ; | |||||
| width: 80%; | |||||
| text-align: center; | |||||
| float: right; | |||||
| } | |||||
| .in{ | |||||
| background-color: rgba(245, 163, 39, 0.1); | |||||
| color:#F5A327 ; | |||||
| width: 80%; | |||||
| text-align: center; | |||||
| float: right; | |||||
| } | |||||
| .disagree{ | |||||
| background-color: rgba(233, 0, 0, 0.1); | |||||
| color:#E90000 ; | |||||
| width: 80%; | |||||
| text-align: center; | |||||
| float: right; | |||||
| } | |||||
| .steps-box .van-cell__title{ | |||||
| flex: 0.7; | |||||
| } | |||||
| .steps-box .van-cell__value{ | |||||
| flex: 0.3; | |||||
| } | |||||
| .steps-tit{ | |||||
| font-size: 16px; | |||||
| text-align: center; | |||||
| background-color: #2C8E68; | |||||
| color: #ffffff; | |||||
| padding: 20px 0; | |||||
| border-top-left-radius: 10px; | |||||
| border-top-right-radius: 10px; | |||||
| } | |||||
| .bottom{ | |||||
| text-align: center; | |||||
| width: 100%; | |||||
| margin-top: 50px; | |||||
| } | |||||
| .bottom button { | |||||
| width: 47%; | |||||
| margin: 0 auto; | |||||
| border-radius: 30px; | |||||
| display: inline-block; | |||||
| } | |||||
| .btnAgree{ | |||||
| border: 1px solid transparent; | |||||
| padding: 8px 0px; | |||||
| background-image: linear-gradient(to right, #2C8E68, #5CAE77); | |||||
| color: #fff; | |||||
| width: 47%; | |||||
| margin: 0 auto; | |||||
| border-radius: 30px; | |||||
| display: inline-block; | |||||
| text-align: center; | |||||
| } | |||||
| .btnOther{ | |||||
| border-color: #F2A438!important; | |||||
| color: #ffffff!important; | |||||
| background-image: linear-gradient(to right, #F2A438, #F2652E); | |||||
| width: 100%!important; | |||||
| } | |||||
| .input_tit{ | |||||
| border: 1px solid #DCDCDC; | |||||
| padding: 0px 10px; | |||||
| height: 32px; | |||||
| line-height: 32px; | |||||
| border-radius: 5px; | |||||
| margin-bottom: 15px; | |||||
| } | |||||
| .img_box{ | |||||
| position: relative; | |||||
| width: 100%; | |||||
| } | |||||
| .van-cell--required:before { | |||||
| left: -8px!important; | |||||
| } | |||||
| .input_money{ | |||||
| padding: 0px 10px; | |||||
| height: 32px; | |||||
| line-height: 32px; | |||||
| color: #E90000; | |||||
| font-size: 26px; | |||||
| display: inline-block; | |||||
| width: 70%; | |||||
| text-align: center; | |||||
| } | |||||
| .money_box{ | |||||
| font-size: 26px; | |||||
| border-bottom:1px solid #DCDCDC; | |||||
| width: 70%; | |||||
| margin: 0 auto; | |||||
| margin-bottom: 15px; | |||||
| color: #E90000; | |||||
| display: flex; | |||||
| align-items: center; | |||||
| justify-content: center; | |||||
| } | |||||
| .btnBox{ | |||||
| text-align: center; | |||||
| position: relative; | |||||
| height: 26px; | |||||
| } | |||||
| .down{ | |||||
| width: 15px; | |||||
| height: 8px; | |||||
| margin: 0 auto; | |||||
| margin-top: 18px; | |||||
| } | |||||
| .update{ | |||||
| width: 26px; | |||||
| height: 26px; | |||||
| position: absolute; | |||||
| right: 41px; | |||||
| } | |||||
| .delete{ | |||||
| width: 26px; | |||||
| height: 26px; | |||||
| position: absolute; | |||||
| right: 0; | |||||
| } | |||||
| .van-collapse-item { | |||||
| background: transparent; | |||||
| margin: 0 auto; | |||||
| width: 100%; | |||||
| margin: 0 auto; | |||||
| margin-top: 15px; | |||||
| } | |||||
| .van-collapse-item__content{ | |||||
| padding: 0!important; | |||||
| } | |||||
| .van-collapse .van-cell{ | |||||
| padding: 0; | |||||
| background: transparent; | |||||
| } | |||||
| .van-collapse .tit_box .title{ | |||||
| text-align: center; | |||||
| font-size: 18px; | |||||
| } | |||||
| .van-collapse .main-box{ | |||||
| /* padding: 0; | |||||
| box-shadow: none; */ | |||||
| } | |||||
| .van-collapse .tit_box{ | |||||
| width: 94%; | |||||
| background: #ffffff; | |||||
| margin: 0 auto; | |||||
| border-radius: 10px; | |||||
| box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.16); | |||||
| padding: 20px; | |||||
| } | |||||
| .van-collapse .tit_box .top-box .van-cell{ | |||||
| margin-bottom: 15px; | |||||
| } | |||||
| .steps-box{ | |||||
| padding: 0; | |||||
| } | |||||
| .steps-box .van-row{ | |||||
| padding: 0 20px; | |||||
| } | |||||
| .steps-box view{ | |||||
| margin-bottom: 0; | |||||
| } | |||||
| .steps-box .van-col{ | |||||
| position: relative; | |||||
| height: 90px; | |||||
| } | |||||
| .steps-box .van-col--21{ | |||||
| padding: 12PX 0; | |||||
| padding-left: 10px; | |||||
| } | |||||
| .steps-box .van-row:nth-child(2n){ | |||||
| background: rgba(29,111,233,0.1); | |||||
| } | |||||
| .steps-box .van-cell{ | |||||
| background: transparent; | |||||
| padding: 0 10Px; | |||||
| } | |||||
| .steps-box .bq{ | |||||
| display: inline-block; | |||||
| padding: 0PX 10PX; | |||||
| line-height: 0.64rem; | |||||
| border-radius: 5PX; | |||||
| } | |||||
| .steps-box .index{ | |||||
| background: #C9C9C9; | |||||
| color: #ffffff; | |||||
| text-align: center; | |||||
| width: 20PX; | |||||
| height: 20PX; | |||||
| line-height: 20PX; | |||||
| border-radius: 50%; | |||||
| position: absolute; | |||||
| left: 0; | |||||
| top: 50%; | |||||
| transform: translate(0,-50%); | |||||
| } | |||||
| .steps-box .active{ | |||||
| background: #2C8E68; | |||||
| } | |||||
| .steps-box .indexCenter{ | |||||
| top: 0!important; | |||||
| } | |||||
| .steps-box .van-row:first-child .van-col:first-child .indexBorder{ | |||||
| top: calc(50% - 5px); | |||||
| } | |||||
| .steps-box .indexBorder{ | |||||
| width: 10PX; | |||||
| position: absolute; | |||||
| right: 0; | |||||
| top: 0; | |||||
| height: 100%; | |||||
| } | |||||
| .steps-box .indexBorder .yq{ | |||||
| height: 10PX; | |||||
| width: 10PX; | |||||
| background: #C9C9C9; | |||||
| border-radius: 50%; | |||||
| } | |||||
| .steps-box .indexBorder .ss{ | |||||
| height: calc(50% - 5PX); | |||||
| width: 1PX; | |||||
| background: #C9C9C9; | |||||
| position: relative; | |||||
| left: 4PX; | |||||
| } | |||||
| .steps-box .indexBorder .ssT{ | |||||
| height: calc(50% - 5PX); | |||||
| width: 1PX; | |||||
| background: #C9C9C9; | |||||
| position: relative; | |||||
| left: 4PX; | |||||
| } | |||||
| .agree{ | |||||
| background-color: rgba(92, 174, 119, 0.1); | |||||
| color:#5CAE77 ; | |||||
| width: 80%; | |||||
| text-align: center; | |||||
| float: right; | |||||
| } | |||||
| .in{ | |||||
| background-color: rgba(245, 163, 39, 0.1); | |||||
| color:#F5A327 ; | |||||
| width: 80%; | |||||
| text-align: center; | |||||
| float: right; | |||||
| } | |||||
| .disagree{ | |||||
| background-color: rgba(233, 0, 0, 0.1); | |||||
| color:#E90000 ; | |||||
| width: 80%; | |||||
| text-align: center; | |||||
| float: right; | |||||
| } | |||||
| .steps-box .van-cell__title{ | |||||
| flex: 0.7; | |||||
| } | |||||
| .steps-box .van-cell__value{ | |||||
| flex: 0.3; | |||||
| } | |||||
| .steps-tit{ | |||||
| font-size: 16px; | |||||
| text-align: center; | |||||
| background-color: #2C8E68; | |||||
| color: #ffffff; | |||||
| padding: 20px 0; | |||||
| border-top-left-radius: 10px; | |||||
| border-top-right-radius: 10px; | |||||
| } | |||||
| .bottom button { | |||||
| width: 47%; | |||||
| margin: 0 auto; | |||||
| border-radius: 30px; | |||||
| display: inline-block; | |||||
| } | |||||
| .input_tit{ | |||||
| border: 1px solid #DCDCDC; | |||||
| padding: 0px 10px; | |||||
| height: 32px; | |||||
| line-height: 32px; | |||||
| border-radius: 5px; | |||||
| margin-bottom: 15px; | |||||
| } | |||||
| .img_box{ | |||||
| position: relative; | |||||
| width: 100%; | |||||
| } | |||||
| .cellTit{ | |||||
| display: flex; | |||||
| justify-content: space-between; | |||||
| } | |||||
| .cellTit text{ | |||||
| width: 50%; | |||||
| display: -webkit-box; | |||||
| -webkit-box-orient: vertical; | |||||
| -webkit-line-clamp: 1; | |||||
| word-break: break-all; | |||||
| overflow: hidden; | |||||
| } | |||||
| .payeeList { | |||||
| padding: 10px 20px!important; | |||||
| } | |||||
| .payeeList .van-collapse-item { | |||||
| margin-top: 0; | |||||
| } | |||||
| .payeeList .van-collapse .van-cell { | |||||
| padding: 10px 0!important; | |||||
| } | |||||
| .payeeList van-field van-cell .van-cell{ | |||||
| margin-bottom: 0; | |||||
| } | |||||
| .payeeList .van-cell__value { | |||||
| color: #E90000; | |||||
| } | |||||
| .payeeList .van-cell__title{ | |||||
| flex-shrink: 0; | |||||
| max-width: inherit; | |||||
| } | |||||
| @@ -0,0 +1,112 @@ | |||||
| // pages/pay/payee/payee.js | |||||
| import * as UTIL from '../../../utils/util.js'; | |||||
| import * as API from '../../../utils/API.js'; | |||||
| const app = getApp(); | |||||
| Page({ | |||||
| /** | |||||
| * 页面的初始数据 | |||||
| */ | |||||
| data: { | |||||
| isIPX: app.globalData.isIPX, | |||||
| activeName:'', | |||||
| value:'', | |||||
| list:{}, | |||||
| array:{}, | |||||
| checked:false | |||||
| }, | |||||
| onChange(event) { | |||||
| this.setData({ | |||||
| activeName: event.detail, | |||||
| }); | |||||
| }, | |||||
| onChangeCheck(event) { | |||||
| var that = this ; | |||||
| this.setData({ | |||||
| checked: !that.data.checked, | |||||
| }); | |||||
| if(that.data.checked){ | |||||
| let array = []; | |||||
| for (let i = 0; i < that.data.list.length; i++) { | |||||
| const element = that.data.list[i]; | |||||
| if(element.transferStatus == '6'){ | |||||
| array.push(element) | |||||
| } | |||||
| } | |||||
| that.setData({ | |||||
| array:array | |||||
| }) | |||||
| }else{ | |||||
| that.setData({ | |||||
| array:that.data.list | |||||
| }) | |||||
| } | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面加载 | |||||
| */ | |||||
| onLoad(options) { | |||||
| console.log(JSON.parse(options.options)); | |||||
| this.setData({ | |||||
| list: JSON.parse(options.options), | |||||
| array: JSON.parse(options.options), | |||||
| }); | |||||
| }, | |||||
| back:function(){ | |||||
| wx.navigateBack({ | |||||
| delta: 1 | |||||
| }) | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面初次渲染完成 | |||||
| */ | |||||
| onReady() { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面显示 | |||||
| */ | |||||
| onShow() { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面隐藏 | |||||
| */ | |||||
| onHide() { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面卸载 | |||||
| */ | |||||
| onUnload() { | |||||
| }, | |||||
| /** | |||||
| * 页面相关事件处理函数--监听用户下拉动作 | |||||
| */ | |||||
| onPullDownRefresh() { | |||||
| }, | |||||
| /** | |||||
| * 页面上拉触底事件的处理函数 | |||||
| */ | |||||
| onReachBottom() { | |||||
| }, | |||||
| /** | |||||
| * 用户点击右上角分享 | |||||
| */ | |||||
| onShareAppMessage() { | |||||
| } | |||||
| }) | |||||
| @@ -0,0 +1,14 @@ | |||||
| { | |||||
| "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-collapse": "@vant/weapp/collapse/index", | |||||
| "van-tag": "@vant/weapp/tag/index", | |||||
| "van-collapse-item": "@vant/weapp/collapse-item/index" | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,42 @@ | |||||
| <!--pages/pay/payee/payee.wxml--> | |||||
| <view class="ns" style="height:{{isIPX?'88px':'64px'}};"> | |||||
| <image src="/image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};" mode="widthFix" bindtap="back"></image> | |||||
| <text style="top:{{isIPX?'54px':'30px'}};">收款方</text> | |||||
| </view> | |||||
| <view class="search_box" style="margin-top:{{isIPX?'100px':'75px'}};"> | |||||
| <van-search | |||||
| value="{{ value }}" | |||||
| shape="round" | |||||
| background="transparent" | |||||
| placeholder="请输入收款方" | |||||
| clearable | |||||
| bind:change="goSearch" | |||||
| /> | |||||
| <view class="add_btn"> | |||||
| <van-checkbox value="{{ checked }}" shape="square" bind:change="onChangeCheck"> | |||||
| 仅显示失效 | |||||
| </van-checkbox> | |||||
| </view> | |||||
| </view> | |||||
| <view class="main"> | |||||
| <van-collapse accordion value="{{ activeName }}" bind:change="onChange" custom-class="list"> | |||||
| <van-collapse-item title="{{ item.payee }}" name="{{index}}" wx:for="{{array}}" wx:key="index"> | |||||
| <view slot="value"> | |||||
| <text class="money">¥{{ item.incomeAmount }}</text> | |||||
| </view> | |||||
| <view class="detailBox"> | |||||
| <van-cell border="{{ false }}" > | |||||
| <view slot="title"> | |||||
| {{ item.payee }}<van-tag plain type="danger" color="#5CAE77" round style="margin-left:10px;">收款方</van-tag> | |||||
| </view> | |||||
| </van-cell> | |||||
| <van-cell title="收款账户" value="{{ item.payeeAccount }}" border="{{ false }}" /> | |||||
| <van-cell title="开户银行" value="{{ item.bankDeposit }}" border="{{ false }}" /> | |||||
| <van-cell title="收入金额" value="{{ item.incomeAmount }}" border="{{ false }}" /> | |||||
| <van-cell title="所属银行" value="{{ item.bankTypeText }}" border="{{ false }}" /> | |||||
| <van-cell title="转账状态" value="{{ item.transferStatusText }}" border="{{ false }}" /> | |||||
| <van-cell title="交易结果" value="{{ item.causeFailure }}" border="{{ false }}" /> | |||||
| </view> | |||||
| </van-collapse-item> | |||||
| </van-collapse> | |||||
| </view> | |||||
| @@ -0,0 +1,47 @@ | |||||
| /* pages/pay/payee/payee.wxss */ | |||||
| .main { | |||||
| padding:0 2.5%; | |||||
| } | |||||
| .main .van-cell{ | |||||
| background-color: #F4F4F4!important; | |||||
| } | |||||
| .main .van-collapse-item__content{ | |||||
| background-color: #F4F4F4!important; | |||||
| } | |||||
| .main .detailBox .van-cell{ | |||||
| padding: 0!important; | |||||
| margin-bottom: 15px; | |||||
| } | |||||
| .van-cell__title{ | |||||
| color: #969799; | |||||
| } | |||||
| .van-search__content { | |||||
| border: 1px solid #5CAE77!important; | |||||
| background: transparent!important; | |||||
| } | |||||
| van-search { | |||||
| flex: 0.7; | |||||
| } | |||||
| .search_box{ | |||||
| display: flex; | |||||
| align-items: center; | |||||
| } | |||||
| .add_btn{ | |||||
| flex: 0.3; | |||||
| 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; | |||||
| } | |||||
| .money{ | |||||
| color: #E90000; | |||||
| display: inline-block; | |||||
| } | |||||
| @@ -181,7 +181,7 @@ Page({ | |||||
| }, | }, | ||||
| toPay(e){ | toPay(e){ | ||||
| wx.navigateTo({ | wx.navigateTo({ | ||||
| url: '/pages/paymentManager/toPay/toPay?id='+e.currentTarget.dataset.id, | |||||
| url: '/pages/pay/detail?id='+e.currentTarget.dataset.id+'&&ids='+e.currentTarget.dataset.ids, | |||||
| }) | }) | ||||
| }, | }, | ||||
| scrap(e){ | scrap(e){ | ||||
| @@ -39,7 +39,7 @@ | |||||
| <text style="font-size: 10px;display: inline;">¥</text>{{item.expenditureAmount}} | <text style="font-size: 10px;display: inline;">¥</text>{{item.expenditureAmount}} | ||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <view style="text-align: right;" bindtap="toPay" data-id="{{item.id}}"> | |||||
| <view style="text-align: right;" bindtap="toPay" data-id="{{item.approvalItemTemplateId}}" data-ids="{{item.id}}"> | |||||
| <button wx-if="{{item.paymentState==1}}" type="primary" size="mini" style="border-radius: 15px;" >待支付</button> | <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;background-color: #B3DB62;">银行受理</button> | <button wx-if="{{item.paymentState==3}}" type="primary" size="mini" style="border-radius: 15px;background-color: #B3DB62;">银行受理</button> | ||||
| <button wx-if="{{item.paymentState==4}}" type="warn" size="mini" style="border-radius: 15px;">支付失败</button> | <button wx-if="{{item.paymentState==4}}" type="warn" size="mini" style="border-radius: 15px;">支付失败</button> | ||||