|
|
|
@ -6,7 +6,9 @@ |
|
|
|
<el-descriptions :column="3" :size="size" border> |
|
|
|
<el-descriptions-item label="订单编号">{{editForm.id}}</el-descriptions-item> |
|
|
|
<el-descriptions-item label="下单机构" :span="2">{{editForm.obranchName}}</el-descriptions-item> |
|
|
|
<el-descriptions-item label="订单金额">¥{{editForm.ofinalFee}}元</el-descriptions-item> |
|
|
|
<el-descriptions-item label="折前总价">¥{{editForm.moFinalFee}}元</el-descriptions-item> |
|
|
|
<el-descriptions-item label="折扣率">{{editForm.odisRate}}%</el-descriptions-item> |
|
|
|
<el-descriptions-item label="折后总价">¥{{editForm.ofinalFee}}元</el-descriptions-item> |
|
|
|
<el-descriptions-item label="状态"><mdp-select item-code="mo_order_status" v-model="editForm.status" /></el-descriptions-item> |
|
|
|
<el-descriptions-item label="操作类型"><mdp-select item-code="mo_ooper" v-model="editForm.ooper" /></el-descriptions-item> |
|
|
|
</el-descriptions> |
|
|
|
@ -126,27 +128,37 @@ |
|
|
|
</el-form-item> |
|
|
|
</el-tab-pane> |
|
|
|
<el-tab-pane label="付款信息" name="3" > |
|
|
|
<el-form-item label="付款时间" prop="payTime" > |
|
|
|
<el-date-picker type="date" placeholder="选择日期" v-model="editForm.payTime" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="付款确认时间" prop="payCtime" > |
|
|
|
<el-date-picker type="date" placeholder="选择日期" v-model="editForm.payCtime" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="支付方式" prop="payType"> |
|
|
|
<mdp-select item-code="tpAppPayType" v-model="editForm.payType" @change="editSomeFields(editForm,'payType',$event)"/> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="付款订单号" prop="prepayId"> |
|
|
|
<el-input v-model="editForm.prepayId" placeholder="付款订单号(第三方返回)" :maxlength="50" @change="editSomeFields(editForm,'prepayId',$event)"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="其它费用" prop="othFee"> |
|
|
|
<el-input v-model="editForm.othFee" placeholder="其它费用" :maxlength="10" @change="editSomeFields(editForm,'othFee',$event)"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="应付金额" prop="ofinalFee" > |
|
|
|
<el-input v-model="editForm.ofinalFee" placeholder="最终订单价格、最终付款金额" :maxlength="10" @change="editSomeFields(editForm,'ofinalFee',$event)"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="付款金额" prop="payAt" > |
|
|
|
<el-input v-model="editForm.payAt" placeholder="最终付款金额-客户付款后回填" :maxlength="20" @change="editSomeFields(editForm,'payAt',$event)"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-row :gutter="5"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="支付方式" prop="payType"> |
|
|
|
<mdp-select item-code="tpAppPayType" v-model="editForm.payType"/> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="应付金额" prop="ofinalFee" > |
|
|
|
<el-input :disabled="true" v-model="editForm.ofinalFee" placeholder="最终订单价格、最终付款金额" :maxlength="10"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<div v-if="editForm.status>2"> |
|
|
|
<el-form-item label="付款时间" prop="payTime" > |
|
|
|
<el-date-picker :disabled="true" type="date" placeholder="选择日期" v-model="editForm.payTime" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="付款确认时间" prop="payCtime" > |
|
|
|
<el-date-picker :disabled="true" type="date" placeholder="选择日期" v-model="editForm.payCtime" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd"></el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="付款订单号" prop="prepayId"> |
|
|
|
<el-input :disabled="true" v-model="editForm.prepayId" placeholder="付款订单号(第三方返回)" :maxlength="50" @change="editSomeFields(editForm,'prepayId',$event)"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="实际付款金额" prop="payAt" > |
|
|
|
<el-input :disabled="true" v-model="editForm.payAt" placeholder="最终付款金额-客户付款后回填" :maxlength="20" @change="editSomeFields(editForm,'payAt',$event)"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</div> |
|
|
|
</el-col> |
|
|
|
<el-col v-if="editForm.payType=='1'" :span="12"> |
|
|
|
<el-button v-if="!codeUrl" @click="createOrder">创建微信收款码</el-button> |
|
|
|
<qriously v-else :value="codeUrl" :size="300" /> |
|
|
|
</el-col> |
|
|
|
<el-col v-else-if="editForm.payType=='2'" :span="12"> |
|
|
|
<el-button @click="createOrder">创建支付宝收款码</el-button> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
</el-tab-pane> |
|
|
|
<el-tab-pane label="收款信息" name="32" > |
|
|
|
<el-form-item label="收款银行编号 " prop="pbankId" > |
|
|
|
@ -164,9 +176,10 @@ |
|
|
|
</el-tab-pane> |
|
|
|
<el-tab-pane label="折扣信息" name="4" > |
|
|
|
|
|
|
|
<el-form-item label="订单折扣率" prop="odisRate"> |
|
|
|
<el-input style="width:30%;" type="number" v-model="editForm.odisRate" :min="0" :max="200" @change="editSomeFields(editForm,'odisRate',$event)"></el-input> % |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="最新折扣率" prop="odisRate"> |
|
|
|
<el-input style="width:30%;" type="number" v-model="odisRate" :min="0" :max="200"></el-input> % |
|
|
|
<el-button @click="odisRateConfirm">确认修改折扣率</el-button> |
|
|
|
</el-form-item> |
|
|
|
</el-tab-pane> |
|
|
|
<el-tab-pane label="产品列表" name="5" > |
|
|
|
<mo-order-module-index :mo-order="editForm"></mo-order-module-index> |
|
|
|
@ -190,6 +203,9 @@ import * as MoOrderApi from '@/api/mdp/mo/moOrder'; |
|
|
|
import { mapGetters } from 'vuex' |
|
|
|
import { MdpFormMixin } from '@/components/mdp-ui/mixin/MdpFormMixin.js'; |
|
|
|
|
|
|
|
import {createOrder} from '@/api/mdp/sys/order' |
|
|
|
import {aliPay, weixinPay, checkWxPayStatus} from '@/api/mdp/pay/pay' |
|
|
|
|
|
|
|
import MoOrderModuleIndex from '../moOrderModule/Index.vue'; |
|
|
|
export default { |
|
|
|
name:'moOrderForm', |
|
|
|
@ -217,6 +233,9 @@ export default { |
|
|
|
editForm: { |
|
|
|
id:'',name:'',obranchId:'',ouserid:'',ousername:'',moFinalFee:'',status:'',sstatus:'',ctime:'',payTime:'',payCtime:'',moOrginFee:'',ousers:'',ocates:'',omodules:'',poid:'',startTime:'',endTime:'',payType:'',payId:'',prepayId:'',topenId:'',pbankId:'',pbankName:'',pbankCardNo:'',pbankUsername:'',remark:'',finishTime:'',closeTime:'',setTime:'',odays:'',ofinalFee:'',odisRate:'',othFee:'',otype:'',osource:'',memType:'',atype:'',saleUserid:'',saleUsername:'',custPhone:'',custAddress:'',payAt:'',obranchName:'',ooper:'',tranId:'',invoice:'',invoiceTime:'',invoiceId:'' |
|
|
|
}, |
|
|
|
odisRate:null, |
|
|
|
codeUrl:null, |
|
|
|
timer:0, |
|
|
|
//增删改查(含批量)接口 |
|
|
|
apis:{ |
|
|
|
queryById: MoOrderApi.queryMoOrderById, |
|
|
|
@ -258,6 +277,88 @@ export default { |
|
|
|
params[fieldName]=$event |
|
|
|
return true; |
|
|
|
}, |
|
|
|
odisRateConfirm(){ |
|
|
|
var params={$pks:[this.editForm.id],odisRate:this.odisRate} |
|
|
|
this.apis.editSomeFields(params).then(res=>{ |
|
|
|
var tips = res.data.tips |
|
|
|
if(tips.isOk){ |
|
|
|
Object.assign(this.editForm,res.data.data) |
|
|
|
} |
|
|
|
this.$notify({ message: tips.msg, type: tips.isOk?'success':'error' }); |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
createOrder() { |
|
|
|
let orderId = this.editForm.id; |
|
|
|
if(this.editForm.payType == '2') { |
|
|
|
this.toAliPay(orderId); |
|
|
|
return; |
|
|
|
}else if(this.editForm.payType == '1') { |
|
|
|
this.toWeixinPay(orderId); |
|
|
|
return; |
|
|
|
}else{ |
|
|
|
this.$notify({ message: "请选则支付方式", type:'error' }); |
|
|
|
return; |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
toAliPay(orderId) { |
|
|
|
let params = { |
|
|
|
id: orderId, |
|
|
|
otype: 1, |
|
|
|
returnUrl: `${window.location.protocol+"//"+window.location.host}/${process.env.CONTEXT}/${process.env.VERSION}/#/my/order/paySuccess` |
|
|
|
} |
|
|
|
aliPay(params).then(res => { |
|
|
|
if(res.data.tips.isOk) { |
|
|
|
const div = document.createElement("divform"); |
|
|
|
div.innerHTML = res.data.data.htmlStr; |
|
|
|
document.body.appendChild(div); |
|
|
|
document.forms[0].submit(); |
|
|
|
}else { |
|
|
|
this.$notify.error(res.data.tips.msg); |
|
|
|
} |
|
|
|
}).finally(() => { |
|
|
|
setTimeout(() => { |
|
|
|
this.load.add = false; |
|
|
|
}, 2000); |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
toWeixinPay(orderId) { |
|
|
|
let params = { |
|
|
|
id: orderId, |
|
|
|
otype: 1, |
|
|
|
returnUrl: "" |
|
|
|
} |
|
|
|
weixinPay(params).then(res => { |
|
|
|
if(res.data.tips.isOk) { |
|
|
|
this.codeUrl = res.data.data.codeUrl; |
|
|
|
this.timer = setInterval(() => { |
|
|
|
this.queryOrderStatus(orderId,res.data.data.payId) |
|
|
|
}, 3000) |
|
|
|
}else { |
|
|
|
this.$notify.error(res.data.tips.msg); |
|
|
|
} |
|
|
|
}).finally(() => { |
|
|
|
setTimeout(() => { |
|
|
|
this.load.add = false; |
|
|
|
}, 2000); |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//查询订单支付状态 |
|
|
|
queryOrderStatus(orderId,payId) { |
|
|
|
console.log("查询订单"); |
|
|
|
checkWxPayStatus({'orderId': orderId, "otype": "1","payId":payId}).then(res => { |
|
|
|
if(res.data.tips.isOk) { |
|
|
|
this.$router.push({path:'/my/order/paySuccess', query:{total_amount: this.editForm.ofinalFee, out_trade_no: orderId,pay_id:payId}}); |
|
|
|
clearInterval(this.timer); |
|
|
|
}else { |
|
|
|
} |
|
|
|
}).finally(() => { |
|
|
|
|
|
|
|
}) |
|
|
|
}, |
|
|
|
}, |
|
|
|
mounted() { |
|
|
|
|
|
|
|
|