From 83654343ca99b52e2ba3700ddd46367a2e61f06f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= Date: Tue, 30 Jan 2024 15:21:16 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=9B=B6=E9=83=A8?= =?UTF-8?q?=E4=BB=B6=E5=88=86=E7=B1=BB=E6=A0=91=E5=90=8C=E6=AD=A5=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../srms/controller/SrmsApiController.java | 24 +++---- .../docking/srms/entity/LawsPartStandard.java | 65 ++++++++++++++++++ .../srms/mapper/LawsPartStandardMapper.java | 16 +++++ .../srms/mapper/LawsStandardMapper.java | 9 +++ .../mapper/xml/LawsPartStandardMapper.xml | 5 ++ .../srms/mapper/xml/LawsStandardMapper.xml | 3 + .../service/ILawsPartStandardService.java | 14 ++++ .../docking/srms/service/SrmsApiService.java | 10 +++ .../impl/ILawsPartStandardServiceImpl.java | 18 +++++ .../srms/service/impl/SrmsApiServiceImpl.java | 68 +++++++++++++++++-- .../laws/standard/entity/PartName.java | 17 ++++- 11 files changed, 229 insertions(+), 20 deletions(-) create mode 100644 laws-modules-docking/src/main/java/com/jero/modules/docking/srms/entity/LawsPartStandard.java create mode 100644 laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsPartStandardMapper.java create mode 100644 laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsPartStandardMapper.xml create mode 100644 laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/ILawsPartStandardService.java create mode 100644 laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/ILawsPartStandardServiceImpl.java diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/controller/SrmsApiController.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/controller/SrmsApiController.java index 3003ac8b..f1ac16ed 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/controller/SrmsApiController.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/controller/SrmsApiController.java @@ -37,6 +37,7 @@ public class SrmsApiController { private SrmsApiService srmsApiService; private static final String MESSAGE_HEADER = "MessageHeader"; + private static final String RESULT = "Result"; @ApiOperation("获取token") @AutoLog(value = "获取token") @@ -48,7 +49,7 @@ public class SrmsApiController { return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),ResponsesUtil.getJsonErr(re.getMessage(),re.getCode())); } String token = re.getResult().get("token").toString(); - JSONObject jsonResponses = ResponsesUtil.getJsonOk(); + JSONObject jsonResponses = ResponsesUtil.getJsonOk(re.getMessage()); jsonResponses.put("token",token); return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),jsonResponses); }catch (Exception e){ @@ -67,7 +68,7 @@ public class SrmsApiController { return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),ResponsesUtil.getJsonErr(re.getMessage(),re.getCode())); } List list = re.getResult(); - JSONObject jsonResponses = ResponsesUtil.getJsonOk(); + JSONObject jsonResponses = ResponsesUtil.getJsonOk(re.getMessage()); jsonResponses.put("Rows",list); return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),jsonResponses); }catch (Exception e){ @@ -86,7 +87,7 @@ public class SrmsApiController { return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),ResponsesUtil.getJsonErr(re.getMessage(),re.getCode())); } List list = re.getResult(); - JSONObject jsonResponses = ResponsesUtil.getJsonOk(); + JSONObject jsonResponses = ResponsesUtil.getJsonOk(re.getMessage()); jsonResponses.put("Rows",list); return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),jsonResponses); }catch (Exception e){ @@ -105,8 +106,8 @@ public class SrmsApiController { return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),ResponsesUtil.getJsonErr(re.getMessage(),re.getCode())); } List list = re.getResult(); - JSONObject jsonResponses = ResponsesUtil.getJsonOk(); - jsonResponses.put("result",JSON.toJSONString(list)); + JSONObject jsonResponses = ResponsesUtil.getJsonOk(re.getMessage()); + jsonResponses.put(RESULT,JSON.toJSONString(list)); return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),jsonResponses); }catch (Exception e){ log.error("获取所有体系数据异常:",e); @@ -130,8 +131,8 @@ public class SrmsApiController { jsonPage.put("size",page.getSize()); jsonPage.put("total",page.getTotal()); jsonPage.put("Rows_Result",page.getRecords()); - JSONObject jsonResponses = ResponsesUtil.getJsonOk(); - jsonResponses.put("Result",jsonPage); + JSONObject jsonResponses = ResponsesUtil.getJsonOk(re.getMessage()); + jsonResponses.put(RESULT,jsonPage); return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),jsonResponses); }catch (Exception e){ log.error("分页查询标准数据异常:",e); @@ -139,7 +140,7 @@ public class SrmsApiController { } } -// @ApiOperation("零部件分类树同步接口") + @ApiOperation("零部件分类树同步接口") @AutoLog(value = "零部件分类树同步接口") @PostMapping("/syncPartData") public JSONObject syncPartData(@RequestBody JSONObject json, HttpServletRequest req){ @@ -148,8 +149,8 @@ public class SrmsApiController { if(!re.isSuccess()){ return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),ResponsesUtil.getJsonErrUpper(re.getMessage(),re.getCode())); } - JSONObject jsonResponses = ResponsesUtil.getJsonOkUpper(); - jsonResponses.put("Result",re.getResult()); + JSONObject jsonResponses = ResponsesUtil.getJsonOkUpper(re.getMessage()); + jsonResponses.put(RESULT,re.getResult()); return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),jsonResponses); }catch (Exception e){ log.error("零部件分类树同步接口异常:",e); @@ -169,10 +170,9 @@ public class SrmsApiController { if(!re.isSuccess()){ return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),ResponsesUtil.getJsonErrUpper(re.getMessage(),re.getCode())); } - List page = re.getResult(); JSONObject jsonPage = new JSONObject(); JSONObject jsonResponses = ResponsesUtil.getJsonOkUpper(); - jsonResponses.put("Result",jsonPage); + jsonResponses.put(RESULT,jsonPage); return ResponsesUtil.getJsonResult(json.get(MESSAGE_HEADER),jsonResponses); }catch (Exception e){ log.error("E采通获取标准信息异常:",e); diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/entity/LawsPartStandard.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/entity/LawsPartStandard.java new file mode 100644 index 00000000..c279c662 --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/entity/LawsPartStandard.java @@ -0,0 +1,65 @@ +package com.jero.modules.docking.srms.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.util.Date; + +/** + * @author lqt + * @version 1.0 + * @date 2024/1/30 14:05 + */ +@Data +public class LawsPartStandard implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键ID*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键ID") + private String id; + /**分类内部码*/ + @ApiModelProperty(value = "分类内部码") + private String partCategoryNum; + /**分类名称 (编号+名称)*/ + @ApiModelProperty(value = "分类名称 (编号+名称)") + private String partCategoryName; + /**父级分类内部码(根节点0)*/ + @ApiModelProperty(value = "父级分类内部码(根节点0)") + private String parentNum; + /**备用字段1*/ + @ApiModelProperty(value = "备用字段1") + private String remark1; + /**备用字段2*/ + @ApiModelProperty(value = "备用字段2") + private String remark2; + /**备用字段3*/ + @ApiModelProperty(value = "备用字段3") + private String remark3; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private String createBy; + /**创建日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy年MM月dd日 EEEE") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "创建日期") + private Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private String updateBy; + /**更新日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "更新日期") + private Date updateTime; + /**删除状态(0-正常,1-删除)*/ + @ApiModelProperty(value = "删除状态(0-正常,1-删除)") + @TableLogic + private Integer delFlag; +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsPartStandardMapper.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsPartStandardMapper.java new file mode 100644 index 00000000..7508aa05 --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsPartStandardMapper.java @@ -0,0 +1,16 @@ +package com.jero.modules.docking.srms.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.docking.srms.entity.LawsPartStandard; +import org.apache.ibatis.annotations.Mapper; + +/** + * @Description: + * @Author: jero-boot + * @Date: 2023-10-18 + * @Version: V1.0 + */ +@Mapper +public interface LawsPartStandardMapper extends BaseMapper { + +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsStandardMapper.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsStandardMapper.java index c899a3ee..a92ab4a3 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsStandardMapper.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsStandardMapper.java @@ -45,4 +45,13 @@ public interface LawsStandardMapper{ IPage getByLawsStandardPage(Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); + /** + * 更新父级id + * @author LQT + * @date 2024/1/30 15:07 + * @param + * @return void + */ + void updatePartParentId(); + } diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsPartStandardMapper.xml b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsPartStandardMapper.xml new file mode 100644 index 00000000..fc0e61a4 --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsPartStandardMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsStandardMapper.xml b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsStandardMapper.xml index a85d2525..c26ce392 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsStandardMapper.xml +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsStandardMapper.xml @@ -142,4 +142,7 @@ + + update laws_part_name l1 set parent_id = (select id from (select id from laws_part_name l2 where l2.code = l1.parent_code) aa) + diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/ILawsPartStandardService.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/ILawsPartStandardService.java new file mode 100644 index 00000000..cd44a009 --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/ILawsPartStandardService.java @@ -0,0 +1,14 @@ +package com.jero.modules.docking.srms.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.docking.srms.entity.LawsPartStandard; + +/** + * @Description: 系统对接信息 + * @Author: jero-boot + * @Date: 2023-10-18 + * @Version: V1.0 + */ +public interface ILawsPartStandardService extends IService { + +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/SrmsApiService.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/SrmsApiService.java index 67c0a7d3..e88bd4a6 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/SrmsApiService.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/SrmsApiService.java @@ -76,6 +76,16 @@ public interface SrmsApiService { */ Result syncPartData(JSONObject json, HttpServletRequest req); + /** + * 分类树标准法规回写 + * @author LQT + * @date 2024/1/26 16:05 + * @param json + * @param req + * @return com.jero.common.api.vo.Result + */ + Result syncPartStandard(JSONObject json, HttpServletRequest req); + /** * E采通获取标准信息 * @author LQT diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/ILawsPartStandardServiceImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/ILawsPartStandardServiceImpl.java new file mode 100644 index 00000000..f4e3801f --- /dev/null +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/ILawsPartStandardServiceImpl.java @@ -0,0 +1,18 @@ +package com.jero.modules.docking.srms.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.modules.docking.srms.entity.LawsPartStandard; +import com.jero.modules.docking.srms.mapper.LawsPartStandardMapper; +import com.jero.modules.docking.srms.service.ILawsPartStandardService; +import org.springframework.stereotype.Service; + +/** + * @Description: + * @Author: jero-boot + * @Date: 2023-10-18 + * @Version: V1.0 + */ +@Service +public class ILawsPartStandardServiceImpl extends ServiceImpl implements ILawsPartStandardService { + +} diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java index 734bd1a8..af1dd3f6 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java @@ -580,12 +580,71 @@ public class SrmsApiServiceImpl implements SrmsApiService { return url; } + @Override + public Result syncPartData(JSONObject json, HttpServletRequest req) { + try { + // 验证Token有效性 + boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); + if(!tokenOK){ + return Result.error(403,SYS_ERR); + } + } catch (Exception ignored) { + return Result.error(403,SYS_ERR); + } + try { + JSONObject requests = JSON.parseObject(JSON.toJSONString(json.get(REQUESTS))); + JSONArray rows = JSON.parseArray(JSON.toJSONString(requests.get("Rows"))); + if(CollectionUtils.isEmpty(rows)){ + return Result.error(ADD_NOT_NULL); + } + List listPartName = new ArrayList<>(); + for (Object request : rows) { + JSONObject js = JSON.parseObject(JSON.toJSONString(request)); + if(!js.containsKey("PartCategroyNum") || !js.containsKey("PartCategroyName") || !js.containsKey("ParentNum")){ + return Result.error(ADD_NOT_NULL); + } + if(StringUtils.isBlank(js.getString("PartCategroyNum")) + || StringUtils.isBlank(js.getString("PartCategroyName")) + || StringUtils.isBlank(js.getString("ParentNum"))){ + return Result.error(ADD_NOT_NULL); + } + PartName partName = new PartName(); + partName.setCode(js.getString("PartCategroyNum")); + partName.setName(js.getString("PartCategroyName")); + partName.setParentCode(js.getString("ParentNum")); + partName.setRemark1(js.getString("Remark1")); + partName.setRemark2(js.getString("Remark2")); + partName.setRemark3(js.getString("Remark3")); + listPartName.add(partName); + } + if(!CollectionUtils.isEmpty(listPartName)){ + // todo 是否清空数据 + partNameService.saveBatch(listPartName); + // 更新父级id + lawsStandardMapper.updatePartParentId(); + } + return Result.OK("操作成功"); + }catch (Exception e){ + log.error("零部件分类树同步接口异常:",e); + return Result.error("操作失败" + e.getMessage()); + } + } + + @Override + public Result syncPartStandard(JSONObject json, HttpServletRequest req) { + return null; + } @Override public Result> getEStandardInfo(JSONObject json, HttpServletRequest req) { // 验证token - String token = req.getHeader(X_ACCESS_TOKEN); - if(StringUtils.isBlank(token) || !Objects.equals(TokenUtils.getTokenByRequest(req),token)){ + try { + // 验证Token有效性 + boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); + if(!tokenOK){ + return Result.error(403,SYS_ERR); + } + } catch (Exception ignored) { return Result.error(403,SYS_ERR); } JSONObject requests = JSON.parseObject(JSON.toJSONString(json.get(REQUESTS))); @@ -611,9 +670,4 @@ public class SrmsApiServiceImpl implements SrmsApiService { return Result.error("操作失败" + e.getMessage()); } } - - @Override - public Result syncPartData(JSONObject json, HttpServletRequest req) { - return null; - } } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java index 19b95f7f..3a6a3ac9 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java @@ -92,6 +92,21 @@ public class PartName implements Serializable { @ApiModelProperty(value = "一级节点") private String firstNode; + /** + * 父级分类内部码(根节点0) + */ + @ApiModelProperty(value = "父级分类内部码(根节点0)") + private String parentCode; + /**备用字段1*/ + @ApiModelProperty(value = "备用字段1") + private String remark1; + /**备用字段2*/ + @ApiModelProperty(value = "备用字段2") + private String remark2; + /**备用字段3*/ + @ApiModelProperty(value = "备用字段3") + private String remark3; + /** * 子零部件 */ @@ -101,4 +116,4 @@ public class PartName implements Serializable { @TableField(exist = false) private static final long serialVersionUID = 1L; -} \ No newline at end of file +} From 6795b4d0da75c07887c3e48de1e88122eef2b060 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= Date: Tue, 30 Jan 2024 18:00:38 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=88=86=E7=B1=BB=E6=A0=91=E6=A0=87?= =?UTF-8?q?=E5=87=86=E6=B3=95=E8=A7=84=E5=9B=9E=E5=86=99=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/jero/config/shiro/ShiroConfig.java | 2 + .../srms/controller/SrmsApiController.java | 6 +- .../docking/srms/entity/LawsPartStandard.java | 15 +-- .../srms/mapper/LawsStandardMapper.java | 12 +++ .../srms/mapper/xml/LawsStandardMapper.xml | 26 +++++- .../docking/srms/service/SrmsApiService.java | 13 ++- .../srms/service/impl/SrmsApiServiceImpl.java | 93 +++++++++++++++++-- .../src/main/resources/application-dev.yml | 2 + 8 files changed, 148 insertions(+), 21 deletions(-) diff --git a/laws-base/laws-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java b/laws-base/laws-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java index d4a2b16c..28ea4cc8 100644 --- a/laws-base/laws-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java +++ b/laws-base/laws-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java @@ -160,6 +160,8 @@ public class ShiroConfig { filterChainDefinitionMap.put("/srms/getByLawsSystem", "anon"); // 分页查询标准数据 filterChainDefinitionMap.put("/srms/getByLawsStandardPage", "anon"); + // 分页查询标准数据 + filterChainDefinitionMap.put("/srms/syncPartData", "anon"); // 添加自己的过滤器并且取名为jwt Map filterMap = new HashMap<>(1); diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/controller/SrmsApiController.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/controller/SrmsApiController.java index f1ac16ed..9a20b4dc 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/controller/SrmsApiController.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/controller/SrmsApiController.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.jero.common.api.vo.Result; import com.jero.common.aspect.annotation.AutoLog; import com.jero.common.constant.CommonConstant; +import com.jero.modules.docking.srms.entity.LawsPartStandard; import com.jero.modules.docking.srms.service.SrmsApiService; import com.jero.modules.docking.srms.vo.ByFileRows; import com.jero.modules.docking.srms.vo.StandardPageVO; @@ -158,7 +159,10 @@ public class SrmsApiController { } } - + @PostMapping("/syncPartStandard") + public Result syncPartStandard(){ + return srmsApiService.syncPartStandard(); + } // @ApiOperation("E采通获取标准信息") @AutoLog(value = "E采通获取标准信息") diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/entity/LawsPartStandard.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/entity/LawsPartStandard.java index c279c662..466a4b42 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/entity/LawsPartStandard.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/entity/LawsPartStandard.java @@ -24,15 +24,18 @@ public class LawsPartStandard implements Serializable { @TableId(type = IdType.ASSIGN_ID) @ApiModelProperty(value = "主键ID") private String id; + /**标准id*/ + @ApiModelProperty(value = "标准id") + private String standardId; /**分类内部码*/ @ApiModelProperty(value = "分类内部码") private String partCategoryNum; - /**分类名称 (编号+名称)*/ - @ApiModelProperty(value = "分类名称 (编号+名称)") - private String partCategoryName; - /**父级分类内部码(根节点0)*/ - @ApiModelProperty(value = "父级分类内部码(根节点0)") - private String parentNum; + /**标准分类:设计规范:1释放规范:2*/ + @ApiModelProperty(value = "标准分类:设计规范:1释放规范:2") + private String standardPdmType; + /**标准编号*/ + @ApiModelProperty(value = "标准编号") + private String standardNumber; /**备用字段1*/ @ApiModelProperty(value = "备用字段1") private String remark1; diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsStandardMapper.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsStandardMapper.java index a92ab4a3..1e0e3ff5 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsStandardMapper.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/LawsStandardMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.modules.docking.srms.entity.LawsPartStandard; import com.jero.modules.docking.srms.vo.ByFileRows; import com.jero.modules.docking.srms.vo.StandardPageVO; import com.jero.modules.docking.srms.vo.StandardVO; @@ -54,4 +55,15 @@ public interface LawsStandardMapper{ */ void updatePartParentId(); + /** + * 获取所有 标准分类: + * 设计规范:1 + * 释放规范:2 (系统中编码为4) + * @author LQT + * @date 2024/1/30 16:51 + * @param + * @return void + */ + List getSyncPartStandard(); + } diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsStandardMapper.xml b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsStandardMapper.xml index c26ce392..f06f508e 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsStandardMapper.xml +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/mapper/xml/LawsStandardMapper.xml @@ -141,8 +141,32 @@ - + update laws_part_name l1 set parent_id = (select id from (select id from laws_part_name l2 where l2.code = l1.parent_code) aa) + diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/SrmsApiService.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/SrmsApiService.java index e88bd4a6..59603244 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/SrmsApiService.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/SrmsApiService.java @@ -80,11 +80,18 @@ public interface SrmsApiService { * 分类树标准法规回写 * @author LQT * @date 2024/1/26 16:05 - * @param json - * @param req * @return com.jero.common.api.vo.Result */ - Result syncPartStandard(JSONObject json, HttpServletRequest req); + Result syncPartStandard(); + + /** + * 发送分类树标准法规 + * @author LQT + * @date 2024/1/30 17:15 + * @param + * @return com.jero.common.api.vo.Result + */ + void sendPartStandard(); /** * E采通获取标准信息 diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java index af1dd3f6..18e7abb1 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java @@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.google.common.base.CaseFormat; @@ -16,8 +17,10 @@ import com.jero.common.util.RedisUtil; import com.jero.common.util.TokenUtils; import com.jero.modules.docking.srms.dto.ByTokenRequests; import com.jero.modules.docking.srms.dto.ProductDesign; +import com.jero.modules.docking.srms.entity.LawsPartStandard; import com.jero.modules.docking.srms.entity.LawsSysApiInfo; import com.jero.modules.docking.srms.mapper.LawsStandardMapper; +import com.jero.modules.docking.srms.service.ILawsPartStandardService; import com.jero.modules.docking.srms.service.ILawsSysApiInfoService; import com.jero.modules.docking.srms.service.SrmsApiService; import com.jero.modules.docking.srms.vo.*; @@ -43,11 +46,13 @@ import org.apache.shiro.SecurityUtils; import org.jetbrains.annotations.Nullable; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.web.client.RestTemplate; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.net.URLEncoder; import java.nio.charset.StandardCharsets; +import java.text.SimpleDateFormat; import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; @@ -83,6 +88,10 @@ public class SrmsApiServiceImpl implements SrmsApiService { private PartNameService partNameService; @Resource private ILawsSysApiInfoService lawsSysApiInfoService; + @Resource + private ILawsPartStandardService lawsPartStandardService; + @Resource + private RestTemplate restTemplate; @Value("${srms.font_url_pdf}") private String fontUrlPdf; @@ -98,6 +107,8 @@ public class SrmsApiServiceImpl implements SrmsApiService { private String ettonSysCode; @Value("${srms.etton_sys_user}") private String ettonSysUser; + @Value("${srms.part_standard_url}") + private String partStandardUrl; private static final String REQUESTS = "Requests"; private static final String SYS_ERR = "访问受限,token授权过期"; @@ -106,6 +117,12 @@ public class SrmsApiServiceImpl implements SrmsApiService { private static final String PUBLISH_OF_ORIGINAL = "publish_of_original"; private static final String X_ACCESS_TOKEN = "X-Access-Token"; private static final String ADD_NOT_NULL = "必填项不能为空"; + private static final String PART_CATEGROY_NUM = "PartCategroyNum"; + private static final String PART_CATEGROY_NAME = "PartCategroyName"; + private static final String PARENT_NUM = "ParentNum"; + + + @Override public Result getByToken(JSONObject json) { @@ -600,25 +617,29 @@ public class SrmsApiServiceImpl implements SrmsApiService { List listPartName = new ArrayList<>(); for (Object request : rows) { JSONObject js = JSON.parseObject(JSON.toJSONString(request)); - if(!js.containsKey("PartCategroyNum") || !js.containsKey("PartCategroyName") || !js.containsKey("ParentNum")){ + if(!js.containsKey(PART_CATEGROY_NUM) || !js.containsKey(PART_CATEGROY_NAME) || !js.containsKey(PARENT_NUM)){ return Result.error(ADD_NOT_NULL); } - if(StringUtils.isBlank(js.getString("PartCategroyNum")) - || StringUtils.isBlank(js.getString("PartCategroyName")) - || StringUtils.isBlank(js.getString("ParentNum"))){ + if(StringUtils.isBlank(js.getString(PART_CATEGROY_NUM)) + || StringUtils.isBlank(js.getString(PART_CATEGROY_NAME)) + || StringUtils.isBlank(js.getString(PARENT_NUM))){ return Result.error(ADD_NOT_NULL); } PartName partName = new PartName(); - partName.setCode(js.getString("PartCategroyNum")); - partName.setName(js.getString("PartCategroyName")); - partName.setParentCode(js.getString("ParentNum")); + partName.setCode(js.getString(PART_CATEGROY_NUM)); + partName.setName(js.getString(PART_CATEGROY_NAME)); + partName.setParentCode(js.getString(PARENT_NUM)); partName.setRemark1(js.getString("Remark1")); partName.setRemark2(js.getString("Remark2")); partName.setRemark3(js.getString("Remark3")); listPartName.add(partName); } if(!CollectionUtils.isEmpty(listPartName)){ - // todo 是否清空数据 + // 清空数据 + LambdaUpdateWrapper updatePartName = new LambdaUpdateWrapper<>(); + updatePartName.eq(PartName::getDelFlag,"0"); + partNameService.remove(updatePartName); + // 保存数据 partNameService.saveBatch(listPartName); // 更新父级id lawsStandardMapper.updatePartParentId(); @@ -631,8 +652,60 @@ public class SrmsApiServiceImpl implements SrmsApiService { } @Override - public Result syncPartStandard(JSONObject json, HttpServletRequest req) { - return null; + public Result syncPartStandard() { + // 清理数据 + LambdaUpdateWrapper updateLawsPartStandard = new LambdaUpdateWrapper<>(); + updateLawsPartStandard.eq(LawsPartStandard::getDelFlag,"0"); + lawsPartStandardService.remove(updateLawsPartStandard); + // 同步数据到分类树标准法规回写表 + List listLawsPartStandard = lawsStandardMapper.getSyncPartStandard(); + lawsPartStandardService.saveBatch(listLawsPartStandard); + return Result.OK("操作成功"); + } + + @Override + public void sendPartStandard() { + try { + List listLawsPartStandard = lawsPartStandardService.list(); + JSONObject all = new JSONObject(); + JSONObject messageHeader = new JSONObject(); + String date = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()); + // todo Interface_ID,UUID + messageHeader.put("Interface_ID",""); + messageHeader.put("UUID",""); + messageHeader.put("MessageId",""); + messageHeader.put("Sender","SRMS"); + messageHeader.put("Receiver","PDM"); + messageHeader.put("SendDate",date.substring(0,8)); + messageHeader.put("SendTime",date.substring(8)); + all.put("MessageHeader",messageHeader); + List listObj = new ArrayList<>(); + if(!CollectionUtils.isEmpty(listLawsPartStandard)){ + for (LawsPartStandard lawsPartStandard : listLawsPartStandard) { + JSONObject rows = new JSONObject(); + rows.put("PartCategroyNum",lawsPartStandard.getPartCategoryNum()); + rows.put("StandardPdmType",lawsPartStandard.getStandardPdmType()); + rows.put("StandardNumber",lawsPartStandard.getStandardNumber()); + rows.put("Remark1",lawsPartStandard.getRemark1()); + rows.put("Remark2",lawsPartStandard.getRemark2()); + rows.put("Remark3",lawsPartStandard.getRemark3()); + listObj.add(rows); + } + } + JSONObject requests = new JSONObject(); + requests.put("Rows",listObj); + all.put("Requests",requests); + // todo url + JSONObject reData = restTemplate.postForObject(partStandardUrl,all,JSONObject.class); + log.info(JSON.toJSONString(reData)); + if(!Objects.isNull(reData) && reData.containsKey("Success") && Objects.equals("true",reData.getString("Success"))){ + log.info("分类树标准法规回写接口成功"); + }else{ + log.error("分类树标准法规回写接口失败"); + } + }catch (Exception e){ + log.error("分类树标准法规回写接口失败",e); + } } @Override diff --git a/laws-single-startup/src/main/resources/application-dev.yml b/laws-single-startup/src/main/resources/application-dev.yml index 181c244f..97783207 100644 --- a/laws-single-startup/src/main/resources/application-dev.yml +++ b/laws-single-startup/src/main/resources/application-dev.yml @@ -493,3 +493,5 @@ srms: etton_sys_code: ETTON # E彩通默认账户 etton_sys_user: etton + # 分类树标准法规回写接口 url + part_standard_url: From 5331eb5ef65b6df23d3353bdb5a7c66928d6f67c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= Date: Wed, 31 Jan 2024 10:57:52 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=B7=BB=E5=8A=A0token=E6=89=93=E5=8D=B0?= =?UTF-8?q?=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../srms/service/impl/SrmsApiServiceImpl.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java index 18e7abb1..e3a2822d 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/srms/service/impl/SrmsApiServiceImpl.java @@ -163,6 +163,7 @@ public class SrmsApiServiceImpl implements SrmsApiService { // 验证token String token = req.getHeader(X_ACCESS_TOKEN); try { + log.info("token============================" + token); // 验证Token有效性 boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); if(!tokenOK){ @@ -308,6 +309,8 @@ public class SrmsApiServiceImpl implements SrmsApiService { public Result> getByLawsProductDesign(JSONObject json, HttpServletRequest req) { // 验证token try { + String token = req.getHeader(X_ACCESS_TOKEN); + log.info("token============================" + token); // 验证Token有效性 boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); if(!tokenOK){ @@ -363,6 +366,8 @@ public class SrmsApiServiceImpl implements SrmsApiService { public Result> getByLawsSystem(JSONObject json, HttpServletRequest req) { // 验证token try { + String token = req.getHeader(X_ACCESS_TOKEN); + log.info("token============================" + token); // 验证Token有效性 boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); if(!tokenOK){ @@ -446,6 +451,7 @@ public class SrmsApiServiceImpl implements SrmsApiService { // 验证token String token = req.getHeader(X_ACCESS_TOKEN); try { + log.info("token============================" + token); // 验证Token有效性 boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); if(!tokenOK){ @@ -600,6 +606,8 @@ public class SrmsApiServiceImpl implements SrmsApiService { @Override public Result syncPartData(JSONObject json, HttpServletRequest req) { try { + String token = req.getHeader(X_ACCESS_TOKEN); + log.info("token============================" + token); // 验证Token有效性 boolean tokenOK = TokenUtils.verifyToken(req, sysBaseAPI, redisUtil); if(!tokenOK){ @@ -683,7 +691,7 @@ public class SrmsApiServiceImpl implements SrmsApiService { if(!CollectionUtils.isEmpty(listLawsPartStandard)){ for (LawsPartStandard lawsPartStandard : listLawsPartStandard) { JSONObject rows = new JSONObject(); - rows.put("PartCategroyNum",lawsPartStandard.getPartCategoryNum()); + rows.put(PART_CATEGROY_NUM,lawsPartStandard.getPartCategoryNum()); rows.put("StandardPdmType",lawsPartStandard.getStandardPdmType()); rows.put("StandardNumber",lawsPartStandard.getStandardNumber()); rows.put("Remark1",lawsPartStandard.getRemark1()); @@ -694,7 +702,7 @@ public class SrmsApiServiceImpl implements SrmsApiService { } JSONObject requests = new JSONObject(); requests.put("Rows",listObj); - all.put("Requests",requests); + all.put(REQUESTS,requests); // todo url JSONObject reData = restTemplate.postForObject(partStandardUrl,all,JSONObject.class); log.info(JSON.toJSONString(reData));