Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
guns-vip
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
chenjunxiong
guns-vip
Commits
44885cab
Commit
44885cab
authored
Jun 28, 2019
by
fengshuonan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增修改用户增加职位
parent
5c794401
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
562 additions
and
17 deletions
+562
-17
_sqls/guns_mysql.sql
+0
-0
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/controller/PositionController.java
+17
-0
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/entity/Position.java
+1
-1
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/entity/UserPos.java
+73
-0
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/mapper/UserPosMapper.java
+56
-0
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/mapper/mapping/UserPosMapper.xml
+42
-0
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/model/UserDto.java
+2
-0
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/model/params/UserPosParam.java
+42
-0
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/model/result/UserPosResult.java
+36
-0
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/service/PositionService.java
+8
-0
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/service/UserPosService.java
+69
-0
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/service/UserService.java
+43
-1
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/service/impl/PositionServiceImpl.java
+48
-7
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/service/impl/UserPosServiceImpl.java
+84
-0
guns-sys/src/main/webapp/assets/modular/system/user/user_add.js
+10
-1
guns-sys/src/main/webapp/assets/modular/system/user/user_edit.js
+10
-1
guns-sys/src/main/webapp/pages/modular/system/user/user_add.html
+12
-4
guns-sys/src/main/webapp/pages/modular/system/user/user_edit.html
+9
-2
No files found.
_sqls/guns_mysql.sql
View file @
44885cab
This diff is collapsed.
Click to expand it.
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/controller/PositionController.java
View file @
44885cab
...
...
@@ -5,6 +5,7 @@ import cn.stylefeng.guns.base.pojo.page.LayuiPageInfo;
import
cn.stylefeng.guns.sys.modular.system.entity.Position
;
import
cn.stylefeng.guns.sys.modular.system.model.params.PositionParam
;
import
cn.stylefeng.guns.sys.modular.system.service.PositionService
;
import
cn.stylefeng.guns.sys.modular.system.service.UserPosService
;
import
cn.stylefeng.roses.core.base.controller.BaseController
;
import
cn.stylefeng.roses.core.reqres.response.ResponseData
;
import
cn.stylefeng.roses.core.reqres.response.SuccessResponseData
;
...
...
@@ -32,6 +33,9 @@ public class PositionController extends BaseController {
@Autowired
private
PositionService
positionService
;
@Autowired
private
UserPosService
userPosService
;
/**
* 跳转到主页面
*
...
...
@@ -163,6 +167,19 @@ public class PositionController extends BaseController {
return
new
SuccessResponseData
();
}
/**
* 查询所有职位
*
* @author stylefeng
* @Date 2019-03-13
*/
@ResponseBody
@RequestMapping
(
"/listPositions"
)
public
LayuiPageInfo
listlistPositionsTypes
(
@RequestParam
(
value
=
"userId"
,
required
=
false
)
Long
userId
)
{
return
this
.
positionService
.
listPositions
(
userId
);
}
}
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/entity/Position.java
View file @
44885cab
...
...
@@ -21,7 +21,7 @@ public class Position implements Serializable {
/**
* 主键id
*/
@TableId
(
value
=
"position_id"
,
type
=
IdType
.
AUTO
)
@TableId
(
value
=
"position_id"
,
type
=
IdType
.
ID_WORKER
)
private
Long
positionId
;
/**
...
...
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/entity/UserPos.java
0 → 100755
View file @
44885cab
package
cn
.
stylefeng
.
guns
.
sys
.
modular
.
system
.
entity
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
java.io.Serializable
;
/**
* <p>
* 用户职位关联表
* </p>
*
* @author stylefeng
* @since 2019-06-28
*/
@TableName
(
"sys_user_pos"
)
public
class
UserPos
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键id
*/
@TableId
(
value
=
"user_pos_id"
,
type
=
IdType
.
ID_WORKER
)
private
Long
userPosId
;
/**
* 用户id
*/
@TableField
(
"user_id"
)
private
Long
userId
;
/**
* 职位id
*/
@TableField
(
"pos_id"
)
private
Long
posId
;
public
Long
getUserPosId
()
{
return
userPosId
;
}
public
void
setUserPosId
(
Long
userPosId
)
{
this
.
userPosId
=
userPosId
;
}
public
Long
getUserId
()
{
return
userId
;
}
public
void
setUserId
(
Long
userId
)
{
this
.
userId
=
userId
;
}
public
Long
getPosId
()
{
return
posId
;
}
public
void
setPosId
(
Long
posId
)
{
this
.
posId
=
posId
;
}
@Override
public
String
toString
()
{
return
"UserPos{"
+
"userPosId="
+
userPosId
+
", userId="
+
userId
+
", posId="
+
posId
+
"}"
;
}
}
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/mapper/UserPosMapper.java
0 → 100755
View file @
44885cab
package
cn
.
stylefeng
.
guns
.
sys
.
modular
.
system
.
mapper
;
import
cn.stylefeng.guns.sys.modular.system.entity.UserPos
;
import
cn.stylefeng.guns.sys.modular.system.model.params.UserPosParam
;
import
cn.stylefeng.guns.sys.modular.system.model.result.UserPosResult
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
import
java.util.Map
;
/**
* <p>
* 用户职位关联表 Mapper 接口
* </p>
*
* @author stylefeng
* @since 2019-06-28
*/
public
interface
UserPosMapper
extends
BaseMapper
<
UserPos
>
{
/**
* 获取列表
*
* @author stylefeng
* @Date 2019-06-28
*/
List
<
UserPosResult
>
customList
(
@Param
(
"paramCondition"
)
UserPosParam
paramCondition
);
/**
* 获取map列表
*
* @author stylefeng
* @Date 2019-06-28
*/
List
<
Map
<
String
,
Object
>>
customMapList
(
@Param
(
"paramCondition"
)
UserPosParam
paramCondition
);
/**
* 获取分页实体列表
*
* @author stylefeng
* @Date 2019-06-28
*/
Page
<
UserPosResult
>
customPageList
(
@Param
(
"page"
)
Page
page
,
@Param
(
"paramCondition"
)
UserPosParam
paramCondition
);
/**
* 获取分页map列表
*
* @author stylefeng
* @Date 2019-06-28
*/
Page
<
Map
<
String
,
Object
>>
customPageMapList
(
@Param
(
"page"
)
Page
page
,
@Param
(
"paramCondition"
)
UserPosParam
paramCondition
);
}
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/mapper/mapping/UserPosMapper.xml
0 → 100755
View file @
44885cab
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.stylefeng.guns.sys.modular.system.mapper.UserPosMapper"
>
<!-- 通用查询映射结果 -->
<resultMap
id=
"BaseResultMap"
type=
"cn.stylefeng.guns.sys.modular.system.entity.UserPos"
>
<id
column=
"user_pos_id"
property=
"userPosId"
/>
<result
column=
"user_id"
property=
"userId"
/>
<result
column=
"pos_id"
property=
"posId"
/>
</resultMap>
<!-- 通用查询结果列 -->
<sql
id=
"Base_Column_List"
>
user_pos_id AS "userPosId", user_id AS "userId", pos_id AS "posId"
</sql>
<select
id=
"customList"
resultType=
"cn.stylefeng.guns.sys.modular.system.model.result.UserPosResult"
parameterType=
"cn.stylefeng.guns.sys.modular.system.model.params.UserPosParam"
>
select
<include
refid=
"Base_Column_List"
/>
from sys_user_pos where 1 = 1
</select>
<select
id=
"customMapList"
resultType=
"map"
parameterType=
"cn.stylefeng.guns.sys.modular.system.model.params.UserPosParam"
>
select
<include
refid=
"Base_Column_List"
/>
from sys_user_pos where 1 = 1
</select>
<select
id=
"customPageList"
resultType=
"cn.stylefeng.guns.sys.modular.system.model.result.UserPosResult"
parameterType=
"cn.stylefeng.guns.sys.modular.system.model.params.UserPosParam"
>
select
<include
refid=
"Base_Column_List"
/>
from sys_user_pos where 1 = 1
</select>
<select
id=
"customPageMapList"
resultType=
"map"
parameterType=
"cn.stylefeng.guns.sys.modular.system.model.params.UserPosParam"
>
select
<include
refid=
"Base_Column_List"
/>
from sys_user_pos where 1 = 1
</select>
</mapper>
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/model/UserDto.java
View file @
44885cab
...
...
@@ -44,4 +44,6 @@ public class UserDto {
private
String
status
;
private
String
avatar
;
private
String
position
;
}
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/model/params/UserPosParam.java
0 → 100755
View file @
44885cab
package
cn
.
stylefeng
.
guns
.
sys
.
modular
.
system
.
model
.
params
;
import
cn.stylefeng.roses.kernel.model.validator.BaseValidatingParam
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* <p>
* 用户职位关联表
* </p>
*
* @author stylefeng
* @since 2019-06-28
*/
@Data
public
class
UserPosParam
implements
Serializable
,
BaseValidatingParam
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键id
*/
private
Long
userPosId
;
/**
* 用户id
*/
private
Long
userId
;
/**
* 职位id
*/
private
Long
posId
;
@Override
public
String
checkParam
()
{
return
null
;
}
}
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/model/result/UserPosResult.java
0 → 100755
View file @
44885cab
package
cn
.
stylefeng
.
guns
.
sys
.
modular
.
system
.
model
.
result
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* <p>
* 用户职位关联表
* </p>
*
* @author stylefeng
* @since 2019-06-28
*/
@Data
public
class
UserPosResult
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键id
*/
private
Long
userPosId
;
/**
* 用户id
*/
private
Long
userId
;
/**
* 职位id
*/
private
Long
posId
;
}
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/service/PositionService.java
View file @
44885cab
...
...
@@ -66,4 +66,12 @@ public interface PositionService extends IService<Position> {
*/
LayuiPageInfo
findPageBySpec
(
PositionParam
param
);
/**
* 获取多选框的职位列表
*
* @author stylefeng
* @Date 2019-06-27
*/
LayuiPageInfo
listPositions
(
Long
userId
);
}
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/service/UserPosService.java
0 → 100755
View file @
44885cab
package
cn
.
stylefeng
.
guns
.
sys
.
modular
.
system
.
service
;
import
cn.stylefeng.guns.base.pojo.page.LayuiPageInfo
;
import
cn.stylefeng.guns.sys.modular.system.entity.UserPos
;
import
cn.stylefeng.guns.sys.modular.system.model.params.UserPosParam
;
import
cn.stylefeng.guns.sys.modular.system.model.result.UserPosResult
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
java.util.List
;
/**
* <p>
* 用户职位关联表 服务类
* </p>
*
* @author stylefeng
* @since 2019-06-28
*/
public
interface
UserPosService
extends
IService
<
UserPos
>
{
/**
* 新增
*
* @author stylefeng
* @Date 2019-06-28
*/
void
add
(
UserPosParam
param
);
/**
* 删除
*
* @author stylefeng
* @Date 2019-06-28
*/
void
delete
(
UserPosParam
param
);
/**
* 更新
*
* @author stylefeng
* @Date 2019-06-28
*/
void
update
(
UserPosParam
param
);
/**
* 查询单条数据,Specification模式
*
* @author stylefeng
* @Date 2019-06-28
*/
UserPosResult
findBySpec
(
UserPosParam
param
);
/**
* 查询列表,Specification模式
*
* @author stylefeng
* @Date 2019-06-28
*/
List
<
UserPosResult
>
findListBySpec
(
UserPosParam
param
);
/**
* 查询分页数据,Specification模式
*
* @author stylefeng
* @Date 2019-06-28
*/
LayuiPageInfo
findPageBySpec
(
UserPosParam
param
);
}
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/service/UserService.java
View file @
44885cab
...
...
@@ -12,11 +12,14 @@ import cn.stylefeng.guns.sys.core.exception.enums.BizExceptionEnum;
import
cn.stylefeng.guns.sys.core.shiro.ShiroKit
;
import
cn.stylefeng.guns.sys.core.shiro.service.UserAuthService
;
import
cn.stylefeng.guns.sys.modular.system.entity.User
;
import
cn.stylefeng.guns.sys.modular.system.entity.UserPos
;
import
cn.stylefeng.guns.sys.modular.system.factory.UserFactory
;
import
cn.stylefeng.guns.sys.modular.system.mapper.UserMapper
;
import
cn.stylefeng.guns.sys.modular.system.model.UserDto
;
import
cn.stylefeng.roses.core.datascope.DataScope
;
import
cn.stylefeng.roses.core.util.ToolUtil
;
import
cn.stylefeng.roses.kernel.model.exception.ServiceException
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.toolkit.SqlRunner
;
...
...
@@ -46,12 +49,16 @@ public class UserService extends ServiceImpl<UserMapper, User> {
@Autowired
private
UserAuthService
userAuthService
;
@Autowired
private
UserPosService
userPosService
;
/**
* 添加用戶
*
* @author fengshuonan
* @Date 2018/12/24 22:51
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
addUser
(
UserDto
user
)
{
// 判断账号是否重复
...
...
@@ -64,7 +71,11 @@ public class UserService extends ServiceImpl<UserMapper, User> {
String
salt
=
ShiroKit
.
getRandomSalt
(
5
);
String
password
=
ShiroKit
.
md5
(
user
.
getPassword
(),
salt
);
this
.
save
(
UserFactory
.
createUser
(
user
,
password
,
salt
));
User
newUser
=
UserFactory
.
createUser
(
user
,
password
,
salt
);
this
.
save
(
newUser
);
//添加职位关联
addPosition
(
user
.
getPosition
(),
newUser
.
getUserId
());
}
/**
...
...
@@ -73,6 +84,7 @@ public class UserService extends ServiceImpl<UserMapper, User> {
* @author fengshuonan
* @Date 2018/12/24 22:53
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
editUser
(
UserDto
user
)
{
User
oldUser
=
this
.
getById
(
user
.
getUserId
());
...
...
@@ -87,6 +99,12 @@ public class UserService extends ServiceImpl<UserMapper, User> {
throw
new
ServiceException
(
BizExceptionEnum
.
NO_PERMITION
);
}
}
//删除职位关联
userPosService
.
remove
(
new
QueryWrapper
<
UserPos
>().
eq
(
"user_id"
,
user
.
getUserId
()));
//添加职位关联
addPosition
(
user
.
getPosition
(),
user
.
getUserId
());
}
/**
...
...
@@ -107,6 +125,9 @@ public class UserService extends ServiceImpl<UserMapper, User> {
//删除对应的oauth2绑定表
SqlRunner
.
db
().
delete
(
"delete from oauth_user_info where user_id = {0}"
,
userId
);
//删除职位关联
userPosService
.
remove
(
new
QueryWrapper
<
UserPos
>().
eq
(
"user_id"
,
userId
));
}
/**
...
...
@@ -241,4 +262,25 @@ public class UserService extends ServiceImpl<UserMapper, User> {
return
map
;
}
/**
* 添加职位关联
*
* @author fengshuonan
* @Date 2019-06-28 13:35
*/
private
void
addPosition
(
String
positions
,
Long
userId
)
{
if
(
ToolUtil
.
isNotEmpty
(
positions
))
{
String
[]
position
=
positions
.
split
(
","
);
for
(
String
item
:
position
)
{
UserPos
entity
=
new
UserPos
();
entity
.
setUserId
(
userId
);
entity
.
setPosId
(
Long
.
valueOf
(
item
));
userPosService
.
save
(
entity
);
}
}
}
}
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/service/impl/PositionServiceImpl.java
View file @
44885cab
...
...
@@ -3,18 +3,23 @@ package cn.stylefeng.guns.sys.modular.system.service.impl;
import
cn.stylefeng.guns.base.pojo.page.LayuiPageFactory
;
import
cn.stylefeng.guns.base.pojo.page.LayuiPageInfo
;
import
cn.stylefeng.guns.sys.modular.system.entity.Position
;
import
cn.stylefeng.guns.sys.modular.system.entity.UserPos
;
import
cn.stylefeng.guns.sys.modular.system.mapper.PositionMapper
;
import
cn.stylefeng.guns.sys.modular.system.model.params.PositionParam
;
import
cn.stylefeng.guns.sys.modular.system.model.result.PositionResult
;
import
cn.stylefeng.guns.sys.modular.system.service.PositionService
;
import
cn.stylefeng.guns.sys.modular.system.service.UserPosService
;
import
cn.stylefeng.roses.core.util.ToolUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.io.Serializable
;
import
java.util.List
;
import
java.util.Map
;
/**
* <p>
...
...
@@ -27,19 +32,22 @@ import java.util.List;
@Service
public
class
PositionServiceImpl
extends
ServiceImpl
<
PositionMapper
,
Position
>
implements
PositionService
{
@Autowired
private
UserPosService
userPosService
;
@Override
public
void
add
(
PositionParam
param
){
public
void
add
(
PositionParam
param
)
{
Position
entity
=
getEntity
(
param
);
this
.
save
(
entity
);
}
@Override
public
void
delete
(
PositionParam
param
){
public
void
delete
(
PositionParam
param
)
{
this
.
removeById
(
getKey
(
param
));
}
@Override
public
void
update
(
PositionParam
param
){
public
void
update
(
PositionParam
param
)
{
Position
oldEntity
=
getOldEntity
(
param
);
Position
newEntity
=
getEntity
(
param
);
ToolUtil
.
copyProperties
(
newEntity
,
oldEntity
);
...
...
@@ -47,23 +55,56 @@ public class PositionServiceImpl extends ServiceImpl<PositionMapper, Position> i
}
@Override
public
PositionResult
findBySpec
(
PositionParam
param
){
public
PositionResult
findBySpec
(
PositionParam
param
)
{
return
null
;
}
@Override
public
List
<
PositionResult
>
findListBySpec
(
PositionParam
param
){
public
List
<
PositionResult
>
findListBySpec
(
PositionParam
param
)
{
return
null
;
}
@Override
public
LayuiPageInfo
findPageBySpec
(
PositionParam
param
){
public
LayuiPageInfo
findPageBySpec
(
PositionParam
param
)
{
Page
pageContext
=
getPageContext
();
IPage
page
=
this
.
baseMapper
.
customPageList
(
pageContext
,
param
);
return
LayuiPageFactory
.
createPageInfo
(
page
);
}
private
Serializable
getKey
(
PositionParam
param
){
@Override
public
LayuiPageInfo
listPositions
(
Long
userId
)
{
//找出所有职位
QueryWrapper
<
Position
>
objectQueryWrapper
=
new
QueryWrapper
<>();
objectQueryWrapper
.
select
(
"position_id"
,
"name"
);
List
<
Map
<
String
,
Object
>>
list
=
this
.
listMaps
(
objectQueryWrapper
);
//用户id为空,则直接返回
if
(
userId
==
null
)
{
}
else
{
//查询用户的职位id列表
List
<
UserPos
>
userPosList
=
this
.
userPosService
.
list
(
new
QueryWrapper
<
UserPos
>().
eq
(
"user_id"
,
userId
));
if
(
userPosList
!=
null
&&
userPosList
.
size
()
>
0
)
{
for
(
UserPos
userPos
:
userPosList
)
{
for
(
Map
<
String
,
Object
>
positionMap
:
list
)
{
if
(
userPos
.
getPosId
().
equals
(
positionMap
.
get
(
"position_id"
)))
{
positionMap
.
put
(
"selected"
,
true
);
}
}
}
}
}
LayuiPageInfo
layuiPageInfo
=
new
LayuiPageInfo
();
layuiPageInfo
.
setData
(
list
);
return
layuiPageInfo
;
}
private
Serializable
getKey
(
PositionParam
param
)
{
return
param
.
getPositionId
();
}
...
...
guns-sys/src/main/java/cn/stylefeng/guns/sys/modular/system/service/impl/UserPosServiceImpl.java
0 → 100755
View file @
44885cab
package
cn
.
stylefeng
.
guns
.
sys
.
modular
.
system
.
service
.
impl
;
import
cn.stylefeng.guns.base.pojo.page.LayuiPageFactory
;
import
cn.stylefeng.guns.base.pojo.page.LayuiPageInfo
;
import
cn.stylefeng.guns.sys.modular.system.entity.UserPos
;
import
cn.stylefeng.guns.sys.modular.system.mapper.UserPosMapper
;
import
cn.stylefeng.guns.sys.modular.system.model.params.UserPosParam
;
import
cn.stylefeng.guns.sys.modular.system.model.result.UserPosResult
;
import
cn.stylefeng.guns.sys.modular.system.service.UserPosService
;
import
cn.stylefeng.roses.core.util.ToolUtil
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.springframework.stereotype.Service
;
import
java.io.Serializable
;
import
java.util.List
;
/**
* <p>
* 用户职位关联表 服务实现类
* </p>
*
* @author stylefeng
* @since 2019-06-28
*/
@Service
public
class
UserPosServiceImpl
extends
ServiceImpl
<
UserPosMapper
,
UserPos
>
implements
UserPosService
{
@Override
public
void
add
(
UserPosParam
param
){
UserPos
entity
=
getEntity
(
param
);
this
.
save
(
entity
);
}
@Override
public
void
delete
(
UserPosParam
param
){
this
.
removeById
(
getKey
(
param
));
}
@Override
public
void
update
(
UserPosParam
param
){
UserPos
oldEntity
=
getOldEntity
(
param
);
UserPos
newEntity
=
getEntity
(
param
);
ToolUtil
.
copyProperties
(
newEntity
,
oldEntity
);
this
.
updateById
(
newEntity
);
}
@Override
public
UserPosResult
findBySpec
(
UserPosParam
param
){
return
null
;
}
@Override
public
List
<
UserPosResult
>
findListBySpec
(
UserPosParam
param
){
return
null
;
}
@Override
public
LayuiPageInfo
findPageBySpec
(
UserPosParam
param
){
Page
pageContext
=
getPageContext
();
IPage
page
=
this
.
baseMapper
.
customPageList
(
pageContext
,
param
);
return
LayuiPageFactory
.
createPageInfo
(
page
);
}
private
Serializable
getKey
(
UserPosParam
param
){
return
param
.
getUserPosId
();
}
private
Page
getPageContext
()
{
return
LayuiPageFactory
.
defaultPage
();
}
private
UserPos
getOldEntity
(
UserPosParam
param
)
{
return
this
.
getById
(
getKey
(
param
));
}
private
UserPos
getEntity
(
UserPosParam
param
)
{
UserPos
entity
=
new
UserPos
();
ToolUtil
.
copyProperties
(
param
,
entity
);
return
entity
;
}
}
guns-sys/src/main/webapp/assets/modular/system/user/user_add.js
View file @
44885cab
...
...
@@ -8,13 +8,14 @@ var UserInfoDlg = {
}
};
layui
.
use
([
'layer'
,
'form'
,
'admin'
,
'laydate'
,
'ax'
],
function
()
{
layui
.
use
([
'layer'
,
'form'
,
'admin'
,
'laydate'
,
'ax'
,
'formSelects'
],
function
()
{
var
$
=
layui
.
jquery
;
var
$ax
=
layui
.
ax
;
var
form
=
layui
.
form
;
var
admin
=
layui
.
admin
;
var
laydate
=
layui
.
laydate
;
var
layer
=
layui
.
layer
;
var
formSelects
=
layui
.
formSelects
;
// 让当前iframe弹层高度适应
admin
.
iframeAuto
();
...
...
@@ -73,4 +74,11 @@ layui.use(['layer', 'form', 'admin', 'laydate', 'ax'], function () {
$
(
"#backupPage"
).
click
(
function
()
{
window
.
location
.
href
=
Feng
.
ctxPath
+
"/mgr"
;
});
//初始化所有的职位列表
formSelects
.
config
(
'selPosition'
,
{
searchUrl
:
Feng
.
ctxPath
+
"/position/listPositions"
,
keyName
:
'name'
,
keyVal
:
'position_id'
});
});
\ No newline at end of file
guns-sys/src/main/webapp/assets/modular/system/user/user_edit.js
View file @
44885cab
...
...
@@ -8,13 +8,14 @@ var UserInfoDlg = {
}
};
layui
.
use
([
'layer'
,
'form'
,
'admin'
,
'laydate'
,
'ax'
],
function
()
{
layui
.
use
([
'layer'
,
'form'
,
'admin'
,
'laydate'
,
'ax'
,
'formSelects'
],
function
()
{
var
$
=
layui
.
jquery
;
var
$ax
=
layui
.
ax
;
var
form
=
layui
.
form
;
var
admin
=
layui
.
admin
;
var
laydate
=
layui
.
laydate
;
var
layer
=
layui
.
layer
;
var
formSelects
=
layui
.
formSelects
;
// 让当前iframe弹层高度适应
admin
.
iframeAuto
();
...
...
@@ -79,4 +80,11 @@ layui.use(['layer', 'form', 'admin', 'laydate', 'ax'], function () {
$
(
"#backupPage"
).
click
(
function
()
{
window
.
location
.
href
=
Feng
.
ctxPath
+
"/mgr"
;
});
//初始化所有的职位列表
formSelects
.
config
(
'selPosition'
,
{
searchUrl
:
Feng
.
ctxPath
+
"/position/listPositions?userId="
+
$
(
"#userId"
).
val
(),
keyName
:
'name'
,
keyVal
:
'position_id'
});
});
\ No newline at end of file
guns-sys/src/main/webapp/pages/modular/system/user/user_add.html
View file @
44885cab
@layout("/common/_container.html",{js:["/assets/modular/system/user/user_add.js"]}){
@layout("/common/_container.html",{js:["/assets/modular/system/user/user_add.js"]
,css:["/assets/common/module/formSelects/formSelects-v4.css"]
}){
<div
class=
"layui-body-header"
>
<span
class=
"layui-body-header-title"
>
用户管理-添加
</span>
</div>
...
...
@@ -29,19 +29,19 @@
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
密码
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<input
name=
"password"
placeholder=
"请输入密码"
type=
"password"
class=
"layui-input"
lay-verify=
"required|psw"
required
/>
<input
name=
"password"
placeholder=
"请输入密码"
type=
"password"
class=
"layui-input"
lay-verify=
"required|psw"
autocomplete=
"new-password"
required
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
重复密码
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<input
name=
"rePassword"
placeholder=
"请输入重复密码"
type=
"password"
class=
"layui-input"
lay-verify=
"required|repsw"
required
/>
<input
name=
"rePassword"
placeholder=
"请输入重复密码"
type=
"password"
class=
"layui-input"
autocomplete=
"new-password"
lay-verify=
"required|repsw"
required
/>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
邮箱
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<input
name=
"email"
placeholder=
"请输入邮箱"
type=
"text"
class=
"layui-input"
lay-verify=
"required|email"
required
/>
<input
name=
"email"
placeholder=
"请输入邮箱"
type=
"text"
class=
"layui-input"
lay-verify=
"required|email"
autocomplete=
"off"
required
/>
</div>
</div>
<div
class=
"layui-form-item"
>
...
...
@@ -59,6 +59,14 @@
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
职位
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<select
name=
"position"
xm-select=
"selPosition"
>
<option
value=
""
>
请选择职位
</option>
</select>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
电话
</label>
<div
class=
"layui-input-block"
>
<input
name=
"phone"
placeholder=
"请输入电话"
type=
"text"
class=
"layui-input"
/>
...
...
guns-sys/src/main/webapp/pages/modular/system/user/user_edit.html
View file @
44885cab
@layout("/common/_container.html",{js:["/assets/modular/system/user/user_edit.js"]}){
@layout("/common/_container.html",{js:["/assets/modular/system/user/user_edit.js"]
,css:["/assets/common/module/formSelects/formSelects-v4.css"]
}){
<div
class=
"layui-body-header"
>
<span
class=
"layui-body-header-title"
>
用户管理-修改
</span>
</div>
...
...
@@ -7,7 +7,7 @@
<div
class=
"layui-card"
>
<div
class=
"layui-card-body"
>
<form
id=
"userForm"
lay-filter=
"userForm"
class=
"layui-form model-form"
style=
"max-width: 700px;margin: 40px auto;"
>
<input
name=
"userId"
type=
"hidden"
/>
<input
id=
"userId"
name=
"userId"
type=
"hidden"
/>
<input
name=
"account"
type=
"hidden"
/>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
姓名
<span
style=
"color: red;"
>
*
</span></label>
...
...
@@ -42,6 +42,13 @@
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
职位
<span
style=
"color: red;"
>
*
</span></label>
<div
class=
"layui-input-block"
>
<select
name=
"position"
id=
"position"
xm-select=
"selPosition"
lay-verify=
"required"
required
>
</select>
</div>
</div>
<div
class=
"layui-form-item"
>
<label
class=
"layui-form-label"
>
电话
</label>
<div
class=
"layui-input-block"
>
<input
name=
"phone"
placeholder=
"请输入电话"
type=
"text"
class=
"layui-input"
/>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment