【类 型】:feat

【原  因】:添加商铺的时候  同时添加一个和商铺绑定的 不可降权的管理员
【过  程】:添加完商铺 添加管理员  这里采用 事务回滚
【影  响】:
This commit is contained in:
air 2025-06-30 17:52:15 +08:00
parent bb032a81c2
commit 67ba91620b
5 changed files with 42 additions and 7 deletions

0
.tgitconfig Normal file
View File

View File

@ -204,7 +204,10 @@ const store = new Vuex.Store({
* @return {*} 服务器返回值 * @return {*} 服务器返回值
*/ */
async fetchAddShop ({ dispatch }, form) { async fetchAddShop ({ dispatch }, form) {
console.log('fetchAddShop', form)
const params = new URLSearchParams() const params = new URLSearchParams()
params.append('admin_name', form.admin_name)
params.append('pwd', form.pwd)
params.append('name', form.name) params.append('name', form.name)
params.append('waiter', form.waiter) params.append('waiter', form.waiter)
params.append('service_wx', form.service_wx) params.append('service_wx', form.service_wx)
@ -223,6 +226,7 @@ const store = new Vuex.Store({
const res = await api.post('addShop', params, 'Admin') const res = await api.post('addShop', params, 'Admin')
if (res.data.status === 1) { if (res.data.status === 1) {
await dispatch('fetchShopList')// 刷新商铺列表 await dispatch('fetchShopList')// 刷新商铺列表
await dispatch('fetchAdminList')// 刷新用户列表
Message.success(res.data.msg) Message.success(res.data.msg)
} else { } else {
Message.error(res.data.msg) Message.error(res.data.msg)

View File

@ -134,7 +134,7 @@ label {
.el-form-item__label { .el-form-item__label {
font-style: italic; font-style: italic;
font-weight: bold; font-weight: bold;
color: #303133 !important; color: #606266 !important;
} }
/* 当屏幕宽度小于等于480px时 */ /* 当屏幕宽度小于等于480px时 */

View File

@ -13,7 +13,12 @@
<el-form label-width="120px"> <el-form label-width="120px">
<!-- 语言设置 --> <!-- 语言设置 -->
<el-form-item label="语言设置"> <div class="p-b-5">
<el-divider content-position="left">
<font class="fb f-s-18 normalFontColor">语言设置</font>
</el-divider>
</div>
<el-form-item label="设置">
<el-radio-group v-model="currentLang" @change="changeLang"> <el-radio-group v-model="currentLang" @change="changeLang">
<el-radio label="zh-CN">简体中文</el-radio> <el-radio label="zh-CN">简体中文</el-radio>
<!-- 你可以继续添加更多语言 --> <!-- 你可以继续添加更多语言 -->
@ -21,8 +26,13 @@
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<!-- 添加删除系统模块 --> <!-- 显示隐藏系统模块 -->
<el-form-item label="增删系统模块"> <div class="p-t-10 p-b-5">
<el-divider content-position="left">
<font class="fb f-s-18 normalFontColor">显示隐藏系统模块</font>
</el-divider>
</div>
<el-form-item label="显示模块">
<el-checkbox-group v-model="selectedModules" @change="handleChange"> <el-checkbox-group v-model="selectedModules" @change="handleChange">
<el-checkbox v-for="item in moduleOptions" :key="item.value" :label="item.value"> <el-checkbox v-for="item in moduleOptions" :key="item.value" :label="item.value">
{{ item.label }} {{ item.label }}

View File

@ -13,7 +13,24 @@
<el-main class="border p-20 m-b-20"> <el-main class="border p-20 m-b-20">
<el-form ref="form" :model="form" label-width="120px" <el-form ref="form" :model="form" label-width="120px"
:label-position="$store.state.app.isWideScreen ? 'top' : 'right'"> :label-position="$store.state.app.isWideScreen ? 'top' : 'right'">
<!-- 用户select选项 --> <!-- 添加关联初始账号 -->
<div class="p-b-10">
<el-divider content-position="left" v-if="pageState === 'add'">
<font class="fb f-s-18 normalFontColor">关联初始账号</font>
</el-divider>
</div>
<el-form-item label="账号" v-if="pageState === 'add'">
<el-input v-model="form.admin_name" placeholder="绑定店铺的初始账号。PS:此账号为管理员身份且不可变更" />
</el-form-item>
<el-form-item label="初始密码" class="m-b-20" v-if="pageState === 'add'">
<el-input show-password v-model="form.pwd" placeholder="'密码'" />
</el-form-item>
<!-- 添加店铺 -->
<div class="p-t-10 p-b-5" v-if="pageState === 'add'">
<el-divider content-position="left">
<font class="fb f-s-18 normalFontColor">店铺参数</font>
</el-divider>
</div>
<el-form-item v-if="pageState === 'edit'" label="商铺选择"> <el-form-item v-if="pageState === 'edit'" label="商铺选择">
<SelectionShopId v-model="form.shop_id" /> <SelectionShopId v-model="form.shop_id" />
</el-form-item> </el-form-item>
@ -67,8 +84,8 @@
</el-form-item> </el-form-item>
<!-- 退款订单备注预设 --> <!-- 退款订单备注预设 -->
<el-form-item label="退款备注预设"> <el-form-item label="退款备注预设">
<el-tag :key="index" v-for="(tag, index) in form.refund_remark_presup" closable :disable-transitions="false" <el-tag :key="index" v-for="(tag, index) in form.refund_remark_presup" closable
@close="handleCloseTagRefund(tag)"> :disable-transitions="false" @close="handleCloseTagRefund(tag)">
{{ tag }} {{ tag }}
</el-tag> </el-tag>
<span class="" v-if="inputTagVisibleRefund"> <span class="" v-if="inputTagVisibleRefund">
@ -125,6 +142,8 @@ export default {
action: this.$store.state.settings.baseURL + this.$store.state.settings.apiAdminPath + 'upImgFile', action: this.$store.state.settings.baseURL + this.$store.state.settings.apiAdminPath + 'upImgFile',
myheader: { token: this.$store.state.user.token }, myheader: { token: this.$store.state.user.token },
form: { form: {
admin_name: '', //
pwd: '', //
shop_id: '', shop_id: '',
name: '', name: '',
waiter: '', waiter: '',
@ -238,6 +257,8 @@ export default {
if (data.desc == null) { if (data.desc == null) {
data.desc = '' data.desc = ''
} }
this.admin_name = data.admin_name || ''
this.pwd = data.pwd || ''
this.form.name = data.name this.form.name = data.name
this.form.waiter = data.waiter this.form.waiter = data.waiter
this.form.service_wx = data.service_wx this.form.service_wx = data.service_wx