@@ -9,8 +9,6 @@ | |||||
"pages/bankDraft/add/add", | "pages/bankDraft/add/add", | ||||
"pages/project/project", | "pages/project/project", | ||||
"pages/project/add/add", | "pages/project/add/add", | ||||
"pages/finance/finance", | |||||
"pages/finance/voucher/voucher", | |||||
"pages/pay/detail", | "pages/pay/detail", | ||||
"pages/pay/payee/payee", | "pages/pay/payee/payee", | ||||
"pages/contractAssets/fixedAssets", | "pages/contractAssets/fixedAssets", | ||||
@@ -23,7 +21,6 @@ | |||||
"pages/bill/bill", | "pages/bill/bill", | ||||
"pages/statistics/statistics", | "pages/statistics/statistics", | ||||
"pages/user/region/region", | "pages/user/region/region", | ||||
"pages/finance/index", | |||||
"pages/resources/resources", | "pages/resources/resources", | ||||
"pages/resources/detail/detail", | "pages/resources/detail/detail", | ||||
"pages/resources/edit/edit", | "pages/resources/edit/edit", | ||||
@@ -144,6 +141,24 @@ | |||||
"list/edit", | "list/edit", | ||||
"list/detail" | "list/detail" | ||||
] | ] | ||||
}, | |||||
{ | |||||
"root": "pages/finance/", | |||||
"pages": [ | |||||
"index", | |||||
"finance", | |||||
"voucher/voucher", | |||||
"list_balance_ranking/list_balance_ranking", | |||||
"detailed_liabilities/detailed_liabilities", | |||||
"detailed_incomeAndExpenditurePublic/detailed_incomeAndExpenditurePublic" | |||||
] | |||||
}, | |||||
{ | |||||
"root": "pages/mainBody/", | |||||
"pages": [ | |||||
"list/list", | |||||
"detail/detail" | |||||
] | |||||
} | } | ||||
], | ], | ||||
"window": { | "window": { | ||||
@@ -0,0 +1,32 @@ | |||||
// component/SubjectTreeChooserNodeItem/SubjectTreeChooserNodeItem.js | |||||
import * as UTIL from '../../utils/util.js'; | |||||
import * as API from '../../utils/API.js'; | |||||
const app = getApp() | |||||
Component({ | |||||
properties: { | |||||
type: Object, | |||||
popupVisible:false, | |||||
subjects: {}, | |||||
observer: function (newVal, oldVal) {} | |||||
}, | |||||
observers: { | |||||
'subjects': function(val) { | |||||
// this.selectComponent('#tabs').resize(); | |||||
}, | |||||
'popupVisible': function(val) { | |||||
} | |||||
}, | |||||
/** | |||||
* 页面的初始数据 | |||||
*/ | |||||
data: { | |||||
}, | |||||
/** | |||||
* 组件的方法列表 | |||||
*/ | |||||
methods: { | |||||
open(e){ | |||||
console.log(e); | |||||
}, | |||||
} | |||||
}) |
@@ -0,0 +1,14 @@ | |||||
{ | |||||
"component": true, | |||||
"usingComponents": { | |||||
"childrenPage":"/component/SubjectTreeChooserNodeItem/childrenPage", | |||||
"van-popup": "@vant/weapp/popup/index", | |||||
"van-datetime-picker": "@vant/weapp/datetime-picker/index", | |||||
"van-checkbox": "@vant/weapp/checkbox/index", | |||||
"van-tab": "@vant/weapp/tab/index", | |||||
"van-tabs": "@vant/weapp/tabs/index", | |||||
"van-collapse": "@vant/weapp/collapse/index", | |||||
"van-collapse-item": "@vant/weapp/collapse-item/index", | |||||
"van-checkbox-group": "@vant/weapp/checkbox-group/index" | |||||
} | |||||
} |
@@ -0,0 +1,15 @@ | |||||
<!--component/SubjectTreeChooserNodeItem/SubjectTreeChooserNodeItem.wxml--> | |||||
<van-popup show="{{popupVisible}}" position="bottom" close-on-click-overlay bind:close="onClose"> | |||||
<!-- <van-search | |||||
v-model="searchValue" | |||||
placeholder="按科目编码/名称筛选" | |||||
@input="onSearch" | |||||
/> --> | |||||
<van-tabs animated sticky id="tabs" bind:change="onTabChanged"> | |||||
<van-tab title="{{item.subjectName}}" name="{{item.subjectId}}" wx:for="{{subjects}}" wx:key="index"> | |||||
<view style="height: 480px;"> | |||||
<childrenPage subjects="{{item.children}}"></childrenPage> | |||||
</view> | |||||
</van-tab> | |||||
</van-tabs> | |||||
</van-popup> |
@@ -0,0 +1 @@ | |||||
/* component/SubjectTreeChooserNodeItem/SubjectTreeChooserNodeItem.wxss */ |
@@ -0,0 +1,43 @@ | |||||
// component/SubjectTreeChooserNodeItem/childrenPage.js | |||||
Component({ | |||||
/** | |||||
* 组件的属性列表 | |||||
*/ | |||||
properties: { | |||||
type: Object, | |||||
subjects: {}, | |||||
}, | |||||
observers: { | |||||
'subjects': function(val) { | |||||
// console.log(val); // 打印innerText的当前值 | |||||
// this.selectComponent('#tabs').resize(); | |||||
} | |||||
}, | |||||
/** | |||||
* 组件的初始数据 | |||||
*/ | |||||
data: { | |||||
activeNames:'' | |||||
}, | |||||
/** | |||||
* 组件的方法列表 | |||||
*/ | |||||
methods: { | |||||
open(e){ | |||||
console.log(e); | |||||
}, | |||||
onChange(event) { | |||||
this.setData({ | |||||
activeNames: event.detail, | |||||
}); | |||||
}, | |||||
onItemClicked(e){ | |||||
console.log(e); | |||||
// this.triggerEvent('cancel',e) | |||||
this.triggerEvent('cancel', e, { bubbles: true, composed: true }) | |||||
} | |||||
} | |||||
}) |
@@ -0,0 +1,8 @@ | |||||
{ | |||||
"component": true, | |||||
"usingComponents": { | |||||
"childrenPage":"/component/SubjectTreeChooserNodeItem/childrenPage", | |||||
"van-collapse": "@vant/weapp/collapse/index", | |||||
"van-collapse-item": "@vant/weapp/collapse-item/index" | |||||
} | |||||
} |
@@ -0,0 +1,19 @@ | |||||
<!--component/SubjectTreeChooserNodeItem/childrenPage.wxml--> | |||||
<van-collapse value="{{ activeNames }}" bind:change="onChange"> | |||||
<van-collapse-item | |||||
wx:for="{{subjects}}" | |||||
name="{{item.subjectId}}" | |||||
is-link="{{item.children && item.children.length > 0}}" | |||||
disabled="{{!(item.children && item.children.length > 0)}}" | |||||
> | |||||
<view slot="title" bind:tap="onItemClicked" data-item="{{item}}" style="color: #333333;"> | |||||
{{ item.subjectId }} {{ item.subjectName }} | |||||
</view> | |||||
<view> | |||||
<childrenPage wx:if="{{item.children && item.children.length > 0}}" subjects="{{item.children}}"></childrenPage> | |||||
</view> | |||||
<!-- bind:tap="($event) => onItemClicked($event, subject)" wx:if="{{item.visible}}" is-link="{{item.is_last != 'Y'}}" <SubjectTreeChooserNodeItem :ref="'childCollapse' + index" :subjects="subject.children" v-if="subject.children && Array.isArray(subject.children) && subject.children.length > 0" @clicked="onChildItemClicked" :can-select-non-leaf="canSelectNonLeaf"> | |||||
</SubjectTreeChooserNodeItem> --> | |||||
</van-collapse-item> | |||||
</van-collapse> |
@@ -0,0 +1 @@ | |||||
/* component/SubjectTreeChooserNodeItem/childrenPage.wxss */ |
@@ -111,9 +111,6 @@ | |||||
</view> | </view> | ||||
</van-swipe-cell> | </van-swipe-cell> | ||||
</scroll-view> | </scroll-view> | ||||
<van-empty wx:if="{{templateList.length == 0}}" description="暂无审批模板" /> | <van-empty wx:if="{{templateList.length == 0}}" description="暂无审批模板" /> | ||||
</van-action-sheet> | </van-action-sheet> | ||||
<modal hidden="{{!showPopup}}" mask="{{true}}" title="审批模板" confirm-text="保存" cancel-text="取消" bindcancel="cancelTem" bindconfirm="confirmTem"> | <modal hidden="{{!showPopup}}" mask="{{true}}" title="审批模板" confirm-text="保存" cancel-text="取消" bindcancel="cancelTem" bindconfirm="confirmTem"> | ||||
@@ -85,12 +85,16 @@ | |||||
<text>三、农业银行</text> | <text>三、农业银行</text> | ||||
<text>1、导入收款方的所属银行需要根据页面选择的是否同行相匹配。</text> | <text>1、导入收款方的所属银行需要根据页面选择的是否同行相匹配。</text> | ||||
<text>2、联行号为必填项。</text> | <text>2、联行号为必填项。</text> | ||||
<text>四、建设银行</text> | |||||
<text>1、导入收款方的所属银行需要根据页面选择的是否同行相匹配。</text> | |||||
<text>2、单笔跨行、批量跨行转账时联行号为必填项。</text> | |||||
<text>五、农商行(重庆)</text> | |||||
<text>四、农商行(重庆)</text> | |||||
<text>1、导入收款方最多可以有500条。</text> | <text>1、导入收款方最多可以有500条。</text> | ||||
<text>2、联行号为必填项。</text> | <text>2、联行号为必填项。</text> | ||||
<text>五、其他银行</text> | |||||
<text>1、联行号为必填项。</text> | |||||
<!-- <text>四、建设银行</text> | |||||
<text>1、导入收款方的所属银行需要根据页面选择的是否同行相匹配。</text> | |||||
<text>2、单笔跨行、批量跨行转账时联行号为必填项。</text> --> | |||||
<view style="height: 10vh;"></view> | |||||
</scroll-view> | </scroll-view> | ||||
<view class="bottom"> | <view class="bottom"> | ||||
<!-- <view class="btn1" data-type="3" bindtap="goSubmit">提交复核</view> --> | <!-- <view class="btn1" data-type="3" bindtap="goSubmit">提交复核</view> --> | ||||
@@ -164,6 +164,7 @@ Page({ | |||||
SJimage:[], | SJimage:[], | ||||
FPimage:[], | FPimage:[], | ||||
QTimage:[], | QTimage:[], | ||||
SYLGKimage:[], | |||||
activeName:0, | activeName:0, | ||||
showTitle:true, | showTitle:true, | ||||
collapseDis:false, | collapseDis:false, | ||||
@@ -250,6 +251,7 @@ Page({ | |||||
SJimage: [], | SJimage: [], | ||||
FPimage: [], | FPimage: [], | ||||
QTimage: [], | QTimage: [], | ||||
SYLGKimage: [], | |||||
imgcount:0, | imgcount:0, | ||||
activeNames: 0, | activeNames: 0, | ||||
applyDate:'', | applyDate:'', | ||||
@@ -343,7 +345,6 @@ Page({ | |||||
["form.approvalTemplateId"]:res.rows[0].id, | ["form.approvalTemplateId"]:res.rows[0].id, | ||||
["form.approvalTemplateName"]:res.rows[0].name, | ["form.approvalTemplateName"]:res.rows[0].name, | ||||
}) | }) | ||||
// 审批模板 | // 审批模板 | ||||
UTIL.httpRequest(API.URL_GET_selectApprovalByTemplateId+res.rows[0].id , {method:'GET'}, { | UTIL.httpRequest(API.URL_GET_selectApprovalByTemplateId+res.rows[0].id , {method:'GET'}, { | ||||
success: (rres) => { | success: (rres) => { | ||||
@@ -525,6 +526,39 @@ Page({ | |||||
}) | }) | ||||
} | } | ||||
}) | }) | ||||
//四议两公开 | |||||
UTIL.httpRequest( | |||||
API.URL_GET_FINDLIST, | |||||
{ | |||||
method:'GET', | |||||
tableName:'t_yinnong_transfer', | |||||
tableId:res.data.id, | |||||
fileType:4 | |||||
}, | |||||
{ | |||||
success: (res) => { | |||||
let list = []; | |||||
res.data.forEach((item2,index2)=>{ | |||||
let fileForm = res.data.fileForm?res.data.fileForm:[]; | |||||
fileForm.push({ | |||||
file: wx.getStorageSync('dressCode')+item2.fileUrl, | |||||
fileType:'4', | |||||
bizPath:'transfer', | |||||
tableName:'t_yinnong_transfer', | |||||
tableId:res.data.id | |||||
}) | |||||
list.push({ | |||||
tempFilePath:wx.getStorageSync('dressCode')+item2.fileUrl, | |||||
id:item2.id | |||||
}) | |||||
that.setData({ | |||||
["form.fileNum"]:that.data.form.fileNum+1, | |||||
["form.SYLGKimage"]:list, | |||||
["form.fileForm"]:fileForm | |||||
}); | |||||
}) | |||||
} | |||||
}) | |||||
let query = { | let query = { | ||||
method:'GET', | method:'GET', | ||||
@@ -1406,6 +1440,12 @@ Page({ | |||||
showFile:true | showFile:true | ||||
}) | }) | ||||
// console.log(that.data.form) | // console.log(that.data.form) | ||||
}else{ | |||||
wx.showToast({ | |||||
title: res.msg, | |||||
icon: 'error', | |||||
duration: 2000 | |||||
}) | |||||
} | } | ||||
} | } | ||||
}) | }) | ||||
@@ -1563,7 +1603,7 @@ Page({ | |||||
goCustomSubmit(){ | goCustomSubmit(){ | ||||
var that = this; | var that = this; | ||||
UTIL.httpRequest(API.URL_GET_TRANSFERCUSTOMSUBMIT+this.data.form.id, {method : 'POST'}, { | |||||
UTIL.httpRequest(API.URL_GET_TRANSFERCUSTOMSUBMIT2+this.data.form.id, {method : 'POST'}, { | |||||
success: (res) => { | success: (res) => { | ||||
if (res.code == API.SUCCESS_CODE) { | if (res.code == API.SUCCESS_CODE) { | ||||
wx.showToast({ | wx.showToast({ | ||||
@@ -1576,6 +1616,12 @@ Page({ | |||||
},2000) | },2000) | ||||
} | } | ||||
}) | }) | ||||
}else{ | |||||
wx.showToast({ | |||||
title: res.msg, | |||||
icon: 'error', | |||||
duration: 2000 | |||||
}) | |||||
} | } | ||||
} | } | ||||
}) | }) | ||||
@@ -1588,7 +1634,7 @@ Page({ | |||||
}) | }) | ||||
that.goKeepNew(); | that.goKeepNew(); | ||||
setTimeout(() => { | setTimeout(() => { | ||||
UTIL.httpRequest(API.URL_GET_TRANSFERCUSTOMSUBMIT+this.data.form.id, {method : 'POST'}, { | |||||
UTIL.httpRequest(API.URL_GET_TRANSFERCUSTOMSUBMIT2+this.data.form.id, {method : 'POST'}, { | |||||
success: (res) => { | success: (res) => { | ||||
if (res.code == API.SUCCESS_CODE) { | if (res.code == API.SUCCESS_CODE) { | ||||
wx.hideLoading(); | wx.hideLoading(); | ||||
@@ -1602,6 +1648,12 @@ Page({ | |||||
},2000) | },2000) | ||||
} | } | ||||
}) | }) | ||||
}else{ | |||||
wx.showToast({ | |||||
title: res.msg, | |||||
icon: 'error', | |||||
duration: 2000 | |||||
}) | |||||
} | } | ||||
} | } | ||||
}) | }) | ||||
@@ -1667,7 +1719,8 @@ Page({ | |||||
let SJlength = that.data.form.SJimage == undefined ? 0:that.data.form.SJimage.length; | let SJlength = that.data.form.SJimage == undefined ? 0:that.data.form.SJimage.length; | ||||
let FPlength = that.data.form.FPimage == undefined ? 0:that.data.form.FPimage.length; | let FPlength = that.data.form.FPimage == undefined ? 0:that.data.form.FPimage.length; | ||||
let QTlength = that.data.form.QTimage == undefined ? 0:that.data.form.QTimage.length; | let QTlength = that.data.form.QTimage == undefined ? 0:that.data.form.QTimage.length; | ||||
let fileNum = parseInt( SJlength ) + parseInt( FPlength ) + parseInt( QTlength ) ; | |||||
let SYLGKlength = that.data.form.SYLGKimage == undefined ? 0:that.data.form.SYLGKimage.length; | |||||
let fileNum = parseInt( SJlength ) + parseInt( FPlength ) + parseInt( QTlength ) + parseInt( SYLGKlength ) ; | |||||
that.setData({ | that.setData({ | ||||
["form.fileNum"]:fileNum, | ["form.fileNum"]:fileNum, | ||||
}) | }) | ||||
@@ -1737,7 +1790,8 @@ Page({ | |||||
let SJlength = that.data.form.SJimage == undefined ? 0:that.data.form.SJimage.length; | let SJlength = that.data.form.SJimage == undefined ? 0:that.data.form.SJimage.length; | ||||
let FPlength = that.data.form.FPimage == undefined ? 0:that.data.form.FPimage.length; | let FPlength = that.data.form.FPimage == undefined ? 0:that.data.form.FPimage.length; | ||||
let QTlength = that.data.form.QTimage == undefined ? 0:that.data.form.QTimage.length; | let QTlength = that.data.form.QTimage == undefined ? 0:that.data.form.QTimage.length; | ||||
let fileNum = parseInt( SJlength ) + parseInt( FPlength ) + parseInt( QTlength ) ; | |||||
let SYLGKlength = that.data.form.SYLGKimage == undefined ? 0:that.data.form.SYLGKimage.length; | |||||
let fileNum = parseInt( SJlength ) + parseInt( FPlength ) + parseInt( QTlength ) + parseInt( SYLGKlength ) ; | |||||
that.setData({ | that.setData({ | ||||
["form.fileNum"]:fileNum, | ["form.fileNum"]:fileNum, | ||||
}) | }) | ||||
@@ -1804,7 +1858,76 @@ Page({ | |||||
let SJlength = that.data.form.SJimage == undefined ? 0:that.data.form.SJimage.length; | let SJlength = that.data.form.SJimage == undefined ? 0:that.data.form.SJimage.length; | ||||
let FPlength = that.data.form.FPimage == undefined ? 0:that.data.form.FPimage.length; | let FPlength = that.data.form.FPimage == undefined ? 0:that.data.form.FPimage.length; | ||||
let QTlength = that.data.form.QTimage == undefined ? 0:that.data.form.QTimage.length; | let QTlength = that.data.form.QTimage == undefined ? 0:that.data.form.QTimage.length; | ||||
let fileNum = parseInt( SJlength ) + parseInt( FPlength ) + parseInt( QTlength ) ; | |||||
let SYLGKlength = that.data.form.SYLGKimage == undefined ? 0:that.data.form.SYLGKimage.length; | |||||
let fileNum = parseInt( SJlength ) + parseInt( FPlength ) + parseInt( QTlength ) + parseInt( SYLGKlength ) ; | |||||
that.setData({ | |||||
["form.fileNum"]:fileNum, | |||||
}) | |||||
const element = fileForm[0]; | |||||
wx.uploadFile({ | |||||
url: wx.getStorageSync('dressCode')+API.URL_GET_UPLOAD, | |||||
filePath: res.tempFiles[0].tempFilePath, | |||||
name: 'file', | |||||
header: { | |||||
"Content-Type": "multipart/form-data",//记得设置 | |||||
"chartset":"utf-8", | |||||
'Authorization':'Bearer '+getApp().globalData.userInfo.token | |||||
}, | |||||
formData:element, | |||||
success (response){ | |||||
wx.showToast({ | |||||
title: '上传成功', | |||||
icon: 'success', | |||||
duration: 2000, | |||||
}) | |||||
}, | |||||
fail(res){ | |||||
console.log(res) | |||||
} | |||||
}) | |||||
},fail(err){ | |||||
console.log(err); | |||||
} | |||||
}) | |||||
}, | |||||
SYLGKtakephoto(e){ | |||||
var that = this; | |||||
let fileForm = []; | |||||
wx.chooseMedia({ | |||||
mediaType: ['image'], | |||||
sourceType: ['album', 'camera'], | |||||
camera: 'back', | |||||
count: 1, | |||||
success(res) { | |||||
console.log(res); | |||||
res.tempFiles.forEach(item => { | |||||
fileForm.push({ | |||||
file: item.tempFilePath, | |||||
fileType:'4', | |||||
bizPath:'transfer', | |||||
tableName:'t_yinnong_transfer', | |||||
tableId:that.data.form.id | |||||
}) | |||||
}) | |||||
console.log(fileForm); | |||||
let tem = that.data.form.SYLGKimage?that.data.form.SYLGKimage:[]; | |||||
res.tempFiles.forEach(r=>{ | |||||
tem.push({ | |||||
tempFilePath:r.tempFilePath | |||||
}) | |||||
}) | |||||
that.setData({ | |||||
["form.SYLGKimage"]:tem, | |||||
["form.fileForm"]:fileForm | |||||
}) | |||||
let SJlength = that.data.form.SJimage == undefined ? 0:that.data.form.SJimage.length; | |||||
let FPlength = that.data.form.FPimage == undefined ? 0:that.data.form.FPimage.length; | |||||
let QTlength = that.data.form.QTimage == undefined ? 0:that.data.form.QTimage.length; | |||||
let SYLGKlength = that.data.form.SYLGKimage == undefined ? 0:that.data.form.SYLGKimage.length; | |||||
let fileNum = parseInt( SJlength ) + parseInt( FPlength ) + parseInt( QTlength ) + parseInt( SYLGKlength ) ; | |||||
that.setData({ | that.setData({ | ||||
["form.fileNum"]:fileNum, | ["form.fileNum"]:fileNum, | ||||
}) | }) | ||||
@@ -2114,6 +2237,12 @@ Page({ | |||||
} | } | ||||
}) | }) | ||||
}else{ | |||||
wx.showToast({ | |||||
title: res.msg, | |||||
icon: 'error', | |||||
duration: 2000 | |||||
}) | |||||
} | } | ||||
} | } | ||||
}) | }) | ||||
@@ -2312,6 +2441,15 @@ Page({ | |||||
["form.payeeList"]:this.data.form.payeeList, | ["form.payeeList"]:this.data.form.payeeList, | ||||
}) | }) | ||||
}, | }, | ||||
removePayer(e){ | |||||
console.log(e); | |||||
let i = e.currentTarget.dataset.index; | |||||
let list = this.data.form.payeeList; | |||||
list.splice(i,1); | |||||
this.setData({ | |||||
["form.payeeList"]:list, | |||||
}) | |||||
}, | |||||
onChangePayeeMoney(event){ | onChangePayeeMoney(event){ | ||||
console.log(event); | console.log(event); | ||||
this.setData({ | this.setData({ | ||||
@@ -257,7 +257,7 @@ | |||||
</view> | </view> | ||||
<view class="add" bind:tap="addPayee">+</view> | <view class="add" bind:tap="addPayee">+</view> | ||||
</view> | </view> | ||||
<view class="main-box table-box" style="margin-bottom: 10px;" wx:if="{{form.bankType == 2 || form.bankType == 3 || form.bankType == 4}}"> | |||||
<view class="main-box table-box" style="margin-bottom: 10px;" wx:if="{{form.bankType == 2 || form.bankType == 3}}"> | |||||
<van-field required input-align="right" label="行内转账" center border="{{false}}"> | <van-field required input-align="right" label="行内转账" center border="{{false}}"> | ||||
<view slot="input" style="margin-left: auto;"> | <view slot="input" style="margin-left: auto;"> | ||||
<van-radio-group | <van-radio-group | ||||
@@ -275,6 +275,9 @@ | |||||
</view> | </view> | ||||
<view class="center-box"> | <view class="center-box"> | ||||
<view class="main-box table-box" wx:for="{{form.payeeList}}" wx:if="{{form.payeeList.length <= 10}}" wx:for-index="childrenIndex" wx:key="payeeId"> | <view class="main-box table-box" wx:for="{{form.payeeList}}" wx:if="{{form.payeeList.length <= 10}}" wx:for-index="childrenIndex" wx:key="payeeId"> | ||||
<view style="background-color: red;display: inline-block;width: 20px;height: 20px;text-align: center;border-radius: 50%;position: absolute;top: -10px;right: 0;" wx:if="{{ childrenIndex > 0}}" data-index="{{childrenIndex}}" bind:tap="removePayer"> | |||||
<van-icon name="minus" color="#ffffff" /> | |||||
</view> | |||||
<van-field required readonly value="{{ form.payeeList[childrenIndex].payee }}" placeholder="请选择收款方" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down" bindtap="goPayeeList" data-payer="{{form.payer}}" data-index="{{childrenIndex}}" data-isPeers="{{ form.isPeers }}" data-bankType="{{ form.bankType }}" data-accountType="{{ form.bankAccountType }}" data-transferType="{{ form.transferType }}"> | <van-field required readonly value="{{ form.payeeList[childrenIndex].payee }}" placeholder="请选择收款方" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down" bindtap="goPayeeList" data-payer="{{form.payer}}" data-index="{{childrenIndex}}" data-isPeers="{{ form.isPeers }}" data-bankType="{{ form.bankType }}" data-accountType="{{ form.bankAccountType }}" data-transferType="{{ form.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> | ||||
@@ -316,11 +319,11 @@ | |||||
<!-- wx:if="{{showFile}}" --> | <!-- wx:if="{{showFile}}" --> | ||||
<view class="file_box" wx:if="{{showFile}}"> | |||||
<view class="file_box" wx:if="{{showFile}}" > | |||||
<view class="title">上传附件</view> | <view class="title">上传附件</view> | ||||
<view class="add van-cell-text">总数<van-tag round color="#5CAE77" plain style="margin-left: 10px;"> {{form.fileNum?form.fileNum:0}}张 </van-tag></view> | <view class="add van-cell-text">总数<van-tag round color="#5CAE77" plain style="margin-left: 10px;"> {{form.fileNum?form.fileNum:0}}张 </van-tag></view> | ||||
</view> | </view> | ||||
<view class="main-box" wx:if="{{showFile}}"> | |||||
<view class="main-box" wx:if="{{showFile}}" > | |||||
<view class="fj-box"> | <view class="fj-box"> | ||||
<view class="fj-li"> | <view class="fj-li"> | ||||
<view class="fj-tt"> | <view class="fj-tt"> | ||||
@@ -365,6 +368,20 @@ | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<view class="fj-li"> | |||||
<view class="fj-tt"> | |||||
<text>四议两公开</text><van-tag type="danger" style="margin-left: 10px;">可拍照</van-tag> | |||||
</view> | |||||
<view class="img_box"> | |||||
<view class="img_list" wx:for="{{form.SYLGKimage}}" wx:for-index="childrenIndex" wx:key="id"> | |||||
<image class="img_li" src="{{item.tempFilePath}}" data-option="{{form.SYLGKimage}}" data-index="{{childrenIndex}}" bindtap="openPreview" ></image> | |||||
<van-icon name="/image/apply/img_delete.png" size="14px" data-index="{{childrenIndex}}" data-parentsIndex="{{index}}" data-name="form.QTimage" data-options="{{form.SYLGKimage}}" data-id="{{item.id}}" bindtap="deleteimg" /> | |||||
</view> | |||||
<view class="img_list"> | |||||
<image class="img_li img_add" src="/image/apply/fj_upload.png" data-index="{{index}}" bindtap="SYLGKtakephoto"></image> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | </view> | ||||
</view> | </view> | ||||
@@ -54,6 +54,7 @@ text{display: block;} | |||||
margin: 0 auto; | margin: 0 auto; | ||||
border-radius: 10px; | border-radius: 10px; | ||||
box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.16); | box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.16); | ||||
position: relative; | |||||
} | } | ||||
.main-box block{ | .main-box block{ | ||||
float: right; | float: right; | ||||
@@ -251,7 +251,7 @@ Page({ | |||||
upload(e){ | upload(e){ | ||||
this.setData({itemId:e.currentTarget.dataset.id}); | this.setData({itemId:e.currentTarget.dataset.id}); | ||||
this.asyncFun(e.currentTarget.dataset.id) | this.asyncFun(e.currentTarget.dataset.id) | ||||
this.setData({"fileList":[]}) | |||||
this.setData({fileList:[]}) | |||||
}, | }, | ||||
asyncFun(id){ | asyncFun(id){ | ||||
let uploadList = this.data.uploadOptions | let uploadList = this.data.uploadOptions | ||||
@@ -260,7 +260,7 @@ Page({ | |||||
uploadList.map( res => { | uploadList.map( res => { | ||||
let oData = { | let oData = { | ||||
tableId: id, | tableId: id, | ||||
tableName: "t_contraction_info", //上传表 | |||||
tableName: "t_contraction_fill", //上传表 | |||||
bizPath: "contraction", | bizPath: "contraction", | ||||
fileType: res.dictValue, //附件类型 1原始发票 2会议纪要 3会议照片 4 参会人员签字 | fileType: res.dictValue, //附件类型 1原始发票 2会议纪要 3会议照片 4 参会人员签字 | ||||
method:'GET' | method:'GET' | ||||
@@ -367,7 +367,7 @@ Page({ | |||||
let fileForm={ | let fileForm={ | ||||
file: event.detail, | file: event.detail, | ||||
fileType:event.currentTarget.dataset.idx, | fileType:event.currentTarget.dataset.idx, | ||||
tableName: "t_contraction_info", //上传表 | |||||
tableName: "t_contraction_fill", //上传表 | |||||
bizPath: "contraction", //上传目录 | bizPath: "contraction", //上传目录 | ||||
tableId:_this.data.itemId | tableId:_this.data.itemId | ||||
} | } | ||||
@@ -0,0 +1,166 @@ | |||||
// pages/finance/detailed_incomeAndExpenditurePublic/detailed_incomeAndExpenditurePublic.js | |||||
import * as UTIL from '../../../utils/util.js'; | |||||
import * as API from '../../../utils/API.js'; | |||||
const app = getApp(); | |||||
Page({ | |||||
/** | |||||
* 页面的初始数据 | |||||
*/ | |||||
data: { | |||||
isIPX: app.globalData.isIPX, | |||||
expressionOptions:[], | |||||
// 格数据 | |||||
loading: false, | |||||
finished: false, | |||||
pageDataList: [], | |||||
searchDate: { | |||||
bookDate: "", | |||||
templateName: '收支公开榜', | |||||
signature: false, // 添加底部落款 | |||||
}, | |||||
// 查询参数 | |||||
queryParams: { | |||||
// 分页 | |||||
pageNum: 1, | |||||
pageSize: 50, | |||||
startYyyy_MM: null, | |||||
endYyyy_MM: null, | |||||
title: '收支公开榜', | |||||
combineTitle: false, | |||||
// 查询排序 | |||||
//orderByColumn: "id", | |||||
//isAsc: "desc", | |||||
}, | |||||
list: [], | |||||
accountingYear: "", | |||||
accountingMonth: "", | |||||
// 显示搜索条件 | |||||
visible: false, | |||||
showPickerTime: false, | |||||
minDate: new Date(2020, 0, 1), | |||||
maxDate: new Date().getTime(), | |||||
currentDate: new Date(), | |||||
date:'' | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面加载 | |||||
*/ | |||||
onLoad(options) { | |||||
UTIL.httpRequest(API.getLoginBook,{}, { | |||||
success: (res) => { | |||||
if (res.code == API.SUCCESS_CODE) { | |||||
let currentDays = res.data.currentDay; | |||||
if (currentDays == null) { | |||||
UTIL.showToastNoneIcon("当前账套未开启!"); | |||||
return false; | |||||
} | |||||
let mindate = res.data.startDay.split('-') | |||||
let dealDays = currentDays.split("-"); | |||||
this.setData({ | |||||
accountingYear:dealDays[0], | |||||
accountingMonth:dealDays[1], | |||||
date: dealDays[0]+'年'+dealDays[1]+'月', | |||||
['searchDate.bookDate']:currentDays, | |||||
['queryParams.startYyyy_MM']:res.data.currentDay, | |||||
['queryParams.endYyyy_MM']:res.data.currentDay, | |||||
minDate: new Date(mindate[0],mindate[1]-1).getTime(), | |||||
['queryParams.deptId']:JSON.parse(wx.getStorageSync('user')).loginDeptId, | |||||
['queryParams.bookType']:JSON.parse(wx.getStorageSync('user')).bookType, | |||||
['queryParams.bookId']:JSON.parse(wx.getStorageSync('user')).loginBookId, | |||||
bookName:JSON.parse(wx.getStorageSync('user')).bookName, | |||||
}) | |||||
this.initPage() | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
initPage() { | |||||
var that = this; | |||||
UTIL.httpRequest(API.financialIncomeExpenditurePublic,this.data.queryParams, { | |||||
success: (res) => { | |||||
this.setData({ | |||||
pageDataList:res.rows, | |||||
total:res.total | |||||
}) | |||||
} | |||||
}); | |||||
}, | |||||
onConfirm(time) { | |||||
console.log(time.detail); | |||||
let date = UTIL.formatDates(time.detail).split('-'); | |||||
this.setData({ | |||||
date:date[0] + '年' + date[1] + '月', | |||||
['queryParams.startDate']:UTIL.formatDates(time.detail), | |||||
showPickerTime : false | |||||
}) | |||||
this.getList(); | |||||
}, | |||||
back:function(){ | |||||
wx.navigateBack({ | |||||
delta: 1 | |||||
}) | |||||
}, | |||||
openPick(){ | |||||
this.setData({ | |||||
showPickerTime:true | |||||
}) | |||||
}, | |||||
closePick(){ | |||||
this.setData({ | |||||
showPickerTime:false | |||||
}) | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面初次渲染完成 | |||||
*/ | |||||
onReady() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面显示 | |||||
*/ | |||||
onShow() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面隐藏 | |||||
*/ | |||||
onHide() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面卸载 | |||||
*/ | |||||
onUnload() { | |||||
}, | |||||
/** | |||||
* 页面相关事件处理函数--监听用户下拉动作 | |||||
*/ | |||||
onPullDownRefresh() { | |||||
}, | |||||
/** | |||||
* 页面上拉触底事件的处理函数 | |||||
*/ | |||||
onReachBottom() { | |||||
}, | |||||
/** | |||||
* 用户点击右上角分享 | |||||
*/ | |||||
onShareAppMessage() { | |||||
} | |||||
}) |
@@ -0,0 +1,6 @@ | |||||
{ | |||||
"usingComponents": { | |||||
"van-popup": "@vant/weapp/popup/index", | |||||
"van-datetime-picker": "@vant/weapp/datetime-picker/index" | |||||
} | |||||
} |
@@ -0,0 +1,68 @@ | |||||
<!--pages/finance/detailed_incomeAndExpenditurePublic/detailed_incomeAndExpenditurePublic.wxml--> | |||||
<view class="ns" id="top_ban" 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="home_wrapper" style="margin-top:{{isIPX?'88px':'64px'}};"> | |||||
<view class="search_info"> | |||||
<view class="date_box" bind:tap="openPick"> | |||||
<image src="/image/icon/date_icon.png"></image> | |||||
<p>{{date}}</p> | |||||
</view> | |||||
<van-popup show="{{showPickerTime}}" position="bottom"> | |||||
<van-datetime-picker | |||||
value="{{currentDate}}" | |||||
type="year-month" | |||||
title="选择年月" | |||||
min-date="{{minDate}}" | |||||
max-date="{{maxDate}}" | |||||
bind:confirm="onConfirm" | |||||
bind:cancel="closePick" | |||||
/> | |||||
</van-popup> | |||||
<!-- <view class="search_block"> | |||||
<image src="/image/apply/fixedAssets_icon_1.png" mode="" class="icon"/> | |||||
<input readonly type="text" class="ipt" value="{{subjectName}}" placeholder="请选择科目查询" bind:tap="" /> | |||||
<image src="/image/apply/delete_icon_input.png" mode="" class="delete_icon" wx:if="{{subjectName}}" bind:tap="emptyInput"/> | |||||
</view> --> | |||||
<!-- visible=true <view class="total">共{{listLength}}个资产</view> @input="getSearch"--> | |||||
</view> | |||||
<view class="balance-main"> | |||||
<view class="main-title"> | |||||
<view class="company">单位:{{ bookName }}</view> | |||||
<view class="nper">{{ accountingYear }}年{{ accountingMonth }}期</view> | |||||
<view class="amountOf">金额:元</view> | |||||
</view> | |||||
<view class="main-center"> | |||||
<view class="datagrid"> | |||||
<view class="header"> | |||||
<view class="header-title income" >收入</view> | |||||
<view class="header-title expenditure ">支出</view> | |||||
</view> | |||||
<view class="header"> | |||||
<view class="xmmc">日期</view> | |||||
<view class="qj">项目</view> | |||||
<view class="zy">金额</view> | |||||
<view class="dfje">日期</view> | |||||
<view class="fx">项目</view> | |||||
<view class="ye">金额</view> | |||||
</view> | |||||
<view class="mok_list"> | |||||
<ul class="list"> | |||||
<li wx:for="{{pageDataList}}" wx:key="index"> | |||||
<view class="xmmc">{{ item.incomeDate == null ? '' : item.incomeDate }}</view> | |||||
<view class="qj">{{ item.incomeSummary == null ? '' : item.incomeSummary }}</view> | |||||
<view class="zy">{{ item.incomeAmount == null ? '' : item.incomeAmount }}</view> | |||||
<view class="dfje">{{ item.expenditureDate == null ? '' : item.expenditureDate }}</view> | |||||
<view class="fx">{{ item.expenditureSummary == null ? '' : item.expenditureSummary }}</view> | |||||
<view class="ye">{{ item.expenditureAmount == null ? '' : item.expenditureAmount }}</view> | |||||
</li> | |||||
</ul> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> |
@@ -0,0 +1,221 @@ | |||||
/* pages/finance/detailed_incomeAndExpenditurePublic/detailed_incomeAndExpenditurePublic.wxss */ | |||||
@charset "UTF-8"; | |||||
.balance-main { | |||||
background: #fff; | |||||
} | |||||
.balance-main .main-title { | |||||
margin-bottom: 5PX; | |||||
padding: 0 10PX; | |||||
height: 33PX; | |||||
line-height: 33PX; | |||||
color: #333; | |||||
font-size: 13PX; | |||||
display: flex; | |||||
justify-content: space-between; | |||||
} | |||||
.balance-main .main-title .nper { | |||||
text-align: center; | |||||
} | |||||
.balance-main .main-title .amountOf { | |||||
text-align: right; | |||||
} | |||||
.balance-main .main-center { | |||||
border: 1PX solid #CACBCC; | |||||
border-bottom: 0; | |||||
overflow-x: scroll; | |||||
} | |||||
.balance-main .main-center .datagrid { | |||||
min-height: 100PX; | |||||
width: 250%; | |||||
/* 确保收入和支出部分的宽度相同 */ | |||||
} | |||||
.balance-main .main-center .datagrid .header { | |||||
background: #f8f8f9; | |||||
font-weight: bold; | |||||
display: flex; | |||||
} | |||||
.balance-main .main-center .datagrid .header-title { | |||||
font-weight: bold; | |||||
text-align: center; | |||||
margin-bottom: 5px; /* 根据需要调整间距 */ | |||||
} | |||||
.balance-main .main-center .datagrid .header-title.income, .balance-main .main-center .datagrid .header.income { | |||||
width: 50%; | |||||
border-bottom: 1PX solid #CACBCC; | |||||
} | |||||
.balance-main .main-center .datagrid .header-title.expenditure, .balance-main .main-center .datagrid .header.expenditure { | |||||
width: 50%; | |||||
border-bottom: 1PX solid #CACBCC; | |||||
} | |||||
.balance-main .main-center .datagrid .kmbm, | |||||
.balance-main .main-center .datagrid .header-title.expenditure, | |||||
.balance-main .main-center .datagrid .header-title.income, | |||||
.balance-main .main-center .datagrid .xmmc, | |||||
.balance-main .main-center .datagrid .qj, | |||||
.balance-main .main-center .datagrid .zy, | |||||
.balance-main .main-center .datagrid .jfje, | |||||
.balance-main .main-center .datagrid .dfje, | |||||
.balance-main .main-center .datagrid .fx, | |||||
.balance-main .main-center .datagrid .ye { | |||||
height: 29PX; | |||||
line-height: 29PX; | |||||
font-size: 13PX; | |||||
border-bottom: 1PX solid #CACBCC; | |||||
border-right: 1PX solid #CACBCC; | |||||
text-align: center; | |||||
} | |||||
.balance-main .main-center .datagrid .xmmc { | |||||
width: 12%; | |||||
text-align: left; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .qj { | |||||
width: 26%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .zy { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .dfje { | |||||
width: 12%; | |||||
text-align: left; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .fx { | |||||
width: 26%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .ye { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
border-right: 0; | |||||
} | |||||
.balance-main .main-center .datagrid .mok_list { | |||||
display: block; | |||||
overflow-y: scroll; | |||||
height: calc(100vh - 200PX); | |||||
} | |||||
.balance-main .main-center .datagrid .list { | |||||
width: 100%; | |||||
} | |||||
.balance-main .main-center .datagrid ul { | |||||
margin: 0; | |||||
padding: 0; | |||||
} | |||||
.balance-main .main-center .datagrid ul li { | |||||
display: block; | |||||
overflow: hidden; | |||||
list-style: none; | |||||
} | |||||
.balance-main .main-center .datagrid ul li.header { | |||||
background: #f8f8f9; | |||||
font-weight: bold; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .kmbm, | |||||
.balance-main .main-center .datagrid ul li .xmmc, | |||||
.balance-main .main-center .datagrid ul li .qj, | |||||
.balance-main .main-center .datagrid ul li .zy, | |||||
.balance-main .main-center .datagrid ul li .jfje, | |||||
.balance-main .main-center .datagrid ul li .dfje, | |||||
.balance-main .main-center .datagrid ul li .fx, | |||||
.balance-main .main-center .datagrid ul li .ye { | |||||
height: 29PX; | |||||
line-height: 29PX; | |||||
float: left; | |||||
font-size: 13PX; | |||||
border-bottom: 1PX solid #CACBCC; | |||||
border-right: 1PX solid #CACBCC; | |||||
text-align: center; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .xmmc { | |||||
width: 12%; | |||||
text-align: left; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .qj { | |||||
width: 26%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .zy { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .dfje { | |||||
width: 12%; | |||||
text-align: left; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .fx { | |||||
width: 26%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .ye { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
border-right: 0; | |||||
} | |||||
.date_box { | |||||
display: flex; | |||||
align-items: center; | |||||
} | |||||
.date_box image { | |||||
width: 30PX; | |||||
height: 30px; | |||||
border-radius: 100%; | |||||
box-shadow: 0px 6px 10px rgba(63, 68, 75, 0.5); | |||||
} | |||||
.date_box p { | |||||
font-size: 14PX; | |||||
margin-left: 5PX; | |||||
color: #2facfe; | |||||
} | |||||
.search_info { | |||||
padding: 20px 23px; | |||||
display: flex; | |||||
justify-content: space-between; | |||||
align-items: center; | |||||
} | |||||
.search_info .search_block { | |||||
height: 35px; | |||||
flex: 1; | |||||
border-radius: 59px; | |||||
background: #fff; | |||||
display: flex; | |||||
padding-right: 35px; | |||||
align-items: center; | |||||
box-shadow: 0px 6px 5px rgba(63, 68, 75, 0.2); | |||||
} | |||||
.search_info .search_block .icon { | |||||
width: 15px; | |||||
height: 15px; | |||||
display: block; | |||||
margin: 0 8px 0 26px; | |||||
} | |||||
.search_info .search_block .delete_icon { | |||||
width: 15PX; | |||||
height: 15PX; | |||||
display: block; | |||||
margin: 0 8px 0 26px; | |||||
} | |||||
.search_info .search_block .ipt { | |||||
flex: 1; | |||||
font-size: 14px; | |||||
background: none; | |||||
border: 0 none; | |||||
line-height: 59px; | |||||
} | |||||
.home_wrapper{ | |||||
background: #e9e9e9; | |||||
/* min-height: 100vh; */ | |||||
width: 100vw; | |||||
} |
@@ -0,0 +1,222 @@ | |||||
// pages/finance/detailed_liabilities/detailed_liabilities.js | |||||
import * as UTIL from '../../../utils/util.js'; | |||||
import * as API from '../../../utils/API.js'; | |||||
const app = getApp(); | |||||
Page({ | |||||
/** | |||||
* 页面的初始数据 | |||||
*/ | |||||
data: { | |||||
isIPX: app.globalData.isIPX, | |||||
expressionOptions:[], | |||||
searchDate: { | |||||
bookDate: "", | |||||
templateName: '资产负债表', | |||||
signature: false, // 添加底部落款 | |||||
}, | |||||
list: [], | |||||
accountingYear: "", | |||||
accountingMonth: "", | |||||
// 显示搜索条件 | |||||
visible: false, | |||||
showPickerTime: false, | |||||
subjectName:'请选择科目查询', | |||||
minDate: new Date().getTime(), | |||||
maxDate: new Date().getTime(), | |||||
currentDate: new Date(), | |||||
date:'' | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面加载 | |||||
*/ | |||||
onLoad(options) { | |||||
UTIL.httpRequest(API.getLoginBook,{}, { | |||||
success: (res) => { | |||||
if (res.code == API.SUCCESS_CODE) { | |||||
let currentDays = res.data.currentDay; | |||||
if (currentDays == null) { | |||||
UTIL.showToastNoneIcon("当前账套未开启!"); | |||||
return false; | |||||
} | |||||
let mindate = res.data.startDay.split('-') | |||||
let dealDays = currentDays.split("-"); | |||||
this.setData({ | |||||
accountingYear:dealDays[0], | |||||
accountingMonth:dealDays[1], | |||||
date: dealDays[0]+'年'+dealDays[1]+'月', | |||||
['searchDate.bookDate']:currentDays, | |||||
minDate: new Date(mindate[0],mindate[1]-1).getTime(), | |||||
}) | |||||
this.initPage() | |||||
} | |||||
} | |||||
}); | |||||
UTIL.httpRequest(API.expressionReportByCategory+'资产负债表',{}, { | |||||
success: (res) => { | |||||
if (res.code == API.SUCCESS_CODE) { | |||||
let content = res.data; | |||||
this.setData({ | |||||
expressionOptions:content | |||||
}) | |||||
} | |||||
} | |||||
}); | |||||
}, | |||||
initPage() { | |||||
var that = this; | |||||
UTIL.httpRequest(API.assetLiabilityReportByExpTpl,this.data.searchDate, { | |||||
success: (res) => { | |||||
if (res.code == API.SUCCESS_CODE) { | |||||
let content = res.data; | |||||
this.setData({ | |||||
list:content.list.map((x) => { | |||||
x.ncyeLeft = that.formatNum(x.ncyeLeft); | |||||
x.qmyeLeft = that.formatNum(x.qmyeLeft); | |||||
x.ncyeRight = that.formatNum(x.ncyeRight); | |||||
x.qmyeRight = that.formatNum(x.qmyeRight); | |||||
return x; | |||||
}) | |||||
}) | |||||
} | |||||
} | |||||
}); | |||||
}, | |||||
formatNum(value) { | |||||
if(value === undefined || value === null) | |||||
return ''; | |||||
if(typeof(value) === "string") | |||||
{ | |||||
if(value.indexOf(',') !== -1) | |||||
return value; | |||||
value = Number(value); | |||||
if(isNaN(value)) | |||||
return ''; | |||||
} | |||||
if(value === 0) | |||||
return ''; | |||||
return this.numFormat(value); | |||||
}, | |||||
numFormat(value) { | |||||
if (value == null) { | |||||
return ""; | |||||
} | |||||
if (!value) return "0.00"; | |||||
value = value.toFixed(2); | |||||
let is_neg = value < 0; | |||||
var intPart = Math.abs(Math.trunc(value)); // 获取整数部分 | |||||
var intPartFormat = intPart.toString() | |||||
.replace(/(\d)(?=(?:\d{3})+$)/g, "$1,"); // 将整数部分逢三一断 | |||||
if(is_neg) | |||||
intPartFormat = '-' + intPartFormat; | |||||
var floatPart = ".00"; // 预定义小数部分 | |||||
var value2Array = value.split("."); | |||||
// =2表示数据有小数位 | |||||
if (value2Array.length === 2) { | |||||
floatPart = value2Array[1].toString(); // 拿到小数部分 | |||||
if (floatPart.length === 1) { | |||||
// 补0,实际上用不着 | |||||
return intPartFormat + "." + floatPart + "0"; | |||||
} else { | |||||
return intPartFormat + "." + floatPart; | |||||
} | |||||
} else { | |||||
return intPartFormat + floatPart; | |||||
} | |||||
}, | |||||
openPick(){ | |||||
this.setData({ | |||||
showPickerTime:true | |||||
}) | |||||
}, | |||||
closePick(){ | |||||
this.setData({ | |||||
showPickerTime:false | |||||
}) | |||||
}, | |||||
onConfirm(time) { | |||||
console.log(time.detail); | |||||
let date = UTIL.formatDates(time.detail).split('-'); | |||||
this.setData({ | |||||
date:date[0] + '年' + date[1] + '月', | |||||
['queryParams.startDate']:UTIL.formatDates(time.detail), | |||||
showPickerTime : false | |||||
}) | |||||
this.getList(); | |||||
}, | |||||
back:function(){ | |||||
wx.navigateBack({ | |||||
delta: 1 | |||||
}) | |||||
}, | |||||
closePickEx(){ | |||||
this.setData({ | |||||
visible : false | |||||
}) | |||||
}, | |||||
openPickEx(){ | |||||
this.setData({ | |||||
visible : true | |||||
}) | |||||
}, | |||||
onConfirmExpression(data){ | |||||
console.log(data); | |||||
this.setData({ | |||||
subjectName:data.detail.value.name, | |||||
['searchDate.templateName']: data.detail.value.name, | |||||
visible : false | |||||
}) | |||||
this.initPage(); | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面初次渲染完成 | |||||
*/ | |||||
onReady() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面显示 | |||||
*/ | |||||
onShow() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面隐藏 | |||||
*/ | |||||
onHide() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面卸载 | |||||
*/ | |||||
onUnload() { | |||||
}, | |||||
/** | |||||
* 页面相关事件处理函数--监听用户下拉动作 | |||||
*/ | |||||
onPullDownRefresh() { | |||||
}, | |||||
/** | |||||
* 页面上拉触底事件的处理函数 | |||||
*/ | |||||
onReachBottom() { | |||||
}, | |||||
/** | |||||
* 用户点击右上角分享 | |||||
*/ | |||||
onShareAppMessage() { | |||||
} | |||||
}) |
@@ -0,0 +1,7 @@ | |||||
{ | |||||
"usingComponents": { | |||||
"van-popup": "@vant/weapp/popup/index", | |||||
"van-picker": "@vant/weapp/picker/index", | |||||
"van-datetime-picker": "@vant/weapp/datetime-picker/index" | |||||
} | |||||
} |
@@ -0,0 +1,71 @@ | |||||
<!--pages/finance/detailed_liabilities/detailed_liabilities.wxml--> | |||||
<view class="ns" id="top_ban" 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="home_wrapper" style="margin-top:{{isIPX?'88px':'64px'}};"> | |||||
<view class="search_info"> | |||||
<view class="date_box" bind:tap="openPick"> | |||||
<image src="/image/icon/date_icon.png"></image> | |||||
<p>{{date}}</p> | |||||
</view> | |||||
<van-popup show="{{showPickerTime}}" position="bottom"> | |||||
<van-datetime-picker | |||||
value="{{currentDate}}" | |||||
type="year-month" | |||||
title="选择年月" | |||||
min-date="{{minDate}}" | |||||
max-date="{{maxDate}}" | |||||
bind:confirm="onConfirm" | |||||
bind:cancel="closePick" | |||||
/> | |||||
</van-popup> | |||||
<view class="search_block"> | |||||
<image src="/image/apply/fixedAssets_icon_1.png" mode="" class="icon"/> | |||||
<view class="ipt" bind:tap="openPickEx">{{searchDate.templateName}}</view> | |||||
</view> | |||||
<van-popup show="{{visible}}" position="bottom"> | |||||
<van-picker | |||||
show-toolbar | |||||
columns="{{expressionOptions}}" | |||||
value-key="name" | |||||
bind:confirm="onConfirmExpression" | |||||
bind:cancel="closePickEx" | |||||
/> | |||||
</van-popup> | |||||
<!-- visible=true <view class="total">共{{listLength}}个资产</view> @input="getSearch"--> | |||||
</view> | |||||
<view class="balance-main"> | |||||
<view class="main-title"> | |||||
<view class="company">单位:{{ this.$store.getters.bookName }}</view> | |||||
<view class="nper">{{ accountingYear }}年{{ accountingMonth }}期</view> | |||||
<view class="amountOf">金额:元</view> | |||||
</view> | |||||
<view class="main-center"> | |||||
<view class="datagrid"> | |||||
<view class="header"> | |||||
<view class="xmmc">资产</view> | |||||
<view class="qj">年初余额</view> | |||||
<view class="zy">期末余额</view> | |||||
<view class="dfje">负债与所有者权益</view> | |||||
<view class="fx">年初余额</view> | |||||
<view class="ye">期末余额</view> | |||||
</view> | |||||
<view class="mok_list"> | |||||
<ul class="list"> | |||||
<li wx:for="{{list}}" wx:key="index"> | |||||
<view class="xmmc">{{ item.subjectNameLeft }}</view> | |||||
<view class="qj">{{ item.ncyeLeft }}</view> | |||||
<view class="zy">{{ item.qmyeLeft }}</view> | |||||
<view class="dfje">{{ item.subjectNameRight }}</view> | |||||
<view class="fx">{{ item.ncyeRight }}</view> | |||||
<view class="ye">{{ item.qmyeRight }}</view> | |||||
</li> | |||||
</ul> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> |
@@ -0,0 +1,214 @@ | |||||
/* pages/finance/detailed_liabilities/detailed_liabilities.wxss */ | |||||
.balance-main { | |||||
background: #fff; | |||||
} | |||||
.balance-main .main-title { | |||||
margin-bottom: 5PX; | |||||
padding: 0 10PX; | |||||
height: 33PX; | |||||
line-height: 33PX; | |||||
color: #333; | |||||
font-size: 13PX; | |||||
display: flex; | |||||
justify-content: space-between; | |||||
} | |||||
.balance-main .main-title .nper { | |||||
text-align: center; | |||||
} | |||||
.balance-main .main-title .amountOf { | |||||
text-align: right; | |||||
} | |||||
.balance-main .main-center { | |||||
border: 1PX solid #CACBCC; | |||||
border-bottom: 0; | |||||
overflow-x: scroll; | |||||
} | |||||
.balance-main .main-center .datagrid { | |||||
min-height: 100PX; | |||||
width: 250%; | |||||
} | |||||
.balance-main .main-center .datagrid .header { | |||||
background: #f8f8f9; | |||||
font-weight: bold; | |||||
display: flex; | |||||
color: #278dff; | |||||
} | |||||
.balance-main .main-center .datagrid .kmbm, | |||||
.balance-main .main-center .datagrid .xmmc, | |||||
.balance-main .main-center .datagrid .qj, | |||||
.balance-main .main-center .datagrid .zy, | |||||
.balance-main .main-center .datagrid .jfje, | |||||
.balance-main .main-center .datagrid .dfje, | |||||
.balance-main .main-center .datagrid .fx, | |||||
.balance-main .main-center .datagrid .ye { | |||||
height: 29PX; | |||||
line-height: 29PX; | |||||
font-size: 13PX; | |||||
border-bottom: 1PX solid #CACBCC; | |||||
border-right: 1PX solid #CACBCC; | |||||
text-align: center; | |||||
} | |||||
.balance-main .main-center .datagrid .xmmc { | |||||
width: 26%; | |||||
text-align: left; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .qj { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .zy { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .dfje { | |||||
width: 26%; | |||||
text-align: left; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .fx { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .ye { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
border-right: 0; | |||||
} | |||||
.balance-main .main-center .datagrid .mok_list { | |||||
display: block; | |||||
overflow-y: scroll; | |||||
height: calc(100vh - 200PX); | |||||
} | |||||
.balance-main .main-center .datagrid .list { | |||||
width: 100%; | |||||
} | |||||
.balance-main .main-center .datagrid ul { | |||||
margin: 0; | |||||
padding: 0; | |||||
} | |||||
.balance-main .main-center .datagrid ul li { | |||||
display: block; | |||||
overflow: hidden; | |||||
list-style: none; | |||||
} | |||||
.balance-main .main-center .datagrid ul li.header { | |||||
background: #f8f8f9; | |||||
font-weight: bold; | |||||
} | |||||
.balance-main .main-center .datagrid ul li:nth-child(even) { | |||||
background: #e9e9e9; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .kmbm, | |||||
.balance-main .main-center .datagrid ul li .xmmc, | |||||
.balance-main .main-center .datagrid ul li .qj, | |||||
.balance-main .main-center .datagrid ul li .zy, | |||||
.balance-main .main-center .datagrid ul li .jfje, | |||||
.balance-main .main-center .datagrid ul li .dfje, | |||||
.balance-main .main-center .datagrid ul li .fx, | |||||
.balance-main .main-center .datagrid ul li .ye { | |||||
height: 29PX; | |||||
line-height: 29PX; | |||||
float: left; | |||||
font-size: 13PX; | |||||
border-bottom: 1PX solid #CACBCC; | |||||
border-right: 1PX solid #CACBCC; | |||||
text-align: center; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .xmmc { | |||||
width: 26%; | |||||
text-align: left; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .qj { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .zy { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .dfje { | |||||
width: 26%; | |||||
text-align: left; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .fx { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .ye { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
border-right: 0; | |||||
} | |||||
.radio_box{ | |||||
display: flex; | |||||
justify-content: space-between; | |||||
align-items: center; | |||||
padding:20px 23px; | |||||
} | |||||
.date_box { | |||||
display: flex; | |||||
align-items: center; | |||||
} | |||||
.date_box image { | |||||
width: 30PX; | |||||
height: 30px; | |||||
border-radius: 100%; | |||||
box-shadow: 0px 6px 10px rgba(63, 68, 75, 0.5); | |||||
} | |||||
.date_box p { | |||||
font-size: 14PX; | |||||
margin-left: 5PX; | |||||
color: #2facfe; | |||||
} | |||||
.search_info { | |||||
padding: 20px 23px; | |||||
display: flex; | |||||
justify-content: space-between; | |||||
align-items: center; | |||||
} | |||||
.search_info .search_block { | |||||
height: 35px; | |||||
flex: 1; | |||||
border-radius: 59px; | |||||
background: #fff; | |||||
display: flex; | |||||
padding-right: 35px; | |||||
align-items: center; | |||||
box-shadow: 0px 6px 5px rgba(63, 68, 75, 0.2); | |||||
margin-left: 20px; | |||||
} | |||||
.search_info .search_block .icon { | |||||
width: 15px; | |||||
height: 15px; | |||||
display: block; | |||||
margin: 0 8px 0 15px; | |||||
} | |||||
.search_info .search_block .delete_icon { | |||||
width: 15PX; | |||||
height: 15PX; | |||||
display: block; | |||||
margin: 0 8px 0 26px; | |||||
} | |||||
.search_info .search_block .ipt { | |||||
flex: 1; | |||||
font-size: 14px; | |||||
background: none; | |||||
border: 0 none; | |||||
line-height: 59px; | |||||
} | |||||
.home_wrapper{ | |||||
background: #e9e9e9; | |||||
/* min-height: 100vh; */ | |||||
width: 100vw; | |||||
} |
@@ -11,7 +11,25 @@ Page({ | |||||
isIPX: app.globalData.isIPX, | isIPX: app.globalData.isIPX, | ||||
list:[] | list:[] | ||||
}, | }, | ||||
goList(e){ | |||||
let type = e.currentTarget.dataset.type; | |||||
if(type == 'yeb'){ | |||||
wx.navigateTo({ | |||||
url: 'list_balance_ranking/list_balance_ranking', | |||||
}) | |||||
} | |||||
if(type == 'fzb'){ | |||||
wx.navigateTo({ | |||||
url: 'detailed_liabilities/detailed_liabilities', | |||||
}) | |||||
} | |||||
if(type == 'gkb'){ | |||||
wx.navigateTo({ | |||||
url: 'detailed_incomeAndExpenditurePublic/detailed_incomeAndExpenditurePublic', | |||||
}) | |||||
} | |||||
}, | |||||
/** | /** | ||||
* 生命周期函数--监听页面加载 | * 生命周期函数--监听页面加载 | ||||
*/ | */ | ||||
@@ -43,8 +61,12 @@ Page({ | |||||
if(res.code == 200){ | if(res.code == 200){ | ||||
for (let i = 0; i < res.rows.length; i++) { | for (let i = 0; i < res.rows.length; i++) { | ||||
const element = res.rows[i]; | const element = res.rows[i]; | ||||
element.openPic = element.openPic.split(','); | |||||
element.openFile = element.openFile.split(','); | |||||
if(element.openPic){ | |||||
element.openPic = element.openPic.split(','); | |||||
} | |||||
if(element.openFile){ | |||||
element.openFile = element.openFile.split(','); | |||||
} | |||||
} | } | ||||
// wx.getStorageSync('dressCode')+ | // wx.getStorageSync('dressCode')+ | ||||
if (res.rows.length>0) { | if (res.rows.length>0) { | ||||
@@ -13,6 +13,8 @@ | |||||
"van-dropdown-menu": "@vant/weapp/dropdown-menu/index", | "van-dropdown-menu": "@vant/weapp/dropdown-menu/index", | ||||
"van-popup": "@vant/weapp/popup/index", | "van-popup": "@vant/weapp/popup/index", | ||||
"van-dialog": "@vant/weapp/dialog/index", | "van-dialog": "@vant/weapp/dialog/index", | ||||
"van-grid": "@vant/weapp/grid/index", | |||||
"van-grid-item": "@vant/weapp/grid-item/index", | |||||
"van-dropdown-item": "@vant/weapp/dropdown-item/index" | "van-dropdown-item": "@vant/weapp/dropdown-item/index" | ||||
} | } | ||||
} | } |
@@ -13,7 +13,20 @@ | |||||
bind:change="goSearch" | bind:change="goSearch" | ||||
/> | /> | ||||
</view> | </view> | ||||
<view class="grid_main"> | |||||
<view bind:tap="goList" data-type="yeb"> | |||||
<image src="/image/index/index_block_04.png" mode="heightFix"/> | |||||
<text>余额表</text> | |||||
</view> | |||||
<view text="负债表" bind:tap="goList" data-type="fzb"> | |||||
<image src="/image/index/index_block_23.png" mode="heightFix"/> | |||||
<text>负债表</text> | |||||
</view> | |||||
<view text="公开表" bind:tap="goList" data-type="gkb"> | |||||
<image src="/image/index/index_block_26.png" mode="heightFix"/> | |||||
<text>公开表</text> | |||||
</view> | |||||
</view> | |||||
<scroll-view scroll-y refresher-threshold="0" style="height:100%" bindscrolltolower="paging" lower-threshold="100"> | <scroll-view scroll-y refresher-threshold="0" style="height:100%" bindscrolltolower="paging" lower-threshold="100"> | ||||
<!-- wx:for="{{list}}" wx:key="index" wx:for-item="item" right-width="{{ 50 }}" --> | <!-- wx:for="{{list}}" wx:key="index" wx:for-item="item" right-width="{{ 50 }}" --> | ||||
<van-swipe-cell right-width="{{ 65 }}" class="workflow" wx:for="{{list}}" wx:key="index" > | <van-swipe-cell right-width="{{ 65 }}" class="workflow" wx:for="{{list}}" wx:key="index" > | ||||
@@ -3,6 +3,37 @@ | |||||
border: 1px solid #5CAE77!important; | border: 1px solid #5CAE77!important; | ||||
background: #fff!important; | background: #fff!important; | ||||
} | } | ||||
.van-grid-item__content--square { | |||||
padding-top: 0; | |||||
padding-bottom: 0; | |||||
} | |||||
.grid_main{ | |||||
width: 94%; | |||||
margin: 0 auto 2vh; | |||||
overflow: hidden; | |||||
border-radius: 15px; | |||||
box-shadow: 0 8px 20px rgba(3, 3, 67, .1); | |||||
display: flex; | |||||
justify-content: space-around; | |||||
align-items: center; | |||||
background-color: #ffffff; | |||||
padding: 2vh 0; | |||||
} | |||||
.grid_main view{ | |||||
font-size: 14px; | |||||
color: #333333; | |||||
display: flex; | |||||
flex-direction: column; | |||||
align-items: center; | |||||
} | |||||
.grid_main view text{ | |||||
font-size: 14px; | |||||
color: #333333; | |||||
margin-top: 5px; | |||||
} | |||||
.grid_main view image{ | |||||
height: 43px; | |||||
} | |||||
van-search { | van-search { | ||||
flex: 0.8; | flex: 0.8; | ||||
} | } | ||||
@@ -0,0 +1,319 @@ | |||||
// pages/finance/list_balance_ranking/list_balance_ranking.js | |||||
import * as UTIL from '../../../utils/util.js'; | |||||
import * as API from '../../../utils/API.js'; | |||||
const app = getApp(); | |||||
Page({ | |||||
/** | |||||
* 页面的初始数据 | |||||
*/ | |||||
data: { | |||||
popupVisible:false, | |||||
subjects:[], | |||||
isIPX: app.globalData.isIPX, | |||||
subjectName:'', | |||||
visible:false, | |||||
subjectId:'', | |||||
radio:'1', | |||||
applicationList:[], | |||||
applicationListSecond:[], | |||||
assetStatusOptions:[], | |||||
auditStatus:[], | |||||
loading: false, | |||||
finished: false, | |||||
show: false, | |||||
showTab: false, | |||||
showPickerTime: false, | |||||
fileList:[], | |||||
listLength:'0', | |||||
searchInput:'', | |||||
queryParams:{ | |||||
pageNum:1, | |||||
pageSize:999, | |||||
startDate:'', | |||||
startSubjectId:'', | |||||
endSubjectId:'', | |||||
showSubSubject:false | |||||
}, | |||||
uploadFiles1:[], | |||||
projectId:'', | |||||
projectIndex:'', | |||||
showBtn:true, | |||||
yearMonth:[], | |||||
deptName:'', | |||||
minDate: new Date().getTime(), | |||||
maxDate: new Date().getTime(), | |||||
currentDate: new Date(), | |||||
date:'' | |||||
}, | |||||
changeTabItem(e){ | |||||
console.log(e.detail.currentTarget.dataset.item); | |||||
console.log(e); | |||||
this.setData({ | |||||
subjectName:e.detail.currentTarget.dataset.item.subjectId+ " " + e.detail.currentTarget.dataset.item.subjectName, | |||||
['queryParams.endSubjectId']:e.detail.currentTarget.dataset.item.subjectId, | |||||
popupVisible:false | |||||
}) | |||||
this.getList(); | |||||
}, | |||||
showSub(event){ | |||||
this.setData({ | |||||
['queryParams.showSubSubject']:event.detail | |||||
}) | |||||
this.getList(); | |||||
}, | |||||
onClose(e){ | |||||
console.log(e); | |||||
this.setData({ | |||||
popupVisible:false | |||||
}) | |||||
}, | |||||
openTabs(e){ | |||||
console.log(e); | |||||
this.setData({ | |||||
tabsVisible:true | |||||
}) | |||||
this.selectComponent('#tabs').resize(); | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面加载 | |||||
*/ | |||||
onLoad(options) { | |||||
UTIL.httpRequest(API.getLoginBook,{}, { | |||||
success: (res) => { | |||||
if (res.code == API.SUCCESS_CODE) { | |||||
if (res.data.currentDay != null || res.data.startDay != null){ | |||||
let resDate = res.data.currentDay != null ? res.data.currentDay : res.data.startDay != null ? res.data.startDay : UTIL.formatDates(new Date()) | |||||
let date = resDate.split('-'); | |||||
let mindate = res.data.startDay.split('-') | |||||
this.setData({ | |||||
date:date[0] + '年' + date[1] + '月', | |||||
currentDate:new Date(date[0], date[1]-1, 1).getTime(), | |||||
['queryParams.startDate']:resDate, | |||||
minDate: new Date(mindate[0],mindate[1]-1).getTime(), | |||||
}) | |||||
this.getList(); | |||||
this.getSubjects(); | |||||
} | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
getList(){ | |||||
var _this = this; | |||||
setTimeout(() => { | |||||
UTIL.httpRequest(API.trailBalanceList,_this.data.queryParams, { | |||||
success: (response) => { | |||||
// _this.data.listLength = response.total; | |||||
response.rows.map(res=>{ | |||||
res.bqjffs = Number(res.bqjffs).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
return $1 + ","; }).replace(/\.$/, ""); | |||||
res.bqdffs = Number(res.bqdffs).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
return $1 + ","; }).replace(/\.$/, ""); | |||||
res.qcjfye = Number(res.qcjfye).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
return $1 + ","; }).replace(/\.$/, ""); | |||||
res.qcdfye = Number(res.qcdfye).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
return $1 + ","; }).replace(/\.$/, ""); | |||||
res.qmjffs = Number(res.qmjffs).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
return $1 + ","; }).replace(/\.$/, ""); | |||||
res.qmdffs = Number(res.qmdffs).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
return $1 + ","; }).replace(/\.$/, ""); | |||||
}) | |||||
// _this.data.applicationList = response.rows; | |||||
_this.setData({ | |||||
listLength:response.total, | |||||
applicationList:response.rows, | |||||
}) | |||||
} | |||||
}); | |||||
}, 1000); | |||||
}, | |||||
openPick(){ | |||||
this.setData({ | |||||
showPickerTime:true | |||||
}) | |||||
}, | |||||
closePick(){ | |||||
this.setData({ | |||||
showPickerTime:false | |||||
}) | |||||
}, | |||||
onConfirm(time) { | |||||
console.log(time.detail); | |||||
let date = UTIL.formatDates(time.detail).split('-'); | |||||
this.setData({ | |||||
date:date[0] + '年' + date[1] + '月', | |||||
['queryParams.startDate']:UTIL.formatDates(time.detail), | |||||
showPickerTime : false | |||||
}) | |||||
this.getList(); | |||||
}, | |||||
back:function(){ | |||||
wx.navigateBack({ | |||||
delta: 1 | |||||
}) | |||||
}, | |||||
getSubjects() { | |||||
this.data.subjects = []; | |||||
var that = this; | |||||
let map = {}; | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'subject_type', {method:'GET'}, { | |||||
success: (resp) => { | |||||
this.setData({ | |||||
subjects:resp.data.map((x) => { | |||||
let item = { | |||||
subjectId: x.dictValue, | |||||
subjectName: x.dictLabel, | |||||
subjectNameAll: x.dictLabel, | |||||
subjectType: x.dictValue, | |||||
subjectLevel: 0, | |||||
children: [], | |||||
visible: true, | |||||
}; | |||||
map[x.dictValue] = item; | |||||
return item; | |||||
}) | |||||
}); | |||||
console.log(this.data.subjects); | |||||
UTIL.httpRequest('/finance/subject/listAll',{year:this.data.queryParams.startDate ? this.data.queryParams.startDate.substr(0, 4) : null}, { | |||||
success: (resp) => { | |||||
let list = this.makeTree(resp.rows || resp.data); | |||||
console.log(list); | |||||
for(let v of list) | |||||
{ | |||||
if(v.subjectId.length === 3) | |||||
{ | |||||
map[v.subjectType].children.push(v); | |||||
} | |||||
} | |||||
this.setData({ | |||||
subjects:this.data.subjects | |||||
}) | |||||
} | |||||
}); | |||||
} | |||||
}) | |||||
// this.getDicts('subject_type').then((resp) => { | |||||
// let url = '/finance/subject/listAll?year='+this.yearNews; // '/open/villageAffairs/public/subjects/153' | |||||
// request(url).then((resp) => { | |||||
// }) | |||||
// }); | |||||
}, | |||||
makeTree(list) { | |||||
function isnull(p) { | |||||
return p === null || p === undefined || p === ''; | |||||
} | |||||
function makeTree_r(l, p) { | |||||
const isRoot = isnull(p); | |||||
let res = []; | |||||
for(let v of l) | |||||
{ | |||||
if((isRoot && isnull(v.parentId)) || (!isRoot && v.parentId == p)) | |||||
{ | |||||
let arr = makeTree_r(l, v.subjectId); | |||||
if(arr.length > 0) | |||||
v.children = arr; | |||||
else | |||||
delete v.children; | |||||
res.push(v); | |||||
} | |||||
} | |||||
return res; | |||||
} | |||||
return makeTree_r(list.map((x) => { | |||||
x.visible = true; | |||||
return x; | |||||
})); | |||||
}, | |||||
openPup(){ | |||||
this.setData({ | |||||
popupVisible:true | |||||
}) | |||||
}, | |||||
onTabChanged(){ | |||||
this.setData({searchValue:''}) | |||||
this.onSearch(); | |||||
}, | |||||
onSearch(value) { | |||||
function handleTree_r(l, func) { | |||||
let res = 0; | |||||
for(let v of l) | |||||
{ | |||||
let r = func(v) ? 1 : 0; | |||||
if(v.children && Array.isArray(v.children) && v.children.length > 0) | |||||
{ | |||||
r += handleTree_r(v.children, func); | |||||
} | |||||
v.visible = r > 0; | |||||
res += r; | |||||
} | |||||
return res; | |||||
} | |||||
for(let v of this.data.subjects) | |||||
{ | |||||
if(v.subjectId === this.data.active && value) | |||||
{ | |||||
handleTree_r(v.children, (x) => x.subjectId.startsWith(value) || x.subjectName.indexOf(value) !== -1); | |||||
} | |||||
else | |||||
{ | |||||
handleTree_r(v.children, (x) => true); | |||||
} | |||||
} | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面初次渲染完成 | |||||
*/ | |||||
onReady() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面显示 | |||||
*/ | |||||
onShow() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面隐藏 | |||||
*/ | |||||
onHide() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面卸载 | |||||
*/ | |||||
onUnload() { | |||||
}, | |||||
/** | |||||
* 页面相关事件处理函数--监听用户下拉动作 | |||||
*/ | |||||
onPullDownRefresh() { | |||||
}, | |||||
/** | |||||
* 页面上拉触底事件的处理函数 | |||||
*/ | |||||
onReachBottom() { | |||||
}, | |||||
/** | |||||
* 用户点击右上角分享 | |||||
*/ | |||||
onShareAppMessage() { | |||||
} | |||||
}) |
@@ -0,0 +1,13 @@ | |||||
{ | |||||
"usingComponents": { | |||||
"childrenPage":"/component/SubjectTreeChooserNodeItem/childrenPage", | |||||
"van-popup": "@vant/weapp/popup/index", | |||||
"van-datetime-picker": "@vant/weapp/datetime-picker/index", | |||||
"van-checkbox": "@vant/weapp/checkbox/index", | |||||
"van-tab": "@vant/weapp/tab/index", | |||||
"van-tabs": "@vant/weapp/tabs/index", | |||||
"van-collapse": "@vant/weapp/collapse/index", | |||||
"van-collapse-item": "@vant/weapp/collapse-item/index", | |||||
"van-checkbox-group": "@vant/weapp/checkbox-group/index" | |||||
} | |||||
} |
@@ -0,0 +1,94 @@ | |||||
<!--pages/finance/list_balance_ranking/list_balance_ranking.wxml--> | |||||
<view class="ns" id="top_ban" 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="home_wrapper" style="margin-top:{{isIPX?'88px':'64px'}};"> | |||||
<view class="search_info"> | |||||
<view class="date_box" bind:tap="openPick"> | |||||
<image src="/image/icon/date_icon.png"></image> | |||||
<p>{{date}}</p> | |||||
</view> | |||||
<van-popup show="{{showPickerTime}}" position="bottom"> | |||||
<van-datetime-picker | |||||
value="{{currentDate}}" | |||||
type="year-month" | |||||
title="选择年月" | |||||
min-date="{{minDate}}" | |||||
max-date="{{maxDate}}" | |||||
bind:confirm="onConfirm" | |||||
bind:cancel="closePick" | |||||
/> | |||||
</van-popup> | |||||
<view class="search_block"> | |||||
<image src="/image/apply/fixedAssets_icon_1.png" mode="" class="icon"/> | |||||
<view class="ipt" bind:tap="openPup" >{{subjectName==''?'请选择科目查询':subjectName}}</view> | |||||
<image src="/image/apply/delete_icon_input.png" mode="" class="delete_icon" wx:if="{{subjectName}}" bind:tap="emptyInput"/> | |||||
</view> | |||||
<!-- visible=true <view class="total">共{{listLength}}个资产</view> @input="getSearch"--> | |||||
</view> | |||||
<view class="radio_box"> | |||||
<van-checkbox value="{{queryParams.showSubSubject}}" bind:change="showSub" checked-color="#2facfe">显示明细</van-checkbox> | |||||
<view class="total">共{{listLength}}条</view> | |||||
</view> | |||||
<view class="balance-main"> | |||||
<!-- <view class="main-title">--> | |||||
<!-- <view class="company">单位:{{ this.$store.getters.bookName }}</view>--> | |||||
<!-- <view class="nper">{{ accountingYear }}年{{ accountingMonth }}期</view>--> | |||||
<!-- <view class="amountOf">金额:元</view>--> | |||||
<!-- </view>--> | |||||
<view class="main-center"> | |||||
<view class="datagrid"> | |||||
<view class="header"> | |||||
<view class="xmmc">科目</view> | |||||
<view class="qj">期初余额</view> | |||||
<view class="zy">本期发生</view> | |||||
<view class="dfje">期末余额</view> | |||||
</view> | |||||
<view class="header header_sec"> | |||||
<view class="xmmc">编码</view> | |||||
<view class="qj">名称</view> | |||||
<view class="zy">本期发生</view> | |||||
<view class="dfje">期末余额</view> | |||||
<view class="xmmc">科目</view> | |||||
<view class="qj">期初余额</view> | |||||
<view class="zy">本期发生</view> | |||||
<view class="dfje">期末余额</view> | |||||
</view> | |||||
<view class="mok_list"> | |||||
<ul class="list"> | |||||
<li class="header_sec" wx:for="{{applicationList}}" wx:key="id"> | |||||
<view class="xmmc">{{ item.subjectId }}</view> | |||||
<view class="xmmc">{{item.subjectName}}</view> | |||||
<view class="qj">{{ item.qcjfye }}</view> | |||||
<view class="qj">{{item.qcdfye}}</view> | |||||
<view class="zy">{{item.bqjffs}}</view> | |||||
<view class="zy">{{item.bqdffs}}</view> | |||||
<view class="dfje">{{item.qmjffs}}</view> | |||||
<view class="dfje">{{item.qmdffs}}</view> | |||||
</li> | |||||
</ul> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<!-- <SubjectTreeChooser :visible.sync="visible" @select="getSearch" v-model="queryParams.startSubjectId" :year="queryParams.startDate ? queryParams.startDate.substr(0, 4) : null" :can-select-non-leaf="true" height="480px"></SubjectTreeChooser> --> | |||||
<van-popup show="{{popupVisible}}" root-portal position="bottom" close-on-click-overlay bind:after-enter="openTabs" bind:close="onClose"> | |||||
<!-- <van-search | |||||
v-model="searchValue" | |||||
placeholder="按科目编码/名称筛选" | |||||
@input="onSearch" | |||||
/> --> | |||||
<van-tabs wx:if="{{tabsVisible}}" animated sticky id="tabs" bind:change="onTabChanged"> | |||||
<van-tab title="{{item.subjectName}}" name="{{item.subjectId}}" wx:for="{{subjects}}" wx:key="index"> | |||||
<view style="height: 480px;"> | |||||
<childrenPage bind:cancel="changeTabItem" subjects="{{item.children}}"></childrenPage> | |||||
</view> | |||||
</van-tab> | |||||
</van-tabs> | |||||
</van-popup> | |||||
</view> | |||||
@@ -0,0 +1,229 @@ | |||||
.balance-main { | |||||
background: #fff; | |||||
} | |||||
.balance-main .main-title { | |||||
margin-bottom: 5PX; | |||||
padding: 0 10PX; | |||||
height: 33PX; | |||||
line-height: 33PX; | |||||
color: #333; | |||||
font-size: 13PX; | |||||
display: flex; | |||||
justify-content: space-between; | |||||
} | |||||
.balance-main .main-title .nper { | |||||
text-align: center; | |||||
} | |||||
.balance-main .main-title .amountOf { | |||||
text-align: right; | |||||
} | |||||
.balance-main .main-center { | |||||
border: 1PX solid #CACBCC; | |||||
border-bottom: 0; | |||||
overflow-x: scroll; | |||||
} | |||||
.balance-main .main-center .datagrid { | |||||
min-height: 100PX; | |||||
width: 250%; | |||||
} | |||||
.balance-main .main-center .datagrid .header { | |||||
background: #f8f8f9; | |||||
font-weight: bold; | |||||
display: flex; | |||||
color: #278dff; | |||||
} | |||||
.balance-main .main-center .datagrid .header_sec view { | |||||
width: 12.5%; | |||||
} | |||||
.balance-main .main-center .datagrid .kmbm, | |||||
.balance-main .main-center .datagrid .xmmc, | |||||
.balance-main .main-center .datagrid .qj, | |||||
.balance-main .main-center .datagrid .zy, | |||||
.balance-main .main-center .datagrid .jfje, | |||||
.balance-main .main-center .datagrid .dfje, | |||||
.balance-main .main-center .datagrid .fx, | |||||
.balance-main .main-center .datagrid .ye { | |||||
height: 29PX; | |||||
line-height: 29PX; | |||||
font-size: 13PX; | |||||
border-bottom: 1PX solid #CACBCC; | |||||
border-right: 1PX solid #CACBCC; | |||||
text-align: center; | |||||
} | |||||
.balance-main .main-center .datagrid .xmmc { | |||||
width: 25%; | |||||
text-align: center; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .qj { | |||||
width: 25%; | |||||
text-align: center; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .zy { | |||||
width: 25%; | |||||
text-align: center; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .dfje { | |||||
width: 25%; | |||||
text-align: center; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .fx { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid .ye { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
border-right: 0; | |||||
} | |||||
.balance-main .main-center .datagrid .mok_list { | |||||
display: block; | |||||
overflow-y: scroll; | |||||
height: calc(100vh - 310PX); | |||||
} | |||||
.balance-main .main-center .datagrid .list { | |||||
width: 100%; | |||||
} | |||||
.balance-main .main-center .datagrid ul { | |||||
margin: 0; | |||||
padding: 0; | |||||
} | |||||
.balance-main .main-center .datagrid ul li { | |||||
display: block; | |||||
overflow: hidden; | |||||
list-style: none; | |||||
} | |||||
.balance-main .main-center .datagrid ul li.header { | |||||
background: #f8f8f9; | |||||
font-weight: bold; | |||||
} | |||||
.balance-main .main-center .datagrid ul li.header_sec view { | |||||
width: 12.5%; | |||||
} | |||||
.balance-main .main-center .datagrid ul li:nth-child(even) { | |||||
background: #e9e9e9; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .kmbm, | |||||
.balance-main .main-center .datagrid ul li .xmmc, | |||||
.balance-main .main-center .datagrid ul li .qj, | |||||
.balance-main .main-center .datagrid ul li .zy, | |||||
.balance-main .main-center .datagrid ul li .jfje, | |||||
.balance-main .main-center .datagrid ul li .dfje, | |||||
.balance-main .main-center .datagrid ul li .fx, | |||||
.balance-main .main-center .datagrid ul li .ye { | |||||
height: 29PX; | |||||
line-height: 29PX; | |||||
float: left; | |||||
font-size: 13PX; | |||||
border-bottom: 1PX solid #CACBCC; | |||||
border-right: 1PX solid #CACBCC; | |||||
text-align: center; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .xmmc { | |||||
width: 26%; | |||||
text-align: left; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .qj { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .zy { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .dfje { | |||||
width: 26%; | |||||
text-align: left; | |||||
padding-left: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .fx { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
} | |||||
.balance-main .main-center .datagrid ul li .ye { | |||||
width: 12%; | |||||
text-align: right; | |||||
padding-right: 10PX; | |||||
border-right: 0; | |||||
} | |||||
.search_info { | |||||
padding: 20px 23px 0; | |||||
display: flex; | |||||
justify-content: space-between; | |||||
align-items: center; | |||||
} | |||||
.search_info .search_block { | |||||
height: 35px; | |||||
flex: 1; | |||||
border-radius: 59px; | |||||
background: #fff; | |||||
display: flex; | |||||
padding-right: 35px; | |||||
align-items: center; | |||||
box-shadow: 0px 6px 5px rgba(63, 68, 75, 0.2); | |||||
margin-left: 20px; | |||||
} | |||||
.search_info .search_block .icon { | |||||
width: 15px; | |||||
height: 15px; | |||||
display: block; | |||||
margin: 0 8px 0 15px; | |||||
} | |||||
.search_info .search_block .delete_icon { | |||||
width: 15PX; | |||||
height: 15PX; | |||||
display: block; | |||||
margin: 0 8px 0 26px; | |||||
} | |||||
.search_info .search_block .ipt { | |||||
flex: 1; | |||||
font-size: 14px; | |||||
background: none; | |||||
border: 0 none; | |||||
line-height: 59px; | |||||
display: -webkit-box; | |||||
-webkit-box-orient: vertical; | |||||
-webkit-line-clamp: 1; | |||||
word-break: break-all; | |||||
overflow: hidden; | |||||
} | |||||
.total{ | |||||
font-size: 14PX; | |||||
color: #858585; | |||||
} | |||||
.home_wrapper{ | |||||
background: #e9e9e9; | |||||
/* min-height: 100vh; */ | |||||
width: 100vw; | |||||
} | |||||
.date_box { | |||||
display: flex; | |||||
align-items: center; | |||||
flex-shrink: 0; | |||||
} | |||||
.date_box image { | |||||
width: 30PX; | |||||
height: 30px; | |||||
border-radius: 100%; | |||||
box-shadow: 0px 6px 10px rgba(63, 68, 75, 0.5); | |||||
} | |||||
.date_box p { | |||||
font-size: 14PX; | |||||
margin-left: 5PX; | |||||
color: #2facfe; | |||||
} | |||||
.radio_box{ | |||||
display: flex; | |||||
justify-content: space-between; | |||||
align-items: center; | |||||
padding:20px 23px; | |||||
} |
@@ -14,6 +14,7 @@ Page({ | |||||
active:0, | active:0, | ||||
spsxOptions:[], | spsxOptions:[], | ||||
paymentPatternOptions:[], | paymentPatternOptions:[], | ||||
transferStatusOptions:[], | |||||
nickName:'', | nickName:'', | ||||
comment:'', | comment:'', | ||||
activeNames: 0, | activeNames: 0, | ||||
@@ -56,6 +57,19 @@ Page({ | |||||
}); | }); | ||||
} | } | ||||
}) | }) | ||||
//所属银行 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'transfer_status', {method:'GET'}, { | |||||
success: (res) => { | |||||
this.setData({ | |||||
transferStatusOptions:res.data | |||||
}); | |||||
} | |||||
}) | |||||
//所属银行 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'audit_status', {method:'GET'}, { | |||||
success: (res) => { | |||||
} | |||||
}) | |||||
// 资金支出类别字典查询 | // 资金支出类别字典查询 | ||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'capital_expenditure_type', {method:'GET'}, { | UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'capital_expenditure_type', {method:'GET'}, { | ||||
success: (res) => { | success: (res) => { | ||||
@@ -294,6 +308,39 @@ Page({ | |||||
}) | }) | ||||
} | } | ||||
}) | }) | ||||
//四议两公开 | |||||
UTIL.httpRequest( | |||||
API.URL_GET_FINDLIST, | |||||
{ | |||||
method:'GET', | |||||
tableName:'t_yinnong_transfer', | |||||
tableId:res.data.id, | |||||
fileType:4 | |||||
}, | |||||
{ | |||||
success: (res) => { | |||||
let list = []; | |||||
res.data.forEach((item2,index2)=>{ | |||||
let fileForm = res.data.fileForm?res.data.fileForm:[]; | |||||
fileForm.push({ | |||||
file: wx.getStorageSync('dressCode')+item2.fileUrl, | |||||
fileType:'4', | |||||
bizPath:'transfer', | |||||
tableName:'t_yinnong_transfer', | |||||
tableId:res.data.id | |||||
}) | |||||
list.push({ | |||||
tempFilePath:wx.getStorageSync('dressCode')+item2.fileUrl, | |||||
id:item2.id | |||||
}) | |||||
that.setData({ | |||||
["form.fileNum"]:that.data.form.fileNum+1, | |||||
["form.SYLGKimage"]:list, | |||||
["form.fileForm"]:fileForm | |||||
}); | |||||
}) | |||||
} | |||||
}) | |||||
let query = { | let query = { | ||||
method:'GET', | method:'GET', | ||||
@@ -307,6 +354,7 @@ Page({ | |||||
if (res.code == API.SUCCESS_CODE) { | if (res.code == API.SUCCESS_CODE) { | ||||
for(let i = 0 ; i < response.rows.length ; i++){ | for(let i = 0 ; i < response.rows.length ; i++){ | ||||
response.rows[i].bankTypeText = UTIL.getTransform(response.rows[i].bankType,that.data.bankTypeOptions); | response.rows[i].bankTypeText = UTIL.getTransform(response.rows[i].bankType,that.data.bankTypeOptions); | ||||
response.rows[i].transferStatusText = UTIL.getTransform(response.rows[i].transferStatus,that.data.transferStatusOptions); | |||||
} | } | ||||
that.setData({ | that.setData({ | ||||
["form.payeeList"]:response.rows | ["form.payeeList"]:response.rows | ||||
@@ -336,33 +384,46 @@ Page({ | |||||
}) | }) | ||||
// 查询审批事项流转进度 | // 查询审批事项流转进度 | ||||
UTIL.httpRequest(API.URL_GET_GETPROCESS+options.id , {method:'GET'}, { | |||||
UTIL.httpRequest(API.URL_GET_GETPROCESSNEW+options.id , {method:'GET'}, { | |||||
success: (res) => { | success: (res) => { | ||||
console.log(res); | console.log(res); | ||||
for (let i = 0; i < res.data.processSchedule.审批事项.length; i++) { | |||||
for (let i = 0; i < res.data.length; i++) { | |||||
const element = res.data.processSchedule.审批事项[i]; | const element = res.data.processSchedule.审批事项[i]; | ||||
if (element.electronicSignature!=null) { | if (element.electronicSignature!=null) { | ||||
element.electronicSignature = wx.getStorageSync('dressCode')+element.electronicSignature; | element.electronicSignature = wx.getStorageSync('dressCode')+element.electronicSignature; | ||||
} | } | ||||
} | } | ||||
if(res.data.processSchedule != null){ | |||||
that.setData({spsxOptions:res.data.processSchedule.审批事项}) | |||||
} | |||||
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.审批事项){ | |||||
that.setData({spsxOptions:res.data.processSchedule.审批事项}) | |||||
const arr = []; | |||||
for (let key in res.data) { | |||||
if (res.data.hasOwnProperty(key)) { // 确保键在对象自身上,而不是从原型链继承 | |||||
for (let i = 0; i < res.data[key].length; i++) { | |||||
const element = res.data[key][i]; | |||||
console.log(`Key: ${key}, Value: ${res.data[key][i].electronicSignature}`); | |||||
if (element.electronicSignature!=null) { | |||||
element.electronicSignature = wx.getStorageSync('dressCode')+element.electronicSignature; | |||||
} | } | ||||
that.setData({instanceId:res.data.instanceId}) | |||||
} | } | ||||
}) | |||||
arr.push([key,res.data[key]]) | |||||
// that.setData({instanceId:res.data.instanceId}) | |||||
} | |||||
} | } | ||||
that.setData({spsxOptions:arr}) | |||||
// 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.审批事项){ | |||||
// that.setData({spsxOptions:res.data.processSchedule.审批事项}) | |||||
// } | |||||
// that.setData({instanceId:res.data.instanceId}) | |||||
// } | |||||
// }) | |||||
// } | |||||
} | } | ||||
}) | }) | ||||
UTIL.hideLoadingHaveMask(); | UTIL.hideLoadingHaveMask(); | ||||
@@ -462,6 +523,76 @@ Page({ | |||||
} | } | ||||
}) | }) | ||||
}, | }, | ||||
goAgreeNew(){//2024-7-15审批功能修改 字段名称、接口地址、请求参数格式发生变动 | |||||
var that = this ; | |||||
let data = { | |||||
taskId:that.data.taskId, | |||||
auditbatchNo:that.data.form.auditbatchNo, | |||||
pass:true, | |||||
remark:that.data.comment == '' ? '同意':that.data.comment, | |||||
deptId:JSON.parse(wx.getStorageSync('user')).deptId, | |||||
method:'POST' | |||||
}; | |||||
console.log(data); | |||||
UTIL.httpRequest(API.A_audit ,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 | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
goDisNew(){//2024-7-15审批功能修改 字段名称、接口地址、请求参数格式发生变动 | |||||
var that = this ; | |||||
let data = { | |||||
taskId:that.data.taskId, | |||||
auditbatchNo:that.data.form.auditbatchNo, | |||||
pass:false, | |||||
remark:that.data.comment == '' ? '驳回':that.data.comment, | |||||
deptId:JSON.parse(wx.getStorageSync('user')).deptId, | |||||
method:'POST' | |||||
}; | |||||
console.log(data); | |||||
UTIL.httpRequest(API.A_audit ,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){ | commentInput(e){ | ||||
console.log(e); | console.log(e); | ||||
var that = this; | var that = this; | ||||
@@ -18,6 +18,7 @@ | |||||
"van-dialog": "@vant/weapp/dialog/index", | "van-dialog": "@vant/weapp/dialog/index", | ||||
"van-collapse": "@vant/weapp/collapse/index", | "van-collapse": "@vant/weapp/collapse/index", | ||||
"van-collapse-item": "@vant/weapp/collapse-item/index", | "van-collapse-item": "@vant/weapp/collapse-item/index", | ||||
"van-empty": "@vant/weapp/empty/index" | |||||
"van-empty": "@vant/weapp/empty/index", | |||||
"van-divider": "@vant/weapp/divider/index" | |||||
} | } | ||||
} | } |
@@ -323,6 +323,9 @@ | |||||
<van-field required readonly label="开户银行" value="{{ form.payeeList[childrenIndex].bankDeposit }}" placeholder="请输入开户银行" border="{{ false }}" bind:change="onChange" input-align="right" arrow-direction ="down"/> | <van-field required readonly label="开户银行" value="{{ form.payeeList[childrenIndex].bankDeposit }}" placeholder="请输入开户银行" border="{{ false }}" bind:change="onChange" input-align="right" arrow-direction ="down"/> | ||||
<van-field required readonly label="收入金额" value="{{ form.payeeList[childrenIndex].incomeAmount }}" placeholder="请输入收入金额" border="{{ false }}" input-align="right" bind:input="onChangePayeeMoney" data-value="form.payeeList[{{childrenIndex}}].incomeAmount"/> | <van-field required readonly label="收入金额" value="{{ form.payeeList[childrenIndex].incomeAmount }}" placeholder="请输入收入金额" border="{{ false }}" input-align="right" bind:input="onChangePayeeMoney" data-value="form.payeeList[{{childrenIndex}}].incomeAmount"/> | ||||
<van-field required readonly label="所属银行" value="{{ form.payeeList[childrenIndex].bankTypeText }}" placeholder="请输入所属银行" border="{{ false }}" input-align="right"/> | <van-field required readonly label="所属银行" value="{{ form.payeeList[childrenIndex].bankTypeText }}" placeholder="请输入所属银行" border="{{ false }}" input-align="right"/> | ||||
<van-field wx:if="{{form.paymentState == '4' || form.paymentState == '5'}}" required readonly label="转账状态" value="{{ form.payeeList[childrenIndex].transferStatusText }}" placeholder="转账状态" border="{{ false }}" input-align="right"/> | |||||
<van-field wx:if="{{form.paymentState == '4' || form.paymentState == '5'}}" required readonly label="交易结果描述" value="{{ form.payeeList[childrenIndex].causeFailure }}" placeholder="交易结果描述" border="{{ false }}" input-align="right" type="textarea" autosize="{{autosize}}"/> | |||||
</view> | </view> | ||||
<view class="main-box table-box payeeList" wx:if="{{form.payeeList.length > 10}}"> | <view class="main-box table-box payeeList" wx:if="{{form.payeeList.length > 10}}"> | ||||
@@ -369,45 +372,64 @@ | |||||
<view class="fj-box"> | <view class="fj-box"> | ||||
<view class="fj-li"> | <view class="fj-li"> | ||||
<view class="fj-tt"> | <view class="fj-tt"> | ||||
<text>收据</text><van-tag type="danger" style="margin-left: 10px;">可拍照</van-tag> | |||||
<text>收据</text> | |||||
<!-- <van-tag type="danger" style="margin-left: 10px;">可拍照</van-tag> --> | |||||
</view> | </view> | ||||
<view class="img_box"> | <view class="img_box"> | ||||
<view class="img_list" wx:for="{{form.SJimage}}" wx:for-index="childrenIndex" wx:key="id"> | <view class="img_list" wx:for="{{form.SJimage}}" wx:for-index="childrenIndex" wx:key="id"> | ||||
<image class="img_li" src="{{item.tempFilePath}}" data-option="{{form.SJimage}}" data-index="{{childrenIndex}}" bindtap="openPreview"></image> | <image class="img_li" src="{{item.tempFilePath}}" data-option="{{form.SJimage}}" data-index="{{childrenIndex}}" bindtap="openPreview"></image> | ||||
</view> | </view> | ||||
<view class="img_list" wx:if="{{!form.SJimage}}"> | |||||
<!-- <view class="img_list" wx:if="{{!form.SJimage}}"> | |||||
<image class="img_li img_add" src="/image/apply/fj_upload.png"></image> | <image class="img_li img_add" src="/image/apply/fj_upload.png"></image> | ||||
</view> | |||||
<!-- <van-empty wx:if="{{!form.SJimage}}" description="暂无收据" style="margin: 0 auto;" /> --> | |||||
</view> --> | |||||
<van-empty wx:if="{{!form.SJimage}}" description="暂无收据" style="margin: 0 auto;" /> | |||||
</view> | </view> | ||||
</view> | </view> | ||||
<view class="fj-li"> | <view class="fj-li"> | ||||
<view class="fj-tt"> | <view class="fj-tt"> | ||||
<text>发票</text><van-tag type="danger" style="margin-left: 10px;">可拍照</van-tag> | |||||
<text>发票</text> | |||||
<!-- <van-tag type="danger" style="margin-left: 10px;">可拍照</van-tag> --> | |||||
</view> | </view> | ||||
<view class="img_box"> | <view class="img_box"> | ||||
<view class="img_list" wx:for="{{form.FPimage}}" wx:for-index="childrenIndex" wx:key="id"> | <view class="img_list" wx:for="{{form.FPimage}}" wx:for-index="childrenIndex" wx:key="id"> | ||||
<image class="img_li" src="{{item.tempFilePath}}" data-option="{{form.FPimage}}" data-index="{{childrenIndex}}" bindtap="openPreview"></image> | <image class="img_li" src="{{item.tempFilePath}}" data-option="{{form.FPimage}}" data-index="{{childrenIndex}}" bindtap="openPreview"></image> | ||||
</view> | </view> | ||||
<view class="img_list" wx:if="{{!form.FPimage}}"> | |||||
<!-- <view class="img_list" wx:if="{{!form.FPimage}}"> | |||||
<image class="img_li img_add" src="/image/apply/fj_upload.png"></image> | <image class="img_li img_add" src="/image/apply/fj_upload.png"></image> | ||||
</view> | |||||
</view> --> | |||||
<van-empty wx:if="{{!form.FPimage}}" description="暂无发票" style="margin: 0 auto;" /> | |||||
</view> | </view> | ||||
</view> | </view> | ||||
<view class="fj-li"> | <view class="fj-li"> | ||||
<view class="fj-tt"> | <view class="fj-tt"> | ||||
<text>其他</text><van-tag type="danger" style="margin-left: 10px;">可拍照</van-tag> | |||||
<text>其他</text> | |||||
<!-- <van-tag type="danger" style="margin-left: 10px;">可拍照</van-tag> --> | |||||
</view> | </view> | ||||
<view class="img_box"> | <view class="img_box"> | ||||
<view class="img_list" wx:for="{{form.QTimage}}" wx:for-index="childrenIndex" wx:key="id"> | <view class="img_list" wx:for="{{form.QTimage}}" wx:for-index="childrenIndex" wx:key="id"> | ||||
<image class="img_li" src="{{item.tempFilePath}}" data-option="{{form.QTimage}}" data-index="{{childrenIndex}}" bindtap="openPreview" ></image> | <image class="img_li" src="{{item.tempFilePath}}" data-option="{{form.QTimage}}" data-index="{{childrenIndex}}" bindtap="openPreview" ></image> | ||||
</view> | </view> | ||||
<view class="img_list" wx:if="{{!form.QTimage}}"> | |||||
<!-- <view class="img_list" wx:if="{{!form.QTimage}}"> | |||||
<image class="img_li img_add" src="/image/apply/fj_upload.png"></image> | <image class="img_li img_add" src="/image/apply/fj_upload.png"></image> | ||||
</view> --> | |||||
<van-empty wx:if="{{!form.QTimage}}" description="暂无其他" style="margin: 0 auto;" /> | |||||
</view> | |||||
</view> | |||||
<view class="fj-li"> | |||||
<view class="fj-tt"> | |||||
<text>四议两公开</text> | |||||
</view> | |||||
<view class="img_box"> | |||||
<view class="img_list" wx:for="{{form.SYLGKimage}}" wx:for-index="childrenIndex" wx:key="id"> | |||||
<image class="img_li" src="{{item.tempFilePath}}" data-option="{{form.SYLGKimage}}" data-index="{{childrenIndex}}" bindtap="openPreview" ></image> | |||||
</view> | </view> | ||||
<van-empty wx:if="{{!form.SYLGKimage}}" description="暂无四议两公开" style="margin: 0 auto;" /> | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
@@ -450,57 +472,60 @@ | |||||
</view> | </view> | ||||
<text class="title" style="padding: 0 calc(3% + 20px);">审批流程</text> | <text class="title" style="padding: 0 calc(3% + 20px);">审批流程</text> | ||||
<view class="main-box steps-box"> | |||||
<view class="main-box steps-box" style="padding: 10px 0;"> | |||||
<!-- <view class="steps-tit">审批流程</view> --> | <!-- <view class="steps-tit">审批流程</view> --> | ||||
<van-row wx:for="{{spsxOptions}}" wx:key="index"> | |||||
<van-col span="3"> | |||||
<view class="index {{(item.approverStatus != null||index==0) ? 'active':'' }}">{{index+1}}</view> | |||||
<!-- :class="{'indexCenter':index==0 ? false : true}" --> | |||||
<block wx:if="{{index==0}}"> | |||||
<view class="indexBorder"> | |||||
<view class="ssT" wx:if="{{index>0}}"></view> | |||||
<view class="yq"></view> | |||||
<view class="ss" wx:if="{{spsxOptions.length != index+1}}"></view> | |||||
</view> | |||||
</block> | |||||
<block wx:else> | |||||
<view class="indexBorder indexCenter"> | |||||
<view class="ssT" wx:if="{{index>0}}"></view> | |||||
<view class="yq"></view> | |||||
<view class="ss" wx:if="{{spsxOptions.length != index+1}}"></view> | |||||
</view> | |||||
</block> | |||||
</van-col> | |||||
<van-col span="21" style="height: 77px;"> | |||||
<van-cell center="{{true}}" border="{{false}}"> | |||||
<view slot="title" class="cellTit"> | |||||
<text wx:if="{{item.electronicSignature == null}}">{{item.assigneeName}}</text> | |||||
<image wx:else src="{{item.electronicSignature}}" style="height: 24px;width: 48px;"></image> | |||||
<text wx:if="{{item.deptLabel != null}}">{{item.deptLabel}}</text> | |||||
</view> | |||||
<view class="agree" wx:if="{{item.approverStatus=='2'}}">同意</view> | |||||
<view class="in" wx:elif="{{(item.assigneeName==nickName && pageType!='see')}}">审核中</view> | |||||
<view class="disagree" wx:elif="{{item.approverStatus=='3'}}">驳回</view> | |||||
</van-cell> | |||||
<van-cell center border="{{false}}"> | |||||
<view slot="title" style="margin-top: 10px;"> | |||||
<view style="color: #999999;line-height: 32px;">{{ item.comment }}</view> | |||||
</view> | |||||
<view style="color: #999999;font-size: 12px;margin-top: 10px;line-height: 32px;">{{ sub.times(item.time) }}</view> | |||||
</van-cell> | |||||
<block wx:for="{{spsxOptions}}" wx:for-index="childrenIndex" wx:for-item="childrenItem" wx:key="childrenIndex"> | |||||
<van-divider contentPosition="center">批次号:{{childrenItem[0]}}</van-divider> | |||||
<van-row wx:for="{{childrenItem[1]}}" wx:key="index"> | |||||
<van-col span="3"> | |||||
<view class="index">{{index+1}}</view> | |||||
<!-- :class="{'indexCenter':index==0 ? false : true}" {{(item.approverStatus != null||index==0) ? 'active':'' }}--> | |||||
<block wx:if="{{index==0}}"> | |||||
<view class="indexBorder"> | |||||
<view class="ssT" wx:if="{{index>0}}"></view> | |||||
<view class="yq"></view> | |||||
<view class="ss" wx:if="{{spsxOptions.length != index+1}}"></view> | |||||
</view> | |||||
</block> | |||||
<block wx:else> | |||||
<view class="indexBorder indexCenter"> | |||||
<view class="ssT" wx:if="{{index>0}}"></view> | |||||
<view class="yq"></view> | |||||
<view class="ss" wx:if="{{childrenItem[1].length != index+1}}"></view> | |||||
</view> | |||||
</block> | |||||
</van-col> | |||||
<van-col span="21" style="height: 77px;"> | |||||
<van-cell center="{{true}}" border="{{false}}"> | |||||
<view slot="title" class="cellTit"> | |||||
<text wx:if="{{item.electronicSignature == null}}">{{item.actorName}}</text> | |||||
<image wx:else src="{{item.electronicSignature}}" style="height: 24px;width: 48px;"></image> | |||||
<text wx:if="{{item.auditBy != null}}">{{item.auditBy}}</text> | |||||
</view> | |||||
<view class="agree" wx:if="{{item.auditStatus=='3'}}">同意</view> | |||||
<view class="in" wx:elif="{{(item.auditStatus=='1')}}">审核中</view> | |||||
<view class="disagree" wx:elif="{{item.auditStatus=='2'}}">驳回</view> | |||||
</van-cell> | |||||
</van-col> | |||||
</van-row> | |||||
<van-cell center border="{{false}}"> | |||||
<view slot="title" style="margin-top: 10px;"> | |||||
<view style="color: #999999;">{{ item.auditRemark==null?'无':item.auditRemark }}</view> | |||||
</view> | |||||
<view style="color: #999999;font-size: 12px;margin-top: 10px;" wx:if="{{item.auditTime}}">{{ sub.times(item.auditTime) }}</view> | |||||
</van-cell> | |||||
</van-col> | |||||
</van-row> | |||||
</block> | |||||
</view> | </view> | ||||
<van-empty wx:if="{{spsxOptions.length<1&&pageType=='see'}}" description="暂无审核数据" /> | <van-empty wx:if="{{spsxOptions.length<1&&pageType=='see'}}" description="暂无审核数据" /> | ||||
<view class="main-box" wx:if="{{pageType!='see'}}"> | |||||
<view class="main-box" style="margin-top: 15px;" wx:if="{{pageType!='see'}}"> | |||||
<input class="input_tit" value="{{comment}}" placeholder="请输入审批意见" bindinput="commentInput" style="margin-top: 10px;margin-bottom: 0;"/> | <input class="input_tit" value="{{comment}}" placeholder="请输入审批意见" bindinput="commentInput" style="margin-top: 10px;margin-bottom: 0;"/> | ||||
<!-- --> | <!-- --> | ||||
</view> | </view> | ||||
<view class="bottom" style="margin-bottom: 0px;" wx:if="{{pageType!='see'}}"> | <view class="bottom" style="margin-bottom: 0px;" wx:if="{{pageType!='see'}}"> | ||||
<button type="warn" plain class="btnDis" bindtap="goDis">驳回</button> | |||||
<button type="primary" class="btnAgree" bindtap="goAgree">同意</button> | |||||
<button type="warn" plain class="btnDis" bindtap="goDisNew">驳回</button> | |||||
<button type="primary" class="btnAgree" bindtap="goAgreeNew">同意</button> | |||||
</view> | </view> | ||||
<!-- <view class="bottom" wx:if="{{pageType!='see'}}"> | <!-- <view class="bottom" wx:if="{{pageType!='see'}}"> | ||||
<button type="primary" plain class="btnOther" bindtap="goAgree">转办</button> | <button type="primary" plain class="btnOther" bindtap="goAgree">转办</button> | ||||
@@ -91,12 +91,17 @@ Page({ | |||||
// }) | // }) | ||||
// }, | // }, | ||||
onShow(){ | onShow(){ | ||||
//获取滚动条高度 | |||||
// this.computeBarLocation(); | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'payment_state', {method:'GET'}, { | |||||
success: (res) => { | |||||
this.setData({ | |||||
paymentStateOption:res.data | |||||
}) | |||||
} | |||||
}) | |||||
//获取用户信息 | //获取用户信息 | ||||
this.getUserInfo() | this.getUserInfo() | ||||
//查询待办 | |||||
this.getTaskList(); | |||||
//查询已办 | |||||
this.getTaskDoneList(); | |||||
//查询dept | //查询dept | ||||
this.getTreeDept(); | this.getTreeDept(); | ||||
}, | }, | ||||
@@ -132,36 +137,28 @@ Page({ | |||||
let data = { | let data = { | ||||
pageNum:1, | pageNum:1, | ||||
pageSize:999, | pageSize:999, | ||||
orderByColumn:"A.ID_", | |||||
isAsc:"desc", | |||||
// orderByColumn:"A.ID_", | |||||
// isAsc:"desc", | |||||
systemType:4, | systemType:4, | ||||
method:"GET", | method:"GET", | ||||
deptId:JSON.parse(wx.getStorageSync('user')).deptId, | |||||
// taskName:'相关人员审批' | // taskName:'相关人员审批' | ||||
} | } | ||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'activity_business_type', {method:'GET'}, { | UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'activity_business_type', {method:'GET'}, { | ||||
success: (res) => { | success: (res) => { | ||||
} | } | ||||
}) | }) | ||||
UTIL.httpRequest(API.URL_GET_TASKLIST,data, { | |||||
UTIL.httpRequest(API.A_myTodoList,data, { | |||||
success: (res) => { | success: (res) => { | ||||
if (res.code == API.SUCCESS_CODE) { | if (res.code == API.SUCCESS_CODE) { | ||||
let list = []; | let list = []; | ||||
for(let i = 0;i < res.total;i++){ | |||||
if(res.rows[i].formData){ | |||||
if (res.rows[i].formData.activityBusinessType == '16' || res.rows[i].formData.activityBusinessType=='36') { | |||||
res.rows[i].formData.expenditureAmount = Number(res.rows[i].formData.expenditureAmount).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
return $1 + ","; }).replace(/\.$/, "") | |||||
list.push(res.rows[i]) | |||||
} | |||||
} | |||||
} | |||||
this.setData({todoList:list,todoNum:list.length}) | |||||
for(let i = 0;i < res.total;i++){ | |||||
res.rows[i].createTime = res.rows[i].createTime.substr(0,10) | |||||
console.log(res.rows[i].createTime); | |||||
list.push(res.rows[i]) | |||||
} | |||||
this.setData({todoList:list,todoNum:res.rows.length}) | |||||
} | } | ||||
}, fail: (res) => { | |||||
console.log(res); | |||||
}, | |||||
complete: (res) => { | |||||
} | } | ||||
}) | }) | ||||
}, | }, | ||||
@@ -169,27 +166,36 @@ Page({ | |||||
let data = { | let data = { | ||||
pageNum:1, | pageNum:1, | ||||
pageSize:999, | pageSize:999, | ||||
orderByColumn:"A.ID_", | |||||
isAsc:"desc", | |||||
// orderByColumn:"A.ID_", | |||||
// isAsc:"desc", | |||||
systemType:4, | systemType:4, | ||||
method:"GET", | method:"GET", | ||||
deptId:JSON.parse(wx.getStorageSync('user')).deptId, | |||||
// taskName:'相关人员审批' | // taskName:'相关人员审批' | ||||
} | } | ||||
UTIL.httpRequest(API.URL_GET_TASKDONELIST,data, { | |||||
UTIL.httpRequest(API.A_myDoneList,data, { | |||||
success: (res) => { | success: (res) => { | ||||
if (res.code == API.SUCCESS_CODE) { | if (res.code == API.SUCCESS_CODE) { | ||||
let list = []; | let list = []; | ||||
for(let i = 0;i<res.total;i++){ | |||||
if(res.rows[i].formData){ | |||||
if (res.rows[i].formData.activityBusinessType == '16' || res.rows[i].formData.activityBusinessType=='36') { | |||||
let d = this.dictTranslate(this.data.transferType,res.rows[i].formData.transferType) | |||||
res.rows[i].formData.transferType = d | |||||
res.rows[i].formData.expenditureAmount = Number(res.rows[i].formData.expenditureAmount).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
return $1 + ","; }).replace(/\.$/, "") | |||||
list.push(res.rows[i]) | |||||
} | |||||
} | |||||
} | |||||
// for(let i = 0;i<res.total;i++){ | |||||
// if(res.rows[i].formData){ | |||||
// if (res.rows[i].formData.activityBusinessType == '16' || res.rows[i].formData.activityBusinessType=='36') { | |||||
// let d = this.dictTranslate(this.data.transferType,res.rows[i].formData.transferType) | |||||
// res.rows[i].formData.transferType = d | |||||
// res.rows[i].formData.expenditureAmount = Number(res.rows[i].formData.expenditureAmount).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
// return $1 + ","; }).replace(/\.$/, "") | |||||
// list.push(res.rows[i]) | |||||
// } | |||||
// } | |||||
// } | |||||
for(let i = 0;i < res.total;i++){ | |||||
res.rows[i].data.expenditureAmount = Number(res.rows[i].data.expenditureAmount).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
return $1 + ","; }).replace(/\.$/, "") | |||||
res.rows[i].auditTime = res.rows[i].auditTime.substr(0,10) | |||||
console.log(res.rows[i].createTime); | |||||
list.push(res.rows[i]) | |||||
} | |||||
this.setData({doneList:list,doneNum:list.length}) | this.setData({doneList:list,doneNum:list.length}) | ||||
} | } | ||||
}, fail: (res) => { | }, fail: (res) => { | ||||
@@ -199,7 +205,7 @@ Page({ | |||||
} | } | ||||
}) | }) | ||||
}, | }, | ||||
getTransferList:function(e){ | |||||
getTransferList:function(e){//已废弃 | |||||
let data = { | let data = { | ||||
// pageNum:1, | // pageNum:1, | ||||
// pageSize:10, | // pageSize:10, | ||||
@@ -216,7 +222,8 @@ Page({ | |||||
this.setData({yfqNum:a}) | this.setData({yfqNum:a}) | ||||
for(let i = 0;i<res.total;i++){ | for(let i = 0;i<res.total;i++){ | ||||
res.rows[i].totalAmount = Number(res.rows[i].totalAmount).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | res.rows[i].totalAmount = Number(res.rows[i].totalAmount).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | ||||
return $1 + ","; }).replace(/\.$/, "") | |||||
return $1 + ","; }).replace(/\.$/, ""); | |||||
} | } | ||||
this.setData({yfqList:res.rows}) | this.setData({yfqList:res.rows}) | ||||
} | } | ||||
@@ -245,6 +252,7 @@ Page({ | |||||
for(let i = 0;i< c.length;i++){ | for(let i = 0;i< c.length;i++){ | ||||
c[i].totalAmount = Number(c[i].totalAmount).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | c[i].totalAmount = Number(c[i].totalAmount).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | ||||
return $1 + ","; }).replace(/\.$/, "") | return $1 + ","; }).replace(/\.$/, "") | ||||
c[i].paymentStateText = UTIL.getTransform(res.rows[i].paymentState,this.data.paymentStateOption); | |||||
} | } | ||||
this.setData({yfqList:c}) | this.setData({yfqList:c}) | ||||
} | } | ||||
@@ -315,6 +323,7 @@ Page({ | |||||
}, | }, | ||||
/* 计算bar 高度*/ | /* 计算bar 高度*/ | ||||
computeBarLocation() { | computeBarLocation() { | ||||
console.log('aaaaaaaaaaaaa'); | |||||
var that = this; | var that = this; | ||||
let CustomMenuButton = wx.getMenuButtonBoundingClientRect(); | let CustomMenuButton = wx.getMenuButtonBoundingClientRect(); | ||||
let CustomWidows = wx.getSystemInfoSync(); | let CustomWidows = wx.getSystemInfoSync(); | ||||
@@ -325,11 +334,12 @@ Page({ | |||||
query.select('.navList_main').boundingClientRect(); | query.select('.navList_main').boundingClientRect(); | ||||
query.select('.child_function').boundingClientRect(); | query.select('.child_function').boundingClientRect(); | ||||
query.select('.work_plan').boundingClientRect(); | query.select('.work_plan').boundingClientRect(); | ||||
query.exec((res) => { | query.exec((res) => { | ||||
let wrokScrollHeight = CustomWidows.windowHeight; | let wrokScrollHeight = CustomWidows.windowHeight; | ||||
res.forEach((v)=>{ | res.forEach((v)=>{ | ||||
wrokScrollHeight = wrokScrollHeight - v.height; | wrokScrollHeight = wrokScrollHeight - v.height; | ||||
console.log(v.height); | |||||
}) | }) | ||||
wrokScrollHeight = wrokScrollHeight-CustomMenuButton.top-CustomMenuButton.bottom -15; | wrokScrollHeight = wrokScrollHeight-CustomMenuButton.top-CustomMenuButton.bottom -15; | ||||
that.setData({ | that.setData({ | ||||
@@ -348,13 +358,16 @@ Page({ | |||||
this.setData({userInfoObj:res.user}) | this.setData({userInfoObj:res.user}) | ||||
this.setData({region:res.user.deptName}) | this.setData({region:res.user.deptName}) | ||||
this.setData({item:JSON.stringify(res.user)}) | this.setData({item:JSON.stringify(res.user)}) | ||||
wx.setStorageSync('user', JSON.stringify(res.user)) | |||||
this.getBookList() | this.getBookList() | ||||
//查询已制单 | //查询已制单 | ||||
this.getTransferList2(); | this.getTransferList2(); | ||||
//查询已发起 | //查询已发起 | ||||
// this.getTransferList(); | |||||
this.getTransferList1(); | this.getTransferList1(); | ||||
//查询待办 | |||||
this.getTaskList(); | |||||
//查询已办 | |||||
this.getTaskDoneList(); | |||||
} | } | ||||
} | } | ||||
}) | }) | ||||
@@ -471,9 +484,9 @@ Page({ | |||||
cityCancel(e) { | cityCancel(e) { | ||||
var id = this.data.provinces[0].id | var id = this.data.provinces[0].id | ||||
this.setData({ | this.setData({ | ||||
citys: this.data.lastCitys || this.data.userInfoObj.parentDeptName, //默认北京市辖区, | |||||
areas: this.data.lastAreas || this.data.userInfoObj.deptName, | |||||
value: [...this.data.regionValue], | |||||
// citys: this.data.lastCitys || this.data.userInfoObj.parentDeptName, //默认北京市辖区, | |||||
// areas: this.data.lastAreas || this.data.userInfoObj.deptName, | |||||
// value: [...this.data.regionValue], | |||||
visible: false | visible: false | ||||
}) | }) | ||||
}, | }, | ||||
@@ -151,6 +151,10 @@ | |||||
<view class="image"><image class="attribute" src="../../image/index/nav_pjsy.png" mode="aspectFit"></image></view> | <view class="image"><image class="attribute" src="../../image/index/nav_pjsy.png" mode="aspectFit"></image></view> | ||||
<text class="desc">票据使用</text> | <text class="desc">票据使用</text> | ||||
</view> --> | </view> --> | ||||
<view class="flex_block" data-url="/pages/mainBody/list/list" bindtap="navigate" hover-class="btnView"> | |||||
<view class="image"><image class="attribute" src="../../image/index/paymentManager_icon.png" mode="aspectFit"></image></view> | |||||
<text class="desc">主体名录</text> | |||||
</view> | |||||
</block> | </block> | ||||
<view class="flex_block" bindtap="openView" hover-class="btnView"> | <view class="flex_block" bindtap="openView" hover-class="btnView"> | ||||
<view class="image" wx:if="{{showListText == '更多'}}"><image class="attribute" src="../../image/index/nav_ckqb.png" mode="aspectFit"></image></view> | <view class="image" wx:if="{{showListText == '更多'}}"><image class="attribute" src="../../image/index/nav_ckqb.png" mode="aspectFit"></image></view> | ||||
@@ -168,41 +172,41 @@ | |||||
</view> | </view> | ||||
<scroll-view scroll-y="true" style="height: {{wrokScrollHeight}}px;padding: 0rpx 32.5rpx;" > | <scroll-view scroll-y="true" style="height: {{wrokScrollHeight}}px;padding: 0rpx 32.5rpx;" > | ||||
<view class="workflow" wx:if="{{active=='1'}}" wx:for-item="item" wx:for="{{todoList}}" wx:key="id" data-id="{{item.formData.id}}" data-taskId="{{item.taskId}}" data-business='{{item.formData.activityBusinessType=="35"?"xj":"yh"}}' data-type="up" bindtap="{{item.formData.activityBusinessType == '20' ? 'goMajorDetail':'gosee'}}"> | |||||
<view class="workflow" wx:if="{{active=='1'}}" wx:for-item="item" wx:for="{{todoList}}" wx:key="id" data-id="{{item.data.id}}" data-taskId="{{item.id}}" data-business='{{item.formData.activityBusinessType=="35"?"xj":"yh"}}' data-type="up" bindtap="gosee"> | |||||
<!--1--> | <!--1--> | ||||
<view class="workflow_list"> | <view class="workflow_list"> | ||||
<view class="process_intro"> | <view class="process_intro"> | ||||
<view class="name"> | <view class="name"> | ||||
<view class="name_tit">{{item.formData.remark}}</view> | |||||
<view class="name_tit">{{item.auditName}}</view> | |||||
</view> | </view> | ||||
<!-- <view class="state">待审</view> --> | <!-- <view class="state">待审</view> --> | ||||
<view class="time">{{item.formData.applyTime}}</view> | |||||
<view class="time">{{item.createTime}}</view> | |||||
</view> | </view> | ||||
<view class="process_pay"> | <view class="process_pay"> | ||||
<view class="describe"> | <view class="describe"> | ||||
<image class="amount_icon" src="../../image/index/process_icon.png" mode="aspectFit"></image> | <image class="amount_icon" src="../../image/index/process_icon.png" mode="aspectFit"></image> | ||||
<text class="textLimit">{{item.formData.transferType=='2'?'信用卡转账':item.formData.transferType=='1'?'银行转账':'其他'}}</text> | |||||
<text class="textLimit">{{item.data.transferType=='2'?'信用卡转账':item.data.transferType=='1'?'银行转账':'其他'}}</text> | |||||
</view> | </view> | ||||
<view class="amount" wx:if="{{item.formData.activityBusinessType!='20'}}"><text class="unit">¥</text>{{item.formData.expenditureAmount}}</view> | |||||
<view class="amount"><text class="unit">¥</text>{{item.data.expenditureAmount}}</view> | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<view class="workflow" wx:if="{{active=='2'}}" wx:for-item="item" wx:for="{{doneList}}" wx:key="id" data-id="{{item.formData.id}}" data-taskId="{{item.taskId}}" data-business='{{item.formData.activityBusinessType=="35"?"xj":"yh"}}' data-type="see" bindtap="{{item.formData.activityBusinessType == '20' ? 'goMajorDetail':'gosee'}}"> | |||||
<view class="workflow" wx:if="{{active=='2'}}" wx:for-item="item" wx:for="{{doneList}}" wx:key="id" data-id="{{item.data.id}}" data-taskId="{{item.id}}" data-business='{{item.formData.activityBusinessType=="35"?"xj":"yh"}}' data-type="see" bindtap="gosee"> | |||||
<!--1--> | <!--1--> | ||||
<view class="workflow_list"> | <view class="workflow_list"> | ||||
<view class="process_intro"> | <view class="process_intro"> | ||||
<view class="name"> | <view class="name"> | ||||
<view class="name_tit">{{item.formData.remark}}</view> | |||||
<view class="name_tit">{{item.auditName}}</view> | |||||
</view> | </view> | ||||
<!-- <view class="state">已审</view> --> | <!-- <view class="state">已审</view> --> | ||||
<view class="time">{{item.formData.applyTime}}</view> | |||||
<view class="time">{{item.auditTime}}</view> | |||||
</view> | </view> | ||||
<view class="process_pay"> | <view class="process_pay"> | ||||
<view class="describe"> | <view class="describe"> | ||||
<image class="amount_icon" src="../../image/index/process_icon.png" mode="aspectFit"></image> | <image class="amount_icon" src="../../image/index/process_icon.png" mode="aspectFit"></image> | ||||
<text class="textLimit">{{item.formData.transferType=='2'?'信用卡转账':item.formData.transferType=='1'?'银行转账':'其他'}}</text> | |||||
<text class="textLimit">{{item.data.transferType=='2'?'信用卡转账':item.data.transferType=='1'?'银行转账':'其他'}}</text> | |||||
</view> | </view> | ||||
<view class="amount" wx:if="{{item.formData.activityBusinessType!='20'}}"><text class="unit">¥</text>{{item.formData.expenditureAmount}}</view> | |||||
<view class="amount"><text class="unit">¥</text>{{item.data.expenditureAmount}}</view> | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
@@ -224,6 +228,7 @@ | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> --> | </view> --> | ||||
<!-- {{active}} --> | |||||
<van-swipe-cell right-width="{{ item.auditStatus == '1'?'65':0 }}" wx:if="{{active=='3'}}" wx:for-item="item" wx:for="{{yfqList}}" wx:key="id" class="workflow"> | <van-swipe-cell right-width="{{ item.auditStatus == '1'?'65':0 }}" wx:if="{{active=='3'}}" wx:for-item="item" wx:for="{{yfqList}}" wx:key="id" class="workflow"> | ||||
<!--1--> | <!--1--> | ||||
<view class="workflow_list" data-id="{{item.id}}" data-taskId="{{item.taskId}}" data-type="see" bindtap="gosee"> | <view class="workflow_list" data-id="{{item.id}}" data-taskId="{{item.taskId}}" data-type="see" bindtap="gosee"> | ||||
@@ -241,6 +246,7 @@ | |||||
<image class="amount_icon" src="../../image/index/process_icon.png" mode="aspectFit"></image> | <image class="amount_icon" src="../../image/index/process_icon.png" mode="aspectFit"></image> | ||||
<text class="textLimit">{{item.transferType=='2'?'信用卡转账':item.transferType=='1'?'银行转账':'其他'}}</text> | <text class="textLimit">{{item.transferType=='2'?'信用卡转账':item.transferType=='1'?'银行转账':'其他'}}</text> | ||||
</view> | </view> | ||||
<view style="font-size: 12px;">{{item.paymentStateText}}</view> | |||||
<view class="amount"><text class="unit">¥</text>{{item.expenditureAmount}}</view> | <view class="amount"><text class="unit">¥</text>{{item.expenditureAmount}}</view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
@@ -288,7 +288,7 @@ | |||||
.workflow .workflow_list .process_pay .describe{ | .workflow .workflow_list .process_pay .describe{ | ||||
font-size: 30rpx; | font-size: 30rpx; | ||||
width: 330rpx; | |||||
width: 320rpx; | |||||
color: #3c9370; | color: #3c9370; | ||||
display: flex; | display: flex; | ||||
align-items: center; | align-items: center; | ||||
@@ -0,0 +1,170 @@ | |||||
// pages/mainBody/detail/detail.js | |||||
import * as UTIL from '../../../utils/util.js'; | |||||
import * as API from '../../../utils/API.js'; | |||||
const app = getApp(); | |||||
Page({ | |||||
/** | |||||
* 页面的初始数据 | |||||
*/ | |||||
data: { | |||||
isIPX: app.globalData.isIPX, | |||||
// 主体类别字典 | |||||
statisticsTypeIdOptions: [], | |||||
// 示范社类型字典 | |||||
modelSocietyTypeOptions: [], | |||||
// 经营状态字典 | |||||
registrationStatusOptions: [], | |||||
// 企业类型字典 | |||||
enterpriseTypeOptions: [], | |||||
//产业分类字典项 | |||||
industryClassificationTypeOptions: [], | |||||
// 审核状态字典 | |||||
reviewStatusOptions: [], | |||||
}, | |||||
back:function(){ | |||||
wx.navigateBack({ | |||||
delta: 1 | |||||
}) | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面加载 | |||||
*/ | |||||
onLoad(options) { | |||||
var that = this; | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'newBusinessEntity_statistics_project', {method:'GET'}, { | |||||
success: (res) => { | |||||
that.setData({ | |||||
statisticsTypeIdOptions:res.data, | |||||
}) | |||||
} | |||||
}) | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'model_society_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
that.setData({ | |||||
modelSocietyTypeOptions:res.data, | |||||
}) | |||||
} | |||||
}) | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'registration_status', {method:'GET'}, { | |||||
success: (res) => { | |||||
that.setData({ | |||||
registrationStatusOptions:res.data, | |||||
}) | |||||
} | |||||
}) | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'enterprise_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
that.setData({ | |||||
enterpriseTypeOptions:res.data, | |||||
}) | |||||
} | |||||
}) | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'Industrial_classification_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
that.setData({ | |||||
industryClassificationTypeOptions:res.data, | |||||
}) | |||||
} | |||||
}) | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'sys_yes_no', {method:'GET'}, { | |||||
success: (res) => { | |||||
that.setData({ | |||||
reviewStatusOptions:res.data, | |||||
}) | |||||
} | |||||
}) | |||||
let data = { | |||||
method: 'GET' | |||||
} | |||||
UTIL.httpRequest(API.URL_GET_ENTITYDETAIL + options.id ,data,{ | |||||
success: (res) => { | |||||
if (res.code == API.SUCCESS_CODE) { | |||||
res.data.statisticsTypeIdText = UTIL.getTransform(res.data.statisticsTypeId,that.data.statisticsTypeIdOptions); | |||||
res.data.industryClassificationTypeText = UTIL.getTransform(res.data.industryClassificationType,that.data.industryClassificationTypeOptions); | |||||
res.data.modelSocietyTypeText = UTIL.getTransform(res.data.modelSocietyType,that.data.modelSocietyTypeOptions); | |||||
res.data.registrationStatusText = UTIL.getTransform(res.data.registrationStatus,that.data.registrationStatusOptions); | |||||
res.data.enterpriseTypeText = UTIL.getTransform(res.data.enterpriseType,that.data.enterpriseTypeOptions); | |||||
UTIL.httpRequest('/system/dept/treeselectByDeptId', {deptId: res.data.serviceDeptId,method:'GET'}, { | |||||
success: (res2) => { | |||||
res.data.serviceDeptIdName = res2.data[0].label; | |||||
} | |||||
}) | |||||
let fileList = res.data.masterMap.split(','); | |||||
let fileImg = [] | |||||
fileList.map((rr,index) => { | |||||
fileImg.push({ | |||||
url: wx.getStorageSync('dressCode') + rr, | |||||
name: '图片' + index, | |||||
isImage: true, | |||||
}); | |||||
}) | |||||
res.data.fileImg = fileImg; | |||||
console.log(fileImg); | |||||
UTIL.httpRequest('/finance/book/list', {deptId: 0,method:'GET'}, { | |||||
success: (res2) => { | |||||
console.log(res2.rows.filter(function (e) { return e.id == res.data.bookId; })[0]); | |||||
res.data.bookName = res2.rows.filter(function (e) { return e.id == res.data.bookId; })[0].bookName; | |||||
this.setData({ | |||||
detail:res.data, | |||||
}) | |||||
} | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面初次渲染完成 | |||||
*/ | |||||
onReady() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面显示 | |||||
*/ | |||||
onShow() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面隐藏 | |||||
*/ | |||||
onHide() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面卸载 | |||||
*/ | |||||
onUnload() { | |||||
}, | |||||
/** | |||||
* 页面相关事件处理函数--监听用户下拉动作 | |||||
*/ | |||||
onPullDownRefresh() { | |||||
}, | |||||
/** | |||||
* 页面上拉触底事件的处理函数 | |||||
*/ | |||||
onReachBottom() { | |||||
}, | |||||
/** | |||||
* 用户点击右上角分享 | |||||
*/ | |||||
onShareAppMessage() { | |||||
} | |||||
}) |
@@ -0,0 +1,8 @@ | |||||
{ | |||||
"usingComponents": { | |||||
"van-cell": "@vant/weapp/cell/index", | |||||
"van-cell-group": "@vant/weapp/cell-group/index", | |||||
"van-divider": "@vant/weapp/divider/index", | |||||
"van-uploader": "@vant/weapp/uploader/index" | |||||
} | |||||
} |
@@ -0,0 +1,37 @@ | |||||
<!--pages/mainBody/detail/detail.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="main-box" style="margin-top:{{isIPX?'103px':'79px'}};"> | |||||
<van-divider contentPosition="center">基本信息</van-divider> | |||||
<van-cell title="主体名称" value="{{detail.entityName}}" /> | |||||
<van-cell title="主体类别" value="{{detail.statisticsTypeIdText}}" /> | |||||
<van-cell title="社会信用代码" value="{{detail.socialCreditCode}}" /> | |||||
<van-cell title="法人代表" value="{{detail.corporateRepresentativeName}}" /> | |||||
<van-cell title="所属行业" value="{{detail.industryClassificationTypeText}}" /> | |||||
<van-cell title="示范类型" value="{{detail.modelSocietyTypeText}}" /> | |||||
<van-cell title="主体住址" value="{{detail.entityAddress}}" /> | |||||
<van-cell title="成立时间" value="{{detail.registerTime}}" /> | |||||
<van-cell title="经营状态" value="{{detail.registrationStatusText}}" /> | |||||
<van-cell title="企业类型" value="{{detail.enterpriseTypeText}}" /> | |||||
<van-cell title="营业期限" value="{{detail.operatingPeriod}}" /> | |||||
<van-cell title="经营范围" value="{{detail.businessScope}}" /> | |||||
</view> | |||||
<view class="main-box" style="margin-top:15px;"> | |||||
<van-divider contentPosition="center">其他信息</van-divider> | |||||
<van-cell title="负责人" value="{{detail.principalName}}" /> | |||||
<van-cell title="联系电话" value="{{detail.tal}}" /> | |||||
<van-cell title="开户银行" value="{{detail.depositBankName}}" /> | |||||
<van-cell title="银行账号" value="{{detail.accountNumber}}" /> | |||||
<van-cell title="网站网址" value="{{detail.webLinks}}" /> | |||||
<van-cell title="关联账套" value="{{detail.bookName}}" /> | |||||
<van-cell title="服务区域" value="{{detail.serviceDeptIdName}}" /> | |||||
<van-cell title="评分" value="{{detail.score}}" /> | |||||
<van-cell title="主图" border="{{false}}" /> | |||||
<view style="padding: 0 20px;"> | |||||
<van-uploader file-list="{{ detail.fileImg }}" show-upload="{{false}}" deletable="{{false}}" /> | |||||
</view> | |||||
</view> |
@@ -0,0 +1,11 @@ | |||||
/* pages/mainBody/detail/detail.wxss */ | |||||
.main-box{ | |||||
background: #ffffff; | |||||
width: 94%; | |||||
margin: 0 auto; | |||||
border-radius: 10px; | |||||
box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.16); | |||||
position: relative; | |||||
overflow: hidden; | |||||
} |
@@ -0,0 +1,141 @@ | |||||
// pages/index/policy/list/list.js | |||||
import * as UTIL from '../../../utils/util.js'; | |||||
import * as API from '../../../utils/API.js'; | |||||
const app = getApp(); | |||||
Page({ | |||||
/** | |||||
* 页面的初始数据 | |||||
*/ | |||||
data: { | |||||
//自定义导航栏 | |||||
isIPX: app.globalData.isIPX, | |||||
value:'', | |||||
total:0, | |||||
list:[], | |||||
pageNums:1, | |||||
title:'', | |||||
entityName:'', | |||||
option1: [ | |||||
{ text: '专业合作社', value: 1 }, | |||||
{ text: '家庭农场', value: 2 }, | |||||
{ text: '龙头企业', value: 3 }, | |||||
{ text: '农业庄园', value: 4 }, | |||||
{ text: '专业大户', value: 5 } | |||||
], | |||||
value1: 0, | |||||
statisticsTypeId: 1 | |||||
}, | |||||
goDetail(e) { | |||||
wx.navigateTo({ | |||||
url: '/pages/mainBody/detail/detail?id='+e.currentTarget.dataset.id, | |||||
}) | |||||
}, | |||||
changeTab(e){ | |||||
var that = this ; | |||||
console.log(e.detail); | |||||
that.setData({statisticsTypeId:e.detail}); | |||||
this.getList(); | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面加载 | |||||
*/ | |||||
onLoad(options) { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面初次渲染完成 | |||||
*/ | |||||
onReady() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面显示 | |||||
*/ | |||||
onShow() { | |||||
this.getList(); | |||||
}, | |||||
paging(){ | |||||
this.setData({ | |||||
pageNums:this.data.pageNums+1, | |||||
}) | |||||
this.getList(); | |||||
}, | |||||
getList(){ | |||||
let data = { | |||||
pageNum:this.data.pageNums, | |||||
pageSize:10, | |||||
translate_dict:true, | |||||
entityName:this.data.entityName, | |||||
statisticsTypeId:this.data.statisticsTypeId, | |||||
method: 'GET' | |||||
} | |||||
UTIL.httpRequest(API.URL_GET_ENTITYLIST,data,{ | |||||
success: (res) => { | |||||
if (res.code == API.SUCCESS_CODE) { | |||||
let arr = this.data.list; | |||||
if (arr.length>=res.total){return;} | |||||
res.rows.map(rr=>{ | |||||
rr.releaseTime = rr.releaseTime == null?'':rr.releaseTime.substr(0,10); | |||||
arr.push(rr) | |||||
}) | |||||
this.setData({ | |||||
total:res.total, | |||||
list:arr | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
goSearch(e){ | |||||
this.setData({ | |||||
pageNums:1, | |||||
entityName:e.detail, | |||||
list:[] | |||||
}) | |||||
this.getList(); | |||||
}, | |||||
back:function(){ | |||||
wx.navigateBack({ | |||||
delta: 1 | |||||
}) | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面隐藏 | |||||
*/ | |||||
onHide() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面卸载 | |||||
*/ | |||||
onUnload() { | |||||
}, | |||||
/** | |||||
* 页面相关事件处理函数--监听用户下拉动作 | |||||
*/ | |||||
onPullDownRefresh() { | |||||
}, | |||||
/** | |||||
* 页面上拉触底事件的处理函数 | |||||
*/ | |||||
onReachBottom() { | |||||
}, | |||||
/** | |||||
* 用户点击右上角分享 | |||||
*/ | |||||
onShareAppMessage() { | |||||
} | |||||
}) |
@@ -0,0 +1,10 @@ | |||||
{ | |||||
"navigationStyle":"custom", | |||||
"usingComponents": { | |||||
"van-search": "@vant/weapp/search/index", | |||||
"van-icon": "@vant/weapp/icon/index", | |||||
"van-cell": "@vant/weapp/cell/index", | |||||
"van-dropdown-menu": "@vant/weapp/dropdown-menu/index", | |||||
"van-dropdown-item": "@vant/weapp/dropdown-item/index" | |||||
} | |||||
} |
@@ -0,0 +1,49 @@ | |||||
<!--pages/index/policy/list/list.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 style="margin-top:{{isIPX?'88px':'64px'}};background: linear-gradient(to right, #429a68, #9ecf67);"> | |||||
<van-search | |||||
value="{{ value }}" | |||||
shape="round" | |||||
background="transparent" | |||||
placeholder="请输入相关内容搜索" | |||||
clearable | |||||
bind:change="goSearch" | |||||
use-left-icon-slot | |||||
> | |||||
<van-icon slot="left-icon" name="search" size="20" color="#2962EF" style="margin-right: 10px;" /> | |||||
</van-search> | |||||
</view> | |||||
<van-dropdown-menu> | |||||
<van-dropdown-item value="{{ statisticsTypeId }}" options="{{ option1 }}" bind:change="changeTab" /> | |||||
</van-dropdown-menu> | |||||
<scroll-view scroll-y refresher-threshold="0" style="height:76vh" bindscrolltolower="paging" lower-threshold="100"> | |||||
<!-- <view class="flex_main" bind:tap="goDetail"> | |||||
<van-cell use-label-slot border="{{false}}"> | |||||
<view slot="icon" style="border-right: 3px solid #9ecf67;height: 16px;margin-top: .5vh;margin-right: 5px;"></view> | |||||
<view slot="title"> | |||||
<text class="title">主体名称主体名称主体名称主体名称主体名称{{statisticsTypeId}}</text> | |||||
</view> | |||||
<view slot="label" class="label"> | |||||
<text>法人姓名</text> | |||||
<text>主体地址主体地址主体地址主体地址</text> | |||||
</view> | |||||
</van-cell> | |||||
</view> --> | |||||
<view class="flex_main" wx:for="{{list}}" data-id="{{item.id}}" bind:tap="goDetail"> | |||||
<van-cell use-label-slot border="{{false}}"> | |||||
<view slot="icon" style="border-right: 3px solid #9ecf67;height: 16px;margin-top: .5vh;margin-right: 5px;"></view> | |||||
<view slot="title"> | |||||
<text class="title">{{item.entityName}}</text> | |||||
</view> | |||||
<view slot="label" class="label"> | |||||
<text>{{item.corporateRepresentativeName}}</text> | |||||
<text>{{item.entityAddress}}</text> | |||||
</view> | |||||
</van-cell> | |||||
</view> | |||||
</scroll-view> |
@@ -0,0 +1,42 @@ | |||||
/* pages/index/policy/list/list.wxss */ | |||||
page{ | |||||
height: 100vh; | |||||
overflow: hidden; | |||||
} | |||||
.label{ | |||||
display: flex; | |||||
justify-content: space-between; | |||||
} | |||||
.title{ | |||||
display: -webkit-box; | |||||
-webkit-box-orient: vertical; | |||||
-webkit-line-clamp: 1; | |||||
word-break: break-all; | |||||
overflow: hidden; | |||||
} | |||||
.flex_main{ | |||||
width: 92%; | |||||
background-color: #ffffff; | |||||
margin: 1.5vh auto 0; | |||||
padding: 1vw 1vw; | |||||
border-radius: 15px; | |||||
box-shadow: 0 8px 20px rgba(3, 3, 67, .1); | |||||
} | |||||
.van-search { | |||||
width: 90%; | |||||
margin: 0 auto; | |||||
} | |||||
.van-search__content { | |||||
padding-top: 5px ; | |||||
padding-bottom: 5px ; | |||||
} | |||||
.list_num{ | |||||
font-size: 24rpx; | |||||
width: 85%; | |||||
margin: 0 auto; | |||||
} | |||||
.list_num text{ | |||||
font-weight: bold; | |||||
color: #2A63EF; | |||||
} |
@@ -25,6 +25,28 @@ Page({ | |||||
*/ | */ | ||||
onLoad(options) { | onLoad(options) { | ||||
let that = this | let that = this | ||||
//所属银行 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'major_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
this.setData({ | |||||
majorTypeOptions:res.data | |||||
}); | |||||
} | |||||
}) | |||||
let templateQueryParams = { | |||||
// 分页 | |||||
type:'5' | |||||
}; | |||||
UTIL.httpRequest(API.URL_GET_TEMPLATELIST , templateQueryParams, { | |||||
success: (res) => { | |||||
that.setData({ | |||||
approvalTemplateList:res.rows, | |||||
["form.approvalTemplateId"]:res.rows[0].id, | |||||
["form.approvalTemplateName"]:res.rows[0].name, | |||||
}) | |||||
} | |||||
}) | |||||
if(options.id!=null&&options.id!=""){ | if(options.id!=null&&options.id!=""){ | ||||
this.setData({id:options.id}) | this.setData({id:options.id}) | ||||
UTIL.httpRequest(API.URL_GET_MAJOREVENTGET + this.data.id, {method:'GET'}, { | UTIL.httpRequest(API.URL_GET_MAJOREVENTGET + this.data.id, {method:'GET'}, { | ||||
@@ -33,6 +55,9 @@ Page({ | |||||
if(res.data.auditStatus!='0'&&res.data.auditStatus!='2'){ | if(res.data.auditStatus!='0'&&res.data.auditStatus!='2'){ | ||||
this.setData({'showBtn':false}); | this.setData({'showBtn':false}); | ||||
} | } | ||||
res.data.majorTypeText = UTIL.getTransform(res.data.majorType,that.data.majorTypeOptions); | |||||
let op = that.data.approvalTemplateList.filter(function (e) { return e.id == res.data.approvalTemplateId; }); | |||||
res.data.approvalTemplateName = op[0].name; | |||||
this.setData({'form':res.data}) | this.setData({'form':res.data}) | ||||
this.selectComponent('#hf_editor').setHtml(res.data.eventContent); | this.selectComponent('#hf_editor').setHtml(res.data.eventContent); | ||||
} | } | ||||
@@ -41,6 +66,15 @@ Page({ | |||||
this.onShow() | this.onShow() | ||||
} | } | ||||
}, | }, | ||||
onConfirmPickApproval(event) { | |||||
console.log(event); | |||||
var that = this; | |||||
this.setData({ | |||||
["form.showApprovalTemplateName"]: false, | |||||
["form.approvalTemplateName"]: event.detail.value.name, | |||||
["form.approvalTemplateId"]: event.detail.value.id, | |||||
}); | |||||
}, | |||||
onConfirmEventTime(e){ | onConfirmEventTime(e){ | ||||
let data = this.getNewDate(new Date(e.detail.value)); | let data = this.getNewDate(new Date(e.detail.value)); | ||||
this.setData({'form.eventTime':data}); | this.setData({'form.eventTime':data}); | ||||
@@ -123,6 +157,21 @@ Page({ | |||||
}else if(this.data.form.eventContent===''||this.data.form.eventContent==null){ //事项内容 | }else if(this.data.form.eventContent===''||this.data.form.eventContent==null){ //事项内容 | ||||
UTIL.showToastNoneIcon('事项内容不能为空!'); | UTIL.showToastNoneIcon('事项内容不能为空!'); | ||||
return false; | return false; | ||||
}else if(this.data.form.dzbty===''||this.data.form.dzbty==null){ //事项内容 | |||||
UTIL.showToastNoneIcon('村党支部提议不能为空!'); | |||||
return false; | |||||
}else if(this.data.form.lwhsy===''||this.data.form.lwhsy==null){ //事项内容 | |||||
UTIL.showToastNoneIcon('两委会商议不能为空!'); | |||||
return false; | |||||
}else if(this.data.form.dqyshsyhjy===''||this.data.form.dqyshsyhjy==null){ //事项内容 | |||||
UTIL.showToastNoneIcon('党群议事会审议和决议不能为空!'); | |||||
return false; | |||||
}else if(this.data.form.jcjggk===''||this.data.form.jcjggk==null){ //事项内容 | |||||
UTIL.showToastNoneIcon('决策结果公开不能为空!'); | |||||
return false; | |||||
}else if(this.data.form.ssqkgk===''||this.data.form.ssqkgk==null){ //事项内容 | |||||
UTIL.showToastNoneIcon('实施情况公开不能为空!'); | |||||
return false; | |||||
}else if(this.data.status=='0'){ | }else if(this.data.status=='0'){ | ||||
this.setData({'status':'1'}) | this.setData({'status':'1'}) | ||||
var that = this; | var that = this; | ||||
@@ -187,6 +236,13 @@ Page({ | |||||
delta: 1 | delta: 1 | ||||
}) | }) | ||||
}, | }, | ||||
onConfirm(event) { | |||||
this.setData({ | |||||
[event.currentTarget.dataset.name]: false, | |||||
[event.currentTarget.dataset.value]: event.detail.value.dictValue, | |||||
[event.currentTarget.dataset.value+'Text']: event.detail.value.dictLabel, | |||||
}); | |||||
}, | |||||
/** | /** | ||||
* 生命周期函数--监听页面隐藏 | * 生命周期函数--监听页面隐藏 | ||||
*/ | */ | ||||
@@ -7,21 +7,61 @@ | |||||
<van-field label="项目名称" value="{{ form.eventName }}" placeholder="项目名称" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.eventName"/> | <van-field label="项目名称" value="{{ form.eventName }}" placeholder="项目名称" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.eventName"/> | ||||
<view class="section" style="margin-top: -28rpx;"> | <view class="section" style="margin-top: -28rpx;"> | ||||
<view class="section__title"><text style="color:red;margin-right: 8rpx;">*</text>发生日期</view> | |||||
<picker mode="date" value="{{form.eventTime}}" bindchange="onConfirmEventTime"> | |||||
<view class="picker"> | |||||
{{form.eventTime?form.eventTime:'发生日期'}} | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
<view class="section__title"><text style="color:red;margin-right: 8rpx;">*</text>发生日期</view> | |||||
<picker mode="date" value="{{form.eventTime}}" bindchange="onConfirmEventTime"> | |||||
<view class="picker"> | |||||
{{form.eventTime?form.eventTime:'发生日期'}} | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
<van-popup show="{{form.showMajorType}}" round position="bottom" bind:close="closeBox" data-name="form.showMajorType"> | |||||
<van-picker | |||||
columns="{{majorTypeOptions}}" | |||||
show-toolbar | |||||
value-key="dictLabel" | |||||
bind:cancel="closeBox" | |||||
bind:confirm="onConfirm" | |||||
data-name="form.showMajorType" | |||||
data-value="form.majorType" | |||||
/> | |||||
</van-popup> | |||||
<van-field required label="事项类型" readonly value="{{ form.majorTypeText }}" placeholder="请选择事项类型" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction ="down" bindtap="openBox" data-name="form.showMajorType"/> | |||||
<van-popup show="{{form.showApprovalTemplateName}}" round position="bottom" bind:close="closeBox" data-name="form.showApprovalTemplateName"> | |||||
<van-picker | |||||
columns="{{approvalTemplateList}}" | |||||
show-toolbar | |||||
value-key="name" | |||||
bind:cancel="closeBox" | |||||
bind:confirm="onConfirmPickApproval" | |||||
data-name="form.showApprovalTemplateName" | |||||
data-value="form.approvalTemplateId" | |||||
/> | |||||
</van-popup> | |||||
<van-field required label="审批流程" readonly value="{{ form.approvalTemplateName }}" placeholder="请选择审批流程" border="{{ false }}" bind:change="onChange" input-align="right" is-link arrow-direction="down" bindtap="openBox" data-name="form.showApprovalTemplateName"/> | |||||
<view style="width:100%;"> | <view style="width:100%;"> | ||||
<hf_editor style="width:100%" height="600rpx" insertPicture="{{true}}" placeholder="编写文章..." bind:Content="getHtml" bind:insertImage="insertImage" id="hf_editor"/> | <hf_editor style="width:100%" height="600rpx" insertPicture="{{true}}" placeholder="编写文章..." bind:Content="getHtml" bind:insertImage="insertImage" id="hf_editor"/> | ||||
</view> | </view> | ||||
<view style="margin-bottom: 15px;"></view> | <view style="margin-bottom: 15px;"></view> | ||||
<van-field label="理事会提议" value="{{ form.dzbty }}" placeholder="理事会提议" border="{{ false }}" bind:change="onChange" input-align="right" label-width="auto" required data-value="form.dzbty"/> | |||||
<van-field label="村党支部和理事会商议" value="{{ form.lwhsy }}" placeholder="村党支部和理事会商议" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.lwhsy"/> | |||||
<van-field label="党员会审议" value="{{ form.dqyshsyhjy }}" placeholder="党员会审议" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.dqyshsyhjy"/> | |||||
<van-field label="成员(代表)会决议" value="{{ form.cydbhjy }}" placeholder="成员(代表)会决议" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.cydbhjy"/> | |||||
<van-field label="决策结果公开" value="{{ form.jcjggk }}" placeholder="决策结果公开" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.jcjggk"/> | |||||
<van-field label="实施情况公开" value="{{ form.ssqkgk }}" placeholder="实施情况公开" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.ssqkgk"/> | |||||
<van-field label="备注" value="{{ form.remark }}" placeholder="备注" border="{{ false }}" bind:change="onChange" input-align="right" data-value="form.remark"/> | <van-field label="备注" value="{{ form.remark }}" placeholder="备注" border="{{ false }}" bind:change="onChange" input-align="right" data-value="form.remark"/> | ||||
</view> | </view> | ||||
<view class="bottom" wx:if="{{showBtn}}"> | <view class="bottom" wx:if="{{showBtn}}"> | ||||
<view class="btn2" bindtap="goSubmit">保存</view> | <view class="btn2" bindtap="goSubmit">保存</view> | ||||
</view> | |||||
</view> | |||||
<view style="height: 30px;"></view> |
@@ -1,4 +1,7 @@ | |||||
/* pages/payee/add/add.wxss */ | /* pages/payee/add/add.wxss */ | ||||
.van-cell__title, .van-cell__value { | |||||
max-width: 50%!important; | |||||
} | |||||
.main-box{ | .main-box{ | ||||
background: #ffffff; | background: #ffffff; | ||||
padding: 20px; | padding: 20px; | ||||
@@ -40,8 +43,6 @@ | |||||
margin-top: 30px; | margin-top: 30px; | ||||
margin-bottom: 30px; | margin-bottom: 30px; | ||||
display: flex; | display: flex; | ||||
position: absolute; | |||||
bottom: 10%; | |||||
} | } | ||||
.bottom view { | .bottom view { | ||||
@@ -95,22 +95,21 @@ Page({ | |||||
bindKeyInput(e){ | bindKeyInput(e){ | ||||
console.log(e.detail); | console.log(e.detail); | ||||
var that = this; | var that = this; | ||||
var str = e.detail.value; | |||||
var numArr = str.match(/\d+/g) | |||||
var nameArr = str.match(/[\u4e00-\u9fa5]/g).join("") | |||||
var str = e.detail.value.replace(/\s/g, ""); | |||||
console.log(str); | |||||
var numArr = str.match(/\d+/g); | |||||
var nameArr = str.match(/[\u4e00-\u9fa5]/g).join(""); | |||||
if (numArr) { | if (numArr) { | ||||
numArr.map(rr=>{ | numArr.map(rr=>{ | ||||
if (rr.length>16) { | |||||
console.log(rr); | console.log(rr); | ||||
console.log(UTIL.isBankCard(rr)); | console.log(UTIL.isBankCard(rr)); | ||||
const carId = UTIL.isBankCard(rr); | |||||
if (carId) { | |||||
// const carId = UTIL.isBankCard(rr); | |||||
// if (carId) { | |||||
that.setData({ | that.setData({ | ||||
["form.payee"]:nameArr, | ["form.payee"]:nameArr, | ||||
["form.payeeAccount"]:rr | ["form.payeeAccount"]:rr | ||||
}) | }) | ||||
} | |||||
} | |||||
// } | |||||
}) | }) | ||||
} | } | ||||
}, | }, | ||||
@@ -54,8 +54,10 @@ Page({ | |||||
var list = []; | var list = []; | ||||
array.map(res3=>{ | array.map(res3=>{ | ||||
// .replace(/^(.{6})(?:\d+)(.{4})$/,"\$1****\$2") | // .replace(/^(.{6})(?:\d+)(.{4})$/,"\$1****\$2") | ||||
console.log('111111111111'); | |||||
res3.payeeAccountText = res3.payeeAccount; | res3.payeeAccountText = res3.payeeAccount; | ||||
res3.bankTypeText = (res.data.filter(function (e) { return e.dictValue == res3.bankType; }))[0].dictLabel; | res3.bankTypeText = (res.data.filter(function (e) { return e.dictValue == res3.bankType; }))[0].dictLabel; | ||||
console.log((res.data.filter(function (e) { return e.dictValue == res3.bankType; }))[0].dictLabel); | |||||
if(payeeType == 2 && array.length>0){ | if(payeeType == 2 && array.length>0){ | ||||
if(res3.payeeType == 4 || res3.payeeType == 3 ){ | if(res3.payeeType == 4 || res3.payeeType == 3 ){ | ||||
list.push(res3) | list.push(res3) | ||||
@@ -104,9 +104,11 @@ Page({ | |||||
remark:this.data.name, | remark:this.data.name, | ||||
paymentState:this.data.value1, | paymentState:this.data.value1, | ||||
capitalExpenditureType:this.data.value2, | capitalExpenditureType:this.data.value2, | ||||
transferType:this.data.value3 | |||||
transferType:this.data.value3, | |||||
auditStatus:'3', | |||||
method:'POST' | |||||
} | } | ||||
UTIL.httpRequest(API.URL_GET_TRANSFERPAYLIST,params,{ | |||||
UTIL.httpRequest(API.URL_GET_TRANSFERLIST,params,{ | |||||
success: (res) => { | success: (res) => { | ||||
let _this = this | let _this = this | ||||
if(res.code == 200){ | if(res.code == 200){ | ||||
@@ -194,6 +196,33 @@ Page({ | |||||
url: '/pages/handle/expenditureAuditNew/expenditureAuditNew?id='+e.currentTarget.dataset.ids+'&&ids='+e.currentTarget.dataset.ids+'&&type=see', | url: '/pages/handle/expenditureAuditNew/expenditureAuditNew?id='+e.currentTarget.dataset.ids+'&&ids='+e.currentTarget.dataset.ids+'&&type=see', | ||||
}) | }) | ||||
}, | }, | ||||
toPayReapply(e){ | |||||
let that = this; | |||||
wx.showModal({ | |||||
title: '提示', | |||||
content: '此操作会将单据中支付失败的记录重新申请,请先确保在【首页-收款方】中已修改准确,再执行此操作!', | |||||
success (res) { | |||||
if (res.confirm) { | |||||
UTIL.httpRequest(API.reapply + e.currentTarget.dataset.ids, {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.code == 200){ | |||||
wx.showToast({ | |||||
title: '重新申请成功', | |||||
icon: 'success', | |||||
duration: 2000 | |||||
}) | |||||
that.getList(); | |||||
}else{ | |||||
UTIL.showToastNoneIcon('申请失败'); | |||||
} | |||||
} | |||||
}) | |||||
} else if (res.cancel) { | |||||
console.log('用户点击取消') | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
scrap(e){ | scrap(e){ | ||||
console.log(e.currentTarget.dataset.data.id,e.currentTarget.dataset.data.index); | console.log(e.currentTarget.dataset.data.id,e.currentTarget.dataset.data.index); | ||||
if(e.currentTarget.dataset.data.assetStatus != 1){ | if(e.currentTarget.dataset.data.assetStatus != 1){ | ||||
@@ -50,11 +50,32 @@ | |||||
<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;" wx-if="{{(item.paymentState==4 || item.paymentState==5) && item.downId != null}}"> | |||||
<view style="color:red;font-size: 18px;"> | |||||
<text style="font-size: 12px;display: inline;">(已申请)</text> | |||||
</view> | |||||
</view> | |||||
<view style="text-align: right;" wx-if="{{(item.paymentState==4 || item.paymentState==5) && item.downId == null}}"> | |||||
<view style="color:rgb(26,173,25);font-size: 18px;"> | |||||
<text style="font-size: 12px;display: inline;">可重新申请</text> | |||||
</view> | |||||
</view> | |||||
<view style="text-align: right;"> | <view style="text-align: right;"> | ||||
<button wx-if="{{item.paymentState==1}}" type="primary" size="mini" style="border-radius: 15px;" bindtap="toPay" data-id="{{item.approvalItemTemplateId}}" data-ids="{{item.id}}">待支付</button> | <button wx-if="{{item.paymentState==1}}" type="primary" size="mini" style="border-radius: 15px;" bindtap="toPay" data-id="{{item.approvalItemTemplateId}}" data-ids="{{item.id}}">待支付</button> | ||||
<button wx-if="{{item.paymentState==3}}" type="primary" size="mini" style="border-radius: 15px;background-color: #B3DB62;" data-id="{{item.approvalItemTemplateId}}" data-ids="{{item.id}}" bindtap="toPayDetail">银行受理</button> | <button wx-if="{{item.paymentState==3}}" type="primary" size="mini" style="border-radius: 15px;background-color: #B3DB62;" data-id="{{item.approvalItemTemplateId}}" data-ids="{{item.id}}" bindtap="toPayDetail">银行受理</button> | ||||
<button wx-if="{{item.paymentState==4}}" type="warn" size="mini" style="border-radius: 15px;" data-id="{{item.approvalItemTemplateId}}" data-ids="{{item.id}}" bindtap="toPayDetail">支付失败</button> | |||||
<button wx-if="{{item.paymentState==5}}" type="primary" size="mini" style="border-radius: 15px;background-color: #FC9A55;" data-id="{{item.approvalItemTemplateId}}" data-ids="{{item.id}}" bindtap="toPayDetail">部分失败</button> | |||||
<button wx-if="{{item.paymentState==4 && item.downId == null}}" type="warn" size="mini" style="border-radius: 15px;" data-id="{{item.approvalItemTemplateId}}" data-ids="{{item.id}}" bindtap="toPayReapply">支付失败</button> | |||||
<button wx-if="{{item.paymentState==5 && item.downId == null}}" type="primary" size="mini" style="border-radius: 15px;background-color: #FC9A55;" data-id="{{item.approvalItemTemplateId}}" data-ids="{{item.id}}" bindtap="toPayReapply">部分失败</button> | |||||
<button wx-if="{{item.paymentState==4 && item.downId != null}}" type="warn" size="mini" style="border-radius: 15px;" data-id="{{item.approvalItemTemplateId}}" data-ids="{{item.id}}" bindtap="toPayDetail">支付失败</button> | |||||
<button wx-if="{{item.paymentState==5 && item.downId != null}}" type="primary" size="mini" style="border-radius: 15px;background-color: #FC9A55;" data-id="{{item.approvalItemTemplateId}}" data-ids="{{item.id}}" bindtap="toPayDetail">部分失败</button> | |||||
<button wx-if="{{item.paymentState==6}}" type="primary" size="mini" style="border-radius: 15px;">支付成功</button> | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
@@ -111,8 +111,8 @@ Page({ | |||||
confirmText: '确定', | confirmText: '确定', | ||||
success: function (e) { | success: function (e) { | ||||
//非建行 | //非建行 | ||||
if(_this.data.data.accountPassword==null||_this.data.data.accountPassword.length<1){ | |||||
UTIL.showToastNoneIcon("请输入支付口令!"); | |||||
if(_this.data.data.alternateField1==null||_this.data.data.alternateField1.length<1){ | |||||
UTIL.showToastNoneIcon("请输入验证码!"); | |||||
}else{ | }else{ | ||||
_this.setData({'showPopup':true}) | _this.setData({'showPopup':true}) | ||||
} | } | ||||
@@ -145,10 +145,34 @@ Page({ | |||||
confirmPay(){ | confirmPay(){ | ||||
let _this = this | let _this = this | ||||
this.setData({'showPopup':false}) | this.setData({'showPopup':false}) | ||||
if(this.data.data.bankType!=4){ | |||||
console.log(this.data.data.bankType); | |||||
if(this.data.data.bankType==4){ | |||||
let params = { | let params = { | ||||
id : this.data.data.id, | id : this.data.data.id, | ||||
accountPassword:this.data.data.accountPassword | |||||
alternateField1:this.data.data.alternateField1, | |||||
bankType: this.data.data.bankType | |||||
} | |||||
UTIL.httpRequest(API.URL_GET_PAY,params,{ | |||||
success: (res) => { | |||||
wx.showModal({ | |||||
title: "", | |||||
showCancel: false, | |||||
content: "支付成功,请等待银行进行处理,稍后可通过查询结果按钮查询银行处理结果。", | |||||
confirmText: '确定', | |||||
success: function (e) { | |||||
_this.back() | |||||
} | |||||
}) | |||||
}, | |||||
fail:(res) => { | |||||
UTIL.showToastNoneIcon(res) | |||||
} | |||||
}) | |||||
}else{ | |||||
let params = { | |||||
id : this.data.data.id, | |||||
accountPassword:this.data.data.accountPassword, | |||||
bankType: this.data.data.bankType | |||||
} | } | ||||
UTIL.httpRequest(API.URL_GET_PAY,params,{ | UTIL.httpRequest(API.URL_GET_PAY,params,{ | ||||
success: (res) => { | success: (res) => { | ||||
@@ -169,7 +193,7 @@ Page({ | |||||
content: res.msg, | content: res.msg, | ||||
confirmText: '确定', | confirmText: '确定', | ||||
success: function (e) { | success: function (e) { | ||||
_this.back() | |||||
} | } | ||||
}) | }) | ||||
} | } | ||||
@@ -178,27 +202,6 @@ Page({ | |||||
UTIL.showToastNoneIcon(res) | UTIL.showToastNoneIcon(res) | ||||
} | } | ||||
}) | }) | ||||
}else{ | |||||
let params = { | |||||
id : this.data.data.id, | |||||
accountPassword:this.data.data.accountPassword | |||||
} | |||||
UTIL.httpRequest(API.URL_GET_PAY,params,{ | |||||
success: (res) => { | |||||
wx.showModal({ | |||||
title: "", | |||||
showCancel: false, | |||||
content: "支付成功,请等待银行进行处理,稍后可通过查询结果按钮查询银行处理结果。", | |||||
confirmText: '确定', | |||||
success: function (e) { | |||||
_this.back() | |||||
} | |||||
}) | |||||
}, | |||||
fail:(res) => { | |||||
UTIL.showToastNoneIcon(res) | |||||
} | |||||
}) | |||||
} | } | ||||
}, | }, | ||||
@@ -208,28 +211,36 @@ Page({ | |||||
sendMsg(){ | sendMsg(){ | ||||
let _this = this | let _this = this | ||||
let params = { | let params = { | ||||
id : this.data.data.id | |||||
id : this.data.data.id, | |||||
bankType: this.data.data.bankType | |||||
} | } | ||||
if(this.data.msgTime>0){ | if(this.data.msgTime>0){ | ||||
return false | return false | ||||
} | } | ||||
UTIL.httpRequest(API.URL_GET_SENDMSG,params,{ | UTIL.httpRequest(API.URL_GET_SENDMSG,params,{ | ||||
success: (res) => { | success: (res) => { | ||||
if (res.toString().indexOf('短信发送失败') == -1){ | |||||
_this.setData({'msgText':180+'s后可重新发送','msgTime':180}) | |||||
_this.msgTimer = setInterval(()=>{ | |||||
let tt = _this.data.msgTime | |||||
_this.setData({'msgText':tt--+'s后可重新发送','msgTime':tt}) | |||||
if (_this.data.msgTime == 0){ | |||||
clearInterval(_this.msgTimer); | |||||
_this.msgTime = 0 ; | |||||
_this.smsText = ''; | |||||
} | |||||
},1000) | |||||
if (res.code == API.SUCCESS_CODE) { | |||||
if (res.toString().indexOf('短信发送失败') == -1){ | |||||
_this.setData({'msgText':180+'s后可重新发送','msgTime':180}) | |||||
_this.msgTimer = setInterval(()=>{ | |||||
let tt = _this.data.msgTime | |||||
_this.setData({'msgText':tt--+'s后可重新发送','msgTime':tt}) | |||||
if (_this.data.msgTime == 0){ | |||||
clearInterval(_this.msgTimer); | |||||
_this.msgTime = 0 ; | |||||
_this.smsText = ''; | |||||
} | |||||
},1000) | |||||
}else{ | |||||
UTIL.showToastNoneIcon("短信发送失败,请联系管理员!"); | |||||
} | |||||
}else{ | }else{ | ||||
UTIL.showToastNoneIcon("短信发送失败,请联系管理员!"); | |||||
UTIL.showToastNoneIcon(res.msg); | |||||
} | } | ||||
} | |||||
}, | |||||
fail:(res) => { | |||||
UTIL.showToastNoneIcon(res) | |||||
} | |||||
}) | }) | ||||
}, | }, | ||||
bindPickerChange:function(e){ | bindPickerChange:function(e){ | ||||
@@ -45,25 +45,33 @@ | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<view style="padding:10px;width:90%;border:1px solid #ddd;border-radius: 5px;line-height: 16px;background-color: #FFF;margin-left:5%;margin-top: 20px;" wx:if="{{data.bankType!=4}}"> | |||||
<input type="number" placeholder="请输入口令" value="{{data.accountPassword}}" bindinput="bindNewInput" data-name="data.accountPassword"/> | |||||
</view> | |||||
<view style="padding:10px;width:90%;border:1px solid #ddd;border-radius: 5px;line-height: 16px;background-color: #FFF;margin-left:5%;margin-top: 20px;position:relative;" wx:if="{{data.bankType==4}}"> | |||||
<input type="number" placeholder="输入验证码" value="{{data.alternateField1}}" bindinput="bindNewInput" data-name="data.alternateField1"/> | |||||
<button type="primary" plain="true" size="mini" style="position: absolute;right: 4px;top: 5px;z-index: 999;" bind:disabled="{{msgTime>0}}" | |||||
bindtap="sendMsg" hover-class="btnView">发送验证码</button> | |||||
</view> | |||||
<view style="padding:10px;width:90%;" wx:if="{{msgText!=''}}"> | |||||
<text style="color: red;">*{{msgText}}</text> | |||||
<view wx:if="{{data.doubleConfirmationStatus == 'Y'}}" style="margin-top: 20px;" class="main-box top-box topBox"> | |||||
<view wx:if="{{data.doubleConfirmationUser == '' || data.doubleConfirmationUser == null}}"> | |||||
<text style="text-align: center">等待领导复核中。。。</text> | |||||
</view> | |||||
<view wx:else> | |||||
<text style="text-align: center">{{ data.doubleConfirmationUser +'已于'+data.doubleConfirmationTime +'进行复核。'}}</text> | |||||
</view> | |||||
</view> | </view> | ||||
<block> | |||||
<view class="bottom"> | |||||
<view class="btn1" bindtap="back">取消</view> | |||||
<view class="btn2" data-type="0" bindtap="goSubmit" hover-class="btnView">支付</view> | |||||
<view wx:if="{{data.doubleConfirmationStatus != 'Y' || !(data.doubleConfirmationUser == '' || data.doubleConfirmationUser == null)}}"> | |||||
<view style="padding:10px;width:90%;border:1px solid #ddd;border-radius: 5px;line-height: 16px;background-color: #FFF;margin-left:5%;margin-top: 20px;" wx:if="{{data.bankType == '1' || data.bankType == '2' || data.bankType == '3' || data.bankType == '5' || data.bankType == '9' || data.bankType == '10' || data.bankType == '18'}}"> | |||||
<input type="number" placeholder="请输入口令" value="{{data.accountPassword}}" bindinput="bindNewInput" data-name="data.accountPassword"/> | |||||
</view> | </view> | ||||
</block> | |||||
<modal hidden="{{!showPopup}}" title="确认支付?" confirm-text="是" cancel-text="否" bindcancel="cancelPay" bindconfirm="confirmPay"> | |||||
</modal> | |||||
<view style="padding:10px;width:90%;border:1px solid #ddd;border-radius: 5px;line-height: 16px;background-color: #FFF;margin-left:5%;margin-top: 20px;position:relative;" wx:else> | |||||
<input type="number" placeholder="输入验证码" value="{{data.alternateField1}}" bindinput="bindNewInput" data-name="data.alternateField1"/> | |||||
<button type="primary" plain="true" size="mini" style="position: absolute;right: 4px;top: 5px;z-index: 999;" bind:disabled="{{msgTime>0}}" bindtap="sendMsg" hover-class="btnView">发送验证码</button> | |||||
</view> | |||||
<view style="padding:10px;width:90%;" wx:if="{{msgText!=''}}"> | |||||
<text style="color: red;">*{{msgText}}</text> | |||||
</view> | |||||
<block> | |||||
<view class="bottom"> | |||||
<view class="btn1" bindtap="back">取消</view> | |||||
<view class="btn2" data-type="0" bindtap="goSubmit" hover-class="btnView">支付</view> | |||||
</view> | |||||
</block> | |||||
<modal hidden="{{!showPopup}}" title="确认支付?" confirm-text="是" cancel-text="否" bindcancel="cancelPay" bindconfirm="confirmPay"></modal> | |||||
</view> |
@@ -14,6 +14,7 @@ Page({ | |||||
option1: [], | option1: [], | ||||
option2: [], | option2: [], | ||||
option3: [], | option3: [], | ||||
list: [], | |||||
value1: '', | value1: '', | ||||
value2: '', | value2: '', | ||||
value3: '', | value3: '', | ||||
@@ -39,7 +40,21 @@ Page({ | |||||
}); | }); | ||||
}, | }, | ||||
projectId:'', | projectId:'', | ||||
projectValue:'' | |||||
projectValue:'', | |||||
pageNums:1, | |||||
params:{ | |||||
actacn:'' , //付款账户 | |||||
payeeActacn: '' , //收款账号 | |||||
payeeToname:'' , //收款人 | |||||
transtype:'' ,// 业务类型 数据字典:trans_type | |||||
direction:'' ,// 来往账标识 数据字典:direction | |||||
pageSize:'10', | |||||
pageNum:1, | |||||
method:'POST', | |||||
}, | |||||
recordform: {}, | |||||
formSms: {}, | |||||
recordopen4: false | |||||
}, | }, | ||||
/** | /** | ||||
@@ -47,6 +62,17 @@ Page({ | |||||
*/ | */ | ||||
onLoad(options) { | onLoad(options) { | ||||
var that = this; | var that = this; | ||||
let qu = wx.createSelectorQuery() | |||||
qu.select("#top_view").boundingClientRect() | |||||
qu.select("#top_ban").boundingClientRect() | |||||
qu.select("#top_view1").boundingClientRect() | |||||
qu.select("#top_view2").boundingClientRect() | |||||
qu.exec(res => { | |||||
console.log(res); | |||||
that.setData({ | |||||
scrollHeight:wx.getWindowInfo().windowHeight-res[3].top | |||||
}) | |||||
}) | |||||
// 对账状态字典查询 | // 对账状态字典查询 | ||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'check_status', {method:'GET'}, { | UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'check_status', {method:'GET'}, { | ||||
success: (res) => { | success: (res) => { | ||||
@@ -99,11 +125,9 @@ Page({ | |||||
method:'GET', | method:'GET', | ||||
accountType:102 | accountType:102 | ||||
} | } | ||||
UTIL.httpRequest(API.URL_GET_ACCOUNTLIST, sendData,{ | UTIL.httpRequest(API.URL_GET_ACCOUNTLIST, sendData,{ | ||||
success: (res) => { | success: (res) => { | ||||
console.log(res.rows) | console.log(res.rows) | ||||
let option1 = []; | let option1 = []; | ||||
res.rows.map(rr=>{ | res.rows.map(rr=>{ | ||||
console.log(rr); | console.log(rr); | ||||
@@ -111,28 +135,51 @@ Page({ | |||||
text: rr.accountName, value: rr.bankAccountNumber | text: rr.accountName, value: rr.bankAccountNumber | ||||
}) | }) | ||||
}) | }) | ||||
that.setData({ | that.setData({ | ||||
option1:option1, | option1:option1, | ||||
value1:res.rows[0].bankAccountNumber, | value1:res.rows[0].bankAccountNumber, | ||||
result1:res.rows[0].bankAccountNumber, | result1:res.rows[0].bankAccountNumber, | ||||
accountList:res.rows | accountList:res.rows | ||||
}) | }) | ||||
let perames = {method:'POST',actacn:res.rows[0].bankAccountNumber,pageSize:'10'} | |||||
//交易明细列表 | |||||
UTIL.httpRequest(API.URL_GET_GETRECORDETAILLIST , perames, { | |||||
success: (res) => { | |||||
res.rows.map(rrr=>{ | |||||
rrr.directionText = UTIL.getTransform(rrr.direction,that.data.directionOptions); | |||||
}) | |||||
that.setData({ | |||||
list:res.rows | |||||
}) | |||||
} | |||||
console.log(res.rows[0].bankAccountNumber); | |||||
let actacnName = (that.data.option1).filter(function (e) { return e.value == that.data.result1; }); | |||||
that.setData({ | |||||
actacnName:actacnName[0].text, | |||||
["params.actacn"]:res.rows[0].bankAccountNumber | |||||
}) | }) | ||||
that.getData(); | |||||
} | } | ||||
}) | }) | ||||
}, | }, | ||||
getData(){ | |||||
var that = this; | |||||
let data = that.data.list; | |||||
//交易明细列表 | |||||
UTIL.httpRequest(API.URL_GET_GETRECORDETAILLIST , this.data.params, { | |||||
success: (res) => { | |||||
console.log(res); | |||||
console.log(res.total +'---------------------'+ data.length); | |||||
if(res.total <= data.length){ | |||||
return; | |||||
}else{ | |||||
res.rows.map(rrr=>{ | |||||
rrr.directionText = UTIL.getTransform(rrr.direction,that.data.directionOptions); | |||||
data.push(rrr); | |||||
}) | |||||
that.setData({ | |||||
list:data | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
paging(){ | |||||
this.setData({ | |||||
pageNums:this.data.pageNums+1, | |||||
}) | |||||
this.getData(); | |||||
}, | |||||
goSubmit(){ | goSubmit(){ | ||||
var that = this ; | var that = this ; | ||||
let form = { | let form = { | ||||
@@ -171,13 +218,13 @@ Page({ | |||||
bindDateBeginChange: function(e) { | bindDateBeginChange: function(e) { | ||||
console.log('picker发送选择改变,携带值为', e.detail.value) | console.log('picker发送选择改变,携带值为', e.detail.value) | ||||
this.setData({ | this.setData({ | ||||
beginApplyDate: e.detail.value | |||||
['params.params.beginApplyDate']:e.detail.value, | |||||
}) | }) | ||||
}, | }, | ||||
bindDateEndChange: function(e) { | bindDateEndChange: function(e) { | ||||
console.log('picker发送选择改变,携带值为', e.detail.value) | console.log('picker发送选择改变,携带值为', e.detail.value) | ||||
this.setData({ | this.setData({ | ||||
endApplyDate: e.detail.value | |||||
['params.params.endApplyDate']:e.detail.value, | |||||
}) | }) | ||||
}, | }, | ||||
reset(){ | reset(){ | ||||
@@ -202,7 +249,10 @@ Page({ | |||||
}) | }) | ||||
}, | }, | ||||
onClose() { | onClose() { | ||||
this.setData({ showPopup: false }); | |||||
this.setData({ | |||||
showPopup: false, | |||||
recordopen4: false | |||||
}); | |||||
}, | }, | ||||
onChangeZH(event) { | onChangeZH(event) { | ||||
console.log(event.detail); | console.log(event.detail); | ||||
@@ -225,106 +275,46 @@ Page({ | |||||
changeTab1(event){ | changeTab1(event){ | ||||
var that = this ; | var that = this ; | ||||
let actacnName = (that.data.option1).filter(function (e) { return e.value == event.detail; }); | let actacnName = (that.data.option1).filter(function (e) { return e.value == event.detail; }); | ||||
console.log(actacnName); | |||||
this.setData({ | this.setData({ | ||||
result1: event.detail, | result1: event.detail, | ||||
value1: event.detail, | value1: event.detail, | ||||
actacnName:actacnName[0].text | |||||
actacnName:actacnName[0].text, | |||||
['params.actacn']:event.detail, | |||||
['params.pageNum']:1, | |||||
list:[] | |||||
}); | }); | ||||
let form = { | |||||
actacn:that.data.result1 , //付款账户 | |||||
transtype:that.data.result2 ,// 业务类型 数据字典:trans_type | |||||
direction:that.data.result3 ,// 来往账标识 数据字典:direction | |||||
pageNum:'1', | |||||
pageSize:'10', | |||||
method:'POST', | |||||
} | |||||
console.log(form); | |||||
UTIL.httpRequest(API.URL_GET_GETRECORDETAILLIST , form, { | |||||
success: (res) => { | |||||
res.rows.map(rrr=>{ | |||||
rrr.directionText = UTIL.getTransform(rrr.direction,that.data.directionOptions); | |||||
}) | |||||
that.setData({ | |||||
list:res.rows, | |||||
showPopup:false | |||||
}) | |||||
} | |||||
}) | |||||
// UTIL.httpRequest(API.URL_GET_GETRECONCILIATIONMOBILE , form, { | |||||
// success: (res) => { | |||||
// res.rows.map(rrr=>{ | |||||
// rrr.checkStatusText = UTIL.getTransform(rrr.checkStatus,that.data.checkStatusOptions); | |||||
// }) | |||||
// that.setData({ | |||||
// list:res.rows, | |||||
// showPopup:false | |||||
// }) | |||||
// } | |||||
// }) | |||||
this.getData(); | |||||
}, | }, | ||||
changeTab2(event){ | changeTab2(event){ | ||||
this.setData({ | this.setData({ | ||||
result2: event.detail, | result2: event.detail, | ||||
value2: event.detail | |||||
value2: event.detail, | |||||
['params.transtype']:event.detail, | |||||
['params.pageNum']:1, | |||||
list:[] | |||||
}); | }); | ||||
var that = this ; | |||||
let form = { | |||||
actacn:that.data.result1 , //付款账户 | |||||
transtype:that.data.result2 ,// 业务类型 数据字典:trans_type | |||||
direction:that.data.result3 ,// 来往账标识 数据字典:direction | |||||
pageSize:'10', | |||||
method:'POST', | |||||
} | |||||
console.log(form); | |||||
UTIL.httpRequest(API.URL_GET_GETRECORDETAILLIST , form, { | |||||
success: (res) => { | |||||
res.rows.map(rrr=>{ | |||||
rrr.directionText = UTIL.getTransform(rrr.direction,that.data.directionOptions); | |||||
}) | |||||
that.setData({ | |||||
list:res.rows, | |||||
showPopup:false | |||||
}) | |||||
} | |||||
}) | |||||
this.getData(); | |||||
}, | }, | ||||
changeTab3(event){ | changeTab3(event){ | ||||
this.setData({ | this.setData({ | ||||
result3: event.detail, | result3: event.detail, | ||||
value3: event.detail | |||||
value3: event.detail, | |||||
['params.direction']:event.detail, | |||||
['params.pageNum']:1, | |||||
list:[] | |||||
}); | }); | ||||
var that = this ; | |||||
let form = { | |||||
actacn:that.data.result1 , //付款账户 | |||||
transtype:that.data.result2 ,// 业务类型 数据字典:trans_type | |||||
direction:that.data.result3 ,// 来往账标识 数据字典:direction | |||||
pageSize:'10', | |||||
method:'POST', | |||||
} | |||||
console.log(form); | |||||
UTIL.httpRequest(API.URL_GET_GETRECORDETAILLIST , form, { | |||||
success: (res) => { | |||||
res.rows.map(rrr=>{ | |||||
rrr.directionText = UTIL.getTransform(rrr.direction,that.data.directionOptions); | |||||
}) | |||||
that.setData({ | |||||
list:res.rows, | |||||
showPopup:false | |||||
}) | |||||
} | |||||
}) | |||||
this.getData(); | |||||
}, | }, | ||||
minInput(e){ | minInput(e){ | ||||
var that = this ; | var that = this ; | ||||
that.setData({ | that.setData({ | ||||
txnamtMin: e.detail.value, //金额范围 最小 | |||||
['params.params.txnamtMin']:e.detail.value, | |||||
}) | }) | ||||
}, | }, | ||||
maxInput(e){ | maxInput(e){ | ||||
var that = this ; | var that = this ; | ||||
that.setData({ | that.setData({ | ||||
xnamtMax: e.detail.value, //金额范围最大 | |||||
['params.params.xnamtMax']:e.detail.value, | |||||
}) | }) | ||||
}, | }, | ||||
openDZ(e){ | openDZ(e){ | ||||
@@ -440,8 +430,6 @@ Page({ | |||||
}) | }) | ||||
} | } | ||||
} | } | ||||
}, | }, | ||||
showTransactionDialog(){ | showTransactionDialog(){ | ||||
wx.navigateTo({ | wx.navigateTo({ | ||||
@@ -452,31 +440,30 @@ Page({ | |||||
console.log(e); | console.log(e); | ||||
var that = this; | var that = this; | ||||
let form = { | let form = { | ||||
actacn:that.data.result1 , //付款账户 | |||||
payeeActacn: '' , //收款账号 | |||||
payeeToname:e.detail , //收款人 | payeeToname:e.detail , //收款人 | ||||
transtype:that.data.result2 ,// 业务类型 数据字典:trans_type | |||||
direction:that.data.result3 ,// 来往账标识 数据字典:direction | |||||
params:{ | params:{ | ||||
beginTxnDate:that.data.beginApplyDate, | beginTxnDate:that.data.beginApplyDate, | ||||
endTxnDate:that.data.endApplyDate, | endTxnDate:that.data.endApplyDate, | ||||
txnamtMin:that.data.txnamtMin, | txnamtMin:that.data.txnamtMin, | ||||
txnamtMax:that.data.xnamtMax, | txnamtMax:that.data.xnamtMax, | ||||
}, | }, | ||||
pageSize:'10', | |||||
method:'POST', | |||||
} | } | ||||
UTIL.httpRequest(API.URL_GET_GETRECORDETAILLIST , form, { | |||||
success: (res) => { | |||||
res.rows.map(rrr=>{ | |||||
rrr.directionText = UTIL.getTransform(rrr.direction,that.data.directionOptions); | |||||
}) | |||||
that.setData({ | |||||
list:res.rows, | |||||
showPopup:false | |||||
}) | |||||
} | |||||
}) | |||||
this.setData({ | |||||
list:[], | |||||
['params.payeeToname']:e.detail | |||||
}); | |||||
this.getData(); | |||||
// UTIL.httpRequest(API.URL_GET_GETRECORDETAILLIST , form, { | |||||
// success: (res) => { | |||||
// res.rows.map(rrr=>{ | |||||
// rrr.directionText = UTIL.getTransform(rrr.direction,that.data.directionOptions); | |||||
// }) | |||||
// that.setData({ | |||||
// list:res.rows, | |||||
// showPopup:false | |||||
// }) | |||||
// } | |||||
// }) | |||||
}, | }, | ||||
/** | /** | ||||
* 生命周期函数--监听页面初次渲染完成 | * 生命周期函数--监听页面初次渲染完成 | ||||
@@ -525,5 +512,239 @@ Page({ | |||||
*/ | */ | ||||
onShareAppMessage() { | onShareAppMessage() { | ||||
}, | |||||
handleHuidan(rows) { | |||||
console.log(rows); | |||||
this.data.recordform.id = rows.currentTarget.dataset.row.id; | |||||
this.data.recordform.method = 'GET'; | |||||
this.data.recordListOpen = false; | |||||
UTIL.httpRequest(API.transactionDetailsQuery2OnlyQuery , this.data.recordform, { | |||||
success: (response) => { | |||||
this.setData({ | |||||
tYinnongTradingRecordDetailList: response.data, | |||||
recordListOpen: true, | |||||
title: "查看回单列表数据" | |||||
}) | |||||
} | |||||
}) | |||||
}, | |||||
handleView1(rows){ | |||||
let dataRow = rows.currentTarget.dataset.row; | |||||
if(dataRow.alternateField2 != null && dataRow.alternateField2 != "" && dataRow.alternateField2.indexOf('失败') == -1){ | |||||
this.showfileFunction(dataRow.alternateField2); | |||||
} else{ | |||||
UTIL.showToastNoneIcon("暂无回单,请到村账户模块查询电子回单!"); | |||||
} | |||||
}, | |||||
handleView2(rows){ | |||||
this.checkId = rows.currentTarget.dataset.row.id; | |||||
this.yinnongTransfersIndexOpen = false; | |||||
this.tYinnongTransferDetaiList = []; | |||||
const baseURL = wx.getStorageSync('dressCode'); | |||||
//console.info(baseURL); | |||||
const id = rows.currentTarget.dataset.row.id || this.ids | |||||
if(rows.currentTarget.dataset.row.alternateField2 != null && rows.currentTarget.dataset.row.alternateField2 != "" && rows.currentTarget.dataset.row.alternateField2.indexOf('失败') == -1){ | |||||
this.receiptUrl = baseURL+rows.currentTarget.dataset.row.alternateField2; | |||||
this.recordopen = true; | |||||
if(rows.currentTarget.dataset.row.transferId != null){ | |||||
this.yinnongTransfersListOpen = true; | |||||
this.yinnongTransfersIndexApplyOpen = false; | |||||
this.tYinnongTransferDetaiList=[]; | |||||
queryTransferDetail(rows.currentTarget.dataset.row.transferId).then((res) => { | |||||
this.yinnongTransfersIndexOpen = true; | |||||
for (let i = 0 ; i < res.rows.length; i++){ | |||||
res.rows[i].transferStatus = this.transferStatusFormat(res.rows[i]) | |||||
this.tYinnongTransferDetaiList.push(res.rows[i]) | |||||
} | |||||
}); | |||||
}else{ | |||||
this.yinnongTransfersListOpen = false; | |||||
} | |||||
} else { | |||||
bankReceiptPhoto(rows.currentTarget.dataset.row.id).then((response) => { | |||||
//console.info(response); | |||||
if (response.code === 200) { | |||||
this.receiptUrl =baseURL+ response.msg; | |||||
this.recordopen = true; | |||||
this.getList(); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
handleView3(rows){ | |||||
const id = rows.currentTarget.dataset.row.id; | |||||
let dataRow = rows.currentTarget.dataset.row; | |||||
if(dataRow.alternateField2 != null && dataRow.alternateField2 != "" && dataRow.alternateField2.indexOf('失败') == -1){ | |||||
this.showfileFunction(dataRow.alternateField2); | |||||
} else{ | |||||
UTIL.httpRequest(API.getDianzihuidan + id , {method: 'GET'}, { | |||||
success: (response) => { | |||||
if(response.data.alternateField2 != null && response.data.alternateField2 != "" && response.data.alternateField2.indexOf('失败') ==-1){ | |||||
this.showfileFunction(response.data.alternateField2); | |||||
} else{ | |||||
UTIL.showToastNoneIcon(response.data.alternateField2); | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
handleView4(rows){ | |||||
let row = rows.currentTarget.dataset.row; | |||||
if(row.alternateField2 != null && row.alternateField2 != "" && row.alternateField2.indexOf('失败') == -1){ | |||||
this.showfileFunction(row.alternateField2); | |||||
} else { | |||||
UTIL.httpRequest(API.queryReceiptPhoto4 + row.id , {method: 'GET'}, { | |||||
success: (response) => { | |||||
this.setData({ | |||||
recordopen4: true | |||||
}) | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
handleView5(rows){ | |||||
let dataRow = rows.currentTarget.dataset.row; | |||||
if(dataRow.alternateField2 != null && dataRow.alternateField2 != "" && dataRow.alternateField2.indexOf('失败') == -1){ | |||||
this.showfileFunction(dataRow.alternateField2); | |||||
} else { | |||||
UTIL.httpRequest(API.queryReceiptPhoto5 + dataRow.id , {method: 'GET'}, { | |||||
success: (response) => { | |||||
if (response.code === 200) { | |||||
this.showfileFunction(response.msg); | |||||
}else{ | |||||
UTIL.showToastNoneIcon(response.msg); | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
handleView6(rows){ | |||||
let dataRow = rows.currentTarget.dataset.row; | |||||
if(dataRow.alternateField2 != null && dataRow.alternateField2 != "" && dataRow.alternateField2.indexOf('失败') == -1){ | |||||
const filenames = dataRow.alternateField2.split("|"); | |||||
if(filenames.length == 1){ | |||||
this.showfileFunction(filenames[0]); | |||||
}else{ | |||||
for (var i=0;i<filenames.length;i++){ | |||||
this.showfileFunction(filenames[i]); | |||||
} | |||||
} | |||||
} else { | |||||
UTIL.httpRequest(API.queryReceiptPhoto6 + dataRow.id , {method: 'GET'}, { | |||||
success: (response) => { | |||||
if (response.code === 200) { | |||||
const filenames = response.msg.split("|"); | |||||
if(filenames.length == 1){ | |||||
this.showfileFunction(filenames[0]); | |||||
}else{ | |||||
for (var i=0;i<filenames.length;i++){ | |||||
this.showfileFunction(filenames[i]); | |||||
} | |||||
} | |||||
}else{ | |||||
UTIL.showToastNoneIcon(response.msg); | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
handleView8(rows){ | |||||
let dataRow = rows.currentTarget.dataset.row; | |||||
if(dataRow.alternateField2 != null && dataRow.alternateField2 != "" && dataRow.alternateField2.indexOf('失败') == -1){ | |||||
const filenames = dataRow.alternateField2.split("|"); | |||||
if(filenames.length == 1){ | |||||
this.showfileFunction(filenames[0]); | |||||
}else{ | |||||
for (var i=0;i<filenames.length;i++){ | |||||
this.showfileFunction(filenames[i]); | |||||
} | |||||
} | |||||
} else { | |||||
UTIL.httpRequest(API.queryReceiptPhoto8 + dataRow.id , {method: 'GET'}, { | |||||
success: (response) => { | |||||
if (response.code === 200) { | |||||
const filenames = response.msg.split("|"); | |||||
if(filenames.length == 1){ | |||||
this.showfileFunction(filenames[0]); | |||||
}else{ | |||||
for (var i=0;i<filenames.length;i++){ | |||||
this.showfileFunction(filenames[i]); | |||||
} | |||||
} | |||||
}else{ | |||||
UTIL.showToastNoneIcon(response.msg); | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
handleView18(rows){ | |||||
let dataRow = rows.currentTarget.dataset.row; | |||||
if(dataRow.alternateField2 != null && dataRow.alternateField2 != "" && dataRow.alternateField2.indexOf('失败') == -1){ | |||||
this.showfileFunction(dataRow.alternateField2); | |||||
} else{ | |||||
UTIL.httpRequest(API.queryReceiptPhoto18 + dataRow.id , {method: 'GET'}, { | |||||
success: (response) => { | |||||
if (response.code === 200) { | |||||
if(response.data.alternateField2 != null && response.data.alternateField2 != "" && response.data.alternateField2.indexOf('失败') ==-1){ | |||||
this.showfileFunction(response.data.alternateField2); | |||||
} else{ | |||||
UTIL.showToastNoneIcon(response.msg); | |||||
} | |||||
}else{ | |||||
UTIL.showToastNoneIcon(response.msg); | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
/** 绑定手机号操作 */ | |||||
smsSubmitForm() { | |||||
this.formSms.method = 'GET'; | |||||
UTIL.httpRequest(API.bankReceiptPhoto4sms , this.formSms, { | |||||
success: (response) => { | |||||
if (response.code === 200) { | |||||
this.setData({ | |||||
recordopen4: false | |||||
}) | |||||
this.showfileFunction(response.msg); | |||||
}else{ | |||||
UTIL.showToastNoneIcon(response.msg); | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
showfileFunction(url){ | |||||
const baseURL = wx.getStorageSync('dressCode'); | |||||
if(url.indexOf('pdf') < 0){ | |||||
wx.previewImage({ | |||||
current: baseURL+ url, // 当前显示图片的http链接 | |||||
urls: [baseURL+ url] // 需要预览的图片http链接列表 | |||||
}) | |||||
}else{ | |||||
wx.downloadFile({ | |||||
// 示例 url,并非真实存在 | |||||
url: baseURL+url, | |||||
success: function (res) { | |||||
const filePath = res.tempFilePath; | |||||
wx.openDocument({ | |||||
filePath: filePath, | |||||
fileType: 'pdf', // 注意这里需要指定文件类型为'pdf' | |||||
success: function (res) { | |||||
console.log('打开文档成功'); | |||||
}, | |||||
fail: function (err) { | |||||
UTIL.showToastNoneIcon('打开文档失败'); | |||||
} | |||||
}); | |||||
}, | |||||
fail: function (err) { | |||||
UTIL.showToastNoneIcon('下载文件失败'); | |||||
} | |||||
}); | |||||
} | |||||
} | } | ||||
}) | }) |
@@ -4,7 +4,7 @@ | |||||
<text style="top:{{isIPX?'54px':'30px'}};">交易明细</text> | <text style="top:{{isIPX?'54px':'30px'}};">交易明细</text> | ||||
</view> | </view> | ||||
<view class="search_box" style="margin-top:{{isIPX?'88px':'64px'}};"> | |||||
<view class="search_box" id="top_view" style="margin-top:{{isIPX?'88px':'64px'}};"> | |||||
<van-search | <van-search | ||||
value="{{ value }}" | value="{{ value }}" | ||||
shape="round" | shape="round" | ||||
@@ -14,7 +14,7 @@ | |||||
bind:change="goSearch" | bind:change="goSearch" | ||||
/> | /> | ||||
</view> | </view> | ||||
<view class="top_view"> | |||||
<view class="top_view" id="top_view1"> | |||||
<van-dropdown-menu active-color="#5CAE77" bind:change="changeTab" id="top_view1" style="width: 82%;"> | <van-dropdown-menu active-color="#5CAE77" bind:change="changeTab" id="top_view1" style="width: 82%;"> | ||||
<van-dropdown-item value="{{ value1 }}" options="{{ option1 }}" bind:change="changeTab1" /> | <van-dropdown-item value="{{ value1 }}" options="{{ option1 }}" bind:change="changeTab1" /> | ||||
<van-dropdown-item value="{{ value2 }}" options="{{ option2 }}" bind:change="changeTab2" /> | <van-dropdown-item value="{{ value2 }}" options="{{ option2 }}" bind:change="changeTab2" /> | ||||
@@ -25,54 +25,118 @@ | |||||
<image src="/image/icon/icon_sx.png" style="width: 15px;height: 15px;margin-left: 5px;"></image> | <image src="/image/icon/icon_sx.png" style="width: 15px;height: 15px;margin-left: 5px;"></image> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<scroll-view scroll-y refresher-threshold="0" style="height:100%" bindscrolltolower="paging" lower-threshold="100"> | |||||
<scroll-view scroll-y refresher-threshold="0" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100" id="top_view2"> | |||||
<!-- wx:for="{{list}}" wx:key="index" wx:for-item="item" right-width="{{ 50 }}" --> | <!-- wx:for="{{list}}" wx:key="index" wx:for-item="item" right-width="{{ 50 }}" --> | ||||
<van-swipe-cell right-width="{{ 65 }}" class="workflow" wx:for="{{list}}" wx:key="index" > | |||||
<view class="li" data-id="{{item.approvalItemTemplateId}}" data-id="{{item.id}}" bindtap="toPayDetail" > | |||||
<view style="width:70%;flex:7;"> | |||||
<view class="tit_box"> | |||||
<van-swipe-cell right-width="{{ 65 }}" class="workflow" wx:for="{{list}}" wx:key="index" > | |||||
<view class="li" data-id="{{item.approvalItemTemplateId}}" data-id="{{item.id}}" bindtap="toPayDetail" > | |||||
<view style="width:70%;flex:7;"> | |||||
<view class="tit_box"> | |||||
<view> | |||||
<text class="tit">凭证编号{{item.vchnum}}</text> | |||||
<text class="tit">{{item.payerAccount}}</text> | |||||
</view> | |||||
<text class="tit_tab2 tit_sb">{{item.vchnum}}</text> | |||||
</view> | |||||
<view class="tit_box"> | |||||
<view style="background-color: #5CAE77;color: #fff;line-height: 1;padding: 5px;font-size: 12px;border-radius: 50%;margin-right: 5px;">我</view> | |||||
<view> | |||||
<text class="tit">{{actacnName}}</text> | |||||
</view> | |||||
<text class="tit_tab">{{item.directionText}}</text> | |||||
</view> | |||||
<view class="tit_box"> | |||||
<view style="background-color: #E90000;color: #fff;line-height: 1;padding: 5px;font-size: 12px;border-radius: 50%;margin-right: 5px;">对</view> | |||||
<text class="tit">{{item.payeeToname}}</text> | |||||
<text class="tit_tab3 hui">{{item.payeeActacn}}</text> | |||||
</view> | |||||
<view style="display: flex;align-items: center;margin-top: 10px;"> | |||||
<image src="/image/icon/clock_icon.png" style="width: 15px;height: 15px;border-radius:5px;margin-right: 5px;"></image> | |||||
<text style="color: #878787;line-height: 1;">{{item.txndate}}</text> | |||||
<text class="tit_tab3 {{item.direction == '1' && item.furinfo!='冲正' ? 'green' : 'red'}}">¥<text style="font-size: 1.5rem;display: inline-block;">{{item.direction == '1' ? '+' : item.furinfo!='冲正' ? '-':''}}{{item.txnamt}}</text></text> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view slot="right" class="cell_right"> | |||||
<!-- <view class="button_box"><view></view></view> --> | |||||
<!-- <view class="button_box" | |||||
data-url="{{item.alternateField2}}" | |||||
data-field1="{{item.alternateField1}}" | |||||
data-field4="{{item.alternateField4}}" | |||||
data-field9="{{item.alternateField9}}" | |||||
data-id="{{item.id}}" | |||||
bindtap="goHD" | |||||
> | |||||
<view> | |||||
<image src="/image/icon/icon_hd.png" style="width: 15px;height: 17px;"></image> | |||||
<text>回单</text> | |||||
</view> | |||||
</view> --> | |||||
<view class="button_box" data-row="{{item}}" bindtap="handleHuidan" wx:if="{{item.alternateField1=='2' && item.alternateField2 != null && item.alternateField2 != '' && item.alternateField2.indexOf('失败') == -1}}"> | |||||
<view> | |||||
<image src="/image/icon/icon_hd.png" style="width: 15px;height: 17px;"></image> | |||||
<text>重查回单列表</text> | |||||
</view> | |||||
</view> | |||||
<view class="button_box" data-row="{{item}}" bindtap="handleView1" wx:if="{{item.alternateField1=='1' && item.alternateField2!='' && item.alternateField2!=null}}"> | |||||
<view> | <view> | ||||
<text class="tit">凭证编号{{item.vchnum}}</text> | |||||
<text class="tit">{{item.payerAccount}}</text> | |||||
<image src="/image/icon/icon_hd.png" style="width: 15px;height: 17px;"></image> | |||||
<text>电子回单</text> | |||||
</view> | </view> | ||||
<text class="tit_tab2 tit_sb">{{item.vchnum}}</text> | |||||
</view> | </view> | ||||
<view class="tit_box"> | |||||
<view style="background-color: #5CAE77;color: #fff;line-height: 1;padding: 5px;font-size: 12px;border-radius: 50%;margin-right: 5px;">我</view> | |||||
<view class="button_box" data-row="{{item}}" bindtap="handleView2" wx:if="{{item.alternateField1=='2' && item.alternateField9!='' && item.alternateField9!=null}}"> | |||||
<view> | <view> | ||||
<text class="tit">{{actacnName}}</text> | |||||
<image src="/image/icon/icon_hd.png" style="width: 15px;height: 17px;"></image> | |||||
<text>电子回单</text> | |||||
</view> | </view> | ||||
<text class="tit_tab">{{item.directionText}}</text> | |||||
</view> | </view> | ||||
<view class="tit_box"> | |||||
<view style="background-color: #E90000;color: #fff;line-height: 1;padding: 5px;font-size: 12px;border-radius: 50%;margin-right: 5px;">对</view> | |||||
<text class="tit">{{item.payeeToname}}</text> | |||||
<text class="tit_tab3 hui">{{item.payeeActacn}}</text> | |||||
<view class="button_box" data-row="{{item}}" bindtap="handleView4" wx:if="{{item.alternateField1=='4' && item.alternateField5!='' && item.alternateField5!=null}}"> | |||||
<view> | |||||
<image src="/image/icon/icon_hd.png" style="width: 15px;height: 17px;"></image> | |||||
<text>电子回单</text> | |||||
</view> | |||||
</view> | </view> | ||||
<view style="display: flex;align-items: center;margin-top: 10px;"> | |||||
<image src="/image/icon/clock_icon.png" style="width: 15px;height: 15px;border-radius:5px;margin-right: 5px;"></image> | |||||
<text style="color: #878787;line-height: 1;">{{item.txndate}}</text> | |||||
<text class="tit_tab3 {{item.direction == '1' && item.furinfo!='冲正' ? 'green' : 'red'}}">¥<text style="font-size: 1.5rem;display: inline-block;">{{item.direction == '1' ? '+' : item.furinfo!='冲正' ? '-':''}}{{item.txnamt}}</text></text> | |||||
<view class="button_box" data-row="{{item}}" bindtap="handleView3" wx:if="{{item.alternateField1=='3'}}"> | |||||
<view> | |||||
<image src="/image/icon/icon_hd.png" style="width: 15px;height: 17px;"></image> | |||||
<text>电子回单</text> | |||||
</view> | |||||
</view> | </view> | ||||
</view> | |||||
</view> | |||||
<view slot="right" class="cell_right"> | |||||
<!-- <view class="button_box"><view></view></view> --> | |||||
<view class="button_box" | |||||
data-url="{{item.alternateField2}}" | |||||
data-field1="{{item.alternateField1}}" | |||||
data-field4="{{item.alternateField4}}" | |||||
data-field9="{{item.alternateField9}}" | |||||
data-id="{{item.id}}" | |||||
bindtap="goHD" | |||||
> | |||||
<view> | |||||
<image src="/image/icon/icon_hd.png" style="width: 15px;height: 17px;"></image> | |||||
<text>回单</text> | |||||
<view class="button_box" data-row="{{item}}" bindtap="handleView5" wx:if="{{item.alternateField1=='5' && item.alternateField4!='' && item.alternateField4!=null}}"> | |||||
<view> | |||||
<image src="/image/icon/icon_hd.png" style="width: 15px;height: 17px;"></image> | |||||
<text>电子回单</text> | |||||
</view> | |||||
</view> | </view> | ||||
<view class="button_box" data-row="{{item}}" bindtap="handleView6" wx:if="{{item.alternateField1=='6'}}"> | |||||
<view> | |||||
<image src="/image/icon/icon_hd.png" style="width: 15px;height: 17px;"></image> | |||||
<text>电子回单</text> | |||||
</view> | |||||
</view> | |||||
<view class="button_box" data-row="{{item}}" bindtap="handleView8" wx:if="{{item.alternateField1=='8'}}"> | |||||
<view> | |||||
<image src="/image/icon/icon_hd.png" style="width: 15px;height: 17px;"></image> | |||||
<text>电子回单</text> | |||||
</view> | |||||
</view> | |||||
<view class="button_box" data-row="{{item}}" bindtap="handleView18" wx:if="{{item.alternateField1=='18'}}"> | |||||
<view> | |||||
<image src="/image/icon/icon_hd.png" style="width: 15px;height: 17px;"></image> | |||||
<text>电子回单</text> | |||||
</view> | |||||
</view> | |||||
</view> | </view> | ||||
</view> | |||||
</van-swipe-cell> | |||||
</van-swipe-cell> | |||||
</scroll-view> | </scroll-view> | ||||
<van-popup | <van-popup | ||||
@@ -157,6 +221,21 @@ | |||||
<input class="input_tit" placeholder="请输入人工对账备注" style="width: 90%;margin: 0 auto;margin-top: 25px;margin-bottom: 10px;text-align: center;border: 1px solid #ddd;height: 35px;line-height: 35px;" value="{{manualRemark}}" bindinput="bindNameInput"/> | <input class="input_tit" placeholder="请输入人工对账备注" style="width: 90%;margin: 0 auto;margin-top: 25px;margin-bottom: 10px;text-align: center;border: 1px solid #ddd;height: 35px;line-height: 35px;" value="{{manualRemark}}" bindinput="bindNameInput"/> | ||||
</van-dialog> | </van-dialog> | ||||
<van-dialog | |||||
use-slot | |||||
title="回单短信" | |||||
show="{{ recordopen4 }}" | |||||
bind:close="onClose" | |||||
theme='round-button' | |||||
confirmButtonText="确定" | |||||
bind:confirm="smsSubmitForm" | |||||
before-close="{{ beforeClose }}" | |||||
closeOnClickOverlay="{{ true }}" | |||||
> | |||||
<input class="input_tit" placeholder="请输入短信验证码" style="width: 90%;margin: 0 auto;margin-top: 25px;margin-bottom: 10px;text-align: center;border: 1px solid #ddd;height: 35px;line-height: 35px;" value="{{formSms.alternateField2}}" bindinput="bindNameInput"/> | |||||
</van-dialog> | |||||
<wxs module="iOf"> | <wxs module="iOf"> | ||||
var indexOf = function(name,value){ | var indexOf = function(name,value){ | ||||
return name.indexOf(value); | return name.indexOf(value); | ||||
@@ -64,8 +64,8 @@ Page({ | |||||
wx.setStorageSync('sessionKey', res.data.sessionKey); | wx.setStorageSync('sessionKey', res.data.sessionKey); | ||||
getApp().globalData.userInfo.token = res.token; | getApp().globalData.userInfo.token = res.token; | ||||
}else{ | }else{ | ||||
wx.setstorageSync('openId', res.data.openId); | |||||
wx.setStorageSync('sessionKey', res.data.sessionkey); | |||||
wx.setStorageSync('openId', res.data.openId); | |||||
wx.setStorageSync('sessionKey', res.data.sessionKey); | |||||
this.setData({showPhoneBtn:true}) | this.setData({showPhoneBtn:true}) | ||||
} | } | ||||
} else { | } else { | ||||
@@ -155,7 +155,7 @@ Page({ | |||||
} | } | ||||
//console.log(detail) | //console.log(detail) | ||||
let sendData = { | let sendData = { | ||||
sessionKey:STORAGE.getSessionKey(), | |||||
sessionKey:wx.getStorageSync('sessionKey'), | |||||
iv:detail.iv, | iv:detail.iv, | ||||
encryptedData:detail.encryptedData | encryptedData:detail.encryptedData | ||||
} | } | ||||
@@ -35,10 +35,10 @@ Page({ | |||||
}, | }, | ||||
goChangeUrl(e){ | goChangeUrl(e){ | ||||
// https://192.168.0.112:8080/api e.currentTarget.dataset.url | // https://192.168.0.112:8080/api e.currentTarget.dataset.url | ||||
const url = e.currentTarget.dataset.url; | |||||
const url = e.currentTarget.dataset.url; //e.currentTarget.dataset.url; | |||||
const name = e.currentTarget.dataset.name; | const name = e.currentTarget.dataset.name; | ||||
const parentname = e.currentTarget.dataset.parentname; | const parentname = e.currentTarget.dataset.parentname; | ||||
wx.setStorageSync('dressCode', url); | |||||
wx.setStorageSync('dressCode', url);//'http://116.255.223.226:8082/nsgk_test' | |||||
wx.setStorageSync('dressName', parentname+'-'+name); | wx.setStorageSync('dressName', parentname+'-'+name); | ||||
getApp().globalData.APIURL = url | getApp().globalData.APIURL = url | ||||
wx.reLaunch({ | wx.reLaunch({ | ||||
@@ -1,14 +1,5 @@ | |||||
{ | { | ||||
"description": "项目配置文件,详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", | "description": "项目配置文件,详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", | ||||
"packOptions": { | |||||
"ignore": [ | |||||
{ | |||||
"value": ".eslintrc.js", | |||||
"type": "file" | |||||
} | |||||
], | |||||
"include": [] | |||||
}, | |||||
"setting": { | "setting": { | ||||
"urlCheck": false, | "urlCheck": false, | ||||
"es6": true, | "es6": true, | ||||
@@ -29,8 +20,6 @@ | |||||
"compileHotReLoad": false, | "compileHotReLoad": false, | ||||
"lazyloadPlaceholderEnable": false, | "lazyloadPlaceholderEnable": false, | ||||
"useMultiFrameRuntime": true, | "useMultiFrameRuntime": true, | ||||
"useApiHook": true, | |||||
"useApiHostProcess": true, | |||||
"babelSetting": { | "babelSetting": { | ||||
"ignore": [], | "ignore": [], | ||||
"disablePlugins": [], | "disablePlugins": [], | ||||
@@ -54,7 +43,15 @@ | |||||
"tabSize": 2 | "tabSize": 2 | ||||
}, | }, | ||||
"condition": {}, | "condition": {}, | ||||
"appid": "wx42bfbc1eab7aacce", | |||||
"compileType": "miniprogram", | "compileType": "miniprogram", | ||||
"libVersion": "2.23.2" | |||||
"packOptions": { | |||||
"ignore": [ | |||||
{ | |||||
"value": ".eslintrc.js", | |||||
"type": "file" | |||||
} | |||||
], | |||||
"include": [] | |||||
}, | |||||
"appid": "wx42bfbc1eab7aacce" | |||||
} | } |
@@ -1,10 +1,24 @@ | |||||
{ | { | ||||
"setting": { | "setting": { | ||||
"compileHotReLoad": false | |||||
"compileHotReLoad": true | |||||
}, | }, | ||||
"condition": { | "condition": { | ||||
"miniprogram": { | "miniprogram": { | ||||
"list": [ | "list": [ | ||||
{ | |||||
"name": "pages/finance/list_balance_ranking/list_balance_ranking", | |||||
"pathName": "pages/finance/list_balance_ranking/list_balance_ranking", | |||||
"query": "", | |||||
"launchMode": "default", | |||||
"scene": null | |||||
}, | |||||
{ | |||||
"name": "pages/finance/list_balance_ranking/list_balance_ranking", | |||||
"pathName": "pages/finance/list_balance_ranking/list_balance_ranking", | |||||
"query": "", | |||||
"launchMode": "default", | |||||
"scene": null | |||||
}, | |||||
{ | { | ||||
"name": "pages/user/login/login", | "name": "pages/user/login/login", | ||||
"pathName": "pages/user/login/login", | "pathName": "pages/user/login/login", | ||||
@@ -226,5 +240,5 @@ | |||||
}, | }, | ||||
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", | "description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", | ||||
"projectname": "nsgk_yebz", | "projectname": "nsgk_yebz", | ||||
"libVersion": "2.25.0" | |||||
"libVersion": "3.7.11" | |||||
} | } |
@@ -28,6 +28,10 @@ const URL_POST_USERBAND = `/wechat/phoneLogin`; | |||||
const URL_GET_GETINFO = `/getInfo`; | const URL_GET_GETINFO = `/getInfo`; | ||||
//获取待办 | //获取待办 | ||||
const URL_GET_TASKLIST = `/activiti/process/taskList`; | const URL_GET_TASKLIST = `/activiti/process/taskList`; | ||||
//获取待办 | |||||
const A_myTodoList = `/approval/audit/todoList`; | |||||
//获取已办 | |||||
const A_myDoneList = `/approval/audit/doneList`; | |||||
//获取已办 | //获取已办 | ||||
const URL_GET_TASKDONELIST = `/activiti/process/taskDoneList`; | const URL_GET_TASKDONELIST = `/activiti/process/taskDoneList`; | ||||
//获取已发起、已制单 | //获取已发起、已制单 | ||||
@@ -137,6 +141,8 @@ const URL_GET_UPDATETYINNONGTRANSFERFOSTATUS = `/yinnong/transfer/updateTYinnong | |||||
//查询审批事项流转进度 | //查询审批事项流转进度 | ||||
const URL_GET_GETPROCESS = `/yinnong/transfer/getProcessSchedule/`; | const URL_GET_GETPROCESS = `/yinnong/transfer/getProcessSchedule/`; | ||||
//查询审批事项流转进度(新-2024-7-16) | |||||
const URL_GET_GETPROCESSNEW = `/yinnong/transfer/getProcessScheduleInfoNew/`; | |||||
//查询审批事项流转进度 | //查询审批事项流转进度 | ||||
const URL_GET_GETPROCESSHISTORY = `/activiti/process/listHistory/`; | const URL_GET_GETPROCESSHISTORY = `/activiti/process/listHistory/`; | ||||
@@ -147,6 +153,9 @@ const URL_GET_GETYRANSFERPROCESS = `/yinnong/transfer/getProcessSchedule/`; | |||||
//审批流办理 | //审批流办理 | ||||
const URL_GET_PROCESSCOMPLETE = `/activiti/process/mobileComplete`; | const URL_GET_PROCESSCOMPLETE = `/activiti/process/mobileComplete`; | ||||
//审批流办理(新) | |||||
const A_audit = `/approval/audit/audit`; | |||||
//复核 | //复核 | ||||
const URL_GET_TOREVIEWSUBMIT = `/yinnong/approvalItems/toReviewSubmit/`; | const URL_GET_TOREVIEWSUBMIT = `/yinnong/approvalItems/toReviewSubmit/`; | ||||
@@ -380,7 +389,7 @@ const URL_GET_TRANSFERINFOS= `/yinnong/transferDetail/getDetails/`; | |||||
const URL_GET_SENDMSG= `/yinnong/transfer/sendSms/`; | const URL_GET_SENDMSG= `/yinnong/transfer/sendSms/`; | ||||
//支付 | //支付 | ||||
const URL_GET_PAY= `/yinnong/transfer/pay/`; | |||||
const URL_GET_PAY= `/yinnong/transfer/pay`; | |||||
//重大事项列表 | //重大事项列表 | ||||
const URL_GET_MAJOREVENTLIST= `/yinnong/majorevent/list/`; | const URL_GET_MAJOREVENTLIST= `/yinnong/majorevent/list/`; | ||||
@@ -394,6 +403,9 @@ const URL_POST_MAJOREVENTADD= `/yinnong/majorevent/add/`; | |||||
//重大事项修改 | //重大事项修改 | ||||
const URL_POST_MAJOREVENTUPDATE= `/yinnong/majorevent/edit/`; | const URL_POST_MAJOREVENTUPDATE= `/yinnong/majorevent/edit/`; | ||||
//重大事项查询审批模板列表 | |||||
// const URL_POST_MAJOREVENTUPDATE= `/yinnong/majorevent/edit/`; | |||||
//重大事项删除 | //重大事项删除 | ||||
const URL_GET_MAJOREVENTDELETE= `/yinnong/majorevent/remove/`; | const URL_GET_MAJOREVENTDELETE= `/yinnong/majorevent/remove/`; | ||||
@@ -475,6 +487,33 @@ const URL_GET_GETDIANZIHUIDAN2= `/yinnong/receipt/queryReceiptPhoto5/`; | |||||
//交易明细回单3 | //交易明细回单3 | ||||
const URL_GET_GETDIANZIHUIDAN3= `/yinnong/receipt/queryReceiptPhoto/`; | const URL_GET_GETDIANZIHUIDAN3= `/yinnong/receipt/queryReceiptPhoto/`; | ||||
//回单1 | |||||
const transactionDetailsQuery2OnlyQuery= `/yinnong/receipt/transactionDetailsQuery2OnlyQuery`; | |||||
//回单2 | |||||
const queryReceiptPhoto= `/yinnong/receipt/queryReceiptPhoto/`; | |||||
//回单3 | |||||
const getDianzihuidan= `/yinnong/recordDetail/getDianzihuidan/`; | |||||
//回单4 | |||||
const queryReceiptPhoto4= `/yinnong/receipt/queryReceiptPhoto4/`; | |||||
//回单5 | |||||
const queryReceiptPhoto5= `/yinnong/receipt/queryReceiptPhoto5/`; | |||||
//回单6 | |||||
const queryReceiptPhoto6= `/yinnong/receipt/queryReceiptPhoto6/`; | |||||
//回单8 | |||||
const queryReceiptPhoto8= `/yinnong/receipt/queryReceiptPhoto8/`; | |||||
//回单18 | |||||
const queryReceiptPhoto18= `/yinnong/receipt/queryReceiptPhoto18/`; | |||||
//验证验证码 | |||||
const bankReceiptPhoto4sms= `/yinnong/receipt/bankReceiptPhoto4sms`; | |||||
//代管账户列表查询 | //代管账户列表查询 | ||||
const URL_GET_GETTACCOUNTLIST= `/yinnong/taccount/list`; | const URL_GET_GETTACCOUNTLIST= `/yinnong/taccount/list`; | ||||
@@ -573,6 +612,7 @@ const URL_GET_TRANSFERADD = `/yinnong/transfer/add`; | |||||
//提交审批 | //提交审批 | ||||
const URL_GET_TRANSFERCUSTOMSUBMIT = `/yinnong/transfer/customSubmit/`; | const URL_GET_TRANSFERCUSTOMSUBMIT = `/yinnong/transfer/customSubmit/`; | ||||
const URL_GET_TRANSFERCUSTOMSUBMIT2 = `/yinnong/transfer/offlineCustomSubmit/`; | |||||
//修改银行转账 | //修改银行转账 | ||||
const URL_GET_TRANSFEREDIT = `/yinnong/transfer/edit`; | const URL_GET_TRANSFEREDIT = `/yinnong/transfer/edit`; | ||||
@@ -583,6 +623,31 @@ const URL_GET_GETCODE = `/gkyzm`; | |||||
//账号密码登录 | //账号密码登录 | ||||
const URL_GET_LOGIN = `/login`; | const URL_GET_LOGIN = `/login`; | ||||
// | |||||
const getLoginBook = `/finance/book/getLoginBook`; | |||||
// 查询科目余额表 可分页 需授权 | |||||
const trailBalanceList = `/finance/balance/list`; | |||||
//查询资产负债表(公式报表模板) | |||||
const assetLiabilityReportByExpTpl = `/finance/report/assetLiabilityReportByExpTpl`; | |||||
//查询收支公开榜 | |||||
const financialIncomeExpenditurePublic = `/finance/open/financialIncomeExpenditurePublic`; | |||||
//公式科目模板分类列表 | |||||
const expressionReportByCategory = `/finance/expressionReport/category/`; | |||||
//公式科目模板分类列表 | |||||
const reapply = `/yinnong/transfer/reapply/`; | |||||
//查询主体基本信息列表 | |||||
const URL_GET_ENTITYLIST = `/entity/entity/list`; | |||||
//查询主体基本信息列表 | |||||
const URL_GET_ENTITYDETAIL = `/entity/entity/get/`; | |||||
@@ -606,6 +671,8 @@ export { | |||||
URL_POST_USERBAND, | URL_POST_USERBAND, | ||||
URL_GET_GETINFO, | URL_GET_GETINFO, | ||||
URL_GET_TASKLIST, | URL_GET_TASKLIST, | ||||
A_myTodoList, | |||||
A_myDoneList, | |||||
URL_GET_TASKDONELIST, | URL_GET_TASKDONELIST, | ||||
URL_GET_TRANSFERLIST, | URL_GET_TRANSFERLIST, | ||||
URL_POST_UPDATEPWD, | URL_POST_UPDATEPWD, | ||||
@@ -642,8 +709,10 @@ export { | |||||
URL_GET_USERAPPRO, | URL_GET_USERAPPRO, | ||||
URL_GET_FINDLIST, | URL_GET_FINDLIST, | ||||
URL_GET_APPROVALITEMS, | URL_GET_APPROVALITEMS, | ||||
A_audit, | |||||
URL_GET_REMOVEAPPROVAL, | URL_GET_REMOVEAPPROVAL, | ||||
URL_GET_GETPROCESS, | URL_GET_GETPROCESS, | ||||
URL_GET_GETPROCESSNEW, | |||||
URL_GET_PROCESSCOMPLETE, | URL_GET_PROCESSCOMPLETE, | ||||
URL_GET_TOREVIEWSUBMIT, | URL_GET_TOREVIEWSUBMIT, | ||||
URL_GET_REVIEWPROCESS, | URL_GET_REVIEWPROCESS, | ||||
@@ -790,11 +859,29 @@ export { | |||||
URL_GET_TRANSFERREMOVE, | URL_GET_TRANSFERREMOVE, | ||||
URL_GET_TRANSFERADD, | URL_GET_TRANSFERADD, | ||||
URL_GET_TRANSFERCUSTOMSUBMIT, | URL_GET_TRANSFERCUSTOMSUBMIT, | ||||
URL_GET_TRANSFERCUSTOMSUBMIT2, | |||||
URL_GET_PAYEESELECTLISTNEW, | URL_GET_PAYEESELECTLISTNEW, | ||||
URL_GET_TRANSFEREDIT, | URL_GET_TRANSFEREDIT, | ||||
URL_GET_REMOVETRANFERL, | URL_GET_REMOVETRANFERL, | ||||
URL_GET_selectApprovalByTemplateId, | URL_GET_selectApprovalByTemplateId, | ||||
URL_GET_UPDATETYINNONGTRANSFERFOSTATUS, | URL_GET_UPDATETYINNONGTRANSFERFOSTATUS, | ||||
URL_GET_GETCODE, | URL_GET_GETCODE, | ||||
URL_GET_LOGIN | |||||
URL_GET_LOGIN, | |||||
getLoginBook, | |||||
trailBalanceList, | |||||
assetLiabilityReportByExpTpl, | |||||
financialIncomeExpenditurePublic, | |||||
expressionReportByCategory, | |||||
transactionDetailsQuery2OnlyQuery, | |||||
queryReceiptPhoto, | |||||
getDianzihuidan, | |||||
queryReceiptPhoto4, | |||||
queryReceiptPhoto5, | |||||
queryReceiptPhoto6, | |||||
queryReceiptPhoto8, | |||||
queryReceiptPhoto18, | |||||
bankReceiptPhoto4sms, | |||||
reapply, | |||||
URL_GET_ENTITYLIST, | |||||
URL_GET_ENTITYDETAIL | |||||
} | } |
@@ -473,7 +473,7 @@ const hideLoadings = () => { | |||||
} | } | ||||
const hideLoadingWithErrorTips = (err = '加载失败...') => { | const hideLoadingWithErrorTips = (err = '加载失败...') => { | ||||
hideLoading() | |||||
wx.hideLoading() | |||||
wx.showToast({ | wx.showToast({ | ||||
title: err, | title: err, | ||||
icon: 'error', | icon: 'error', | ||||