39 changed files with 1295 additions and 21 deletions
@ -0,0 +1,96 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.dto; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.Date; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 客户定制功能角色列表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2020-09-07 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class CustomerFunctionRoleDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 唯一标识 |
||||
|
*/ |
||||
|
private String id; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 功能ID(function.ID) |
||||
|
*/ |
||||
|
private String functionId; |
||||
|
|
||||
|
/** |
||||
|
* 所属APP(工作端:gov、居民端:resi) |
||||
|
*/ |
||||
|
private String fromApp; |
||||
|
|
||||
|
/** |
||||
|
* 角色Key值 |
||||
|
*/ |
||||
|
private String roleKey; |
||||
|
|
||||
|
/** |
||||
|
* 角色名称 |
||||
|
*/ |
||||
|
private String roleName; |
||||
|
|
||||
|
/** |
||||
|
* 删除标识:0.未删除 1.已删除 |
||||
|
*/ |
||||
|
private Integer delFlag; |
||||
|
|
||||
|
/** |
||||
|
* 乐观锁 |
||||
|
*/ |
||||
|
private Integer revision; |
||||
|
|
||||
|
/** |
||||
|
* 创建人 |
||||
|
*/ |
||||
|
private String createdBy; |
||||
|
|
||||
|
/** |
||||
|
* 创建时间 |
||||
|
*/ |
||||
|
private Date createdTime; |
||||
|
|
||||
|
/** |
||||
|
* 更新人 |
||||
|
*/ |
||||
|
private String updatedBy; |
||||
|
|
||||
|
/** |
||||
|
* 更新时间 |
||||
|
*/ |
||||
|
private Date updatedTime; |
||||
|
|
||||
|
} |
@ -0,0 +1,29 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import java.io.Serializable; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 查询客户定制功能角色列表--接口入参 |
||||
|
* |
||||
|
* @author sun |
||||
|
*/ |
||||
|
@Data |
||||
|
public class CustomerFunctionRoleListFormDTO implements Serializable { |
||||
|
private static final long serialVersionUID = 1L; |
||||
|
/** |
||||
|
* 客户Id |
||||
|
*/ |
||||
|
@NotBlank(message = "客户Id不能为空", groups = {AddUserInternalGroup.class }) |
||||
|
private String customerId; |
||||
|
/** |
||||
|
* 定制功能ID |
||||
|
*/ |
||||
|
@NotBlank(message = "功能ID不能为空", groups = {AddUserInternalGroup.class }) |
||||
|
private String functionId; |
||||
|
public interface AddUserInternalGroup {} |
||||
|
|
||||
|
} |
@ -0,0 +1,27 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* 客户定制功能角色设置--接口入参 |
||||
|
* |
||||
|
* @author sun |
||||
|
*/ |
||||
|
@Data |
||||
|
public class RoleListFormDTO implements Serializable { |
||||
|
private static final long serialVersionUID = 1L; |
||||
|
/** |
||||
|
* 角色Key |
||||
|
*/ |
||||
|
@NotBlank(message = "角色key不能为空", groups = {AddUserInternalGroup.class }) |
||||
|
private String roleKey; |
||||
|
/** |
||||
|
* 角色名称 |
||||
|
*/ |
||||
|
@NotBlank(message = "角色名称不能为空", groups = {AddUserInternalGroup.class }) |
||||
|
private String roleName; |
||||
|
public interface AddUserInternalGroup {} |
||||
|
} |
@ -0,0 +1,37 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import java.io.Serializable; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 客户定制功能角色设置--接口入参 |
||||
|
* |
||||
|
* @author sun |
||||
|
*/ |
||||
|
@Data |
||||
|
public class SaveCustomerFunctionRoleFormDTO implements Serializable { |
||||
|
private static final long serialVersionUID = 1L; |
||||
|
/** |
||||
|
* 客户Id |
||||
|
*/ |
||||
|
@NotBlank(message = "客户Id不能为空", groups = {AddUserInternalGroup.class }) |
||||
|
private String customerId; |
||||
|
/** |
||||
|
* 定制功能ID |
||||
|
*/ |
||||
|
@NotBlank(message = "功能ID不能为空", groups = {AddUserInternalGroup.class }) |
||||
|
private String functionId; |
||||
|
/** |
||||
|
* 所属APP(工作端:gov、居民端:resi) |
||||
|
*/ |
||||
|
@NotBlank(message = "所属App不能为空", groups = {AddUserInternalGroup.class }) |
||||
|
private String fromApp; |
||||
|
/** |
||||
|
* 角色信息集合 |
||||
|
*/ |
||||
|
private List<RoleListFormDTO> roleList; |
||||
|
public interface AddUserInternalGroup {} |
||||
|
} |
@ -0,0 +1,26 @@ |
|||||
|
package com.epmet.dto.result; |
||||
|
|
||||
|
import com.epmet.dto.form.RoleListFormDTO; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* 查询客户定制功能角色列表--接口返参 |
||||
|
* |
||||
|
* @author sun |
||||
|
*/ |
||||
|
@Data |
||||
|
public class CustomerFunctionRoleListResultDTO implements Serializable { |
||||
|
private static final long serialVersionUID = 2971689193155710437L; |
||||
|
|
||||
|
/** |
||||
|
* 角色Key |
||||
|
*/ |
||||
|
private String roleKey; |
||||
|
/** |
||||
|
* 角色名称 |
||||
|
*/ |
||||
|
private String roleName; |
||||
|
} |
@ -0,0 +1,123 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.controller; |
||||
|
|
||||
|
import com.epmet.commons.tools.annotation.LoginUser; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.security.dto.TokenDto; |
||||
|
import com.epmet.commons.tools.utils.ExcelUtils; |
||||
|
import com.epmet.commons.tools.utils.Result; |
||||
|
import com.epmet.commons.tools.validator.AssertUtils; |
||||
|
import com.epmet.commons.tools.validator.ValidatorUtils; |
||||
|
import com.epmet.commons.tools.validator.group.AddGroup; |
||||
|
import com.epmet.commons.tools.validator.group.UpdateGroup; |
||||
|
import com.epmet.commons.tools.validator.group.DefaultGroup; |
||||
|
import com.epmet.dto.CustomerFunctionRoleDTO; |
||||
|
import com.epmet.dto.form.CustomerFunctionRoleListFormDTO; |
||||
|
import com.epmet.dto.form.SaveCustomerFunctionRoleFormDTO; |
||||
|
import com.epmet.dto.result.CustomerFunctionRoleListResultDTO; |
||||
|
import com.epmet.excel.CustomerFunctionRoleExcel; |
||||
|
import com.epmet.service.CustomerFunctionRoleService; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import javax.servlet.http.HttpServletResponse; |
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 客户定制功能角色列表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2020-09-07 |
||||
|
*/ |
||||
|
@RestController |
||||
|
@RequestMapping("customerfunctionrole") |
||||
|
public class CustomerFunctionRoleController { |
||||
|
|
||||
|
@Autowired |
||||
|
private CustomerFunctionRoleService customerFunctionRoleService; |
||||
|
|
||||
|
@GetMapping("page") |
||||
|
public Result<PageData<CustomerFunctionRoleDTO>> page(@RequestParam Map<String, Object> params){ |
||||
|
PageData<CustomerFunctionRoleDTO> page = customerFunctionRoleService.page(params); |
||||
|
return new Result<PageData<CustomerFunctionRoleDTO>>().ok(page); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("{id}") |
||||
|
public Result<CustomerFunctionRoleDTO> get(@PathVariable("id") String id){ |
||||
|
CustomerFunctionRoleDTO data = customerFunctionRoleService.get(id); |
||||
|
return new Result<CustomerFunctionRoleDTO>().ok(data); |
||||
|
} |
||||
|
|
||||
|
@PostMapping |
||||
|
public Result save(@RequestBody CustomerFunctionRoleDTO dto){ |
||||
|
//效验数据
|
||||
|
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); |
||||
|
customerFunctionRoleService.save(dto); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@PutMapping |
||||
|
public Result update(@RequestBody CustomerFunctionRoleDTO dto){ |
||||
|
//效验数据
|
||||
|
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); |
||||
|
customerFunctionRoleService.update(dto); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@DeleteMapping |
||||
|
public Result delete(@RequestBody String[] ids){ |
||||
|
//效验数据
|
||||
|
AssertUtils.isArrayEmpty(ids, "id"); |
||||
|
customerFunctionRoleService.delete(ids); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("export") |
||||
|
public void export(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception { |
||||
|
List<CustomerFunctionRoleDTO> list = customerFunctionRoleService.list(params); |
||||
|
ExcelUtils.exportExcelToTarget(response, null, list, CustomerFunctionRoleExcel.class); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @param tokenDTO formDTO |
||||
|
* @return |
||||
|
* @author sun |
||||
|
* @Description 客户定制功能角色设置 |
||||
|
*/ |
||||
|
@PostMapping("savecustomerfunctionrole") |
||||
|
public Result saveCustomerFunctionRole(@LoginUser TokenDto tokenDTO, @RequestBody SaveCustomerFunctionRoleFormDTO formDTO){ |
||||
|
ValidatorUtils.validateEntity(formDTO, SaveCustomerFunctionRoleFormDTO.AddUserInternalGroup.class); |
||||
|
customerFunctionRoleService.saveCustomerFunctionRole(formDTO); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @param tokenDTO formDTO |
||||
|
* @return |
||||
|
* @author sun |
||||
|
* @Description 查询客户定制功能角色列表 |
||||
|
*/ |
||||
|
@PostMapping("customerfunctionrolelist") |
||||
|
public Result<List<CustomerFunctionRoleListResultDTO>> customerFunctionRoleList(@LoginUser TokenDto tokenDTO, @RequestBody CustomerFunctionRoleListFormDTO formDTO){ |
||||
|
ValidatorUtils.validateEntity(formDTO, CustomerFunctionRoleListFormDTO.AddUserInternalGroup.class); |
||||
|
return new Result<List<CustomerFunctionRoleListResultDTO>>().ok(customerFunctionRoleService.customerFunctionRoleList(formDTO)); |
||||
|
} |
||||
|
} |
@ -0,0 +1,62 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.dao; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.dao.BaseDao; |
||||
|
import com.epmet.dto.CustomerFunctionRoleDTO; |
||||
|
import com.epmet.dto.form.CustomerFunctionRoleListFormDTO; |
||||
|
import com.epmet.dto.form.FunctionDetailFromDTO; |
||||
|
import com.epmet.dto.form.SaveCustomerFunctionRoleFormDTO; |
||||
|
import com.epmet.dto.result.CustomerFunctionRoleListResultDTO; |
||||
|
import com.epmet.entity.CustomerFunctionRoleEntity; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
import org.apache.ibatis.annotations.Param; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 客户定制功能角色列表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2020-09-07 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface CustomerFunctionRoleDao extends BaseDao<CustomerFunctionRoleEntity> { |
||||
|
|
||||
|
/** |
||||
|
* @author sun |
||||
|
* @Description 根据客户Id删除客户功能角色信息 |
||||
|
*/ |
||||
|
void delByCustomerId(SaveCustomerFunctionRoleFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* @param formDTO |
||||
|
* @return |
||||
|
* @author sun |
||||
|
* @Description 查询客户定制功能角色列表 |
||||
|
*/ |
||||
|
List<CustomerFunctionRoleListResultDTO> selectCustomerFunctionRoleList(CustomerFunctionRoleListFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* @param formDTO |
||||
|
* @return |
||||
|
* @author sun |
||||
|
* @Description 根据用户拥有的角色查询客户的定制功能 |
||||
|
*/ |
||||
|
List<String> selectFunctionList(FunctionDetailFromDTO formDTO); |
||||
|
} |
@ -0,0 +1,66 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.entity; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* 客户定制功能角色列表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2020-09-07 |
||||
|
*/ |
||||
|
@Data |
||||
|
@EqualsAndHashCode(callSuper=false) |
||||
|
@TableName("customer_function_role") |
||||
|
public class CustomerFunctionRoleEntity extends BaseEpmetEntity { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 功能ID(function.ID) |
||||
|
*/ |
||||
|
private String functionId; |
||||
|
|
||||
|
/** |
||||
|
* 所属APP(工作端:gov、居民端:resi) |
||||
|
*/ |
||||
|
private String fromApp; |
||||
|
|
||||
|
/** |
||||
|
* 角色Key值 |
||||
|
*/ |
||||
|
private String roleKey; |
||||
|
|
||||
|
/** |
||||
|
* 角色名称 |
||||
|
*/ |
||||
|
private String roleName; |
||||
|
|
||||
|
} |
@ -0,0 +1,71 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.excel; |
||||
|
|
||||
|
import cn.afterturn.easypoi.excel.annotation.Excel; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* 客户定制功能角色列表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2020-09-07 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class CustomerFunctionRoleExcel { |
||||
|
|
||||
|
@Excel(name = "唯一标识") |
||||
|
private String id; |
||||
|
|
||||
|
@Excel(name = "客户Id ") |
||||
|
private String customerId; |
||||
|
|
||||
|
@Excel(name = "功能ID(function.ID)") |
||||
|
private String functionId; |
||||
|
|
||||
|
@Excel(name = "所属APP(工作端:gov、居民端:resi)") |
||||
|
private String fromApp; |
||||
|
|
||||
|
@Excel(name = "角色Key值") |
||||
|
private String roleKey; |
||||
|
|
||||
|
@Excel(name = "角色名称") |
||||
|
private String roleName; |
||||
|
|
||||
|
@Excel(name = "删除标识:0.未删除 1.已删除") |
||||
|
private Integer delFlag; |
||||
|
|
||||
|
@Excel(name = "乐观锁") |
||||
|
private Integer revision; |
||||
|
|
||||
|
@Excel(name = "创建人") |
||||
|
private String createdBy; |
||||
|
|
||||
|
@Excel(name = "创建时间") |
||||
|
private Date createdTime; |
||||
|
|
||||
|
@Excel(name = "更新人") |
||||
|
private String updatedBy; |
||||
|
|
||||
|
@Excel(name = "更新时间") |
||||
|
private Date updatedTime; |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,47 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.redis; |
||||
|
|
||||
|
import com.epmet.commons.tools.redis.RedisUtils; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Component; |
||||
|
|
||||
|
/** |
||||
|
* 客户定制功能角色列表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2020-09-07 |
||||
|
*/ |
||||
|
@Component |
||||
|
public class CustomerFunctionRoleRedis { |
||||
|
@Autowired |
||||
|
private RedisUtils redisUtils; |
||||
|
|
||||
|
public void delete(Object[] ids) { |
||||
|
|
||||
|
} |
||||
|
|
||||
|
public void set(){ |
||||
|
|
||||
|
} |
||||
|
|
||||
|
public String get(String id){ |
||||
|
return null; |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,114 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.service; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.service.BaseService; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.dto.CustomerFunctionRoleDTO; |
||||
|
import com.epmet.dto.form.CustomerFunctionRoleListFormDTO; |
||||
|
import com.epmet.dto.form.SaveCustomerFunctionRoleFormDTO; |
||||
|
import com.epmet.dto.result.CustomerFunctionRoleListResultDTO; |
||||
|
import com.epmet.entity.CustomerFunctionRoleEntity; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
/** |
||||
|
* 客户定制功能角色列表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2020-09-07 |
||||
|
*/ |
||||
|
public interface CustomerFunctionRoleService extends BaseService<CustomerFunctionRoleEntity> { |
||||
|
|
||||
|
/** |
||||
|
* 默认分页 |
||||
|
* |
||||
|
* @param params |
||||
|
* @return PageData<CustomerFunctionRoleDTO> |
||||
|
* @author generator |
||||
|
* @date 2020-09-07 |
||||
|
*/ |
||||
|
PageData<CustomerFunctionRoleDTO> page(Map<String, Object> params); |
||||
|
|
||||
|
/** |
||||
|
* 默认查询 |
||||
|
* |
||||
|
* @param params |
||||
|
* @return java.util.List<CustomerFunctionRoleDTO> |
||||
|
* @author generator |
||||
|
* @date 2020-09-07 |
||||
|
*/ |
||||
|
List<CustomerFunctionRoleDTO> list(Map<String, Object> params); |
||||
|
|
||||
|
/** |
||||
|
* 单条查询 |
||||
|
* |
||||
|
* @param id |
||||
|
* @return CustomerFunctionRoleDTO |
||||
|
* @author generator |
||||
|
* @date 2020-09-07 |
||||
|
*/ |
||||
|
CustomerFunctionRoleDTO get(String id); |
||||
|
|
||||
|
/** |
||||
|
* 默认保存 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2020-09-07 |
||||
|
*/ |
||||
|
void save(CustomerFunctionRoleDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 默认更新 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2020-09-07 |
||||
|
*/ |
||||
|
void update(CustomerFunctionRoleDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 批量删除 |
||||
|
* |
||||
|
* @param ids |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2020-09-07 |
||||
|
*/ |
||||
|
void delete(String[] ids); |
||||
|
|
||||
|
/** |
||||
|
* @param formDTO |
||||
|
* @return |
||||
|
* @author sun |
||||
|
* @Description 客户定制功能角色设置 |
||||
|
*/ |
||||
|
void saveCustomerFunctionRole(SaveCustomerFunctionRoleFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* @param formDTO |
||||
|
* @return |
||||
|
* @author sun |
||||
|
* @Description 查询客户定制功能角色列表 |
||||
|
*/ |
||||
|
List<CustomerFunctionRoleListResultDTO> customerFunctionRoleList(CustomerFunctionRoleListFormDTO formDTO); |
||||
|
} |
@ -0,0 +1,154 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.service.impl; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
||||
|
import com.epmet.commons.tools.exception.ErrorCode; |
||||
|
import com.epmet.commons.tools.exception.RenException; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.utils.ConvertUtils; |
||||
|
import com.epmet.commons.tools.constant.FieldConstant; |
||||
|
import com.epmet.dao.CustomerFunctionRoleDao; |
||||
|
import com.epmet.dto.CustomerFunctionRoleDTO; |
||||
|
import com.epmet.dto.form.CustomerFunctionRoleListFormDTO; |
||||
|
import com.epmet.dto.form.RoleListFormDTO; |
||||
|
import com.epmet.dto.form.SaveCustomerFunctionRoleFormDTO; |
||||
|
import com.epmet.dto.result.CustomerFunctionRoleListResultDTO; |
||||
|
import com.epmet.entity.CustomerFunctionRoleEntity; |
||||
|
import com.epmet.redis.CustomerFunctionRoleRedis; |
||||
|
import com.epmet.service.CustomerFunctionRoleService; |
||||
|
import org.apache.commons.lang3.StringUtils; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.transaction.annotation.Transactional; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.Arrays; |
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
/** |
||||
|
* 客户定制功能角色列表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2020-09-07 |
||||
|
*/ |
||||
|
@Service |
||||
|
public class CustomerFunctionRoleServiceImpl extends BaseServiceImpl<CustomerFunctionRoleDao, CustomerFunctionRoleEntity> implements CustomerFunctionRoleService { |
||||
|
|
||||
|
@Autowired |
||||
|
private CustomerFunctionRoleRedis customerFunctionRoleRedis; |
||||
|
|
||||
|
@Override |
||||
|
public PageData<CustomerFunctionRoleDTO> page(Map<String, Object> params) { |
||||
|
IPage<CustomerFunctionRoleEntity> page = baseDao.selectPage( |
||||
|
getPage(params, FieldConstant.CREATED_TIME, false), |
||||
|
getWrapper(params) |
||||
|
); |
||||
|
return getPageData(page, CustomerFunctionRoleDTO.class); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<CustomerFunctionRoleDTO> list(Map<String, Object> params) { |
||||
|
List<CustomerFunctionRoleEntity> entityList = baseDao.selectList(getWrapper(params)); |
||||
|
|
||||
|
return ConvertUtils.sourceToTarget(entityList, CustomerFunctionRoleDTO.class); |
||||
|
} |
||||
|
|
||||
|
private QueryWrapper<CustomerFunctionRoleEntity> getWrapper(Map<String, Object> params){ |
||||
|
String id = (String)params.get(FieldConstant.ID_HUMP); |
||||
|
|
||||
|
QueryWrapper<CustomerFunctionRoleEntity> wrapper = new QueryWrapper<>(); |
||||
|
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
||||
|
|
||||
|
return wrapper; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public CustomerFunctionRoleDTO get(String id) { |
||||
|
CustomerFunctionRoleEntity entity = baseDao.selectById(id); |
||||
|
return ConvertUtils.sourceToTarget(entity, CustomerFunctionRoleDTO.class); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void save(CustomerFunctionRoleDTO dto) { |
||||
|
CustomerFunctionRoleEntity entity = ConvertUtils.sourceToTarget(dto, CustomerFunctionRoleEntity.class); |
||||
|
insert(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void update(CustomerFunctionRoleDTO dto) { |
||||
|
CustomerFunctionRoleEntity entity = ConvertUtils.sourceToTarget(dto, CustomerFunctionRoleEntity.class); |
||||
|
updateById(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void delete(String[] ids) { |
||||
|
// 逻辑删除(@TableLogic 注解)
|
||||
|
baseDao.deleteBatchIds(Arrays.asList(ids)); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @param formDTO |
||||
|
* @return |
||||
|
* @author sun |
||||
|
* @Description 客户定制功能角色设置 |
||||
|
*/ |
||||
|
@Override |
||||
|
public void saveCustomerFunctionRole(SaveCustomerFunctionRoleFormDTO formDTO) { |
||||
|
List<CustomerFunctionRoleEntity> listEntity = new ArrayList<>(); |
||||
|
//1.封装数据
|
||||
|
List<RoleListFormDTO> roleList = formDTO.getRoleList(); |
||||
|
roleList.forEach(role->{ |
||||
|
CustomerFunctionRoleEntity entity = new CustomerFunctionRoleEntity(); |
||||
|
entity.setCustomerId(formDTO.getCustomerId()); |
||||
|
entity.setFunctionId(formDTO.getFunctionId()); |
||||
|
entity.setFromApp(formDTO.getFromApp()); |
||||
|
entity.setRoleKey(role.getRoleKey()); |
||||
|
entity.setRoleName(role.getRoleName()); |
||||
|
listEntity.add(entity); |
||||
|
}); |
||||
|
|
||||
|
//2.先按客户Id、功能Id执行删除操作
|
||||
|
baseDao.delByCustomerId(formDTO); |
||||
|
|
||||
|
//3.批量新增
|
||||
|
if(!insertBatch(listEntity)){ |
||||
|
throw new RenException("定制功能角色设置失败"); |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @param formDTO |
||||
|
* @return |
||||
|
* @author sun |
||||
|
* @Description 查询客户定制功能角色列表 |
||||
|
*/ |
||||
|
@Override |
||||
|
public List<CustomerFunctionRoleListResultDTO> customerFunctionRoleList(CustomerFunctionRoleListFormDTO formDTO) { |
||||
|
//1.根据客户Id、功能Id查询客户定制功能设置的角色列表
|
||||
|
return baseDao.selectCustomerFunctionRoleList(formDTO); |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,15 @@ |
|||||
|
CREATE TABLE `customer_function_role` ( |
||||
|
`ID` varchar(64) NOT NULL COMMENT '唯一标识', |
||||
|
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id ', |
||||
|
`FUNCTION_ID` varchar(64) NOT NULL COMMENT '功能ID(function.ID)', |
||||
|
`FROM_APP` varchar(32) NOT NULL COMMENT '所属APP(工作端:gov、居民端:resi)', |
||||
|
`ROLE_KEY` varchar(32) NOT NULL COMMENT '角色Key值', |
||||
|
`ROLE_NAME` varchar(32) NOT NULL COMMENT '角色名称', |
||||
|
`DEL_FLAG` int(11) NOT NULL COMMENT '删除标识:0.未删除 1.已删除', |
||||
|
`REVISION` int(11) NOT NULL COMMENT '乐观锁', |
||||
|
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人', |
||||
|
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间', |
||||
|
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人', |
||||
|
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间', |
||||
|
PRIMARY KEY (`ID`) |
||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='客户定制功能角色列表'; |
@ -0,0 +1,39 @@ |
|||||
|
<?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="com.epmet.dao.CustomerFunctionRoleDao"> |
||||
|
|
||||
|
<select id="selectCustomerFunctionRoleList" resultType="com.epmet.dto.result.CustomerFunctionRoleListResultDTO"> |
||||
|
SELECT |
||||
|
role_key AS "roleKey", |
||||
|
role_name AS "roleName" |
||||
|
FROM |
||||
|
customer_function_role |
||||
|
WHERE |
||||
|
del_flag = '0' |
||||
|
AND customer_id = #{customerId} |
||||
|
AND function_id = #{functionId} |
||||
|
</select> |
||||
|
|
||||
|
<select id="selectFunctionList" resultType="java.lang.String"> |
||||
|
SELECT |
||||
|
DISTINCT |
||||
|
FUNCTION_ID |
||||
|
FROM customer_function_role |
||||
|
WHERE del_flag = '0' |
||||
|
AND customer_id = #{customerId} |
||||
|
AND from_app = #{clientType} |
||||
|
<foreach collection="roleKeyList" item="roleKey" index="index" open="AND ( " separator=" OR " close=")"> |
||||
|
role_key = #{roleKey} |
||||
|
</foreach> |
||||
|
|
||||
|
</select> |
||||
|
|
||||
|
<delete id="delByCustomerId"> |
||||
|
DELETE |
||||
|
FROM customer_function_role |
||||
|
WHERE customer_id = #{customerId} |
||||
|
AND function_id = #{functionId} |
||||
|
</delete> |
||||
|
|
||||
|
</mapper> |
@ -0,0 +1,28 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* @Description 获取用户拥有的角色key集合-接口入参 |
||||
|
* @Author sun |
||||
|
*/ |
||||
|
@Data |
||||
|
public class GetRoleKeyListFormDTO implements Serializable{ |
||||
|
private static final long serialVersionUID = -7994579456530273809L; |
||||
|
|
||||
|
/** |
||||
|
* 用户Id |
||||
|
* */ |
||||
|
private String userId; |
||||
|
/** |
||||
|
* 网格Id |
||||
|
* */ |
||||
|
private String gridId; |
||||
|
/** |
||||
|
* 所属端(居民端:resi 工作端:gov) |
||||
|
* */ |
||||
|
private String fromApp; |
||||
|
} |
@ -0,0 +1,46 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.dto.result; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.List; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 获取居民端、工作端人员角色列表--接口返参 |
||||
|
* |
||||
|
* @author sun |
||||
|
*/ |
||||
|
@Data |
||||
|
public class ResiGovRoleListResultDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 居民端角色列表 |
||||
|
*/ |
||||
|
private List<ResiGovRoleResultDTO> resiRoleList; |
||||
|
|
||||
|
/** |
||||
|
* 工作端角色列表 |
||||
|
*/ |
||||
|
private List<ResiGovRoleResultDTO> govRoleList; |
||||
|
|
||||
|
} |
@ -0,0 +1,44 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.dto.result; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 获取居民端、工作端人员角色列表--接口返参 |
||||
|
* |
||||
|
* @author sun |
||||
|
*/ |
||||
|
@Data |
||||
|
public class ResiGovRoleResultDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 角色key |
||||
|
*/ |
||||
|
private String roleKey; |
||||
|
/** |
||||
|
* 角色名称 |
||||
|
*/ |
||||
|
private String roleName; |
||||
|
|
||||
|
} |
Loading…
Reference in new issue