package com.ibeetl.admin.console.api;
|
|
import com.ibeetl.admin.console.model.AppRoleModel;
|
import com.ibeetl.admin.console.model.PunchChannelModel;
|
import com.ibeetl.admin.console.service.RedisService;
|
import com.ibeetl.admin.console.service.XzxUserAuthInfoService;
|
import com.ibeetl.admin.console.service.XzxUserRoleInfoService;
|
import com.ibeetl.admin.console.web.query.XzxUserRoleInfoQuery;
|
import com.ibeetl.admin.core.annotation.Function;
|
import com.ibeetl.admin.core.entity.XzxUserRoleInfo;
|
import com.ibeetl.admin.core.util.ConvertUtil;
|
import com.ibeetl.admin.core.util.ValidateConfig;
|
import com.ibeetl.admin.core.web.JsonResult;
|
import com.ibeetl.admin.core.web.dto.FunctionNodeView;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
import org.apache.commons.lang3.StringUtils;
|
import org.beetl.sql.core.engine.PageQuery;
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.text.SimpleDateFormat;
|
import java.util.Calendar;
|
import java.util.List;
|
|
/**
|
* 用户管理
|
*/
|
//@Controller
|
@RestController
|
@Api(value = "APP管理的接口")
|
public class AppManagementApi {
|
|
private static final String MODEL = "/admin/front/app";
|
private final Logger log = LoggerFactory.getLogger(this.getClass());
|
|
@Autowired
|
RedisService redisService;
|
@Autowired
|
private XzxUserRoleInfoService xzxUserRoleInfoService;
|
@Autowired
|
private XzxUserAuthInfoService xzxUserAuthInfoService;
|
static SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
@PostMapping(MODEL + "/appRoleList.do")
|
@ResponseBody
|
@ApiOperation(value="APP管理-角色管理", notes="test: 仅0有正确返回")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType="query", name = "page", value = "页码", required = true, dataType = "int"),
|
@ApiImplicitParam(paramType="query", name = "limit", value = "每页条数", required = true, dataType = "int")
|
})
|
public JsonResult<PageQuery> appRoleList(@RequestBody XzxUserRoleInfoQuery condtion)
|
{
|
PageQuery page = condtion.getPageQuery();
|
xzxUserRoleInfoService.queryByCondition(page);
|
return JsonResult.success(page);
|
}
|
|
@PostMapping(MODEL + "/tree.json")
|
@ResponseBody
|
@ApiOperation(value="APP管理-角色管理(构造树型结构列表)", notes="test: 仅0有正确返回")
|
public JsonResult<List<FunctionNodeView>> getFunctionTree() {
|
List<FunctionNodeView> tree =xzxUserAuthInfoService.buildViewList();
|
return JsonResult.success(tree);
|
}
|
|
@PostMapping(MODEL + "/add.json")
|
@ResponseBody
|
@ApiOperation(value="APP管理-角色管理(添加角色)", notes="test: 仅0有正确返回")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType="query", name = "authIds", value = "权限ID集合", required = true, dataType = "String"),
|
@ApiImplicitParam(paramType="query", name = "roleName", value = "角色名称", required = true, dataType = "String")
|
//@ApiImplicitParam(paramType="query", name = "roleCode", value = "角色短码", required = true, dataType = "String"),
|
})
|
public JsonResult add(@RequestBody XzxUserRoleInfo xzxUserRoleInfo)
|
{
|
Calendar calendar = Calendar.getInstance();
|
calendar.set(Calendar.HOUR_OF_DAY, calendar.get(Calendar.HOUR_OF_DAY)-1);
|
String dataNow = sdf3.format(calendar.getTime());
|
xzxUserRoleInfo.setDelFlag("0");
|
xzxUserRoleInfo.setCreateTime(dataNow);
|
String[] strs = xzxUserRoleInfo.getAuthIds().split(",");
|
StringBuffer buf = new StringBuffer();
|
for (String str:strs) {
|
if(Integer.parseInt(str)<10000){
|
buf.append(str).append(",");
|
}
|
}
|
if(null!=buf.toString()&&!"".equals(buf.toString())){
|
String bufStr = buf.toString().substring(0,buf.toString().length()-1);
|
xzxUserRoleInfo.setAuthIds(bufStr);
|
|
}
|
XzxUserRoleInfo roleInfo = xzxUserRoleInfoService.queryMaxAppRole();
|
String userType = roleInfo.getRoleCode();
|
xzxUserRoleInfo.setRoleCode((Integer.parseInt(userType)+1)+"");
|
xzxUserRoleInfoService.save(xzxUserRoleInfo);
|
return new JsonResult().success();
|
}
|
|
@PostMapping(MODEL + "/edit.json")
|
@ResponseBody
|
@ApiOperation(value="APP管理-角色管理(修改角色)", notes="test: 仅0有正确返回")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType="query", name = "id", value = "角色表Id", required = true, dataType = "Long"),
|
@ApiImplicitParam(paramType="query", name = "authIds", value = "权限ID集合", required = true, dataType = "String"),
|
@ApiImplicitParam(paramType="query", name = "roleName", value = "角色名称", required = true, dataType = "String")
|
})
|
public JsonResult<String> update(@RequestBody XzxUserRoleInfo xzxUserRoleInfo) {
|
XzxUserRoleInfo roleInfo = xzxUserRoleInfoService.queryById(xzxUserRoleInfo.getId());
|
Calendar calendar = Calendar.getInstance();
|
if(roleInfo==null){
|
return JsonResult.failMessage("保存失败");
|
}
|
if(null!=xzxUserRoleInfo.getAuthIds()){
|
String[] strs = xzxUserRoleInfo.getAuthIds().split(",");
|
StringBuffer buf = new StringBuffer();
|
for (String str:strs) {
|
if(Integer.parseInt(str)<10000){
|
buf.append(str).append(",");
|
}
|
}
|
if(null!=buf.toString()&&!"".equals(buf.toString())){
|
String bufStr = buf.toString().substring(0,buf.toString().length()-1);
|
roleInfo.setAuthIds(bufStr);
|
}
|
String dataNow = sdf3.format(calendar.getTime());
|
roleInfo.setDelFlag("0");
|
roleInfo.setUpdateTime(dataNow);
|
}
|
boolean success = xzxUserRoleInfoService.update(roleInfo);
|
if (success) {
|
return new JsonResult().success();
|
} else {
|
return JsonResult.failMessage("保存失败");
|
}
|
}
|
|
@PostMapping(MODEL + "/delete.json")
|
@ResponseBody
|
@ApiOperation(value="APP管理-角色管理(删除角色)", notes="test: 仅0有正确返回")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType="query", name = "ids", value = "角色表Id集合(多个角色用逗号隔开)", required = true, dataType = "String")
|
})
|
public JsonResult delete(@RequestBody AppRoleModel model) {
|
String ids = model.getIds();
|
if (ids.endsWith(",")) {
|
ids = StringUtils.substringBeforeLast(ids, ",");
|
}
|
List<Long> idList = ConvertUtil.str2longs(ids);
|
xzxUserRoleInfoService.batchDelXzxUserRoleInfo(idList);
|
return new JsonResult().success();
|
}
|
|
@GetMapping(MODEL + "/view.json")
|
@Function("xzxUserRoleInfo")
|
@ResponseBody
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType="query", name = "id", value = "角色表Id", required = true, dataType = "String")
|
})
|
public JsonResult<XzxUserRoleInfo> queryInfo(@RequestBody AppRoleModel model) {
|
Long id = model.getId();
|
XzxUserRoleInfo xzxUserRoleInfo = xzxUserRoleInfoService.queryById(id);
|
return JsonResult.success(xzxUserRoleInfo);
|
}
|
|
|
@PostMapping(MODEL + "/queryPunchChannel.do")
|
@ResponseBody
|
@ApiOperation(value="APP管理-打卡通道", notes="test: 仅0有正确返回")
|
public JsonResult<String> queryPunchChannel() {
|
String value = xzxUserRoleInfoService.queryPunchChannel();
|
return JsonResult.success(value);
|
}
|
|
@PostMapping(MODEL + "/updatePunchChannel.json")
|
@ResponseBody
|
@ApiOperation(value="APP管理-打卡通道(保存)", notes="test: 仅0有正确返回")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType="query", name = "status", value = "打卡通道状态(0:打开,1:关闭)", required = true, dataType = "String")
|
})
|
public JsonResult updatePunchChannel (@RequestBody PunchChannelModel model) {
|
xzxUserRoleInfoService.updatePunchChannel(model);
|
return new JsonResult().success();
|
}
|
|
|
}
|