机台,标签-配置数据压缩

This commit is contained in:
liuzhaotian
2024-06-11 16:39:01 +08:00
parent 5de9bff802
commit 6b861b4ea4
24 changed files with 470 additions and 189 deletions
@@ -52,7 +52,7 @@ public class MachineApiImpl implements MachineApi {
.id(cutting.getId())
.machineType(cutting.getMachineType())
.name(cutting.getName())
.setting(cutting.getMachineSettingDO().toJSONString())
.setting(JsonUtils.unzipString(cutting.getMachineSettingDO().toJSONString()))
.label(JsonUtils.toJsonString(label))
.build();
return success(machineDTO);
@@ -3,6 +3,7 @@ package com.cf.imes.module.system.controller.admin.label;
import com.cf.imes.framework.common.pojo.CommonResult;
import com.cf.imes.framework.common.pojo.PageParam;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.util.json.JsonUtils;
import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.framework.excel.core.util.ExcelUtils;
import com.cf.imes.framework.operatelog.core.annotations.OperateLog;
@@ -23,6 +24,8 @@ import javax.validation.Valid;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import static com.cf.imes.framework.common.pojo.CommonResult.success;
import static com.cf.imes.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
@@ -103,7 +106,8 @@ public class LabelController {
public void exportLabelExcel(@Valid LabelPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<LabelDO> list = labelService.getLabelPage(pageReqVO).getList();
List<LabelDO> list = labelService.getLabelPage(pageReqVO).getList()
.stream().map(m->m.setTemplate(JsonUtils.unzipString(m.getTemplate()))).collect(Collectors.toList());
// 导出 Excel
ExcelUtils.write(response, "标签.xls", "数据", LabelRespVO.class,
BeanUtils.toBean(list, LabelRespVO.class));
@@ -1,5 +1,6 @@
package com.cf.imes.module.system.controller.admin.labeltemplate;
import com.cf.imes.framework.common.util.json.JsonUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -8,6 +9,8 @@ import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import java.util.*;
import java.io.IOException;
import java.util.stream.Collectors;
import com.cf.imes.framework.common.pojo.PageParam;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.pojo.CommonResult;
@@ -108,7 +111,8 @@ public class LabelTemplateController {
public void exportLabelTemplateExcel(@Valid LabelTemplatePageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<LabelTemplateDO> list = labelTemplateService.getLabelTemplatePage(pageReqVO).getList();
List<LabelTemplateDO> list = labelTemplateService.getLabelTemplatePage(pageReqVO).getList()
.stream().map(m->m.setTemplate(JsonUtils.unzipString(m.getTemplate()))).collect(Collectors.toList());
// 导出 Excel
ExcelUtils.write(response, "标签模板.xls", "数据", LabelTemplateRespVO.class,
BeanUtils.toBean(list, LabelTemplateRespVO.class));
@@ -1,6 +1,7 @@
package com.cf.imes.module.system.convert.machine;
import com.alibaba.fastjson.JSON;
import com.cf.imes.framework.common.util.json.JsonUtils;
import com.cf.imes.module.system.controller.admin.machine.vo.CuttingRespVO;
import com.cf.imes.module.system.controller.admin.machine.vo.CuttingTemplateRespVO;
import com.cf.imes.module.system.controller.admin.machine.vo.CuttingTemplateSaveReqVO;
@@ -27,7 +28,7 @@ public class MachineTemplateConvert {
.machineType(reqVO.getMachineType())
.id(reqVO.getId())
.name(reqVO.getName())
.setting(reqVO.getSetting().toJSONString())
.setting(JsonUtils.zipString(reqVO.getSetting().toJSONString()))
.build();
}
@@ -1,6 +1,7 @@
package com.cf.imes.module.system.service.labeltemplate;
import cn.hutool.core.collection.CollectionUtil;
import com.cf.imes.framework.common.util.json.JsonUtils;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@@ -34,6 +35,7 @@ public class LabelTemplateServiceImpl implements LabelTemplateService {
public Long createLabelTemplate(LabelTemplateSaveReqVO createReqVO) {
// 插入
LabelTemplateDO labelTemplate = BeanUtils.toBean(createReqVO, LabelTemplateDO.class);
labelTemplate.setTemplate(JsonUtils.zipString(labelTemplate.getTemplate()));
labelTemplateMapper.insert(labelTemplate);
// 返回
return labelTemplate.getId();
@@ -45,6 +47,10 @@ public class LabelTemplateServiceImpl implements LabelTemplateService {
validateLabelTemplateExists(updateReqVO.getId());
// 更新
LabelTemplateDO updateObj = BeanUtils.toBean(updateReqVO, LabelTemplateDO.class);
if(!updateReqVO.getTemplate().isEmpty()){
updateObj.setTemplate(JsonUtils.zipString(updateObj.getTemplate()));
}
labelTemplateMapper.updateById(updateObj);
}
@@ -71,6 +77,7 @@ public class LabelTemplateServiceImpl implements LabelTemplateService {
@Override
public LabelTemplateRespVO getLabelTemplate(Long id) {
LabelTemplateDO labelTemplateDO = labelTemplateMapper.selectById(id);
labelTemplateDO.setTemplate(JsonUtils.unzipString(labelTemplateDO.getTemplate()));
LabelTemplateRespVO labelTemplateRespVO = BeanUtils.toBean(labelTemplateDO, LabelTemplateRespVO.class);
return labelTemplateRespVO;
}
@@ -83,7 +90,8 @@ public class LabelTemplateServiceImpl implements LabelTemplateService {
@Override
public Map<String, List<LabelTemplateRespVO>> getGroupList() {
List<LabelTemplateDO> labelTemplateDOS = labelTemplateMapper.selectList();
List<LabelTemplateDO> labelTemplateDOS = labelTemplateMapper.selectList()
.stream().map( m-> m.setTemplate(JsonUtils.unzipString(m.getTemplate()))).collect(Collectors.toList());
List<LabelTemplateRespVO> labelTemplateRespVOS = BeanUtils.toBean(labelTemplateDOS, LabelTemplateRespVO.class);
return labelTemplateRespVOS.stream().collect(Collectors.groupingBy(LabelTemplateRespVO::getType));
}
@@ -99,6 +107,7 @@ public class LabelTemplateServiceImpl implements LabelTemplateService {
throw exception(DEFAULT_TEMPLATE_COUNT);
}
LabelTemplateDO labelTemplateDO = labelTemplateDOS.get(0);
labelTemplateDO.setTemplate(JsonUtils.unzipString(labelTemplateDO.getTemplate()));
LabelTemplateRespVO labelTemplateRespVO = BeanUtils.toBean(labelTemplateDO, LabelTemplateRespVO.class);
return labelTemplateRespVO;
}
@@ -2,6 +2,7 @@ package com.cf.imes.module.system.service.lable;
import cn.hutool.core.collection.CollectionUtil;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.util.json.JsonUtils;
import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.cf.imes.module.system.controller.admin.label.vo.*;
@@ -17,6 +18,7 @@ import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.getUserOrganId;
import static com.cf.imes.module.system.enums.ErrorCodeConstants.LABEL_NOT_EXISTS;
import static com.cf.imes.module.system.enums.ErrorCodeConstants.MACHINE_USE_LABEL;
@@ -41,6 +43,7 @@ public class LabelServiceImpl implements LabelService {
public Long createLabel(LabelSaveReqVO createReqVO) {
// 插入
LabelDO Label = BeanUtils.toBean(createReqVO, LabelDO.class);
Label.setTemplate(JsonUtils.zipString(Label.getTemplate()));
labelMapper.insert(Label);
// 返回
return Label.getId();
@@ -53,6 +56,10 @@ public class LabelServiceImpl implements LabelService {
validateLabelExists(updateReqVO.getId());
// 更新
LabelDO updateObj = BeanUtils.toBean(updateReqVO, LabelDO.class);
if(!updateReqVO.getTemplate().isEmpty()){
updateObj.setTemplate(JsonUtils.zipString(updateObj.getTemplate()));
}
labelMapper.updateById(updateObj);
}
@@ -85,27 +92,40 @@ public class LabelServiceImpl implements LabelService {
@Override
public LabelRespVO getLabel(Long id) {
LabelDO LabelDO = labelMapper.selectById(id);
LabelDO.setTemplate(JsonUtils.unzipString(LabelDO.getTemplate()));
LabelRespVO LabelRespVO = BeanUtils.toBean(LabelDO, LabelRespVO.class);
return LabelRespVO;
}
@Override
public PageResult<LabelDO> getLabelPage(LabelPageReqVO pageReqVO) {
return labelMapper.selectPage(pageReqVO);
PageResult<LabelDO> labelDOPageResult = labelMapper.selectPage(pageReqVO);
labelDOPageResult.setList(labelDOPageResult.getList().stream().map(m -> m.setTemplate(JsonUtils.unzipString(m.getTemplate()))).collect(Collectors.toList()));
return labelDOPageResult;
}
@Override
public Map<String, List<LabelRespVO>> getGroupList(Long organId) {
List<LabelDO> LabelDOS = labelMapper.selectList(new LambdaQueryWrapperX<LabelDO>().eqIfPresent(LabelDO::getOrganId, organId));
List<LabelDO> LabelDOS = labelMapper.selectList(new LambdaQueryWrapperX<LabelDO>()
.eqIfPresent(LabelDO::getOrganId, organId)
/*.eq(LabelDO::getDeleted,false)*/)
.stream().map(m -> m.setTemplate(JsonUtils.unzipString(m.getTemplate()))).collect(Collectors.toList());
List<LabelRespVO> LabelRespVOS = BeanUtils.toBean(LabelDOS, LabelRespVO.class);
return LabelRespVOS.stream().collect(Collectors.groupingBy(LabelRespVO::getType));
}
@Override
public List<LabelDO> list(String type) {
return labelMapper.selectList(new LambdaQueryWrapperX<LabelDO>().eqIfPresent(LabelDO::getType, type));
return labelMapper.selectList(new LambdaQueryWrapperX<LabelDO>()
.eqIfPresent(LabelDO::getType, type)
.eq(LabelDO::getOrganId,getUserOrganId()))
.stream().map( m -> m.setTemplate(JsonUtils.unzipString(m.getTemplate()))).collect(Collectors.toList());
}
@@ -11,6 +11,7 @@ import co.elastic.clients.elasticsearch.core.SearchRequest;
import co.elastic.clients.elasticsearch.core.SearchResponse;
import co.elastic.clients.elasticsearch.core.search.Hit;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.cf.imes.framework.common.util.json.JsonUtils;
import com.cf.imes.framework.es.core.dal.ESDocument;
import com.cf.imes.framework.es.core.service.ESDocumentService;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
@@ -87,6 +88,8 @@ public class MachineServiceImpl implements MachineService {
);
// 插入
MachineDO machineDO = MachineConvert.convert(createReqVO);
// 将机台的配置数据进行压缩
machineDO.setSetting(JsonUtils.zipString(machineDO.getSetting()));
machineMapper.insert(machineDO);
MachineLimitDO machineLimitDO = MachineLimitDO.builder()
.organId(loginUser.getOrganId())
@@ -107,7 +110,12 @@ public class MachineServiceImpl implements MachineService {
validateExists(updateReqVO.getId());
// 更新
MachineDO updateObj = MachineConvert.convert(updateReqVO);
//MachineDO updateObj = BeanUtils.toBean(updateReqVO, MachineDO.class);
// 判断传入的机台配置是否存在,如果存在,压缩数据后更新
if(!updateReqVO.getMachineSettingDO().isEmpty()){
updateObj.setSetting(JsonUtils.zipString(updateObj.getSetting()));
}
// MachineDO updateObj = BeanUtils.toBean(updateReqVO, MachineDO.class);
machineMapper.updateById(updateObj);
}
@@ -133,6 +141,10 @@ public class MachineServiceImpl implements MachineService {
@Override
public CuttingRespVO getCutting(Long id) {
MachineDO machineDO = machineMapper.selectById(id);
// 对机台的配置进行解压
machineDO.setSetting(JsonUtils.unzipString(machineDO.getSetting()));
if (Objects.isNull(machineDO)) {
throw exception(MACHINE_NOT_EXISTS);
}
@@ -312,7 +324,13 @@ public class MachineServiceImpl implements MachineService {
@Override
public PageResult<MachineDO> getPage(MachinePageReqVO pageReqVO) {
return machineMapper.selectPage(pageReqVO);
PageResult<MachineDO> machineDOPageResult = machineMapper.selectPage(pageReqVO);
// 将查询到的机台的数据中的配置信息进行解压
List<MachineDO> list = machineDOPageResult.getList().stream().map(m -> m.setSetting(JsonUtils.unzipString(m.getSetting()))).collect(Collectors.toList());
return machineDOPageResult.setList(list);
}
@@ -13,6 +13,7 @@ import co.elastic.clients.elasticsearch.core.search.Hit;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.cf.imes.framework.common.exception.ServiceException;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.util.json.JsonUtils;
import com.cf.imes.framework.es.core.dal.ESDocument;
import com.cf.imes.framework.es.core.service.ESDocumentService;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
@@ -156,6 +157,7 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
@Transactional(rollbackFor = Exception.class)
public Long createCuttingTemplate(CuttingTemplateSaveReqVO reqVO) {
MachineTemplateDO templateDO = MachineTemplateConvert.convert(reqVO);
templateDO.setSetting(JsonUtils.zipString(templateDO.getSetting()));
machineTemplateMapper.insert(templateDO);
return templateDO.getId();
}
@@ -163,6 +165,10 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
@Override
public Boolean updateCuttingTemplate(CuttingTemplateSaveReqVO reqVO) {
MachineTemplateDO templateDO = MachineTemplateConvert.convert(reqVO);
if(!reqVO.getSetting().isEmpty()){
templateDO.setSetting(JsonUtils.zipString(templateDO.getSetting()));
}
machineTemplateMapper.updateById(templateDO);
return Boolean.TRUE;
}
@@ -170,6 +176,7 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
@Override
public CuttingTemplateRespVO getCuttingTemplateById(String id) {
MachineTemplateDO templateDO = machineTemplateMapper.selectById(id);
templateDO.setSetting(JsonUtils.unzipString(templateDO.getSetting()));
if (Objects.isNull(templateDO)) {
throw exception(MACHINE_TEMPLATE_NOT_EXISTS);
}
@@ -198,6 +205,8 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
throw exception(DEFAULT_TEMPLATE_COUNT);
}
MachineTemplateDO templateDO = machineTemplateDOS.get(0);
// 将机台的模板配置进行解压
templateDO.setSetting(JsonUtils.unzipString(templateDO.getSetting()));
return MachineTemplateConvert.convert1(templateDO);
}
throw exception(DEFAULT_TEMPLATE_NOT_EXISTS);
@@ -224,7 +233,10 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
@Override
public Map<Integer, List<MachineTemplateDO>> getMachineTemplateTree() {
List<MachineTemplateDO> machineTemplateDOS = machineTemplateMapper.selectList();
List<MachineTemplateDO> machineTemplateDOS = machineTemplateMapper.selectList()
// 将机台的配置进行解压
.stream().map(m -> m.setSetting(JsonUtils.unzipString(m.getSetting()))).collect(Collectors.toList());
Map<Integer, List<MachineTemplateDO>> map = machineTemplateDOS.stream().collect(Collectors.groupingBy(MachineTemplateDO::getMachineType));
return map;
}
@@ -393,7 +405,12 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
if(CollectionUtil.isEmpty(machineIds)) {
return new PageResult<>();
}*/
return machineTemplateMapper.selectPage(pageParam, new ArrayList<>());
PageResult<MachineTemplateDO> machineTemplateDOPageResult = machineTemplateMapper.selectPage(pageParam, new ArrayList<>());
// 将机台模板的配置进行解压
machineTemplateDOPageResult.setList(machineTemplateDOPageResult.getList().stream().map(m -> m.setSetting(JsonUtils.unzipString(m.getSetting()))).collect(Collectors.toList()));
return machineTemplateDOPageResult;
}