Browse Source

Merge pull request '20250625_paylist' (#59) from 20250625_paylist into master

Reviewed-on: #59
pull/60/head
超级管理员 6 days ago
parent
commit
8f83d0b569
  1. 1
      src/assets/register/jingdong.svg
  2. 1
      src/assets/register/pinduoduo.svg
  3. 1
      src/assets/register/taobao.svg
  4. 1
      src/assets/site/bind_sites.svg
  5. 22
      src/router/index.js
  6. 11
      src/store/index.js
  7. 916
      src/views/agent/payList.vue
  8. 1
      src/views/agent/siteList.vue

1
src/assets/register/jingdong.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.8 KiB

1
src/assets/register/pinduoduo.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 16 KiB

1
src/assets/register/taobao.svg

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="26" height="26" viewBox="0 0 26 26"><defs><clipPath id="master_svg0_163_65485"><rect x="0" y="0" width="26" height="26" rx="0"/></clipPath></defs><g clip-path="url(#master_svg0_163_65485)"><g><rect x="1" y="4" width="24" height="20" rx="0" fill="#FB832D" fill-opacity="1"/></g><g><path d="M21.7860125,0L4.2147825,0C1.8957325,0,0.007812797353,1.88795,0.007812797353,4.22185L0.007812797353,21.7633C0.007812797353,24.0972,1.8957325,25.9851,4.2147825,25.9851L21.7860125,25.9851C24.1050125,25.9851,25.9929125,24.0972,25.9929125,21.7633L25.9929125,4.22185C25.9929125,1.90277,24.1050125,0,21.7860125,0ZM9.7596625,17.4225C8.7785225,17.4225,7.9906525,17.2144,6.9946525,17.0212L4.2445225,18.4036L5.0323925,16.04C3.0552725,14.6575,1.8808825,12.8736,1.8808825,10.7181C1.8808825,6.97196,5.4337625,4.0137,9.7596625,4.0137C13.6396125,4.0137,17.0289125,6.37731,17.7128125,9.54373C17.4604125,9.51401,17.2072125,9.49912,16.9546125,9.49912C13.2085125,9.49912,10.2502125,12.2939,10.2502125,15.7278C10.2502125,16.3076,10.3394125,16.8576,10.4881125,17.3779C10.2502125,17.4076,10.0124125,17.4225,9.7596625,17.4225ZM21.3846125,20.1727L21.9792125,22.1349L19.8237125,20.9457C19.0358125,21.1389,18.2479125,21.3471,17.4601125,21.3471C13.7139125,21.3471,10.7557125,18.7902,10.7557125,15.6238C10.7557125,12.4723,13.7139125,9.90051,17.4600125,9.90051C20.9981125,9.90051,24.1496125,12.4723,24.1496125,15.6238C24.1347125,17.4225,22.9603125,18.9983,21.3846125,20.1727Z" fill="#FB832D" fill-opacity="1"/></g><g><path d="M5.57036,5.294376C6.58904,5.294376,7.41797,6.0477799999999995,7.41797,6.98081C7.41797,7.91384,6.58904,8.66724,5.57036,8.66724C4.5417000000000005,8.66724,3.71278,7.90885,3.71278,6.98081C3.71777,6.04279,4.5417000000000005,5.294376,5.57036,5.294376ZM7.11336,15.4279C6.624,16.9647,6.74884,16.395899999999997,4.80636,20.681800000000003L2,18.9006Q5.1409199999999995,16.0017,5.7800899999999995,14.67453Q6.4642,13.27749,5.0210799999999995,12.53406L2.863878,11.17194L4.03735,9.34581C5.66025,10.57321,5.7800899999999995,10.673,6.87367,11.79063C7.72257,12.663789999999999,7.61271,13.86126,7.11336,15.4279ZM22.4085,17.4287Q21.8592,22.6527,15.1629,20.7068L15.5274,19.209899999999998L17.080399999999997,19.5442Q19.9467,19.7288,19.6671,17.1892L19.6671,9.79985C19.687,6.9907900000000005,17.0654,6.69641,12.3516,8.40779L13.4451,8.71215C13.3553,9.03646,13.0007,9.550370000000001,12.5413,10.10919L18.8481,10.10919L18.8481,11.40645L15.3027,11.40645L15.3027,13.02303L18.8381,13.02303L18.8381,14.32029L15.3027,14.32028L15.3027,17.029600000000002C15.837,16.8549,16.3264,16.6104,16.750799999999998,16.286099999999998L16.4413,15.1086L18.1091,14.57973L19.5023,18.032400000000003L17.4499,18.9006L17.0854,17.5235C16.166600000000003,18.237000000000002,14.2641,19.2698,10.9334,19.175Q7.38301,19.2698,8.29682,15.1086L8.38671,15.0637L10.88846,15.0637C10.86849,15.5976,10.65376,16.4707,10.94838,16.944699999999997C11.19306,17.3339,11.81725,17.3988,12.2117,17.4237C12.2567,17.4287,12.3066,17.4287,12.3466,17.4287L12.3466,14.32528L8.731259999999999,14.32528L8.731259999999999,13.02802L12.3466,13.02802L12.3466,11.411439999999999L11.40779,11.411439999999999Q10.59384,12.28459,9.84981,13.01305L8.75623,12.0451C9.535219999999999,11.21186,10.30921,9.894639999999999,10.78859,9.02149C10.39909,9.18116,9.99961,9.355789999999999,9.585149999999999,9.535409999999999C9.18567,10.0593,8.72127,10.588180000000001,8.20195,11.11706Q8.22192,11.142009999999999,6.40927,10.084240000000001Q8.27685,8.46766,9.32549,5L11.92711,5.738437Q11.71738,6.25235,11.26797,7.035690000000001Q21.6645,4.047016,22.2787,8.86682Q22.9528,12.199770000000001,22.4085,17.4287Z" fill="#FFFFFF" fill-opacity="1"/></g></g></svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

1
src/assets/site/bind_sites.svg

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="16" height="16" viewBox="0 0 16 16"><defs><clipPath id="master_svg0_166_49091"><rect x="0" y="0" width="16" height="16" rx="0"/></clipPath></defs><g clip-path="url(#master_svg0_166_49091)"><g><path d="M3.993058,2.326391373069763Q2.333333,3.986113373069763,2.333333,6.333333373069763Q2.333333,10.987083373069764,7.58354,15.187233373069763Q7.62755,15.222433373069762,7.67685,15.249733373069763Q7.72614,15.277133373069763,7.77933,15.295733373069764Q7.83251,15.314433373069763,7.88808,15.323833373069764Q7.94364,15.333333373069763,8,15.333333373069763Q8.05636,15.333333373069763,8.111930000000001,15.323833373069764Q8.16749,15.314433373069763,8.22067,15.295733373069764Q8.273859999999999,15.277133373069763,8.32315,15.249733373069763Q8.37245,15.222433373069762,8.41646,15.187233373069763Q13.6667,10.987083373069764,13.6667,6.333333373069763Q13.6667,3.986113373069763,12.00694,2.326391373069763Q10.34721,0.6666663730697632,8,0.6666663730697632Q5.65278,0.6666663730697632,3.993058,2.326391373069763ZM8,13.804833373069764Q3.666667,10.166283373069763,3.666667,6.333333373069763Q3.666667,4.538403373069763,4.9358699999999995,3.269203373069763Q6.20507,2.000000373069763,8,2.000000373069763Q9.79493,2.000000373069763,11.06413,3.269203373069763Q12.33333,4.538403373069763,12.33333,6.333333373069763Q12.33333,10.166293373069763,8,13.804833373069764Z" fill-rule="evenodd" fill="#8A9099" fill-opacity="1"/></g><g><path d="M6.114383,4.447716492279053Q5.333333,5.228765492279052,5.333333,6.333333492279053Q5.333333,7.437903492279053,6.114383,8.218953492279052Q6.895433,9.000003492279053,8,9.000003492279053Q9.104569999999999,9.000003492279053,9.88562,8.218953492279052Q10.66667,7.437903492279053,10.66667,6.333333492279053Q10.66667,5.228765492279052,9.88562,4.447716492279053Q9.104569999999999,3.666666492279053,8,3.666666492279053Q6.895432,3.666666492279053,6.114383,4.447716492279053ZM7.05719,7.276143492279052Q6.666667,6.885613492279052,6.666667,6.333333492279053Q6.666667,5.781053492279053,7.05719,5.390523492279053Q7.44772,5.000000492279053,8,5.000000492279053Q8.55228,5.000000492279053,8.94281,5.390523492279053Q9.33333,5.781053492279053,9.33333,6.333333492279053Q9.33333,6.885613492279052,8.94281,7.276143492279052Q8.55228,7.666663492279053,8,7.666663492279053Q7.44772,7.666663492279053,7.05719,7.276143492279052Z" fill-rule="evenodd" fill="#8A9099" fill-opacity="1"/></g></g></svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

22
src/router/index.js

@ -101,6 +101,28 @@ const routes = [{
} }
}, },
{ {
path: '/agent/SitePersonalization',
name: '个性化设置',
// route level code-splitting
// this generates a separate chunk (about.[hash].js) for this route
// which is lazy-loaded when the route is visited.
component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/SitePersonalization.vue')
},
{
path: '/agent/payList',
isFirst: true,
name: '收款方式',
// route level code-splitting
// this generates a separate chunk (about.[hash].js) for this route
// which is lazy-loaded when the route is visited.
component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/payList.vue'),
meta: {
title: '收款方式',
breadcrumbParent: '首页',
hideBreadcrumb: true // 一级页面不显示面包屑
}
},
{
path: '/franchise', path: '/franchise',
name: '加盟', name: '加盟',
component: () => import( /* webpackChunkName: "franchise" */ '../views/Franchise.vue'), component: () => import( /* webpackChunkName: "franchise" */ '../views/Franchise.vue'),

11
src/store/index.js

@ -133,6 +133,17 @@ export default new Vuex.Store({
path: '/franchise' path: '/franchise'
} }
] ]
},
{
index: '4',
title: '财务',
icon: 'Totalprofit',
children: [{
index: '3-1',
title: '收款方式',
path: '/agent/payList'
},
]
} }
], ],
siteSettingData1:[ siteSettingData1:[

916
src/views/agent/payList.vue

@ -0,0 +1,916 @@
<template>
<div class="main-content12">
<div class="pageheader">
<div class="pageheader-title">
<h3>收款列表</h3>
</div>
<div class="button-group">
<GuipButton :key="item.type" v-for="item in addablePays" :btnstyle="{ width: '150px', height: '33px' }" @click="showAddPaymentMethodDialog(item.type, item.type_desc)">添加{{ item.type_desc }}</GuipButton>
</div>
</div>
<!-- 支付宝 -->
<div class="register-wrap">
<div class="step3-wrap">
<div class="step3-top flex-common">
<h3 class="flex gap8">
<img src="@/assets/register/zhifubao.svg" alt="">
支付宝收款</h3>
</div>
<div>
<div class="flex-common table-wrap">
<el-form>
<GuipTable :border="true" :tableData="payList[payTypeAlipay]" :loading="tableLoading">
<el-table-column prop="short_name" fixed="left" label="公司简称"></el-table-column>
<el-table-column prop="account" label="账号"></el-table-column>
<el-table-column prop="expires_time" label="有效期" min-width="30px"></el-table-column>
<el-table-column prop="is_auto_refund" fixed="right" label="授权平台退款" min-width="30px">
<template slot-scope="scope">
<!-- :active-value="1" :inactive-value="0"关闭 加冒号表示数字格式 -->
<!-- active-value="1" inactive-value="0"关闭 不加冒号表示字符串 -->
<!-- 传入的modelvalue 为数字 0 或者 1 -->
<GuipSwitch v-if="scope.row.is_pay_public == 0" :modelValue="scope.row.is_auto_refund" active-value="1" inactive-value="0" @change="updateAutoRefund(scope.row)"></GuipSwitch>
</template>
</el-table-column>
<el-table-column prop="status" fixed="right" label="启用状态" min-width="30px">
<template slot-scope="scope">
<!-- :active-value="1" :inactive-value="0"关闭 加冒号表示数字格式 -->
<!-- active-value="1" inactive-value="0"关闭 不加冒号表示字符串 -->
<!-- 传入的modelvalue 为数字 0 或者 1 -->
<GuipSwitch :modelValue="scope.row.status" active-value="1" inactive-value="0" @change="updatePayStatus(scope.row)"></GuipSwitch>
<el-popover
placement="bottom"
title="标题"
width="200"
trigger="click"
content="这是一段内容,这是一段内容,这是一段内容,这是一段内容。">
<img slot="reference" src="@/assets/site/bind_sites.svg" :color="'#8A9099'" :hoverColor="'#006AFF'" />
</el-popover>
</template>
</el-table-column>
<el-table-column label="操作" fixed="right" min-width="30px">
<template slot-scope="scope">
<div class="flex">
<el-button @click="handleClick2(scope.row)" type="text">设置</el-button>
</div>
</template>
</el-table-column>
</GuipTable>
</el-form>
</div>
</div>
</div>
</div>
<!-- 微信 -->
<div class="register-wrap">
<div class="step3-wrap">
<div class="step3-top flex-common">
<h3 class="flex gap8">
<img src="@/assets/register/weixin.svg" alt="">
微信收款</h3>
</div>
<div>
<div class="flex-common table-wrap">
<el-form>
<GuipTable :border="true" :tableData="payList[payTypeWeixin]" :loading="tableLoading">
<el-table-column prop="short_name" fixed="left" label="公司简称"></el-table-column>
<el-table-column prop="account" label="账号"></el-table-column>
<el-table-column prop="expires_time" label="有效期" min-width="30px"></el-table-column>
<el-table-column prop="is_auto_refund" fixed="right" label="授权平台退款" min-width="30px">
<template slot-scope="scope">
<!-- :active-value="1" :inactive-value="0"关闭 加冒号表示数字格式 -->
<!-- active-value="1" inactive-value="0"关闭 不加冒号表示字符串 -->
<!-- 传入的modelvalue 为数字 0 或者 1 -->
<GuipSwitch v-if="scope.row.is_pay_public == 0" :modelValue="scope.row.is_auto_refund" active-value="1" inactive-value="0" @change="updateAutoRefund(scope.row)"></GuipSwitch>
</template>
</el-table-column>
<el-table-column prop="status" fixed="right" label="启用状态" min-width="30px">
<template slot-scope="scope">
<!-- :active-value="1" :inactive-value="0"关闭 加冒号表示数字格式 -->
<!-- active-value="1" inactive-value="0"关闭 不加冒号表示字符串 -->
<!-- 传入的modelvalue 为数字 0 或者 1 -->
<GuipSwitch :modelValue="scope.row.status" active-value="1" inactive-value="0" @change="updatePayStatus(scope.row)"></GuipSwitch>
</template>
</el-table-column>
<el-table-column label="操作" fixed="right" min-width="30px">
<template slot-scope="scope">
<div class="flex">
<el-button @click="handleClick2(scope.row)" type="text">设置</el-button>
</div>
</template>
</el-table-column>
</GuipTable>
</el-form>
</div>
</div>
</div>
</div>
<!-- 淘宝 -->
<div class="register-wrap">
<div class="step3-wrap">
<div class="step3-top flex-common">
<h3 class="flex gap8">
<img src="@/assets/register/taobao.svg" alt="">
淘宝/天猫店铺</h3>
</div>
<div>
<div class="flex-common table-wrap">
<el-form>
<GuipTable :border="true" :tableData="payList[payTypeTaoBao]" :loading="tableLoading">
<el-table-column prop="short_name" fixed="left" label="公司简称"></el-table-column>
<el-table-column prop="account" label="账号"></el-table-column>
<el-table-column prop="expires_time" label="有效期" min-width="50px">
<template slot-scope="scope">
<span v-if="scope.row.is_expired==true" class="red">授权过期</span>
<span v-else>{{ scope.row.expires_time }}</span>
</template>
</el-table-column>
<el-table-column prop="status" fixed="right" label="启用状态" min-width="30px">
<template slot-scope="scope">
<!-- :active-value="1" :inactive-value="0"关闭 加冒号表示数字格式 -->
<!-- active-value="1" inactive-value="0"关闭 不加冒号表示字符串 -->
<!-- 传入的modelvalue 为数字 0 或者 1 -->
<GuipSwitch :modelValue="scope.row.status" active-value="1" inactive-value="0" @change="updatePayStatus(scope.row)"></GuipSwitch>
</template>
</el-table-column>
<el-table-column label="操作" fixed="right" min-width="30px">
<template slot-scope="scope">
<div class="flex">
<el-button @click="handleClick2(scope.row)" type="text">设置</el-button>
</div>
</template>
</el-table-column>
</GuipTable>
</el-form>
</div>
</div>
</div>
</div>
<!-- 拼多多 -->
<div class="register-wrap">
<div class="step3-wrap">
<div class="step3-top flex-common">
<h3 class="flex gap8">
<img src="@/assets/register/pinduoduo.svg" alt="">
拼多多店铺</h3>
</div>
<div>
<div class="flex-common table-wrap">
<el-form>
<GuipTable :border="true" :tableData="payList[payTypePdd]" :loading="tableLoading">
<el-table-column prop="short_name" fixed="left" label="公司简称"></el-table-column>
<el-table-column prop="account" label="账号"></el-table-column>
<el-table-column prop="expires_time" label="有效期" min-width="50px">
<template slot-scope="scope">
<span v-if="scope.row.is_expired==true" class="red">授权过期</span>
<span v-else>{{ scope.row.expires_time }}</span>
</template>
</el-table-column>
<el-table-column prop="status" fixed="right" label="启用状态" min-width="30px">
<template slot-scope="scope">
<!-- :active-value="1" :inactive-value="0"关闭 加冒号表示数字格式 -->
<!-- active-value="1" inactive-value="0"关闭 不加冒号表示字符串 -->
<!-- 传入的modelvalue 为数字 0 或者 1 -->
<GuipSwitch :modelValue="scope.row.status" active-value="1" inactive-value="0" @change="updatePayStatus(scope.row)"></GuipSwitch>
</template>
</el-table-column>
<el-table-column label="操作" fixed="right" min-width="30px">
<template slot-scope="scope">
<div class="flex">
<el-button @click="handleClick2(scope.row)" type="text">设置</el-button>
</div>
</template>
</el-table-column>
</GuipTable>
</el-form>
</div>
</div>
</div>
</div>
<!-- 京东 -->
<div class="register-wrap">
<div class="step3-wrap">
<div class="step3-top flex-common">
<h3 class="flex gap8">
<img src="@/assets/register/jingdong.svg" alt="">
京东店铺</h3>
</div>
<div>
<div class="flex-common table-wrap">
<el-form>
<GuipTable :border="true" :tableData="payList[payTypeJingdong]" :loading="tableLoading">
<el-table-column prop="short_name" fixed="left" label="公司简称"></el-table-column>
<el-table-column prop="account" label="账号"></el-table-column>
<el-table-column prop="expires_time" label="有效期" min-width="50px">
<template slot-scope="scope">
<span v-if="scope.row.is_expired==true" class="red">授权过期</span>
<span v-else>{{ scope.row.expires_time }}</span>
</template>
</el-table-column>
<el-table-column prop="status" fixed="right" label="启用状态" min-width="30px">
<template slot-scope="scope">
<!-- :active-value="1" :inactive-value="0"关闭 加冒号表示数字格式 -->
<!-- active-value="1" inactive-value="0"关闭 不加冒号表示字符串 -->
<!-- 传入的modelvalue 为数字 0 或者 1 -->
<GuipSwitch :modelValue="scope.row.status" active-value="1" inactive-value="0" @change="updatePayStatus(scope.row)"></GuipSwitch>
</template>
</el-table-column>
<el-table-column label="操作" fixed="right" min-width="30px">
<template slot-scope="scope">
<div class="flex">
<el-button @click="handleClick2(scope.row)" type="text">设置</el-button>
</div>
</template>
</el-table-column>
</GuipTable>
</el-form>
</div>
</div>
</div>
</div>
<GuipDialog :dialogVisible="addPayDialogVisible" :title="addPayTitle" :show-close-button="false"
:show-cancel-button="showCancelButton" @confirm="addPayment" @cancel="handleCancel"
@close="handleClose" @dialogVisibleChange="dialogVisibleChange" :confirmText="addPayconfirmText" width="700px">
<!-- 自定义内容 -->
<div>
<!-- 淘宝 -->
<div class="taobaopay" v-if="addPayType==payTypeTaoBao">
<div class="beforeNotice">
<h4 class="flex"> <img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 前期准备事项</h4>
<p class="mt12 flex">
请确保使用要添加的淘宝主账号登录并授权
</p>
<p class="mt10 flex">
如未购买快乐帮手服务或已过期会跳转到购买服务页面
</p>
</div>
</div>
<!-- 微信 -->
<div class="weixinpay" v-else-if="addPayType==payTypeWeixin">
<div class="beforeNotice">
<h4 class="flex"> <img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 前期准备事项</h4>
<p class="mt12">1.申请公司微信支付<a href="https://zhic.yuque.com/staff-chwecz/xhk8nt/ggkqm3" target="_blank"><img src="@/assets/site/form_qua_ic.svg" alt="">常见问题</a> </p>
<p class="mt12 flex">
2.前往<a href="https://pay.weixin.qq.com/"
class="flex" target="_blank">
<img src="@/assets/site/form_linkActive.svg" alt="">微信商户平台</a>
</p>
<p> 在产品中心开通Native支付如需使用微信版开通JSAPI支付</p>
</div>
<el-form>
<GuipFormItem column="column" class="mb24" label="1. 公司简称">
<span class="desc" slot="formRight">请输入公司简称便于您区分账号所属公司</span>
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="company_short_name" prop="company_short_name" placeholder="6字以内">
</GuipInput>
</GuipFormItem>
<GuipFormItem column="column" class="mb24" label="2. 支付商户号(mch_id)">
<span class="desc" slot="formRight"><a href='https://pay.weixin.qq.com/' target='_blank'>微信支付平台</a>账户中心商户信息微信支付商户号</span>
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="mch_id" prop="mch_id" placeholder="请输入商户号">
</GuipInput>
</GuipFormItem>
<GuipFormItem column="column" class="mb24" label="3. 微信支付秘钥">
<span class="desc" slot="formRight"><a href='https://pay.weixin.qq.com/' target='_blank'>微信支付平台</a>账号中心账户设置API安全APIv2密钥<p class="mt10">注意支付密钥不能设置为纯数字</p></span>
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="apiv2" prop="apiv2" placeholder="请输入微信支付秘钥">
</GuipInput>
</GuipFormItem>
<GuipFormItem column="column" class="mb24" label="4. 公众号APPID">
<span class="desc" slot="formRight"><a href='https://mp.weixin.qq.com/' target='_blank'>公众平台</a>设置与开发基本配置公众号开发信息开发者IDAPPID</span>
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="appid" prop="appid" placeholder="请输入公众号APPID">
</GuipInput>
</GuipFormItem>
</el-form>
</div>
<!-- 支付宝 -->
<div class="alipay" v-if="addPayType==payTypeAlipay">
<el-tabs v-model="isPayPublic" @tab-click="handleClick">
<el-tab-pane label="我有公司,使用本公司支付宝" name="0">
<el-form>
<GuipFormItem column="column" class="mb24" label="1. 公司简称">
<span class="desc" slot="formRight">请输入公司简称便于您区分账号所属公司</span>
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="company_short_name" prop="company_short_name" placeholder="6字以内"></GuipInput>
</GuipFormItem>
<GuipFormItem column="column" class="mb24" label="2. 公司支付宝账号">
<span class="desc" slot="formRight">仅支持已签约 当面付 功能的公司支付宝</span>
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="alipay_account" prop="mch_id" placeholder="请输入公司支付宝账号"></GuipInput>
</GuipFormItem>
</el-form>
</el-tab-pane>
<el-tab-pane label="我无公司,申请平台代收款" name="1" v-if="isExistSelfSupplys===false">
<div class="beforeNotice">
<h4 class="flex"> <img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 须知</h4>
<p class="mt12">使用平台支付宝支付平台收取5%的服务费</p>
<p class="mt12 flex">使用平台支付宝支付真实姓名必须和支付宝账号实名认证姓名统一</p>
</div>
<el-form>
<GuipFormItem column="column" class="mb24" label="1. 收款人姓名">
<span class="desc" slot="formRight">请输入支付宝绑定的银行卡的持卡人姓名</span>
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="receive_payment_name" prop="company_short_name" placeholder="6字以内"></GuipInput>
</GuipFormItem>
<GuipFormItem column="column" class="mb24" label="2. 收款支付宝账号">
<span class="desc" slot="formRight">请输入有效账号</span>
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="receive_payment_account" prop="mch_id" placeholder="请输入有效收款支付宝账号"></GuipInput>
</GuipFormItem>
</el-form>
</el-tab-pane>
</el-tabs>
</div>
<!-- 拼多多 -->
<div class="pddpay" v-if="addPayType==payTypePdd">
<div class="beforeNotice">
<h4 class="flex"> <img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 前期准备事项</h4>
<p class="mt12 flex">主账号登录并授权<a :href="pddAuthUrl" class="flex" target="_blank"><img src="@/assets/site/form_linkActive.svg" alt="">去授权</a></p>
<p class="mt12 flex gray">如未购买快乐帮手服务或已过期会跳转到购买服务页面</p>
<p class="mt5 flex gray">授权成功后会进入快乐帮手烽火台复制右上角名称填入下方保存</p>
</div>
<el-form>
<GuipFormItem column="column" class="mb24" label="账号名称">
<!-- <span class="desc" slot="formRight">账号名称</span> -->
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="pdd_shop_name" prop="company_short_name" placeholder="请输入账号名称"></GuipInput>
</GuipFormItem>
</el-form>
</div>
<!-- 京东 -->
<div class="jdpay" v-if="addPayType==payTypeJingdong">
<div class="beforeNotice">
<h4 class="flex"> <img src="@/assets/site/siteSemInfo_Icon.svg" alt=""> 前期准备事项</h4>
<p class="mt12 flex">请确保使用要添加的京东主账号登录并授权</p>
<p class="mt10 flex">如未购买快乐论文检测服务服务或已过期会跳转到购买服务页面</p>
</div>
</div>
</div>
</GuipDialog>
</div>
</template>
<script>
import GuipButton from '@/components/GuipButton.vue';
import GuipFormItem from '@/components/GuipFormItem.vue';
import GuipInput from '@/components/GuipInput.vue';
import GuipSwitch from '@/components/GuipSwitch.vue';
import GuipDialog from '@/components/GuipDialog.vue';
import GuipTable from '@/components/GuipTable.vue';
//
const PAY_TYPE_TAOBAO = 0; //
const PAY_TYPE_WEIXIN = 2; //
const PAY_TYPE_ALIPAY = 3; //
const PAY_TYPE_JINGDONG = 4; //
const PAY_TYPE_PDD = 11; //
export default {
components: {
GuipButton,
GuipFormItem,
GuipInput,
GuipSwitch,
GuipDialog,
GuipTable,
},
data() {
return {
//
payTypeTaoBao: PAY_TYPE_TAOBAO,
payTypeWeixin: PAY_TYPE_WEIXIN,
payTypeAlipay: PAY_TYPE_ALIPAY,
payTypeJingdong: PAY_TYPE_JINGDONG,
payTypePdd: PAY_TYPE_PDD,
// AUTH
token: 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE3NTAwNTM3MjQsIm5iZiI6MTc1MDA1MzcyNCwiZXhwIjoxNzUyNjQ1NzI0LCJ1c2VyIjoic3VidXNlciIsImxvZ2luX3R5cGUiOjAsImFpZCI6IjEifQ.xyIqBLelB-k6jCifgRevBJTyg_Qrm6m1e4OcHhOpepU',
//
addablePays: [],
//
payList: [],
//
tableLoading: false,
//
addPayDialogVisible: false,
//
showCancelButton: true,
//
showCloseButton: true,
//
addPayTitle: '',
//
addPayType: '',
//
addPayconfirmText: '确定',
// url
taobaoAuthUrl: '',
//
company_short_name: '',
//
mch_id: '',
//
apiv2: '',
// APPID
appid: '',
//
alipay_account: '',
//
isExistSelfSupplys: false,
//
receive_payment_account: '',
//
receive_payment_name: '',
// 0 1
isPayPublic: '0',
// url
pddAuthUrl: '',
//
pdd_shop_name: '',
// url
jdAuthUrl: '',
}
},
computed: {
},
mounted() {
this.getAddablePays()
this.getPayList()
},
methods: {
//
getAddablePays() {
this.$http('POST', '/agentnew/ajax_get_addable_pays', {
gid: this.gid,
},{
headers:{
'Auth': this.token
}
}).then(response => {
this.tableLoading = false
this.$nextTick(() => {
this.addablePays = response.data
if(response.data[PAY_TYPE_TAOBAO]) {
this.taobaoAuthUrl = response.data[PAY_TYPE_TAOBAO].authurl
}
if (response.data[PAY_TYPE_ALIPAY]) {
this.isExistSelfSupplys = response.data[PAY_TYPE_ALIPAY].is_exist_self_supplys
}
if (response.data[PAY_TYPE_PDD]) {
this.pddAuthUrl = response.data[PAY_TYPE_PDD].authurl
}
if (response.data[PAY_TYPE_JINGDONG]) {
this.jdAuthUrl = response.data[PAY_TYPE_JINGDONG].authurl
}
})
}).catch(error => {
console.error(error, 'error')
})
},
//
getPayList() {
this.tableLoading = true
const that = this
that.payList = []
this.$http('POST', '/agentnew/ajax_get_pay_list', {
gid: this.gid,
},{
headers:{
'Auth': this.token
}
}).then(response => {
this.tableLoading = false
this.$nextTick(() => {
that.payList = response.data.paylist
})
}).catch(error => {
console.error(error, 'error')
})
},
updatePayStatus(row) {
this.$http('POST', '/agentnew/ajax_update_pay_status', {
payid: row.payid,
status: row.status==1 ? 0 : 1,
}, {
headers: {
'Auth': this.token
}
}).then(response => {
this.$nextTick(() => {
if (response.status) {
this.$Message.success(response.info);
} else {
this.$Message.error(response.info);
}
})
}).catch(error => {
console.error(error, 'error')
})
},
updateAutoRefund(row) {
this.$http('POST', '/agentnew/ajax_setting_auto_refund', {
payid: row.payid,
status: row.status==1 ? 0 : 1,
}, {
headers: {
'Auth': this.token
}
}).then(response => {
this.$nextTick(() => {
if (response.status) {
this.$Message.success(response.info);
} else {
this.$Message.error(response.info);
}
})
}).catch(error => {
console.error(error, 'error')
})
},
// ---start
showAddPaymentMethodDialog(type, type_desc) {
console.log(type, 'type');
this.addPayDialogVisible = true;
this.addPayTitle = '添加' + type_desc;
this.addPayType = type;
if (type == PAY_TYPE_TAOBAO || type == PAY_TYPE_JINGDONG) {
this.addPayconfirmText = '去授权';
}
},
//
addPayment() {
if (this.addPayType == PAY_TYPE_TAOBAO) {
window.open(this.taobaoAuthUrl, '_blank');
} else if (this.addPayType == PAY_TYPE_WEIXIN) {
this.$http('POST', '/agentnew/ajax_add_weixinpay', {
company_short_name: this.company_short_name,
mch_id: this.mch_id,
apiv2: this.apiv2,
appid: this.appid
}, {
headers: {
'Auth': this.token
}
}).then(response => {
this.$nextTick(() => {
if (response.status) {
this.$Message.success(response.info);
this.getPayList();
} else {
this.$Message.error(response.info);
}
})
}).catch(error => {
console.error(error, 'error')
})
} else if (this.addPayType == PAY_TYPE_ALIPAY) {
this.$http('POST', '/agentnew/ajax_add_alipay', {
company_short_name: this.company_short_name,
alipay_account: this.alipay_account,
is_pay_public: this.isPayPublic,
receive_payment_account: this.receive_payment_account,
receive_payment_name: this.receive_payment_name
}, {
headers: {
'Auth': this.token
}
}).then(response => {
this.$nextTick(() => {
if (response.status) {
if (this.isPayPublic == 1) {
this.$Message.success(response.info);
this.getPayList();
this.receive_payment_account = ''
this.receive_payment_name = ''
} else {
window.open(response.data.authurl, '_blank');
}
} else {
this.$Message.error(response.info);
}
})
}).catch(error => {
console.error(error, 'error')
})
} else if (this.addPayType == PAY_TYPE_PDD) {
this.$http('POST', '/agentnew/ajax_add_pddpay', {
shop_name: this.pdd_shop_name,
}, {
headers: {
'Auth': this.token
}
}).then(response => {
this.$nextTick(() => {
if (response.status) {
this.$Message.success(response.info);
this.getPayList();
this.pdd_shop_name = ''
} else {
this.$Message.error(response.info);
}
})
}).catch(error => {
console.error(error, 'error')
})
} else if (this.addPayType == PAY_TYPE_JINGDONG) {
window.open(this.jdAuthUrl, '_blank');
}
this.addPayDialogVisible = false;
},
//
handleCancel() {
this.addPayDialogVisible = false;
},
//
handleClose() {
this.addPayDialogVisible = false;
},
dialogVisibleChange(data) {
console.log(data, 'data098908090');
},
// ---end
handleClick(tab, event) {
console.log(tab, event);
}
},
};
</script>
<style lang="scss" scoped>
.pageheader {
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
margin-bottom: 10px;
}
.pageheader-title {
flex: 1;
min-width: 300px;
}
.pageheader-title h3 {
display: flex;
align-items: center;
font-size: 18px;
font-weight: bold;
line-height: normal;
letter-spacing: 0.08em;
color: #1E2226;
margin-top:8px;
}
.button-group {
display: flex;
flex-wrap: wrap;
gap: 3px;
}
.red {
color:#FF4D4F !important;
}
.gray {
color:#8A9099 !important;
}
a {
text-decoration: none;
color: #006AFF;
}
.el-table {
min-height: auto !important;
}
.beforeNotice {
h4 {
margin: 0;
gap: 8px;
}
margin-bottom: 18px;
text-align: left;
box-sizing: border-box;
padding: 20px 14px;
border-radius: 4px;
/* middle/middle_blue_1 */
background: #F2F7FF;
/* middle/middle_blue_3 */
border: 1px solid #BFDAFF;
div {
margin-top: 2px;
padding-left: 23px;
p {
color: #8A9099;
}
}
p {
color: #1E2226;
i {
font-style: normal;
}
&:last-child {
display: flex;
align-items: stretch;
b {
font-weight: normal;
color: #8A9099;
display: inline-flex;
img {
margin-left: 4px;
}
}
}
}
a {
text-decoration: none;
color: #006AFF;
margin-right: 10px;
img {
margin-left: 5px;
margin-right: 5px;
}
}
}
::v-deep .custom-popover {
position: fixed !important;
// max-height: 290px;
// overflow-y: auto;
margin-top: 0 !important;
margin-left: 0 !important;
transform: none !important;
}
.register-wrap {
display: flex;
flex-direction: column;
height: 100%;
.custom-icon {
width: 24px;
height: 24px;
}
.register-top {
display: flex;
justify-content: space-between;
// height: 72px;
align-items: center;
padding: 20px 40px 20px 110px;
background: linear-gradient(270deg, #F6EEF7 3%, #EDE9FB 97%);
color: #23242B;
letter-spacing: 0.08em;
line-height: 32px;
.register-top-left {
display: flex;
align-items: center;
.register-top-left img {
margin-right: 12px;
}
}
}
.step3-wrap {
flex: 1;
.step3-top {
display: flex;
justify-content: space-between;
padding-bottom: 0;
align-items: end;
h3{
margin: 0;
}
}
}
}
.table-wrap {
span {
color: #1E2226;
}
.edit_icon {
display: none;
transition: all .3s;
margin-left: 8px;
}
.el-table__row:hover {
.edit_icon {
display: block;
transition: all .3s;
}
}
}
.green,
.blue {
width: 80px;
box-sizing: border-box;
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
color: #0DAF49 !important;
letter-spacing: 0.08em;
/* 基本 */
width: 80px;
border-radius: 4px;
background: rgba(239, 255, 224, 0.5);
box-sizing: border-box;
border: 1px solid rgba(0, 194, 97, 0.6);
margin-right: 8px;
}
.blue {
background: #F2F7FF;
border: 1px solid #BFDAFF;
color: #006AFF !important;
}
.step-wrap {
display: flex;
justify-content: space-between;
align-items: center;
padding: 24px 0 0 0;
.step-item {
align-items: center;
display: flex;
span {
color: #1E2226;
letter-spacing: 0.08em;
}
.custom-icon {
margin-right: 12px;
}
}
.checked span {
font-size: 16px;
font-weight: bold;
color: #006AFF !important;
transition: all .3s;
}
.success span {
font-size: 16px;
font-weight: normal;
color: #006AFF !important;
transition: all .3s;
}
.step-line {
flex: 1;
margin: 0 32px;
border-bottom: 1px solid #DFE2E6;
}
.step_active-line {
transition: all .3s;
border-bottom: 1px solid #006AFF;
}
}
.step-desc {
padding-top: 6px;
display: flex;
justify-content: space-between;
padding-bottom: 24px;
color: #8A9099;
span {
padding-left: 36px;
}
}
</style>

1
src/views/agent/siteList.vue

@ -113,7 +113,6 @@ import GuipSelect from '@/components/GuipSelect.vue';
import GuipButton from '@/components/GuipButton.vue'; import GuipButton from '@/components/GuipButton.vue';
import GuipInput from '@/components/GuipInput.vue'; import GuipInput from '@/components/GuipInput.vue';
import GuipDialog from '@/components/GuipDialog.vue'; import GuipDialog from '@/components/GuipDialog.vue';
// import store from '@/store';
export default { export default {
name: 'siteList', name: 'siteList',

Loading…
Cancel
Save