main #34

Merged
charles merged 191 commits from main into prod 2025-11-19 16:18:39 +08:00
3 changed files with 69 additions and 39 deletions
Showing only changes of commit 7f03d56548 - Show all commits

View File

@ -772,7 +772,7 @@ export const asyncRoutes = [
}, },
{ {
path: "unsubscribe", path: "unsubscribe",
// 不要写 component
component: () => import("@/views/customer/unsubscribe"), component: () => import("@/views/customer/unsubscribe"),
name: "Unsubscribe", name: "Unsubscribe",
meta: { meta: {

View File

@ -2,18 +2,39 @@
<div class="myOranization"> <div class="myOranization">
<el-card> <el-card>
<div class="oranizationInfo"> <div class="oranizationInfo">
<span>机构名称:{{ orgList.orgname }}</span> <!-- 机构名称 -->
<span>联系人:{{ orgList.contactor }}</span> <div class="label-box">
<span>联系人电话:{{ orgList.contactor_phone }}</span> <span class="label">机构名称:</span>
<span>地址:{{ orgList.address }}</span> <span>{{ orgList.orgname }}</span>
<span>主营业务描述:{{ orgList.main_business }}</span> </div>
<!-- 联系人 -->
<div class="label-box">
<span class="label">联系人:</span>
<span>{{ orgList.contactor }}</span>
</div>
<!-- 联系人电话 -->
<div class="label-box">
<span class="label">联系人电话:</span>
<span>{{ orgList.contactor_phone }}</span>
</div>
<!-- 地址 -->
<div class="label-box">
<span class="label">地址:</span>
<span>{{ orgList.address }}</span>
</div>
<!-- 主营业务描述 -->
<div class="label-box">
<span class="label">主营业务描述:</span>
<span>{{ orgList.main_business }}</span>
</div>
</div> </div>
</el-card> </el-card>
<el-card> <el-card>
<div class="main-content" style="margin-top: 8px;display:flex;"> <div class="main-content" style="margin-top: 8px;display:flex;">
<el-select v-model="searchValue" filterable placeholder="请选择账户" @change="selectSearch" @input="input" <el-select v-model="searchValue" filterable placeholder="请选择账户" @change="selectSearch" @input="input" clearable
clearable size="small"> size="small">
<el-option v-for="item in tableData" :key="item.id" :label="item.username" :value="item.id"> <el-option v-for="item in tableData" :key="item.id" :label="item.username" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
@ -38,7 +59,7 @@
<template slot-scope="scope"> <template slot-scope="scope">
<!-- <el-button size="small" type="danger" @click="outOfService(scope.row)" :disabled="scope.row.user_status==1||scope.row.user_status==2">停用</el-button> --> <!-- <el-button size="small" type="danger" @click="outOfService(scope.row)" :disabled="scope.row.user_status==1||scope.row.user_status==2">停用</el-button> -->
<!-- <el-button size="small" type="success" @click="recover(scope.row)" :disabled="scope.row.user_status==0||scope.row.user_status==2">恢复</el-button> --> <!-- <el-button size="small" type="success" @click="recover(scope.row)" :disabled="scope.row.user_status==0||scope.row.user_status==2">恢复</el-button> -->
<el-button size="small" type="warning" @click="signOut(scope.row)" :disabled="scope.row.user_status==2"> <el-button size="small" type="warning" @click="signOut(scope.row)" :disabled="scope.row.user_status == 2">
注销 注销
</el-button> </el-button>
</template> </template>
@ -46,10 +67,10 @@
<el-table-column align="center" label="操作" width="260px"> <el-table-column align="center" label="操作" width="260px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="small" type="success" @click="addRole(scope.row)" <el-button size="small" type="success" @click="addRole(scope.row)"
:disabled="scope.row.user_status==1||scope.row.user_status==2" class="addBtn">添加角色 :disabled="scope.row.user_status == 1 || scope.row.user_status == 2" class="addBtn">添加角色
</el-button> </el-button>
<el-button size="small" type="primary" @click="editNewUser(scope.row)" <el-button size="small" type="primary" @click="editNewUser(scope.row)"
:disabled="scope.row.user_status==1||scope.row.user_status==2">编辑 :disabled="scope.row.user_status == 1 || scope.row.user_status == 2">编辑
</el-button> </el-button>
<!-- <el-button size="small" type="danger" @click="delNewUser(scope.row)" :disabled="scope.row.user_status==1||scope.row.user_status==2">删除</el-button> --> <!-- <el-button size="small" type="danger" @click="delNewUser(scope.row)" :disabled="scope.row.user_status==1||scope.row.user_status==2">删除</el-button> -->
</template> </template>
@ -59,28 +80,28 @@
<!-- 新增/编辑用户 --> <!-- 新增/编辑用户 -->
<el-dialog :title="isEdit ? '编辑用户' : '新增用户'" :visible.sync="dialogVisible" width="30%" class="myDialog" <el-dialog :title="isEdit ? '编辑用户' : '新增用户'" :visible.sync="dialogVisible" width="30%" class="myDialog"
:append-to-body="true" custom-class="addPeople"> :append-to-body="true" custom-class="addPeople">
<el-form ref="form" :model="form" label-width="100px" :rules="rules"> <el-form ref="form" :model="form" label-width="100px" :rules="rules">
<el-form-item label="用户名称:" prop="username" v-if="!isEdit"> <el-form-item label="用户名称:" prop="username" v-if="!isEdit">
<el-input v-model="form.username"/> <el-input v-model="form.username" />
</el-form-item> </el-form-item>
<el-form-item label="昵称:" prop="nick_name"> <el-form-item label="昵称:" prop="nick_name">
<el-input v-model="form.nick_name"/> <el-input v-model="form.nick_name" />
</el-form-item> </el-form-item>
<el-form-item label="密码:" prop="password" v-if="!isEdit"> <el-form-item label="密码:" prop="password" v-if="!isEdit">
<el-input v-model="form.password" placeholder="请输入密码" show-password/> <el-input v-model="form.password" placeholder="请输入密码" show-password />
</el-form-item> </el-form-item>
<el-form-item label="确认密码:" prop="confirmPassword" v-if="!isEdit"> <el-form-item label="确认密码:" prop="confirmPassword" v-if="!isEdit">
<el-input v-model="form.confirmPassword" placeholder="请输入确认密码" show-password/> <el-input v-model="form.confirmPassword" placeholder="请输入确认密码" show-password />
</el-form-item> </el-form-item>
<el-form-item label="地址:" prop="address"> <el-form-item label="地址:" prop="address">
<el-input v-model="form.address"/> <el-input v-model="form.address" />
</el-form-item> </el-form-item>
<el-form-item label="手机号:" prop="mobile"> <el-form-item label="手机号:" prop="mobile">
<el-input v-model="form.mobile"/> <el-input v-model="form.mobile" />
</el-form-item> </el-form-item>
<el-form-item label="邮箱:" prop="email"> <el-form-item label="邮箱:" prop="email">
<el-input v-model="form.email"/> <el-input v-model="form.email" />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button size="small" type="primary" @click="onSubmit('form')"> </el-button> <el-button size="small" type="primary" @click="onSubmit('form')"> </el-button>
@ -92,10 +113,10 @@
<!-- 添加角色 --> <!-- 添加角色 -->
<el-dialog :title="'请为' + this.titleName + '添加角色'" :visible.sync="isShow" width="30%" <el-dialog :title="'请为' + this.titleName + '添加角色'" :visible.sync="isShow" width="30%"
:before-close="addRolehandleClose" class="myDialog2" :append-to-body="true" custom-class="addJueSe"> :before-close="addRolehandleClose" class="myDialog2" :append-to-body="true" custom-class="addJueSe">
<div class="roleList"> <div class="roleList">
<Tree :tree-data="treeData" ref="tree" node-key="id" id="roleTree" :default-props="defaultProps" <Tree :tree-data="treeData" ref="tree" node-key="id" id="roleTree" :default-props="defaultProps"
:showCheckbox="true"></Tree> :showCheckbox="true"></Tree>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button size="small" @click="cancel()"> </el-button> <el-button size="small" @click="cancel()"> </el-button>
@ -129,15 +150,15 @@ export default {
isShow: false, isShow: false,
searchValue: '', searchValue: '',
rules: { rules: {
username: [{required: true, message: "请输入用户名称", trigger: "blur"}], username: [{ required: true, message: "请输入用户名称", trigger: "blur" }],
password: [{required: true, message: "请输入密码", trigger: "blur"}], password: [{ required: true, message: "请输入密码", trigger: "blur" }],
confirmPassword: [{required: true, message: "请再次输入密码", trigger: "blur"}], confirmPassword: [{ required: true, message: "请再次输入密码", trigger: "blur" }],
address: [{required: true, message: "请输入地址", trigger: "blur"}], address: [{ required: true, message: "请输入地址", trigger: "blur" }],
nick_name: [{required: true, message: "请输入昵称", trigger: "blur"}], nick_name: [{ required: true, message: "请输入昵称", trigger: "blur" }],
mobile: [{pattern: /^1(3\d|4[5-9]|5[0-35-9]|6[567]|7[0-8]|8\d|9[0-35-9])\d{8}$/, message: "请输入有效的手机号"}, mobile: [{ pattern: /^1(3\d|4[5-9]|5[0-35-9]|6[567]|7[0-8]|8\d|9[0-35-9])\d{8}$/, message: "请输入有效的手机号" },
{required: true, trigger: "blur", message: "请输入手机号"}], { required: true, trigger: "blur", message: "请输入手机号" }],
email: [{pattern: /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/, message: "请输入有效的邮箱"}, email: [{ pattern: /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/, message: "请输入有效的邮箱" },
{required: true, trigger: "blur", message: "请输入邮箱"}], { required: true, trigger: "blur", message: "请输入邮箱" }],
}, },
treeData: [], treeData: [],
tableData: [], tableData: [],
@ -192,7 +213,7 @@ export default {
type: "warning", type: "warning",
}) })
.then(() => { .then(() => {
editUserAPI({id: row.id, user_status: 1}).then((res) => { editUserAPI({ id: row.id, user_status: 1 }).then((res) => {
if (res.status == true) { if (res.status == true) {
this.$message({ this.$message({
message: "停用成功", message: "停用成功",
@ -221,7 +242,7 @@ export default {
type: "warning", type: "warning",
}) })
.then(() => { .then(() => {
editUserAPI({id: row.id, user_status: 0}).then((res) => { editUserAPI({ id: row.id, user_status: 0 }).then((res) => {
if (res.status == true) { if (res.status == true) {
this.$message({ this.$message({
message: "恢复成功", message: "恢复成功",
@ -250,7 +271,7 @@ export default {
type: "warning", type: "warning",
}) })
.then(() => { .then(() => {
editUserAPI({id: row.id, user_status: 2}).then((res) => { editUserAPI({ id: row.id, user_status: 2 }).then((res) => {
if (res.status == true) { if (res.status == true) {
this.$message({ this.$message({
message: "注销成功", message: "注销成功",
@ -320,7 +341,7 @@ export default {
this.isShow = true; this.isShow = true;
this.userid = row.id; this.userid = row.id;
this.titleName = row.username; this.titleName = row.username;
getOrgroleAPI({org_type: this.org_type}).then((res) => { //org_type getOrgroleAPI({ org_type: this.org_type }).then((res) => { //org_type
this.treeData = res.data; this.treeData = res.data;
}); });
this.getuserroles(); this.getuserroles();
@ -349,7 +370,7 @@ export default {
}); });
}, },
getuserroles() {// getuserroles() {//
getuserrolesAPI({userid: this.userid}).then((res) => { getuserrolesAPI({ userid: this.userid }).then((res) => {
if (res) { if (res) {
this.treeNode = res.data.map((item) => { this.treeNode = res.data.map((item) => {
if (item.roleid.role == "管理员") { if (item.roleid.role == "管理员") {
@ -401,7 +422,7 @@ export default {
type: "warning", type: "warning",
}) })
.then(() => { .then(() => {
delUserAPI({id: row.id}).then((res) => { delUserAPI({ id: row.id }).then((res) => {
if (res.status == true) { if (res.status == true) {
this.$message({ this.$message({
message: "用户删除成功", message: "用户删除成功",
@ -563,12 +584,22 @@ export default {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
} }
.label-box{
display: flex;
width: 100%;
}
.label{
display: block;
width: 120px;
text-align: right;
margin-right: 10px;
margin-bottom: 6px;
}
</style> </style>
<style> <style>
@media screen and (max-width: 760px) { @media screen and (max-width: 760px) {
.addPeople { .addPeople {
//border:10px solid red; /* border:10px solid red; */
width: 100vw !important; width: 100vw !important;
} }

View File

@ -13,7 +13,6 @@
<style lang="less" scoped> <style lang="less" scoped>
.box{ .box{
padding: 10px; padding: 10px;
} }
.baidu-style{ .baidu-style{
width: 100%; width: 100%;