From 1662cd2f5c686973a9a596865dfe412fc5c8ae6d Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期三, 20 十二月 2023 16:02:15 +0800
Subject: [PATCH] #
---
zy-asrs-wms/src/main/webapp/static/js/user/user.js | 22
zy-asrs-common/src/main/java/com/zy/asrs/common/web/AuthController.java | 46 +++
zy-asrs-wms/src/main/webapp/views/user/user.html | 57 ++++
zy-asrs-common/src/main/resources/mapper/sys/HostMapper.xml | 4
zy-asrs-common/src/main/java/com/zy/asrs/common/sys/service/impl/HostServiceImpl.java | 5
zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java | 25 +
zy-asrs-wms/src/main/java/com/zy/asrs/wms/config/AdminInterceptor.java | 6
zy-asrs-wms/src/main/webapp/static/js/hostTable.js | 153 +++++++++++
zy-asrs-common/src/main/java/com/zy/asrs/common/sys/entity/Host.java | 8
zy-asrs-common/src/main/java/com/zy/asrs/common/sys/controller/UserController.java | 5
zy-asrs-common/src/main/java/com/zy/asrs/common/sys/entity/UserLogin.java | 7
zy-asrs-common/src/main/java/com/zy/asrs/common/sys/controller/HostController.java | 25 +
zy-asrs-wms/src/main/webapp/views/host/host.html | 254 +++++++++++++++++--
zy-asrs-wms/src/main/webapp/views/index.html | 101 +++++++
zy-asrs-common/src/main/java/com/zy/asrs/common/sys/mapper/HostMapper.java | 2
zy-asrs-common/src/main/java/com/zy/asrs/common/sys/service/HostService.java | 2
16 files changed, 654 insertions(+), 68 deletions(-)
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/controller/HostController.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/controller/HostController.java
index 2805b16..e60e8ca 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/controller/HostController.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/controller/HostController.java
@@ -1,5 +1,6 @@
package com.zy.asrs.common.sys.controller;
+import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zy.asrs.common.sys.entity.Host;
@@ -14,6 +15,7 @@
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
+import java.sql.Wrapper;
import java.util.*;
@RestController
@@ -56,6 +58,8 @@
@RequestMapping(value = "/host/add/auth")
@ManagerAuth
public R add(Host host) {
+ host.setStatus(1);
+ host.setCreateTime(new Date());
hostService.save(host);
return R.ok();
}
@@ -66,14 +70,15 @@
if (Cools.isEmpty(host) || null==host.getId()){
return R.error();
}
+ host.setUpdateTime(new Date());
hostService.updateById(host);
return R.ok();
}
@RequestMapping(value = "/host/delete/auth")
@ManagerAuth
- public R delete(Integer[] ids){
- if (Cools.isEmpty(ids)){
+ public R delete(@RequestParam(value = "ids[]") Integer[] ids) {
+ if (Cools.isEmpty(ids)) {
return R.error();
}
hostService.removeByIds(Arrays.asList(ids));
@@ -97,4 +102,20 @@
return R.ok(result);
}
+ @RequestMapping(value = "/host/delete/one/auth")
+ @ManagerAuth
+ public R deleteOne(@RequestParam String param){
+ if (getUserId() != 9527) {
+ if (getUser().getRoleId() != 2) {
+ return R.error("鏉冮檺涓嶈冻");
+ }
+ }
+ Host host = JSONArray.parseObject(param, Host.class);
+ if (Cools.isEmpty(host)){
+ return R.error();
+ }
+ hostService.removeById(host.getId());
+ return R.ok();
+ }
+
}
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/controller/UserController.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/controller/UserController.java
index ece2a14..3d049f6 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/controller/UserController.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/controller/UserController.java
@@ -42,6 +42,7 @@
@RequestParam Map<String, Object> param){
excludeTrash(param);
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(User::getHostId, param.get("host_id"));
wrapper.orderByDesc(User::getId);
if (9527 == getUserId()) {
return R.ok(userService.page(new Page<>(curr, limit), wrapper));
@@ -84,6 +85,10 @@
@RequestMapping(value = "/user/add/auth")
@ManagerAuth(memo = "绯荤粺鐢ㄦ埛娣诲姞")
public R add(User user) {
+ User one = userService.getOne(new LambdaQueryWrapper<User>().eq(User::getUsername, user.getUsername()));
+ if (one != null) {
+ return R.error("璐﹀彿宸插瓨鍦�");
+ }
user.setStatus(1);
user.setCreateTime(new Date());
userService.save(user);
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/entity/Host.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/entity/Host.java
index 87e3a08..21b1233 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/entity/Host.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/entity/Host.java
@@ -29,11 +29,6 @@
private String name;
/**
- * 鏍囪瘑
- */
- private String flag;
-
- /**
* 娣诲姞鏃堕棿
*/
private Date createTime;
@@ -50,9 +45,8 @@
public Host() {}
- public Host(String name,String flag,Date createTime,Date updateTime,Integer status) {
+ public Host(String name,Date createTime,Date updateTime,Integer status) {
this.name = name;
- this.flag = flag;
this.createTime = createTime;
this.updateTime = updateTime;
this.status = status;
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/entity/UserLogin.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/entity/UserLogin.java
index d1a4aef..08e2205 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/entity/UserLogin.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/entity/UserLogin.java
@@ -7,6 +7,7 @@
import com.zy.asrs.common.sys.service.UserService;
import com.zy.asrs.framework.common.Cools;
import com.zy.asrs.framework.common.SpringUtils;
+import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@@ -26,6 +27,12 @@
private Long id;
/**
+ * 浠撳簱
+ */
+ @ApiModelProperty(value= "浠撳簱")
+ private Long hostId;
+
+ /**
* 鍛樺伐
*/
private Long userId;
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/mapper/HostMapper.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/mapper/HostMapper.java
index d540e59..5806f47 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/mapper/HostMapper.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/mapper/HostMapper.java
@@ -9,4 +9,6 @@
@Repository
public interface HostMapper extends BaseMapper<Host> {
+ Host selectTop1();
+
}
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/service/HostService.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/service/HostService.java
index 773f28e..4208175 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/service/HostService.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/service/HostService.java
@@ -6,4 +6,6 @@
public interface HostService extends IService<Host> {
+ Host getTop1();
+
}
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/service/impl/HostServiceImpl.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/service/impl/HostServiceImpl.java
index 8b9507b..3b0979f 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/service/impl/HostServiceImpl.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/sys/service/impl/HostServiceImpl.java
@@ -9,4 +9,9 @@
@Service("hostService")
public class HostServiceImpl extends ServiceImpl<HostMapper, Host> implements HostService {
+ @Override
+ public Host getTop1() {
+ return this.baseMapper.selectTop1();
+ }
+
}
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/web/AuthController.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/web/AuthController.java
index df4a984..0ec42a1 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/web/AuthController.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/web/AuthController.java
@@ -44,6 +44,8 @@
private ResourceService resourceService;
@Autowired
private RoleResourceService roleResourceService;
+ @Autowired
+ private HostService hostService;
@RequestMapping("/login.action")
@ManagerAuth(value = ManagerAuth.Auth.NONE, memo = "鐧诲綍")
@@ -79,11 +81,47 @@
userLogin.setToken(token);
userLogin.setCreateTime(new Date());
userLogin.setSystem(system);
+ if (user.getRoleId() == 2) {
+ userLogin.setHostId(hostService.getTop1().getId());
+ }
userLoginService.save(userLogin);
Map<String, Object> res = new HashMap<>();
res.put("username", user.getUsername());
res.put("token", token);
return R.ok(res);
+ }
+
+ @RequestMapping("/show/host.action")
+ @ManagerAuth
+ public R showHosts() {
+ Long hostId = getHostId();
+ String hostName = null;
+ if (hostId != null) {
+ Host host = hostService.getById(hostId);
+ if (host != null) {
+ hostName = host.getName();
+ }
+ }
+ return R.ok().add(Cools
+ .add("root", getUser().getRoleId() == 2)
+ .add("host", getHostId() == null)
+ .add("hostName", hostName)
+ );
+ }
+
+ @RequestMapping(value = "/root/change/host/auth")
+ @ManagerAuth
+ public R rootChangeHost(@RequestParam Long hostId) {
+ UserLogin userLogin = userLoginService.getOne(new LambdaQueryWrapper<UserLogin>().eq(UserLogin::getUserId, getUserId()).eq(UserLogin::getSystem, String.valueOf(LoginSystemType.WMS)));
+ if (userLogin != null) {
+ userLogin.setHostId(hostId);
+ if (!userLoginService.updateById(userLogin)) {
+ throw new CoolException("淇敼鍟嗘埛澶辫触");
+ }
+ return R.ok();
+ } else {
+ return R.error();
+ }
}
@RequestMapping("/code/switch.action")
@@ -130,10 +168,6 @@
oneLevel = resourceService.list(new LambdaQueryWrapper<Resource>().eq(Resource::getLevel, 1).orderByAsc(Resource::getSort));
resourceWrapper = new LambdaQueryWrapper<Resource>().eq(Resource::getLevel, 2).eq(Resource::getStatus, 1).orderByAsc(Resource::getSort);
} else {
- // 婵�娲荤爜楠岃瘉
- if (!SystemProperties.SYSTEM_ACTIVATION) {
- return R.ok();
- }
oneLevel = resourceService.list(new LambdaQueryWrapper<Resource>().eq(Resource::getLevel, 1).eq(Resource::getStatus, 1).orderByAsc(Resource::getSort));
// 鑾峰彇褰撳墠鐢ㄦ埛鐨勬墍鏈変簩绾ц彍鍗�
user = userService.getById(getUserId());
@@ -158,11 +192,11 @@
// 鏄惁鎷ユ湁鏌ョ湅鏉冮檺
if (getUserId() != 9527) {
Resource view = resourceService.getOne(new LambdaQueryWrapper<Resource>().eq(Resource::getResourceId, resource.getId()).like(Resource::getCode, "#view"));
- if (!Cools.isEmpty(view)){
+ if (!Cools.isEmpty(view)) {
RoleResource param = new RoleResource();
param.setResourceId(view.getId());
param.setRoleId(user.getRoleId());
- if (null == roleResourceService.getOne(new LambdaQueryWrapper<>(param))){
+ if (null == roleResourceService.getOne(new LambdaQueryWrapper<>(param))) {
continue;
}
}
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java
index fefc3f6..2c489b2 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java
@@ -1,8 +1,12 @@
package com.zy.asrs.common.web;
import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zy.asrs.common.sys.entity.User;
+import com.zy.asrs.common.sys.entity.UserLogin;
+import com.zy.asrs.common.sys.service.UserLoginService;
import com.zy.asrs.common.sys.service.UserService;
import com.zy.asrs.framework.common.BaseRes;
import com.zy.asrs.framework.common.Cools;
@@ -27,6 +31,27 @@
protected HttpServletRequest request;
@Autowired
private UserService userService;
+ @Autowired
+ private UserLoginService userLoginService;
+
+ protected Long getHostId(){
+ if (getUserId() == 9527) {
+ return null;
+ }
+ User user = getUser();
+ if (user.getRoleId() == 2) {
+ String hostId = String.valueOf(request.getAttribute("hostId"));
+ if (Cools.isEmpty(hostId)) {
+ UserLogin userLogin = userLoginService.getOne(new LambdaQueryWrapper<UserLogin>().eq(UserLogin::getUserId, user.getId()));
+ if (userLogin != null) {
+ return userLogin.getHostId();
+ }
+ }
+ return Long.parseLong(hostId);
+ } else {
+ return user.getHostId();
+ }
+ }
protected Long getUserId(){
return Long.parseLong(String.valueOf(request.getAttribute("userId")));
diff --git a/zy-asrs-common/src/main/resources/mapper/sys/HostMapper.xml b/zy-asrs-common/src/main/resources/mapper/sys/HostMapper.xml
index c976c76..fba7bde 100644
--- a/zy-asrs-common/src/main/resources/mapper/sys/HostMapper.xml
+++ b/zy-asrs-common/src/main/resources/mapper/sys/HostMapper.xml
@@ -2,4 +2,8 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zy.asrs.common.sys.mapper.HostMapper">
+ <select id="selectTop1" resultType="com.zy.asrs.common.sys.entity.Host">
+ select top 1 * from sys_host where 1=1 order by id
+ </select>
+
</mapper>
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/config/AdminInterceptor.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/config/AdminInterceptor.java
index 4960cac..d17f8ba 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/config/AdminInterceptor.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/config/AdminInterceptor.java
@@ -123,16 +123,12 @@
}
// 璇锋眰缂撳瓨
request.setAttribute("userId", user.getId());
+ request.setAttribute("hostId", userLogin.getHostId());
// 鏇存柊 token 鏈夋晥鏈�
userLogin.setCreateTime(new Date());
userLoginService.updateById(userLogin);
// 鎿嶄綔鏃ュ織
if (!Cools.isEmpty(memo)) {
- // 杩涜婵�娲诲垽鏂�
- if (!SystemProperties.SYSTEM_ACTIVATION) {
- Http.response(response, BaseRes.NO_ACTIVATION);
- return false;
- }
// 璁板綍鎿嶄綔鏃ュ織
OperateLog operateLog = new OperateLog();
operateLog.setAction(Cools.isEmpty(memo)?request.getRequestURI():memo);
diff --git a/zy-asrs-wms/src/main/webapp/static/js/hostTable.js b/zy-asrs-wms/src/main/webapp/static/js/hostTable.js
new file mode 100644
index 0000000..0236566
--- /dev/null
+++ b/zy-asrs-wms/src/main/webapp/static/js/hostTable.js
@@ -0,0 +1,153 @@
+layui.config({
+ base: baseUrl + "/static/layui/lay/modules/" // 閰嶇疆妯″潡鎵�鍦ㄧ殑鐩綍
+}).use(['table','laydate', 'form', 'admin'], function() {
+ var table = layui.table;
+ var $ = layui.jquery;
+ var layer = layui.layer;
+ var layDate = layui.laydate;
+ var form = layui.form;
+ var admin = layui.admin;
+
+ /****************************************** 宸﹁竟琛� *************************************************/
+
+ var insTb = table.render({
+ elem: '#originTable',
+ url: baseUrl + '/host/list/auth',
+ height: 'full-100',
+ headers: {token: localStorage.getItem('token')},
+ request: {
+ pageName: 'curr',
+ pageSize: 'limit'
+ },
+ parseData: function (res) {
+ return {
+ 'code': res.code,
+ 'msg': res.msg,
+ 'count': res.data.total,
+ 'data': res.data.records
+ }
+ },
+ response: {
+ statusCode: 200
+ },
+ toolbar: ['<p>',
+ '<button lay-event="add" class="layui-btn layui-btn-sm icon-btn"><i class="layui-icon"></i>娣诲姞</button> ',
+ '<button lay-event="edit" class="layui-btn layui-btn-sm layui-btn-warm icon-btn"><i class="layui-icon"></i>淇敼</button> ',
+ '<button lay-event="del" class="layui-btn layui-btn-sm layui-btn-danger icon-btn"><i class="layui-icon"></i>鍒犻櫎</button>',
+ '</p>'].join(''),
+ defaultToolbar: [],
+ cols: [[
+ {field: 'id', title: '缂栧彿', width: 70, align: 'center'},
+ {field: 'name', title: '椤圭洰鍚嶇О'}
+ ]],
+ done: function (res, curr, count) {
+ $('#dictTable+.layui-table-view .layui-table-body tbody>tr:first').trigger('click');
+ }
+ });
+
+ /* 琛ㄦ牸鎼滅储 */
+ form.on('submit(originTableSearch)', function (data) {
+ insTb.reload({where: {name: data.field.name}});
+ return false;
+ });
+
+ /* 琛ㄦ牸鎼滅储 */
+ form.on('submit(originTbReset)', function (data) {
+ insTb.reload();
+ insTb2.reload({where: {host_id: null}, page: {curr: 1}});
+ return false;
+ });
+
+ /* 琛ㄦ牸澶村伐鍏锋爮鐐瑰嚮浜嬩欢 */
+ table.on('toolbar(originTable)', function (obj) {
+ if (obj.event === 'add') { // 娣诲姞
+ showEdit();
+ } else if (obj.event === 'edit') { // 淇敼
+ if (selObj == null) {
+ return;
+ }
+ showEdit(selObj.data);
+ } else if (obj.event === 'del') { // 鍒犻櫎
+ if (selObj == null) {
+ return;
+ }
+ doDel(selObj);
+ }
+ });
+
+ /* 鐩戝惉琛屽崟鍑讳簨浠� */
+ var selObj;
+ table.on('row(originTable)', function (obj) {
+ selObj = obj;
+ obj.tr.addClass('layui-table-click').siblings().removeClass('layui-table-click');
+ insTb2.reload({where: {host_id: obj.data.id}, page: {curr: 1}});
+ });
+
+ /* 鏄剧ず琛ㄥ崟寮圭獥 */
+ function showEdit(mData) {
+ admin.open({
+ type: 1,
+ title: (mData ? '淇敼' : '娣诲姞') + '椤圭洰',
+ content: $('#hostEditDialog').html(),
+ success: function (layero, dIndex) {
+ // 鍥炴樉琛ㄥ崟鏁版嵁
+ form.val('hostEditForm', mData);
+ // 琛ㄥ崟鎻愪氦浜嬩欢
+ form.on('submit(hostEditSubmit)', function (data) {
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/host/"+(mData?'update':'add')+"/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: data.field,
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ selObj = null;
+ if (res.code === 200){
+ layer.close(dIndex);
+ layer.msg(res.msg, {icon: 1});
+ insTb.reload();
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ } else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ return false;
+ });
+ }
+ });
+ }
+
+ /* 鍒犻櫎 */
+ function doDel(obj) {
+ layer.confirm('纭畾瑕佸垹闄ゆ鍗曟嵁绫诲瀷鍚楋紵', {
+ skin: 'layui-layer-admin',
+ shade: .1
+ }, function (i) {
+ layer.close(i);
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/host/delete/one/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {param: JSON.stringify(obj.data)},
+ method: 'POST',
+ success: function (res) {
+ selObj = null;
+ layer.close(loadIndex);
+ if (res.code === 200){
+ layer.closeAll();
+ insTb.reload();
+ $('#dictTable+.layui-table-view .layui-table-body tbody>tr:first').trigger('click');
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ } else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ });
+ }
+
+})
diff --git a/zy-asrs-wms/src/main/webapp/static/js/user/user.js b/zy-asrs-wms/src/main/webapp/static/js/user/user.js
index 0e06c7e..92c751a 100644
--- a/zy-asrs-wms/src/main/webapp/static/js/user/user.js
+++ b/zy-asrs-wms/src/main/webapp/static/js/user/user.js
@@ -23,14 +23,14 @@
height: 'full-100',
cols: [[
{type: 'checkbox'}
- // ,{field: 'hostName', align: 'center',title: '鎺堟潈鍟嗘埛', templet: '#hostTpl', width: 140}
+ ,{field: 'hostName', align: 'center',title: '鎺堟潈鍟嗘埛', templet: '#hostTpl', width: 140}
// ,{field: 'nickname', align: 'center',title: '鐢ㄦ埛鍚�'}
- ,{field: 'username', align: 'center',title: '鐧诲綍璐︽埛'}
,{field: 'mobile', align: 'center',title: '鎵嬫満鍙�'}
+ ,{field: 'username', align: 'center',title: '鐢ㄦ埛鍚�'}
// ,{field: 'deptName', align: 'center',title: '鎵�灞為儴闂�'}
,{field: 'roleName', align: 'center',title: '瑙掕壊'}
,{field: 'email', align: 'center',title: '閭'}
- // ,{field: 'sex$', align: 'center',title: '鎬у埆'}
+ ,{field: 'sex$', align: 'center',title: '鎬у埆'}
,{field: 'createTime$', align: 'center',title: '娉ㄥ唽鏃堕棿', hide: true}
,{field: 'status$', align: 'center',title: '鐘舵��', templet: '#statusTpl', width: 120, unresize: true}
@@ -68,17 +68,18 @@
/* 琛ㄦ牸2澶村伐鍏锋爮鐐瑰嚮浜嬩欢 */
table.on('toolbar(userTable)', function (obj) {
- var checkStatus = table.checkStatus(obj.config.id).data;
if (obj.event === 'add') { // 娣诲姞
showEditModel()
} else if (obj.event === 'del') { // 鍒犻櫎
- if (checkStatus.length === 0) {
+ var checkRows = table.checkStatus('userTable');
+ if (checkRows.data.length === 0) {
layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2});
return;
}
- del(checkStatus.map(function (d) {
+ var ids = checkRows.data.map(function (d) {
return d.id;
- }));
+ });
+ doDelUser({ids: ids});
}
});
@@ -102,7 +103,8 @@
break;
// 鍒犻櫎
case 'del':
- del([data.id]);
+ var ids = [obj.id];
+ doDelUser({ids: ids});
break;
// 閲嶇疆瀵嗙爜
case 'resetPwd':
@@ -169,7 +171,7 @@
/* 鍒犻櫎璁㈠崟 */
- function del(ids) {
+ function doDelUser(obj) {
layer.confirm('纭畾瑕佸垹闄ら�変腑鏁版嵁鍚楋紵', {
skin: 'layui-layer-admin',
shade: .1
@@ -179,7 +181,7 @@
$.ajax({
url: baseUrl+"/user/delete/auth",
headers: {'token': localStorage.getItem('token')},
- data: {ids: ids},
+ data: {ids: obj.ids},
method: 'POST',
success: function (res) {
layer.close(loadIndex);
diff --git a/zy-asrs-wms/src/main/webapp/views/host/host.html b/zy-asrs-wms/src/main/webapp/views/host/host.html
index 05a3a59..b9eebbb 100644
--- a/zy-asrs-wms/src/main/webapp/views/host/host.html
+++ b/zy-asrs-wms/src/main/webapp/views/host/host.html
@@ -1,55 +1,251 @@
<!DOCTYPE html>
<html lang="en">
<head>
- <meta charset="utf-8">
- <title></title>
- <meta name="renderer" content="webkit">
+ <meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+ <title>浠撳簱绠$悊</title>
<link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
- <link rel="stylesheet" href="../../static/css/cool.css" media="all">
- <link rel="stylesheet" href="../../static/css/common.css" media="all">
+ <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all">
+ <!--[if lt IE 9]>
+ <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
+ <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+ <![endif]-->
+ <style>
+ /** 鏌ョ湅璇︽儏寮圭獥鏍峰紡 */
+ .paper-info-group {
+ padding: 15px 25px;
+ }
+
+ .paper-info-group h3 {
+ font-weight: bold;
+ color: #000000;
+ padding-bottom: 8px;
+ }
+
+ .paper-info-group p {
+ color: #666;
+ padding-bottom: 12px;
+ font-size: 16px;
+ }
+
+ .paper-info-group .paper-info-group-imgs {
+ padding-top: 5px;
+ }
+
+ .paper-info-group .paper-info-group-imgs img {
+ margin-right: 15px;
+ margin-bottom: 15px;
+ cursor: zoom-in;
+ }
+
+ .paper-info-group .paper-info-group-imgs img:last-child {
+ margin-right: 0;
+ }
+
+ /* 鏃ユ湡缁勪欢涓嶆樉绀虹 */
+ .laydate-time-list li:last-child {
+ display: none;
+ }
+
+ .laydate-time-list li {
+ width: 50% !important;
+ }
+
+ .laydate-time-list ol li {
+ padding-left: 55px !important;
+ width: 100% !important;
+ }
+
+ </style>
</head>
<body>
-<!-- 鎼滅储鏍� -->
-<div id="search-box" class="layui-form layui-card-header">
- <div class="layui-inline">
- <div class="layui-input-inline">
- <input class="layui-input" type="text" name="id" placeholder="缂栧彿" autocomplete="off">
+<!-- 姝f枃寮�濮� -->
+<div class="layui-fluid">
+ <div class="layui-card">
+ <div class="layui-card-body">
+ <button id="eDialogAddBtn" class="layui-btn">娣诲姞浠撳簱</button>
</div>
</div>
-
- <!-- 寰呮坊鍔� -->
- <div id="data-search-btn" class="layui-btn-container layui-form-item">
- <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">鎼滅储</button>
- <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">閲嶇疆</button>
+ <div class="layui-card">
+ <div class="layui-card-header">浠撳簱 - 鏁版嵁鍒楄〃</div>
+ <div class="layui-card-body">
+ <table id="hostTable" lay-filter="hostTable"></table>
+ </div>
</div>
</div>
-<!-- 琛ㄦ牸 -->
-<table class="layui-hide" id="host" lay-filter="host"></table>
-<script type="text/html" id="toolbar">
- <div class="layui-btn-container">
- <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">鏂板</button>
- <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">鍒犻櫎</button>
- <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">瀵煎嚭</button>
- </div>
+<script type="text/html" id="editDialog">
+ <form id="detail" lay-filter="detail" class="layui-form model-form layui-row">
+ <input name="id" type="hidden"/>
+ <div class="layui-col-md12">
+ <div class="layui-form-item">
+ <label class="layui-form-label layui-form-required">浠撳簱鍚嶇О</label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="name" placeholder="璇疯緭鍏ヤ粨搴撳悕绉�" lay-verType="tips" lay-verify="required" required/>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">澶囨敞</label>
+ <div class="layui-input-block">
+ <input class="layui-input" name="memo" placeholder="璇疯緭鍏ュ娉�"/>
+ </div>
+ </div>
+ </div>
+ <div class="layui-form-item text-right">
+ <button class="layui-btn" lay-filter="editSubmit" lay-submit>淇濆瓨</button>
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
+ </div>
+ </form>
</script>
-<script type="text/html" id="operate">
- <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">璇︽儏</a>
- <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit">缂栬緫</a>
+<!-- 琛ㄦ牸鎿嶄綔鍒� -->
+<script type="text/html" id="eDialogTbBar">
+ <a class="layui-btn layui-btn-sm layui-btn-primary" lay-event="edit"><i class="layui-icon"></i>淇敼</a>
+ <a class="layui-btn layui-btn-sm layui-btn-danger" lay-event="delete"><i class="layui-icon"></i>鍒犻櫎</a>
</script>
+
+<!-- js閮ㄥ垎 -->
<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
-<script type="text/javascript" src="../../static/js/host/host.js" charset="utf-8"></script>
+<script>
+ layui.config({
+ base: baseUrl + "/static/layui/lay/modules/"
+ }).use(['table','laydate', 'form', 'util', 'admin'], function(){
+ var $ = layui.jquery;
+ var layer = layui.layer;
+ var admin = layui.admin;
+ var form = layui.form;
+ var table = layui.table;
+ var laydate = layui.laydate;
-<iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe>
+ // 娣诲姞
+ $('#eDialogAddBtn').click(function () {
+ showEditModel();
+ });
+ // 娓叉煋琛ㄦ牸
+ var insTb = table.render({
+ elem: '#hostTable',
+ headers: {token: localStorage.getItem('token')},
+ url: baseUrl+'/host/list/auth',
+ page: true,
+ limit: 16,
+ limits: [16, 30, 50, 100, 200, 500],
+ cellMinWidth: 50,
+ cols: [[
+ {field: 'id', title: '#'}
+ // ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80}
+ ,{field: 'name', align: 'center',title: '浠撳簱鍚嶇О'}
+ // ,{field: 'flag', align: 'center',title: '鏍囪瘑'}
+ // ,{field: 'createTime$', align: 'center',title: '娣诲姞鏃堕棿'}
+ // ,{field: 'status$', align: 'center',title: '鐘舵��'}
+ // ,{field: 'createTime$', align: 'center',title: '娣诲姞鏃堕棿'}
+ // ,{field: 'createBy$', align: 'center',title: '娣诲姞浜哄憳'}
+ ,{field: 'updateTime$', align: 'center',title: '淇敼鏃堕棿'}
+ ,{field: 'updateBy$', align: 'center',title: '淇敼浜哄憳'}
+ ,{field: 'memo', align: 'center',title: '澶囨敞'}
+ ,{align: 'center', toolbar: '#eDialogTbBar', title: '鎿嶄綔', minWidth: 80}
+ ]],
+ request: {
+ pageName: 'curr',
+ pageSize: 'limit'
+ },
+ parseData: function (res) {
+ return {
+ 'code': res.code,
+ 'msg': res.msg,
+ 'count': res.data.total,
+ 'data': res.data.records
+ }
+ },
+ response: {
+ statusCode: 200
+ },
+ size: 'lg'
+ });
+
+ // 宸ュ叿鏉$偣鍑讳簨浠�
+ table.on('tool(hostTable)', function (obj) {
+ var data = obj.data;
+ if (obj.event === 'delete') {
+ var ids = [data.id];
+ doDel({ids: ids});
+ } else if (obj.event === 'edit') {
+ showEditModel(data);
+ }
+ });
+
+ /* 鏄剧ず琛ㄥ崟寮圭獥 */
+ function showEditModel(mData) {
+ admin.open({
+ type: 1,
+ title: (mData ? '淇敼' : '娣诲姞') + '椤圭洰',
+ area: '500px',
+ content: $('#editDialog').html(),
+ success: function (layero, dIndex) {
+ // 鍥炴樉琛ㄥ崟鏁版嵁
+ form.val('detail', mData);
+ // 琛ㄥ崟鎻愪氦浜嬩欢
+ form.on('submit(editSubmit)', function (data) {
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/host/"+(mData?'update':'add')+"/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: data.field,
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ if (res.code === 200){
+ layer.close(dIndex);
+ layer.msg(res.msg, {icon: 1});
+ $(".layui-laypage-btn")[0].click();
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ }else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+ return false;
+ })
+ }
+ });
+ }
+
+ function doDel(obj) {
+ layer.confirm('纭畾鍒犻櫎鏁版嵁鍚楋紵', {
+ skin: 'layui-layer-admin',
+ shade: .1
+ }, function (i) {
+ layer.close(i);
+ var loadIndex = layer.load(2);
+ $.ajax({
+ url: baseUrl+"/host/delete/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {ids: obj.ids},
+ method: 'POST',
+ success: function (res) {
+ layer.close(loadIndex);
+ if (res.code === 200){
+ layer.msg(res.msg, {icon: 1});
+ $(".layui-laypage-btn")[0].click();
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ }else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ })
+
+ });
+ }
+
+ })
+</script>
</body>
</html>
-
diff --git a/zy-asrs-wms/src/main/webapp/views/index.html b/zy-asrs-wms/src/main/webapp/views/index.html
index cbe75fb..79eeb03 100644
--- a/zy-asrs-wms/src/main/webapp/views/index.html
+++ b/zy-asrs-wms/src/main/webapp/views/index.html
@@ -10,6 +10,7 @@
<link rel="stylesheet" href="../static/layui/css/layui.css" media="all">
<link rel="stylesheet" href="../static/css/admin.css?v=318" media="all">
<link rel="stylesheet" href="../static/css/loader.css" media="all">
+ <link rel="stylesheet" href="../static/css/originTable.css" media="all">
<style>
.layui-logo img {
width: 25px;
@@ -42,8 +43,11 @@
</ul>
<ul class="layui-nav layui-layout-right">
<li class="layui-nav-item" lay-unselect>
- <a ew-event="note" title="渚跨"><i class="layui-icon layui-icon-note"></i></a>
+ <a id="hostName"></a>
</li>
+<!-- <li class="layui-nav-item" lay-unselect>-->
+<!-- <a ew-event="note" title="渚跨"><i class="layui-icon layui-icon-note"></i></a>-->
+<!-- </li>-->
<li class="layui-nav-item layui-hide-xs" lay-unselect>
<a ew-event="fullScreen" title="鍏ㄥ睆"><i class="layui-icon layui-icon-screen-full"></i></a>
</li>
@@ -102,13 +106,14 @@
base: baseUrl + "/static/layui/lay/modules/"
}).extend({
notice: 'notice/notice',
- }).use(['index', 'element', 'layer', 'admin', 'notice'], function () {
+ }).use(['index', 'element', 'layer', 'admin', 'notice', 'table'], function () {
var $ = layui.jquery;
var index = layui.index;
var element = layui.element;
var layer = layui.layer;
var admin = layui.admin;
var notice = layui.notice;
+ var table = layui.table;
var easywebIframeMsg = localStorage.getItem("easyweb-iframe");
if (!isEmpty(easywebIframeMsg)) {
@@ -140,15 +145,36 @@
}
});
+ // 妫�娴嬫槸鍚︿负瓒呯骇绠$悊鍛�
+ $.ajax({
+ url: baseUrl + "/show/host.action",
+ headers: {'token': localStorage.getItem('token')},
+ method: 'GET',
+ success: function (res) {
+ if (res.code === 200) {
+ if (!isEmpty(res.data.hostName)) {
+ $('#hostName').text(res.data.hostName);
+ }
+ if (res.data.root) {
+ showHost();
+ }
+ } else if (res.code === 403) {
+ top.location.href = baseUrl + "/login";
+ } else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ });
+
// 榛樿鍔犺浇涓婚〉
index.loadHome({
- menuPath: baseUrl+'/views/home/navigation.html',
+ menuPath: baseUrl + '/views/home/navigation.html',
menuName: '<i class="layui-icon layui-icon-home"></i>'
});
$('#username').text(localStorage.getItem('username'));
- $(document).on('click','#logout', function () {
+ $(document).on('click', '#logout', function () {
window.location.href = "login.html";
localStorage.removeItem('token');
localStorage.removeItem('username');
@@ -160,6 +186,73 @@
var url = logout.getAttribute('href');
logout.setAttribute('href', baseUrl + "/login");
+ // 澶氫粨搴撴ā寮�
+ function showHost() {
+ // var dele = layer.msg('姝e湪鍒犻櫎', {icon: 16, time: 10000}, function(){
+ // layer.msg('鎴愬姛鍒犻櫎', {icon: 1})
+ // });
+ admin.open({
+ type: 1,
+ title: '浠撳簱閫夋嫨',
+ area: '250px',
+ offset: 'r',
+ shade: false,
+ shadeClose: true,
+ content: '<table id="originTable" lay-filter="originTable"></table>',
+ success: function (layero) {
+ var insTb = table.render({
+ elem: '#originTable',
+ url: baseUrl + '/host/list/auth',
+ height: 'full-600',
+ headers: {token: localStorage.getItem('token')},
+ request: {
+ pageName: 'curr',
+ pageSize: 'limit'
+ },
+ parseData: function (res) {
+ return {
+ 'code': res.code,
+ 'msg': res.msg,
+ 'count': res.data.total,
+ 'data': res.data.records
+ }
+ },
+ response: {
+ statusCode: 200
+ },
+ defaultToolbar: [],
+ cols: [[
+ {field: 'id', title: '缂栧彿', width: 70, align: 'center'},
+ {field: 'name', title: '椤圭洰鍚嶇О'}
+ ]],
+ done: function (res, curr, count) {
+ $('.layui-table, .layui-table-view').css("margin", 0);
+ // $('#originTable+.layui-table-view .layui-table-body tbody>tr:first').trigger('click');
+ }
+ });
+ /* 鐩戝惉琛屽崟鍑讳簨浠� */
+ table.on('row(originTable)', function (obj) {
+ obj.tr.addClass('layui-table-click').siblings().removeClass('layui-table-click');
+ // 妫�娴嬫槸鍚︿负瓒呯骇绠$悊鍛�
+ $.ajax({
+ url: baseUrl + "/root/change/host/auth?hostId=" + obj.data.id,
+ headers: {'token': localStorage.getItem('token')},
+ method: 'GET',
+ success: function (res) {
+ if (res.code === 200) {
+ window.location.reload();
+ } else if (res.code === 403) {
+ top.location.href = baseUrl + "/login";
+ } else {
+ layer.msg(res.msg, {icon: 2});
+ }
+ }
+ });
+ });
+ }
+ });
+ }
+
});
</script>
<script type="text/html" id="menuTpl">
diff --git a/zy-asrs-wms/src/main/webapp/views/user/user.html b/zy-asrs-wms/src/main/webapp/views/user/user.html
index d2611c8..d0a15c0 100644
--- a/zy-asrs-wms/src/main/webapp/views/user/user.html
+++ b/zy-asrs-wms/src/main/webapp/views/user/user.html
@@ -26,7 +26,29 @@
<!-- 姝f枃寮�濮� -->
<div class="layui-fluid" style="padding-bottom: 0;">
<div class="layui-row layui-col-space15">
- <div class="layui-col-md12">
+ <div class="layui-col-md3" id="left-table">
+ <div class="layui-card">
+ <div class="layui-card-body" style="padding: 10px;">
+ <form class="layui-form toolbar">
+ <div class="layui-form-item">
+ <div class="layui-inline" style="max-width: 140px;">
+ <input name="name" class="layui-input" placeholder="杈撳叆椤圭洰鍚嶇О"/>
+ </div>
+ <div class="layui-inline">
+ <button class="layui-btn icon-btn" lay-filter="originTableSearch" lay-submit>
+ <i class="layui-icon"></i>鎼滅储
+ </button>
+ <button class="layui-btn icon-btn" lay-filter="originTbReset" lay-submit>
+ <i class="layui-icon"></i>閲嶇疆
+ </button>
+ </div>
+ </div>
+ </form>
+ <table id="originTable" lay-filter="originTable"></table>
+ </div>
+ </div>
+ </div>
+ <div class="layui-col-md9">
<div class="layui-card">
<div class="layui-card-body" style="padding: 10px;">
<form class="layui-form toolbar">
@@ -103,9 +125,22 @@
<div class="layui-col-md6">
<div class="layui-form-item">
- <label class="layui-form-label layui-form-required">鐧诲綍璐︽埛</label>
+ <label class="layui-form-label layui-form-required">鎵嬫満鍙�</label>
<div class="layui-input-block">
- <input name="username" placeholder="璇疯緭鍏ョ櫥褰曡处鎴�" class="layui-input" lay-vertype="tips" lay-verify="required" required="">
+ <input name="mobile" placeholder="璇疯緭鍏ユ墜鏈哄彿" class="layui-input" lay-vertype="tips" lay-verify="required" required="">
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <label class="layui-form-label">鎵�灞為」鐩�: </label>
+ <div class="layui-input-block cool-auto-complete">
+ <input name="hostId" class="layui-input" style="display: none">
+ <input id="hostName" name="hostName" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇烽�夋嫨鎵�灞為」鐩�" onfocus=this.blur()>
+ <div class="cool-auto-complete-window">
+ <input class="cool-auto-complete-window-input" data-key="hostQueryByhostId" onkeyup="autoLoad(this.getAttribute('data-key'))">
+ <select class="cool-auto-complete-window-select" data-key="hostQueryByhostIdSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
+ </select>
+ </div>
</div>
</div>
@@ -125,15 +160,26 @@
<div class="layui-col-md6">
<div class="layui-form-item">
- <label class="layui-form-label layui-form-required">鎵嬫満鍙�</label>
+ <label class="layui-form-label layui-form-required">鐢ㄦ埛鍚�</label>
<div class="layui-input-block">
- <input name="mobile" placeholder="璇疯緭鍏ユ墜鏈哄彿" class="layui-input" lay-vertype="tips" lay-verify="required" required="">
+ <input name="username" placeholder="璇疯緭鍏ョ敤鎴峰悕" class="layui-input" lay-vertype="tips" lay-verify="required" required="">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">閭</label>
<div class="layui-input-block">
<input name="email" placeholder="璇疯緭鍏ラ偖绠�" class="layui-input">
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <label class="layui-form-label">鎬у埆</label>
+ <div class="layui-input-block">
+ <select name="sex">
+ <option value="2" style="display: none">鏈煡</option>
+ <option value="0">鐢�</option>
+ <option value="1">濂�</option>
+ </select>
</div>
</div>
@@ -154,6 +200,7 @@
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/tools/md5.js"></script>
<script type="text/javascript" src="../../static/js/user/user.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/hostTable.js" charset="utf-8"></script>
<!-- 椤圭洰缂栬緫绐楀彛 -->
<script type="text/html" id="hostEditDialog">
--
Gitblit v1.9.1