Commit eba46ee3 authored by mengmeng's avatar mengmeng

一用户多权限以及一案多码修改

parent cd124f0a
package io.hmit.common.config;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
/**
* cjrone项目配置
*
* @author kernespring
* @Date 2019/04/02 15:49
*/
@Component
@ConfigurationProperties(prefix = FhjwProperties.PREFIX)
public class FhjwProperties {
public static final String PREFIX = "fhjw";
private String uploadPath;
public String getUploadPath() {
return uploadPath;
}
public void setUploadPath(String uploadPath) {
this.uploadPath = uploadPath;
}
}
package io.hmit.modules.fhjw.controller;
import io.hmit.common.annotation.LogOperation;
import io.hmit.common.constant.Constant;
import io.hmit.common.page.PageData;
import io.hmit.common.utils.ExcelUtils;
import io.hmit.common.utils.Result;
import io.hmit.common.validator.AssertUtils;
import io.hmit.common.validator.ValidatorUtils;
import io.hmit.common.validator.group.AddGroup;
import io.hmit.common.validator.group.DefaultGroup;
import io.hmit.common.validator.group.UpdateGroup;
import io.hmit.modules.fhjw.dto.FhiwFunctionDTO;
import io.hmit.modules.fhjw.excel.FhiwFunctionExcel;
import io.hmit.modules.fhjw.service.FhiwFunctionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@RestController
@RequestMapping("fhjw/fhiwfunction")
@Api(tags="评价模块")
public class FhiwFunctionController {
@Autowired
private FhiwFunctionService fhiwFunctionService;
@GetMapping("page")
@ApiOperation("分页")
@ApiImplicitParams({
@ApiImplicitParam(name = Constant.PAGE, value = "当前页码,从1开始", paramType = "query", required = true, dataType="int") ,
@ApiImplicitParam(name = Constant.LIMIT, value = "每页显示记录数", paramType = "query",required = true, dataType="int") ,
@ApiImplicitParam(name = Constant.ORDER_FIELD, value = "排序字段", paramType = "query", dataType="String") ,
@ApiImplicitParam(name = Constant.ORDER, value = "排序方式,可选值(asc、desc)", paramType = "query", dataType="String")
})
@RequiresPermissions("fhjw:fhiwfunction:page")
public Result<PageData<FhiwFunctionDTO>> page(@ApiIgnore @RequestParam Map<String, Object> params){
PageData<FhiwFunctionDTO> page = fhiwFunctionService.page(params);
return new Result<PageData<FhiwFunctionDTO>>().ok(page);
}
@GetMapping("{id}")
@ApiOperation("信息")
@RequiresPermissions("fhjw:fhiwfunction:info")
public Result<FhiwFunctionDTO> get(@PathVariable("id") Long id){
FhiwFunctionDTO data = fhiwFunctionService.get(id);
return new Result<FhiwFunctionDTO>().ok(data);
}
@GetMapping("/getAllFuncList")
@ApiOperation("获取所有的评价模版")
public Result<List<FhiwFunctionDTO>> getAllFuncList(){
List<FhiwFunctionDTO> data = fhiwFunctionService.getAllFuncList();
return new Result<List<FhiwFunctionDTO>>().ok(data);
}
@PostMapping
@ApiOperation("保存")
@LogOperation("保存")
@RequiresPermissions("fhjw:fhiwfunction:save")
public Result save(@RequestBody FhiwFunctionDTO dto){
//校验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
fhiwFunctionService.save(dto);
return new Result();
}
@PutMapping
@ApiOperation("修改")
@LogOperation("修改")
@RequiresPermissions("fhjw:fhiwfunction:update")
public Result update(@RequestBody FhiwFunctionDTO dto){
//校验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
fhiwFunctionService.update(dto);
return new Result();
}
@DeleteMapping
@ApiOperation("删除")
@LogOperation("删除")
@RequiresPermissions("fhjw:fhiwfunction:delete")
public Result delete(@RequestBody Long[] ids){
//校验数据
AssertUtils.isArrayEmpty(ids, "id");
fhiwFunctionService.delete(ids);
return new Result();
}
@GetMapping("export")
@ApiOperation("导出")
@LogOperation("导出")
@RequiresPermissions("fhjw:fhiwfunction:export")
public void export(@ApiIgnore @RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
List<FhiwFunctionDTO> list = fhiwFunctionService.list(params);
ExcelUtils.exportExcelToTarget(response, null, list, FhiwFunctionExcel.class);
}
}
package io.hmit.modules.fhjw.controller;
import io.hmit.common.annotation.LogOperation;
import io.hmit.common.constant.Constant;
import io.hmit.common.page.PageData;
import io.hmit.common.utils.ExcelUtils;
import io.hmit.common.utils.Result;
import io.hmit.common.validator.AssertUtils;
import io.hmit.common.validator.ValidatorUtils;
import io.hmit.common.validator.group.AddGroup;
import io.hmit.common.validator.group.DefaultGroup;
import io.hmit.common.validator.group.UpdateGroup;
import io.hmit.modules.fhjw.dto.FhjwRoleFunctionDTO;
import io.hmit.modules.fhjw.excel.FhjwRoleFunctionExcel;
import io.hmit.modules.fhjw.service.FhjwRoleFunctionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@RestController
@RequestMapping("fhjw/fhjwrolefunction")
@Api(tags="用户评价权限功能")
public class FhjwRoleFunctionController {
@Autowired
private FhjwRoleFunctionService fhjwRoleFunctionService;
@GetMapping("page")
@ApiOperation("分页")
@ApiImplicitParams({
@ApiImplicitParam(name = Constant.PAGE, value = "当前页码,从1开始", paramType = "query", required = true, dataType="int") ,
@ApiImplicitParam(name = Constant.LIMIT, value = "每页显示记录数", paramType = "query",required = true, dataType="int") ,
@ApiImplicitParam(name = Constant.ORDER_FIELD, value = "排序字段", paramType = "query", dataType="String") ,
@ApiImplicitParam(name = Constant.ORDER, value = "排序方式,可选值(asc、desc)", paramType = "query", dataType="String")
})
@RequiresPermissions("fhjw:fhjwrolefunction:page")
public Result<PageData<FhjwRoleFunctionDTO>> page(@ApiIgnore @RequestParam Map<String, Object> params){
PageData<FhjwRoleFunctionDTO> page = fhjwRoleFunctionService.page(params);
return new Result<PageData<FhjwRoleFunctionDTO>>().ok(page);
}
@GetMapping("{id}")
@ApiOperation("信息")
@RequiresPermissions("fhjw:fhjwrolefunction:info")
public Result<FhjwRoleFunctionDTO> get(@PathVariable("id") Long id){
FhjwRoleFunctionDTO data = fhjwRoleFunctionService.get(id);
return new Result<FhjwRoleFunctionDTO>().ok(data);
}
@PostMapping
@ApiOperation("保存")
@LogOperation("保存")
@RequiresPermissions("fhjw:fhjwrolefunction:save")
public Result save(@RequestBody FhjwRoleFunctionDTO dto){
//校验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
fhjwRoleFunctionService.save(dto);
return new Result();
}
@PutMapping
@ApiOperation("修改")
@LogOperation("修改")
@RequiresPermissions("fhjw:fhjwrolefunction:update")
public Result update(@RequestBody FhjwRoleFunctionDTO dto){
//校验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
fhjwRoleFunctionService.update(dto);
return new Result();
}
@DeleteMapping
@ApiOperation("删除")
@LogOperation("删除")
@RequiresPermissions("fhjw:fhjwrolefunction:delete")
public Result delete(@RequestBody Long[] ids){
//校验数据
AssertUtils.isArrayEmpty(ids, "id");
fhjwRoleFunctionService.delete(ids);
return new Result();
}
@GetMapping("export")
@ApiOperation("导出")
@LogOperation("导出")
@RequiresPermissions("fhjw:fhjwrolefunction:export")
public void export(@ApiIgnore @RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
List<FhjwRoleFunctionDTO> list = fhjwRoleFunctionService.list(params);
ExcelUtils.exportExcelToTarget(response, null, list, FhjwRoleFunctionExcel.class);
}
}
\ No newline at end of file
...@@ -66,7 +66,7 @@ public class RoleController { ...@@ -66,7 +66,7 @@ public class RoleController {
} }
@GetMapping("/getAllRole") @GetMapping("/getAllRole")
@ApiOperation("获取所有模版") @ApiOperation("获取所有权限")
public Result<List<RoleDTO>> list() { public Result<List<RoleDTO>> list() {
List<RoleDTO> list = roleService.getAllRoleList(); List<RoleDTO> list = roleService.getAllRoleList();
......
package io.hmit.modules.fhjw.dao;
import io.hmit.common.dao.BaseDao;
import io.hmit.modules.fhjw.entity.FhiwFunctionEntity;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Mapper
public interface FhiwFunctionDao extends BaseDao<FhiwFunctionEntity> {
List<FhiwFunctionEntity> getAllFuncList();
}
package io.hmit.modules.fhjw.dao;
import io.hmit.common.dao.BaseDao;
import io.hmit.modules.fhjw.entity.FhjwRoleFunctionEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Mapper
public interface FhjwRoleFunctionDao extends BaseDao<FhjwRoleFunctionEntity> {
}
\ No newline at end of file
...@@ -12,5 +12,11 @@ import org.apache.ibatis.annotations.Mapper; ...@@ -12,5 +12,11 @@ import org.apache.ibatis.annotations.Mapper;
*/ */
@Mapper @Mapper
public interface UserRoleDao extends BaseDao<UserRoleEntity> { public interface UserRoleDao extends BaseDao<UserRoleEntity> {
/**
} * 根据用户id,删除角色用户关系
\ No newline at end of file *
* @param userId 用户id
*/
void deleteByUserId(Long userId);
}
package io.hmit.modules.fhjw.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Data
@ApiModel(value = "评价模块")
public class FhiwFunctionDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "id")
private Long id;
@ApiModelProperty(value = "评价模块名字")
private String name;
@ApiModelProperty(value = "创建者")
private Long creator;
@ApiModelProperty(value = "创建时间")
private Date createDate;
@ApiModelProperty(value = "更新者")
private Long updater;
@ApiModelProperty(value = "更新时间")
private Date updateDate;
}
\ No newline at end of file
...@@ -32,6 +32,15 @@ public class FhjwCaseDTO implements Serializable { ...@@ -32,6 +32,15 @@ public class FhjwCaseDTO implements Serializable {
@ApiModelProperty(value = "办理期限") @ApiModelProperty(value = "办理期限")
private String deadline; private String deadline;
@ApiModelProperty(value = "承办人姓名")
private String undertaker;
@ApiModelProperty(value = "当事人姓名")
private String peopleName;
@ApiModelProperty(value = "代理人姓名")
private String agentName;
@ApiModelProperty(value = "受理日期") @ApiModelProperty(value = "受理日期")
private String acceptanceDate; private String acceptanceDate;
...@@ -56,6 +65,15 @@ public class FhjwCaseDTO implements Serializable { ...@@ -56,6 +65,15 @@ public class FhjwCaseDTO implements Serializable {
@ApiModelProperty(value = "创建时间") @ApiModelProperty(value = "创建时间")
private Date createDate; private Date createDate;
@ApiModelProperty(value = "更新时间")
private Date updateDate;
@ApiModelProperty(value = "承办人所属部门Id")
private Long deptId;
@ApiModelProperty(value = "是否更新承办人部门 1:是 2:否")
private String flag;
@ApiModelProperty(value = "案件相关人员") @ApiModelProperty(value = "案件相关人员")
private List<UserDTO> userLists; private List<UserDTO> userLists;
......
...@@ -32,7 +32,10 @@ public class FhjwCommentDTO implements Serializable { ...@@ -32,7 +32,10 @@ public class FhjwCommentDTO implements Serializable {
@ApiModelProperty(value = "用户ID") @ApiModelProperty(value = "用户ID")
private Long userId; private Long userId;
@ApiModelProperty(value = "用户姓名") @ApiModelProperty(value = "用户所属权限ID")
private Long roleId;
@ApiModelProperty(value = "评价人员姓名")
private String userName; private String userName;
@ApiModelProperty(value = "模板ID") @ApiModelProperty(value = "模板ID")
...@@ -59,4 +62,19 @@ public class FhjwCommentDTO implements Serializable { ...@@ -59,4 +62,19 @@ public class FhjwCommentDTO implements Serializable {
@ApiModelProperty(value = "问题列表") @ApiModelProperty(value = "问题列表")
private List<QuestionListDTO> questionList; private List<QuestionListDTO> questionList;
@ApiModelProperty(value = "承办人")
private String undertaker;
@ApiModelProperty(value = "当事人")
private String peopleName;
@ApiModelProperty(value = "部门")
private String deptName;
@ApiModelProperty(value = "评价人员权限")
private String userRole;
@ApiModelProperty(value = "受案号")
private String caseNum;
} }
package io.hmit.modules.fhjw.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 案件统计
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Data
@ApiModel(value = "案件统计")
public class FhjwCountDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "部门ID")
private Long deptId;
@ApiModelProperty(value = "部门名称")
private String deptName;
@ApiModelProperty(value = "部门案件总数")
private Integer deptCount;
}
...@@ -25,9 +25,30 @@ public class FhjwFeedbackDTO implements Serializable { ...@@ -25,9 +25,30 @@ public class FhjwFeedbackDTO implements Serializable {
@ApiModelProperty(value = "用户ID") @ApiModelProperty(value = "用户ID")
private Long userId; private Long userId;
@ApiModelProperty(value = "用户所属权限ID")
private Long roleId;
@ApiModelProperty(value = "用户姓名") @ApiModelProperty(value = "用户姓名")
private String userName; private String userName;
@ApiModelProperty(value = "用户权限")
private String userRole;
@ApiModelProperty(value = "受案号")
private String caseNum;
@ApiModelProperty(value = "承办人")
private String undertaker;
@ApiModelProperty(value = "当事人")
private String peopleName;
@ApiModelProperty(value = "案件名称")
private String caseName;
@ApiModelProperty(value = "部门")
private String deptName;
@ApiModelProperty(value = "反馈类型;1,反馈意见;2,控告申诉;3,代表委员有话说") @ApiModelProperty(value = "反馈类型;1,反馈意见;2,控告申诉;3,代表委员有话说")
private String feedbackType; private String feedbackType;
......
package io.hmit.modules.fhjw.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Data
@ApiModel(value = "用户评价权限功能")
public class FhjwRoleFunctionDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "id")
private Long id;
@ApiModelProperty(value = "评价功能id")
private Long functionId;
@ApiModelProperty(value = "角色id")
private Long roleId;
@ApiModelProperty(value = "创建者")
private Long creator;
@ApiModelProperty(value = "创建时间")
private Date createDate;
@ApiModelProperty(value = "更新者")
private Long updater;
@ApiModelProperty(value = "更新时间")
private Date updateDate;
}
...@@ -6,6 +6,7 @@ import lombok.Data; ...@@ -6,6 +6,7 @@ import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
...@@ -25,9 +26,15 @@ public class RoleDTO implements Serializable { ...@@ -25,9 +26,15 @@ public class RoleDTO implements Serializable {
@ApiModelProperty(value = "角色名称") @ApiModelProperty(value = "角色名称")
private String name; private String name;
@ApiModelProperty(value = "评价模版权限")
private String funcName;
@ApiModelProperty(value = "问卷模版ID") @ApiModelProperty(value = "问卷模版ID")
private Long tempId; private Long tempId;
@ApiModelProperty(value = "评价模块ID")
private List<Long> funcIdList;
@ApiModelProperty(value = "模版名称") @ApiModelProperty(value = "模版名称")
private String tempName; private String tempName;
......
...@@ -35,6 +35,12 @@ public class UserDTO implements Serializable { ...@@ -35,6 +35,12 @@ public class UserDTO implements Serializable {
@ApiModelProperty(value = "身份证号") @ApiModelProperty(value = "身份证号")
private String userIdno; private String userIdno;
@ApiModelProperty(value = "身份")
private String identity;
@ApiModelProperty(value = "性别")
private Integer gender;
@ApiModelProperty(value = "案件ID") @ApiModelProperty(value = "案件ID")
private Long caseId; private Long caseId;
......
package io.hmit.modules.fhjw.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.hmit.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("fhiw_function")
public class FhiwFunctionEntity extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 评价模块名字
*/
private String name;
/**
* 更新者
*/
private Long updater;
/**
* 更新时间
*/
private Date updateDate;
}
\ No newline at end of file
...@@ -57,5 +57,26 @@ public class FhjwCaseEntity extends BaseEntity { ...@@ -57,5 +57,26 @@ public class FhjwCaseEntity extends BaseEntity {
*/ */
@TableField(exist = false) @TableField(exist = false)
private String userName; private String userName;
/**
* 部门ID
*/
private Long deptId;
/**
* 承办人
*/
private String undertaker;
/**
* 当事人
*/
private String peopleName;
/**
* 代理人
*/
private String agentName;
/**
* 是否更新标志
*/
private String flag;
} }
...@@ -29,7 +29,7 @@ public class FhjwCommentEntity extends BaseEntity { ...@@ -29,7 +29,7 @@ public class FhjwCommentEntity extends BaseEntity {
*/ */
private Long caseId; private Long caseId;
/** /**
* 模板名称 * 案件名称
*/ */
@TableField(exist = false) @TableField(exist = false)
private String caseName; private String caseName;
...@@ -62,8 +62,38 @@ public class FhjwCommentEntity extends BaseEntity { ...@@ -62,8 +62,38 @@ public class FhjwCommentEntity extends BaseEntity {
@TableField(exist = false) @TableField(exist = false)
private String answer; private String answer;
/** /**
* 用户名字 * 评价人名字
*/ */
@TableField(exist = false) @TableField(exist = false)
private String userName; private String userName;
/**
* 承办人
*/
@TableField(exist = false)
private String undertaker;
/**
* 部门
*/
@TableField(exist = false)
private String deptName;
/**
* 当事人
*/
@TableField(exist = false)
private String peopleName;
/**
* 评价人员权限
*/
@TableField(exist = false)
private String userRole;
/**
* 受案号
*/
@TableField(exist = false)
private String caseNum;
/**
* 用户所属权限ID
*/
private Long roleId;
} }
...@@ -3,6 +3,7 @@ package io.hmit.modules.fhjw.entity; ...@@ -3,6 +3,7 @@ package io.hmit.modules.fhjw.entity;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import io.hmit.common.entity.BaseEntity; import io.hmit.common.entity.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
...@@ -37,8 +38,43 @@ public class FhjwFeedbackEntity extends BaseEntity { ...@@ -37,8 +38,43 @@ public class FhjwFeedbackEntity extends BaseEntity {
*/ */
private String content; private String content;
/** /**
* 受案号
*/
private String caseNum;
/**
* 用户名字 * 用户名字
*/ */
@TableField(exist = false) @TableField(exist = false)
private String userName; private String userName;
/**
* 承办人
*/
@TableField(exist = false)
private String undertaker;
/**
* 部门
*/
@TableField(exist = false)
private String deptName;
/**
* 案件名称
*/
@TableField(exist = false)
private String caseName;
/**
* 当事人姓名
*/
// @TableField(exist = false)
private String peopleName;
/**
* 用户权限
*/
@TableField(exist = false)
private String userRole;
/**
* 用户所属权限ID
*/
private Long roleId;
} }
package io.hmit.modules.fhjw.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.hmit.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("fhjw_role_function")
public class FhjwRoleFunctionEntity extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 角色id
*/
private Long roleId;
/**
* 评价功能id
*/
private Long functionId;
/**
* 更新者
*/
private Long updater;
/**
* 更新时间
*/
private Date updateDate;
}
...@@ -45,4 +45,9 @@ public class RoleEntity extends BaseEntity { ...@@ -45,4 +45,9 @@ public class RoleEntity extends BaseEntity {
*/ */
@TableField(exist = false) @TableField(exist = false)
private String tempName; private String tempName;
/**
* 评价模版名称
*/
@TableField(exist = false)
private String funcName;
} }
...@@ -28,6 +28,15 @@ public class UserEntity extends BaseEntity { ...@@ -28,6 +28,15 @@ public class UserEntity extends BaseEntity {
* 手机号 * 手机号
*/ */
private String mobile; private String mobile;
/**
* 身份
*/
private String identity;
/**
* 性别 0:男 1:女 2:保密
*/
private Integer gender;
/** /**
* 密码 * 密码
*/ */
......
package io.hmit.modules.fhjw.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Data
public class FhiwFunctionExcel {
@Excel(name = "id")
private Long id;
@Excel(name = "评价模块名字")
private String name;
@Excel(name = "创建者")
private Long creator;
@Excel(name = "创建时间")
private Date createDate;
@Excel(name = "更新者")
private Long updater;
@Excel(name = "更新时间")
private Date updateDate;
}
\ No newline at end of file
package io.hmit.modules.fhjw.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Data
public class FhjwRoleFunctionExcel {
@Excel(name = "id")
private Long id;
@Excel(name = "评价功能id")
private Long functionId;
@Excel(name = "创建者")
private Long creator;
@Excel(name = "创建时间")
private Date createDate;
@Excel(name = "更新者")
private Long updater;
@Excel(name = "更新时间")
private Date updateDate;
}
\ No newline at end of file
package io.hmit.modules.fhjw.service;
import io.hmit.common.service.CrudService;
import io.hmit.modules.fhjw.dto.FhiwFunctionDTO;
import io.hmit.modules.fhjw.entity.FhiwFunctionEntity;
import java.util.List;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
public interface FhiwFunctionService extends CrudService<FhiwFunctionEntity, FhiwFunctionDTO> {
List<FhiwFunctionDTO> getAllFuncList();
}
...@@ -3,10 +3,8 @@ package io.hmit.modules.fhjw.service; ...@@ -3,10 +3,8 @@ package io.hmit.modules.fhjw.service;
import io.hmit.common.page.PageData; import io.hmit.common.page.PageData;
import io.hmit.common.service.CrudService; import io.hmit.common.service.CrudService;
import io.hmit.modules.fhjw.dto.FhjwCaseDTO; import io.hmit.modules.fhjw.dto.FhjwCaseDTO;
import io.hmit.modules.fhjw.dto.RoleDTO;
import io.hmit.modules.fhjw.entity.FhjwCaseEntity; import io.hmit.modules.fhjw.entity.FhjwCaseEntity;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
...@@ -20,4 +18,9 @@ public interface FhjwCaseService extends CrudService<FhjwCaseEntity, FhjwCaseDTO ...@@ -20,4 +18,9 @@ public interface FhjwCaseService extends CrudService<FhjwCaseEntity, FhjwCaseDTO
PageData<FhjwCaseDTO> page(Map<String, Object> params); PageData<FhjwCaseDTO> page(Map<String, Object> params);
FhjwCaseDTO assembleUserList(Long caseId); FhjwCaseDTO assembleUserList(Long caseId);
FhjwCaseDTO getByCaseNum(String caseNum,String peopleName);
@Override
void delete(Long[] ids);
} }
...@@ -25,4 +25,6 @@ public interface FhjwCommentService extends CrudService<FhjwCommentEntity, FhjwC ...@@ -25,4 +25,6 @@ public interface FhjwCommentService extends CrudService<FhjwCommentEntity, FhjwC
@Override @Override
void delete(Long[] ids); void delete(Long[] ids);
int getCountByUserId(Long userId);
} }
...@@ -6,6 +6,7 @@ import io.hmit.modules.fhjw.dto.FhjwCommentDTO; ...@@ -6,6 +6,7 @@ import io.hmit.modules.fhjw.dto.FhjwCommentDTO;
import io.hmit.modules.fhjw.dto.FhjwFeedbackDTO; import io.hmit.modules.fhjw.dto.FhjwFeedbackDTO;
import io.hmit.modules.fhjw.entity.FhjwFeedbackEntity; import io.hmit.modules.fhjw.entity.FhjwFeedbackEntity;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
...@@ -18,4 +19,10 @@ public interface FhjwFeedbackService extends CrudService<FhjwFeedbackEntity, Fhj ...@@ -18,4 +19,10 @@ public interface FhjwFeedbackService extends CrudService<FhjwFeedbackEntity, Fhj
@Override @Override
PageData<FhjwFeedbackDTO> page(Map<String, Object> params); PageData<FhjwFeedbackDTO> page(Map<String, Object> params);
@Override
FhjwFeedbackDTO get(Long id);
List<FhjwFeedbackEntity> getByCaseNum(String caseNum);
int getCountByUserId(Long userId);
} }
package io.hmit.modules.fhjw.service;
import io.hmit.common.service.CrudService;
import io.hmit.modules.fhjw.dto.FhjwRoleFunctionDTO;
import io.hmit.modules.fhjw.entity.FhjwRoleFunctionEntity;
import java.util.List;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
public interface FhjwRoleFunctionService extends CrudService<FhjwRoleFunctionEntity, FhjwRoleFunctionDTO> {
/**
* 保存或修改
*
* @param roleId 角色ID
* @param funcIdList 评价模块ID列表
*/
void saveOrUpdate(Long roleId, List<Long> funcIdList);
/**
* 根据角色id,删除角色评价模块关系
*
* @param roleId 评价模块id
*/
void deleteByRoleIds(Long roleId);
}
...@@ -4,6 +4,7 @@ import io.hmit.common.page.PageData; ...@@ -4,6 +4,7 @@ import io.hmit.common.page.PageData;
import io.hmit.common.service.CrudService; import io.hmit.common.service.CrudService;
import io.hmit.modules.fhjw.dto.RoleDTO; import io.hmit.modules.fhjw.dto.RoleDTO;
import io.hmit.modules.fhjw.entity.RoleEntity; import io.hmit.modules.fhjw.entity.RoleEntity;
import io.hmit.modules.sys.dto.SysRoleDTO;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -20,4 +21,17 @@ public interface RoleService extends CrudService<RoleEntity, RoleDTO> { ...@@ -20,4 +21,17 @@ public interface RoleService extends CrudService<RoleEntity, RoleDTO> {
List<RoleDTO> getAllRoleList (); List<RoleDTO> getAllRoleList ();
@Override
void save(RoleDTO dto);
@Override
void update(RoleDTO dto);
@Override
void delete(Long[] ids);
@Override
RoleDTO get(Long id);
Long getIdByRoleName(String roleName);
} }
...@@ -5,6 +5,7 @@ import io.hmit.common.service.CrudService; ...@@ -5,6 +5,7 @@ import io.hmit.common.service.CrudService;
import io.hmit.modules.fhjw.dto.UserRoleDTO; import io.hmit.modules.fhjw.dto.UserRoleDTO;
import io.hmit.modules.fhjw.entity.UserRoleEntity; import io.hmit.modules.fhjw.entity.UserRoleEntity;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
...@@ -16,4 +17,14 @@ import java.util.Map; ...@@ -16,4 +17,14 @@ import java.util.Map;
public interface UserRoleService extends CrudService<UserRoleEntity, UserRoleDTO> { public interface UserRoleService extends CrudService<UserRoleEntity, UserRoleDTO> {
UserRoleDTO getByUserId (Long userId); UserRoleDTO getByUserId (Long userId);
List<UserRoleDTO> getByUserIds (Long userId);
/**
* 根据用户id,删除权限用户关系
*
* @param userId 用户id
*/
void deleteByUserId(Long userId);
} }
...@@ -37,4 +37,7 @@ public interface UserService extends CrudService<UserEntity, UserDTO> { ...@@ -37,4 +37,7 @@ public interface UserService extends CrudService<UserEntity, UserDTO> {
@Override @Override
void update(UserDTO dto); void update(UserDTO dto);
@Override
void delete(Long[] ids);
} }
package io.hmit.modules.fhjw.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.hmit.common.service.impl.CrudServiceImpl;
import io.hmit.common.utils.ConvertUtils;
import io.hmit.modules.fhjw.dao.FhiwFunctionDao;
import io.hmit.modules.fhjw.dto.FhiwFunctionDTO;
import io.hmit.modules.fhjw.entity.FhiwFunctionEntity;
import io.hmit.modules.fhjw.service.FhiwFunctionService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Service
public class FhiwFunctionServiceImpl extends CrudServiceImpl<FhiwFunctionDao, FhiwFunctionEntity, FhiwFunctionDTO> implements FhiwFunctionService {
@Autowired
private FhiwFunctionDao fhiwFunctionDao;
@Override
public QueryWrapper<FhiwFunctionEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get("id");
QueryWrapper<FhiwFunctionEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), "id", id);
return wrapper;
}
@Override
public List<FhiwFunctionDTO> getAllFuncList() {
List<FhiwFunctionEntity> list = fhiwFunctionDao.getAllFuncList();
return ConvertUtils.sourceToTarget(list,FhiwFunctionDTO.class);
}
}
...@@ -2,25 +2,29 @@ package io.hmit.modules.fhjw.service.impl; ...@@ -2,25 +2,29 @@ package io.hmit.modules.fhjw.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import io.hmit.common.exception.ErrorCode;
import io.hmit.common.exception.HmitException;
import io.hmit.common.page.PageData; import io.hmit.common.page.PageData;
import io.hmit.common.service.impl.CrudServiceImpl; import io.hmit.common.service.impl.CrudServiceImpl;
import io.hmit.common.utils.ConvertUtils;
import io.hmit.modules.fhjw.dao.FhjwCaseDao; import io.hmit.modules.fhjw.dao.FhjwCaseDao;
import io.hmit.modules.fhjw.dto.FhjwCaseDTO; import io.hmit.modules.fhjw.dto.FhjwCaseDTO;
import io.hmit.modules.fhjw.dto.UserDTO; import io.hmit.modules.fhjw.dto.UserDTO;
import io.hmit.modules.fhjw.entity.FhjwCaseEntity; import io.hmit.modules.fhjw.entity.FhjwCaseEntity;
import io.hmit.modules.fhjw.entity.FhjwCommentEntity;
import io.hmit.modules.fhjw.entity.FhjwFeedbackEntity; import io.hmit.modules.fhjw.entity.FhjwFeedbackEntity;
import io.hmit.modules.fhjw.entity.UserEntity; import io.hmit.modules.fhjw.entity.UserEntity;
import io.hmit.modules.fhjw.service.FhjwCaseService; import io.hmit.modules.fhjw.service.FhjwCaseService;
import io.hmit.modules.fhjw.service.FhjwCommentService;
import io.hmit.modules.fhjw.service.FhjwFeedbackService;
import io.hmit.modules.fhjw.service.RoleService; import io.hmit.modules.fhjw.service.RoleService;
import io.hmit.modules.fhjw.service.UserRoleService; import io.hmit.modules.fhjw.service.UserRoleService;
import io.hmit.modules.fhjw.service.UserService; import io.hmit.modules.fhjw.service.UserService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
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 org.springframework.transaction.annotation.Transactional;
import javax.management.relation.Role; import java.util.Arrays;
import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -44,17 +48,25 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn ...@@ -44,17 +48,25 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn
@Autowired @Autowired
private RoleService roleService; private RoleService roleService;
@Autowired
private FhjwCommentService fhjwCommentService;
@Autowired
private FhjwFeedbackService fhjwFeedbackService;
@Override @Override
public QueryWrapper<FhjwCaseEntity> getWrapper(Map<String, Object> params){ public QueryWrapper<FhjwCaseEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get("id"); String id = (String)params.get("id");
String caseNum = (String)params.get("caseNum"); String caseNum = (String)params.get("caseNum");
String caseName = (String)params.get("caseName"); String caseName = (String)params.get("caseName");
String flag = (String)params.get("flag");
QueryWrapper<FhjwCaseEntity> wrapper = new QueryWrapper<>(); QueryWrapper<FhjwCaseEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), "id", id); wrapper.eq(StringUtils.isNotBlank(id), "id", id);
wrapper.like(StringUtils.isNotBlank(caseNum), "case_num", caseNum); wrapper.like(StringUtils.isNotBlank(caseNum), "case_num", caseNum);
wrapper.like(StringUtils.isNotBlank(caseName), "case_name", caseName); wrapper.like(StringUtils.isNotBlank(caseName), "case_name", caseName);
wrapper.eq(StringUtils.isNotBlank(flag), "flag", flag);
return wrapper; return wrapper;
} }
...@@ -74,6 +86,13 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn ...@@ -74,6 +86,13 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn
return data; return data;
} }
@Override
public FhjwCaseDTO getByCaseNum(String caseNum,String peopleName) {
FhjwCaseEntity entity = baseDao.selectOne(new QueryWrapper<FhjwCaseEntity>()
.eq("case_num",caseNum).eq("people_name",peopleName));
return ConvertUtils.sourceToTarget(entity,FhjwCaseDTO.class);
}
@Override @Override
public PageData<FhjwCaseDTO> page(Map<String, Object> params){ public PageData<FhjwCaseDTO> page(Map<String, Object> params){
...@@ -87,4 +106,19 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn ...@@ -87,4 +106,19 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn
return getPageData(page, currentDtoClass()); return getPageData(page, currentDtoClass());
} }
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(Long[] ids) {
String result = "";
for (long id:ids) {
List<Long> userids= fhjwCommentService.getUserIdByCase(id);
String caseNum =get(id).getCaseNum();
List<FhjwFeedbackEntity> list= fhjwFeedbackService.getByCaseNum(caseNum);
if(userids.size()>0 || list.size()>0){
throw new HmitException("此案件存在相关评价及反馈,请先删除对应的评价与反馈信息!");
}
deleteById(id);
}
}
} }
...@@ -9,6 +9,7 @@ import io.hmit.modules.fhjw.dao.FhjwCommentDao; ...@@ -9,6 +9,7 @@ import io.hmit.modules.fhjw.dao.FhjwCommentDao;
import io.hmit.modules.fhjw.dto.FhjwCaseDTO; import io.hmit.modules.fhjw.dto.FhjwCaseDTO;
import io.hmit.modules.fhjw.dto.FhjwCommentDTO; import io.hmit.modules.fhjw.dto.FhjwCommentDTO;
import io.hmit.modules.fhjw.dto.QuestionListDTO; import io.hmit.modules.fhjw.dto.QuestionListDTO;
import io.hmit.modules.fhjw.dto.RoleDTO;
import io.hmit.modules.fhjw.entity.FhjwAnswerEntity; import io.hmit.modules.fhjw.entity.FhjwAnswerEntity;
import io.hmit.modules.fhjw.entity.FhjwCaseEntity; import io.hmit.modules.fhjw.entity.FhjwCaseEntity;
import io.hmit.modules.fhjw.entity.FhjwCommentEntity; import io.hmit.modules.fhjw.entity.FhjwCommentEntity;
...@@ -20,7 +21,12 @@ import io.hmit.modules.fhjw.service.FhjwCaseService; ...@@ -20,7 +21,12 @@ import io.hmit.modules.fhjw.service.FhjwCaseService;
import io.hmit.modules.fhjw.service.FhjwCommentService; import io.hmit.modules.fhjw.service.FhjwCommentService;
import io.hmit.modules.fhjw.service.FhjwQuestionService; import io.hmit.modules.fhjw.service.FhjwQuestionService;
import io.hmit.modules.fhjw.service.FhjwTempService; import io.hmit.modules.fhjw.service.FhjwTempService;
import io.hmit.modules.fhjw.service.RoleService;
import io.hmit.modules.fhjw.service.UserRoleService;
import io.hmit.modules.fhjw.service.UserService; import io.hmit.modules.fhjw.service.UserService;
import io.hmit.modules.sys.dto.SysDeptDTO;
import io.hmit.modules.sys.entity.SysDeptEntity;
import io.hmit.modules.sys.service.SysDeptService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -57,6 +63,14 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw ...@@ -57,6 +63,14 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw
@Autowired @Autowired
private UserService userService; private UserService userService;
@Autowired
private UserRoleService userRoleService;
@Autowired
private RoleService roleService;
@Autowired
private SysDeptService sysDeptService;
@Override @Override
public QueryWrapper<FhjwCommentEntity> getWrapper(Map<String, Object> params){ public QueryWrapper<FhjwCommentEntity> getWrapper(Map<String, Object> params){
...@@ -71,7 +85,7 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw ...@@ -71,7 +85,7 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw
QueryWrapper<FhjwCommentEntity> wrapper = new QueryWrapper<>(); QueryWrapper<FhjwCommentEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), "id", id); wrapper.eq(StringUtils.isNotBlank(id), "id", id);
wrapper.eq(StringUtils.isNotBlank(caseId), "case_id", caseId); wrapper.eq(StringUtils.isNotBlank(caseId), "case_id", caseId);
wrapper.groupBy( "case_id"); wrapper.groupBy( "case_id","user_id");
//查询条件--根据案件名caseName 查询出 caseId //查询条件--根据案件名caseName 查询出 caseId
if(StringUtils.isNotEmpty(caseName)){ if(StringUtils.isNotEmpty(caseName)){
...@@ -93,14 +107,7 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw ...@@ -93,14 +107,7 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw
IPage<FhjwCommentEntity> page = super.page2(params); IPage<FhjwCommentEntity> page = super.page2(params);
//在返回的page中增加 问题名字、答案、模版名字、案件名 字段 //在返回的page中增加 问题名字、答案、模版名字、案件名 字段
page.getRecords().stream().forEach(item ->{ page.getRecords().stream().forEach(item ->addBaseData(item));
Optional<FhjwTempEntity> temp = Optional.ofNullable(fhjwTempService.selectById(item.getTempId()));
temp.ifPresent( t -> item.setTempName(t.getTempName()));
Optional<FhjwCaseEntity> caseN = Optional.ofNullable(fhjwCaseService.selectById(item.getCaseId()));
caseN.ifPresent( c -> item.setCaseName(c.getCaseName()));
});
return getPageData(page, currentDtoClass()); return getPageData(page, currentDtoClass());
} }
...@@ -125,7 +132,7 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw ...@@ -125,7 +132,7 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw
List<QuestionListDTO> questionListDTOS = new ArrayList<>(); List<QuestionListDTO> questionListDTOS = new ArrayList<>();
FhjwCommentDTO commentDTO = ConvertUtils.sourceToTarget(entitys.get(0),FhjwCommentDTO.class); FhjwCommentEntity commentDTO = entitys.get(0);
FhjwCommentDTO dto = addBaseData(commentDTO); FhjwCommentDTO dto = addBaseData(commentDTO);
dto.setCaseId(commentDTO.getCaseId()); dto.setCaseId(commentDTO.getCaseId());
dto.setUserId(commentDTO.getUserId()); dto.setUserId(commentDTO.getUserId());
...@@ -153,22 +160,47 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw ...@@ -153,22 +160,47 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw
* @param DTO 实体 * @param DTO 实体
* @return FhjwCommentDTO * @return FhjwCommentDTO
*/ */
public FhjwCommentDTO addBaseData(FhjwCommentDTO DTO){ public FhjwCommentDTO addBaseData(FhjwCommentEntity DTO){
Optional<FhjwCommentDTO> optional = Optional.ofNullable(DTO); Optional<FhjwCommentEntity> optional = Optional.ofNullable(DTO);
optional.ifPresent(item -> { optional.ifPresent(item -> {
//模版名称
Optional<FhjwTempEntity> temp = Optional.ofNullable(fhjwTempService.selectById(item.getTempId())); Optional<FhjwTempEntity> temp = Optional.ofNullable(fhjwTempService.selectById(item.getTempId()));
temp.ifPresent( t -> item.setTempName(t.getTempName())); temp.ifPresent( t -> item.setTempName(t.getTempName()));
//案件相关信息(案件名字、部门、承办人、当事人、受案号)
Optional<FhjwCaseEntity> caseN = Optional.ofNullable(fhjwCaseService.selectById(item.getCaseId())); Optional<FhjwCaseEntity> caseN = Optional.ofNullable(fhjwCaseService.selectById(item.getCaseId()));
caseN.ifPresent( c -> item.setCaseName(c.getCaseName())); caseN.ifPresent( c -> {
item.setCaseName(c.getCaseName());
item.setPeopleName(c.getPeopleName());
item.setUndertaker(c.getUndertaker());
item.setCaseNum(c.getCaseNum());
Optional<SysDeptDTO> dept = Optional.ofNullable(sysDeptService.get(c.getDeptId()));
dept.ifPresent(d -> item.setDeptName(d.getName()));
});
//评价人员姓名
Optional<UserEntity> users = Optional.ofNullable(userService.selectById(item.getUserId())); Optional<UserEntity> users = Optional.ofNullable(userService.selectById(item.getUserId()));
users.ifPresent( u -> item.setUserName(u.getUsername())); users.ifPresent( u -> item.setUserName(u.getUsername()));
//评价人员权限(身份)
if(item.getRoleId() !=null){
Optional<RoleDTO> roleDTO = Optional.ofNullable(roleService.get(item.getRoleId()));
roleDTO.ifPresent(r-> item.setUserRole(r.getName()));
}
/*
Long roleId = userRoleService.getByUserId(item.getUserId()).getRoleId();
item.setUserRole(roleService.get(roleId).getName());
*/
}); });
return DTO; return ConvertUtils.sourceToTarget(DTO,FhjwCommentDTO.class);
} }
@Override @Override
...@@ -180,5 +212,11 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw ...@@ -180,5 +212,11 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw
}); });
} }
@Override
public int getCountByUserId(Long userId) {
int count = baseDao.selectCount(new QueryWrapper<FhjwCommentEntity>().eq("user_id",userId));
return count;
}
} }
...@@ -4,20 +4,29 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; ...@@ -4,20 +4,29 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import io.hmit.common.page.PageData; import io.hmit.common.page.PageData;
import io.hmit.common.service.impl.CrudServiceImpl; import io.hmit.common.service.impl.CrudServiceImpl;
import io.hmit.common.utils.ConvertUtils;
import io.hmit.modules.fhjw.dao.FhjwFeedbackDao; import io.hmit.modules.fhjw.dao.FhjwFeedbackDao;
import io.hmit.modules.fhjw.dto.FhjwCaseDTO;
import io.hmit.modules.fhjw.dto.FhjwCommentDTO; import io.hmit.modules.fhjw.dto.FhjwCommentDTO;
import io.hmit.modules.fhjw.dto.FhjwFeedbackDTO; import io.hmit.modules.fhjw.dto.FhjwFeedbackDTO;
import io.hmit.modules.fhjw.dto.RoleDTO;
import io.hmit.modules.fhjw.entity.FhjwCaseEntity; import io.hmit.modules.fhjw.entity.FhjwCaseEntity;
import io.hmit.modules.fhjw.entity.FhjwCommentEntity; import io.hmit.modules.fhjw.entity.FhjwCommentEntity;
import io.hmit.modules.fhjw.entity.FhjwFeedbackEntity; import io.hmit.modules.fhjw.entity.FhjwFeedbackEntity;
import io.hmit.modules.fhjw.entity.FhjwTempEntity; import io.hmit.modules.fhjw.entity.FhjwTempEntity;
import io.hmit.modules.fhjw.entity.UserEntity; import io.hmit.modules.fhjw.entity.UserEntity;
import io.hmit.modules.fhjw.service.FhjwCaseService;
import io.hmit.modules.fhjw.service.FhjwFeedbackService; import io.hmit.modules.fhjw.service.FhjwFeedbackService;
import io.hmit.modules.fhjw.service.RoleService;
import io.hmit.modules.fhjw.service.UserRoleService;
import io.hmit.modules.fhjw.service.UserService; import io.hmit.modules.fhjw.service.UserService;
import io.hmit.modules.sys.service.SysDeptService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.formula.functions.T;
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 java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Optional; import java.util.Optional;
...@@ -32,6 +41,18 @@ public class FhjwFeedbackServiceImpl extends CrudServiceImpl<FhjwFeedbackDao, Fh ...@@ -32,6 +41,18 @@ public class FhjwFeedbackServiceImpl extends CrudServiceImpl<FhjwFeedbackDao, Fh
@Autowired @Autowired
private UserService userService; private UserService userService;
@Autowired
private FhjwCaseService fhjwCaseService;
@Autowired
private SysDeptService sysDeptService;
@Autowired
private UserRoleService userRoleService;
@Autowired
private RoleService roleService;
@Override @Override
public QueryWrapper<FhjwFeedbackEntity> getWrapper(Map<String, Object> params){ public QueryWrapper<FhjwFeedbackEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get("id"); String id = (String)params.get("id");
...@@ -49,13 +70,63 @@ public class FhjwFeedbackServiceImpl extends CrudServiceImpl<FhjwFeedbackDao, Fh ...@@ -49,13 +70,63 @@ public class FhjwFeedbackServiceImpl extends CrudServiceImpl<FhjwFeedbackDao, Fh
@Override @Override
public PageData<FhjwFeedbackDTO> page(Map<String, Object> params) { public PageData<FhjwFeedbackDTO> page(Map<String, Object> params) {
IPage<FhjwFeedbackEntity> page = super.page2(params); IPage<FhjwFeedbackEntity> page = super.page2(params);
//在返回的page中增加 用户名字 字段 //在返回的page中增加 相关信息字段
page.getRecords().stream().forEach(item ->{ page.getRecords().stream().forEach(item ->addInfo(item));
Optional<UserEntity> users = Optional.ofNullable(userService.selectById(item.getUserId()));
users.ifPresent( u -> item.setUserName(u.getUsername()));
});
return getPageData(page, currentDtoClass()); return getPageData(page, currentDtoClass());
} }
@Override
public FhjwFeedbackDTO get(Long id){
FhjwFeedbackEntity entity = baseDao.selectById(id);
//在返回的中增加 相关信息字段
FhjwFeedbackDTO dto = addInfo(entity);
return dto;
}
@Override
public List<FhjwFeedbackEntity> getByCaseNum(String caseNum) {
List<FhjwFeedbackEntity> lists= baseDao.selectList(new QueryWrapper<FhjwFeedbackEntity>().eq("case_num",caseNum));
return lists;
}
@Override
public int getCountByUserId(Long userId) {
int count = baseDao.selectCount(new QueryWrapper<FhjwFeedbackEntity>().eq("user_id",userId));
return count;
}
/**
* 在返回的实体中添加如下字段信息
* 用户名字
* 用户权限
* 承办人
* 案件名称
* 当事人
* 所属部门名称
* @param dto
* @return
*/
public FhjwFeedbackDTO addInfo(FhjwFeedbackEntity dto){
Optional<UserEntity> users = Optional.ofNullable(userService.selectById(dto.getUserId()));
users.ifPresent( u -> dto.setUserName(u.getUsername()));
Optional<FhjwCaseDTO> caseDTO = Optional.ofNullable(fhjwCaseService.getByCaseNum(dto.getCaseNum(),dto.getPeopleName()));
// Optional<FhjwCaseDTO> caseDTO = Optional.ofNullable(fhjwCaseService.get(dto.getCaseNum()));
caseDTO.ifPresent(c ->{
dto.setCaseName(c.getCaseName());
dto.setPeopleName(c.getPeopleName());
dto.setDeptName(sysDeptService.get(c.getDeptId()).getName());
dto.setUndertaker(c.getUndertaker());
});
//用户权限由前端传,因为可能存在一个用户多个权限的情况(此案件的当事人,其他案件的代理人)
if(dto.getRoleId() !=null){
Optional<RoleDTO> roleDTO = Optional.ofNullable(roleService.get(dto.getRoleId()));
roleDTO.ifPresent(r-> dto.setUserRole(r.getName()));
}
return ConvertUtils.sourceToTarget(dto,FhjwFeedbackDTO.class);
} }
}
package io.hmit.modules.fhjw.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.hmit.common.service.impl.CrudServiceImpl;
import io.hmit.modules.fhjw.dao.FhjwRoleFunctionDao;
import io.hmit.modules.fhjw.dto.FhjwRoleFunctionDTO;
import io.hmit.modules.fhjw.entity.FhjwRoleFunctionEntity;
import io.hmit.modules.fhjw.service.FhjwRoleFunctionService;
import io.hmit.modules.sys.entity.SysRoleMenuEntity;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Service
public class FhjwRoleFunctionServiceImpl extends CrudServiceImpl<FhjwRoleFunctionDao, FhjwRoleFunctionEntity, FhjwRoleFunctionDTO> implements FhjwRoleFunctionService {
@Override
public QueryWrapper<FhjwRoleFunctionEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get("id");
String roleId = params.get("roleId")==null?"":params.get("roleId").toString();
QueryWrapper<FhjwRoleFunctionEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), "id", id);
wrapper.eq(StringUtils.isNotBlank(roleId), "role_id", roleId);
return wrapper;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void saveOrUpdate(Long roleId, List<Long> funcIdList) {
//先删除角色评价模块关系
deleteByRoleIds(roleId);
//保存角色菜单关系
for (Long funcId : funcIdList) {
FhjwRoleFunctionEntity roleFunctionEntity = new FhjwRoleFunctionEntity();
roleFunctionEntity.setFunctionId(funcId);
roleFunctionEntity.setRoleId(roleId);
//保存
insert(roleFunctionEntity);
}
}
@Override
@Transactional(rollbackFor = Exception.class)
public void deleteByRoleIds(Long roleId) {
baseDao.delete(new QueryWrapper<FhjwRoleFunctionEntity>().eq("role_id",roleId));
}
}
...@@ -7,19 +7,30 @@ import io.hmit.common.service.impl.CrudServiceImpl; ...@@ -7,19 +7,30 @@ import io.hmit.common.service.impl.CrudServiceImpl;
import io.hmit.common.utils.ConvertUtils; import io.hmit.common.utils.ConvertUtils;
import io.hmit.modules.fhjw.dao.FhjwTempDao; import io.hmit.modules.fhjw.dao.FhjwTempDao;
import io.hmit.modules.fhjw.dao.RoleDao; import io.hmit.modules.fhjw.dao.RoleDao;
import io.hmit.modules.fhjw.dto.FhiwFunctionDTO;
import io.hmit.modules.fhjw.dto.FhjwRoleFunctionDTO;
import io.hmit.modules.fhjw.dto.FhjwTempDTO; import io.hmit.modules.fhjw.dto.FhjwTempDTO;
import io.hmit.modules.fhjw.dto.RoleDTO; import io.hmit.modules.fhjw.dto.RoleDTO;
import io.hmit.modules.fhjw.entity.FhjwTempEntity; import io.hmit.modules.fhjw.entity.FhjwTempEntity;
import io.hmit.modules.fhjw.entity.RoleEntity; import io.hmit.modules.fhjw.entity.RoleEntity;
import io.hmit.modules.fhjw.service.FhiwFunctionService;
import io.hmit.modules.fhjw.service.FhjwRoleFunctionService;
import io.hmit.modules.fhjw.service.FhjwTempService; import io.hmit.modules.fhjw.service.FhjwTempService;
import io.hmit.modules.fhjw.service.RoleService; import io.hmit.modules.fhjw.service.RoleService;
import io.hmit.modules.sys.dto.SysRoleDTO;
import io.hmit.modules.sys.entity.SysRoleEntity;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
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 org.springframework.transaction.annotation.Transactional;
import javax.management.relation.Role;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Optional; import java.util.Optional;
import java.util.stream.Collectors;
/** /**
* 用户权限 * 用户权限
...@@ -32,6 +43,12 @@ public class RoleServiceImpl extends CrudServiceImpl<RoleDao, RoleEntity, RoleDT ...@@ -32,6 +43,12 @@ public class RoleServiceImpl extends CrudServiceImpl<RoleDao, RoleEntity, RoleDT
@Autowired @Autowired
private FhjwTempService fhjwTempService; private FhjwTempService fhjwTempService;
@Autowired
private FhjwRoleFunctionService fhjwRoleFunctionService;
@Autowired
private FhiwFunctionService fhiwFunctionService;
@Autowired @Autowired
private RoleDao roleDao; private RoleDao roleDao;
...@@ -42,22 +59,37 @@ public class RoleServiceImpl extends CrudServiceImpl<RoleDao, RoleEntity, RoleDT ...@@ -42,22 +59,37 @@ public class RoleServiceImpl extends CrudServiceImpl<RoleDao, RoleEntity, RoleDT
QueryWrapper<RoleEntity> wrapper = new QueryWrapper<>(); QueryWrapper<RoleEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), "id", id); wrapper.eq(StringUtils.isNotBlank(id), "id", id);
return wrapper; return wrapper;
} }
@Override @Override
public PageData<RoleDTO> page(Map<String, Object> params){ public PageData<RoleDTO> page(Map<String, Object> params){
IPage<RoleEntity> page = baseDao.selectPage( IPage<RoleEntity> page = super.page2(params);
getPage(params, null, false),
getWrapper(params)
);
page.getRecords().stream().forEach(item ->{ page.getRecords().stream().forEach(item ->{
Optional<FhjwTempEntity> temp = Optional.ofNullable(fhjwTempService.selectById(item.getTempId())); Optional<FhjwTempEntity> temp = Optional.ofNullable(fhjwTempService.selectById(item.getTempId()));
temp.ifPresent( q -> item.setTempName(q.getTempName())); temp.ifPresent( q -> item.setTempName(q.getTempName()));
}); Map<String, Object> query = new HashMap<>();
query.put("roleId",item.getId());
List<Long> funcIds = fhjwRoleFunctionService.list(query).stream()
.map(FhjwRoleFunctionDTO::getFunctionId).collect(Collectors.toList());
String funcName ="";
for(Long funcId:funcIds){
FhiwFunctionDTO functionDTO = fhiwFunctionService.get(funcId);
if("".equals(funcName)){
funcName = functionDTO.getName();
}else{
funcName = funcName+ ","+functionDTO.getName();
}
}
System.out.println("funcName:"+funcName);
item.setFuncName(funcName);
});
return getPageData(page, currentDtoClass()); return getPageData(page, currentDtoClass());
} }
...@@ -67,4 +99,63 @@ public class RoleServiceImpl extends CrudServiceImpl<RoleDao, RoleEntity, RoleDT ...@@ -67,4 +99,63 @@ public class RoleServiceImpl extends CrudServiceImpl<RoleDao, RoleEntity, RoleDT
return ConvertUtils.sourceToTarget(entity,RoleDTO.class); return ConvertUtils.sourceToTarget(entity,RoleDTO.class);
} }
@Override
@Transactional(rollbackFor = Exception.class)
public void save(RoleDTO dto) {
RoleEntity entity = ConvertUtils.sourceToTarget(dto, RoleEntity.class);
//保存角色
insert(entity);
//保存角色评价模块关系
fhjwRoleFunctionService.saveOrUpdate(entity.getId(), dto.getFuncIdList());
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(RoleDTO dto) {
RoleEntity entity = ConvertUtils.sourceToTarget(dto, RoleEntity.class);
//更新角色
updateById(entity);
//保存角色评价模块关系
fhjwRoleFunctionService.saveOrUpdate(entity.getId(), dto.getFuncIdList());
}
@Override
public RoleDTO get(Long id){
RoleEntity roleEntity = baseDao.selectById(id);
RoleDTO roleDTO = ConvertUtils.sourceToTarget(roleEntity, RoleDTO.class);
Map<String, Object> params = new HashMap<>();
params.put("roleId",roleEntity.getId());
List<Long> funcIds = fhjwRoleFunctionService.list(params).stream()
.map(FhjwRoleFunctionDTO::getFunctionId).collect(Collectors.toList());
roleDTO.setFuncIdList(funcIds);
return roleDTO;
}
@Override
public Long getIdByRoleName(String roleName) {
Long roleId = baseDao.selectOne(new QueryWrapper<RoleEntity>().eq("name",roleName)).getId();
return roleId;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(Long[] ids) {
baseDao.deleteBatchIds(Arrays.asList(ids));
Arrays.stream(ids).forEach(id ->{
fhjwRoleFunctionService.deleteByRoleIds(id);
});
}
} }
...@@ -15,6 +15,7 @@ import org.apache.commons.lang3.StringUtils; ...@@ -15,6 +15,7 @@ import org.apache.commons.lang3.StringUtils;
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 java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Optional; import java.util.Optional;
...@@ -45,4 +46,16 @@ public class UserRoleServiceImpl extends CrudServiceImpl<UserRoleDao, UserRoleEn ...@@ -45,4 +46,16 @@ public class UserRoleServiceImpl extends CrudServiceImpl<UserRoleDao, UserRoleEn
new QueryWrapper<UserRoleEntity>().eq("user_id",userId)) ; new QueryWrapper<UserRoleEntity>().eq("user_id",userId)) ;
return ConvertUtils.sourceToTarget(userRole,UserRoleDTO.class); return ConvertUtils.sourceToTarget(userRole,UserRoleDTO.class);
} }
@Override
public List<UserRoleDTO> getByUserIds(Long userId) {
List<UserRoleEntity> userRole = baseDao.selectList(
new QueryWrapper<UserRoleEntity>().eq("user_id",userId)) ;
return ConvertUtils.sourceToTarget(userRole,UserRoleDTO.class);
}
@Override
public void deleteByUserId(Long userId) {
baseDao.deleteByUserId(userId);
}
} }
...@@ -3,6 +3,7 @@ package io.hmit.modules.fhjw.service.impl; ...@@ -3,6 +3,7 @@ package io.hmit.modules.fhjw.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.hmit.common.exception.HmitException;
import io.hmit.common.page.PageData; import io.hmit.common.page.PageData;
import io.hmit.common.service.impl.CrudServiceImpl; import io.hmit.common.service.impl.CrudServiceImpl;
import io.hmit.common.utils.ConvertUtils; import io.hmit.common.utils.ConvertUtils;
...@@ -17,6 +18,7 @@ import io.hmit.modules.fhjw.entity.UserEntity; ...@@ -17,6 +18,7 @@ import io.hmit.modules.fhjw.entity.UserEntity;
import io.hmit.modules.fhjw.entity.UserRoleEntity; import io.hmit.modules.fhjw.entity.UserRoleEntity;
import io.hmit.modules.fhjw.service.FhjwCaseService; import io.hmit.modules.fhjw.service.FhjwCaseService;
import io.hmit.modules.fhjw.service.FhjwCommentService; import io.hmit.modules.fhjw.service.FhjwCommentService;
import io.hmit.modules.fhjw.service.FhjwFeedbackService;
import io.hmit.modules.fhjw.service.RoleService; import io.hmit.modules.fhjw.service.RoleService;
import io.hmit.modules.fhjw.service.UserRoleService; import io.hmit.modules.fhjw.service.UserRoleService;
import io.hmit.modules.fhjw.service.UserService; import io.hmit.modules.fhjw.service.UserService;
...@@ -25,6 +27,7 @@ import org.apache.poi.ss.formula.functions.T; ...@@ -25,6 +27,7 @@ import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.management.relation.Role; import javax.management.relation.Role;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -55,6 +58,9 @@ public class UserServiceImpl extends CrudServiceImpl<UserDao, UserEntity, UserDT ...@@ -55,6 +58,9 @@ public class UserServiceImpl extends CrudServiceImpl<UserDao, UserEntity, UserDT
@Autowired @Autowired
private FhjwCommentService fhjwCommentService; private FhjwCommentService fhjwCommentService;
@Autowired
private FhjwFeedbackService fhjwFeedbackService;
@Override @Override
public QueryWrapper<UserEntity> getWrapper(Map<String, Object> params){ public QueryWrapper<UserEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get("id"); String id = (String)params.get("id");
...@@ -73,15 +79,32 @@ public class UserServiceImpl extends CrudServiceImpl<UserDao, UserEntity, UserDT ...@@ -73,15 +79,32 @@ public class UserServiceImpl extends CrudServiceImpl<UserDao, UserEntity, UserDT
public PageData<UserDTO> page(Map<String, Object> params){ public PageData<UserDTO> page(Map<String, Object> params){
IPage<UserEntity> page = super.page2(params); IPage<UserEntity> page = super.page2(params);
Long roleId = roleService.getIdByRoleName("承办人");
page.getRecords().stream().forEach(item ->{ page.getRecords().stream().forEach(item ->{
Optional<FhjwCaseEntity> entity = Optional.ofNullable(fhjwCaseService.selectById(item.getCaseId())); Optional<FhjwCaseEntity> entity = Optional.ofNullable(fhjwCaseService.selectById(item.getCaseId()));
entity.ifPresent( q -> item.setCaseName(q.getCaseName())); entity.ifPresent( q -> item.setCaseName(q.getCaseName()));
Optional<UserRoleDTO> userRole = Optional.ofNullable(userRoleService.getByUserId(item.getId())); Optional<List<UserRoleDTO>> userRole = Optional.ofNullable(userRoleService.getByUserIds(item.getId()));
userRole.ifPresent(ur -> {
String userRoles = "";
for (UserRoleDTO dto:ur) {
RoleDTO role = roleService.get(dto.getRoleId());
if("".equals(userRoles)){
userRoles = role.getName();
}else{
userRoles = userRoles+ " , "+role.getName();
}
item.setUserRole(userRoles);
}
});
/*
Optional<UserRoleDTO> userRole = Optional.ofNullable(userRoleService.getByUserIds(item.getId()));
userRole.ifPresent( ur -> { userRole.ifPresent( ur -> {
Optional<RoleDTO> role = Optional.ofNullable(roleService.get(ur.getRoleId())); Optional<RoleDTO> role = Optional.ofNullable(roleService.get(ur.getRoleId()));
role.ifPresent( r -> item.setUserRole(r.getName())); role.ifPresent( r -> item.setUserRole(r.getName()));
}); });
*/
}); });
return getPageData(page, currentDtoClass()); return getPageData(page, currentDtoClass());
...@@ -145,12 +168,20 @@ public class UserServiceImpl extends CrudServiceImpl<UserDao, UserEntity, UserDT ...@@ -145,12 +168,20 @@ public class UserServiceImpl extends CrudServiceImpl<UserDao, UserEntity, UserDT
//添加人员 //添加人员
super.update(dto); super.update(dto);
//删除权限
userRoleService.deleteByUserId(dto.getId());
//人员-权限对应关系表 //人员-权限对应关系表
UserRoleDTO userRoleDTO = new UserRoleDTO().assembleUserRole(dto.getUserRoleId() ,dto.getId());
userRoleService.save(userRoleDTO);
/*
Optional<UserRoleDTO> userRole =Optional.ofNullable(userRoleService.getByUserId(dto.getId())) ; Optional<UserRoleDTO> userRole =Optional.ofNullable(userRoleService.getByUserId(dto.getId())) ;
userRole.ifPresent(user -> { userRole.ifPresent(user -> {
user.setRoleId(dto.getUserRoleId()); user.setRoleId(dto.getUserRoleId());
userRoleService.update(user); userRoleService.update(user);
}); });
*/
} }
...@@ -168,4 +199,25 @@ public class UserServiceImpl extends CrudServiceImpl<UserDao, UserEntity, UserDT ...@@ -168,4 +199,25 @@ public class UserServiceImpl extends CrudServiceImpl<UserDao, UserEntity, UserDT
return user; return user;
} }
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(Long[] ids) {
for (Long id:ids) {
int feedbCount = fhjwFeedbackService.getCountByUserId(id);
int commentCount = fhjwCommentService.getCountByUserId(id);
if(feedbCount>0){
throw new HmitException("此用户存在相关案件反馈信息,请先删除人员下的反馈信息!");
}
if(commentCount>0){
throw new HmitException("此用户存在相关案件评价信息,请先删除人员下的评价信息!");
}
//用户删除
deleteById(id);
//删除用户-权限对应关系
userRoleService.deleteByUserId(id);
}
}
} }
package io.hmit.modules.job.task;
import io.hmit.modules.fhjw.dto.FhjwCaseDTO;
import io.hmit.modules.fhjw.entity.FhjwCaseEntity;
import io.hmit.modules.fhjw.service.FhjwCaseService;
import io.hmit.modules.sys.dto.SysUserDTO;
import io.hmit.modules.sys.entity.SysUserEntity;
import io.hmit.modules.sys.service.SysDeptService;
import io.hmit.modules.sys.service.SysUserService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
/**
* 测试定时任务(演示Demo,可删除)
* <p>
* testTask为spring bean的名称
*
* @author zsh 408538940@qq.com
*/
@Component("caseInfoUpdateTask")
public class CaseInfoUpdateTask implements ITask {
private Logger logger = LoggerFactory.getLogger(getClass());
@Autowired
private FhjwCaseService fhjwCaseService;
@Autowired
private SysUserService sysUserService;
@Override
public void run(String params) {
logger.debug("TestTask定时任务正在执行,参数为:{}", params);
Map<String, Object> param = new HashMap<>();
param.put("flag","2");
List<FhjwCaseDTO> dtos = fhjwCaseService.list(param);
dtos.stream().forEach(item ->{
Optional<SysUserDTO> dto =Optional.ofNullable(sysUserService.getByRealName(item.getUndertaker()));
dto.ifPresent(user ->{
item.setDeptId(user.getDeptId());
item.setFlag("1");
item.setUpdateDate(new Date());
fhjwCaseService.update(item);
});
});
}
}
package io.hmit.modules.sys.controller; package io.hmit.modules.sys.controller;
import cn.afterturn.easypoi.excel.ExcelImportUtil;
import cn.afterturn.easypoi.excel.entity.ImportParams;
import com.baomidou.mybatisplus.extension.api.R;
import com.google.gson.Gson;
import io.hmit.common.annotation.LogOperation; import io.hmit.common.annotation.LogOperation;
import io.hmit.common.config.FhjwProperties;
import io.hmit.common.constant.Constant; import io.hmit.common.constant.Constant;
import io.hmit.common.exception.ErrorCode; import io.hmit.common.exception.ErrorCode;
import io.hmit.common.exception.HmitException;
import io.hmit.common.page.PageData; import io.hmit.common.page.PageData;
import io.hmit.common.utils.ConvertUtils; import io.hmit.common.utils.ConvertUtils;
import io.hmit.common.utils.ExcelUtils; import io.hmit.common.utils.ExcelUtils;
...@@ -12,12 +18,17 @@ import io.hmit.common.validator.ValidatorUtils; ...@@ -12,12 +18,17 @@ import io.hmit.common.validator.ValidatorUtils;
import io.hmit.common.validator.group.AddGroup; import io.hmit.common.validator.group.AddGroup;
import io.hmit.common.validator.group.DefaultGroup; import io.hmit.common.validator.group.DefaultGroup;
import io.hmit.common.validator.group.UpdateGroup; import io.hmit.common.validator.group.UpdateGroup;
import io.hmit.modules.oss.entity.SysOssEntity;
import io.hmit.modules.security.password.PasswordUtils; import io.hmit.modules.security.password.PasswordUtils;
import io.hmit.modules.security.user.SecurityUser; import io.hmit.modules.security.user.SecurityUser;
import io.hmit.modules.security.user.UserDetail; import io.hmit.modules.security.user.UserDetail;
import io.hmit.modules.sys.dto.PasswordDTO; import io.hmit.modules.sys.dto.PasswordDTO;
import io.hmit.modules.sys.dto.SysDeptDTO;
import io.hmit.modules.sys.dto.SysUserDTO; import io.hmit.modules.sys.dto.SysUserDTO;
import io.hmit.modules.sys.entity.SysUserEntity;
import io.hmit.modules.sys.excel.SysUserExcel; import io.hmit.modules.sys.excel.SysUserExcel;
import io.hmit.modules.sys.service.SysDeptService;
import io.hmit.modules.sys.service.SysRoleService;
import io.hmit.modules.sys.service.SysRoleUserService; import io.hmit.modules.sys.service.SysRoleUserService;
import io.hmit.modules.sys.service.SysUserService; import io.hmit.modules.sys.service.SysUserService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -27,10 +38,15 @@ import io.swagger.annotations.ApiOperation; ...@@ -27,10 +38,15 @@ import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions; import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import springfox.documentation.annotations.ApiIgnore; import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -48,6 +64,14 @@ public class SysUserController { ...@@ -48,6 +64,14 @@ public class SysUserController {
private SysUserService sysUserService; private SysUserService sysUserService;
@Autowired @Autowired
private SysRoleUserService sysRoleUserService; private SysRoleUserService sysRoleUserService;
@Autowired
private FhjwProperties fhjwProperties;
@Autowired
private SysRoleService sysRoleService;
@Autowired
private SysDeptService sysDeptService;
@GetMapping("page") @GetMapping("page")
@ApiOperation("分页") @ApiOperation("分页")
...@@ -152,6 +176,55 @@ public class SysUserController { ...@@ -152,6 +176,55 @@ public class SysUserController {
return new Result(); return new Result();
} }
/**
* 导入数据
*/
@RequestMapping("/importData")
@RequiresPermissions("sys:user:import")
public Result importData(@RequestParam("file") MultipartFile file) throws Exception {
if (file.isEmpty()) {
throw new HmitException("上传文件不能为空");
}
//上传文件
String file_path = fhjwProperties.getUploadPath()+file.getOriginalFilename();
File filePath = new File(file_path);
if(!filePath.getParentFile().exists()){
filePath.mkdirs();
}
try {
file.transferTo(filePath);
} catch (IllegalStateException | IOException e) {
e.printStackTrace();
}
//解析excel,
ImportParams params_import = new ImportParams();
List<Map<String, Object>> list = ExcelImportUtil.importExcel(
filePath, Map.class, params_import);
List<SysUserEntity> sysUserS = new ArrayList<>();
list.forEach(item ->{
item.put("username",item.get("用户名")!= null ? item.get("用户名").toString() : "");
item.put("realName",item.get("姓名")!= null ? item.get("姓名").toString() : "");
item.put("gender",item.get("性别")!= null ? item.get("性别").toString() : "");
item.put("mobile",item.get("手机号")!= null ? item.get("手机号").toString() : "");
item.put("password",item.get("手机号")!= null ? item.get("手机号").toString() : "123456");
item.put("deptName",item.get("部门") != null ? item.get("部门").toString() : "");
SysDeptDTO deptDTO = sysDeptService.getByDeptName(item.get("部门")!= null ? item.get("部门").toString() : "");
item.put("deptId",deptDTO.getId());
item.put("superAdmin",0);
item.put("status",1);
// sysRoleService.get()
item.put("status",1);
sysUserS.add(new Gson().fromJson(new Gson().toJson(item), SysUserEntity.class));
});
// 保存到数据库
sysUserService.insertBatch(sysUserS);
return new Result();
}
@GetMapping("export") @GetMapping("export")
@ApiOperation("导出") @ApiOperation("导出")
@LogOperation("导出") @LogOperation("导出")
...@@ -163,4 +236,4 @@ public class SysUserController { ...@@ -163,4 +236,4 @@ public class SysUserController {
ExcelUtils.exportExcelToTarget(response, null, list, SysUserExcel.class); ExcelUtils.exportExcelToTarget(response, null, list, SysUserExcel.class);
} }
} }
\ No newline at end of file
...@@ -22,6 +22,8 @@ public interface SysUserDao extends BaseDao<SysUserEntity> { ...@@ -22,6 +22,8 @@ public interface SysUserDao extends BaseDao<SysUserEntity> {
SysUserEntity getByUsername(String username); SysUserEntity getByUsername(String username);
SysUserEntity getByRealName(String realName);
int updatePassword(@Param("id") Long id, @Param("newPassword") String newPassword); int updatePassword(@Param("id") Long id, @Param("newPassword") String newPassword);
/** /**
...@@ -29,4 +31,4 @@ public interface SysUserDao extends BaseDao<SysUserEntity> { ...@@ -29,4 +31,4 @@ public interface SysUserDao extends BaseDao<SysUserEntity> {
*/ */
int getCountByDeptId(Long deptId); int getCountByDeptId(Long deptId);
} }
\ No newline at end of file
...@@ -61,6 +61,9 @@ public class SysUserDTO implements Serializable { ...@@ -61,6 +61,9 @@ public class SysUserDTO implements Serializable {
@ApiModelProperty(value = "手机号") @ApiModelProperty(value = "手机号")
private String mobile; private String mobile;
@ApiModelProperty(value = "承办人代码")
private String undertakerNum;
@ApiModelProperty(value = "部门ID", required = true) @ApiModelProperty(value = "部门ID", required = true)
@NotNull(message = "{sysuser.deptId.require}", groups = DefaultGroup.class) @NotNull(message = "{sysuser.deptId.require}", groups = DefaultGroup.class)
private Long deptId; private Long deptId;
...@@ -83,4 +86,4 @@ public class SysUserDTO implements Serializable { ...@@ -83,4 +86,4 @@ public class SysUserDTO implements Serializable {
@ApiModelProperty(value = "部门名称") @ApiModelProperty(value = "部门名称")
private String deptName; private String deptName;
} }
\ No newline at end of file
...@@ -48,6 +48,10 @@ public class SysUserEntity extends BaseEntity { ...@@ -48,6 +48,10 @@ public class SysUserEntity extends BaseEntity {
* 手机号 * 手机号
*/ */
private String mobile; private String mobile;
/**
* 承办人代码
*/
private String undertakerNum;
/** /**
* 部门ID * 部门ID
*/ */
...@@ -76,4 +80,4 @@ public class SysUserEntity extends BaseEntity { ...@@ -76,4 +80,4 @@ public class SysUserEntity extends BaseEntity {
@TableField(exist = false) @TableField(exist = false)
private String deptName; private String deptName;
} }
\ No newline at end of file
...@@ -30,4 +30,6 @@ public interface SysDeptService extends BaseService<SysDeptEntity> { ...@@ -30,4 +30,6 @@ public interface SysDeptService extends BaseService<SysDeptEntity> {
* @param id 部门ID * @param id 部门ID
*/ */
List<Long> getSubDeptIdList(Long id); List<Long> getSubDeptIdList(Long id);
}
\ No newline at end of file SysDeptDTO getByDeptName(String deptName);
}
...@@ -24,6 +24,8 @@ public interface SysUserService extends BaseService<SysUserEntity> { ...@@ -24,6 +24,8 @@ public interface SysUserService extends BaseService<SysUserEntity> {
SysUserDTO getByUsername(String username); SysUserDTO getByUsername(String username);
SysUserDTO getByRealName(String realName);
void save(SysUserDTO dto); void save(SysUserDTO dto);
void update(SysUserDTO dto); void update(SysUserDTO dto);
......
package io.hmit.modules.sys.service.impl; package io.hmit.modules.sys.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.additional.query.impl.QueryChainWrapper;
import io.hmit.common.constant.Constant; import io.hmit.common.constant.Constant;
import io.hmit.common.exception.ErrorCode; import io.hmit.common.exception.ErrorCode;
import io.hmit.common.exception.HmitException; import io.hmit.common.exception.HmitException;
...@@ -120,6 +122,12 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit ...@@ -120,6 +122,12 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
return deptIdList; return deptIdList;
} }
@Override
public SysDeptDTO getByDeptName(String deptName) {
SysDeptEntity entity = baseDao.selectOne(new QueryWrapper<SysDeptEntity>().eq("name",deptName));
return ConvertUtils.sourceToTarget(entity,SysDeptDTO.class);
}
/** /**
* 获取所有上级部门ID * 获取所有上级部门ID
* *
......
...@@ -5,6 +5,10 @@ import io.hmit.common.constant.Constant; ...@@ -5,6 +5,10 @@ import io.hmit.common.constant.Constant;
import io.hmit.common.page.PageData; import io.hmit.common.page.PageData;
import io.hmit.common.service.impl.BaseServiceImpl; import io.hmit.common.service.impl.BaseServiceImpl;
import io.hmit.common.utils.ConvertUtils; import io.hmit.common.utils.ConvertUtils;
import io.hmit.modules.fhjw.dto.UserDTO;
import io.hmit.modules.fhjw.service.RoleService;
import io.hmit.modules.fhjw.service.UserRoleService;
import io.hmit.modules.fhjw.service.UserService;
import io.hmit.modules.security.password.PasswordUtils; import io.hmit.modules.security.password.PasswordUtils;
import io.hmit.modules.security.user.SecurityUser; import io.hmit.modules.security.user.SecurityUser;
import io.hmit.modules.security.user.UserDetail; import io.hmit.modules.security.user.UserDetail;
...@@ -13,6 +17,7 @@ import io.hmit.modules.sys.dto.SysUserDTO; ...@@ -13,6 +17,7 @@ import io.hmit.modules.sys.dto.SysUserDTO;
import io.hmit.modules.sys.entity.SysUserEntity; import io.hmit.modules.sys.entity.SysUserEntity;
import io.hmit.modules.sys.enums.SuperAdminEnum; import io.hmit.modules.sys.enums.SuperAdminEnum;
import io.hmit.modules.sys.service.SysDeptService; import io.hmit.modules.sys.service.SysDeptService;
import io.hmit.modules.sys.service.SysRoleService;
import io.hmit.modules.sys.service.SysRoleUserService; import io.hmit.modules.sys.service.SysRoleUserService;
import io.hmit.modules.sys.service.SysUserService; import io.hmit.modules.sys.service.SysUserService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
...@@ -38,6 +43,18 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit ...@@ -38,6 +43,18 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit
@Autowired @Autowired
private SysDeptService sysDeptService; private SysDeptService sysDeptService;
@Autowired
private SysRoleService sysRoleService;
@Autowired
private UserService userService;
@Autowired
private UserRoleService userRoleService;
@Autowired
private RoleService roleService;
@Override @Override
public PageData<SysUserDTO> page(Map<String, Object> params) { public PageData<SysUserDTO> page(Map<String, Object> params) {
...@@ -88,6 +105,13 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit ...@@ -88,6 +105,13 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit
return ConvertUtils.sourceToTarget(entity, SysUserDTO.class); return ConvertUtils.sourceToTarget(entity, SysUserDTO.class);
} }
@Override
public SysUserDTO getByRealName(String realName) {
SysUserEntity entity = baseDao.getByRealName(realName);
return ConvertUtils.sourceToTarget(entity, SysUserDTO.class);
}
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void save(SysUserDTO dto) { public void save(SysUserDTO dto) {
...@@ -104,6 +128,18 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit ...@@ -104,6 +128,18 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit
//保存角色用户关系 //保存角色用户关系
sysRoleUserService.saveOrUpdate(entity.getId(), dto.getRoleIdList()); sysRoleUserService.saveOrUpdate(entity.getId(), dto.getRoleIdList());
//如果是承办人,在保存一次到tb_user表中,方便后续扫码判断是否为承办人角色
dto.getRoleIdList().stream().forEach(item -> {
if(sysRoleService.get(item).getName().indexOf("承办人") !=-1){
Long roleId = roleService.getIdByRoleName("承办人");
UserDTO userDTO = new UserDTO();
userDTO.setUsername(dto.getRealName());
userDTO.setMobile(dto.getMobile());
userDTO.setUserRoleId(roleId);
userService.save(userDTO);
}
});
} }
@Override @Override
......
...@@ -66,3 +66,6 @@ mybatis-plus: ...@@ -66,3 +66,6 @@ mybatis-plus:
cache-enabled: false cache-enabled: false
call-setters-on-nulls: true call-setters-on-nulls: true
jdbc-type-for-null: 'null' jdbc-type-for-null: 'null'
fhjw:
file-path: /home/resources/cjrone/upload/
<?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="io.hmit.modules.fhjw.dao.FhiwFunctionDao">
<resultMap type="io.hmit.modules.fhjw.entity.FhiwFunctionEntity" id="fhiwFunctionMap">
<result property="id" column="id"/>
<result property="name" column="name"/>
<result property="creator" column="creator"/>
<result property="createDate" column="create_date"/>
<result property="updater" column="updater"/>
<result property="updateDate" column="update_date"/>
</resultMap>
<select id="getAllFuncList" resultType="io.hmit.modules.fhjw.entity.FhiwFunctionEntity">
select * from fhiw_function
</select>
</mapper>
<?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="io.hmit.modules.fhjw.dao.FhjwRoleFunctionDao">
<resultMap type="io.hmit.modules.fhjw.entity.FhjwRoleFunctionEntity" id="fhjwRoleFunctionMap">
<result property="id" column="id"/>
<result property="functionId" column="function_id"/>
<result property="creator" column="creator"/>
<result property="createDate" column="create_date"/>
<result property="updater" column="updater"/>
<result property="updateDate" column="update_date"/>
</resultMap>
</mapper>
\ No newline at end of file
...@@ -10,6 +10,10 @@ ...@@ -10,6 +10,10 @@
<result property="creator" column="creator"/> <result property="creator" column="creator"/>
<result property="createDate" column="create_date"/> <result property="createDate" column="create_date"/>
</resultMap> </resultMap>
<delete id="deleteByUserId">
delete from tb_user_role where user_id = #{userId}
</delete>
</mapper>
\ No newline at end of file </mapper>
...@@ -32,6 +32,10 @@ ...@@ -32,6 +32,10 @@
select * from sys_user where username = #{value} select * from sys_user where username = #{value}
</select> </select>
<select id="getByRealName" resultType="io.hmit.modules.sys.entity.SysUserEntity">
select * from sys_user where real_name = #{value}
</select>
<update id="updatePassword"> <update id="updatePassword">
update sys_user set password = #{newPassword} where id = #{id} update sys_user set password = #{newPassword} where id = #{id}
</update> </update>
...@@ -40,4 +44,4 @@ ...@@ -40,4 +44,4 @@
select count(*) from sys_user where dept_id = #{value} select count(*) from sys_user where dept_id = #{value}
</select> </select>
</mapper> </mapper>
\ No newline at end of file
...@@ -69,7 +69,7 @@ public class ApiRegisterController { ...@@ -69,7 +69,7 @@ public class ApiRegisterController {
Optional<RoleDTO> roleDTO =Optional.ofNullable(roleService.get(dto.getRoleId())); Optional<RoleDTO> roleDTO =Optional.ofNullable(roleService.get(dto.getRoleId()));
roleDTO.ifPresent(item ->loginResDTO.setTempID(item.getTempId())); roleDTO.ifPresent(item ->loginResDTO.setTempID(item.getTempId()));
UserEntity entity = userService.getByMobile(dto.getMobile()); UserEntity entity = userService.getByMobileAIdno(dto.getMobile(), dto.getUserIdno());
if(entity!=null){ if(entity!=null){
loginResDTO.setUserID(entity.getId()); loginResDTO.setUserID(entity.getId());
...@@ -79,7 +79,8 @@ public class ApiRegisterController { ...@@ -79,7 +79,8 @@ public class ApiRegisterController {
user.setMobile(dto.getMobile()); user.setMobile(dto.getMobile());
user.setUsername(dto.getUsername()); user.setUsername(dto.getUsername());
user.setCreateDate(new Date()); user.setCreateDate(new Date());
user.setCaseId(dto.getCaseId()); // user.setCaseId(dto.getCaseId());
user.setUserIdno(dto.getUserIdno());
userService.insert(user); userService.insert(user);
UserRoleEntity userRoleEntity = new UserRoleEntity(); UserRoleEntity userRoleEntity = new UserRoleEntity();
......
...@@ -3,6 +3,9 @@ package io.hmit.dao; ...@@ -3,6 +3,9 @@ package io.hmit.dao;
import io.hmit.common.dao.BaseDao; import io.hmit.common.dao.BaseDao;
import io.hmit.entity.UserEntity; import io.hmit.entity.UserEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Map;
/** /**
* 用户 * 用户
...@@ -14,5 +17,7 @@ public interface UserDao extends BaseDao<UserEntity> { ...@@ -14,5 +17,7 @@ public interface UserDao extends BaseDao<UserEntity> {
UserEntity getUserByMobile(String mobile); UserEntity getUserByMobile(String mobile);
UserEntity getUserByParams(Map<String, Object> params);
UserEntity getUserByUserId(Long userId); UserEntity getUserByUserId(Long userId);
} }
...@@ -32,6 +32,14 @@ public class UserEntity implements Serializable { ...@@ -32,6 +32,14 @@ public class UserEntity implements Serializable {
* 手机号 * 手机号
*/ */
private String mobile; private String mobile;
/**
* 身份
*/
private String identity;
/**
* 性别 1:女 0 :男
*/
private Integer gender;
/** /**
* 密码 * 密码
*/ */
......
package io.hmit.modules.fhjw.controller;
import io.hmit.common.constant.Constant;
import io.hmit.common.page.PageData;
import io.hmit.common.utils.Result;
import io.hmit.common.validator.AssertUtils;
import io.hmit.common.validator.ValidatorUtils;
import io.hmit.common.validator.group.AddGroup;
import io.hmit.common.validator.group.DefaultGroup;
import io.hmit.common.validator.group.UpdateGroup;
import io.hmit.modules.fhjw.dto.FhiwFunctionDTO;
import io.hmit.modules.fhjw.dto.FhjwRoleFunctionDTO;
import io.hmit.modules.fhjw.service.FhiwFunctionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.util.List;
import java.util.Map;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@RestController
@RequestMapping("api/fhiwfunction")
@Api(tags="评价模块")
public class FhiwFunctionController {
@Autowired
private FhiwFunctionService fhiwFunctionService;
@GetMapping("page")
@ApiOperation("分页")
@ApiImplicitParams({
@ApiImplicitParam(name = Constant.PAGE, value = "当前页码,从1开始", paramType = "query", required = true, dataType="int") ,
@ApiImplicitParam(name = Constant.LIMIT, value = "每页显示记录数", paramType = "query",required = true, dataType="int") ,
@ApiImplicitParam(name = Constant.ORDER_FIELD, value = "排序字段", paramType = "query", dataType="String") ,
@ApiImplicitParam(name = Constant.ORDER, value = "排序方式,可选值(asc、desc)", paramType = "query", dataType="String")
})
public Result<PageData<FhiwFunctionDTO>> page(@ApiIgnore @RequestParam Map<String, Object> params){
PageData<FhiwFunctionDTO> page = fhiwFunctionService.page(params);
return new Result<PageData<FhiwFunctionDTO>>().ok(page);
}
@GetMapping("{id}")
@ApiOperation("信息")
public Result<FhiwFunctionDTO> get(@PathVariable("id") Long id){
FhiwFunctionDTO data = fhiwFunctionService.get(id);
return new Result<FhiwFunctionDTO>().ok(data);
}
@GetMapping("/getByRole")
@ApiOperation("根据用户权限获取对应的评价模块")
@ApiImplicitParams({
@ApiImplicitParam(name = "roleId", value = "用户权限ID", paramType = "query", required = true, dataType="int") ,
@ApiImplicitParam(name = "userId", value = "用户ID", paramType = "query",required = true, dataType="int") ,
@ApiImplicitParam(name = "caseNum", value = "受案号", paramType = "query", dataType="String")
})
public Result<List<FhiwFunctionDTO>> getByRole(@ApiIgnore @RequestParam Map<String, Object> params){
List<FhiwFunctionDTO> data = fhiwFunctionService.getByRole(params);
return new Result<List<FhiwFunctionDTO>>().ok(data);
}
@PostMapping
@ApiOperation("保存")
public Result save(@RequestBody FhiwFunctionDTO dto){
//校验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
fhiwFunctionService.save(dto);
return new Result();
}
@PutMapping
@ApiOperation("修改")
public Result update(@RequestBody FhiwFunctionDTO dto){
//校验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
fhiwFunctionService.update(dto);
return new Result();
}
@DeleteMapping
@ApiOperation("删除")
public Result delete(@RequestBody Long[] ids){
//校验数据
AssertUtils.isArrayEmpty(ids, "id");
fhiwFunctionService.delete(ids);
return new Result();
}
}
...@@ -14,6 +14,7 @@ import io.swagger.annotations.Api; ...@@ -14,6 +14,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Delete;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore; import springfox.documentation.annotations.ApiIgnore;
...@@ -58,9 +59,11 @@ public class FhjwCaseController { ...@@ -58,9 +59,11 @@ public class FhjwCaseController {
return new Result<FhjwCaseDTO>().ok(data); return new Result<FhjwCaseDTO>().ok(data);
} }
@Delete("系统变更不使用")
@GetMapping("/getBycaseNum/{caseNum}") @GetMapping("/getBycaseNum/{caseNum}")
@ApiOperation("根据案件号caseNum获取案件信息") @ApiOperation("根据案件号caseNum获取案件信息")
public Result<FhjwCaseDTO> getByCaseNum(@PathVariable("caseNum") String caseNum){ public Result<FhjwCaseDTO> getByCaseNum(@PathVariable("caseNum") String caseNum){
//系统信息变更
FhjwCaseDTO data = fhjwCaseService.getByCaseNum(caseNum); FhjwCaseDTO data = fhjwCaseService.getByCaseNum(caseNum);
return new Result<FhjwCaseDTO>().ok(data); return new Result<FhjwCaseDTO>().ok(data);
......
...@@ -19,6 +19,7 @@ import org.springframework.web.bind.annotation.*; ...@@ -19,6 +19,7 @@ import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore; import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -64,6 +65,7 @@ public class FhjwFeedbackController { ...@@ -64,6 +65,7 @@ public class FhjwFeedbackController {
//校验数据 //校验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
dto.setCreateDate(new Date());
fhjwFeedbackService.save(dto); fhjwFeedbackService.save(dto);
return new Result(); return new Result();
......
package io.hmit.modules.fhjw.controller;
import io.hmit.common.constant.Constant;
import io.hmit.common.page.PageData;
import io.hmit.common.utils.Result;
import io.hmit.common.validator.AssertUtils;
import io.hmit.common.validator.ValidatorUtils;
import io.hmit.common.validator.group.AddGroup;
import io.hmit.common.validator.group.DefaultGroup;
import io.hmit.common.validator.group.UpdateGroup;
import io.hmit.modules.fhjw.dto.FhjwRoleFunctionDTO;
import io.hmit.modules.fhjw.service.FhjwRoleFunctionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@RestController
@RequestMapping("api/fhjwrolefunction")
@Api(tags="用户评价权限功能")
public class FhjwRoleFunctionController {
@Autowired
private FhjwRoleFunctionService fhjwRoleFunctionService;
@GetMapping("page")
@ApiOperation("分页")
@ApiImplicitParams({
@ApiImplicitParam(name = Constant.PAGE, value = "当前页码,从1开始", paramType = "query", required = true, dataType="int") ,
@ApiImplicitParam(name = Constant.LIMIT, value = "每页显示记录数", paramType = "query",required = true, dataType="int") ,
@ApiImplicitParam(name = Constant.ORDER_FIELD, value = "排序字段", paramType = "query", dataType="String") ,
@ApiImplicitParam(name = Constant.ORDER, value = "排序方式,可选值(asc、desc)", paramType = "query", dataType="String")
})
public Result<PageData<FhjwRoleFunctionDTO>> page(@ApiIgnore @RequestParam Map<String, Object> params){
PageData<FhjwRoleFunctionDTO> page = fhjwRoleFunctionService.page(params);
return new Result<PageData<FhjwRoleFunctionDTO>>().ok(page);
}
@GetMapping("{id}")
@ApiOperation("信息")
public Result<FhjwRoleFunctionDTO> get(@PathVariable("id") Long id){
FhjwRoleFunctionDTO data = fhjwRoleFunctionService.get(id);
return new Result<FhjwRoleFunctionDTO>().ok(data);
}
@PostMapping
@ApiOperation("保存")
public Result save(@RequestBody FhjwRoleFunctionDTO dto){
//校验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
fhjwRoleFunctionService.save(dto);
return new Result();
}
@PutMapping
@ApiOperation("修改")
public Result update(@RequestBody FhjwRoleFunctionDTO dto){
//校验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
fhjwRoleFunctionService.update(dto);
return new Result();
}
@DeleteMapping
@ApiOperation("删除")
public Result delete(@RequestBody Long[] ids){
//校验数据
AssertUtils.isArrayEmpty(ids, "id");
fhjwRoleFunctionService.delete(ids);
return new Result();
}
}
package io.hmit.modules.fhjw.dao;
import io.hmit.common.dao.BaseDao;
import io.hmit.modules.fhjw.entity.FhiwFunctionEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Mapper
public interface FhiwFunctionDao extends BaseDao<FhiwFunctionEntity> {
}
\ No newline at end of file
package io.hmit.modules.fhjw.dao;
import io.hmit.common.dao.BaseDao;
import io.hmit.modules.fhjw.entity.FhjwRoleFunctionEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Mapper
public interface FhjwRoleFunctionDao extends BaseDao<FhjwRoleFunctionEntity> {
}
\ No newline at end of file
package io.hmit.modules.fhjw.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Data
@ApiModel(value = "评价模块")
public class FhiwFunctionDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "id")
private Long id;
@ApiModelProperty(value = "评价模块名字")
private String name;
}
...@@ -47,6 +47,18 @@ public class FhjwCaseDTO implements Serializable { ...@@ -47,6 +47,18 @@ public class FhjwCaseDTO implements Serializable {
@ApiModelProperty(value = "案件详情") @ApiModelProperty(value = "案件详情")
private String caseDetail; private String caseDetail;
@ApiModelProperty(value = "承办人姓名")
private String undertaker;
@ApiModelProperty(value = "当事人姓名")
private String peopleName;
@ApiModelProperty(value = "代理人姓名")
private String agentName;
@ApiModelProperty(value = "是否更新")
private String flag;
@ApiModelProperty(value = "创建者") @ApiModelProperty(value = "创建者")
private Long creator; private Long creator;
......
...@@ -29,6 +29,9 @@ public class FhjwCommentDTO implements Serializable { ...@@ -29,6 +29,9 @@ public class FhjwCommentDTO implements Serializable {
@ApiModelProperty(value = "用户ID") @ApiModelProperty(value = "用户ID")
private Long userId; private Long userId;
@ApiModelProperty(value = "用户所属权限ID")
private Long roleId;
@ApiModelProperty(value = "模板ID") @ApiModelProperty(value = "模板ID")
private Long tempId; private Long tempId;
......
...@@ -25,6 +25,9 @@ public class FhjwFeedbackDTO implements Serializable { ...@@ -25,6 +25,9 @@ public class FhjwFeedbackDTO implements Serializable {
@ApiModelProperty(value = "用户ID") @ApiModelProperty(value = "用户ID")
private Long userId; private Long userId;
@ApiModelProperty(value = "用户所属权限ID")
private Long roleId;
@ApiModelProperty(value = "反馈类型;1,反馈意见;2,控告申诉;3,代表委员有话说") @ApiModelProperty(value = "反馈类型;1,反馈意见;2,控告申诉;3,代表委员有话说")
private String feedbackType; private String feedbackType;
...@@ -37,5 +40,11 @@ public class FhjwFeedbackDTO implements Serializable { ...@@ -37,5 +40,11 @@ public class FhjwFeedbackDTO implements Serializable {
@ApiModelProperty(value = "创建时间") @ApiModelProperty(value = "创建时间")
private Date createDate; private Date createDate;
@ApiModelProperty(value = "受案号")
private String caseNum;
@ApiModelProperty(value = "当事人")
private String peopleName;
} }
\ No newline at end of file
package io.hmit.modules.fhjw.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Data
@ApiModel(value = "用户评价权限功能")
public class FhjwRoleFunctionDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "id")
private Long id;
@ApiModelProperty(value = "角色id")
private Long roleId;
@ApiModelProperty(value = "评价功能id")
private Long functionId;
@ApiModelProperty(value = "创建者")
private Long creator;
@ApiModelProperty(value = "创建时间")
private Date createDate;
@ApiModelProperty(value = "更新者")
private Long updater;
@ApiModelProperty(value = "更新时间")
private Date updateDate;
}
...@@ -28,6 +28,9 @@ public class UserCaseDTO implements Serializable { ...@@ -28,6 +28,9 @@ public class UserCaseDTO implements Serializable {
@ApiModelProperty(value = "案件ID") @ApiModelProperty(value = "案件ID")
private Long caseId; private Long caseId;
@ApiModelProperty(value = "身份")
private String identity;
@ApiModelProperty(value = "创建者") @ApiModelProperty(value = "创建者")
private Long creator; private Long creator;
...@@ -39,6 +42,7 @@ public class UserCaseDTO implements Serializable { ...@@ -39,6 +42,7 @@ public class UserCaseDTO implements Serializable {
UserCaseDTO userCaseDTO = new UserCaseDTO(); UserCaseDTO userCaseDTO = new UserCaseDTO();
userCaseDTO.setUserId(userId); userCaseDTO.setUserId(userId);
userCaseDTO.setCaseId(caseId); userCaseDTO.setCaseId(caseId);
// userCaseDTO.setIdentity(identity);
userCaseDTO.setCreateDate(new Date()); userCaseDTO.setCreateDate(new Date());
return userCaseDTO; return userCaseDTO;
} }
......
package io.hmit.modules.fhjw.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.hmit.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("fhiw_function")
public class FhiwFunctionEntity extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 评价模块名字
*/
private String name;
/**
* 更新者
*/
private Long updater;
/**
* 更新时间
*/
private Date updateDate;
}
\ No newline at end of file
...@@ -27,6 +27,18 @@ public class FhjwCaseEntity extends BaseEntity { ...@@ -27,6 +27,18 @@ public class FhjwCaseEntity extends BaseEntity {
* 案件名称 * 案件名称
*/ */
private String caseName; private String caseName;
/**
* 承办人
*/
private String undertaker;
/**
* 当事人
*/
private String peopleName;
/**
* 代理人
*/
private String agentName;
/** /**
* 办理期限 * 办理期限
*/ */
...@@ -55,4 +67,16 @@ public class FhjwCaseEntity extends BaseEntity { ...@@ -55,4 +67,16 @@ public class FhjwCaseEntity extends BaseEntity {
* 案件详情 * 案件详情
*/ */
private String caseDetail; private String caseDetail;
/**
* 部门ID
*/
private Long deptId;
/**
* 是否更新标志
* 1 已更新
* 2 未更新(默认)
*/
private String flag;
} }
...@@ -39,4 +39,9 @@ public class FhjwCommentEntity extends BaseEntity { ...@@ -39,4 +39,9 @@ public class FhjwCommentEntity extends BaseEntity {
* 案件ID * 案件ID
*/ */
private Long caseId; private Long caseId;
/**
* 用户所属权限ID
*/
private Long roleId;
} }
...@@ -35,4 +35,16 @@ public class FhjwFeedbackEntity extends BaseEntity { ...@@ -35,4 +35,16 @@ public class FhjwFeedbackEntity extends BaseEntity {
* 意见、申诉内容 * 意见、申诉内容
*/ */
private String content; private String content;
} /**
\ No newline at end of file * 受案号
*/
private String caseNum;
/**
* 当事人姓名
*/
private String peopleName;
/**
* 用户所属权限ID
*/
private Long roleId;
}
package io.hmit.modules.fhjw.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.hmit.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("fhjw_role_function")
public class FhjwRoleFunctionEntity extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 角色id
*/
private Long roleId;
/**
* 评价功能id
*/
private Long functionId;
/**
* 更新者
*/
private Long updater;
/**
* 更新时间
*/
private Date updateDate;
}
...@@ -27,4 +27,4 @@ public class UserCaseEntity extends BaseEntity { ...@@ -27,4 +27,4 @@ public class UserCaseEntity extends BaseEntity {
* 案件ID * 案件ID
*/ */
private Long caseId; private Long caseId;
} }
\ No newline at end of file
package io.hmit.modules.fhjw.service;
import io.hmit.common.service.CrudService;
import io.hmit.modules.fhjw.dto.FhiwFunctionDTO;
import io.hmit.modules.fhjw.entity.FhiwFunctionEntity;
import java.util.List;
import java.util.Map;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
public interface FhiwFunctionService extends CrudService<FhiwFunctionEntity, FhiwFunctionDTO> {
List<FhiwFunctionDTO> getByRole(Map<String, Object> params);
}
...@@ -4,6 +4,7 @@ import io.hmit.common.service.CrudService; ...@@ -4,6 +4,7 @@ import io.hmit.common.service.CrudService;
import io.hmit.modules.fhjw.dto.FhjwCaseDTO; import io.hmit.modules.fhjw.dto.FhjwCaseDTO;
import io.hmit.modules.fhjw.entity.FhjwCaseEntity; import io.hmit.modules.fhjw.entity.FhjwCaseEntity;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
...@@ -17,4 +18,6 @@ public interface FhjwCaseService extends CrudService<FhjwCaseEntity, FhjwCaseDTO ...@@ -17,4 +18,6 @@ public interface FhjwCaseService extends CrudService<FhjwCaseEntity, FhjwCaseDTO
void save(Map<String, Object> params); void save(Map<String, Object> params);
FhjwCaseDTO getByCaseNum(String caseNum); FhjwCaseDTO getByCaseNum(String caseNum);
List<FhjwCaseDTO> selectByCaseNum(String caseNum);
} }
...@@ -11,5 +11,4 @@ import io.hmit.modules.fhjw.entity.FhjwFeedbackEntity; ...@@ -11,5 +11,4 @@ import io.hmit.modules.fhjw.entity.FhjwFeedbackEntity;
* @since 1.0.0 2021-06-02 * @since 1.0.0 2021-06-02
*/ */
public interface FhjwFeedbackService extends CrudService<FhjwFeedbackEntity, FhjwFeedbackDTO> { public interface FhjwFeedbackService extends CrudService<FhjwFeedbackEntity, FhjwFeedbackDTO> {
}
}
\ No newline at end of file
package io.hmit.modules.fhjw.service;
import io.hmit.common.service.CrudService;
import io.hmit.modules.fhjw.dto.FhjwRoleFunctionDTO;
import io.hmit.modules.fhjw.entity.FhjwRoleFunctionEntity;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
public interface FhjwRoleFunctionService extends CrudService<FhjwRoleFunctionEntity, FhjwRoleFunctionDTO> {
}
\ No newline at end of file
package io.hmit.modules.fhjw.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.hmit.common.service.impl.CrudServiceImpl;
import io.hmit.modules.fhjw.dao.FhiwFunctionDao;
import io.hmit.modules.fhjw.dto.FhiwFunctionDTO;
import io.hmit.modules.fhjw.dto.FhjwCaseDTO;
import io.hmit.modules.fhjw.dto.FhjwRoleFunctionDTO;
import io.hmit.modules.fhjw.dto.UserCaseDTO;
import io.hmit.modules.fhjw.entity.FhiwFunctionEntity;
import io.hmit.modules.fhjw.entity.UserCaseEntity;
import io.hmit.modules.fhjw.service.FhiwFunctionService;
import io.hmit.modules.fhjw.service.FhjwCaseService;
import io.hmit.modules.fhjw.service.FhjwRoleFunctionService;
import io.hmit.modules.fhjw.service.UserCaseService;
import io.hmit.modules.user.dto.UserRoleDTO;
import io.hmit.modules.user.service.RoleService;
import io.hmit.modules.user.service.UserRoleService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;
/**
* 评价模块
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Service
public class FhiwFunctionServiceImpl extends CrudServiceImpl<FhiwFunctionDao, FhiwFunctionEntity, FhiwFunctionDTO> implements FhiwFunctionService {
@Autowired
private FhjwRoleFunctionService fhjwRoleFunctionService;
@Autowired
private UserCaseService userCaseService;
@Autowired
private RoleService roleService;
@Autowired
private UserRoleService userRoleService;
@Autowired
private FhjwCaseService fhjwCaseService;
@Override
public QueryWrapper<FhiwFunctionEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get("id");
QueryWrapper<FhiwFunctionEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), "id", id);
return wrapper;
}
@Override
public List<FhiwFunctionDTO> getByRole(Map<String, Object> params) {
//获取权限时传入的信息,用户权限ID,登录的用户ID,案件ID
Long roleId = Long.parseLong(params.get("roleId").toString());
Long userId = Long.parseLong(params.get("userId").toString());
String caseNum = params.get("caseNum").toString().replace("%5B","[").replace("%5D","]");
List<Long> caseIds = fhjwCaseService.selectByCaseNum(caseNum).stream()
.map(FhjwCaseDTO::getId).collect(Collectors.toList());
// Long caseId = fhjwCaseService.getByCaseNum(caseNum).getId();
boolean flag = false;
//当事人权限,则需要判断此案件是否有代理人,有代理人则不允许评价,无代理人则可以评价
if("当事人".equals(roleService.get(roleId).getName())){
for (Long caseId:caseIds) {
System.out.println("caseId:"+caseId);
Map<String, Object> query = new HashMap<>();
query.put("caseId",caseId);
query.put("userId",userId);
List<UserCaseDTO> userCases = userCaseService.list(query);
if(userCases.size()>0){
if(!"".equals(fhjwCaseService.get(caseId).getAgentName())){
flag = true;
}
}
/*
List<Long> userIds = new ArrayList<>();
if(userCases.size()>0){
userIds = userCases.stream()
.map(UserCaseDTO::getUserId).collect(Collectors.toList());
}
for (Long Id:userIds) {
Optional<UserRoleDTO> userRole = Optional.ofNullable(userRoleService.getRoleByUser(Id));
Long role = userRoleService.getRoleByUser(Id).getRoleId();
if("代理人".equals(roleService.get(role).getName())){
flag = true;
}
}
*/
}
}
Long funcId = baseDao.selectOne(new QueryWrapper<FhiwFunctionEntity>().eq("name","我要填写评测")).getId();
List<Long> funIds = new ArrayList<>();
if(flag){
funIds = fhjwRoleFunctionService.list(params).stream()
.filter(roleFunc -> !funcId.equals(roleFunc.getFunctionId()))
.map(FhjwRoleFunctionDTO::getFunctionId).collect(Collectors.toList());
}else {
funIds = fhjwRoleFunctionService.list(params).stream()
.map(FhjwRoleFunctionDTO::getFunctionId).collect(Collectors.toList());
}
List<FhiwFunctionDTO> dtos = new ArrayList<>();
funIds.stream().forEach(id ->{
FhiwFunctionDTO dto = get(id);
dtos.add(dto);
});
return dtos;
}
}
...@@ -4,34 +4,29 @@ import com.alibaba.fastjson.JSON; ...@@ -4,34 +4,29 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.hmit.common.service.impl.CrudServiceImpl; import io.hmit.common.service.impl.CrudServiceImpl;
import io.hmit.common.utils.ConvertUtils; import io.hmit.common.utils.ConvertUtils;
import io.hmit.dto.UserDTO;
import io.hmit.entity.UserEntity; import io.hmit.entity.UserEntity;
import io.hmit.modules.fhjw.dao.FhjwCaseDao; import io.hmit.modules.fhjw.dao.FhjwCaseDao;
import io.hmit.modules.fhjw.dto.FhjwCaseDTO; import io.hmit.modules.fhjw.dto.FhjwCaseDTO;
import io.hmit.modules.fhjw.dto.UserCaseDTO; import io.hmit.modules.fhjw.dto.UserCaseDTO;
import io.hmit.modules.fhjw.entity.FhjwCaseEntity; import io.hmit.modules.fhjw.entity.FhjwCaseEntity;
import io.hmit.modules.fhjw.entity.UserCaseEntity;
import io.hmit.modules.fhjw.service.FhjwCaseService; import io.hmit.modules.fhjw.service.FhjwCaseService;
import io.hmit.modules.fhjw.service.UserCaseService; import io.hmit.modules.fhjw.service.UserCaseService;
import io.hmit.modules.user.dto.RoleDTO; import io.hmit.modules.user.dto.RoleDTO;
import io.hmit.modules.user.dto.UserRoleDTO; import io.hmit.modules.user.dto.UserRoleDTO;
import io.hmit.modules.user.entity.UserRoleEntity;
import io.hmit.modules.user.service.RoleService; import io.hmit.modules.user.service.RoleService;
import io.hmit.modules.user.service.UserRoleService; import io.hmit.modules.user.service.UserRoleService;
import io.hmit.service.UserService; import io.hmit.service.UserService;
import org.apache.catalina.User;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
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 org.springframework.test.annotation.Rollback;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Optional; import java.util.Optional;
import java.util.UUID; import java.util.concurrent.atomic.AtomicReference;
/** /**
* 案件表 * 案件表
...@@ -71,46 +66,76 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn ...@@ -71,46 +66,76 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn
public void save(Map<String, Object> params) { public void save(Map<String, Object> params) {
String caseNum = (String)params.get("caseNum"); String caseNum = (String)params.get("caseNum");
Long userId = Long.parseLong(params.get("userId").toString()); //录入的承办人ID
Long undertakerId = Long.parseLong(params.get("userId").toString());
System.out.println("保存的params:"+params); System.out.println("保存的params:"+params);
FhjwCaseDTO dto= JSON.parseObject(JSON.toJSONString(params), FhjwCaseDTO.class); FhjwCaseDTO dto= JSON.parseObject(JSON.toJSONString(params), FhjwCaseDTO.class);
dto.getPeopleInfo().stream().forEach(item ->{
if("嫌疑人".equals(item.getUserRole()) || "被害人".equals(item.getUserRole())){
dto.setPeopleName(item.getUserName());
}
if("代理人".equals(item.getUserRole()) && !"".equals(item.getUserName())){
dto.setAgentName(item.getUserName());
}
});
FhjwCaseEntity entity = baseDao.selectOne(new QueryWrapper<FhjwCaseEntity>() FhjwCaseEntity entity = baseDao.selectOne(new QueryWrapper<FhjwCaseEntity>()
.eq(StringUtils.isNotBlank(caseNum),"case_num", caseNum)); .eq(StringUtils.isNotBlank(caseNum),"case_num", caseNum)
.eq("people_name",dto.getPeopleName()));
//案件信息保存及更新 //设置更新标志(默认未更新:2)用来更新承办人所属部门
dto.setFlag("2");
//案件信息保存或更新
if(entity !=null){ if(entity !=null){
dto.setId(entity.getId()); dto.setId(entity.getId());
dto.setUpdateDate(new Date()); dto.setUpdateDate(new Date());
update(dto); update(dto);
} else{ } else{
dto.setCreator(userId); dto.setCreator(undertakerId);
dto.setCreateDate(new Date()); dto.setCreateDate(new Date());
super.save(dto); super.save(dto);
} }
//若是包含承办人信息,则保存案件和承办人的关联关系 //若是包含承办人信息,则保存案件和承办人的关联关系
if(undertakerInfoNotNull(params)){ if(undertakerInfoNotNull(params)){
UserCaseDTO userCaseDTO = new UserCaseDTO().assembleUserCase(userId,dto.getId()); dto.setUndertaker(params.get("undertaker").toString());
userCaseService.save(userCaseDTO);
} }
//保存案件相关人员关联信息(不包含承办人) //保存案件相关人员关联信息(不包含承办人)
if(dto.getPeopleInfo()!=null && dto.getPeopleInfo().size()>0){ if(dto.getPeopleInfo()!=null && dto.getPeopleInfo().size()>0){
dto.getPeopleInfo().stream().forEach(item ->{ dto.getPeopleInfo().stream().forEach(item ->{
UserEntity userEntity = userService.getByMobile(item.getUserMobile()); UserEntity userEntity = new UserEntity();
if(!"".equals(item.getUserMobile()) ){
userEntity = userService.getByMobile(item.getUserMobile());
}
//当事人 角色细分为 嫌疑人身份 和 被害人身份
String actRoleName = item.getUserRole();
if("嫌疑人".equals(item.getUserRole()) || "被害人".equals(item.getUserRole())){
actRoleName = "当事人";
if(!"".equals(item.getUserName()) && !"".equals(item.getUserMobile())){
Map<String, Object> query = new HashMap<>();
query.put("username",item.getUserName());
userEntity = userService.getByParams(query);
}
}
//案件相关人员不存在人员表中则插入 //案件相关人员不存在人员表中则插入
if(userEntity==null ){ if(userEntity==null ){
//添加人员 //tb_user中添加人员
UserEntity user = new UserEntity(); UserEntity user = new UserEntity();
user.setUsername(item.getUserName()); user.setUsername(item.getUserName());
user.setMobile(item.getUserMobile()); user.setMobile("".equals(item.getUserMobile())?null:item.getUserMobile());
user.setCreateDate(new Date()); user.setCreateDate(new Date());
user.setUserIdno(item.getUserIdNo()); user.setUserIdno(item.getUserIdNo());
user.setIdentity(item.getUserRole());
userService.insert(user); userService.insert(user);
//人员-权限对应关系表 //人员-权限对应关系表
Optional<RoleDTO> roleDTO = Optional.ofNullable(roleService.getRoleByName(item.getUserRole()));
Optional<RoleDTO> roleDTO = Optional.ofNullable(roleService.getRoleByName(actRoleName));
roleDTO.ifPresent(role -> { roleDTO.ifPresent(role -> {
UserRoleDTO userRole = new UserRoleDTO().assembleUserRole(role.getId(),user.getId()); UserRoleDTO userRole = new UserRoleDTO().assembleUserRole(role.getId(),user.getId());
userRoleService.save(userRole); userRoleService.save(userRole);
...@@ -121,19 +146,29 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn ...@@ -121,19 +146,29 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn
userCaseService.save(userCaseDTO); userCaseService.save(userCaseDTO);
}else { }else {
//相关人员ID(当事人、代理人)
Long userId = userEntity.getId();
//人员信息更新
userEntity.setMobile(item.getUserMobile());
userEntity.setUsername(item.getUserName());
userEntity.setUserIdno(item.getUserIdNo());
userEntity.setIdentity(item.getUserRole());
userService.updateById(userEntity);
//人员已经存在,人员-案件新增 //人员已经存在,人员-案件新增
UserCaseDTO userCase = userCaseService.getByUserACase(userEntity.getId(),dto.getId()); UserCaseDTO userCase = userCaseService.getByUserACase(userId,dto.getId());
if (userCase==null){ if (userCase==null){
UserCaseDTO userCaseDTO = new UserCaseDTO().assembleUserCase(userEntity.getId(),dto.getId()); UserCaseDTO userCaseDTO = new UserCaseDTO().assembleUserCase(userId,dto.getId());
userCaseService.save(userCaseDTO); userCaseService.save(userCaseDTO);
} }
//人员已经存在,人员-权限新增(权限不一致则新增) //人员已经存在,人员-权限新增(权限不一致则新增)
Optional<RoleDTO> roleDTO = Optional.ofNullable(roleService.getRoleByName(item.getUserRole())); Optional<RoleDTO> roleDTO = Optional.ofNullable(roleService.getRoleByName(actRoleName));
roleDTO.ifPresent(role ->{ roleDTO.ifPresent(role ->{
UserRoleDTO userRoleDTO = userRoleService.getByRoleAUser(role.getId(),userEntity.getId()); UserRoleDTO userRoleDTO = userRoleService.getByRoleAUser(role.getId(),userId);
if (userRoleDTO == null) { if (userRoleDTO == null) {
UserRoleDTO userRole = new UserRoleDTO().assembleUserRole(role.getId(),userEntity.getId()); UserRoleDTO userRole = new UserRoleDTO().assembleUserRole(role.getId(),userId);
userRoleService.save(userRole); userRoleService.save(userRole);
} }
}); });
...@@ -149,6 +184,12 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn ...@@ -149,6 +184,12 @@ public class FhjwCaseServiceImpl extends CrudServiceImpl<FhjwCaseDao, FhjwCaseEn
return ConvertUtils.sourceToTarget(entity,FhjwCaseDTO.class); return ConvertUtils.sourceToTarget(entity,FhjwCaseDTO.class);
} }
@Override
public List<FhjwCaseDTO> selectByCaseNum(String caseNum) {
List<FhjwCaseEntity> entity = baseDao.selectList(new QueryWrapper<FhjwCaseEntity>().eq("case_num",caseNum));
return ConvertUtils.sourceToTarget(entity,FhjwCaseDTO.class);
}
/** /**
* 判断是否为第一次录入信息 * 判断是否为第一次录入信息
* 第一次录入的信息中包含承办人数据 * 第一次录入的信息中包含承办人数据
......
...@@ -56,6 +56,7 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw ...@@ -56,6 +56,7 @@ public class FhjwCommentServiceImpl extends CrudServiceImpl<FhjwCommentDao, Fhjw
fhjwCommentDTO.setUserId(dto.getUserId()); fhjwCommentDTO.setUserId(dto.getUserId());
fhjwCommentDTO.setAnswerId(item.getAnswerId()); fhjwCommentDTO.setAnswerId(item.getAnswerId());
fhjwCommentDTO.setQuestionId(item.getQuestionId()); fhjwCommentDTO.setQuestionId(item.getQuestionId());
fhjwCommentDTO.setRoleId(dto.getRoleId());
super.save(fhjwCommentDTO); super.save(fhjwCommentDTO);
}); });
......
...@@ -30,5 +30,4 @@ public class FhjwFeedbackServiceImpl extends CrudServiceImpl<FhjwFeedbackDao, Fh ...@@ -30,5 +30,4 @@ public class FhjwFeedbackServiceImpl extends CrudServiceImpl<FhjwFeedbackDao, Fh
return wrapper; return wrapper;
} }
}
}
\ No newline at end of file
package io.hmit.modules.fhjw.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.hmit.common.service.impl.CrudServiceImpl;
import io.hmit.modules.fhjw.dao.FhjwRoleFunctionDao;
import io.hmit.modules.fhjw.dto.FhjwRoleFunctionDTO;
import io.hmit.modules.fhjw.entity.FhjwRoleFunctionEntity;
import io.hmit.modules.fhjw.service.FhjwRoleFunctionService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.Map;
/**
* 用户评价权限功能
*
* @author zsh 408538940@qq.com
* @since 1.0.0 2021-06-22
*/
@Service
public class FhjwRoleFunctionServiceImpl extends CrudServiceImpl<FhjwRoleFunctionDao, FhjwRoleFunctionEntity, FhjwRoleFunctionDTO> implements FhjwRoleFunctionService {
@Override
public QueryWrapper<FhjwRoleFunctionEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get("id");
String roleId = (String)params.get("roleId");
QueryWrapper<FhjwRoleFunctionEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), "id", id);
wrapper.eq(StringUtils.isNotBlank(roleId), "role_id", roleId);
return wrapper;
}
}
...@@ -24,9 +24,13 @@ public class UserCaseServiceImpl extends CrudServiceImpl<UserCaseDao, UserCaseEn ...@@ -24,9 +24,13 @@ public class UserCaseServiceImpl extends CrudServiceImpl<UserCaseDao, UserCaseEn
@Override @Override
public QueryWrapper<UserCaseEntity> getWrapper(Map<String, Object> params){ public QueryWrapper<UserCaseEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get("id"); String id = (String)params.get("id");
String caseId = params.get("caseId")==null?"":params.get("caseId").toString();
String userId = params.get("userId")==null?"":params.get("userId").toString();
QueryWrapper<UserCaseEntity> wrapper = new QueryWrapper<>(); QueryWrapper<UserCaseEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), "id", id); wrapper.eq(StringUtils.isNotBlank(id), "id", id);
wrapper.eq(StringUtils.isNotBlank(caseId), "case_id", caseId);
wrapper.eq(StringUtils.isNotBlank(userId), "user_id", userId);
return wrapper; return wrapper;
} }
......
...@@ -15,6 +15,10 @@ public interface UserService extends BaseService<UserEntity> { ...@@ -15,6 +15,10 @@ public interface UserService extends BaseService<UserEntity> {
UserEntity getByMobile(String mobile); UserEntity getByMobile(String mobile);
UserEntity getByParams(Map<String, Object> params);
UserEntity getByMobileAIdno(String mobile,String userIdno);
UserEntity getUserByUserId(Long userId); UserEntity getUserByUserId(Long userId);
/** /**
......
...@@ -23,11 +23,25 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem ...@@ -23,11 +23,25 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
@Autowired @Autowired
private TokenService tokenService; private TokenService tokenService;
@Override @Override
public UserEntity getByMobile(String mobile) { public UserEntity getByMobile(String mobile) {
return baseDao.getUserByMobile(mobile); return baseDao.getUserByMobile(mobile);
} }
@Override
public UserEntity getByParams(Map<String, Object> params) {
return baseDao.getUserByParams(params);
}
@Override
public UserEntity getByMobileAIdno(String mobile, String userIdno) {
Map<String, Object> params = new HashMap<>();
params.put("mobile",mobile);
params.put("userIdno",userIdno);
return baseDao.getUserByParams(params);
}
@Override @Override
public UserEntity getUserByUserId(Long userId) { public UserEntity getUserByUserId(Long userId) {
return baseDao.getUserByUserId(userId); return baseDao.getUserByUserId(userId);
...@@ -54,4 +68,4 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem ...@@ -54,4 +68,4 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
return map; return map;
} }
} }
\ No newline at end of file
...@@ -7,6 +7,19 @@ ...@@ -7,6 +7,19 @@
select * from tb_user where mobile = #{value} select * from tb_user where mobile = #{value}
</select> </select>
<select id="getUserByParams" resultType="io.hmit.entity.UserEntity">
select * from tb_user where 1=1
<if test="mobile != null and mobile.trim() != ''">
and mobile = #{mobile}
</if>
<if test="userIdno != null and userIdno.trim() != ''">
and user_idno = #{userIdno}
</if>
<if test="username != null and username.trim() != ''">
and username = #{username}
</if>
</select>
<select id="getUserByUserId" resultType="io.hmit.entity.UserEntity"> <select id="getUserByUserId" resultType="io.hmit.entity.UserEntity">
select * from tb_user where id = #{value} select * from tb_user where id = #{value}
</select> </select>
......
<?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="io.hmit.modules.fhjw.dao.FhiwFunctionDao">
<resultMap type="io.hmit.modules.fhjw.entity.FhiwFunctionEntity" id="fhiwFunctionMap">
<result property="id" column="id"/>
<result property="name" column="name"/>
<result property="creator" column="creator"/>
<result property="createDate" column="create_date"/>
<result property="updater" column="updater"/>
<result property="updateDate" column="update_date"/>
</resultMap>
</mapper>
\ No newline at end of file
<?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="io.hmit.modules.fhjw.dao.FhjwRoleFunctionDao">
<resultMap type="io.hmit.modules.fhjw.entity.FhjwRoleFunctionEntity" id="fhjwRoleFunctionMap">
<result property="id" column="id"/>
<result property="functionId" column="function_id"/>
<result property="creator" column="creator"/>
<result property="createDate" column="create_date"/>
<result property="updater" column="updater"/>
<result property="updateDate" column="update_date"/>
</resultMap>
</mapper>
\ No newline at end of file
...@@ -10,9 +10,9 @@ spring: ...@@ -10,9 +10,9 @@ spring:
#MySQL配置 #MySQL配置
# driverClassName: com.mysql.cj.jdbc.Driver # driverClassName: com.mysql.cj.jdbc.Driver
driverClassName: com.mysql.jdbc.Driver driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://112.51.130.215:3306/hmit_test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai url: jdbc:mysql://119.3.143.77:3306/fhjw?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false
username: root username: hmit_user
password: 123456 password: HmitUser@1234
#oracle配置 #oracle配置
# driverClassName: oracle.jdbc.OracleDriver # driverClassName: oracle.jdbc.OracleDriver
# url: jdbc:oracle:thin:@192.168.10.10:1521:xe # url: jdbc:oracle:thin:@192.168.10.10:1521:xe
...@@ -47,4 +47,4 @@ pagehelper: ...@@ -47,4 +47,4 @@ pagehelper:
#指定数据库,可选值有【mysql、oracle、sqlserver、postgresql】 #指定数据库,可选值有【mysql、oracle、sqlserver、postgresql】
hmit: hmit:
database: mysql database: mysql
\ No newline at end of file
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
#\u5305\u540D #\u5305\u540D
package=io.hmit package=io.hmit
moduleName=demo moduleName=fhjw
#\u4F5C\u8005 #\u4F5C\u8005
author=zsh author=zsh
#Email #Email
......
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