|
|
|
@ -42,7 +42,7 @@ |
|
|
|
<span class="desc" slot="formRight"><a href='https://pay.weixin.qq.com/' class="guide" |
|
|
|
target='_blank'><img src="@/assets/site/form_qua_ic.svg" alt="">指南</a> |
|
|
|
</span> |
|
|
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="formData1.key" prop="key" |
|
|
|
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="formData1.pkey" prop="pkey" |
|
|
|
placeholder="不能设为纯数字"> |
|
|
|
</GuipInput> |
|
|
|
</GuipFormItem> |
|
|
|
@ -73,15 +73,15 @@ |
|
|
|
<div class="uploadwrap"> |
|
|
|
<label class="flex upload-title gap8">上传 apiclient_cert.pem 证书<img class="ml-4" |
|
|
|
src="@/assets/require.svg" /></label> |
|
|
|
<el-upload class="upload-demo" :on-change="handleAvatarChange" action="#" :multiple="false" |
|
|
|
<el-upload class="upload-demo" :file-list="fileList" :on-change="handleAvatarChange" :on-remove="handRemove" action="#" :multiple="false" |
|
|
|
:limit="Number(1)" ref="avatorUpload" :auto-upload="false"> |
|
|
|
<GuipButton class="upload-button" slot="trigger" type="ignore" |
|
|
|
:btnstyle="{ width: '118px' }"> |
|
|
|
<i class="bgImg"></i>选择文件 |
|
|
|
</GuipButton> |
|
|
|
</el-upload> |
|
|
|
<!-- <p class="uploaded" v-if="formData.apiclient_cert">已上传</p> |
|
|
|
<p class="normalUpload notuploaded" v-else>未上传任何文件</p> --> |
|
|
|
<!-- <p class="uploaded" v-if="formData.apiclient_cert">已上传</p> --> |
|
|
|
<!-- <p :class="['normalUpload', noFileFlag ?'notuploaded' :'']" v-if="!('apiclient_cert' in payInfo)">未上传任何文件</p> --> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="flex-line"></div> |
|
|
|
@ -89,15 +89,15 @@ |
|
|
|
<div class="uploadwrap"> |
|
|
|
<label class="flex upload-title gap8">上传 apiclient_key.pem 证书<img class="ml-4" |
|
|
|
src="@/assets/require.svg" /></label> |
|
|
|
<el-upload class="upload-demo" :on-change="handleAvatarChange1" action="#" :multiple="false" |
|
|
|
<el-upload class="upload-demo" :file-list="fileList1" :on-change="handleAvatarChange1" :on-remove="handRemove1" action="#" :multiple="false" |
|
|
|
:limit="Number(1)" ref="avatorUpload" :auto-upload="false"> |
|
|
|
<GuipButton class="upload-button" slot="trigger" type="ignore" |
|
|
|
:btnstyle="{ width: '118px' }"> |
|
|
|
<i class="bgImg"></i>选择文件 |
|
|
|
</GuipButton> |
|
|
|
</el-upload> |
|
|
|
<!-- <p class="uploaded" v-if="formData.apiclient_key">已上传</p> |
|
|
|
<p class="normalUpload notuploaded" v-else>未上传任何文件</p> --> |
|
|
|
<!-- <p class="uploaded" v-if="formData.apiclient_key">已上传</p> --> |
|
|
|
<!-- <p :class="['normalUpload', noFileFlag1 ?'notuploaded' :'']" v-if="!('apiclient_key' in payInfo)">未上传任何文件</p> --> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
@ -105,7 +105,7 @@ |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="save-button"> |
|
|
|
<GuipButton type="primary" ref="saveRef" :btnstyle="saveBtnStyleObj" @click="saveConfirm">保存</GuipButton> |
|
|
|
<GuipButton type="primary" ref="saveRef" :btnstyle="saveBtnStyleObj" @click="saveConfirm">完成设置</GuipButton> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
@ -115,6 +115,8 @@ |
|
|
|
import GuipInput from '@/components/GuipInput.vue'; |
|
|
|
import GuipButton from '@/components/GuipButton.vue'; |
|
|
|
import GuipFormItem from '@/components/GuipFormItem.vue'; |
|
|
|
const PAY_TYPE_WEIXIN = 2; // 微信 |
|
|
|
const PAY_TYPE_ALIPAY = 3; // 支付宝 |
|
|
|
export default { |
|
|
|
// 站点设置 |
|
|
|
name: 'addPay', |
|
|
|
@ -125,6 +127,15 @@ export default { |
|
|
|
GuipFormItem, |
|
|
|
}, |
|
|
|
data() { |
|
|
|
const notPureNumberRule = (rule, value, callback) => { |
|
|
|
if (!value) { |
|
|
|
callback(new Error('该字段为必填项')); |
|
|
|
} else if (/^\d+$/.test(value)) { |
|
|
|
callback(new Error('不能设为纯数字')); |
|
|
|
} else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
}; |
|
|
|
return { |
|
|
|
formData1:{ |
|
|
|
// 公司简称 |
|
|
|
@ -132,7 +143,7 @@ export default { |
|
|
|
// 商户号 |
|
|
|
mch_id: '', |
|
|
|
// 微信支付秘钥 |
|
|
|
key: '', |
|
|
|
pkey: '', |
|
|
|
// 公众号APPID |
|
|
|
appid: '', |
|
|
|
}, |
|
|
|
@ -141,13 +152,20 @@ export default { |
|
|
|
{ required: true, message: '请输入公司简称', trigger: 'blur' } |
|
|
|
], |
|
|
|
appid: [ |
|
|
|
{ required: true, message: '请输入公众号APPID', trigger: 'blur' } |
|
|
|
{ required: true, message: '请输入公众号APPID', trigger: 'blur' }, |
|
|
|
{ validator: notPureNumberRule, trigger: 'blur' } |
|
|
|
], |
|
|
|
mch_id: [ |
|
|
|
{ required: true, message: '请输入微信支付商户号', trigger: 'blur' } |
|
|
|
{ required: true, message: '请输入微信支付商户号', trigger: 'blur' }, |
|
|
|
{ |
|
|
|
pattern: /^\d+$/, |
|
|
|
message: '商户号必须为纯数字', |
|
|
|
trigger: 'blur' |
|
|
|
} |
|
|
|
], |
|
|
|
key: [ |
|
|
|
{ required: true, message: '请输入微信支付秘钥', trigger: 'blur' } |
|
|
|
pkey: [ |
|
|
|
{ required: true, message: '请输入微信支付秘钥', trigger: 'blur' }, |
|
|
|
{ validator: notPureNumberRule, trigger: 'blur' } |
|
|
|
], |
|
|
|
}, |
|
|
|
formData: new FormData(), |
|
|
|
@ -158,71 +176,114 @@ export default { |
|
|
|
borderRadius: '4px', |
|
|
|
background: '#006AFF', |
|
|
|
}, |
|
|
|
fileList: [], |
|
|
|
fileList1: [], |
|
|
|
noFileFlag: false, |
|
|
|
noFileFlag1: false, |
|
|
|
payTypeWeixin: PAY_TYPE_WEIXIN, |
|
|
|
payTypeAlipay: PAY_TYPE_ALIPAY, |
|
|
|
} |
|
|
|
}, |
|
|
|
created() { |
|
|
|
// 初始化反显 |
|
|
|
// 初始化 |
|
|
|
this.formData.set('doctor_id', this.$route.query.doctor_id) |
|
|
|
this.formData.set('depart_id', this.$route.query.depart_id) |
|
|
|
console.log('apiclient_cert' in this.payInfo,'apiclient_key'); |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
getPayment() { |
|
|
|
this.$http('POST', '/agentnew/ajax_get_payinfo', { |
|
|
|
payid: this.$route.query.payid, |
|
|
|
}).then(response => { |
|
|
|
this.$nextTick(() => { |
|
|
|
this.payinfo = response.data |
|
|
|
}) |
|
|
|
}).catch(error => { |
|
|
|
console.error(error, 'error') |
|
|
|
}) |
|
|
|
handRemove() { |
|
|
|
this.formData.delete('apiclient_cert'); |
|
|
|
this.payInfo.delete('apiclient_cert'); |
|
|
|
this.noFileFlag = true; |
|
|
|
}, |
|
|
|
handRemove1() { |
|
|
|
this.formData.delete('apiclient_key'); |
|
|
|
this.payInfo.delete('apiclient_key'); |
|
|
|
this.noFileFlag1 = true; |
|
|
|
}, |
|
|
|
handleAvatarChange(file, fileList) { |
|
|
|
console.log(file, fileList, 'file') |
|
|
|
let fileObj = file.raw |
|
|
|
this.noFileFlag = false; |
|
|
|
this.payInfo.apiclient_cert = fileObj; |
|
|
|
this.formData.set('apiclient_cert', fileObj) |
|
|
|
// this.formData.append('apiclient_cert', fileObj) |
|
|
|
// this.uoload_apipem() |
|
|
|
}, |
|
|
|
handleAvatarChange1(file, fileList) { |
|
|
|
console.log(file, fileList, 'file') |
|
|
|
let fileObj = file.raw |
|
|
|
let fileObj = file.raw; |
|
|
|
this.noFileFlag1 = false; |
|
|
|
this.payInfo.apiclient_key = fileObj; |
|
|
|
this.formData.set('apiclient_key', fileObj) |
|
|
|
}, |
|
|
|
// 文件上传 |
|
|
|
// uoload_apipem(){ |
|
|
|
// // pay_id ??? |
|
|
|
|
|
|
|
// // const formData = new FormData(); |
|
|
|
// // formData.set('doctor_id', this.$route.query.doctor_id) |
|
|
|
// // formData.set('depart_id', this.$route.query.depart_id) |
|
|
|
// // formData.set('apiclient_cert',this.formData.apiclient_cert) |
|
|
|
|
|
|
|
// this.$http('POST', '/api/admin/upload_wx_api_cert', this.formData).then(response => { |
|
|
|
// if(response.code == 0){ |
|
|
|
// this.$message.success('上传成功'); |
|
|
|
// return true; |
|
|
|
// } |
|
|
|
// this.$message.error(response.msg); |
|
|
|
// }).catch(error => { |
|
|
|
// console.error(error, 'error') |
|
|
|
// }) |
|
|
|
// }, |
|
|
|
|
|
|
|
saveConfirm() { |
|
|
|
// 查看有多少参数 |
|
|
|
// pay_id ??? |
|
|
|
// 测试-查看有多少参数 |
|
|
|
// for (let [key, value] of this.formData.entries()) { |
|
|
|
// console.log('键 (Key):', key); |
|
|
|
// console.log('值 (Value):', value); |
|
|
|
// } |
|
|
|
if(!this.formData.has('apiclient_key') ){ |
|
|
|
this.noFileFlag1 = true; |
|
|
|
if( !this.formData.has('apiclient_cert')){ |
|
|
|
this.noFileFlag = true; |
|
|
|
this.$positionMessage({ |
|
|
|
type: 'error', |
|
|
|
message: '请先上传证书', |
|
|
|
target: this.$refs['saveRef'], // 可以是DOM元素或选择器 |
|
|
|
position: 'top' |
|
|
|
}) |
|
|
|
return false; |
|
|
|
} |
|
|
|
this.$positionMessage({ |
|
|
|
type: 'error', |
|
|
|
message: '请先上传证书', |
|
|
|
target: this.$refs['saveRef'], // 可以是DOM元素或选择器 |
|
|
|
position: 'top' |
|
|
|
}) |
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
this.$refs.wxform.validate((valid) => { |
|
|
|
console.log(valid, 'valid'); |
|
|
|
if (valid) { |
|
|
|
for (let key in this.formData1) { |
|
|
|
this.formData.set(key, this.formData1[key]) |
|
|
|
} |
|
|
|
if(!this.formData.has('apiclient_key') || !this.formData.has('apiclient_cert')){ |
|
|
|
this.$positionMessage({ |
|
|
|
type: 'error', |
|
|
|
message: '请先上传证书', |
|
|
|
target: this.$refs['saveRef'], // 可以是DOM元素或选择器 |
|
|
|
position: 'top' |
|
|
|
}) |
|
|
|
return false; |
|
|
|
} |
|
|
|
this.formData.set('doctor_id', this.$route.query.doctor_id) |
|
|
|
this.formData.set('depart_id', this.$route.query.depart_id) |
|
|
|
const that = this |
|
|
|
this.$http('POST', '/agentnew/ajax_payment_switch', this.formData).then(response => { |
|
|
|
if(response.status){ |
|
|
|
this.formData.set('type',this.payTypeWeixin)//这个参数 待定 2 微信支付 \ 3 支付宝 |
|
|
|
this.formData.set('is_pay_public','0') |
|
|
|
const that = this; |
|
|
|
this.$http('POST', '/api/admin/set_pay_method', this.formData).then(response => { |
|
|
|
if(response.code == 0){ |
|
|
|
that.$message.success('保存成功'); |
|
|
|
// that.payList = response.data.paylist |
|
|
|
// that.$emit('saveEvent', that.payList) |
|
|
|
this.$router.go(-1); |
|
|
|
|
|
|
|
return true; |
|
|
|
} |
|
|
|
that.$message.error(response.info); |
|
|
|
that.$message.error(response.msg); |
|
|
|
}).catch(error => { |
|
|
|
console.error(error, 'error') |
|
|
|
}) |
|
|
|
@ -230,8 +291,6 @@ export default { |
|
|
|
return false; |
|
|
|
} |
|
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
} |
|
|
|
|
|
|
|
|