init: import production code mss.nahaichuan.com (exclude Runtime/Uploads/backups/logs)

这个提交包含在:
Developer
2026-10-30 10:18:50 +08:00
当前提交 1f3e0ce2f6
共有 9291 个文件被更改,包括 1776674 次插入 和 0 次删除

查看文件

@@ -0,0 +1,213 @@
<!--[1.5.22]-->
<style>
.el-pagination {
padding: 8px;
}
span[type='text'] {
font-size: 12px;
color: #aaa;
cursor: pointer;
}
span[type='text']::selection {
background-color: transparent;
}
span[type='text']:active {
color: #999;
}
</style>
<div class="goodsBox" id="app" v-cloak>
<if condition="$authArr['userAdd'] eq true">
<div style="margin-bottom:10px;">
<el-button type="primary" @click="addUser" size="small">新增用户</el-button>
</div>
</if>
<div style="border: 1px solid #e6e6e6;">
<el-table border :data="usersList" style="width: 100%;border: none;">
<el-table-column type="index" label="序号" width="50"></el-table-column>
<el-table-column prop="login_name" label="登录账号" show-overflow-tooltip></el-table-column>
<el-table-column prop="name" label="真实名称" show-overflow-tooltip></el-table-column>
<el-table-column prop="role_name" label="用户角色" show-overflow-tooltip></el-table-column>
<el-table-column prop="add_time" label="添加时间" show-overflow-tooltip></el-table-column>
<el-table-column label="状态">
<template slot-scope="scope">
<el-switch
<if condition="$authArr['changeStatus'] neq true">disabled </if>
v-model="scope.row.status"
active-value="1"
inactive-value="2"
@change="changeStatus(scope.row.id)">
</el-switch>
</template>
</el-table-column>
<el-table-column fixed="right" label="操作" width="130" style="border-right: none;">
<template slot-scope="scope">
<if condition="$authArr['userAdd'] eq true">
<el-button type="text" size="small" @click="usersEdit(scope.$index)">编辑</el-button>
</if>
<if condition="$authArr['usersDel'] eq true">
<span @click="deleteRoles(scope.$index)" type="text">删除</span>
</if>
</template>
</el-table-column>
</el-table>
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 25, 30, 35, 40, 45, 50]"
:page-size="100"
layout="total, sizes, prev, pager, next, jumper"
:total="len">
</el-pagination>
</div>
</div>
<script type="text/javascript">
layui.use(['form', 'table'], function () {
// 日期
var table = layui.table;
var form = layui.form;
// $('#addUser').click(function () {
// layer.open({
// type: 2,
// area: ['720px', '500px'], //宽高
// content: "{:U('userAdd')}",
// end: function () {
// MenuApp.refreshWindow();
// }
// });
// });
var app = new Vue({
el: '#app',
data: function () {
return {
usersList: [],
len: 0,
currentPage: 1,
currentLimit: 10,
}
},
methods: {
addUser: function () {
layer.open({
title: '添加用户',
area: ['calc(100% - 160px)', 'calc(100% - 65px)'],
offset: 'rb',
type: 2,
shade: 0,
content: "{:U('userAdd')}",
end: function () {
MenuApp.refreshWindow();
}
});
},
//删除角色
deleteRoles: function (index) {
var that = this;
this.$confirm('删除后用户可能产生变动,请谨慎操作!确定要删除吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'info'
}).then(() => {
$.post("{:U('Retail/StoreJurUsers/usersDel')}", {
index: that.usersList[index].id
}, function (res) {
if (res.status == 1) {
that.$message({
type: 'success',
message: res.msg,
duration: 1000
});
var usersList = JSON.parse(JSON.stringify(that.usersList));
usersList.splice(index, 1);
that.usersList = [];
that.usersList = usersList;
that.len--;
} else {
that.$message({
type: 'warning',
message: res.msg
});
}
})
}).catch(() => {
});
},
handleSizeChange(val) {
this.currentLimit = val;//切换每页数量
this.currentPage = 1;
this.getData();
},
handleCurrentChange(val) {
this.currentPage = val;
this.getData();//切换页数
},
//获取列表
getData: function () {
var that = this;
$.post("{:U('getUser')}", {
page: this.currentPage,
limit: this.currentLimit
}, function (res) {
if (res.status == 1) {
that.usersList = [];
that.usersList = res.data;
that.len = res.count;
} else {
that.$message({
message: res.msg,
type: 'warning',
duration: 1000
});
}
})
},
//修改状态
changeStatus: function (index) {
var that = this;
$.post("{:U('changeStatus')}", {
id: index
}, function (res) {
if (res.status == 1) {
that.$message({
type: 'success',
message: res.msg,
duration: 1000
});
} else {
that.$message({
type: 'warning',
message: res.msg
});
}
})
},
usersEdit: function (index) {
var that = this;
layer.open({
title: '添加用户',
area: ['calc(100% - 160px)', 'calc(100% - 65px)'],
offset: 'rb',
type: 2,
shade: 0,
content: "{:U('userAdd')}?id=" + that.usersList[index].id,
end: function () {
MenuApp.refreshWindow();
}
});
}
},
mounted: function () {
},
created: function () {
this.getData();
}
});
})
</script>

查看文件

@@ -0,0 +1,242 @@
<!doctype html>
<html>
<!--[1.1.96]-->
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="stylesheet" type="text/css" href="__PUBLIC__/vue/element-ui.css">
<link rel="stylesheet" type="text/css" href="__PUBLIC__/Retail/css/myscroll.css"/>
<title>新增用户</title>
<style>
[v-cloak]{
display: none;
}
.check{
display: inline-block;
vertical-align: middle;
position: relative;
padding-left: 20px;
line-height: 16px;
cursor: pointer;
}
.check::selection{
background-color: transparent;
}
.check:before {
content: '';
position: absolute;
border: 1px solid #ddd;
width: 16px;
height: 16px;
z-index: 3;
background-color: white;
cursor: pointer;
box-sizing: border-box;
border-radius: 2px;
transition: 0.3s;
font-size: 12px;
color: #333;
top: 0;
left: 0;
}
.isChecked:before{
border-color: #409eff;
background-color: #409eff;
}
.isChecked:after {
content: '';
width: 4px;
height: 9px;
border-bottom: 2px solid white;
border-right: 2px solid white;
transform: rotateZ(45deg);
position: absolute;
top: 1px;
left: 5px;
border-radius: 2px;
z-index: 4;
}
</style>
</head>
<body style="padding: 50px">
<div id="app" v-cloak>
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="80px">
<el-form-item label="登录账号" prop="login_name">
<el-input v-model="ruleForm.login_name" name="dsfkdljsf" type="text" auto-complete="off"></el-input>
</el-form-item>
<el-form-item label="登录密码" prop="password">
<el-input v-model="ruleForm.password" name= 'edojdsg' type="password" auto-complete="off"></el-input>
</el-form-item>
<el-form-item label="确认密码" prop="repassword">
<el-input v-model="ruleForm.repassword" type="password" auto-complete="off"></el-input>
</el-form-item>
<el-form-item label="登录姓名" prop="name">
<el-input v-model="ruleForm.name"></el-input>
</el-form-item>
<el-form-item label="选择角色" prop="role">
<template>
<el-select v-model="ruleForm.role" placeholder="请选择">
<el-option
v-for="item in roles"
:label="item.role_name"
:value="item.id">
</el-option>
</el-select>
</template>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="onSubmit('ruleForm')">立即创建</el-button>
<el-button @click="cancel">取消</el-button>
</el-form-item>
</el-form>
</div>
</body>
<script src="__PUBLIC__/jquery/js/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="__PUBLIC__/vue/js/vue2.5.16.js"></script>
<script type="text/javascript" src="__PUBLIC__/vue/element-ui.js"></script>
<script>
var flag = "{$default['id']}" > 0?false:true;
var app = new Vue({
el: '#app',
data: {
roles: {$rolesList},
id: "{$default['id']}",
ruleForm: {
login_name: "{$default['login_name']}",
password: "{$default['password']}",
repassword: "{$default['password']}",
name: "{$default['name']}",
role: "{$default['jurisdiction_group_id']}",
},
rules: {
login_name: [{message: '请输入登录账号', required: flag, trigger: 'blur'},{
validator: function (rule, value, callback) {
var reg = /^1[3456789]\d{9}$/;
if (reg.test(value) == false) {
callback(new Error("请输入正确的登录账号"));
} else {
callback();
}
}, trigger: 'blur'
}],
password: [{message: '请输入密码', required: flag, trigger: 'blur'},{
validator: function (rule, value, callback) {
if(app.id == ''){
//添加验证
var pwdLen = value.length;
var reg=/^[a-zA-Z0-9.+*-/<>?!@#$%^&*():''"";]{1,}$/;
if(value == ''){
callback(new Error("请输入密码"));
}else if (pwdLen>16 || pwdLen<6) {
callback(new Error("密码不得少于6个字符串长度,不得超过16个"));
}else if(!reg.test(value)){
callback(new Error("密码错误,必须是字母,数字,符号"));
}else {
callback();
}
}else{
//修改验证
if(value != ''){
var pwdLen = value.length;
var reg=/^[a-zA-Z0-9.+*-/<>?!@#$%^&*():''"";]{1,}$/;
if (pwdLen>16 || pwdLen<6){
callback(new Error("密码不得少于6个字符串长度,不得超过16个"));
}else if(!reg.test(value)){
callback(new Error("密码错误,必须是字母,数字,符号"));
}else{
callback();
}
}else{
callback();
}
}
}, trigger: 'blur'
}],
repassword: [{message: '请输入确认密码', required: flag, trigger: 'blur'},{
validator: function (rule, value, callback) {
if(value != app.ruleForm.password){
callback(new Error("两次密码请输入一致"));
}else {
callback();
}
}, trigger: 'blur'
}],
name: [{message: '请输入姓名', required: flag, trigger: 'blur'},{
validator: function (rule, value, callback) {
if (value == '') {
callback(new Error("请输入姓名"));
} else {
callback();
}
}, trigger: 'blur'
}],
role: [{message: '请选择角色', required: flag, trigger: 'blur'},{
validator: function (rule, value, callback) {
if (value == '') {
callback(new Error("请选择角色"));
} else {
callback();
}
}, trigger: 'blur'
}],
}
},
methods: {
onSubmit(formName) {
var that = this;
this.$refs[formName].validate((valid) => {
if (valid) {
if(that.value == ''){
that.$message({
message: '请选择角色',
type: 'error',
duration: 1000
});
}
$.ajax({
url: "{:U('userAddAjax')}",
type: "post",
data:{
login_name: that.ruleForm.login_name,
password: that.ruleForm.password,
name: that.ruleForm.name,
value: that.ruleForm.role,
id: that.id,
},
success: function (res) {
if (res.status == 1) {
that.$message({
message: res.msg,
type: 'success',
duration: 1000,
onClose: function () {
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
}
});
} else {
that.$message({
message: res.msg,
type: 'error',
duration: 1000
});
}
}
})
}
})
},
cancel: function () {
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
}
},
mounted:function(){
}
})
</script>
</html>