Files
jshERP/src/main/java/com/jsh/erp/service/role/RoleService.java
2019-04-04 23:02:46 +08:00

109 lines
3.9 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package com.jsh.erp.service.role;
import com.alibaba.fastjson.JSONObject;
import com.jsh.erp.constants.BusinessConstants;
import com.jsh.erp.datasource.entities.Role;
import com.jsh.erp.datasource.entities.RoleExample;
import com.jsh.erp.datasource.entities.User;
import com.jsh.erp.datasource.entities.UserExample;
import com.jsh.erp.datasource.mappers.RoleMapper;
import com.jsh.erp.datasource.mappers.RoleMapperEx;
import com.jsh.erp.datasource.mappers.UserMapper;
import com.jsh.erp.service.log.LogService;
import com.jsh.erp.service.user.UserService;
import com.jsh.erp.utils.QueryUtils;
import com.jsh.erp.utils.RegExpTools;
import com.jsh.erp.utils.StringUtil;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Service
public class RoleService {
@Resource
private RoleMapper roleMapper;
@Resource
private RoleMapperEx roleMapperEx;
@Resource
private LogService logService;
@Resource
private UserService userService;
public Role getRole(long id) {
return roleMapper.selectByPrimaryKey(id);
}
public List<Role> getRole() {
RoleExample example = new RoleExample();
return roleMapper.selectByExample(example);
}
public List<Role> select(String name, int offset, int rows) {
return roleMapperEx.selectByConditionRole(name, offset, rows);
}
public Long countRole(String name) {
return roleMapperEx.countsByRole(name);
}
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
public int insertRole(String beanJson, HttpServletRequest request) {
Role role = JSONObject.parseObject(beanJson, Role.class);
return roleMapper.insertSelective(role);
}
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
public int updateRole(String beanJson, Long id) {
Role role = JSONObject.parseObject(beanJson, Role.class);
role.setId(id);
return roleMapper.updateByPrimaryKeySelective(role);
}
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
public int deleteRole(Long id) {
return roleMapper.deleteByPrimaryKey(id);
}
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
public int batchDeleteRole(String ids) {
List<Long> idList = StringUtil.strToLongList(ids);
RoleExample example = new RoleExample();
example.createCriteria().andIdIn(idList);
return roleMapper.deleteByExample(example);
}
public List<Role> findUserRole(){
RoleExample example = new RoleExample();
example.setOrderByClause("Id");
example.createCriteria().andDeleteFlagNotEqualTo(BusinessConstants.DELETE_FLAG_DELETED);
List<Role> list = roleMapper.selectByExample(example);
return list;
}
/**
* create by: qiankunpingtai
* websitehttps://qiankunpingtai.cn
* description:
* 逻辑删除角色信息
* create time: 2019/3/28 15:44
* @Param: ids
* @return int
*/
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
public int batchDeleteRoleByIds(String ids) {
logService.insertLog(BusinessConstants.LOG_INTERFACE_NAME_SERIAL_NUMBER,
new StringBuffer(BusinessConstants.LOG_OPERATION_TYPE_DELETE).append(ids).toString(),
((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest());
User userInfo=userService.getCurrentUser();
String [] idArray=ids.split(",");
return roleMapperEx.batchDeleteRoleByIds(new Date(),userInfo==null?null:userInfo.getId(),idArray);
}
}