Commit c8e3209f authored by 王锦盛's avatar 王锦盛

结构调整

parent ed05462a
package com.pms.ocp.common.utils;
import org.apache.commons.lang3.StringUtils;
import java.lang.reflect.Field;
import java.math.BigDecimal;
import java.sql.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* @Auther: wangjian
* @Date: 2022/3/12 13:29
* @Description:数据结构处理工具类
*/
public class DataStructureHandleUtils {
/**
* List<Map<String, Object>> 到 List<T> 数据转换
*/
public static <T> List<T> setList(final List<Map<String, Object>> srcList, Class<T> clazz) {
List<T> list = new ArrayList<>();
for (int i = 0; i < srcList.size(); i++) {
try {
T t = clazz.newInstance();
Field[] fields = t.getClass().getDeclaredFields();
for (Field field : fields) {
if (!"serialVersionUID".equals(field.getName())) {
//设置对象的访问权限,保证对private的属性的访问
field.setAccessible(true);
//读取配置转换字段名,并从map中取出数据
Object v = srcList.get(i).get(field.getName());
field.set(t, convert(v, field.getType()));
}
}
list.add(t);
} catch (Exception ex) {
ex.toString();
}
}
;
return list;
}
/**
* 字段类型转换
*/
private static <T> T convert(Object obj, Class<T> type) throws ParseException {
if (obj != null && StringUtils.isNotBlank(obj.toString())) {
if (type.equals(String.class)) {
return (T) obj.toString();
} else if (type.equals(BigDecimal.class)) {
return (T) new BigDecimal(obj.toString());
} else if (type.equals(Double.class)) {
return (T) Double.valueOf(obj.toString());
} else if (type.equals(Integer.class)) {
return (T) Integer.valueOf(obj.toString());
} else if (type.equals(Date.class)) {
if (obj != null) {
String timeStr = String.valueOf(obj);
String s[] = timeStr.split("T");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return (T) sdf.parse(s[0] + " " + s[1]);
} else {
return null;
}
} else {
//其他类型转换
return (T) obj.toString();
}
}
return null;
}
}
package com.pms.ocp.common.utils;
import java.util.*;
/**
* @Author: admin
* @Description:
* @Date: 2021/12/8 9:31
* @Version: V1.0
*/
public class MapUtils {
/**
* Map 排序
*
* @param map
* @return Map
*/
public static <T> Map<Date, List<T>> treeMapDesc(Map<Date, List<T>> map) {
Map<Date, List<T>> treeMapDesc = new TreeMap<>(new Comparator<Date>() {
@Override
public int compare(Date o1, Date o2) {
return o2.compareTo(o1);
}
});
for (Map.Entry<Date, List<T>> e : map.entrySet()) {
treeMapDesc.put(e.getKey(), e.getValue());
}
return treeMapDesc;
}
}
...@@ -10,7 +10,7 @@ import lombok.Data; ...@@ -10,7 +10,7 @@ import lombok.Data;
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "分页工具类",description = "分页工具类") @ApiModel(value = "分页工具类", description = "分页工具类")
public class PageRequest<T> { public class PageRequest<T> {
private static final long serialVersionUID = 8167917284229912157L; private static final long serialVersionUID = 8167917284229912157L;
......
package com.pms.ocp.common.utils; package com.pms.ocp.common.utils;
import org.apache.commons.lang3.RandomStringUtils;
import java.util.Random; import java.util.Random;
/** /**
* @author zhaochengming * @author zhaochengming
* 随机生成字符串 * 随机生成字符串
*/ */
public class RandomStringUtil { public class RandomStringUtils {
/** /**
* length 字符串长度 * length 字符串长度
......
package com.pms.ocp.controller; package com.pms.ocp.controller;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.pms.ocp.common.utils.ExcelUtils; import com.pms.ocp.common.utils.ExcelUtils;
import com.pms.ocp.model.dto.ModelDTO; import com.pms.ocp.model.dto.ModelDTO;
import com.pms.ocp.model.dto.ModelIssueDTO; import com.pms.ocp.model.dto.ModelIssueDTO;
...@@ -7,6 +9,7 @@ import com.pms.ocp.model.dto.ModelPropertyDTO; ...@@ -7,6 +9,7 @@ import com.pms.ocp.model.dto.ModelPropertyDTO;
import com.pms.ocp.model.dto.ModelRelationDTO; import com.pms.ocp.model.dto.ModelRelationDTO;
import com.pms.ocp.model.entity.Model; import com.pms.ocp.model.entity.Model;
import com.pms.ocp.model.entity.ModelNote; import com.pms.ocp.model.entity.ModelNote;
import com.pms.ocp.model.entity.ModelNoteVO;
import com.pms.ocp.model.vo.ResponseVO; import com.pms.ocp.model.vo.ResponseVO;
import com.pms.ocp.service.*; import com.pms.ocp.service.*;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -14,6 +17,7 @@ import io.swagger.annotations.ApiOperation; ...@@ -14,6 +17,7 @@ import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam; import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
...@@ -21,6 +25,7 @@ import org.springframework.web.multipart.MultipartFile; ...@@ -21,6 +25,7 @@ import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
import static com.pms.ocp.common.constants.CodeEnum.REQUIRED_PARAMETER_EMPTY; import static com.pms.ocp.common.constants.CodeEnum.REQUIRED_PARAMETER_EMPTY;
...@@ -71,8 +76,15 @@ public class ModelBaseController { ...@@ -71,8 +76,15 @@ public class ModelBaseController {
@ApiOperation("模型-查询") @ApiOperation("模型-查询")
@GetMapping("/get/model") @GetMapping("/get/model")
public ResponseVO getModel(@ApiParam(value = "模型订阅编号") @RequestParam(value = "objId", required = false) String objId, public ResponseVO getModel(@ApiParam(value = "模型订阅编号") @RequestParam(value = "objId", required = false) String objId,
@ApiParam(value = "模型编码") @RequestParam(value = "modelCode", required = false) String modelCode) { @ApiParam(value = "模型编码") @RequestParam(value = "modelCode", required = false) String modelCode,
return ResponseVO.ok(modelService.getModelList(objId, modelCode)); @ApiParam(value = "当前页") @RequestParam(value = "currentPage", required = false) Integer currentPage,
@ApiParam(value = "每页数量") @RequestParam(value = "pageSize", required = false) Integer pageSize) {
PageHelper.startPage(currentPage, pageSize);
List<Model> opsVOList = modelService.getModelList(objId, modelCode);
PageInfo<Model> pageInfo = new PageInfo<>(opsVOList);
return ResponseVO.ok(pageInfo);
} }
/** /**
...@@ -201,9 +213,17 @@ public class ModelBaseController { ...@@ -201,9 +213,17 @@ public class ModelBaseController {
@PostMapping("export/model/note") @PostMapping("export/model/note")
public ResponseVO exportModelNote(HttpServletResponse response, public ResponseVO exportModelNote(HttpServletResponse response,
@ApiParam(value = "模型编码") @RequestParam(value = "modelCode", required = false) String modelCode) throws IOException { @ApiParam(value = "模型编码") @RequestParam(value = "modelCode", required = false) String modelCode) throws IOException {
// 查询要导出的数据 // 查询要导出的数据
List<ModelNote> modelNoteList = modelNoteService.getModelNoteList(modelCode); List<ModelNote> modelNoteList = modelNoteService.getModelNoteList(modelCode);
ExcelUtils.exportExcel(response, "测试导出模型事记", "测试导出模型事记", "测试导出模型事记.xlsx", modelNoteList, ModelNote.class);
//users集合转成export集合
List<ModelNoteVO> exportVOList = modelNoteList.stream().map(modelNote -> {
ModelNoteVO vo = new ModelNoteVO();
BeanUtils.copyProperties(modelNote, vo);
return vo;
}).collect(Collectors.toList());
ExcelUtils.exportExcel(response, "测试导出模型事记", "测试导出模型事记", "测试导出模型事记.xlsx", exportVOList, ModelNoteVO.class);
return ResponseVO.ok(); return ResponseVO.ok();
} }
......
package com.pms.ocp.model.entity; package com.pms.ocp.model.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
...@@ -24,7 +26,7 @@ public class Model { ...@@ -24,7 +26,7 @@ public class Model {
* 模型关系编号 * 模型关系编号
* 主键 * 主键
*/ */
@TableField("obj_id") @TableId(value = "obj_id", type = IdType.ASSIGN_ID)
private String objId; private String objId;
/** /**
......
package com.pms.ocp.model.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
/**
* @Auther: wangjian
* @Date: 2022/2/22 16:52
* @Description:模型事记记录对象VO
*/
@ApiModel(value = "模型事记VO对象")
@Data
public class ModelNoteVO {
/**
* 模型事记编号
*/
@ApiModelProperty(value = "模型事记编号")
@TableId(value = "obj_id", type = IdType.ASSIGN_ID)
private String objId;
/**
* 模型编码
*/
@ApiModelProperty(value = "模型事记编号")
private int modelCode;
/**
* 属性编码
*/
@ApiModelProperty(value = "属性代码")
private int propCode;
/**
* 事记类型 0:人工操作,1:流程管控,3:总部下发
*/
@ApiModelProperty(value = "事记类型 0:人工操作,1:流程管控,3:总部下发")
private int auditType;
/**
* 模型异动详情
*/
@ApiModelProperty(value = "模型异动详情")
private String auditMessageJson;
/**
* 异动类型 0:新增,1:迭代
*/
@ApiModelProperty(value = "异动类型 0:新增,1:迭代")
private int operStatus;
/**
* 异动申请人编号
*/
@ApiModelProperty(value = "异动申请人编号")
private String applyUserId;
/**
* 异动申请人姓名
*/
@ApiModelProperty(value = "异动申请人姓名")
private String applyUserName;
/**
* 异动时间
*/
@ApiModelProperty(value = "异动时间")
private long applyTime;
/**
* 版本
*/
@ApiModelProperty(value = "版本")
private String applyVersion;
/**
* 新增时间
*/
@ApiModelProperty(value = "新增时间")
private LocalDateTime auditCtime;
/**
* 异动公司编码
*/
@ApiModelProperty(value = "异动公司编码")
private String auditCompanyCode;
/**
* 提交人编号
*/
@ApiModelProperty(value = "提交人编号")
private String auditUserId;
/**
* 提交人姓名
*/
@ApiModelProperty(value = "提交人姓名")
private String auditUserName;
/**
* 修改时间
*/
@ApiModelProperty(value = "模型事记修改时间")
private LocalDateTime auditMtime;
}
//
// COMMENT ON COLUMN public.ocp_model_audit.obj_id IS '主键是';
// COMMENT ON COLUMN public.ocp_model_audit.model_code IS '模型代码是';
// COMMENT ON COLUMN public.ocp_model_audit.prop_code IS '属性代码';
// COMMENT ON COLUMN public.ocp_model_audit.oper_status IS '异动类型0:新增,1:迭代';
// COMMENT ON COLUMN public.ocp_model_audit.oper_target IS '操作对象0:表,1:属性';
// COMMENT ON COLUMN public.ocp_model_audit.audit_type IS '事记类型0:人工操作,1:流程管控,3:总部下发';
// COMMENT ON COLUMN public.ocp_model_audit.audit_message_json IS '模型异动详情';
// COMMENT ON COLUMN public.ocp_model_audit.apply_user_id IS '异动申请人id';
// COMMENT ON COLUMN public.ocp_model_audit.apply_user_name IS '异动申请人';
// COMMENT ON COLUMN public.ocp_model_audit.apply_time IS '异动时间';
// COMMENT ON COLUMN public.ocp_model_audit.audit_ctime IS '申请时间';
// COMMENT ON COLUMN public.ocp_model_audit.audit_mtime IS '修改时间';
// COMMENT ON COLUMN public.ocp_model_audit.apply_version IS '版本';
// COMMENT ON COLUMN public.ocp_model_audit.audit_company_code IS '异动公司code';
// COMMENT ON COLUMN public.ocp_model_audit.audit_user_id IS '提交人id';
// COMMENT ON COLUMN public.ocp_model_audit.audit_user_name IS '提交人姓名';
...@@ -136,7 +136,6 @@ public class ModelClassifyServiceImpl implements ModelClassifyService { ...@@ -136,7 +136,6 @@ public class ModelClassifyServiceImpl implements ModelClassifyService {
return childList; return childList;
} }
/** /**
* 构建树节点 * 构建树节点
* @author huxiuwu * @author huxiuwu
......
...@@ -5,11 +5,10 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; ...@@ -5,11 +5,10 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pms.ocp.common.utils.RandomStringUtil; import com.pms.ocp.common.utils.RandomStringUtils;
import com.pms.ocp.mapper.OcpApiBaseMapper; import com.pms.ocp.mapper.OcpApiBaseMapper;
import com.pms.ocp.mapper.OcpApiTreeMapper; import com.pms.ocp.mapper.OcpApiTreeMapper;
import com.pms.ocp.model.dto.*; import com.pms.ocp.model.dto.*;
import com.pms.ocp.model.entity.OcpApiBase;
import com.pms.ocp.model.entity.OcpApiGroup; import com.pms.ocp.model.entity.OcpApiGroup;
import com.pms.ocp.service.OcpApiTreeService; import com.pms.ocp.service.OcpApiTreeService;
...@@ -19,11 +18,9 @@ import org.springframework.beans.BeanUtils; ...@@ -19,11 +18,9 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.sql.Date;
import java.sql.Timestamp; import java.sql.Timestamp;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.function.Consumer;
@Service @Service
...@@ -162,7 +159,7 @@ public class OcpApiTreeServiceImpl extends ServiceImpl<OcpApiTreeMapper,OcpApiGr ...@@ -162,7 +159,7 @@ public class OcpApiTreeServiceImpl extends ServiceImpl<OcpApiTreeMapper,OcpApiGr
public boolean insertTree(OcpApiGroupDtos ocpApiGroupDtos) { public boolean insertTree(OcpApiGroupDtos ocpApiGroupDtos) {
Timestamp timestamp = new Timestamp(System.currentTimeMillis()); Timestamp timestamp = new Timestamp(System.currentTimeMillis());
String code = RandomStringUtil.getRandomString(6); String code = RandomStringUtils.getRandomString(6);
boolean flag = true; boolean flag = true;
List<OcpApiGroup> ocpApiGroups = mapper.selectList(null); List<OcpApiGroup> ocpApiGroups = mapper.selectList(null);
for (OcpApiGroup ocpApiGroup : ocpApiGroups) { for (OcpApiGroup ocpApiGroup : ocpApiGroups) {
......
...@@ -3,15 +3,12 @@ package com.pms.ocp.service.impl; ...@@ -3,15 +3,12 @@ package com.pms.ocp.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pms.ocp.common.utils.RandomStringUtil; import com.pms.ocp.common.utils.RandomStringUtils;
import com.pms.ocp.mapper.TenantBasicManagementMapper; import com.pms.ocp.mapper.TenantBasicManagementMapper;
import com.pms.ocp.mapper.TenantMapper; import com.pms.ocp.mapper.TenantMapper;
import com.pms.ocp.model.dto.*; import com.pms.ocp.model.dto.*;
import com.pms.ocp.model.entity.OcpApiGroup;
import com.pms.ocp.model.entity.OcpTenantAudit;
import com.pms.ocp.model.entity.OcpTenantBase; import com.pms.ocp.model.entity.OcpTenantBase;
import com.pms.ocp.model.entity.OcpTenantGroup; import com.pms.ocp.model.entity.OcpTenantGroup;
import com.pms.ocp.service.TenantService; import com.pms.ocp.service.TenantService;
...@@ -118,7 +115,7 @@ public class TenantServiceImpl extends ServiceImpl<TenantMapper, OcpTenantGroup> ...@@ -118,7 +115,7 @@ public class TenantServiceImpl extends ServiceImpl<TenantMapper, OcpTenantGroup>
break; break;
} }
} }
String randomString = RandomStringUtil.getRandomString(6); String randomString = RandomStringUtils.getRandomString(6);
Timestamp timestamp = new Timestamp(System.currentTimeMillis()); Timestamp timestamp = new Timestamp(System.currentTimeMillis());
OcpTenantGroup ocpTenantGroup = new OcpTenantGroup(); OcpTenantGroup ocpTenantGroup = new OcpTenantGroup();
BeanUtils.copyProperties(tenanBaseDto,ocpTenantGroup); BeanUtils.copyProperties(tenanBaseDto,ocpTenantGroup);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment