parent
486c7bd180
commit
67f166eb0b
|
@ -24,6 +24,8 @@ spring :
|
||||||
add-mappings: false
|
add-mappings: false
|
||||||
|
|
||||||
jackson :
|
jackson :
|
||||||
|
date-format: yyyy-MM-dd HH:mm:ss.SSS
|
||||||
|
timezone: GMT+8
|
||||||
default-property-inclusion: non_null
|
default-property-inclusion: non_null
|
||||||
|
|
||||||
datasource:
|
datasource:
|
||||||
|
|
|
@ -5,11 +5,15 @@ import com.cmhi.cf.misc.HelperUtils;
|
||||||
import com.cmhi.cf.restapi.annotation.DecryptionProtocol;
|
import com.cmhi.cf.restapi.annotation.DecryptionProtocol;
|
||||||
import com.cmhi.cf.restapi.annotation.EncryptionProtocol;
|
import com.cmhi.cf.restapi.annotation.EncryptionProtocol;
|
||||||
import com.cmhi.cf.restapi.annotation.OperationLogAnnotation;
|
import com.cmhi.cf.restapi.annotation.OperationLogAnnotation;
|
||||||
|
import com.cmhi.cf.restapi.pojo.base.BasePageResultResp;
|
||||||
|
import com.cmhi.cf.restapi.pojo.base.BasePagedReq;
|
||||||
import com.cmhi.cf.restapi.pojo.base.BaseRespStatus;
|
import com.cmhi.cf.restapi.pojo.base.BaseRespStatus;
|
||||||
import com.cmhi.cf.restapi.pojo.dto.DictContentReq;
|
import com.cmhi.cf.restapi.pojo.dto.DictContentReq;
|
||||||
import com.cmhi.cf.restapi.pojo.dto.NewUserDictReq;
|
import com.cmhi.cf.restapi.pojo.dto.NewUserDictReq;
|
||||||
import com.cmhi.cf.restapi.pojo.dto.ProtocolReq;
|
import com.cmhi.cf.restapi.pojo.dto.ProtocolReq;
|
||||||
import com.cmhi.cf.restapi.pojo.po.DictContent;
|
import com.cmhi.cf.restapi.pojo.po.DictContent;
|
||||||
|
import com.cmhi.cf.restapi.pojo.po.PageResults;
|
||||||
|
import com.cmhi.cf.restapi.pojo.po.UserDictionary;
|
||||||
import com.cmhi.cf.restapi.pojo.vo.DictContentResp;
|
import com.cmhi.cf.restapi.pojo.vo.DictContentResp;
|
||||||
import com.cmhi.cf.restapi.pojo.vo.DictTypeResp;
|
import com.cmhi.cf.restapi.pojo.vo.DictTypeResp;
|
||||||
import com.cmhi.cf.restapi.pojo.vo.NewUserDictResp;
|
import com.cmhi.cf.restapi.pojo.vo.NewUserDictResp;
|
||||||
|
@ -50,7 +54,7 @@ public class SystemDictController {
|
||||||
.build());
|
.build());
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/enum/allDictContent")
|
@PostMapping("/enum/dictContent")
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
@EncryptionProtocol
|
@EncryptionProtocol
|
||||||
@OperationLogAnnotation(OperationModule = "字典模块", OperationType = "读取", OperationDesc = "获取系统枚举字典详细内容")
|
@OperationLogAnnotation(OperationModule = "字典模块", OperationType = "读取", OperationDesc = "获取系统枚举字典详细内容")
|
||||||
|
@ -61,7 +65,7 @@ public class SystemDictController {
|
||||||
if (validate.isEmpty()) {
|
if (validate.isEmpty()) {
|
||||||
DictContentReq req = mr.getMsgContent();
|
DictContentReq req = mr.getMsgContent();
|
||||||
|
|
||||||
List<DictContent> ret = dictionaryService.getEnumDictionaryContent(req.getDictTpe());
|
List<DictContent> ret = dictionaryService.getUserDictionaryContent(req.getDictTpe());
|
||||||
|
|
||||||
return ProtocolResp.result(DictContentResp.builder()
|
return ProtocolResp.result(DictContentResp.builder()
|
||||||
.sysDict(ret)
|
.sysDict(ret)
|
||||||
|
@ -73,7 +77,7 @@ public class SystemDictController {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@PutMapping("/add")
|
@PutMapping("/user/add")
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
@EncryptionProtocol
|
@EncryptionProtocol
|
||||||
@DecryptionProtocol
|
@DecryptionProtocol
|
||||||
|
@ -92,4 +96,67 @@ public class SystemDictController {
|
||||||
validate.toArray(new String[0]));
|
validate.toArray(new String[0]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/user/upgrade")
|
||||||
|
@ResponseBody
|
||||||
|
@EncryptionProtocol
|
||||||
|
@DecryptionProtocol
|
||||||
|
@OperationLogAnnotation(OperationModule = "字典模块", OperationType = "修改", OperationDesc = "修改用户字典内容")
|
||||||
|
public ProtocolResp<? extends BaseRespStatus> upgradeDictionary(@RequestBody ProtocolReq<NewUserDictReq> mr) {
|
||||||
|
List<String> validate = HelperUtils.validate(mr, ValidGroups.ProtocolCommonValid.class, ValidGroups.DictReqValid.class);
|
||||||
|
// 如果校验通过,validate为空;否则,validate包含未校验通过项
|
||||||
|
if (validate.isEmpty()) {
|
||||||
|
NewUserDictReq req = mr.getMsgContent();
|
||||||
|
dictionaryService.addNewDbDictionary(req.getDictType(), req.getDictName(), req.getRemark());
|
||||||
|
return ProtocolResp.result(NewUserDictResp.builder()
|
||||||
|
.dictType(req.getDictType())
|
||||||
|
.build());
|
||||||
|
} else {
|
||||||
|
return ProtocolResp.result(ErrorCode.ERR_PARAMEXCEPTION, ErrorCode.ERR_PARAMEXCEPTION.getHttpCode(),
|
||||||
|
validate.toArray(new String[0]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/user/allDict")
|
||||||
|
@ResponseBody
|
||||||
|
@EncryptionProtocol
|
||||||
|
@DecryptionProtocol
|
||||||
|
@OperationLogAnnotation(OperationModule = "字典模块", OperationType = "读取", OperationDesc = "获取所有用户字典")
|
||||||
|
public ProtocolResp<? extends BaseRespStatus> getUserDictionary(@RequestBody ProtocolReq<BasePagedReq> mr) {
|
||||||
|
List<String> validate = HelperUtils.validate(mr, ValidGroups.ProtocolCommonValid.class, ValidGroups.BasePagedReqValid.class);
|
||||||
|
// 如果校验通过,validate为空;否则,validate包含未校验通过项
|
||||||
|
if (validate.isEmpty()) {
|
||||||
|
BasePagedReq req = mr.getMsgContent();
|
||||||
|
PageResults<UserDictionary> ret = dictionaryService.getUserDictionary(req.getPageNumber(),
|
||||||
|
req.getPageSize(),
|
||||||
|
req.getTotalSize());
|
||||||
|
return ProtocolResp.result(BasePageResultResp.<UserDictionary>builder()
|
||||||
|
.items(ret)
|
||||||
|
.build());
|
||||||
|
} else {
|
||||||
|
return ProtocolResp.result(ErrorCode.ERR_PARAMEXCEPTION, ErrorCode.ERR_PARAMEXCEPTION.getHttpCode(),
|
||||||
|
validate.toArray(new String[0]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/user/dictContent")
|
||||||
|
@ResponseBody
|
||||||
|
@EncryptionProtocol
|
||||||
|
@DecryptionProtocol
|
||||||
|
@OperationLogAnnotation(OperationModule = "字典模块", OperationType = "读取", OperationDesc = "获取所有用户字典")
|
||||||
|
public ProtocolResp<? extends BaseRespStatus> getUserDictionaryContent(@RequestBody ProtocolReq<DictContentReq> mr) {
|
||||||
|
List<String> validate = HelperUtils.validate(mr, ValidGroups.ProtocolCommonValid.class, ValidGroups.DictReqValid.class);
|
||||||
|
// 如果校验通过,validate为空;否则,validate包含未校验通过项
|
||||||
|
if (validate.isEmpty()) {
|
||||||
|
DictContentReq req = mr.getMsgContent();
|
||||||
|
List<DictContent> ret = dictionaryService.getUserDictionaryContent(req.getDictTpe());
|
||||||
|
|
||||||
|
return ProtocolResp.result(DictContentResp.builder()
|
||||||
|
.sysDict(ret)
|
||||||
|
.build());
|
||||||
|
} else {
|
||||||
|
return ProtocolResp.result(ErrorCode.ERR_PARAMEXCEPTION, ErrorCode.ERR_PARAMEXCEPTION.getHttpCode(),
|
||||||
|
validate.toArray(new String[0]));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,7 +5,9 @@ import com.mybatisflex.annotation.Id;
|
||||||
import com.mybatisflex.annotation.KeyType;
|
import com.mybatisflex.annotation.KeyType;
|
||||||
import com.mybatisflex.annotation.Table;
|
import com.mybatisflex.annotation.Table;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
import java.sql.Timestamp;
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@ -18,6 +20,8 @@ import java.sql.Timestamp;
|
||||||
@Data
|
@Data
|
||||||
@Schema(name = "字典数据表")
|
@Schema(name = "字典数据表")
|
||||||
@Table(value = "sys_dict_data")
|
@Table(value = "sys_dict_data")
|
||||||
|
@AllArgsConstructor
|
||||||
|
@NoArgsConstructor
|
||||||
public class DictData {
|
public class DictData {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -4,22 +4,20 @@ import com.cmhi.cf.restapi.pojo.base.BaseRespStatus;
|
||||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||||
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
|
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
|
||||||
import com.houkunlin.system.dict.starter.bean.DictTypeVo;
|
import com.houkunlin.system.dict.starter.bean.DictTypeVo;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
||||||
@Data
|
@Data
|
||||||
|
@Builder
|
||||||
|
@AllArgsConstructor
|
||||||
|
@NoArgsConstructor
|
||||||
@JsonPropertyOrder({"dictName", "dictContent", "status", "message"})
|
@JsonPropertyOrder({"dictName", "dictContent", "status", "message"})
|
||||||
@JsonInclude(JsonInclude.Include.NON_NULL)
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
public class DictContent extends BaseRespStatus {
|
public class DictContent extends BaseRespStatus {
|
||||||
private String dictName;
|
private String dictName;
|
||||||
private DictTypeVo dictContent;
|
private DictTypeVo dictContent;
|
||||||
|
|
||||||
@Builder
|
|
||||||
public DictContent(String dictName, DictTypeVo dictContent, Integer status, String[] message) {
|
|
||||||
super(status, message);
|
|
||||||
this.dictContent = dictContent;
|
|
||||||
this.dictName = dictName;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
package com.cmhi.cf.restapi.pojo.po;
|
||||||
|
|
||||||
|
import com.cmhi.cf.database.common.entity.DictData;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@AllArgsConstructor
|
||||||
|
@NoArgsConstructor
|
||||||
|
@JsonPropertyOrder({"dictName", "dictAlias", "remark", "dictStatus"})
|
||||||
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
|
public class UserDictionary {
|
||||||
|
@JsonProperty("dictAlias")
|
||||||
|
private String dictName;
|
||||||
|
@JsonProperty("dictName")
|
||||||
|
private String dictType;
|
||||||
|
@JsonProperty("dictStatus")
|
||||||
|
private String status;
|
||||||
|
private String createBy;
|
||||||
|
private Timestamp createTime;
|
||||||
|
private String updateBy;
|
||||||
|
private Timestamp updateTime;
|
||||||
|
@JsonProperty("dictRemark")
|
||||||
|
private String remark;
|
||||||
|
List<DictData> dictDataList;
|
||||||
|
}
|
|
@ -1,6 +1,8 @@
|
||||||
package com.cmhi.cf.service;
|
package com.cmhi.cf.service;
|
||||||
|
|
||||||
import com.cmhi.cf.restapi.pojo.po.DictContent;
|
import com.cmhi.cf.restapi.pojo.po.DictContent;
|
||||||
|
import com.cmhi.cf.restapi.pojo.po.PageResults;
|
||||||
|
import com.cmhi.cf.restapi.pojo.po.UserDictionary;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
@ -11,4 +13,8 @@ public interface DictionaryService {
|
||||||
List<DictContent> getEnumDictionaryContent(List<String> dictType);
|
List<DictContent> getEnumDictionaryContent(List<String> dictType);
|
||||||
|
|
||||||
void addNewDbDictionary(String type, String name, String remark);
|
void addNewDbDictionary(String type, String name, String remark);
|
||||||
|
|
||||||
|
PageResults<UserDictionary> getUserDictionary(Long pageNumber, Long pageSize, Long totalSize);
|
||||||
|
|
||||||
|
List<DictContent> getUserDictionaryContent(List<String> dictName);
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,11 +6,19 @@ import com.cmhi.cf.database.common.mapper.DictTypeMapper;
|
||||||
import com.cmhi.cf.exception.CommonErrorCodeException;
|
import com.cmhi.cf.exception.CommonErrorCodeException;
|
||||||
import com.cmhi.cf.restapi.misc.ApiContextUtils;
|
import com.cmhi.cf.restapi.misc.ApiContextUtils;
|
||||||
import com.cmhi.cf.restapi.pojo.po.DictContent;
|
import com.cmhi.cf.restapi.pojo.po.DictContent;
|
||||||
|
import com.cmhi.cf.restapi.pojo.po.PageResults;
|
||||||
|
import com.cmhi.cf.restapi.pojo.po.UserDictionary;
|
||||||
import com.cmhi.cf.service.DictionaryService;
|
import com.cmhi.cf.service.DictionaryService;
|
||||||
|
import com.houkunlin.system.dict.starter.DictUtil;
|
||||||
import com.houkunlin.system.dict.starter.SystemDictStarter;
|
import com.houkunlin.system.dict.starter.SystemDictStarter;
|
||||||
|
import com.houkunlin.system.dict.starter.bean.DictTypeVo;
|
||||||
|
import com.houkunlin.system.dict.starter.notice.RefreshDictTypeEvent;
|
||||||
import com.houkunlin.system.dict.starter.provider.SystemDictProvider;
|
import com.houkunlin.system.dict.starter.provider.SystemDictProvider;
|
||||||
import com.houkunlin.system.dict.starter.store.DictStore;
|
import com.houkunlin.system.dict.starter.store.DictStore;
|
||||||
|
import com.mybatisflex.core.paginate.Page;
|
||||||
|
import com.mybatisflex.core.query.QueryWrapper;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
|
import org.springframework.context.ApplicationEventPublisher;
|
||||||
import org.springframework.dao.DataAccessException;
|
import org.springframework.dao.DataAccessException;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
@ -19,11 +27,16 @@ import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
import static com.cmhi.cf.database.common.entity.table.DictTypeTableDef.DICT_TYPE;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class DictionaryServiceImpl implements DictionaryService {
|
public class DictionaryServiceImpl implements DictionaryService {
|
||||||
@Resource
|
@Resource
|
||||||
private DictTypeMapper dictTypeMapper;
|
private DictTypeMapper dictTypeMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ApplicationEventPublisher publisher;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Set<String> getAllEnumDictionary() {
|
public Set<String> getAllEnumDictionary() {
|
||||||
return SystemDictStarter.getBean(DictStore.class).systemDictTypeKeys();
|
return SystemDictStarter.getBean(DictStore.class).systemDictTypeKeys();
|
||||||
|
@ -39,8 +52,6 @@ public class DictionaryServiceImpl implements DictionaryService {
|
||||||
sysDictList.add(DictContent.builder()
|
sysDictList.add(DictContent.builder()
|
||||||
.dictName(k.getType())
|
.dictName(k.getType())
|
||||||
.dictContent(k)
|
.dictContent(k)
|
||||||
.status(ErrorCode.ERR_OK.getCode())
|
|
||||||
.message(new String[] {ErrorCode.ERR_OK.getDescription()})
|
|
||||||
.build());
|
.build());
|
||||||
}
|
}
|
||||||
allSysDict.add(k.getType());
|
allSysDict.add(k.getType());
|
||||||
|
@ -51,8 +62,6 @@ public class DictionaryServiceImpl implements DictionaryService {
|
||||||
dictType.forEach(k -> sysDictList.add(DictContent.builder()
|
dictType.forEach(k -> sysDictList.add(DictContent.builder()
|
||||||
.dictName(k)
|
.dictName(k)
|
||||||
.dictContent(null)
|
.dictContent(null)
|
||||||
.status(ErrorCode.ERR_NOSUCHITEM.getCode())
|
|
||||||
.message(new String[] {ErrorCode.ERR_NOSUCHITEM.getDescription()})
|
|
||||||
.build()));
|
.build()));
|
||||||
|
|
||||||
return sysDictList;
|
return sysDictList;
|
||||||
|
@ -72,8 +81,65 @@ public class DictionaryServiceImpl implements DictionaryService {
|
||||||
if (dictTypeMapper.insert(dt) != 1) {
|
if (dictTypeMapper.insert(dt) != 1) {
|
||||||
throw new CommonErrorCodeException(ErrorCode.ERR_DATABASE);
|
throw new CommonErrorCodeException(ErrorCode.ERR_DATABASE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 更新字典
|
||||||
|
DictTypeVo.DictTypeBuilder builder = DictTypeVo.newBuilder(type, name, remark);
|
||||||
|
publisher.publishEvent(new RefreshDictTypeEvent(builder.build()));
|
||||||
} catch (DataAccessException e) {
|
} catch (DataAccessException e) {
|
||||||
throw new CommonErrorCodeException(ErrorCode.ERR_ITEMEXISTS, type + ": " + ErrorCode.ERR_ITEMEXISTS.getDescription());
|
throw new CommonErrorCodeException(ErrorCode.ERR_ITEMEXISTS, type + ": " + ErrorCode.ERR_ITEMEXISTS.getDescription());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResults<UserDictionary> getUserDictionary(Long pageNumber, Long pageSize, Long totalSize) {
|
||||||
|
if (totalSize == 0) {
|
||||||
|
totalSize = -1L;
|
||||||
|
}
|
||||||
|
|
||||||
|
QueryWrapper wrapper = QueryWrapper.create()
|
||||||
|
.from(DICT_TYPE)
|
||||||
|
.select();
|
||||||
|
|
||||||
|
Page<UserDictionary> dict = dictTypeMapper.paginateAs(pageNumber, pageSize, totalSize, wrapper, UserDictionary.class);
|
||||||
|
|
||||||
|
return PageResults.<UserDictionary>builder()
|
||||||
|
.items(dict.getRecords())
|
||||||
|
.pageNumber(dict.getPageNumber())
|
||||||
|
.pageSize(dict.getPageSize())
|
||||||
|
.totalPage(dict.getTotalPage())
|
||||||
|
.totalRow(dict.getTotalRow())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<DictContent> getUserDictionaryContent(List<String> dictName) {
|
||||||
|
List<DictContent> resp = new ArrayList<>();
|
||||||
|
|
||||||
|
QueryWrapper wrapper = QueryWrapper.create()
|
||||||
|
.from(DICT_TYPE)
|
||||||
|
.select()
|
||||||
|
.where(DICT_TYPE.DICT_TYPE_.in(dictName));
|
||||||
|
|
||||||
|
List<DictType> ret = dictTypeMapper.selectListWithRelationsByQuery(wrapper);
|
||||||
|
|
||||||
|
ret.forEach(k -> {
|
||||||
|
resp.add(DictContent.builder()
|
||||||
|
.dictName(k.getDictType())
|
||||||
|
.dictContent(DictUtil.getDictType(k.getDictType()))
|
||||||
|
.build());
|
||||||
|
});
|
||||||
|
|
||||||
|
dictName.stream()
|
||||||
|
.filter(k -> ret.stream().noneMatch(v -> v.getDictType().equals(k)))
|
||||||
|
.forEach(m -> {
|
||||||
|
DictContent dt = DictContent.builder()
|
||||||
|
.dictName(m)
|
||||||
|
.build();
|
||||||
|
dt.setStatus(ErrorCode.ERR_NOSUCHITEM.getCode());
|
||||||
|
dt.setMessage(new String[] {ErrorCode.ERR_NOSUCHITEM.getDescription()});
|
||||||
|
resp.add(dt);
|
||||||
|
});
|
||||||
|
|
||||||
|
return resp;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,8 +25,13 @@ public class OperationLogServiceImpl implements OperationLogService {
|
||||||
|
|
||||||
Page<OperationLogSummary> optLog = operationLogDataBaseService.getSystemOperationSummary(pageNumber, pageSize, totalSize, userName);
|
Page<OperationLogSummary> optLog = operationLogDataBaseService.getSystemOperationSummary(pageNumber, pageSize, totalSize, userName);
|
||||||
|
|
||||||
return PageResults.<OperationLogSummary>builder().items(optLog.getRecords()).pageNumber(optLog.getPageNumber()).pageSize(
|
return PageResults.<OperationLogSummary>builder()
|
||||||
optLog.getPageSize()).totalPage(optLog.getTotalPage()).totalRow(optLog.getTotalRow()).build();
|
.items(optLog.getRecords())
|
||||||
|
.pageNumber(optLog.getPageNumber())
|
||||||
|
.pageSize(optLog.getPageSize())
|
||||||
|
.totalPage(optLog.getTotalPage())
|
||||||
|
.totalRow(optLog.getTotalRow())
|
||||||
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -39,9 +39,11 @@ INSERT IGNORE INTO rbac_resource_data VALUES (302, '221c8d8e-c47a-4200-88a8-34d3
|
||||||
INSERT IGNORE INTO rbac_resource_data VALUES (303, '8adf6875-2be4-459e-9c1d-3bb87114cb08', '/api/user/remove', '删除用户', 'DELETE', 0);
|
INSERT IGNORE INTO rbac_resource_data VALUES (303, '8adf6875-2be4-459e-9c1d-3bb87114cb08', '/api/user/remove', '删除用户', 'DELETE', 0);
|
||||||
INSERT IGNORE INTO rbac_resource_data VALUES (304, '4c6c859b-2625-45eb-83b8-1426ff96dbe6', '/api/user/userList', '分页获取当前所有用户', 'POST', 0);
|
INSERT IGNORE INTO rbac_resource_data VALUES (304, '4c6c859b-2625-45eb-83b8-1426ff96dbe6', '/api/user/userList', '分页获取当前所有用户', 'POST', 0);
|
||||||
INSERT IGNORE INTO rbac_resource_data VALUES (400, '8ac928d8-5a6a-47c7-8697-0fb9ebd7249d', '/api/dict/enum/allDict', '获取所以枚举字典列表', 'GET', 0);
|
INSERT IGNORE INTO rbac_resource_data VALUES (400, '8ac928d8-5a6a-47c7-8697-0fb9ebd7249d', '/api/dict/enum/allDict', '获取所以枚举字典列表', 'GET', 0);
|
||||||
INSERT IGNORE INTO rbac_resource_data VALUES (401, '9ecf1662-f891-4829-8d3e-81c42bf22e2a', '/api/dict/enum/allDictContent', '获取枚举字典详细内容', 'POST', 0);
|
INSERT IGNORE INTO rbac_resource_data VALUES (401, '9ecf1662-f891-4829-8d3e-81c42bf22e2a', '/api/dict/enum/dictContent', '获取枚举字典详细内容', 'POST', 0);
|
||||||
INSERT IGNORE INTO rbac_resource_data VALUES (402, 'C083F441-9624-AF2C-B353-0768F9C0A932', '/api/dict/add', '新增用户字典', 'PUT', 0);
|
INSERT IGNORE INTO rbac_resource_data VALUES (402, 'C083F441-9624-AF2C-B353-0768F9C0A932', '/api/dict/user/add', '新增用户字典', 'PUT', 0);
|
||||||
|
INSERT IGNORE INTO rbac_resource_data VALUES (403, '953cea37-cc7a-4e7e-bd86-cb3c14daa8c4', '/api/dict/user/upgrade', '修改用户字典', 'POST', 0);
|
||||||
|
INSERT IGNORE INTO rbac_resource_data VALUES (404, '54b43614-45c6-4672-a1d8-fa8f326d5e53', '/api/dict/user/allDict', '分页获取所有用户字典', 'POST', 0);
|
||||||
|
INSERT IGNORE INTO rbac_resource_data VALUES (405, 'e441dbb4-b844-461c-a5f8-07ee3fa658cc', '/api/dict/user/dictContent', '获取用户字典详细信息', 'POST', 0);
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
-- Records of role_resource
|
-- Records of role_resource
|
||||||
-- (role_id, resource_id, authorize)
|
-- (role_id, resource_id, authorize)
|
||||||
|
@ -63,7 +65,9 @@ INSERT IGNORE INTO rbac_role_resource VALUES (1, 304, 1);
|
||||||
INSERT IGNORE INTO rbac_role_resource VALUES (1, 400, 1);
|
INSERT IGNORE INTO rbac_role_resource VALUES (1, 400, 1);
|
||||||
INSERT IGNORE INTO rbac_role_resource VALUES (1, 401, 1);
|
INSERT IGNORE INTO rbac_role_resource VALUES (1, 401, 1);
|
||||||
INSERT IGNORE INTO rbac_role_resource VALUES (1, 402, 1);
|
INSERT IGNORE INTO rbac_role_resource VALUES (1, 402, 1);
|
||||||
|
INSERT IGNORE INTO rbac_role_resource VALUES (1, 403, 1);
|
||||||
|
INSERT IGNORE INTO rbac_role_resource VALUES (1, 404, 1);
|
||||||
|
INSERT IGNORE INTO rbac_role_resource VALUES (1, 405, 1);
|
||||||
# INSERT IGNORE INTO role_resource (role_id, resource_id, authorize) VALUES (2, 1, 1);
|
# INSERT IGNORE INTO role_resource (role_id, resource_id, authorize) VALUES (2, 1, 1);
|
||||||
# INSERT IGNORE INTO role_resource (role_id, resource_id, authorize) VALUES (2, 2, 1);
|
# INSERT IGNORE INTO role_resource (role_id, resource_id, authorize) VALUES (2, 2, 1);
|
||||||
# INSERT IGNORE INTO role_resource (role_id, resource_id, authorize) VALUES (2, 3, 1);
|
# INSERT IGNORE INTO role_resource (role_id, resource_id, authorize) VALUES (2, 3, 1);
|
||||||
|
|
|
@ -208,7 +208,7 @@ CREATE TABLE IF NOT EXISTS `sys_dict_type`
|
||||||
`create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者',
|
`create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者',
|
||||||
`create_time` datetime(6) NULL DEFAULT CURRENT_TIMESTAMP(6) COMMENT '创建时间',
|
`create_time` datetime(6) NULL DEFAULT CURRENT_TIMESTAMP(6) COMMENT '创建时间',
|
||||||
`update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者',
|
`update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者',
|
||||||
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
|
`update_time` datetime(6) NULL DEFAULT NULL COMMENT '更新时间',
|
||||||
`remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注',
|
`remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注',
|
||||||
`delete_time` datetime NULL DEFAULT NULL COMMENT '逻辑删除标记',
|
`delete_time` datetime NULL DEFAULT NULL COMMENT '逻辑删除标记',
|
||||||
PRIMARY KEY (`id`) USING BTREE,
|
PRIMARY KEY (`id`) USING BTREE,
|
||||||
|
|
Loading…
Reference in New Issue