diff --git a/apis/interfaces/synthesisOrder.js b/apis/interfaces/synthesisOrder.js index c6ee5d1..3bcd878 100644 --- a/apis/interfaces/synthesisOrder.js +++ b/apis/interfaces/synthesisOrder.js @@ -80,6 +80,45 @@ const oderinfo = (order_id, order_type) => { }) } +// 创建补差价订单 +const orderDiff = (order_type, order_id, price) => { + return request({ + url : 'synthesis/diff_prices/create', + data : { + order_type, + order_id, + price + }, + method : 'POST' + }) +} + +// 补差价列表 +const orderDiffList = (order_id, order_type) => { + return request({ + url : 'synthesis/diff_prices', + data : { + order_type, + order_id, + } + }) +} + +// 取消补差价 +const orderDiffCancel = (diff_price_id) => { + return request({ + url : 'synthesis/diff_prices/' + diff_price_id, + method : 'DELETE' + }) +} + +// 补差价详情 +const orderDiffInfo = (diff_price_id) => { + return request({ + url : 'synthesis/diff_prices/' + diff_price_id, + }) +} + export { servicesOrder, synthesisOrder, @@ -89,5 +128,9 @@ export { synthesisInfo, entrustInfo, expandInfo, - oderinfo + oderinfo, + orderDiff, + orderDiffList, + orderDiffCancel, + orderDiffInfo } diff --git a/apis/interfaces/work.js b/apis/interfaces/work.js index a101599..3e7e84d 100644 --- a/apis/interfaces/work.js +++ b/apis/interfaces/work.js @@ -29,8 +29,19 @@ const sign = () => { }) } +// 获取综法订单统计 +const synthesisCount = () => { + return request({ + url : 'synthesis/data/orders_count', + data : { + channel : 'manage' + } + }) +} + export { index, rights, - sign + sign, + synthesisCount } \ No newline at end of file diff --git a/components/entrustOrder.vue b/components/entrustOrder.vue index c953c21..9bf9ac8 100644 --- a/components/entrustOrder.vue +++ b/components/entrustOrder.vue @@ -29,7 +29,14 @@ - + + + + @@ -45,6 +52,10 @@ }; }, props: { + isSelf: { + type : Boolean, + default : false + }, no : { type : String, default : '' @@ -84,14 +95,34 @@ default : () => { return { name: '' } } + }, + can: { + typeof: Object, + default : () => { + return {} + } } }, methods: { + // 订单签约 + onSing(id){ + this.$emit('sing', id) + }, + // 订单详情 onInfo(id){ this.$emit('info', id) }, + // 联系客户 onPhone(mobile){ this.$emit('callPhone', mobile) + }, + // 补差价支付 + onDiff(id){ + this.$emit('diff', id) + }, + // 支付 + onOPay(id){ + this.$emit('pay', id) } } } @@ -101,7 +132,7 @@ // 列表模块 .order-block{ background: white; - margin: 30rpx; + margin: 0 30rpx 30rpx 30rpx; border-radius: 10rpx; &-header{ border-bottom: solid 1rpx #eee; @@ -112,7 +143,7 @@ align-items: center; line-height: 70rpx; .order-no{ font-size: 28rpx; color: #111; } - .order-state{ color: #353EF4; font-weight: bold; font-size: 30rpx; } + .order-state{ color: #446EFE; font-weight: bold; font-size: 30rpx; } } &-content{ padding: 30rpx; @@ -142,10 +173,11 @@ padding-top: 30rpx; display: flex; justify-content: flex-end; - button{ margin: 0; height: 70rpx; line-height: 70rpx; border-radius: 35rpx; min-width: 150rpx; font-size: 30rpx; } + button{ margin: 0; padding: 0; height: 70rpx; line-height: 70rpx; border-radius: 35rpx; min-width: 135rpx; font-size: 30rpx; } button::after{ display: none; } - button.btn-cancel{ margin-right: 20rpx; color: #353EF4; border:solid 1rpx #353EF4; background: white; line-height: 68rpx; box-sizing: border-box; } - button.btn-sign{ background: #353EF4; color: white; } + button.btn-cancel{ margin-right: 20rpx; color: #446EFE; border:solid 1rpx #446EFE; background: white; line-height: 68rpx; box-sizing: border-box; } + button.btn-cancel.in{ opacity: .8; } + button.btn-sign{ background: #446EFE; color: white; } } } } diff --git a/components/expandOrder.vue b/components/expandOrder.vue index 89bfc90..2c8b3aa 100644 --- a/components/expandOrder.vue +++ b/components/expandOrder.vue @@ -29,7 +29,13 @@ - + + + @@ -79,6 +85,12 @@ type : Number, default : 0 }, + can: { + type : Object, + default : () => { + return { } + } + }, lawyer: { type : Object, default : () => { @@ -87,11 +99,21 @@ } }, methods: { + // 订单详情 onInfo(id){ this.$emit('info', id) }, + // 联系客户 onPhone(mobile){ this.$emit('callPhone', mobile) + }, + // 补差价支付 + onDiff(id){ + this.$emit('diff', id) + }, + // 支付 + onOPay(id){ + this.$emit('pay', id) } } } @@ -101,7 +123,7 @@ // 列表模块 .order-block{ background: white; - margin: 30rpx; + margin: 0 30rpx 30rpx 30rpx; border-radius: 10rpx; &-header{ border-bottom: solid 1rpx #eee; @@ -112,7 +134,7 @@ align-items: center; line-height: 70rpx; .order-no{ font-size: 28rpx; color: #111; } - .order-state{ color: #353EF4; font-weight: bold; font-size: 30rpx; } + .order-state{ color: #446EFE; font-weight: bold; font-size: 30rpx; } } &-content{ padding: 30rpx; @@ -142,10 +164,11 @@ padding-top: 30rpx; display: flex; justify-content: flex-end; - button{ margin: 0; height: 70rpx; line-height: 70rpx; border-radius: 35rpx; min-width: 150rpx; font-size: 30rpx; } + button{ margin: 0; height: 70rpx; line-height: 70rpx; border-radius: 35rpx; min-width: 135rpx; font-size: 30rpx; padding: 0; } button::after{ display: none; } - button.btn-cancel{ margin-right: 20rpx; color: #353EF4; border:solid 1rpx #353EF4; background: white; line-height: 68rpx; box-sizing: border-box; } - button.btn-sign{ background: #353EF4; color: white; } + button.btn-cancel{ margin-right: 20rpx; color: #446EFE; border:solid 1rpx #446EFE; background: white; line-height: 68rpx; box-sizing: border-box; } + button.btn-cancel.in{ opacity: .8; } + button.btn-sign{ background: #446EFE; color: white; } } } } diff --git a/components/servicesOrder.vue b/components/servicesOrder.vue index 0a6f798..8ff975a 100644 --- a/components/servicesOrder.vue +++ b/components/servicesOrder.vue @@ -29,7 +29,14 @@ - + + + + @@ -45,6 +52,10 @@ }; }, props: { + isSelf: { + type : Boolean, + default : false, + }, no : { type : String, default : '' @@ -80,12 +91,32 @@ default : () => { return { name: '' } } + }, + can: { + type : Object, + default : () => { + return { } + } } }, methods: { + // 订单签约 + onSing(id){ + this.$emit('sing', id) + }, + // 订单详情 onInfo(id){ this.$emit('info', id) }, + // 联系客户 + onPhone(mobile){ + this.$emit('callPhone', mobile) + }, + // 补差价支付 + onDiff(id){ + this.$emit('diff', id) + }, + // 支付 onOPay(id){ this.$emit('pay', id) } @@ -97,7 +128,7 @@ // 列表模块 .order-block{ background: white; - margin: 30rpx; + margin: 0 30rpx 30rpx 30rpx; border-radius: 10rpx; &-header{ border-bottom: solid 1rpx #eee; @@ -108,7 +139,7 @@ align-items: center; line-height: 70rpx; .order-no{ font-size: 28rpx; color: #111; } - .order-state{ color: #353EF4; font-weight: bold; font-size: 30rpx; } + .order-state{ color: #446EFE; font-weight: bold; font-size: 30rpx; } } &-content{ padding: 30rpx; @@ -138,10 +169,10 @@ padding-top: 30rpx; display: flex; justify-content: flex-end; - button{ margin: 0; height: 70rpx; line-height: 70rpx; border-radius: 35rpx; min-width: 150rpx; font-size: 30rpx; } + button{ margin: 0; height: 70rpx; line-height: 70rpx; border-radius: 35rpx; min-width: 135rpx; font-size: 30rpx; } button::after{ display: none; } - button.btn-cancel{ margin-right: 20rpx; color: #353EF4; border:solid 1rpx #353EF4; background: white; line-height: 68rpx; box-sizing: border-box; } - button.btn-sign{ background: #353EF4; color: white; } + button.btn-cancel{ margin-right: 20rpx; color: #446EFE; border:solid 1rpx #446EFE; background: white; line-height: 68rpx; box-sizing: border-box; } + button.btn-sign{ background: #446EFE; color: white; } } } } diff --git a/components/synthesisOrder.vue b/components/synthesisOrder.vue index 068aa88..4057c87 100644 --- a/components/synthesisOrder.vue +++ b/components/synthesisOrder.vue @@ -20,7 +20,7 @@ - + @@ -72,7 +72,12 @@ this.$emit('info', id) }, onPhone(mobile){ + console.log(mobile) + this.$emit('callPhone', mobile) + }, + onSing(id){ + this.$emit('info', id) } } } @@ -82,7 +87,7 @@ // 列表模块 .order-block{ background: white; - margin: 30rpx; + margin: 0 30rpx 30rpx 30rpx; border-radius: 10rpx; &-header{ border-bottom: solid 1rpx #eee; @@ -119,10 +124,10 @@ padding-top: 30rpx; display: flex; justify-content: flex-end; - button{ margin: 0; height: 70rpx; line-height: 70rpx; border-radius: 35rpx; min-width: 150rpx; font-size: 30rpx; } + button{ margin: 0; height: 70rpx; line-height: 70rpx; border-radius: 35rpx; min-width: 135rpx; padding: 0; font-size: 30rpx; } button::after{ display: none; } - button.btn-cancel{ margin-right: 20rpx; color: #353EF4; border:solid 1rpx #353EF4; background: white; line-height: 68rpx; box-sizing: border-box; } - button.btn-sign{ background: #353EF4; color: white; } + button.btn-cancel{ margin-right: 20rpx; color: #446EFE; border:solid 1rpx #446EFE; background: white; line-height: 68rpx; box-sizing: border-box; } + button.btn-sign{ background: #446EFE; color: white; } } } } diff --git a/pages.json b/pages.json index 5a79595..94a4334 100644 --- a/pages.json +++ b/pages.json @@ -687,24 +687,60 @@ "enablePullDownRefresh": false } }, { - "path": "pages/synthesize/entrustCivil", - "name": "EntrustCivil", + "path": "pages/synthesize/entrustCivil", + "name": "EntrustCivil", "auth": true, "style": { "navigationBarTitleText": "案件委托-民事诉讼", - "enablePullDownRefresh": false, + "enablePullDownRefresh": false, "backgroundColor": "#FFF" } }, { - "path": "pages/synthesize/entrustWrite", - "name": "EntrustWrite", + "path": "pages/synthesize/entrustWrite", + "name": "EntrustWrite", "auth": true, "style": { - "navigationBarTitleText": "案件委托-服务包", - "enablePullDownRefresh": false, + "navigationBarTitleText": "案件委托-", + "enablePullDownRefresh": false, "backgroundColor": "#FFF" } + }, { + "path": "pages/synthesize/standWrite", + "name": "StandWrite", + "auth": true, + "style": { + "navigationBarTitleText": "企业全年法律-购买", + "enablePullDownRefresh": false, + "backgroundColor": "#FFF" + } + }, { + "path": "pages/synthesize/expandWrite", + "name": "ExpandWrite", + "auth": true, + "style": { + "navigationBarTitleText": "拓展服务-", + "enablePullDownRefresh": false, + "backgroundColor": "#FFF" + } + }, { + "path": "pages/synthesize/difference", + "name": "Difference", + "auth": true, + "style": { + "navigationBarTitleText": "订单补差价", + "enablePullDownRefresh": false + } + }, { + "path": "pages/synthesize/feeWrite", + "name": "FeeWrite", + "auth": true, + "style": { + "navigationBarTitleText": "个人法律咨询", + "enablePullDownRefresh": false, + "navigationBarBackgroundColor": "#FFF" + } + }], "globalStyle": { "navigationBarTextStyle": "black", diff --git a/pages/pay/bankPay.vue b/pages/pay/bankPay.vue index 1f86235..f934b29 100644 --- a/pages/pay/bankPay.vue +++ b/pages/pay/bankPay.vue @@ -39,19 +39,6 @@ - - @@ -182,7 +169,7 @@ onBack(){ uni.showModal({ title : '提示', - content : '打款凭证已提交,请耐心等待审核', + content : '打款凭证已提交,请耐心等待审核,通过后请前往工作台综法订单管理中进行签约', showCancel : false, success : modalRes => { if(modalRes.confirm){ diff --git a/pages/pay/pay.vue b/pages/pay/pay.vue index 8616f41..97109ff 100644 --- a/pages/pay/pay.vue +++ b/pages/pay/pay.vue @@ -241,7 +241,7 @@ clearInterval(outTime) wx.showModal({ title : '提示', - content : '支付成功', + content : this.$Route.query.paytype === 'synthesize' ? '支付成功,可在工作台综法订单管理查询您的订单' : '支付成功', showCancel : false, confirmColor: '#446EFE', success : () => { diff --git a/pages/synthesize/difference.vue b/pages/synthesize/difference.vue new file mode 100644 index 0000000..b821297 --- /dev/null +++ b/pages/synthesize/difference.vue @@ -0,0 +1,289 @@ + + + + + diff --git a/pages/synthesize/enterprise.vue b/pages/synthesize/enterprise.vue index 1e886a4..f41548d 100644 --- a/pages/synthesize/enterprise.vue +++ b/pages/synthesize/enterprise.vue @@ -6,9 +6,9 @@ 企业法律咨询服务包 legal advice - - - 到期时间:{{item.service_order.ended_at}} + + + 到期时间:{{item.service_user.ended_at}} {{item.title}} diff --git a/pages/synthesize/entrustInfo.vue b/pages/synthesize/entrustInfo.vue index 9fd1bde..19cb66d 100644 --- a/pages/synthesize/entrustInfo.vue +++ b/pages/synthesize/entrustInfo.vue @@ -78,13 +78,13 @@ mask : true }) entrustInfo(this.$Route.query.id).then(res => { - let { entrust, params, created_at, user, order_no, price } = res; + let { entrust, params, created_at, user, order_no, total } = res; this.entrust = entrust this.params = params this.createdAt = created_at this.user = user this.no = order_no - this.price = price + this.price = total }).catch(err => { uni.showToast({ title: err.message, diff --git a/pages/synthesize/expandInfo.vue b/pages/synthesize/expandInfo.vue index 0a4961a..7ac0ccc 100644 --- a/pages/synthesize/expandInfo.vue +++ b/pages/synthesize/expandInfo.vue @@ -77,13 +77,13 @@ mask : true }) expandInfo(this.$Route.query.id).then(res => { - let { expand, params, created_at, user, order_no, price } = res; + let { expand, params, created_at, user, order_no, total } = res; this.expand = expand this.params = params this.createdAt = created_at this.user = user this.no = order_no - this.price = price + this.price = total }).catch(err => { console.log(err) diff --git a/pages/synthesize/expandWrite.vue b/pages/synthesize/expandWrite.vue new file mode 100644 index 0000000..ed10eb2 --- /dev/null +++ b/pages/synthesize/expandWrite.vue @@ -0,0 +1,430 @@ + + + + + \ No newline at end of file diff --git a/pages/synthesize/feeWrite.vue b/pages/synthesize/feeWrite.vue new file mode 100644 index 0000000..d5a0361 --- /dev/null +++ b/pages/synthesize/feeWrite.vue @@ -0,0 +1,420 @@ + + + + + \ No newline at end of file diff --git a/pages/synthesize/individual.vue b/pages/synthesize/individual.vue index 1ba7e58..6c39898 100644 --- a/pages/synthesize/individual.vue +++ b/pages/synthesize/individual.vue @@ -46,7 +46,7 @@ 打款被驳回 - 到期时间:{{item.service_user.ended_at}} + 到期时间:{{item.service_user.ended_at}} @@ -56,13 +56,16 @@ @@ -288,7 +446,7 @@ // 滑块 .header-sticky{ padding-bottom: 12rpx; } // 列表 - .list{ overflow: hidden; } + .list{ overflow: hidden; padding-top: 30rpx; } // 内容为空 .null-pages{ height: 70vh; display: flex; align-items: center; justify-content: center; } diff --git a/pages/synthesize/service.vue b/pages/synthesize/service.vue index ee381f4..00ecd7d 100644 --- a/pages/synthesize/service.vue +++ b/pages/synthesize/service.vue @@ -8,12 +8,12 @@ - + {{item.title}} - 购买 + 购买 diff --git a/pages/synthesize/servicesInfo.vue b/pages/synthesize/servicesInfo.vue index 54dc852..c82d50a 100644 --- a/pages/synthesize/servicesInfo.vue +++ b/pages/synthesize/servicesInfo.vue @@ -77,13 +77,13 @@ mask : true }) servicesInfo(this.$Route.query.id).then(res => { - let { service, params, created_at, user, order_no, price } = res; + let { service, params, created_at, user, order_no, total } = res; this.service = service this.params = params this.createdAt = created_at this.user = user this.no = order_no - this.price = price + this.price = total }).catch(err => { uni.showToast({ title: err.message, diff --git a/pages/synthesize/standWrite.vue b/pages/synthesize/standWrite.vue new file mode 100644 index 0000000..efc18c8 --- /dev/null +++ b/pages/synthesize/standWrite.vue @@ -0,0 +1,473 @@ + + + + + \ No newline at end of file diff --git a/pages/work/create.vue b/pages/work/create.vue index 99c56dd..b161f6e 100644 --- a/pages/work/create.vue +++ b/pages/work/create.vue @@ -103,11 +103,14 @@ } } synthesisObj = synthesisArr.find(val => val.synthesis_id === this.businessId) + if(synthesisObj.can.buy){ - console.log('提交免费咨询') - // this.$Router.replace({ - // name: 'PersonWrite' - // }) + this.$Router.replace({ + name : 'FeeWrite', + params : { + synthesisId : synthesisObj.synthesis_id + } + }) return } uni.showModal({ @@ -118,7 +121,7 @@ success : modalRes => { if(modalRes.confirm){ this.$Router.replace({ - name: 'PersonWrite' + name: 'Individual' }) } } diff --git a/pages/work/index.vue b/pages/work/index.vue index 58055e0..e0618ec 100644 --- a/pages/work/index.vue +++ b/pages/work/index.vue @@ -162,22 +162,22 @@ - {{orderCount.transfer_out}} + {{synthesisData.service.all}} 年费订单 - {{orderCount.transfer_in}} + {{synthesisData.synthesis.all}} 咨询订单 - {{orderCount.transfer_out}} + {{synthesisData.entrust.all}} 委托订单 - {{orderCount.transfer_in}} + {{synthesisData.expand.all}} 拓展订单 @@ -233,7 +233,7 @@