Commit adab11d3 authored by 赵啸非's avatar 赵啸非

修改工作人员添加

parent 777b0fd8
...@@ -17,16 +17,16 @@ export default { ...@@ -17,16 +17,16 @@ export default {
// 默认拉取数据 // 默认拉取数据
getData() { getData() {
this.loading = true; this.loading = true;
this.$post(this.urls.currUrl || this.pageInfo.currUrl, this.query) this.$get(this.urls.currUrl || this.pageInfo.currUrl, this.query)
.then(({ data }) => { .then(( res ) => {
const res = this.beforeRender(data); let data = this.beforeRender(res.data);
//转化枚举类型字段的number值为arrays //转化枚举类型字段的number值为arrays
res.entity = this.util_toArrays(res.entity, this.toArrays); data = this.util_toArrays(data, this.toArrays);
// 转化枚举类型字段的number值为string // 转化枚举类型字段的number值为string
res.entity = this.util_toString(res.entity, this.toString); data= this.util_toString(data, this.toString);
// //
res.entity = this.util_toDateStr(res.entity, this.toDate); data = this.util_toDateStr(data, this.toDate);
this.form = Object.assign({}, this.form, res.entity); this.form = Object.assign({}, this.form, data);
this.dict = Object.assign({}, this.dict, res.dict); this.dict = Object.assign({}, this.dict, res.dict);
this.afterRender(res); this.afterRender(res);
}) })
...@@ -118,7 +118,7 @@ export default { ...@@ -118,7 +118,7 @@ export default {
urlArray.push('add'); urlArray.push('add');
let addUrl = urlArray.join('/'); let addUrl = urlArray.join('/');
urlArray.pop(); urlArray.pop();
urlArray.push('view'); urlArray.push('info');
let viewUrl = urlArray.join('/'); let viewUrl = urlArray.join('/');
return { return {
type, type,
......
...@@ -5,10 +5,14 @@ import cookie from './cookie'; ...@@ -5,10 +5,14 @@ import cookie from './cookie';
import httpErrorHandler from './httpErrorHandler'; import httpErrorHandler from './httpErrorHandler';
const instance = axios.create({ const instance = axios.create({
baseURL: '/m', baseURL: '/',
headers: { headers: {
// post: {
// 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
// 'dataType': 'json',
// }
post: { post: {
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8', 'Content-Type': 'application/json;charset=UTF-8',
'dataType': 'json', 'dataType': 'json',
} }
}, },
...@@ -27,14 +31,14 @@ instance.interceptors.request.use(config => { ...@@ -27,14 +31,14 @@ instance.interceptors.request.use(config => {
//config.data = Qs.stringify(config.data, {arrayFormat: 'repeat', allowDots: true}); //config.data = Qs.stringify(config.data, {arrayFormat: 'repeat', allowDots: true});
config.data = Qs.stringify(config.data, {arrayFormat: 'indices', allowDots: true}); //config.data = Qs.stringify(config.data, {arrayFormat: 'indices', allowDots: true});
//brackets //brackets
// 也可以在这里给请求添加token之类的字段 // 也可以在这里给请求添加token之类的字段
// config.headers['Content-Type'] = 'application/json;charset=UTF-8' // config.headers['Content-Type'] = 'application/json;charset=UTF-8'
// config.headers.timestamp = Math.floor(new Date().getTime() / 1000) // config.headers.timestamp = Math.floor(new Date().getTime() / 1000)
// config.headers.token = sessionStorage.getItem('token') || '' // config.headers.token = sessionStorage.getItem('token') || ''
//console.log("request config",config); console.log("request config",config);
return config; return config;
......
...@@ -31,12 +31,11 @@ ...@@ -31,12 +31,11 @@
<script> <script>
//import { createSocket } from '@/assets/utils/websocket' //import { createSocket } from '@/assets/utils/websocket'
const securityCodeUrl = '/m/securitycode/createCode?v='; const securityCodeUrl = '/securitycode/createCode?v=';
export default { export default {
name: 'login', name: 'login',
created() { created() {
console.log(11111)
this.refreshCode() this.refreshCode()
}, },
......
...@@ -70,10 +70,10 @@ export default { ...@@ -70,10 +70,10 @@ export default {
components: { dialogShow,viewShow }, components: { dialogShow,viewShow },
mixins: [tree], mixins: [tree],
created() { created() {
this.$post("/area/getListByParentId", { this.$get("/area/getListByParentId", {
parentId: 0, parentId: 0,
}).then(({ data }) => { }).then(({ data }) => {
this.areaData=data.result this.areaData=data.data
}); });
}, },
...@@ -138,10 +138,10 @@ export default { ...@@ -138,10 +138,10 @@ export default {
if (node.level === 0) { if (node.level === 0) {
return; return;
} }
this.$post("/area/getListByParentId", { this.$get("/area/getListByParentId", {
parentId: node.data.id, parentId: node.data.id,
}).then(({ data }) => { }).then(({ data }) => {
resolve(data.result); resolve(data.data);
}); });
}, },
......
...@@ -13,11 +13,11 @@ module.exports = { ...@@ -13,11 +13,11 @@ module.exports = {
devServer: { devServer: {
inline: true, inline: true,
disableHostCheck: true, disableHostCheck: true,
port: 8982, port: 8085,
hot: true,//自动保存 hot: true,//自动保存
proxy: { proxy: {
'/m': { '/': {
target: 'http://127.0.0.1:17311', target: 'http://192.168.0.217:17311',
changeOrigin: true, changeOrigin: true,
secure: false, secure: false,
cookieDomainRewrite: 'plm.testnew.com', cookieDomainRewrite: 'plm.testnew.com',
......
#! /bin/sh #! /bin/sh
PORT="17211" PORT="@profiles.server.port@"
BASEDIR=`dirname $0` BASEDIR=`dirname $0`
BASEDIR=`(cd "$BASEDIR"; pwd)` BASEDIR=`(cd "$BASEDIR"; pwd)`
PROJECT_NAME="@project.artifactId@" PROJECT_NAME="@project.artifactId@"
......
...@@ -15,14 +15,24 @@ import java.util.List; ...@@ -15,14 +15,24 @@ import java.util.List;
public class WorkmanVo extends BaseEntityLong { public class WorkmanVo extends BaseEntityLong {
/** /**
* 用户 * 登录
*/ */
private String userName; private String loginName;
/** /**
* 密码 * 登录密码,使用md5双次加密
*/ */
private String password; private String loginPwd;
/**
* 系统用户名
*/
private String systemUserName;
/**
* 权限Id
*/
private Long roleId;
} }
\ No newline at end of file
...@@ -3,9 +3,16 @@ package com.mortals.xhx.module.workman.service.impl; ...@@ -3,9 +3,16 @@ package com.mortals.xhx.module.workman.service.impl;
import com.mortals.framework.common.code.UserType; import com.mortals.framework.common.code.UserType;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.service.IUser;
import com.mortals.framework.util.SecurityUtil; import com.mortals.framework.util.SecurityUtil;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.base.system.role.model.RoleUserQuery;
import com.mortals.xhx.base.system.role.service.RoleUserService;
import com.mortals.xhx.base.system.user.model.UserEntity; import com.mortals.xhx.base.system.user.model.UserEntity;
import com.mortals.xhx.base.system.user.model.UserQuery;
import com.mortals.xhx.base.system.user.service.UserService; import com.mortals.xhx.base.system.user.service.UserService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl; import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
...@@ -14,7 +21,9 @@ import com.mortals.xhx.module.workman.model.WorkmanEntity; ...@@ -14,7 +21,9 @@ import com.mortals.xhx.module.workman.model.WorkmanEntity;
import com.mortals.xhx.module.workman.service.WorkmanService; import com.mortals.xhx.module.workman.service.WorkmanService;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import java.util.Arrays;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* WorkmanService * WorkmanService
...@@ -28,28 +37,69 @@ public class WorkmanServiceImpl extends AbstractCRUDServiceImpl<WorkmanDao, Work ...@@ -28,28 +37,69 @@ public class WorkmanServiceImpl extends AbstractCRUDServiceImpl<WorkmanDao, Work
@Autowired @Autowired
private UserService userService; private UserService userService;
@Autowired
private RoleUserService roleUserService;
@Override
protected void findAfter(WorkmanEntity params, Context context, List<WorkmanEntity> list) throws AppException {
buildList(list);
super.findAfter(params, context, list);
}
@Override
protected void findAfter(WorkmanEntity params, PageInfo pageInfo, Context context, List<WorkmanEntity> list) throws AppException {
buildList(list);
super.findAfter(params, pageInfo, context, list);
}
private void buildList(List<WorkmanEntity> list) {
list.stream().peek(item -> {
if (!ObjectUtils.isEmpty(item.getSystemUserId())) {
UserEntity userEntity = userService.get(item.getSystemUserId());
if (!ObjectUtils.isEmpty(userEntity)) {
item.setSystemUserName(userEntity.getRealName());
}
}
}).count();
}
@Override @Override
protected void saveBefore(WorkmanEntity entity, Context context) throws AppException { protected void saveBefore(WorkmanEntity entity, Context context) throws AppException {
//新增 添加 IUser currUser = context.getUser();
try {
UserEntity userEntity = new UserEntity(); UserEntity user = new UserEntity();
userEntity.initAttrValue(); user.setLoginName(entity.getLoginName());
userEntity.setRealName(entity.getName()); user.setLoginPwd(entity.getLoginPwd());
userEntity.setLoginName(entity.getUserName()); user.setRealName(entity.getName());
userEntity.setLoginPwd(SecurityUtil.md5DoubleEncoding(entity.getPassword())); user.setMobile(entity.getMobile());
userEntity.setMobile(entity.getMobile()); user.setUserType(1);
userEntity.setUserType(2); user.setStatus(1);
userEntity.setCreateTime(new Date()); user.setCreateTime(new Date());
userEntity.setCreateUser(context.getUser().getLoginName()); if (currUser != null) {
userEntity.setCreateUserName(context.getUser().getRealName()); user.setCreateUser(currUser.getLoginName());
userEntity.setSiteId(entity.getSiteId()); user.setCreateUserName(currUser.getRealName());
userEntity.setSiteName(entity.getSiteName()); user.setCreateUserId(currUser.getId());
userService.save(userEntity); }
entity.setSystemUserId(userEntity.getId()); if (StringUtils.isNotNull(user.getLoginName())) {
} catch (Exception e) { if (StringUtils.isNull(user.getLoginPwd())) {
log.error("创建工作人员异常!", e); throw new AppException("密码不能为空!");
throw new AppException(); }
List<UserEntity> list = userService.find(new UserQuery().loginName(user.getLoginName()));
if (CollectionUtils.isNotEmpty(list)) {
throw new AppException("账号已存在!");
}
userService.save(user, context);
if (ObjectUtils.isEmpty(entity.getRoleId())) {
throw new AppException("未选择用户权限!");
}
//添加权限
RoleUserQuery roleUserQuery = new RoleUserQuery();
roleUserQuery.setUserId(user.getId());
roleUserQuery.setRoleIdList(Arrays.asList(new Long[]{entity.getRoleId()}));
roleUserService.doDistributionRole(roleUserQuery);
entity.setSystemUserId(user.getId());
} }
super.saveBefore(entity, context); super.saveBefore(entity, context);
} }
...@@ -57,15 +107,37 @@ public class WorkmanServiceImpl extends AbstractCRUDServiceImpl<WorkmanDao, Work ...@@ -57,15 +107,37 @@ public class WorkmanServiceImpl extends AbstractCRUDServiceImpl<WorkmanDao, Work
@Override @Override
protected void updateBefore(WorkmanEntity entity, Context context) throws AppException { protected void updateBefore(WorkmanEntity entity, Context context) throws AppException {
if (!ObjectUtils.isEmpty(entity.getSystemUserId())) { if (!ObjectUtils.isEmpty(entity.getSystemUserId())) {
try { RoleUserQuery roleUserQuery = new RoleUserQuery();
UserEntity userEntity = userService.get(entity.getSystemUserId(), context); roleUserQuery.setUserId(entity.getSystemUserId());
userEntity.setLoginPwd(SecurityUtil.md5DoubleEncoding(entity.getPassword())); roleUserQuery.setRoleIdList(Arrays.asList(new Long[]{entity.getRoleId()}));
userService.update(userEntity, context); roleUserService.doDistributionRole(roleUserQuery);
} catch (Exception e) {
log.error("更新密码异常", e);
}
} }
super.updateBefore(entity, context); super.updateBefore(entity, context);
} }
@Override
protected void saveAfter(WorkmanEntity entity, Context context) throws AppException {
super.saveAfter(entity, context);
}
@Override
protected void removeBefore(Long[] ids, Context context) throws AppException {
Arrays.asList(ids).stream().peek(item -> {
WorkmanEntity workmanEntity = this.get(item);
if (!ObjectUtils.isEmpty(workmanEntity) && !ObjectUtils.isEmpty(workmanEntity.getSystemUserId())) {
//删除用户及其关联信息
userService.remove(workmanEntity.getSystemUserId(), context);
RoleUserQuery roleUserQuery = new RoleUserQuery();
roleUserQuery.setUserId(workmanEntity.getSystemUserId());
Long[] roleUserIds = roleUserService.find(roleUserQuery).stream().map(m -> m.getId()).toArray(Long[]::new);
roleUserService.remove(roleUserIds, context);
}
}).count();
super.removeBefore(ids, context);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.workman.web; package com.mortals.xhx.module.workman.web;
import com.mortals.framework.exception.AppException;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.base.system.role.model.RoleQuery;
import com.mortals.xhx.base.system.role.model.RoleUserEntity;
import com.mortals.xhx.base.system.role.model.RoleUserQuery;
import com.mortals.xhx.base.system.role.service.RoleService;
import com.mortals.xhx.base.system.role.service.RoleUserService;
import com.mortals.xhx.base.system.user.model.UserEntity;
import com.mortals.xhx.base.system.user.model.UserQuery;
import com.mortals.xhx.base.system.user.service.UserService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonPhpController; import com.mortals.framework.web.BaseCRUDJsonPhpController;
import com.mortals.xhx.module.workman.model.WorkmanEntity; import com.mortals.xhx.module.workman.model.WorkmanEntity;
import com.mortals.xhx.module.workman.model.WorkmanQuery; import com.mortals.xhx.module.workman.model.WorkmanQuery;
import com.mortals.xhx.module.workman.service.WorkmanService; import com.mortals.xhx.module.workman.service.WorkmanService;
import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils; import com.mortals.framework.util.StringUtils;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import java.util.Arrays; import java.util.Arrays;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*; import static com.mortals.framework.ap.SysConstains.*;
/** /**
*
* 工作人员 * 工作人员
* *
* @author zxfei * @author zxfei
...@@ -32,22 +49,47 @@ import static com.mortals.framework.ap.SysConstains.*; ...@@ -32,22 +49,47 @@ import static com.mortals.framework.ap.SysConstains.*;
*/ */
@RestController @RestController
@RequestMapping("workman") @RequestMapping("workman")
public class WorkmanController extends BaseCRUDJsonPhpController<WorkmanService,WorkmanForm,WorkmanEntity,Long> { public class WorkmanController extends BaseCRUDJsonPhpController<WorkmanService, WorkmanForm, WorkmanEntity, Long> {
@Autowired @Autowired
private ParamService paramService; private ParamService paramService;
@Autowired
private UserService userService;
@Autowired
private RoleService roleService;
@Autowired
private RoleUserService roleUserService;
public WorkmanController(){ public WorkmanController() {
super.setFormClass(WorkmanForm.class); super.setFormClass(WorkmanForm.class);
super.setModuleDesc( "工作人员"); super.setModuleDesc("工作人员");
} }
@Override @Override
protected void init(HttpServletRequest request, HttpServletResponse response, WorkmanForm form, Map<String, Object> model, Context context) { protected void init(HttpServletRequest request, HttpServletResponse response, WorkmanForm form, Map<String, Object> model, Context context) {
this.addDict(model, "politicalstatus", paramService.getParamBySecondOrganize("Workman","politicalstatus")); this.addDict(model, "politicalstatus", paramService.getParamBySecondOrganize("Workman", "politicalstatus"));
this.addDict(model, "dangyuan", paramService.getParamBySecondOrganize("Workman","dangyuan")); this.addDict(model, "dangyuan", paramService.getParamBySecondOrganize("Workman", "dangyuan"));
this.addDict(model, "starlevel", paramService.getParamBySecondOrganize("Workman","starlevel")); this.addDict(model, "starlevel", paramService.getParamBySecondOrganize("Workman", "starlevel"));
this.addDict(model, "online", paramService.getParamBySecondOrganize("Workman","online")); this.addDict(model, "online", paramService.getParamBySecondOrganize("Workman", "online"));
Map<String, String> userCollect = userService.find(new UserQuery(), getContext()).stream()
.filter(f -> !this.service.find(new WorkmanQuery()).stream().map(WorkmanEntity::getSystemUserId).collect(Collectors.toSet()).contains(f.getId()))
.collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getRealName(), (o, n) -> n));
WorkmanEntity workmanEntity = (WorkmanEntity) model.get(KEY_RESULT_ENTITY);
if (!ObjectUtils.isEmpty(workmanEntity) && !ObjectUtils.isEmpty(workmanEntity.getSystemUserId())) {
UserEntity userEntity = userService.get(workmanEntity.getSystemUserId());
if (!ObjectUtils.isEmpty(userEntity)) {
userCollect.put(userEntity.getId().toString(), userEntity.getRealName());
}
}
Map<String, String> roleCollect = roleService.find(new RoleQuery())
.stream().collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getName(), (o, n) -> n));
this.addDict(model, "systemUserId", userCollect);
this.addDict(model, "roleId", roleCollect);
super.init(request, response, form, model, context); super.init(request, response, form, model, context);
} }
...@@ -202,4 +244,30 @@ public class WorkmanController extends BaseCRUDJsonPhpController<WorkmanService, ...@@ -202,4 +244,30 @@ public class WorkmanController extends BaseCRUDJsonPhpController<WorkmanService,
log.error("工作人员导出错误", e); log.error("工作人员导出错误", e);
} }
} }
@Override
protected int editAfter(HttpServletRequest request, HttpServletResponse response, WorkmanForm form, Map<String, Object> model, WorkmanEntity entity, Context context) throws AppException {
buildWorkman(entity);
return super.editAfter(request, response, form, model, entity, context);
}
@Override
protected int viewAfter(HttpServletRequest request, HttpServletResponse response, WorkmanForm form, Map<String, Object> model, WorkmanEntity entity, Context context) throws AppException {
buildWorkman(entity);
return super.viewAfter(request, response, form, model, entity, context);
}
private void buildWorkman(WorkmanEntity entity) {
UserEntity userEntity = userService.get(entity.getSystemUserId());
if (!ObjectUtils.isEmpty(userEntity)) {
entity.setLoginName(userEntity.getLoginName());
entity.setLoginPwd(userEntity.getLoginPwd());
RoleUserQuery roleUserQuery = new RoleUserQuery();
roleUserQuery.setUserId(userEntity.getId());
RoleUserEntity roleUserEntity = roleUserService.selectOne(roleUserQuery);
if (!ObjectUtils.isEmpty(roleUserEntity)) {
entity.setRoleId(roleUserEntity.getRoleId());
}
}
}
} }
\ No newline at end of file
...@@ -63,7 +63,7 @@ ...@@ -63,7 +63,7 @@
<profiles.redis.database>4</profiles.redis.database> <profiles.redis.database>4</profiles.redis.database>
<profiles.filepath>/mortals/data</profiles.filepath> <profiles.filepath>/mortals/data</profiles.filepath>
<profiles.log.level>INFO</profiles.log.level> <profiles.log.level>INFO</profiles.log.level>
<profiles.log.path>/logs</profiles.log.path> <profiles.log.path>/mortals/app/logs</profiles.log.path>
<profiles.data.path>/data</profiles.data.path> <profiles.data.path>/data</profiles.data.path>
</properties> </properties>
</profile> </profile>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment