Merge remote-tracking branch 'origin/boot3.0' into boot3.0
commit
ba51301f0b
|
@ -34,4 +34,7 @@ public class DataPageResp<T> implements Serializable {
|
|||
public static <T> DataPageResp<T> of(PageQueryModel<T> pageQueryModel) {
|
||||
return new DataPageResp<>(pageQueryModel.getTotal(), pageQueryModel.getDataList());
|
||||
}
|
||||
public static <T> DataPageResp<T> of(Long total, List<T> rows) {
|
||||
return new DataPageResp<>(total,rows);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -36,4 +36,13 @@ public class PageQueryModel<T> {
|
|||
public static <T> PageQueryModel<T> of(Page<T> page) {
|
||||
return new PageQueryModel<>(page.getTotal(), page.getRecords());
|
||||
}
|
||||
/**
|
||||
* 构建分页查询模型对象
|
||||
* @param total,list 分页对象
|
||||
* @return 分页模型对象
|
||||
* @param <T> 入参
|
||||
*/
|
||||
public static <T> PageQueryModel<T> of(Long total,List<T> list) {
|
||||
return new PageQueryModel<>(total, list);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -102,4 +102,5 @@ public class SysDictData extends BaseEntity {
|
|||
public boolean getDefault () {
|
||||
return SysWhetherEnum.isYes(this.isDefault);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -3,10 +3,8 @@ package com.muyu.common.system.domain;
|
|||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.common.core.annotation.Excel.ColumnType;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
|
@ -57,7 +55,8 @@ public class SysLogininfor {
|
|||
/**
|
||||
* 访问时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date accessTime;
|
||||
|
||||
}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
package com.muyu.common.system.remote.factory;
|
||||
|
||||
import com.muyu.common.core.domain.Result;
|
||||
import com.muyu.common.system.remote.RemoteLogService;
|
||||
import com.muyu.common.system.domain.SysLogininfor;
|
||||
import com.muyu.common.system.remote.RemoteLogService;
|
||||
import com.muyu.common.system.domain.SysOperLog;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
|
|
@ -11,8 +11,13 @@ import com.muyu.common.log.enums.BusinessType;
|
|||
import com.muyu.common.security.annotation.RequiresPermissions;
|
||||
import com.muyu.common.security.utils.SecurityUtils;
|
||||
import com.muyu.common.system.domain.SysDictData;
|
||||
import com.muyu.system.domain.model.SysDictDataAddModel;
|
||||
import com.muyu.system.domain.model.SysDictDataPageQueryModel;
|
||||
import com.muyu.system.domain.model.SysDictDataUpdModel;
|
||||
import com.muyu.system.domain.rep.SysDictDataAddReq;
|
||||
import com.muyu.system.domain.rep.SysDictDataListReq;
|
||||
import com.muyu.system.domain.rep.SysDictDataUpdReq;
|
||||
import com.muyu.system.domain.resp.SysDictDataListResp;
|
||||
import com.muyu.system.service.SysDictDataService;
|
||||
import com.muyu.system.service.SysDictTypeService;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
|
@ -22,6 +27,7 @@ import org.springframework.web.bind.annotation.*;
|
|||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 数据字典信息
|
||||
|
@ -37,15 +43,31 @@ public class SysDictDataController extends BaseController {
|
|||
@Autowired
|
||||
private SysDictTypeService dictTypeService;
|
||||
|
||||
/**
|
||||
* 查询字典数据列表
|
||||
* @param sysDictDataListReq
|
||||
* @return
|
||||
*/
|
||||
@RequiresPermissions("system:dict:list")
|
||||
@PostMapping("/list")
|
||||
public Result<DataPageResp<SysDictData>> list (@RequestBody SysDictDataListReq sysDictDataListReq) {
|
||||
PageQueryModel<SysDictData> sysDictDataPageQueryModel = dictDataService.selectDictDataList(SysDictDataPageQueryModel.reqBuild(sysDictDataListReq));
|
||||
public Result<DataPageResp<SysDictDataListResp>> list (@RequestBody SysDictDataListReq sysDictDataListReq) {
|
||||
List<SysDictData> sysDictDataList = dictDataService.selectDictDataList(SysDictDataPageQueryModel.reqBuild(sysDictDataListReq)).getDataList();
|
||||
List<SysDictDataListResp> sysDictDataListRespList = sysDictDataList.stream().map(
|
||||
sysDictData -> SysDictDataListResp.buildResp(sysDictData)
|
||||
).distinct().collect(Collectors.toList());
|
||||
PageQueryModel<SysDictDataListResp> sysDictDataListRespPageQueryModel = new PageQueryModel<>();
|
||||
sysDictDataListRespPageQueryModel.setTotal(sysDictDataListRespList.size());
|
||||
sysDictDataListRespPageQueryModel.setDataList(sysDictDataListRespList);
|
||||
return Result.success(
|
||||
DataPageResp.of(sysDictDataPageQueryModel)
|
||||
DataPageResp.of(sysDictDataListRespPageQueryModel)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出字典数据列表
|
||||
* @param response
|
||||
* @param sysDictDataListReq
|
||||
*/
|
||||
@Log(title = "字典数据", businessType = BusinessType.EXPORT)
|
||||
@RequiresPermissions("system:dict:export")
|
||||
@PostMapping("/export")
|
||||
|
@ -83,21 +105,21 @@ public class SysDictDataController extends BaseController {
|
|||
@RequiresPermissions("system:dict:add")
|
||||
@Log(title = "字典数据", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public Result<String> add (@Validated @RequestBody SysDictData dict) {
|
||||
dict.setCreateBy(SecurityUtils.getUsername());
|
||||
dictDataService.insertDictData(dict);
|
||||
public Result<String> add (@Validated @RequestBody SysDictDataAddReq sysDictDataAddReq) {
|
||||
sysDictDataAddReq.setCreateBy(SecurityUtils.getUsername());
|
||||
dictDataService.insertDictData(SysDictDataAddModel.buildAddModel(sysDictDataAddReq));
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改保存字典类型
|
||||
*/
|
||||
@RequiresPermissions("system:dict:edit")
|
||||
//@RequiresPermissions("system:dict:edit")
|
||||
@Log(title = "字典数据", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public Result<String> edit (@Validated @RequestBody SysDictData dict) {
|
||||
dict.setUpdateBy(SecurityUtils.getUsername());
|
||||
dictDataService.updateDictData(dict);
|
||||
public Result<String> edit (@Validated @RequestBody SysDictDataUpdReq sysDictDataUpdReq) {
|
||||
sysDictDataUpdReq.setUpdateBy(SecurityUtils.getUsername());
|
||||
dictDataService.updateDictData(SysDictDataUpdModel.buildUpdModel(sysDictDataUpdReq));
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
|
|
|
@ -9,6 +9,14 @@ import com.muyu.common.log.enums.BusinessType;
|
|||
import com.muyu.common.security.annotation.RequiresPermissions;
|
||||
import com.muyu.common.security.utils.SecurityUtils;
|
||||
import com.muyu.common.system.domain.SysDictType;
|
||||
import com.muyu.system.domain.model.SysDictTypeAddModel;
|
||||
import com.muyu.system.domain.model.SysDictTypeListModel;
|
||||
import com.muyu.system.domain.model.SysDictTypePageQueryModel;
|
||||
import com.muyu.system.domain.model.SysDictTypeUpdModel;
|
||||
import com.muyu.system.domain.rep.SysDictTypeAddReq;
|
||||
import com.muyu.system.domain.rep.SysDictTypeListReq;
|
||||
import com.muyu.system.domain.rep.SysDictTypeUpdReq;
|
||||
import com.muyu.system.domain.resp.SysDictTypeListResp;
|
||||
import com.muyu.system.service.SysDictTypeService;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -16,6 +24,7 @@ import org.springframework.validation.annotation.Validated;
|
|||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 数据字典信息
|
||||
|
@ -30,18 +39,24 @@ public class SysDictTypeController extends BaseController {
|
|||
|
||||
@RequiresPermissions("system:dict:list")
|
||||
@PostMapping("/list")
|
||||
public Result<DataPageResp<SysDictType>> list (@RequestBody SysDictType dictType) {
|
||||
List<SysDictType> list = dictTypeService.selectDictTypeList(dictType);
|
||||
return Result.success(new DataPageResp<>(0,list));
|
||||
public Result<DataPageResp<SysDictTypeListResp>> list (@RequestBody SysDictTypeListReq sysDictTypeListReq) {
|
||||
List<SysDictTypeListResp> dictTypeListResps = dictTypeService.selectDictTypeList(SysDictTypePageQueryModel.reqBuild(sysDictTypeListReq))
|
||||
.stream()
|
||||
.map(SysDictTypeListResp::buildResp)
|
||||
.collect(Collectors.toList());
|
||||
return Result.success(new DataPageResp<>(dictTypeListResps.size(), dictTypeListResps));
|
||||
}
|
||||
|
||||
@Log(title = "字典类型", businessType = BusinessType.EXPORT)
|
||||
@RequiresPermissions("system:dict:export")
|
||||
@PostMapping("/export")
|
||||
public void export (HttpServletResponse response, SysDictType dictType) {
|
||||
List<SysDictType> list = dictTypeService.selectDictTypeList(dictType);
|
||||
ExcelUtil<SysDictType> util = new ExcelUtil<SysDictType>(SysDictType.class);
|
||||
util.exportExcel(response, list, "字典类型");
|
||||
public void export (HttpServletResponse response, SysDictTypeListReq sysDictTypeListReq) {
|
||||
List<SysDictTypeListResp> dictTypeListResps = dictTypeService.selectDictTypeList(SysDictTypePageQueryModel.reqBuild(sysDictTypeListReq))
|
||||
.stream()
|
||||
.map(SysDictTypeListResp::buildResp)
|
||||
.collect(Collectors.toList());
|
||||
ExcelUtil<SysDictTypeListResp> util = new ExcelUtil<SysDictTypeListResp>(SysDictTypeListResp.class);
|
||||
util.exportExcel(response, dictTypeListResps, "字典类型");
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -59,12 +74,12 @@ public class SysDictTypeController extends BaseController {
|
|||
@RequiresPermissions("system:dict:add")
|
||||
@Log(title = "字典类型", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public Result add (@Validated @RequestBody SysDictType dict) {
|
||||
if (!dictTypeService.checkDictTypeUnique(dict)) {
|
||||
return error("新增字典'" + dict.getDictName() + "'失败,字典类型已存在");
|
||||
public Result add (@Validated @RequestBody SysDictTypeAddReq sysDictTypeAddReq) {
|
||||
if (!dictTypeService.checkDictTypeUnique(SysDictTypeAddModel.buildModel(sysDictTypeAddReq))) {
|
||||
return error("新增字典'" + sysDictTypeAddReq.getDictName() + "'失败,字典类型已存在");
|
||||
}
|
||||
dict.setCreateBy(SecurityUtils.getUsername());
|
||||
dictTypeService.insertDictType(dict);
|
||||
sysDictTypeAddReq.setCreateBy(SecurityUtils.getUsername());
|
||||
dictTypeService.insertDictType(SysDictTypeAddModel.buildModel(sysDictTypeAddReq));
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
|
@ -74,12 +89,12 @@ public class SysDictTypeController extends BaseController {
|
|||
@RequiresPermissions("system:dict:edit")
|
||||
@Log(title = "字典类型", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public Result edit (@Validated @RequestBody SysDictType dict) {
|
||||
if (!dictTypeService.checkDictTypeUnique(dict)) {
|
||||
return error("修改字典'" + dict.getDictName() + "'失败,字典类型已存在");
|
||||
public Result edit (@Validated @RequestBody SysDictTypeUpdReq sysDictTypeUpdReq) {
|
||||
if (!dictTypeService.checkDictTypeUnique(SysDictTypeUpdModel.buildUpdModel(sysDictTypeUpdReq))) {
|
||||
return error("修改字典'" + sysDictTypeUpdReq.getDictName() + "'失败,字典类型已存在");
|
||||
}
|
||||
dict.setUpdateBy(SecurityUtils.getUsername());
|
||||
dictTypeService.updateDictType(dict);
|
||||
sysDictTypeUpdReq.setUpdateBy(SecurityUtils.getUsername());
|
||||
dictTypeService.updateDictType(SysDictTypeUpdModel.buildUpdModel(sysDictTypeUpdReq));
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
|
|
|
@ -12,9 +12,12 @@ import com.muyu.common.redis.service.RedisService;
|
|||
import com.muyu.common.security.annotation.InnerAuth;
|
||||
import com.muyu.common.security.annotation.RequiresPermissions;
|
||||
import com.muyu.common.system.domain.SysLogininfor;
|
||||
import com.muyu.system.domain.model.SysLogininforAddModel;
|
||||
import com.muyu.system.domain.model.SysLogininforExportModel;
|
||||
import com.muyu.system.domain.model.SysLogininforListModel;
|
||||
import com.muyu.system.domain.rep.SysLogininforAddReq;
|
||||
import com.muyu.system.domain.rep.SysLogininforListReq;
|
||||
import com.muyu.system.domain.resp.SysLogininforListResp;
|
||||
import com.muyu.system.service.SysLogininforService;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -38,10 +41,17 @@ public class SysLogininforController extends BaseController {
|
|||
|
||||
@RequiresPermissions("system:logininfor:list")
|
||||
@PostMapping("/list")
|
||||
public Result<DataPageResp<SysLogininfor>> list (@RequestBody SysLogininforListReq sysLogininforListReq) {
|
||||
PageQueryModel<SysLogininfor> pageQueryModel = logininforService.pageQuery(SysLogininforListModel.reqBuild(sysLogininforListReq));
|
||||
public Result<DataPageResp<SysLogininforListResp>> list (@RequestBody SysLogininforListReq sysLogininforListReq) {
|
||||
PageQueryModel<SysLogininforListModel> pageQueryModel = logininforService.pageQuery(SysLogininforListModel.reqBuild(sysLogininforListReq));
|
||||
DataPageResp<SysLogininforListModel> sysLogininforListModelDataPageResp = DataPageResp.of(pageQueryModel);
|
||||
return Result.success(
|
||||
DataPageResp.of(pageQueryModel)
|
||||
DataPageResp.<SysLogininforListResp>builder()
|
||||
.rows(sysLogininforListModelDataPageResp.getRows()
|
||||
.stream()
|
||||
.map(SysLogininforListResp::buildSysLogininforResp)
|
||||
.toList())
|
||||
.total(sysLogininforListModelDataPageResp.getTotal())
|
||||
.build()
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -78,10 +88,10 @@ public class SysLogininforController extends BaseController {
|
|||
return success();
|
||||
}
|
||||
|
||||
@InnerAuth
|
||||
/*@InnerAuth*/
|
||||
@PostMapping
|
||||
public Result add (@RequestBody SysLogininfor logininfor) {
|
||||
logininforService.insertLogininfor(logininfor);
|
||||
public Result add (@RequestBody SysLogininforAddReq logininforAddReq) {
|
||||
logininforService.insertLogininfor(SysLogininforAddModel.of(logininforAddReq));
|
||||
return Result.success();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -9,7 +9,14 @@ import com.muyu.common.log.enums.BusinessType;
|
|||
import com.muyu.common.security.annotation.RequiresPermissions;
|
||||
import com.muyu.common.security.utils.SecurityUtils;
|
||||
import com.muyu.system.domain.SysMenu;
|
||||
import com.muyu.system.domain.model.SysMenuAddModel;
|
||||
import com.muyu.system.domain.model.SysMenuListModel;
|
||||
import com.muyu.system.domain.model.SysMenuUpdModel;
|
||||
import com.muyu.system.domain.rep.SysMenuAddReq;
|
||||
import com.muyu.system.domain.rep.SysMenuListReq;
|
||||
import com.muyu.system.domain.rep.SysMenuUpdReq;
|
||||
import com.muyu.system.domain.resp.RoleMenuTreeResp;
|
||||
import com.muyu.system.domain.resp.SysMenuListResp;
|
||||
import com.muyu.system.service.SysMenuService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
@ -33,10 +40,12 @@ public class SysMenuController extends BaseController {
|
|||
*/
|
||||
@RequiresPermissions("system:menu:list")
|
||||
@PostMapping("/list")
|
||||
public Result list (@RequestBody SysMenu menu) {
|
||||
public Result<List<SysMenuListResp>> list (@RequestBody SysMenuListReq sysMenuListReq) {
|
||||
Long userId = SecurityUtils.getUserId();
|
||||
List<SysMenu> menus = menuService.selectMenuList(menu, userId);
|
||||
return success(menus);
|
||||
List<SysMenuListModel> menus = menuService.selectMenuList(SysMenuListModel.of(sysMenuListReq), userId);
|
||||
return success(menus.stream()
|
||||
.map(SysMenuListResp::buildSysMenuListResp)
|
||||
.toList());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -52,10 +61,10 @@ public class SysMenuController extends BaseController {
|
|||
* 获取菜单下拉树列表
|
||||
*/
|
||||
@GetMapping("/treeselect")
|
||||
public Result treeselect (SysMenu menu) {
|
||||
public Result treeselect (SysMenuListReq sysMenuListReq) {
|
||||
Long userId = SecurityUtils.getUserId();
|
||||
List<SysMenu> menus = menuService.selectMenuList(menu, userId);
|
||||
return success(menuService.buildMenuTreeSelect(menus));
|
||||
List<SysMenuListModel> sysMenus = menuService.selectMenuList(SysMenuListModel.of(sysMenuListReq), userId);
|
||||
return success(menuService.buildMenuTreeSelect(sysMenus));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -64,7 +73,7 @@ public class SysMenuController extends BaseController {
|
|||
@GetMapping(value = "/roleMenuTreeselect/{roleId}")
|
||||
public Result roleMenuTreeselect (@PathVariable("roleId") Long roleId) {
|
||||
Long userId = SecurityUtils.getUserId();
|
||||
List<SysMenu> menus = menuService.selectMenuList(userId);
|
||||
List<SysMenuListModel> menus = menuService.selectMenuList(userId);
|
||||
return Result.success(
|
||||
RoleMenuTreeResp.builder()
|
||||
.menus(menuService.buildMenuTreeSelect(menus))
|
||||
|
@ -79,14 +88,16 @@ public class SysMenuController extends BaseController {
|
|||
@RequiresPermissions("system:menu:add")
|
||||
@Log(title = "菜单管理", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public Result add (@Validated @RequestBody SysMenu menu) {
|
||||
if (!menuService.checkMenuNameUnique(menu)) {
|
||||
return error("新增菜单'" + menu.getMenuName() + "'失败,菜单名称已存在");
|
||||
} else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) {
|
||||
return error("新增菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头");
|
||||
public Result add (@Validated @RequestBody SysMenuAddReq sysMenuAddReq) {
|
||||
SysMenuAddModel sysMenuAddModel = SysMenuAddModel.of(sysMenuAddReq);
|
||||
if (!menuService.checkMenuNameUnique(sysMenuAddModel)) {
|
||||
return error("新增菜单'" + sysMenuAddModel.getMenuName() + "'失败,菜单名称已存在");
|
||||
} else if (UserConstants.YES_FRAME.equals(sysMenuAddModel.getIsFrame()) && !StringUtils.ishttp(sysMenuAddModel.getPath())) {
|
||||
return error("新增菜单'" + sysMenuAddModel.getMenuName() + "'失败,地址必须以http(s)://开头");
|
||||
}
|
||||
SysMenu menu = SysMenu.buildSysMenu(sysMenuAddReq);
|
||||
menu.setCreateBy(SecurityUtils.getUsername());
|
||||
menuService.insertMenu(menu);
|
||||
menuService.insertMenu(SysMenuAddModel.of(sysMenuAddReq));
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
|
@ -96,16 +107,17 @@ public class SysMenuController extends BaseController {
|
|||
@RequiresPermissions("system:menu:edit")
|
||||
@Log(title = "菜单管理", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public Result edit (@Validated @RequestBody SysMenu menu) {
|
||||
if (!menuService.checkMenuNameUnique(menu)) {
|
||||
return error("修改菜单'" + menu.getMenuName() + "'失败,菜单名称已存在");
|
||||
} else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) {
|
||||
return error("修改菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头");
|
||||
} else if (menu.getMenuId().equals(menu.getParentId())) {
|
||||
return error("修改菜单'" + menu.getMenuName() + "'失败,上级菜单不能选择自己");
|
||||
public Result edit (@Validated @RequestBody SysMenuUpdReq sysMenuUpdReq) {
|
||||
SysMenuAddModel sysMenuAddModel = SysMenuAddModel.buildSysMenuAddModel(sysMenuUpdReq);
|
||||
if (!menuService.checkMenuNameUnique(sysMenuAddModel)) {
|
||||
return error("新增菜单'" + sysMenuAddModel.getMenuName() + "'失败,菜单名称已存在");
|
||||
} else if (UserConstants.YES_FRAME.equals(sysMenuAddModel.getIsFrame()) && !StringUtils.ishttp(sysMenuAddModel.getPath())) {
|
||||
return error("新增菜单'" + sysMenuAddModel.getMenuName() + "'失败,地址必须以http(s)://开头");
|
||||
}
|
||||
SysMenu menu = SysMenu.buildSysMenu(sysMenuAddModel);
|
||||
menu.setCreateBy(SecurityUtils.getUsername());
|
||||
menu.setUpdateBy(SecurityUtils.getUsername());
|
||||
menuService.updateMenu(menu);
|
||||
menuService.updateMenu(SysMenuUpdModel.of(sysMenuUpdReq));
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
|
|
|
@ -10,8 +10,12 @@ import com.muyu.common.log.enums.BusinessType;
|
|||
import com.muyu.common.security.annotation.RequiresPermissions;
|
||||
import com.muyu.common.security.utils.SecurityUtils;
|
||||
import com.muyu.system.domain.SysPost;
|
||||
import com.muyu.system.domain.model.SysPostPageQueryModel;
|
||||
import com.muyu.system.domain.model.*;
|
||||
import com.muyu.system.domain.rep.SysPostEditReq;
|
||||
import com.muyu.system.domain.rep.SysPostListReq;
|
||||
import com.muyu.system.domain.rep.SysPostSaveReq;
|
||||
import com.muyu.system.domain.resp.SysPostListResp;
|
||||
import com.muyu.system.domain.resp.SysPostMyInfoResp;
|
||||
import com.muyu.system.service.SysPostService;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -36,11 +40,9 @@ public class SysPostController extends BaseController {
|
|||
*/
|
||||
@RequiresPermissions("system:post:list")
|
||||
@PostMapping("/list")
|
||||
public Result<DataPageResp<SysPost>> list (@RequestBody SysPostListReq postListReq) {
|
||||
PageQueryModel<SysPost> sysPostPageQueryModel = postService.pageQuery(
|
||||
SysPostPageQueryModel.reqBuild(postListReq)
|
||||
);
|
||||
return Result.success(DataPageResp.of(sysPostPageQueryModel));
|
||||
public Result<DataPageResp<SysPostListResp>> list (@RequestBody SysPostListReq postListReq) {
|
||||
PageQueryModel<SysPostListModel> sysPostPageQueryModel = postService.getList(SysPostPageQueryModel.reqBuild(postListReq));
|
||||
return Result.success(DataPageResp.of(sysPostPageQueryModel.getTotal(),sysPostPageQueryModel.getDataList().stream().map(SysPostListResp::listBuild).toList()));
|
||||
}
|
||||
|
||||
@Log(title = "岗位管理", businessType = BusinessType.EXPORT)
|
||||
|
@ -48,11 +50,9 @@ public class SysPostController extends BaseController {
|
|||
@PostMapping("/export")
|
||||
public void export (HttpServletResponse response, SysPostListReq postListReq) {
|
||||
// TODO 导出重写
|
||||
PageQueryModel<SysPost> sysPostPageQueryModel = postService.pageQuery(
|
||||
SysPostPageQueryModel.reqBuild(postListReq)
|
||||
);
|
||||
ExcelUtil<SysPost> util = new ExcelUtil<SysPost>(SysPost.class);
|
||||
util.exportExcel(response, sysPostPageQueryModel.getDataList(), "岗位数据");
|
||||
PageQueryModel<SysPostListModel> sysPostPageQueryModel = postService.getList(SysPostPageQueryModel.reqBuild(postListReq));
|
||||
ExcelUtil<SysPostListResp> util = new ExcelUtil<SysPostListResp>(SysPostListResp.class);
|
||||
util.exportExcel(response, sysPostPageQueryModel.getDataList().stream().map(SysPostListResp::listBuild).toList(), "岗位数据");
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -60,8 +60,8 @@ public class SysPostController extends BaseController {
|
|||
*/
|
||||
@RequiresPermissions("system:post:query")
|
||||
@GetMapping(value = "/{postId}")
|
||||
public Result<SysPost> getInfo (@PathVariable("postId") Long postId) {
|
||||
return success(postService.selectPostById(postId));
|
||||
public Result<SysPostMyInfoResp> getInfo (@PathVariable("postId") Long postId) {
|
||||
return success(SysPostMyInfoResp.messageBuild(postService.selectPostById(postId)));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -70,14 +70,14 @@ public class SysPostController extends BaseController {
|
|||
@RequiresPermissions("system:post:add")
|
||||
@Log(title = "岗位管理", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public Result<String> add (@Validated @RequestBody SysPost post) {
|
||||
if (!postService.checkPostNameUnique(post)) {
|
||||
return error("新增岗位'" + post.getPostName() + "'失败,岗位名称已存在");
|
||||
} else if (!postService.checkPostCodeUnique(post)) {
|
||||
return error("新增岗位'" + post.getPostName() + "'失败,岗位编码已存在");
|
||||
public Result<String> add (@Validated @RequestBody SysPostSaveReq sysPostSaveReq) {
|
||||
if (!postService.checkPostNameUnique(SysPostSaveModel.saveBuild(sysPostSaveReq))) {
|
||||
return error("新增岗位'" + sysPostSaveReq.getPostName() + "'失败,岗位名称已存在");
|
||||
} else if (!postService.checkPostCodeUnique(SysPostSaveModel.saveBuild(sysPostSaveReq))) {
|
||||
return error("新增岗位'" + sysPostSaveReq.getPostName() + "'失败,岗位编码已存在");
|
||||
}
|
||||
post.setCreateBy(SecurityUtils.getUsername());
|
||||
postService.insertPost(post);
|
||||
sysPostSaveReq.setCreateBy(SecurityUtils.getUsername());
|
||||
postService.insertPost(SysPost.saveBuild(SysPostSaveModel.saveBuild(sysPostSaveReq)));
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
|
@ -87,14 +87,14 @@ public class SysPostController extends BaseController {
|
|||
@RequiresPermissions("system:post:edit")
|
||||
@Log(title = "岗位管理", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public Result<String> edit (@Validated @RequestBody SysPost post) {
|
||||
if (!postService.checkPostNameUnique(post)) {
|
||||
return error("修改岗位'" + post.getPostName() + "'失败,岗位名称已存在");
|
||||
} else if (!postService.checkPostCodeUnique(post)) {
|
||||
return error("修改岗位'" + post.getPostName() + "'失败,岗位编码已存在");
|
||||
public Result<String> edit (@Validated @RequestBody SysPostEditReq sysPostEditReq) {
|
||||
if (!postService.checkEditPostNameUnique(SysPostEditModel.editBuild(sysPostEditReq))) {
|
||||
return error("修改岗位'" + sysPostEditReq.getPostName() + "'失败,岗位名称已存在");
|
||||
} else if (!postService.checkEditPostCodeUnique(SysPostEditModel.editBuild(sysPostEditReq))) {
|
||||
return error("修改岗位'" + sysPostEditReq.getPostName() + "'失败,岗位编码已存在");
|
||||
}
|
||||
post.setUpdateBy(SecurityUtils.getUsername());
|
||||
postService.updatePost(post);
|
||||
sysPostEditReq.setUpdateBy(SecurityUtils.getUsername());
|
||||
postService.updatePost(SysPost.editBuild(SysPostEditModel.editBuild(sysPostEditReq)));
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
|
|
|
@ -5,6 +5,10 @@ import com.baomidou.mybatisplus.annotation.TableField;
|
|||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import com.muyu.system.domain.model.SysMenuAddModel;
|
||||
import com.muyu.system.domain.model.SysMenuListModel;
|
||||
import com.muyu.system.domain.model.SysMenuUpdModel;
|
||||
import com.muyu.system.domain.rep.SysMenuAddReq;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import jakarta.validation.constraints.Size;
|
||||
|
@ -122,6 +126,7 @@ public class SysMenu extends BaseEntity {
|
|||
* 子菜单
|
||||
*/
|
||||
@Builder.Default
|
||||
@TableField(exist = false)
|
||||
private List<SysMenu> children = new ArrayList<SysMenu>();
|
||||
|
||||
@NotBlank(message = "菜单名称不能为空")
|
||||
|
@ -155,4 +160,106 @@ public class SysMenu extends BaseEntity {
|
|||
return perms;
|
||||
}
|
||||
|
||||
public static SysMenu of(SysMenuListModel sysMenuListModel) {
|
||||
return SysMenu.builder()
|
||||
.menuId(sysMenuListModel.getMenuId())
|
||||
.menuName(sysMenuListModel.getMenuName())
|
||||
.parentName(sysMenuListModel.getParentName())
|
||||
.parentId(sysMenuListModel.getParentId())
|
||||
.orderNum(sysMenuListModel.getOrderNum())
|
||||
.path(sysMenuListModel.getPath())
|
||||
.component(sysMenuListModel.getComponent())
|
||||
.query(sysMenuListModel.getQuery())
|
||||
.isFrame(sysMenuListModel.getIsFrame())
|
||||
.isCache(sysMenuListModel.getIsCache())
|
||||
.menuType(sysMenuListModel.getMenuType())
|
||||
.visible(sysMenuListModel.getVisible())
|
||||
.status(sysMenuListModel.getStatus())
|
||||
.perms(sysMenuListModel.getPerms())
|
||||
.icon(sysMenuListModel.getIcon())
|
||||
.children(sysMenuListModel.getChildren())
|
||||
.build();
|
||||
}
|
||||
|
||||
public static SysMenu buildSysMenu(SysMenuListModel sysMenuListModel) {
|
||||
return SysMenu.builder()
|
||||
.menuId(sysMenuListModel.getMenuId())
|
||||
.menuName(sysMenuListModel.getMenuName())
|
||||
.parentName(sysMenuListModel.getParentName())
|
||||
.parentId(sysMenuListModel.getParentId())
|
||||
.orderNum(sysMenuListModel.getOrderNum())
|
||||
.path(sysMenuListModel.getPath())
|
||||
.component(sysMenuListModel.getComponent())
|
||||
.query(sysMenuListModel.getQuery())
|
||||
.isFrame(sysMenuListModel.getIsFrame())
|
||||
.isCache(sysMenuListModel.getIsCache())
|
||||
.menuType(sysMenuListModel.getMenuType())
|
||||
.visible(sysMenuListModel.getVisible())
|
||||
.status(sysMenuListModel.getStatus())
|
||||
.perms(sysMenuListModel.getPerms())
|
||||
.icon(sysMenuListModel.getIcon())
|
||||
.children(sysMenuListModel.getChildren())
|
||||
.build();
|
||||
}
|
||||
|
||||
public static SysMenu buildSysMenu(SysMenuAddReq sysMenuAddReq) {
|
||||
return SysMenu.builder()
|
||||
.menuId(sysMenuAddReq.getMenuId())
|
||||
.menuName(sysMenuAddReq.getMenuName())
|
||||
.parentName(sysMenuAddReq.getParentName())
|
||||
.parentId(sysMenuAddReq.getParentId())
|
||||
.orderNum(sysMenuAddReq.getOrderNum())
|
||||
.path(sysMenuAddReq.getPath())
|
||||
.component(sysMenuAddReq.getComponent())
|
||||
.query(sysMenuAddReq.getQuery())
|
||||
.isFrame(sysMenuAddReq.getIsFrame())
|
||||
.isCache(sysMenuAddReq.getIsCache())
|
||||
.menuType(sysMenuAddReq.getMenuType())
|
||||
.visible(sysMenuAddReq.getVisible())
|
||||
.status(sysMenuAddReq.getStatus())
|
||||
.perms(sysMenuAddReq.getPerms())
|
||||
.icon(sysMenuAddReq.getIcon())
|
||||
.children(sysMenuAddReq.getChildren())
|
||||
.build();
|
||||
}
|
||||
|
||||
public static SysMenu buildSysMenu(SysMenuAddModel sysMenuAddModel) {
|
||||
return SysMenu.builder()
|
||||
.menuName(sysMenuAddModel.getMenuName())
|
||||
.parentId(sysMenuAddModel.getParentId())
|
||||
.orderNum(sysMenuAddModel.getOrderNum())
|
||||
.path(sysMenuAddModel.getPath())
|
||||
.component(sysMenuAddModel.getComponent())
|
||||
.query(sysMenuAddModel.getQuery())
|
||||
.isFrame(sysMenuAddModel.getIsFrame())
|
||||
.isCache(sysMenuAddModel.getIsCache())
|
||||
.menuType(sysMenuAddModel.getMenuType())
|
||||
.visible(sysMenuAddModel.getVisible())
|
||||
.status(sysMenuAddModel.getStatus())
|
||||
.perms(sysMenuAddModel.getPerms())
|
||||
.icon(sysMenuAddModel.getIcon())
|
||||
.children(sysMenuAddModel.getChildren())
|
||||
.build();
|
||||
}
|
||||
|
||||
public static SysMenu buildSysMenu(SysMenuUpdModel sysMenuUpdModel) {
|
||||
return SysMenu.builder()
|
||||
.menuId(sysMenuUpdModel.getMenuId())
|
||||
.menuName(sysMenuUpdModel.getMenuName())
|
||||
.parentId(sysMenuUpdModel.getParentId())
|
||||
.orderNum(sysMenuUpdModel.getOrderNum())
|
||||
.path(sysMenuUpdModel.getPath())
|
||||
.component(sysMenuUpdModel.getComponent())
|
||||
.query(sysMenuUpdModel.getQuery())
|
||||
.isFrame(sysMenuUpdModel.getIsFrame())
|
||||
.isCache(sysMenuUpdModel.getIsCache())
|
||||
.menuType(sysMenuUpdModel.getMenuType())
|
||||
.visible(sysMenuUpdModel.getVisible())
|
||||
.status(sysMenuUpdModel.getStatus())
|
||||
.perms(sysMenuUpdModel.getPerms())
|
||||
.icon(sysMenuUpdModel.getIcon())
|
||||
.children(sysMenuUpdModel.getChildren())
|
||||
.build();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -6,11 +6,14 @@ import com.baomidou.mybatisplus.annotation.TableName;
|
|||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.common.core.annotation.Excel.ColumnType;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import com.muyu.system.domain.model.SysPostEditModel;
|
||||
import com.muyu.system.domain.model.SysPostSaveModel;
|
||||
import com.muyu.system.domain.rep.SysPostSaveReq;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.*;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
import lombok.experimental.SuperBuilder;import java.util.Date;
|
||||
|
||||
/**
|
||||
* 岗位表 sys_post
|
||||
|
@ -79,4 +82,31 @@ public class SysPost extends BaseEntity {
|
|||
public Integer getPostSort () {
|
||||
return postSort;
|
||||
}
|
||||
|
||||
public static SysPost saveBuild(SysPostSaveModel sysPostSaveModel) {
|
||||
return SysPost.builder()
|
||||
.postId(sysPostSaveModel.getPostId())
|
||||
.postCode(sysPostSaveModel.getPostCode())
|
||||
.postName(sysPostSaveModel.getPostName())
|
||||
.postSort(sysPostSaveModel.getPostSort())
|
||||
.status(sysPostSaveModel.getStatus())
|
||||
.flag(sysPostSaveModel.isFlag())
|
||||
.createBy(sysPostSaveModel.getCreateBy())
|
||||
.createTime(new Date())
|
||||
.remark(sysPostSaveModel.getRemark())
|
||||
.build();
|
||||
}
|
||||
public static SysPost editBuild(SysPostEditModel sysPostEditModel) {
|
||||
return SysPost.builder()
|
||||
.postId(sysPostEditModel.getPostId())
|
||||
.postCode(sysPostEditModel.getPostCode())
|
||||
.postName(sysPostEditModel.getPostName())
|
||||
.postSort(sysPostEditModel.getPostSort())
|
||||
.status(sysPostEditModel.getStatus())
|
||||
.flag(sysPostEditModel.isFlag())
|
||||
.updateBy(sysPostEditModel.getUpdateBy())
|
||||
.updateTime(new Date())
|
||||
.remark(sysPostEditModel.getRemark())
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,85 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.system.domain.rep.SysDictDataAddReq;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 数据字典添加模型
|
||||
*
|
||||
* @author
|
||||
* @version 1.0
|
||||
* @date 2025/2/23 19:29
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysDictDataAddModel {
|
||||
/**
|
||||
* 字典编码
|
||||
*/
|
||||
private Long dictCode;
|
||||
|
||||
/**
|
||||
* 字典排序
|
||||
*/
|
||||
private Long dictSort;
|
||||
|
||||
/**
|
||||
* 字典标签
|
||||
*/
|
||||
private String dictLabel;
|
||||
|
||||
/**
|
||||
* 字典键值
|
||||
*/
|
||||
private String dictValue;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 样式属性(其他样式扩展)
|
||||
*/
|
||||
private String cssClass;
|
||||
|
||||
/**
|
||||
* 表格字典样式
|
||||
*/
|
||||
private String listClass;
|
||||
|
||||
/**
|
||||
* 是否默认(Y是 N否)
|
||||
*/
|
||||
private String isDefault;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 构建模型
|
||||
*
|
||||
* @param sysDictDataAddReq 请求对象
|
||||
* @return 添加对象
|
||||
*/
|
||||
public static SysDictDataAddModel buildAddModel(SysDictDataAddReq sysDictDataAddReq) {
|
||||
return SysDictDataAddModel.builder()
|
||||
.dictCode(sysDictDataAddReq.getDictCode())
|
||||
.dictSort(sysDictDataAddReq.getDictSort())
|
||||
.dictLabel(sysDictDataAddReq.getDictLabel())
|
||||
.dictValue(sysDictDataAddReq.getDictValue())
|
||||
.dictType(sysDictDataAddReq.getDictType())
|
||||
.cssClass(sysDictDataAddReq.getCssClass())
|
||||
.listClass(sysDictDataAddReq.getListClass())
|
||||
.isDefault(sysDictDataAddReq.getIsDefault())
|
||||
.status(sysDictDataAddReq.getStatus())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,69 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
*
|
||||
* 字典数据返回列表模型
|
||||
* @author SunLY
|
||||
* @version 1.0
|
||||
* @date 2025/2/23 21:24
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysDictDataListModel extends BaseEntity {
|
||||
/**
|
||||
* 字典编码
|
||||
*/
|
||||
@Excel(name = "字典编码", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long dictCode;
|
||||
|
||||
/**
|
||||
* 字典排序
|
||||
*/
|
||||
@Excel(name = "字典排序", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long dictSort;
|
||||
|
||||
/**
|
||||
* 字典标签
|
||||
*/
|
||||
@Excel(name = "字典标签")
|
||||
private String dictLabel;
|
||||
|
||||
/**
|
||||
* 字典键值
|
||||
*/
|
||||
@Excel(name = "字典键值")
|
||||
private String dictValue;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
@Excel(name = "字典类型")
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 样式属性(其他样式扩展)
|
||||
*/
|
||||
private String cssClass;
|
||||
|
||||
/**
|
||||
* 表格字典样式
|
||||
*/
|
||||
private String listClass;
|
||||
|
||||
/**
|
||||
* 是否默认(Y是 N否)
|
||||
*/
|
||||
@Excel(name = "是否默认", readConverterExp = "Y=是,N=否")
|
||||
private String isDefault;
|
||||
}
|
|
@ -31,6 +31,9 @@ public class SysDictDataPageQueryModel extends QueryModel<SysDictDataPageQueryMo
|
|||
*/
|
||||
private String status;
|
||||
|
||||
|
||||
|
||||
|
||||
public static SysDictDataPageQueryModel reqBuild(SysDictDataListReq sysDictDataListReq) {
|
||||
SysDictDataPageQueryModel sysDictDataPageQueryModel = SysDictDataPageQueryModel.builder()
|
||||
.dictType(sysDictDataListReq.getDictType())
|
||||
|
|
|
@ -0,0 +1,113 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.common.core.enums.SysWhetherEnum;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import com.muyu.system.domain.rep.SysDictDataUpdReq;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* 数据字典修改模型
|
||||
*
|
||||
* @author SunLY
|
||||
* @version 1.0
|
||||
* @date 2025/2/23 19:29
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysDictDataUpdModel extends BaseEntity {
|
||||
/**
|
||||
* 字典编码
|
||||
*/
|
||||
private Long dictCode;
|
||||
|
||||
/**
|
||||
* 字典排序
|
||||
*/
|
||||
private Long dictSort;
|
||||
|
||||
/**
|
||||
* 字典标签
|
||||
*/
|
||||
private String dictLabel;
|
||||
|
||||
/**
|
||||
* 字典键值
|
||||
*/
|
||||
private String dictValue;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 样式属性(其他样式扩展)
|
||||
*/
|
||||
private String cssClass;
|
||||
|
||||
/**
|
||||
* 表格字典样式
|
||||
*/
|
||||
private String listClass;
|
||||
|
||||
/**
|
||||
* 是否默认(Y是 N否)
|
||||
*/
|
||||
private String isDefault;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
@NotBlank(message = "字典标签不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典标签长度不能超过100个字符")
|
||||
public String getDictLabel () {
|
||||
return dictLabel;
|
||||
}
|
||||
|
||||
@NotBlank(message = "字典键值不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典键值长度不能超过100个字符")
|
||||
public String getDictValue () {
|
||||
return dictValue;
|
||||
}
|
||||
|
||||
@NotBlank(message = "字典类型不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典类型长度不能超过100个字符")
|
||||
public String getDictType () {
|
||||
return dictType;
|
||||
}
|
||||
|
||||
@Size(min = 0, max = 100, message = "样式属性长度不能超过100个字符")
|
||||
public String getCssClass () {
|
||||
return cssClass;
|
||||
}
|
||||
|
||||
public boolean getDefault () {
|
||||
return SysWhetherEnum.isYes(this.isDefault);
|
||||
}
|
||||
|
||||
public static SysDictDataUpdModel buildUpdModel(SysDictDataUpdReq sysDictDataUpdReq){
|
||||
return SysDictDataUpdModel.builder()
|
||||
.dictCode(sysDictDataUpdReq.getDictCode())
|
||||
.dictSort(sysDictDataUpdReq.getDictSort())
|
||||
.dictLabel(sysDictDataUpdReq.getDictLabel())
|
||||
.dictValue(sysDictDataUpdReq.getDictValue())
|
||||
.dictType(sysDictDataUpdReq.getDictType())
|
||||
.cssClass(sysDictDataUpdReq.getCssClass())
|
||||
.listClass(sysDictDataUpdReq.getListClass())
|
||||
.isDefault(sysDictDataUpdReq.getIsDefault())
|
||||
.status(sysDictDataUpdReq.getStatus())
|
||||
.build();
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,58 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import com.muyu.system.domain.rep.SysDictTypeAddReq;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.Pattern;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
*
|
||||
* 数据字典类型添加模型
|
||||
* @author
|
||||
* @version 1.0
|
||||
* @date 2025/2/24 1:35
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysDictTypeAddModel extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 字典主键
|
||||
*/
|
||||
private Long dictId;
|
||||
|
||||
/**
|
||||
* 字典名称
|
||||
*/
|
||||
private String dictName;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
public static SysDictTypeAddModel buildModel(SysDictTypeAddReq sysDictTypeAddReq){
|
||||
return SysDictTypeAddModel.builder()
|
||||
.dictId(sysDictTypeAddReq.getDictId())
|
||||
.dictName(sysDictTypeAddReq.getDictName())
|
||||
.dictType(sysDictTypeAddReq.getDictType())
|
||||
.status(sysDictTypeAddReq.getStatus())
|
||||
.build();
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,59 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.common.core.annotation.Excel.ColumnType;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.Pattern;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* 字典类型列表模型
|
||||
*
|
||||
* @author
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysDictTypeListModel extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 字典主键
|
||||
*/
|
||||
@Excel(name = "字典主键", cellType = ColumnType.NUMERIC)
|
||||
private Long dictId;
|
||||
|
||||
/**
|
||||
* 字典名称
|
||||
*/
|
||||
@Excel(name = "字典名称")
|
||||
private String dictName;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
@Excel(name = "字典类型")
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||
private String status;
|
||||
|
||||
@NotBlank(message = "字典名称不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典类型名称长度不能超过100个字符")
|
||||
public String getDictName () {
|
||||
return dictName;
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -1,5 +1,7 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||
import com.muyu.common.core.web.model.QueryModel;
|
||||
import com.muyu.system.domain.rep.SysDictTypeListReq;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
@ -9,6 +11,8 @@ import lombok.NoArgsConstructor;
|
|||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 参数配置 分页 模型
|
||||
|
@ -45,6 +49,24 @@ public class SysDictTypePageQueryModel extends QueryModel<SysDictTypePageQueryMo
|
|||
*/
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 请求参数
|
||||
*/
|
||||
@JsonInclude(JsonInclude.Include.NON_EMPTY)
|
||||
@TableField(exist = false)
|
||||
private Map<String, Object> params;
|
||||
|
||||
public Map<String, Object> getParams () {
|
||||
if (params == null) {
|
||||
params = new HashMap<>();
|
||||
}
|
||||
return params;
|
||||
}
|
||||
|
||||
public void setParams (Map<String, Object> params) {
|
||||
this.params = params;
|
||||
}
|
||||
|
||||
public static SysDictTypePageQueryModel reqBuild(SysDictTypeListReq sysDictTypeListReq) {
|
||||
SysDictTypePageQueryModel sysDictTypePageQueryModel = SysDictTypePageQueryModel.builder()
|
||||
.dictName(sysDictTypeListReq.getDictName())
|
||||
|
|
|
@ -0,0 +1,58 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import com.muyu.system.domain.rep.SysDictTypeUpdReq;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.Pattern;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
*
|
||||
* 数据字典类型修改模型
|
||||
* @author
|
||||
* @version 1.0
|
||||
* @date 2025/2/24 1:35
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysDictTypeUpdModel extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 字典主键
|
||||
*/
|
||||
private Long dictId;
|
||||
|
||||
/**
|
||||
* 字典名称
|
||||
*/
|
||||
private String dictName;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
|
||||
private String status;
|
||||
|
||||
public static SysDictTypeUpdModel buildUpdModel(SysDictTypeUpdReq sysDictTypeUpdReq) {
|
||||
return SysDictTypeUpdModel.builder()
|
||||
.dictId(sysDictTypeUpdReq.getDictId())
|
||||
.dictName(sysDictTypeUpdReq.getDictName())
|
||||
.dictType(sysDictTypeUpdReq.getDictType())
|
||||
.status(sysDictTypeUpdReq.getStatus())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,75 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.muyu.common.system.domain.SysLogininfor;
|
||||
import com.muyu.system.domain.rep.SysLogininforAddReq;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @description: 登录添加模型
|
||||
* @author yangchoashun
|
||||
* @date 2025/2/23 17:24
|
||||
* @version 1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysLogininforAddModel {
|
||||
/**
|
||||
* 访问ID
|
||||
*/
|
||||
private Long infoId;
|
||||
/**
|
||||
* 用户账号
|
||||
*/
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 状态 0成功 1失败
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 地址
|
||||
*/
|
||||
private String ipaddr;
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
private String msg;
|
||||
|
||||
/**
|
||||
* 访问时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date accessTime;
|
||||
|
||||
public static SysLogininforAddModel of(SysLogininforAddReq sysLogininforAddReq) {
|
||||
return SysLogininforAddModel.builder()
|
||||
.infoId(sysLogininforAddReq.getInfoId())
|
||||
.userName(sysLogininforAddReq.getUserName())
|
||||
.status(sysLogininforAddReq.getStatus())
|
||||
.ipaddr(sysLogininforAddReq.getIpaddr())
|
||||
.msg(sysLogininforAddReq.getMsg())
|
||||
.accessTime(sysLogininforAddReq.getAccessTime())
|
||||
.build();
|
||||
}
|
||||
|
||||
public static SysLogininfor of(SysLogininforAddModel sysLogininforAddModel) {
|
||||
return SysLogininfor.builder()
|
||||
.infoId(sysLogininforAddModel.getInfoId())
|
||||
.userName(sysLogininforAddModel.getUserName())
|
||||
.status(sysLogininforAddModel.getStatus())
|
||||
.ipaddr(sysLogininforAddModel.getIpaddr())
|
||||
.msg(sysLogininforAddModel.getMsg())
|
||||
.accessTime(sysLogininforAddModel.getAccessTime())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -1,6 +1,8 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.muyu.common.core.web.model.QueryModel;
|
||||
import com.muyu.common.system.domain.SysLogininfor;
|
||||
import com.muyu.system.domain.rep.SysLogininforListReq;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
@ -17,6 +19,10 @@ import java.util.Date;
|
|||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysLogininforListModel extends QueryModel<SysLogininforListModel> {
|
||||
/**
|
||||
* 访问ID
|
||||
*/
|
||||
private Long infoId;
|
||||
/**
|
||||
* IP地址
|
||||
*/
|
||||
|
@ -42,6 +48,16 @@ public class SysLogininforListModel extends QueryModel<SysLogininforListModel> {
|
|||
*/
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
private String msg;
|
||||
|
||||
/**
|
||||
* 访问时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date accessTime;
|
||||
public static SysLogininforListModel reqBuild(SysLogininforListReq req){
|
||||
return SysLogininforListModel.builder()
|
||||
.ipaddr(req.getIpaddr())
|
||||
|
@ -51,4 +67,14 @@ public class SysLogininforListModel extends QueryModel<SysLogininforListModel> {
|
|||
.build()
|
||||
.domainBuild(req);
|
||||
}
|
||||
|
||||
public static SysLogininforListModel buildSysLogininforListModel(SysLogininfor sysLogininfor) {
|
||||
return SysLogininforListModel.builder()
|
||||
.ipaddr(sysLogininfor.getIpaddr())
|
||||
.userName(sysLogininfor.getUserName())
|
||||
.status(sysLogininfor.getStatus())
|
||||
.msg(sysLogininfor.getMsg())
|
||||
.accessTime(sysLogininfor.getAccessTime())
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,140 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.system.domain.SysMenu;
|
||||
import com.muyu.system.domain.rep.SysMenuAddReq;
|
||||
import com.muyu.system.domain.rep.SysMenuUpdReq;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @description: 菜单添加模型
|
||||
* @author yangchoashun
|
||||
* @date 2025/2/23 17:24
|
||||
* @version 1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysMenuAddModel {
|
||||
/**
|
||||
* 菜单ID
|
||||
*/
|
||||
private Long menuId;
|
||||
/**
|
||||
* 菜单名称
|
||||
*/
|
||||
private String menuName;
|
||||
|
||||
/**
|
||||
* 父菜单ID
|
||||
*/
|
||||
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 显示顺序
|
||||
*/
|
||||
private Integer orderNum;
|
||||
|
||||
/**
|
||||
* 路由地址
|
||||
*/
|
||||
private String path;
|
||||
|
||||
/**
|
||||
* 组件路径
|
||||
*/
|
||||
private String component;
|
||||
|
||||
/**
|
||||
* 路由参数
|
||||
*/
|
||||
private String query;
|
||||
|
||||
/**
|
||||
* 是否为外链(0是 1否)
|
||||
*/
|
||||
private String isFrame;
|
||||
|
||||
/**
|
||||
* 是否缓存(0缓存 1不缓存)
|
||||
*/
|
||||
private String isCache;
|
||||
|
||||
/**
|
||||
* 类型(M目录 C菜单 F按钮)
|
||||
*/
|
||||
private String menuType;
|
||||
|
||||
/**
|
||||
* 显示状态(0显示 1隐藏)
|
||||
*/
|
||||
private String visible;
|
||||
|
||||
/**
|
||||
* 菜单状态(0正常 1停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 权限字符串
|
||||
*/
|
||||
private String perms;
|
||||
|
||||
/**
|
||||
* 菜单图标
|
||||
*/
|
||||
private String icon;
|
||||
|
||||
/**
|
||||
* 子菜单
|
||||
*/
|
||||
private List<SysMenu> children = new ArrayList<SysMenu>();
|
||||
|
||||
public static SysMenuAddModel of(SysMenuAddReq sysMenuAddReq) {
|
||||
return SysMenuAddModel.builder()
|
||||
.menuName(sysMenuAddReq.getMenuName())
|
||||
.parentId(sysMenuAddReq.getParentId())
|
||||
.orderNum(sysMenuAddReq.getOrderNum())
|
||||
.path(sysMenuAddReq.getPath())
|
||||
.component(sysMenuAddReq.getComponent())
|
||||
.query(sysMenuAddReq.getQuery())
|
||||
.isFrame(sysMenuAddReq.getIsFrame())
|
||||
.isCache(sysMenuAddReq.getIsCache())
|
||||
.menuType(sysMenuAddReq.getMenuType())
|
||||
.visible(sysMenuAddReq.getVisible())
|
||||
.status(sysMenuAddReq.getStatus())
|
||||
.perms(sysMenuAddReq.getPerms())
|
||||
.icon(sysMenuAddReq.getIcon())
|
||||
.children(sysMenuAddReq.getChildren())
|
||||
.build();
|
||||
}
|
||||
|
||||
public static SysMenuAddModel buildSysMenuAddModel(SysMenuUpdReq sysMenuUpdReq){
|
||||
return SysMenuAddModel.builder()
|
||||
.menuName(sysMenuUpdReq.getMenuName())
|
||||
.parentId(sysMenuUpdReq.getParentId())
|
||||
.orderNum(sysMenuUpdReq.getOrderNum())
|
||||
.path(sysMenuUpdReq.getPath())
|
||||
.component(sysMenuUpdReq.getComponent())
|
||||
.query(sysMenuUpdReq.getQuery())
|
||||
.isFrame(sysMenuUpdReq.getIsFrame())
|
||||
.isCache(sysMenuUpdReq.getIsCache())
|
||||
.menuType(sysMenuUpdReq.getMenuType())
|
||||
.visible(sysMenuUpdReq.getVisible())
|
||||
.status(sysMenuUpdReq.getStatus())
|
||||
.perms(sysMenuUpdReq.getPerms())
|
||||
.icon(sysMenuUpdReq.getIcon())
|
||||
.children(sysMenuUpdReq.getChildren())
|
||||
.build();
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,146 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.system.domain.SysMenu;
|
||||
import com.muyu.system.domain.rep.SysMenuAddReq;
|
||||
import com.muyu.system.domain.rep.SysMenuListReq;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @description: 菜单添加模型
|
||||
* @author yangchoashun
|
||||
* @date 2025/2/23 17:24
|
||||
* @version 1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysMenuListModel {
|
||||
private Long menuId;
|
||||
|
||||
/**
|
||||
* 菜单名称
|
||||
*/
|
||||
private String menuName;
|
||||
|
||||
/**
|
||||
* 父菜单名称
|
||||
*/
|
||||
private String parentName;
|
||||
|
||||
/**
|
||||
* 父菜单ID
|
||||
*/
|
||||
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 显示顺序
|
||||
*/
|
||||
|
||||
private Integer orderNum;
|
||||
|
||||
/**
|
||||
* 路由地址
|
||||
*/
|
||||
|
||||
private String path;
|
||||
|
||||
/**
|
||||
* 组件路径
|
||||
*/
|
||||
|
||||
private String component;
|
||||
|
||||
/**
|
||||
* 路由参数
|
||||
*/
|
||||
private String query;
|
||||
|
||||
/**
|
||||
* 是否为外链(0是 1否)
|
||||
*/
|
||||
private String isFrame;
|
||||
|
||||
/**
|
||||
* 是否缓存(0缓存 1不缓存)
|
||||
*/
|
||||
private String isCache;
|
||||
|
||||
/**
|
||||
* 类型(M目录 C菜单 F按钮)
|
||||
*/
|
||||
private String menuType;
|
||||
|
||||
/**
|
||||
* 显示状态(0显示 1隐藏)
|
||||
*/
|
||||
private String visible;
|
||||
|
||||
/**
|
||||
* 菜单状态(0正常 1停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 权限字符串
|
||||
*/
|
||||
private String perms;
|
||||
|
||||
/**
|
||||
* 菜单图标
|
||||
*/
|
||||
private String icon;
|
||||
|
||||
/**
|
||||
* 子菜单
|
||||
*/
|
||||
private List<SysMenu> children = new ArrayList<SysMenu>();
|
||||
public static SysMenuListModel of(SysMenuListReq sysMenuListReq) {
|
||||
return SysMenuListModel.builder()
|
||||
.menuId(sysMenuListReq.getMenuId())
|
||||
.menuName(sysMenuListReq.getMenuName())
|
||||
.parentName(sysMenuListReq.getParentName())
|
||||
.parentId(sysMenuListReq.getParentId())
|
||||
.orderNum(sysMenuListReq.getOrderNum())
|
||||
.path(sysMenuListReq.getPath())
|
||||
.component(sysMenuListReq.getComponent())
|
||||
.query(sysMenuListReq.getQuery())
|
||||
.isFrame(sysMenuListReq.getIsFrame())
|
||||
.isCache(sysMenuListReq.getIsCache())
|
||||
.menuType(sysMenuListReq.getMenuType())
|
||||
.visible(sysMenuListReq.getVisible())
|
||||
.status(sysMenuListReq.getStatus())
|
||||
.perms(sysMenuListReq.getPerms())
|
||||
.icon(sysMenuListReq.getIcon())
|
||||
.children(sysMenuListReq.getChildren())
|
||||
.build();
|
||||
}
|
||||
|
||||
public static SysMenuListModel buildSysMenuListModel(SysMenu sysMenu) {
|
||||
return SysMenuListModel.builder()
|
||||
.menuId(sysMenu.getMenuId())
|
||||
.menuName(sysMenu.getMenuName())
|
||||
.parentName(sysMenu.getParentName())
|
||||
.parentId(sysMenu.getParentId())
|
||||
.orderNum(sysMenu.getOrderNum())
|
||||
.path(sysMenu.getPath())
|
||||
.component(sysMenu.getComponent())
|
||||
.query(sysMenu.getQuery())
|
||||
.isFrame(sysMenu.getIsFrame())
|
||||
.isCache(sysMenu.getIsCache())
|
||||
.menuType(sysMenu.getMenuType())
|
||||
.visible(sysMenu.getVisible())
|
||||
.status(sysMenu.getStatus())
|
||||
.perms(sysMenu.getPerms())
|
||||
.icon(sysMenu.getIcon())
|
||||
.children(sysMenu.getChildren())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -1,6 +1,7 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.common.core.web.model.QueryModel;
|
||||
import com.muyu.system.domain.rep.SysMenuAddReq;
|
||||
import com.muyu.system.domain.rep.SysMenuListReq;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
|
|
@ -0,0 +1,119 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.system.domain.SysMenu;
|
||||
import com.muyu.system.domain.rep.SysMenuAddReq;
|
||||
import com.muyu.system.domain.rep.SysMenuUpdReq;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @description: 菜单修改模型
|
||||
* @author yangchoashun
|
||||
* @date 2025/2/23 17:24
|
||||
* @version 1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysMenuUpdModel {
|
||||
/**
|
||||
* 菜单ID
|
||||
*/
|
||||
private Long menuId;
|
||||
/**
|
||||
* 菜单名称
|
||||
*/
|
||||
private String menuName;
|
||||
|
||||
/**
|
||||
* 父菜单ID
|
||||
*/
|
||||
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 显示顺序
|
||||
*/
|
||||
private Integer orderNum;
|
||||
|
||||
/**
|
||||
* 路由地址
|
||||
*/
|
||||
private String path;
|
||||
|
||||
/**
|
||||
* 组件路径
|
||||
*/
|
||||
private String component;
|
||||
|
||||
/**
|
||||
* 路由参数
|
||||
*/
|
||||
private String query;
|
||||
|
||||
/**
|
||||
* 是否为外链(0是 1否)
|
||||
*/
|
||||
private String isFrame;
|
||||
|
||||
/**
|
||||
* 是否缓存(0缓存 1不缓存)
|
||||
*/
|
||||
private String isCache;
|
||||
|
||||
/**
|
||||
* 类型(M目录 C菜单 F按钮)
|
||||
*/
|
||||
private String menuType;
|
||||
|
||||
/**
|
||||
* 显示状态(0显示 1隐藏)
|
||||
*/
|
||||
private String visible;
|
||||
|
||||
/**
|
||||
* 菜单状态(0正常 1停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 权限字符串
|
||||
*/
|
||||
private String perms;
|
||||
|
||||
/**
|
||||
* 菜单图标
|
||||
*/
|
||||
private String icon;
|
||||
|
||||
/**
|
||||
* 子菜单
|
||||
*/
|
||||
private List<SysMenu> children = new ArrayList<SysMenu>();
|
||||
|
||||
public static SysMenuUpdModel of(SysMenuUpdReq sysMenuUpdReq) {
|
||||
return SysMenuUpdModel.builder()
|
||||
.menuName(sysMenuUpdReq.getMenuName())
|
||||
.parentId(sysMenuUpdReq.getParentId())
|
||||
.orderNum(sysMenuUpdReq.getOrderNum())
|
||||
.path(sysMenuUpdReq.getPath())
|
||||
.component(sysMenuUpdReq.getComponent())
|
||||
.query(sysMenuUpdReq.getQuery())
|
||||
.isFrame(sysMenuUpdReq.getIsFrame())
|
||||
.isCache(sysMenuUpdReq.getIsCache())
|
||||
.menuType(sysMenuUpdReq.getMenuType())
|
||||
.visible(sysMenuUpdReq.getVisible())
|
||||
.status(sysMenuUpdReq.getStatus())
|
||||
.perms(sysMenuUpdReq.getPerms())
|
||||
.icon(sysMenuUpdReq.getIcon())
|
||||
.children(sysMenuUpdReq.getChildren())
|
||||
.build();
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,79 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.system.domain.rep.SysPostEditReq;
|
||||
import com.muyu.system.domain.rep.SysPostSaveReq;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor; /**
|
||||
* 岗位信息列表模型
|
||||
* @author: AoCi Tian
|
||||
* @create: 2025-02-23 19:31
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysPostEditModel {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 岗位序号
|
||||
*/
|
||||
@Excel(name = "岗位序号", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long postId;
|
||||
|
||||
/**
|
||||
* 岗位编码
|
||||
*/
|
||||
@Excel(name = "岗位编码")
|
||||
private String postCode;
|
||||
|
||||
/**
|
||||
* 岗位名称
|
||||
*/
|
||||
@Excel(name = "岗位名称")
|
||||
private String postName;
|
||||
|
||||
/**
|
||||
* 岗位排序
|
||||
*/
|
||||
@Excel(name = "岗位排序")
|
||||
private Integer postSort;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 用户是否存在此岗位标识 默认不存在
|
||||
*/
|
||||
@Builder.Default
|
||||
private boolean flag = false;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
private String updateBy;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
public static SysPostEditModel editBuild(SysPostEditReq sysPostEditReq) {
|
||||
return SysPostEditModel.builder()
|
||||
.postId(sysPostEditReq.getPostId())
|
||||
.postCode(sysPostEditReq.getPostCode())
|
||||
.postName(sysPostEditReq.getPostName())
|
||||
.postSort(sysPostEditReq.getPostSort())
|
||||
.status(sysPostEditReq.getStatus())
|
||||
.flag(sysPostEditReq.isFlag())
|
||||
.updateBy(sysPostEditReq.getUpdateBy())
|
||||
.remark(sysPostEditReq.getRemark())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,74 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.system.domain.SysPost;
|
||||
import lombok.*;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.util.Date; /**
|
||||
* 岗位信息列表模型
|
||||
* @author: AoCi Tian
|
||||
* @create: 2025-02-23 19:31
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysPostListModel {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 岗位序号
|
||||
*/
|
||||
@Excel(name = "岗位序号", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long postId;
|
||||
|
||||
/**
|
||||
* 岗位编码
|
||||
*/
|
||||
@Excel(name = "岗位编码")
|
||||
private String postCode;
|
||||
|
||||
/**
|
||||
* 岗位名称
|
||||
*/
|
||||
@Excel(name = "岗位名称")
|
||||
private String postName;
|
||||
|
||||
/**
|
||||
* 岗位排序
|
||||
*/
|
||||
@Excel(name = "岗位排序")
|
||||
private Integer postSort;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 用户是否存在此岗位标识 默认不存在
|
||||
*/
|
||||
@Builder.Default
|
||||
private boolean flag = false;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date createTime;
|
||||
|
||||
public static SysPostListModel listBuild(SysPost sysPost) {
|
||||
return SysPostListModel.builder()
|
||||
.postId(sysPost.getPostId())
|
||||
.postCode(sysPost.getPostCode())
|
||||
.postName(sysPost.getPostName())
|
||||
.postSort(sysPost.getPostSort())
|
||||
.status(sysPost.getStatus())
|
||||
.flag(sysPost.isFlag())
|
||||
.createTime(sysPost.getCreateTime())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,73 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.system.domain.SysPost;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor; /**
|
||||
* 个人岗位信息
|
||||
* @author: AoCi Tian
|
||||
* @create: 2025-02-23 20:52
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysPostMyInfoModel {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 岗位序号
|
||||
*/
|
||||
@Excel(name = "岗位序号", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long postId;
|
||||
|
||||
/**
|
||||
* 岗位编码
|
||||
*/
|
||||
@Excel(name = "岗位编码")
|
||||
private String postCode;
|
||||
|
||||
/**
|
||||
* 岗位名称
|
||||
*/
|
||||
@Excel(name = "岗位名称")
|
||||
private String postName;
|
||||
|
||||
/**
|
||||
* 岗位排序
|
||||
*/
|
||||
@Excel(name = "岗位排序")
|
||||
private Integer postSort;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 用户是否存在此岗位标识 默认不存在
|
||||
*/
|
||||
@Builder.Default
|
||||
private boolean flag = false;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
public static SysPostMyInfoModel build(SysPost sysPost) {
|
||||
return SysPostMyInfoModel.builder()
|
||||
.postId(sysPost.getPostId())
|
||||
.postCode(sysPost.getPostCode())
|
||||
.postName(sysPost.getPostName())
|
||||
.postSort(sysPost.getPostSort())
|
||||
.status(sysPost.getStatus())
|
||||
.remark(sysPost.getRemark())
|
||||
.flag(sysPost.isFlag())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,79 @@
|
|||
package com.muyu.system.domain.model;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.system.domain.SysPost;
|
||||
import com.muyu.system.domain.rep.SysPostSaveReq;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor; /**
|
||||
* 岗位信息列表模型
|
||||
* @author: AoCi Tian
|
||||
* @create: 2025-02-23 19:31
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysPostSaveModel {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 岗位序号
|
||||
*/
|
||||
@Excel(name = "岗位序号", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long postId;
|
||||
|
||||
/**
|
||||
* 岗位编码
|
||||
*/
|
||||
@Excel(name = "岗位编码")
|
||||
private String postCode;
|
||||
|
||||
/**
|
||||
* 岗位名称
|
||||
*/
|
||||
@Excel(name = "岗位名称")
|
||||
private String postName;
|
||||
|
||||
/**
|
||||
* 岗位排序
|
||||
*/
|
||||
@Excel(name = "岗位排序")
|
||||
private Integer postSort;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 用户是否存在此岗位标识 默认不存在
|
||||
*/
|
||||
@Builder.Default
|
||||
private boolean flag = false;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
private String createBy;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
public static SysPostSaveModel saveBuild(SysPostSaveReq sysPostSaveReq) {
|
||||
return SysPostSaveModel.builder()
|
||||
.postId(sysPostSaveReq.getPostId())
|
||||
.postCode(sysPostSaveReq.getPostCode())
|
||||
.postName(sysPostSaveReq.getPostName())
|
||||
.postSort(sysPostSaveReq.getPostSort())
|
||||
.status(sysPostSaveReq.getStatus())
|
||||
.flag(sysPostSaveReq.isFlag())
|
||||
.createBy(sysPostSaveReq.getCreateBy())
|
||||
.remark(sysPostSaveReq.getRemark())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -41,4 +41,6 @@ public class SysConfigAddReq {
|
|||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,96 @@
|
|||
package com.muyu.system.domain.rep;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.common.core.enums.SysWhetherEnum;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.*;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* 数据字典添加对象
|
||||
*
|
||||
* @author
|
||||
* @version 1.0
|
||||
* @date 2025/2/23 19:29
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysDictDataAddReq extends BaseEntity {
|
||||
/**
|
||||
* 字典编码
|
||||
*/
|
||||
private Long dictCode;
|
||||
|
||||
/**
|
||||
* 字典排序
|
||||
*/
|
||||
private Long dictSort;
|
||||
|
||||
/**
|
||||
* 字典标签
|
||||
*/
|
||||
private String dictLabel;
|
||||
|
||||
/**
|
||||
* 字典键值
|
||||
*/
|
||||
private String dictValue;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 样式属性(其他样式扩展)
|
||||
*/
|
||||
private String cssClass;
|
||||
|
||||
/**
|
||||
* 表格字典样式
|
||||
*/
|
||||
private String listClass;
|
||||
|
||||
/**
|
||||
* 是否默认(Y是 N否)
|
||||
*/
|
||||
private String isDefault;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
@NotBlank(message = "字典标签不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典标签长度不能超过100个字符")
|
||||
public String getDictLabel () {
|
||||
return dictLabel;
|
||||
}
|
||||
|
||||
@NotBlank(message = "字典键值不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典键值长度不能超过100个字符")
|
||||
public String getDictValue () {
|
||||
return dictValue;
|
||||
}
|
||||
|
||||
@NotBlank(message = "字典类型不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典类型长度不能超过100个字符")
|
||||
public String getDictType () {
|
||||
return dictType;
|
||||
}
|
||||
|
||||
@Size(min = 0, max = 100, message = "样式属性长度不能超过100个字符")
|
||||
public String getCssClass () {
|
||||
return cssClass;
|
||||
}
|
||||
|
||||
public boolean getDefault () {
|
||||
return SysWhetherEnum.isYes(this.isDefault);
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,98 @@
|
|||
package com.muyu.system.domain.rep;
|
||||
|
||||
import com.muyu.common.core.enums.SysWhetherEnum;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* 数据字典修改对象
|
||||
*
|
||||
* @author
|
||||
* @version 1.0
|
||||
* @date 2025/2/23 19:29
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysDictDataUpdReq extends BaseEntity {
|
||||
/**
|
||||
* 字典编码
|
||||
*/
|
||||
private Long dictCode;
|
||||
|
||||
/**
|
||||
* 字典排序
|
||||
*/
|
||||
private Long dictSort;
|
||||
|
||||
/**
|
||||
* 字典标签
|
||||
*/
|
||||
private String dictLabel;
|
||||
|
||||
/**
|
||||
* 字典键值
|
||||
*/
|
||||
private String dictValue;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 样式属性(其他样式扩展)
|
||||
*/
|
||||
private String cssClass;
|
||||
|
||||
/**
|
||||
* 表格字典样式
|
||||
*/
|
||||
private String listClass;
|
||||
|
||||
/**
|
||||
* 是否默认(Y是 N否)
|
||||
*/
|
||||
private String isDefault;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
@NotBlank(message = "字典标签不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典标签长度不能超过100个字符")
|
||||
public String getDictLabel () {
|
||||
return dictLabel;
|
||||
}
|
||||
|
||||
@NotBlank(message = "字典键值不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典键值长度不能超过100个字符")
|
||||
public String getDictValue () {
|
||||
return dictValue;
|
||||
}
|
||||
|
||||
@NotBlank(message = "字典类型不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典类型长度不能超过100个字符")
|
||||
public String getDictType () {
|
||||
return dictType;
|
||||
}
|
||||
|
||||
@Size(min = 0, max = 100, message = "样式属性长度不能超过100个字符")
|
||||
public String getCssClass () {
|
||||
return cssClass;
|
||||
}
|
||||
|
||||
public boolean getDefault () {
|
||||
return SysWhetherEnum.isYes(this.isDefault);
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,62 @@
|
|||
package com.muyu.system.domain.rep;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.Pattern;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
*
|
||||
* 数据字典类型添加对象
|
||||
* @author
|
||||
* @version 1.0
|
||||
* @date 2025/2/24 1:35
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysDictTypeAddReq extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 字典主键
|
||||
*/
|
||||
private Long dictId;
|
||||
|
||||
/**
|
||||
* 字典名称
|
||||
*/
|
||||
private String dictName;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
|
||||
private String status;
|
||||
|
||||
@NotBlank(message = "字典名称不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典类型名称长度不能超过100个字符")
|
||||
public String getDictName () {
|
||||
return dictName;
|
||||
}
|
||||
|
||||
@NotBlank(message = "字典类型不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典类型类型长度不能超过100个字符")
|
||||
@Pattern(regexp = "^[a-z][a-z0-9_]*$", message = "字典类型必须以字母开头,且只能为(小写字母,数字,下滑线)")
|
||||
public String getDictType () {
|
||||
return dictType;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,60 @@
|
|||
package com.muyu.system.domain.rep;
|
||||
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.Pattern;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
*
|
||||
* 数据字典类型修改对象
|
||||
* @author
|
||||
* @version 1.0
|
||||
* @date 2025/2/24 1:35
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysDictTypeUpdReq extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 字典主键
|
||||
*/
|
||||
private Long dictId;
|
||||
|
||||
/**
|
||||
* 字典名称
|
||||
*/
|
||||
private String dictName;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
@NotBlank(message = "字典名称不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典类型名称长度不能超过100个字符")
|
||||
public String getDictName () {
|
||||
return dictName;
|
||||
}
|
||||
|
||||
@NotBlank(message = "字典类型不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典类型类型长度不能超过100个字符")
|
||||
@Pattern(regexp = "^[a-z][a-z0-9_]*$", message = "字典类型必须以字母开头,且只能为(小写字母,数字,下滑线)")
|
||||
public String getDictType () {
|
||||
return dictType;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,52 @@
|
|||
package com.muyu.system.domain.rep;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @description: 登录添加请求
|
||||
* @author yangchoashun
|
||||
* @date 2025/2/23 17:24
|
||||
* @version 1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysLogininforAddReq {
|
||||
/**
|
||||
* 访问ID
|
||||
*/
|
||||
private Long infoId;
|
||||
/**
|
||||
* 用户账号
|
||||
*/
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 状态 0成功 1失败
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 地址
|
||||
*/
|
||||
private String ipaddr;
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
private String msg;
|
||||
|
||||
/**
|
||||
* 访问时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date accessTime;
|
||||
}
|
|
@ -1,5 +1,6 @@
|
|||
package com.muyu.system.domain.rep;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.muyu.common.core.web.page.PageReq;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
@ -34,10 +35,12 @@ public class SysLogininforListReq extends PageReq {
|
|||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date beginTime;
|
||||
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date endTime;
|
||||
}
|
||||
|
|
|
@ -0,0 +1,113 @@
|
|||
package com.muyu.system.domain.rep;
|
||||
|
||||
import com.muyu.system.domain.SysMenu;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @description: 菜单添加请求
|
||||
* @author yangchoashun
|
||||
* @date 2025/2/23 17:24
|
||||
* @version 1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysMenuAddReq {
|
||||
private Long menuId;
|
||||
|
||||
/**
|
||||
* 菜单名称
|
||||
*/
|
||||
@NotBlank(message = "菜单名称不能为空")
|
||||
private String menuName;
|
||||
|
||||
/**
|
||||
* 父菜单名称
|
||||
*/
|
||||
private String parentName;
|
||||
|
||||
/**
|
||||
* 父菜单ID
|
||||
*/
|
||||
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 显示顺序
|
||||
*/
|
||||
@NotNull(message = "显示顺序不能为空")
|
||||
private Integer orderNum;
|
||||
|
||||
/**
|
||||
* 路由地址
|
||||
*/
|
||||
@NotBlank(message = "路由地址不能为空")
|
||||
private String path;
|
||||
|
||||
/**
|
||||
* 组件路径
|
||||
*/
|
||||
@NotBlank(message = "组件路径不能为空")
|
||||
private String component;
|
||||
|
||||
/**
|
||||
* 路由参数
|
||||
*/
|
||||
private String query;
|
||||
|
||||
/**
|
||||
* 是否为外链(0是 1否)
|
||||
*/
|
||||
@NotBlank(message = "是否为外链不能为空")
|
||||
private String isFrame;
|
||||
|
||||
/**
|
||||
* 是否缓存(0缓存 1不缓存)
|
||||
*/
|
||||
@NotBlank(message = "是否缓存不能为空")
|
||||
private String isCache;
|
||||
|
||||
/**
|
||||
* 类型(M目录 C菜单 F按钮)
|
||||
*/
|
||||
@NotBlank(message = "类型不能为空")
|
||||
private String menuType;
|
||||
|
||||
/**
|
||||
* 显示状态(0显示 1隐藏)
|
||||
*/
|
||||
@NotBlank(message = "显示状态不能为空")
|
||||
private String visible;
|
||||
|
||||
/**
|
||||
* 菜单状态(0正常 1停用)
|
||||
*/
|
||||
@NotBlank(message = "菜单状态不能为空")
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 权限字符串
|
||||
*/
|
||||
private String perms;
|
||||
|
||||
/**
|
||||
* 菜单图标
|
||||
*/
|
||||
@NotBlank(message = "菜单图标不能为空")
|
||||
private String icon;
|
||||
|
||||
/**
|
||||
* 子菜单
|
||||
*/
|
||||
private List<SysMenu> children = new ArrayList<SysMenu>();
|
||||
|
||||
}
|
|
@ -1,12 +1,16 @@
|
|||
package com.muyu.system.domain.rep;
|
||||
|
||||
import com.muyu.common.core.web.page.PageReq;
|
||||
import com.muyu.system.domain.SysMenu;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 菜单信息请求列表查询对象
|
||||
*
|
||||
|
@ -21,12 +25,84 @@ import lombok.experimental.SuperBuilder;
|
|||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysMenuListReq extends PageReq {
|
||||
private Long menuId;
|
||||
|
||||
/**
|
||||
* 菜单名称
|
||||
*/
|
||||
private String menuName;
|
||||
|
||||
/**
|
||||
* 父菜单名称
|
||||
*/
|
||||
private String parentName;
|
||||
|
||||
/**
|
||||
* 父菜单ID
|
||||
*/
|
||||
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 显示顺序
|
||||
*/
|
||||
|
||||
private Integer orderNum;
|
||||
|
||||
/**
|
||||
* 路由地址
|
||||
*/
|
||||
|
||||
private String path;
|
||||
|
||||
/**
|
||||
* 组件路径
|
||||
*/
|
||||
|
||||
private String component;
|
||||
|
||||
/**
|
||||
* 路由参数
|
||||
*/
|
||||
private String query;
|
||||
|
||||
/**
|
||||
* 是否为外链(0是 1否)
|
||||
*/
|
||||
private String isFrame;
|
||||
|
||||
/**
|
||||
* 是否缓存(0缓存 1不缓存)
|
||||
*/
|
||||
private String isCache;
|
||||
|
||||
/**
|
||||
* 类型(M目录 C菜单 F按钮)
|
||||
*/
|
||||
private String menuType;
|
||||
|
||||
/**
|
||||
* 显示状态(0显示 1隐藏)
|
||||
*/
|
||||
private String visible;
|
||||
|
||||
/**
|
||||
* 菜单状态(0正常 1停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 权限字符串
|
||||
*/
|
||||
private String perms;
|
||||
|
||||
/**
|
||||
* 菜单图标
|
||||
*/
|
||||
private String icon;
|
||||
|
||||
/**
|
||||
* 子菜单
|
||||
*/
|
||||
private List<SysMenu> children = new ArrayList<SysMenu>();
|
||||
}
|
||||
|
|
|
@ -0,0 +1,113 @@
|
|||
package com.muyu.system.domain.rep;
|
||||
|
||||
import com.muyu.system.domain.SysMenu;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @description: 菜单添加请求
|
||||
* @author yangchoashun
|
||||
* @date 2025/2/23 17:24
|
||||
* @version 1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysMenuUpdReq {
|
||||
private Long menuId;
|
||||
|
||||
/**
|
||||
* 菜单名称
|
||||
*/
|
||||
@NotBlank(message = "菜单名称不能为空")
|
||||
private String menuName;
|
||||
|
||||
/**
|
||||
* 父菜单名称
|
||||
*/
|
||||
private String parentName;
|
||||
|
||||
/**
|
||||
* 父菜单ID
|
||||
*/
|
||||
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 显示顺序
|
||||
*/
|
||||
@NotNull(message = "显示顺序不能为空")
|
||||
private Integer orderNum;
|
||||
|
||||
/**
|
||||
* 路由地址
|
||||
*/
|
||||
@NotBlank(message = "路由地址不能为空")
|
||||
private String path;
|
||||
|
||||
/**
|
||||
* 组件路径
|
||||
*/
|
||||
@NotBlank(message = "组件路径不能为空")
|
||||
private String component;
|
||||
|
||||
/**
|
||||
* 路由参数
|
||||
*/
|
||||
private String query;
|
||||
|
||||
/**
|
||||
* 是否为外链(0是 1否)
|
||||
*/
|
||||
@NotBlank(message = "是否为外链不能为空")
|
||||
private String isFrame;
|
||||
|
||||
/**
|
||||
* 是否缓存(0缓存 1不缓存)
|
||||
*/
|
||||
@NotBlank(message = "是否缓存不能为空")
|
||||
private String isCache;
|
||||
|
||||
/**
|
||||
* 类型(M目录 C菜单 F按钮)
|
||||
*/
|
||||
@NotBlank(message = "类型不能为空")
|
||||
private String menuType;
|
||||
|
||||
/**
|
||||
* 显示状态(0显示 1隐藏)
|
||||
*/
|
||||
@NotBlank(message = "显示状态不能为空")
|
||||
private String visible;
|
||||
|
||||
/**
|
||||
* 菜单状态(0正常 1停用)
|
||||
*/
|
||||
@NotBlank(message = "菜单状态不能为空")
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 权限字符串
|
||||
*/
|
||||
private String perms;
|
||||
|
||||
/**
|
||||
* 菜单图标
|
||||
*/
|
||||
@NotBlank(message = "菜单图标不能为空")
|
||||
private String icon;
|
||||
|
||||
/**
|
||||
* 子菜单
|
||||
*/
|
||||
private List<SysMenu> children = new ArrayList<SysMenu>();
|
||||
|
||||
}
|
|
@ -0,0 +1,66 @@
|
|||
package com.muyu.system.domain.rep;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.system.domain.SysPost;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor; /**
|
||||
* 岗位信息列表模型
|
||||
* @author: AoCi Tian
|
||||
* @create: 2025-02-23 19:31
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysPostEditReq {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 岗位序号
|
||||
*/
|
||||
@Excel(name = "岗位序号", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long postId;
|
||||
|
||||
/**
|
||||
* 岗位编码
|
||||
*/
|
||||
@Excel(name = "岗位编码")
|
||||
private String postCode;
|
||||
|
||||
/**
|
||||
* 岗位名称
|
||||
*/
|
||||
@Excel(name = "岗位名称")
|
||||
private String postName;
|
||||
|
||||
/**
|
||||
* 岗位排序
|
||||
*/
|
||||
@Excel(name = "岗位排序")
|
||||
private Integer postSort;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 用户是否存在此岗位标识 默认不存在
|
||||
*/
|
||||
@Builder.Default
|
||||
private boolean flag = false;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
private String updateBy;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
}
|
|
@ -0,0 +1,69 @@
|
|||
package com.muyu.system.domain.rep;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.system.domain.SysPost;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor; /**
|
||||
* 岗位信息列表模型
|
||||
* @author: AoCi Tian
|
||||
* @create: 2025-02-23 19:31
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysPostSaveReq {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 岗位序号
|
||||
*/
|
||||
@Excel(name = "岗位序号", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long postId;
|
||||
|
||||
/**
|
||||
* 岗位编码
|
||||
*/
|
||||
@Excel(name = "岗位编码")
|
||||
private String postCode;
|
||||
|
||||
/**
|
||||
* 岗位名称
|
||||
*/
|
||||
@Excel(name = "岗位名称")
|
||||
private String postName;
|
||||
|
||||
/**
|
||||
* 岗位排序
|
||||
*/
|
||||
@Excel(name = "岗位排序")
|
||||
private Integer postSort;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 用户是否存在此岗位标识 默认不存在
|
||||
*/
|
||||
@Builder.Default
|
||||
private boolean flag = false;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
private String createBy;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
}
|
|
@ -0,0 +1,88 @@
|
|||
package com.muyu.system.domain.resp;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import com.muyu.common.system.domain.SysDictData;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* @author SunLY
|
||||
* @version 1.0
|
||||
* @date 2025/2/23 21:24
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysDictDataListResp extends BaseEntity {
|
||||
/**
|
||||
* 字典编码
|
||||
*/
|
||||
@Excel(name = "字典编码", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long dictCode;
|
||||
|
||||
/**
|
||||
* 字典排序
|
||||
*/
|
||||
@Excel(name = "字典排序", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long dictSort;
|
||||
|
||||
/**
|
||||
* 字典标签
|
||||
*/
|
||||
@Excel(name = "字典标签")
|
||||
private String dictLabel;
|
||||
|
||||
/**
|
||||
* 字典键值
|
||||
*/
|
||||
@Excel(name = "字典键值")
|
||||
private String dictValue;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
@Excel(name = "字典类型")
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 样式属性(其他样式扩展)
|
||||
*/
|
||||
private String cssClass;
|
||||
|
||||
/**
|
||||
* 表格字典样式
|
||||
*/
|
||||
private String listClass;
|
||||
|
||||
/**
|
||||
* 是否默认(Y是 N否)
|
||||
*/
|
||||
@Excel(name = "是否默认", readConverterExp = "Y=是,N=否")
|
||||
private String isDefault;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||
private String status;
|
||||
|
||||
public static SysDictDataListResp buildResp(SysDictData sysDictData){
|
||||
return SysDictDataListResp.builder()
|
||||
.dictCode(sysDictData.getDictCode())
|
||||
.dictSort(sysDictData.getDictSort())
|
||||
.dictLabel(sysDictData.getDictLabel())
|
||||
.dictValue(sysDictData.getDictValue())
|
||||
.dictType(sysDictData.getDictType())
|
||||
.cssClass(sysDictData.getCssClass())
|
||||
.listClass(sysDictData.getListClass())
|
||||
.isDefault(sysDictData.getIsDefault())
|
||||
.status(sysDictData.getStatus())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,68 @@
|
|||
package com.muyu.system.domain.resp;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.common.core.annotation.Excel.ColumnType;
|
||||
import com.muyu.common.core.web.domain.BaseEntity;
|
||||
import com.muyu.system.domain.model.SysDictTypeListModel;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.Pattern;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* 字典类型列表
|
||||
*
|
||||
* @author
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysDictTypeListResp extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 字典主键
|
||||
*/
|
||||
@Excel(name = "字典主键", cellType = ColumnType.NUMERIC)
|
||||
private Long dictId;
|
||||
|
||||
/**
|
||||
* 字典名称
|
||||
*/
|
||||
@Excel(name = "字典名称")
|
||||
private String dictName;
|
||||
|
||||
/**
|
||||
* 字典类型
|
||||
*/
|
||||
@Excel(name = "字典类型")
|
||||
private String dictType;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||
private String status;
|
||||
|
||||
@NotBlank(message = "字典名称不能为空")
|
||||
@Size(min = 0, max = 100, message = "字典类型名称长度不能超过100个字符")
|
||||
public String getDictName () {
|
||||
return dictName;
|
||||
}
|
||||
|
||||
|
||||
public static SysDictTypeListResp buildResp(SysDictTypeListModel sysDictTypeListModel) {
|
||||
return SysDictTypeListResp.builder()
|
||||
.dictId(sysDictTypeListModel.getDictId())
|
||||
.dictName(sysDictTypeListModel.getDictName())
|
||||
.dictType(sysDictTypeListModel.getDictType())
|
||||
.status(sysDictTypeListModel.getStatus())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,64 @@
|
|||
package com.muyu.system.domain.resp;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.muyu.system.domain.model.SysLogininforListModel;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author yangchaoshun
|
||||
* @version 1.0
|
||||
* @description: 登录信息返回对象
|
||||
* @date 2025/2/23 18:18
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysLogininforListResp {
|
||||
/**
|
||||
* ID
|
||||
*/
|
||||
private Long infoId;
|
||||
|
||||
/**
|
||||
* 用户账号
|
||||
*/
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 状态 0成功 1失败
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 地址
|
||||
*/
|
||||
private String ipaddr;
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
private String msg;
|
||||
|
||||
/**
|
||||
* 访问时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date accessTime;
|
||||
|
||||
public static SysLogininforListResp buildSysLogininforResp(SysLogininforListModel sysLogininforListModel) {
|
||||
return SysLogininforListResp.builder()
|
||||
.infoId(sysLogininforListModel.getInfoId())
|
||||
.userName(sysLogininforListModel.getUserName())
|
||||
.status(sysLogininforListModel.getStatus())
|
||||
.ipaddr(sysLogininforListModel.getIpaddr())
|
||||
.msg(sysLogininforListModel.getMsg())
|
||||
.accessTime(sysLogininforListModel.getAccessTime())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,127 @@
|
|||
package com.muyu.system.domain.resp;
|
||||
|
||||
import com.muyu.system.domain.SysMenu;
|
||||
import com.muyu.system.domain.model.SysMenuListModel;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 菜单信息请求列表查询对象
|
||||
*
|
||||
* @ClassName SysMenuListReq
|
||||
* @Author AnNan.Wang
|
||||
* @Date 2024/12/16 10:55
|
||||
*/
|
||||
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysMenuListResp {
|
||||
private Long menuId;
|
||||
|
||||
/**
|
||||
* 菜单名称
|
||||
*/
|
||||
private String menuName;
|
||||
|
||||
/**
|
||||
* 父菜单名称
|
||||
*/
|
||||
private String parentName;
|
||||
|
||||
/**
|
||||
* 父菜单ID
|
||||
*/
|
||||
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 显示顺序
|
||||
*/
|
||||
|
||||
private Integer orderNum;
|
||||
|
||||
/**
|
||||
* 路由地址
|
||||
*/
|
||||
|
||||
private String path;
|
||||
|
||||
/**
|
||||
* 组件路径
|
||||
*/
|
||||
|
||||
private String component;
|
||||
|
||||
/**
|
||||
* 路由参数
|
||||
*/
|
||||
private String query;
|
||||
|
||||
/**
|
||||
* 是否为外链(0是 1否)
|
||||
*/
|
||||
private String isFrame;
|
||||
|
||||
/**
|
||||
* 是否缓存(0缓存 1不缓存)
|
||||
*/
|
||||
private String isCache;
|
||||
|
||||
/**
|
||||
* 类型(M目录 C菜单 F按钮)
|
||||
*/
|
||||
private String menuType;
|
||||
|
||||
/**
|
||||
* 显示状态(0显示 1隐藏)
|
||||
*/
|
||||
private String visible;
|
||||
|
||||
/**
|
||||
* 菜单状态(0正常 1停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 权限字符串
|
||||
*/
|
||||
private String perms;
|
||||
|
||||
/**
|
||||
* 菜单图标
|
||||
*/
|
||||
private String icon;
|
||||
|
||||
/**
|
||||
* 子菜单
|
||||
*/
|
||||
private List<SysMenu> children = new ArrayList<SysMenu>();
|
||||
|
||||
public static SysMenuListResp buildSysMenuListResp(SysMenuListModel sysMenuListModel){
|
||||
return SysMenuListResp.builder()
|
||||
.menuId(sysMenuListModel.getMenuId())
|
||||
.menuName(sysMenuListModel.getMenuName())
|
||||
.parentName(sysMenuListModel.getParentName())
|
||||
.parentId(sysMenuListModel.getParentId())
|
||||
.orderNum(sysMenuListModel.getOrderNum())
|
||||
.path(sysMenuListModel.getPath())
|
||||
.component(sysMenuListModel.getComponent())
|
||||
.query(sysMenuListModel.getQuery())
|
||||
.isFrame(sysMenuListModel.getIsFrame())
|
||||
.isCache(sysMenuListModel.getIsCache())
|
||||
.menuType(sysMenuListModel.getMenuType())
|
||||
.visible(sysMenuListModel.getVisible())
|
||||
.status(sysMenuListModel.getStatus())
|
||||
.perms(sysMenuListModel.getPerms())
|
||||
.icon(sysMenuListModel.getIcon())
|
||||
.children(sysMenuListModel.getChildren())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,80 @@
|
|||
package com.muyu.system.domain.resp;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.common.core.web.page.PageQueryModel;
|
||||
import com.muyu.system.domain.SysPost;
|
||||
import com.muyu.system.domain.model.SysPostListModel;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List; /**
|
||||
|
||||
* 岗位信息响应列表
|
||||
* @author: AoCi Tian
|
||||
* @create: 2025-02-23 19:37
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysPostListResp {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 岗位序号
|
||||
*/
|
||||
@Excel(name = "岗位序号", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long postId;
|
||||
|
||||
/**
|
||||
* 岗位编码
|
||||
*/
|
||||
@Excel(name = "岗位编码")
|
||||
private String postCode;
|
||||
|
||||
/**
|
||||
* 岗位名称
|
||||
*/
|
||||
@Excel(name = "岗位名称")
|
||||
private String postName;
|
||||
|
||||
/**
|
||||
* 岗位排序
|
||||
*/
|
||||
@Excel(name = "岗位排序")
|
||||
private Integer postSort;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 用户是否存在此岗位标识 默认不存在
|
||||
*/
|
||||
@Builder.Default
|
||||
private boolean flag = false;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date createTime;
|
||||
|
||||
public static SysPostListResp listBuild(SysPostListModel sysPostListModel) {
|
||||
return SysPostListResp.builder()
|
||||
.postId(sysPostListModel.getPostId())
|
||||
.postCode(sysPostListModel.getPostCode())
|
||||
.postName(sysPostListModel.getPostName())
|
||||
.postSort(sysPostListModel.getPostSort())
|
||||
.status(sysPostListModel.getStatus())
|
||||
.flag(sysPostListModel.isFlag())
|
||||
.createTime(sysPostListModel.getCreateTime())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,73 @@
|
|||
package com.muyu.system.domain.resp;
|
||||
|
||||
import com.muyu.common.core.annotation.Excel;
|
||||
import com.muyu.system.domain.model.SysPostMyInfoModel;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor; /**
|
||||
* 个人岗位信息
|
||||
* @author: AoCi Tian
|
||||
* @create: 2025-02-23 20:52
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysPostMyInfoResp {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 岗位序号
|
||||
*/
|
||||
@Excel(name = "岗位序号", cellType = Excel.ColumnType.NUMERIC)
|
||||
private Long postId;
|
||||
|
||||
/**
|
||||
* 岗位编码
|
||||
*/
|
||||
@Excel(name = "岗位编码")
|
||||
private String postCode;
|
||||
|
||||
/**
|
||||
* 岗位名称
|
||||
*/
|
||||
@Excel(name = "岗位名称")
|
||||
private String postName;
|
||||
|
||||
/**
|
||||
* 岗位排序
|
||||
*/
|
||||
@Excel(name = "岗位排序")
|
||||
private Integer postSort;
|
||||
|
||||
/**
|
||||
* 状态(0正常 1停用)
|
||||
*/
|
||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 用户是否存在此岗位标识 默认不存在
|
||||
*/
|
||||
@Builder.Default
|
||||
private boolean flag = false;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
public static SysPostMyInfoResp messageBuild(SysPostMyInfoModel sysPostMyInfoModel) {
|
||||
return SysPostMyInfoResp.builder()
|
||||
.postId(sysPostMyInfoModel.getPostId())
|
||||
.postCode(sysPostMyInfoModel.getPostCode())
|
||||
.postName(sysPostMyInfoModel.getPostName())
|
||||
.postSort(sysPostMyInfoModel.getPostSort())
|
||||
.status(sysPostMyInfoModel.getStatus())
|
||||
.remark(sysPostMyInfoModel.getRemark())
|
||||
.flag(sysPostMyInfoModel.isFlag())
|
||||
.build();
|
||||
}
|
||||
}
|
|
@ -3,7 +3,10 @@ package com.muyu.system.service;
|
|||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.muyu.common.core.web.page.PageQueryModel;
|
||||
import com.muyu.common.system.domain.SysDictData;
|
||||
import com.muyu.system.domain.model.SysDictDataAddModel;
|
||||
import com.muyu.system.domain.model.SysDictDataPageQueryModel;
|
||||
import com.muyu.system.domain.model.SysDictDataUpdModel;
|
||||
import com.muyu.system.domain.rep.SysDictDataUpdReq;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -51,16 +54,16 @@ public interface SysDictDataService extends IService<SysDictData> {
|
|||
/**
|
||||
* 新增保存字典数据信息
|
||||
*
|
||||
* @param dictData 字典数据信息
|
||||
* @param sysDictDataAddModel 字典数据信息
|
||||
*/
|
||||
public void insertDictData (SysDictData dictData);
|
||||
public void insertDictData (SysDictDataAddModel sysDictDataAddModel);
|
||||
|
||||
/**
|
||||
* 修改保存字典数据信息
|
||||
*
|
||||
* @param dictData 字典数据信息
|
||||
* @param sysDictDataUpdModel 字典数据信息
|
||||
*/
|
||||
public void updateDictData (SysDictData dictData);
|
||||
public void updateDictData (SysDictDataUpdModel sysDictDataUpdModel);
|
||||
|
||||
PageQueryModel<SysDictData> pageQuery(SysDictDataPageQueryModel sysDictDataPageQueryModel);
|
||||
|
||||
|
|
|
@ -4,7 +4,10 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
|||
import com.muyu.common.core.web.page.PageQueryModel;
|
||||
import com.muyu.common.system.domain.SysDictData;
|
||||
import com.muyu.common.system.domain.SysDictType;
|
||||
import com.muyu.system.domain.model.SysDictTypeAddModel;
|
||||
import com.muyu.system.domain.model.SysDictTypeListModel;
|
||||
import com.muyu.system.domain.model.SysDictTypePageQueryModel;
|
||||
import com.muyu.system.domain.model.SysDictTypeUpdModel;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -17,11 +20,11 @@ public interface SysDictTypeService extends IService<SysDictType> {
|
|||
/**
|
||||
* 根据条件分页查询字典类型
|
||||
*
|
||||
* @param dictType 字典类型信息
|
||||
* @param sysDictTypePageQueryModel 字典类型信息
|
||||
*
|
||||
* @return 字典类型集合信息
|
||||
*/
|
||||
public List<SysDictType> selectDictTypeList (SysDictType dictType);
|
||||
public List<SysDictTypeListModel> selectDictTypeList (SysDictTypePageQueryModel sysDictTypePageQueryModel);
|
||||
|
||||
/**
|
||||
* 根据所有字典类型
|
||||
|
@ -82,27 +85,36 @@ public interface SysDictTypeService extends IService<SysDictType> {
|
|||
/**
|
||||
* 新增保存字典类型信息
|
||||
*
|
||||
* @param dictType 字典类型信息
|
||||
* @param sysDictTypeAddModel 字典类型信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
public void insertDictType (SysDictType dictType);
|
||||
public void insertDictType (SysDictTypeAddModel sysDictTypeAddModel);
|
||||
|
||||
/**
|
||||
* 修改保存字典类型信息
|
||||
*
|
||||
* @param dictType 字典类型信息
|
||||
* @param sysDictTypeUpdModel 字典类型信息
|
||||
*/
|
||||
public void updateDictType (SysDictType dictType);
|
||||
public void updateDictType (SysDictTypeUpdModel sysDictTypeUpdModel);
|
||||
|
||||
/**
|
||||
* 校验字典类型称是否唯一
|
||||
*
|
||||
* @param dictType 字典类型
|
||||
* @param sysDictTypeAddModel 字典类型
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
public boolean checkDictTypeUnique (SysDictType dictType);
|
||||
public boolean checkDictTypeUnique (SysDictTypeAddModel sysDictTypeAddModel);
|
||||
|
||||
/**
|
||||
* 校验字典类型称是否唯一
|
||||
*
|
||||
* @param sysDictTypeUpdModel 字典类型
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
public boolean checkDictTypeUnique (SysDictTypeUpdModel sysDictTypeUpdModel);
|
||||
|
||||
|
||||
PageQueryModel<SysDictType> pageQuery(SysDictTypePageQueryModel sysDictTypePageQueryModel);
|
||||
|
|
|
@ -3,6 +3,7 @@ package com.muyu.system.service;
|
|||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.muyu.common.core.web.page.PageQueryModel;
|
||||
import com.muyu.common.system.domain.SysLogininfor;
|
||||
import com.muyu.system.domain.model.SysLogininforAddModel;
|
||||
import com.muyu.system.domain.model.SysLogininforExportModel;
|
||||
import com.muyu.system.domain.model.SysLogininforListModel;
|
||||
|
||||
|
@ -17,9 +18,9 @@ public interface SysLogininforService extends IService<SysLogininfor> {
|
|||
/**
|
||||
* 新增系统登录日志
|
||||
*
|
||||
* @param logininfor 访问日志对象
|
||||
* @param logininforAddModel 访问日志对象
|
||||
*/
|
||||
public void insertLogininfor (SysLogininfor logininfor);
|
||||
public void insertLogininfor (SysLogininforAddModel logininforAddModel);
|
||||
|
||||
/**
|
||||
* 查询系统登录日志集合
|
||||
|
@ -28,7 +29,7 @@ public interface SysLogininforService extends IService<SysLogininfor> {
|
|||
*
|
||||
* @return 登录记录集合
|
||||
*/
|
||||
public PageQueryModel<SysLogininfor> pageQuery(SysLogininforListModel sysLogininforListModel);
|
||||
public PageQueryModel<SysLogininforListModel> pageQuery(SysLogininforListModel sysLogininforListModel);
|
||||
|
||||
/**
|
||||
* 批量删除系统登录日志
|
||||
|
|
|
@ -2,6 +2,9 @@ package com.muyu.system.service;
|
|||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.muyu.system.domain.SysMenu;
|
||||
import com.muyu.system.domain.model.SysMenuAddModel;
|
||||
import com.muyu.system.domain.model.SysMenuListModel;
|
||||
import com.muyu.system.domain.model.SysMenuUpdModel;
|
||||
import com.muyu.system.domain.vo.RouterVo;
|
||||
import com.muyu.system.domain.vo.TreeSelect;
|
||||
|
||||
|
@ -21,17 +24,17 @@ public interface SysMenuService extends IService<SysMenu> {
|
|||
*
|
||||
* @return 菜单列表
|
||||
*/
|
||||
public List<SysMenu> selectMenuList (Long userId);
|
||||
public List<SysMenuListModel> selectMenuList (Long userId);
|
||||
|
||||
/**
|
||||
* 根据用户查询系统菜单列表
|
||||
*
|
||||
* @param menu 菜单信息
|
||||
* @param sysMenuListModel 菜单信息
|
||||
* @param userId 用户ID
|
||||
*
|
||||
* @return 菜单列表
|
||||
*/
|
||||
public List<SysMenu> selectMenuList (SysMenu menu, Long userId);
|
||||
public List<SysMenuListModel> selectMenuList (SysMenuListModel sysMenuListModel, Long userId);
|
||||
|
||||
/**
|
||||
* 根据用户ID查询权限
|
||||
|
@ -94,7 +97,7 @@ public interface SysMenuService extends IService<SysMenu> {
|
|||
*
|
||||
* @return 下拉树结构列表
|
||||
*/
|
||||
public List<TreeSelect> buildMenuTreeSelect (List<SysMenu> menus);
|
||||
public List<TreeSelect> buildMenuTreeSelect (List<SysMenuListModel> menus);
|
||||
|
||||
/**
|
||||
* 根据菜单ID查询信息
|
||||
|
@ -126,16 +129,16 @@ public interface SysMenuService extends IService<SysMenu> {
|
|||
/**
|
||||
* 新增保存菜单信息
|
||||
*
|
||||
* @param menu 菜单信息
|
||||
* @param sysMenuAddModel 菜单信息
|
||||
*/
|
||||
public void insertMenu (SysMenu menu);
|
||||
public void insertMenu (SysMenuAddModel sysMenuAddModel);
|
||||
|
||||
/**
|
||||
* 修改保存菜单信息
|
||||
*
|
||||
* @param menu 菜单信息
|
||||
* @param sysMenuUpdModel 菜单信息
|
||||
*/
|
||||
public void updateMenu (SysMenu menu);
|
||||
public void updateMenu (SysMenuUpdModel sysMenuUpdModel);
|
||||
|
||||
/**
|
||||
* 删除菜单管理信息
|
||||
|
@ -147,10 +150,10 @@ public interface SysMenuService extends IService<SysMenu> {
|
|||
/**
|
||||
* 校验菜单名称是否唯一
|
||||
*
|
||||
* @param menu 菜单信息
|
||||
* @param sysMenuAddModel 菜单信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
public boolean checkMenuNameUnique (SysMenu menu);
|
||||
public boolean checkMenuNameUnique (SysMenuAddModel sysMenuAddModel);
|
||||
|
||||
}
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
package com.muyu.system.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.muyu.common.core.web.page.DataPageResp;
|
||||
import com.muyu.common.core.web.page.PageQueryModel;
|
||||
import com.muyu.system.domain.SysPost;
|
||||
import com.muyu.system.domain.model.SysPostPageQueryModel;
|
||||
import com.muyu.system.domain.model.*;
|
||||
import com.muyu.system.domain.resp.SysPostListResp;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -27,7 +29,7 @@ public interface SysPostService extends IService<SysPost> {
|
|||
*
|
||||
* @return 角色对象信息
|
||||
*/
|
||||
public SysPost selectPostById (Long postId);
|
||||
public SysPostMyInfoModel selectPostById (Long postId);
|
||||
|
||||
/**
|
||||
* 根据用户ID获取岗位选择框列表
|
||||
|
@ -41,20 +43,40 @@ public interface SysPostService extends IService<SysPost> {
|
|||
/**
|
||||
* 校验岗位名称
|
||||
*
|
||||
* @param post 岗位信息
|
||||
* @param sysPostSaveModel 岗位信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
public boolean checkPostNameUnique (SysPost post);
|
||||
public boolean checkPostNameUnique (SysPostSaveModel sysPostSaveModel);/**
|
||||
|
||||
|
||||
* 校验岗位名称
|
||||
*
|
||||
* @param sysPostEditModel 岗位信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
public boolean checkEditPostNameUnique (SysPostEditModel sysPostEditModel);
|
||||
|
||||
|
||||
/**
|
||||
* 校验岗位编码
|
||||
*
|
||||
* @param post 岗位信息
|
||||
* @param sysPostSaveModel 岗位信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
public boolean checkPostCodeUnique (SysPost post);
|
||||
public boolean checkPostCodeUnique (SysPostSaveModel sysPostSaveModel);
|
||||
|
||||
|
||||
/**
|
||||
* 校验岗位编码
|
||||
*
|
||||
* @param sysPostEditModel 岗位信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
public boolean checkEditPostCodeUnique (SysPostEditModel sysPostEditModel);
|
||||
|
||||
/**
|
||||
* 通过岗位ID查询岗位使用数量
|
||||
|
@ -103,4 +125,10 @@ public interface SysPostService extends IService<SysPost> {
|
|||
|
||||
PageQueryModel<SysPost> pageQuery(SysPostPageQueryModel sysPostPageQueryModel);
|
||||
|
||||
/**
|
||||
* 岗位信息列表
|
||||
* @param sysPostPageQueryModel 分页信息
|
||||
* @return 结果
|
||||
*/
|
||||
PageQueryModel<SysPostListModel> getList(SysPostPageQueryModel sysPostPageQueryModel);
|
||||
}
|
||||
|
|
|
@ -9,7 +9,9 @@ import com.muyu.common.core.utils.StringUtils;
|
|||
import com.muyu.common.core.web.page.PageQueryModel;
|
||||
import com.muyu.common.security.utils.DictUtils;
|
||||
import com.muyu.common.system.domain.SysDictData;
|
||||
import com.muyu.system.domain.model.SysDictDataAddModel;
|
||||
import com.muyu.system.domain.model.SysDictDataPageQueryModel;
|
||||
import com.muyu.system.domain.model.SysDictDataUpdModel;
|
||||
import com.muyu.system.mapper.SysDictDataMapper;
|
||||
import com.muyu.system.service.SysDictDataService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -25,15 +27,12 @@ import java.util.List;
|
|||
*/
|
||||
@Service
|
||||
public class SysDictDataServiceImpl extends ServiceImpl<SysDictDataMapper, SysDictData> implements SysDictDataService {
|
||||
@Autowired
|
||||
private SysDictDataMapper dictDataMapper;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 根据条件分页查询字典数据
|
||||
*
|
||||
* @param dictData 字典数据信息
|
||||
* @param pageQueryModel 字典数据信息
|
||||
*
|
||||
* @return 字典数据集合信息
|
||||
*/
|
||||
|
@ -101,26 +100,48 @@ public class SysDictDataServiceImpl extends ServiceImpl<SysDictDataMapper, SysDi
|
|||
/**
|
||||
* 新增保存字典数据信息
|
||||
*
|
||||
* @param data 字典数据信息
|
||||
* @param sysDictDataAddModel 字典数据信息
|
||||
*/
|
||||
@Override
|
||||
public void insertDictData (SysDictData data) {
|
||||
if (this.save(data)) {
|
||||
List<SysDictData> dictDataList = this.selectDictDataByType(data.getDictType());
|
||||
DictUtils.setDictCache(data.getDictType(), dictDataList);
|
||||
public void insertDictData (SysDictDataAddModel sysDictDataAddModel) {
|
||||
SysDictData sysDictData = SysDictData.builder()
|
||||
.dictCode(sysDictDataAddModel.getDictCode())
|
||||
.dictSort(sysDictDataAddModel.getDictSort())
|
||||
.dictLabel(sysDictDataAddModel.getDictLabel())
|
||||
.dictValue(sysDictDataAddModel.getDictValue())
|
||||
.dictType(sysDictDataAddModel.getDictType())
|
||||
.cssClass(sysDictDataAddModel.getCssClass())
|
||||
.listClass(sysDictDataAddModel.getListClass())
|
||||
.isDefault(sysDictDataAddModel.getIsDefault())
|
||||
.status(sysDictDataAddModel.getStatus())
|
||||
.build();
|
||||
if (this.save(sysDictData)) {
|
||||
List<SysDictData> dictDataList = this.selectDictDataByType(sysDictData.getDictType());
|
||||
DictUtils.setDictCache(sysDictData.getDictType(), dictDataList);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改保存字典数据信息
|
||||
*
|
||||
* @param data 字典数据信息
|
||||
* @param sysDictDataUpdModel 字典数据信息
|
||||
*/
|
||||
@Override
|
||||
public void updateDictData (SysDictData data) {
|
||||
if (this.updateById(data)) {
|
||||
List<SysDictData> dictDataList = this.selectDictDataByType(data.getDictType());
|
||||
DictUtils.setDictCache(data.getDictType(), dictDataList);
|
||||
public void updateDictData (SysDictDataUpdModel sysDictDataUpdModel) {
|
||||
SysDictData sysDictData = SysDictData.builder()
|
||||
.dictCode(sysDictDataUpdModel.getDictCode())
|
||||
.dictSort(sysDictDataUpdModel.getDictSort())
|
||||
.dictLabel(sysDictDataUpdModel.getDictLabel())
|
||||
.dictValue(sysDictDataUpdModel.getDictValue())
|
||||
.dictType(sysDictDataUpdModel.getDictType())
|
||||
.cssClass(sysDictDataUpdModel.getCssClass())
|
||||
.listClass(sysDictDataUpdModel.getListClass())
|
||||
.isDefault(sysDictDataUpdModel.getIsDefault())
|
||||
.status(sysDictDataUpdModel.getStatus())
|
||||
.build();
|
||||
if (this.updateById(sysDictData)) {
|
||||
List<SysDictData> dictDataList = this.selectDictDataByType(sysDictData.getDictType());
|
||||
DictUtils.setDictCache(sysDictData.getDictType(), dictDataList);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -10,7 +10,10 @@ import com.muyu.common.core.web.page.PageQueryModel;
|
|||
import com.muyu.common.security.utils.DictUtils;
|
||||
import com.muyu.common.system.domain.SysDictData;
|
||||
import com.muyu.common.system.domain.SysDictType;
|
||||
import com.muyu.system.domain.model.SysDictTypeAddModel;
|
||||
import com.muyu.system.domain.model.SysDictTypeListModel;
|
||||
import com.muyu.system.domain.model.SysDictTypePageQueryModel;
|
||||
import com.muyu.system.domain.model.SysDictTypeUpdModel;
|
||||
import com.muyu.system.mapper.SysDictTypeMapper;
|
||||
import com.muyu.system.service.SysDictDataService;
|
||||
import com.muyu.system.service.SysDictTypeService;
|
||||
|
@ -30,8 +33,7 @@ import java.util.stream.Collectors;
|
|||
*/
|
||||
@Service
|
||||
public class SysDictTypeServiceImpl extends ServiceImpl<SysDictTypeMapper, SysDictType> implements SysDictTypeService {
|
||||
@Autowired
|
||||
private SysDictTypeMapper dictTypeMapper;
|
||||
|
||||
|
||||
@Autowired
|
||||
private SysDictDataService sysDictDataService;
|
||||
|
@ -59,24 +61,34 @@ public class SysDictTypeServiceImpl extends ServiceImpl<SysDictTypeMapper, SysDi
|
|||
/**
|
||||
* 根据条件分页查询字典类型
|
||||
*
|
||||
* @param dictType 字典类型信息
|
||||
* @param sysDictTypePageQueryModel 字典类型信息
|
||||
*
|
||||
* @return 字典类型集合信息
|
||||
*/
|
||||
@Override
|
||||
public List<SysDictType> selectDictTypeList (SysDictType dictType) {
|
||||
public List<SysDictTypeListModel> selectDictTypeList (SysDictTypePageQueryModel sysDictTypePageQueryModel) {
|
||||
LambdaQueryWrapper<SysDictType> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.like(StringUtils.isNotEmpty(dictType.getDictName()),SysDictType::getDictName, dictType.getDictName());
|
||||
lambdaQueryWrapper.eq(StringUtils.isNotEmpty(dictType.getStatus()),SysDictType::getStatus, dictType.getStatus());
|
||||
lambdaQueryWrapper.like(StringUtils.isNotEmpty(dictType.getDictType()),SysDictType::getDictType, dictType.getDictType());
|
||||
Map<String, Object> params = dictType.getParams();
|
||||
lambdaQueryWrapper.like(StringUtils.isNotEmpty(sysDictTypePageQueryModel.getDictName()),SysDictType::getDictName, sysDictTypePageQueryModel.getDictName());
|
||||
lambdaQueryWrapper.eq(StringUtils.isNotEmpty(sysDictTypePageQueryModel.getStatus()),SysDictType::getStatus, sysDictTypePageQueryModel.getStatus());
|
||||
lambdaQueryWrapper.like(StringUtils.isNotEmpty(sysDictTypePageQueryModel.getDictType()),SysDictType::getDictType, sysDictTypePageQueryModel.getDictType());
|
||||
Map<String, Object> params = sysDictTypePageQueryModel.getParams();
|
||||
Date beginTime = (Date) params.get("beginTime");
|
||||
Date endTime = (Date) params.get("endTime");
|
||||
lambdaQueryWrapper.between(
|
||||
beginTime != null && endTime != null,
|
||||
SysDictType::getCreateTime, beginTime, endTime
|
||||
);
|
||||
return this.list(lambdaQueryWrapper);
|
||||
List<SysDictType> sysDictTypeList = this.list(lambdaQueryWrapper);
|
||||
List<SysDictTypeListModel> sysDictTypeListModelList = sysDictTypeList.stream().map(
|
||||
sysDictType -> SysDictTypeListModel.builder()
|
||||
.dictId(sysDictType.getDictId())
|
||||
.dictName(sysDictType.getDictName())
|
||||
.dictType(sysDictType.getDictType())
|
||||
.status(sysDictType.getStatus())
|
||||
.remark(sysDictType.getRemark())
|
||||
.build()
|
||||
).distinct().collect(Collectors.toList());
|
||||
return sysDictTypeListModelList;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -191,25 +203,38 @@ public class SysDictTypeServiceImpl extends ServiceImpl<SysDictTypeMapper, SysDi
|
|||
/**
|
||||
* 新增保存字典类型信息
|
||||
*
|
||||
* @param dict 字典类型信息
|
||||
* @param sysDictTypeAddModel 字典类型信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public void insertDictType (SysDictType dict) {
|
||||
if (this.save(dict)) {
|
||||
DictUtils.setDictCache(dict.getDictType(), null);
|
||||
public void insertDictType (SysDictTypeAddModel sysDictTypeAddModel) {
|
||||
SysDictType sysDictType = SysDictType.builder()
|
||||
.dictName(sysDictTypeAddModel.getDictName())
|
||||
.dictType(sysDictTypeAddModel.getDictType())
|
||||
.status(sysDictTypeAddModel.getStatus())
|
||||
.remark(sysDictTypeAddModel.getRemark())
|
||||
.build();
|
||||
if (this.save(sysDictType)) {
|
||||
DictUtils.setDictCache(sysDictType.getDictType(), null);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改保存字典类型信息
|
||||
*
|
||||
* @param dict 字典类型信息
|
||||
* @param sysDictTypeUpdModel 字典类型信息
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void updateDictType (SysDictType dict) {
|
||||
public void updateDictType (SysDictTypeUpdModel sysDictTypeUpdModel) {
|
||||
SysDictType dict = SysDictType.builder()
|
||||
.dictId(sysDictTypeUpdModel.getDictId())
|
||||
.dictName(sysDictTypeUpdModel.getDictName())
|
||||
.dictType(sysDictTypeUpdModel.getDictType())
|
||||
.status(sysDictTypeUpdModel.getStatus())
|
||||
.remark(sysDictTypeUpdModel.getRemark())
|
||||
.build();
|
||||
SysDictType oldDict = this.getById(dict.getDictId());
|
||||
sysDictDataService.updateDictDataType(oldDict.getDictType(), dict.getDictType());
|
||||
if (this.updateById(dict)) {
|
||||
|
@ -221,17 +246,30 @@ public class SysDictTypeServiceImpl extends ServiceImpl<SysDictTypeMapper, SysDi
|
|||
/**
|
||||
* 校验字典类型称是否唯一
|
||||
*
|
||||
* @param dict 字典类型
|
||||
* @param sysDictTypeAddModel 字典类型
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public boolean checkDictTypeUnique (SysDictType dict) {
|
||||
Assert.notNull(dict.getDictType(), "字典类型不可为空");
|
||||
Long dictId = StringUtils.isNull(dict.getDictId()) ? -1L : dict.getDictId();
|
||||
public boolean checkDictTypeUnique (SysDictTypeAddModel sysDictTypeAddModel) {
|
||||
Assert.notNull(sysDictTypeAddModel.getDictType(), "字典类型不可为空");
|
||||
Long dictId = StringUtils.isNull(sysDictTypeAddModel.getDictId()) ? -1L : sysDictTypeAddModel.getDictId();
|
||||
LambdaQueryWrapper<SysDictType> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(SysDictType::getDictType, dict.getDictType());
|
||||
lambdaQueryWrapper.ne(dict.getDictId() != null, SysDictType::getDictId, dictId);
|
||||
lambdaQueryWrapper.eq(SysDictType::getDictType, sysDictTypeAddModel.getDictType());
|
||||
lambdaQueryWrapper.ne(sysDictTypeAddModel.getDictId() != null, SysDictType::getDictId, dictId);
|
||||
if (this.count(lambdaQueryWrapper) > 0) {
|
||||
return UserConstants.NOT_UNIQUE;
|
||||
}
|
||||
return UserConstants.UNIQUE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkDictTypeUnique(SysDictTypeUpdModel sysDictTypeUpdModel) {
|
||||
Assert.notNull(sysDictTypeUpdModel.getDictType(), "字典类型不可为空");
|
||||
Long dictId = StringUtils.isNull(sysDictTypeUpdModel.getDictId()) ? -1L : sysDictTypeUpdModel.getDictId();
|
||||
LambdaQueryWrapper<SysDictType> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(SysDictType::getDictType, sysDictTypeUpdModel.getDictType());
|
||||
lambdaQueryWrapper.ne(sysDictTypeUpdModel.getDictId() != null, SysDictType::getDictId, dictId);
|
||||
if (this.count(lambdaQueryWrapper) > 0) {
|
||||
return UserConstants.NOT_UNIQUE;
|
||||
}
|
||||
|
|
|
@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|||
import com.muyu.common.core.utils.StringUtils;
|
||||
import com.muyu.common.core.web.page.PageQueryModel;
|
||||
import com.muyu.common.system.domain.SysLogininfor;
|
||||
import com.muyu.system.domain.model.SysLogininforAddModel;
|
||||
import com.muyu.system.domain.model.SysLogininforExportModel;
|
||||
import com.muyu.system.domain.model.SysLogininforListModel;
|
||||
import com.muyu.system.mapper.SysLogininforMapper;
|
||||
|
@ -14,6 +15,7 @@ import com.muyu.system.service.SysLogininforService;
|
|||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -30,10 +32,12 @@ public class SysLogininforServiceImpl extends ServiceImpl<SysLogininforMapper, S
|
|||
/**
|
||||
* 新增系统登录日志
|
||||
*
|
||||
* @param logininfor 访问日志对象
|
||||
* @param logininforAddModel 访问日志对象
|
||||
*/
|
||||
@Override
|
||||
public void insertLogininfor (SysLogininfor logininfor) {
|
||||
public void insertLogininfor (SysLogininforAddModel logininforAddModel) {
|
||||
SysLogininfor logininfor = SysLogininforAddModel.of(logininforAddModel);
|
||||
logininfor.setAccessTime(new Date());
|
||||
this.save(logininfor);
|
||||
}
|
||||
|
||||
|
@ -45,14 +49,18 @@ public class SysLogininforServiceImpl extends ServiceImpl<SysLogininforMapper, S
|
|||
* @return 登录记录集合
|
||||
*/
|
||||
@Override
|
||||
public PageQueryModel<SysLogininfor> pageQuery(SysLogininforListModel pageQueryModel) {
|
||||
LambdaQueryWrapper<SysLogininfor> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.like(StringUtils.isNotEmpty(pageQueryModel.getIpaddr()), SysLogininfor::getIpaddr, pageQueryModel.getIpaddr());
|
||||
queryWrapper.eq(StringUtils.isNotEmpty(pageQueryModel.getStatus()), SysLogininfor::getStatus, pageQueryModel.getStatus());
|
||||
queryWrapper.like(StringUtils.isNotEmpty(pageQueryModel.getUserName()), SysLogininfor::getUserName, pageQueryModel.getUserName());
|
||||
queryWrapper.between(!ObjectUtil.hasNull(pageQueryModel.getBeginTime(),pageQueryModel.getEndTime()), SysLogininfor::getAccessTime, pageQueryModel.getBeginTime(), pageQueryModel.getEndTime());
|
||||
Page<SysLogininfor> page = this.page(pageQueryModel.buildPage(), queryWrapper);
|
||||
return PageQueryModel.of(page);
|
||||
public PageQueryModel<SysLogininforListModel> pageQuery(SysLogininforListModel pageQueryModel) {
|
||||
Page<SysLogininfor> page = this.page(pageQueryModel.buildPage(), new LambdaQueryWrapper<SysLogininfor>()
|
||||
.like(StringUtils.isNotEmpty(pageQueryModel.getIpaddr()), SysLogininfor::getIpaddr, pageQueryModel.getIpaddr())
|
||||
.eq(StringUtils.isNotEmpty(pageQueryModel.getStatus()), SysLogininfor::getStatus, pageQueryModel.getStatus())
|
||||
.like(StringUtils.isNotEmpty(pageQueryModel.getUserName()), SysLogininfor::getUserName, pageQueryModel.getUserName())
|
||||
.between(!ObjectUtil.hasNull(pageQueryModel.getBeginTime(),pageQueryModel.getEndTime()), SysLogininfor::getAccessTime, pageQueryModel.getBeginTime(), pageQueryModel.getEndTime()));
|
||||
return new PageQueryModel<SysLogininforListModel>(){{
|
||||
setDataList(page.getRecords().stream()
|
||||
.map(SysLogininforListModel::buildSysLogininforListModel)
|
||||
.toList());
|
||||
setTotal(page.getTotal());
|
||||
}};
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -9,6 +9,9 @@ import com.muyu.common.security.utils.SecurityUtils;
|
|||
import com.muyu.common.system.domain.SysRole;
|
||||
import com.muyu.common.system.domain.SysUser;
|
||||
import com.muyu.system.domain.SysMenu;
|
||||
import com.muyu.system.domain.model.SysMenuAddModel;
|
||||
import com.muyu.system.domain.model.SysMenuListModel;
|
||||
import com.muyu.system.domain.model.SysMenuUpdModel;
|
||||
import com.muyu.system.domain.vo.MetaVo;
|
||||
import com.muyu.system.domain.vo.RouterVo;
|
||||
import com.muyu.system.domain.vo.TreeSelect;
|
||||
|
@ -48,35 +51,39 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
|||
* @return 菜单列表
|
||||
*/
|
||||
@Override
|
||||
public List<SysMenu> selectMenuList (Long userId) {
|
||||
return selectMenuList(new SysMenu(), userId);
|
||||
public List<SysMenuListModel> selectMenuList (Long userId) {
|
||||
return selectMenuList(new SysMenuListModel(), userId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询系统菜单列表
|
||||
*
|
||||
* @param menu 菜单信息
|
||||
* @param sysMenuListModel 菜单信息
|
||||
*
|
||||
* @return 菜单列表
|
||||
*/
|
||||
@Override
|
||||
public List<SysMenu> selectMenuList (SysMenu menu, Long userId) {
|
||||
public List<SysMenuListModel> selectMenuList (SysMenuListModel sysMenuListModel, Long userId) {
|
||||
List<SysMenu> menuList = null;
|
||||
// 管理员显示所有菜单信息
|
||||
if (SysUser.isAdmin(userId)) {
|
||||
LambdaQueryWrapper<SysMenu> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.like(StringUtils.isNotBlank(menu.getMenuName()), SysMenu::getMenuName, menu.getMenuName());
|
||||
lambdaQueryWrapper.eq(StringUtils.isNotBlank(menu.getVisible()), SysMenu::getVisible, menu.getVisible());
|
||||
lambdaQueryWrapper.eq(StringUtils.isNotEmpty(menu.getStatus()), SysMenu::getStatus, menu.getStatus());
|
||||
lambdaQueryWrapper.like(StringUtils.isNotBlank(sysMenuListModel.getMenuName()), SysMenu::getMenuName, sysMenuListModel.getMenuName());
|
||||
lambdaQueryWrapper.eq(StringUtils.isNotBlank(sysMenuListModel.getVisible()), SysMenu::getVisible, sysMenuListModel.getVisible());
|
||||
lambdaQueryWrapper.eq(StringUtils.isNotEmpty(sysMenuListModel.getStatus()), SysMenu::getStatus, sysMenuListModel.getStatus());
|
||||
lambdaQueryWrapper.orderByAsc(
|
||||
SysMenu::getParentId, SysMenu::getOrderNum
|
||||
);
|
||||
menuList = this.list(lambdaQueryWrapper);
|
||||
} else {
|
||||
SysMenu menu = SysMenu.of(sysMenuListModel);
|
||||
menu.getParams().put("userId", userId);
|
||||
menuList = menuMapper.selectMenuListByUserId(menu);
|
||||
}
|
||||
return menuList;
|
||||
|
||||
return menuList.stream()
|
||||
.map(SysMenuListModel::buildSysMenuListModel)
|
||||
.toList();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -247,8 +254,8 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
|||
* @return 下拉树结构列表
|
||||
*/
|
||||
@Override
|
||||
public List<TreeSelect> buildMenuTreeSelect (List<SysMenu> menus) {
|
||||
List<SysMenu> menuTrees = buildMenuTree(menus);
|
||||
public List<TreeSelect> buildMenuTreeSelect (List<SysMenuListModel> menus) {
|
||||
List<SysMenu> menuTrees = buildMenuTree(menus.stream().map(SysMenu::buildSysMenu).collect(Collectors.toList()));
|
||||
return menuTrees.stream().map(TreeSelect::new).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
|
@ -296,25 +303,26 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
|||
/**
|
||||
* 新增保存菜单信息
|
||||
*
|
||||
* @param menu 菜单信息
|
||||
* @param sysMenuAddModel 菜单信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public void insertMenu (SysMenu menu) {
|
||||
public void insertMenu (SysMenuAddModel sysMenuAddModel) {
|
||||
SysMenu menu = SysMenu.buildSysMenu(sysMenuAddModel);
|
||||
this.save(menu);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改保存菜单信息
|
||||
*
|
||||
* @param menu 菜单信息
|
||||
* @param sysMenuUpdModel 菜单信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public void updateMenu (SysMenu menu) {
|
||||
this.updateById(menu);
|
||||
public void updateMenu (SysMenuUpdModel sysMenuUpdModel) {
|
||||
this.updateById(SysMenu.buildSysMenu(sysMenuUpdModel));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -332,12 +340,13 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
|||
/**
|
||||
* 校验菜单名称是否唯一
|
||||
*
|
||||
* @param menu 菜单信息
|
||||
* @param sysMenuAddModel 菜单信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public boolean checkMenuNameUnique (SysMenu menu) {
|
||||
public boolean checkMenuNameUnique (SysMenuAddModel sysMenuAddModel) {
|
||||
SysMenu menu = SysMenu.buildSysMenu(sysMenuAddModel);
|
||||
LambdaQueryWrapper<SysMenu> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(SysMenu::getMenuName, menu.getMenuName());
|
||||
lambdaQueryWrapper.ne(menu.getMenuId() != null, SysMenu::getParentId, menu.getParentId());
|
||||
|
|
|
@ -6,9 +6,11 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|||
import com.muyu.common.core.constant.UserConstants;
|
||||
import com.muyu.common.core.exception.ServiceException;
|
||||
import com.muyu.common.core.utils.StringUtils;
|
||||
import com.muyu.common.core.web.page.DataPageResp;
|
||||
import com.muyu.common.core.web.page.PageQueryModel;
|
||||
import com.muyu.system.domain.SysPost;
|
||||
import com.muyu.system.domain.model.SysPostPageQueryModel;
|
||||
import com.muyu.system.domain.model.*;
|
||||
import com.muyu.system.domain.resp.SysPostListResp;
|
||||
import com.muyu.system.mapper.SysPostMapper;
|
||||
import com.muyu.system.mapper.SysUserPostMapper;
|
||||
import com.muyu.system.service.SysPostService;
|
||||
|
@ -52,8 +54,8 @@ public class SysPostServiceImpl extends ServiceImpl<SysPostMapper, SysPost> impl
|
|||
* @return 角色对象信息
|
||||
*/
|
||||
@Override
|
||||
public SysPost selectPostById (Long postId) {
|
||||
return getById(postId);
|
||||
public SysPostMyInfoModel selectPostById (Long postId) {
|
||||
return SysPostMyInfoModel.build(getById(postId));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -71,15 +73,25 @@ public class SysPostServiceImpl extends ServiceImpl<SysPostMapper, SysPost> impl
|
|||
/**
|
||||
* 校验岗位名称是否唯一
|
||||
*
|
||||
* @param post 岗位信息
|
||||
* @param sysPostSaveModel 岗位信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public boolean checkPostNameUnique (SysPost post) {
|
||||
public boolean checkPostNameUnique (SysPostSaveModel sysPostSaveModel) {
|
||||
LambdaQueryWrapper<SysPost> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(SysPost::getPostName, post.getPostName());
|
||||
lambdaQueryWrapper.eq(post.getPostId() != null, SysPost::getPostId, post.getPostId());
|
||||
lambdaQueryWrapper.eq(SysPost::getPostName, sysPostSaveModel.getPostName());
|
||||
lambdaQueryWrapper.eq(sysPostSaveModel.getPostId() != null, SysPost::getPostId, sysPostSaveModel.getPostId());
|
||||
if (this.count(lambdaQueryWrapper) != 0) {
|
||||
return UserConstants.NOT_UNIQUE;
|
||||
}
|
||||
return UserConstants.UNIQUE;
|
||||
}
|
||||
@Override
|
||||
public boolean checkEditPostNameUnique (SysPostEditModel sysPostEditModel) {
|
||||
LambdaQueryWrapper<SysPost> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(SysPost::getPostName, sysPostEditModel.getPostName());
|
||||
lambdaQueryWrapper.eq(sysPostEditModel.getPostId() != null, SysPost::getPostId, sysPostEditModel.getPostId());
|
||||
if (this.count(lambdaQueryWrapper) != 0) {
|
||||
return UserConstants.NOT_UNIQUE;
|
||||
}
|
||||
|
@ -89,16 +101,25 @@ public class SysPostServiceImpl extends ServiceImpl<SysPostMapper, SysPost> impl
|
|||
/**
|
||||
* 校验岗位编码是否唯一
|
||||
*
|
||||
* @param post 岗位信息
|
||||
* @param sysPostSaveModel 岗位信息
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public boolean checkPostCodeUnique (SysPost post) {
|
||||
|
||||
public boolean checkPostCodeUnique(SysPostSaveModel sysPostSaveModel) {
|
||||
LambdaQueryWrapper<SysPost> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(SysPost::getPostCode, post.getPostCode());
|
||||
lambdaQueryWrapper.eq(post.getPostId() != null, SysPost::getPostId, post.getPostId());
|
||||
lambdaQueryWrapper.eq(SysPost::getPostCode, sysPostSaveModel.getPostCode());
|
||||
lambdaQueryWrapper.eq(sysPostSaveModel.getPostId() != null, SysPost::getPostId, sysPostSaveModel.getPostId());
|
||||
if (this.count(lambdaQueryWrapper) != 0) {
|
||||
return UserConstants.NOT_UNIQUE;
|
||||
}
|
||||
return UserConstants.UNIQUE;
|
||||
}
|
||||
@Override
|
||||
public boolean checkEditPostCodeUnique(SysPostEditModel sysPostEditModel) {
|
||||
LambdaQueryWrapper<SysPost> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(SysPost::getPostCode, sysPostEditModel.getPostCode());
|
||||
lambdaQueryWrapper.eq(sysPostEditModel.getPostId() != null, SysPost::getPostId, sysPostEditModel.getPostId());
|
||||
if (this.count(lambdaQueryWrapper) != 0) {
|
||||
return UserConstants.NOT_UNIQUE;
|
||||
}
|
||||
|
@ -139,7 +160,7 @@ public class SysPostServiceImpl extends ServiceImpl<SysPostMapper, SysPost> impl
|
|||
@Override
|
||||
public void deletePostByIds (List<Long> postIds) {
|
||||
for (Long postId : postIds) {
|
||||
SysPost post = selectPostById(postId);
|
||||
SysPostMyInfoModel post = selectPostById (postId);
|
||||
if (countUserPostById(postId) > 0) {
|
||||
throw new ServiceException(String.format("%1$s已分配,不能删除", post.getPostName()));
|
||||
}
|
||||
|
@ -178,6 +199,16 @@ public class SysPostServiceImpl extends ServiceImpl<SysPostMapper, SysPost> impl
|
|||
queryWrapper.like(StringUtils.isNotEmpty(sysPostPageQueryModel.getPostName()),SysPost::getPostName, sysPostPageQueryModel.getPostName());
|
||||
queryWrapper.eq(StringUtils.isNotEmpty(sysPostPageQueryModel.getStatus()),SysPost::getStatus, sysPostPageQueryModel.getStatus());
|
||||
Page<SysPost> page = this.page(sysPostPageQueryModel.buildPage(), queryWrapper);
|
||||
|
||||
return PageQueryModel.of(page);
|
||||
}
|
||||
@Override
|
||||
public PageQueryModel<SysPostListModel> getList(SysPostPageQueryModel sysPostPageQueryModel) {
|
||||
LambdaQueryWrapper<SysPost> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.like(StringUtils.isNotEmpty(sysPostPageQueryModel.getPostCode()),SysPost::getPostCode, sysPostPageQueryModel.getPostCode());
|
||||
queryWrapper.like(StringUtils.isNotEmpty(sysPostPageQueryModel.getPostName()),SysPost::getPostName, sysPostPageQueryModel.getPostName());
|
||||
queryWrapper.eq(StringUtils.isNotEmpty(sysPostPageQueryModel.getStatus()),SysPost::getStatus, sysPostPageQueryModel.getStatus());
|
||||
Page<SysPost> page = this.page(sysPostPageQueryModel.buildPage(), queryWrapper);
|
||||
return PageQueryModel.of(page.getTotal(),page.getRecords().stream().map(SysPostListModel::listBuild).toList());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -12,6 +12,7 @@ nacos:
|
|||
spring:
|
||||
main:
|
||||
allow-bean-definition-overriding: true
|
||||
allow-circular-references: true
|
||||
application:
|
||||
# 应用名称
|
||||
name: cloud-system
|
||||
|
|
Loading…
Reference in New Issue