From 46d29ae6b66bacd0ff39e7080c101a5557b6d04d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=94=90=E6=98=8E=E6=98=8E?= <970899069@qq.com> Date: Fri, 15 Dec 2023 10:14:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=B4=A6=E6=88=B7=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E5=92=8C=E5=A7=94=E6=89=98=E7=AE=A1=E7=90=86=E6=A8=A1?= =?UTF-8?q?=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App.vue | 1 + apis/index.js | 2 +- apis/interfaces/index.js | 74 ++++++++ apis/interfaces/pay.js | 12 +- apis/interfaces/uploading.js | 3 + manifest.json | 4 +- pages.json | 33 ++++ pages/index/index.vue | 72 ++++++- pages/management/account.vue | 141 ++++++++++++++ pages/management/delegation.vue | 141 ++++++++++++++ pages/offline/orders.vue | 1 - pages/pay/pay.vue | 67 ++++++- pages/work/account.vue | 319 ++++++++++++++++++++++++++++++++ pages/work/delegation.vue | 312 +++++++++++++++++++++++++++++++ pages/work/index.vue | 24 ++- static/icons/pay_bank.png | Bin 0 -> 5385 bytes static/icons/work_icon_29.png | Bin 0 -> 5041 bytes static/icons/work_icon_30.png | Bin 0 -> 3551 bytes 18 files changed, 1188 insertions(+), 18 deletions(-) create mode 100644 pages/management/account.vue create mode 100644 pages/management/delegation.vue create mode 100644 pages/work/account.vue create mode 100644 pages/work/delegation.vue create mode 100644 static/icons/pay_bank.png create mode 100644 static/icons/work_icon_29.png create mode 100644 static/icons/work_icon_30.png diff --git a/App.vue b/App.vue index bab82ac..ad1862a 100644 --- a/App.vue +++ b/App.vue @@ -2,6 +2,7 @@ import { getVersions } from './apis/interfaces/versions' export default { onLaunch: function() { + return //#ifdef APP-PLUS // 获取系统版本号 getVersions({ diff --git a/apis/index.js b/apis/index.js index bc86f66..cee64b3 100644 --- a/apis/index.js +++ b/apis/index.js @@ -11,7 +11,7 @@ import router from '../router' // 基础配置 const config = { // apiUrl : 'https://douhuo.douhuofalv.com/api/', - apiUrl : 'https://api.douhuotest.douhuofalv.com/api/', //测试环境 + apiUrl : 'https://douhuo.demos.uzchain.tech/api/', //测试环境 timeout : 60000 } diff --git a/apis/interfaces/index.js b/apis/interfaces/index.js index 76224e3..3f3695e 100644 --- a/apis/interfaces/index.js +++ b/apis/interfaces/index.js @@ -54,6 +54,72 @@ const fwbDetail = (service) =>{ }) } +// 账户管理类 +const accountManagement = () => { + return request({ + url: "account_management/index" + }) +} + +// 账户管理类 - 办理 +const accountFrom = (data, id) => { + return request({ + url : "account_management/" + id + "/store", + method : "POST", + data + }) +} + +// 账户管理类 - 订单 +const accountOrder = data => { + console.log(data) + return request({ + url : "account_management/order/lists", + data + }) +} + +// 账户管理类 - 取消订单 +const accountCancel = id => { + return request({ + url : "account_management/order/" + id + "/cancel", + method : "DELETE" + }) +} + +// 委托管理类 +const delegation = () => { + return request({ + url: "delegation/index" + }) +} + +// 委托管理类 - 办理 +const delegationFrom = (data, id) => { + return request({ + url : "delegation/" + id + "/store", + method : "POST", + data + }) +} + +// 委托管理类 - 订单 +const delegationOrder = data => { + return request({ + url : "delegation/order/lists", + method : "POST", + data + }) +} + +// 委托管理类 - 取消订单 +const delegationCancel = id => { + return request({ + url : "delegation/order/" + id + "/cancel", + method : "DELETE" + }) +} + export { categories, jf, @@ -62,5 +128,13 @@ export { index, recharge, zyPay, + accountManagement, + accountFrom, + accountOrder, + accountCancel, + delegation, + delegationFrom, + delegationOrder, + delegationCancel } diff --git a/apis/interfaces/pay.js b/apis/interfaces/pay.js index ac79a0d..108fcf2 100644 --- a/apis/interfaces/pay.js +++ b/apis/interfaces/pay.js @@ -114,6 +114,15 @@ const coinSynthesize = data => { }) } +// 现在打款支付 +const cashierOffline = data => { + return request({ + url : 'pay/cashier_desk/offline', + data, + method: 'POST' + }) +} + export { coinPay, diffCoinPay, @@ -127,5 +136,6 @@ export { dgFree, umsSynthesize, dgSynthesize, - coinSynthesize + coinSynthesize, + cashierOffline } \ No newline at end of file diff --git a/apis/interfaces/uploading.js b/apis/interfaces/uploading.js index 8d2a528..8136c5c 100644 --- a/apis/interfaces/uploading.js +++ b/apis/interfaces/uploading.js @@ -9,6 +9,9 @@ import { uploading as upd } from '../index' const uploads = (paths, fromData) => { + + console.log(paths) + return upd(paths, fromData) } diff --git a/manifest.json b/manifest.json index c84af97..5a15ead 100644 --- a/manifest.json +++ b/manifest.json @@ -2,8 +2,8 @@ "name" : "抖火法律", "appid" : "__UNI__C305C03", "description" : "纵有疾风起,人生不言弃", - "versionName" : "1.6.2", - "versionCode" : 1062, + "versionName" : "1.6.4", + "versionCode" : 1064, "transformPx" : false, /* 5+App特有相关 */ "app-plus" : { diff --git a/pages.json b/pages.json index 19de60f..d1c42a1 100644 --- a/pages.json +++ b/pages.json @@ -881,6 +881,39 @@ "navigationBarBackgroundColor": "#446EFE", "navigationBarTextStyle": "white" } + }, + { + "path" : "pages/management/account", + "name" : "MagAccount", + "style" : { + "navigationBarTitleText" : "账户咨询办理", + "enablePullDownRefresh" : false + } + }, + { + "path" : "pages/management/delegation", + "name" : "MagDelegation", + "style" : { + "navigationBarTitleText" : "委托管理办理", + "enablePullDownRefresh" : false + } + }, + { + "path" : "pages/work/account", + "name" : "AccountWork", + "style" : { + "navigationBarTitleText" : "账户管理咨询类", + "enablePullDownRefresh" : false, + "navigationBarBackgroundColor": "#FFFFFF" + } + },{ + "path" : "pages/work/delegation", + "name" : "DelegationWork", + "style" : { + "navigationBarTitleText" : "委托管理类", + "enablePullDownRefresh" : false, + "navigationBarBackgroundColor": "#FFFFFF" + } }], "globalStyle": { "navigationBarTextStyle": "black", diff --git a/pages/index/index.vue b/pages/index/index.vue index 4c7255e..126ca06 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -38,7 +38,7 @@ - + 协商调解咨询类 @@ -66,6 +66,50 @@ + + + + 账户管理咨询类 + + + + + + {{item.title}} + {{item.price}} /{{item.limit}} + + + + + + + + 委托管理类 + + + + + + {{item.title}} + {{item.price}} /{{item.limit}} + + + + @@ -157,7 +201,7 @@ + + diff --git a/pages/management/delegation.vue b/pages/management/delegation.vue new file mode 100644 index 0000000..db48601 --- /dev/null +++ b/pages/management/delegation.vue @@ -0,0 +1,141 @@ + + + + + diff --git a/pages/offline/orders.vue b/pages/offline/orders.vue index 7c883cb..bd4033d 100644 --- a/pages/offline/orders.vue +++ b/pages/offline/orders.vue @@ -65,7 +65,6 @@ 匹配服务包 - 查看订单 diff --git a/pages/pay/pay.vue b/pages/pay/pay.vue index b9185a7..9fce673 100644 --- a/pages/pay/pay.vue +++ b/pages/pay/pay.vue @@ -4,9 +4,9 @@ 实付金额 {{total}} - - 火力值:{{totalFire}} - 当前火力值比例1:{{rate}} + + 最大可抵扣:{{totalFire}} + 订单号:{{orderNo}} @@ -56,9 +56,16 @@ + - + 使用火力值抵扣 @@ -101,9 +108,13 @@ - + + + + + @@ -124,8 +135,10 @@ umsSynthesize, dgSynthesize, coinSynthesize, - } from '@/apis/interfaces/pay.js' + cashierOffline + } from '@/apis/interfaces/pay.js' import mixin from 'uview-ui/libs/mixin/mixin'; + import { uploads } from '@/apis/interfaces/uploading.js' export default { data() { return { @@ -186,6 +199,8 @@ let order_type = this.$Route.query.orderType.replace(/\-/g, '\\') oderinfo( this.$Route.query.orderId, order_type).then(res => { let { order_no, price, score, order_id, rate, total_fire, can_use_channel } = res + + this.rate = rate this.totalFire = total_fire this.orderType = order_type @@ -259,7 +274,7 @@ clearInterval(outTime) wx.showModal({ title : '提示', - content : this.$Route.query.paytype === 'synthesize' ? '支付成功,可在工作台综法订单管理查询您的订单' : '支付成功', + content : this.$Route.query.paytype === 'synthesize' ? '支付成功,可在工作台查询您的订单' : '支付成功', showCancel : false, confirmColor: '#446EFE', success : () => { @@ -355,8 +370,46 @@ if(this.payType == 'free') this.onDgFreePay('app_alipay', false) if(this.payType == 'synthesize') this.onFreeToast('onDgSynthesizePay', 'app_alipay', false) break + case 'offline': + console.log('线下打款') + break } }, + // 上传打款凭证 + onOffline(){ + uni.chooseImage({ + count: 1, + success: path => { + let { tempFiles } = path; + uploads([{ + name: 'file' + tempFiles[0].size, + uri : tempFiles[0].path + }], {}).then(updRes => { + let { path } = updRes + cashierOffline({ + image : path[0], + order_type : this.orderType, + order_id : this.orderId, + }).then(res => { + uni.showModal({ + title : '上传成功', + content : '请耐心等待打款审核', + showCancel : false, + success : () => { + uni.navigateBack() + } + }) + }) + uni.hideLoading() + }).catch(err => { + uni.showToast({ + title: err.message, + icon : 'none' + }) + }) + } + }) + }, // 火力值 - 综法 onCoinSynthesizePay(){ coinSynthesize({ diff --git a/pages/work/account.vue b/pages/work/account.vue new file mode 100644 index 0000000..57b8d1a --- /dev/null +++ b/pages/work/account.vue @@ -0,0 +1,319 @@ + + + + + diff --git a/pages/work/delegation.vue b/pages/work/delegation.vue new file mode 100644 index 0000000..aa146b4 --- /dev/null +++ b/pages/work/delegation.vue @@ -0,0 +1,312 @@ + + + + + diff --git a/pages/work/index.vue b/pages/work/index.vue index e122520..c2b929c 100644 --- a/pages/work/index.vue +++ b/pages/work/index.vue @@ -64,7 +64,7 @@ - + @@ -74,6 +74,24 @@ 去查看 + + + + + 账户管理咨询类 + 客户账户管理咨询类订单 + + 去查看 + + + + + 委托管理类 + 客户委托管理类订单 + + 去查看 + + @@ -99,7 +117,7 @@ 去查看 - + @@ -542,7 +560,7 @@ display: flex; box-sizing: border-box; position: relative; - .flex-icon{ width: 48px; height: 48px; background: #dce1fb; border-radius: 30rpx; } + .flex-icon{ width: 48px; height: 48px; border-radius: 30rpx; } .flex-title{ box-sizing: border-box; padding-left: 30rpx; diff --git a/static/icons/pay_bank.png b/static/icons/pay_bank.png new file mode 100644 index 0000000000000000000000000000000000000000..b94dc4354fdea873e55a00eaaab6adb342d637a6 GIT binary patch literal 5385 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 S3wFzYRyx_alB#WjQvMIc3e*q) literal 0 HcmV?d00001 diff --git a/static/icons/work_icon_29.png b/static/icons/work_icon_29.png new file mode 100644 index 0000000000000000000000000000000000000000..47d06162fc4e404cc8da7d57b432352f6a950a6e GIT binary patch literal 5041 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 literal 0 HcmV?d00001 diff --git a/static/icons/work_icon_30.png b/static/icons/work_icon_30.png new file mode 100644 index 0000000000000000000000000000000000000000..4ee591f52f96ddaa1475f3b869b6a22ae7ef2835 GIT binary patch literal 3551 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