diff --git a/laws-modules/src/main/java/com/jero/modules/laws/part/controller/LawsPartInfoController.java b/laws-modules/src/main/java/com/jero/modules/laws/part/controller/LawsPartInfoController.java new file mode 100644 index 00000000..48633003 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/part/controller/LawsPartInfoController.java @@ -0,0 +1,43 @@ +package com.jero.modules.laws.part.controller; + +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.jero.common.api.vo.Result; +import com.jero.common.aspect.annotation.AutoLog; +import com.jero.modules.laws.part.entity.LawsPartInfo; +import com.jero.modules.laws.part.service.ILawsPartInfoService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import java.util.List; + + +@Api(tags = "业务支持-零件信息") +@RestController +@RequestMapping("/laws/lawsPartInfo") +@Slf4j +public class LawsPartInfoController { + + @Resource + private ILawsPartInfoService lawsPartInfoService; + + /** + * 分页列表查询 + * + * @param lawsPartInfo + * @return + */ + @AutoLog(value = "业务支持-零件信息-列表查询") + @ApiOperation(value = "业务支持-零件信息-列表查询", notes = "业务支持-零件信息-列表查询") + @GetMapping(value = "/list") + @ApiOperationSupport(order = 1) + public Result> queryList(LawsPartInfo lawsPartInfo, HttpServletRequest req) { + List list = lawsPartInfoService.queryList(lawsPartInfo, req); + return Result.OK(list); + } +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/part/controller/LawsPartTypeController.java b/laws-modules/src/main/java/com/jero/modules/laws/part/controller/LawsPartTypeController.java index d4fad6fd..f353193a 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/part/controller/LawsPartTypeController.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/part/controller/LawsPartTypeController.java @@ -6,7 +6,7 @@ import com.jero.common.api.vo.Result; import com.jero.common.api.vo.ResultCommon; import com.jero.common.aspect.annotation.AutoLog; import com.jero.common.aspect.annotation.Translation; -import com.jero.modules.laws.marketStandard.entity.LawsMarketStandardDetail; +import com.jero.modules.laws.part.entity.LawsPartRelevance; import com.jero.modules.laws.part.entity.LawsPartType; import com.jero.modules.laws.part.service.ILawsPartTypeService; import io.swagger.annotations.Api; @@ -14,7 +14,6 @@ import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.apache.poi.ss.formula.functions.T; -import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; @@ -22,6 +21,7 @@ import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.util.Arrays; +import java.util.List; import java.util.Map; @@ -188,4 +188,36 @@ public class LawsPartTypeController { public ModelAndView export(LawsPartType lawsPartType, HttpServletRequest request) { return lawsPartTypeService.export(lawsPartType,request); } + + /** + * 根据零件号获取关键零部件名称 + * + * @param lawsPartType + * @return + */ + @AutoLog(value = "业务支持-市场法规清单-根据零件号获取关键零部件名称") + @ApiOperation(value = "业务支持-市场法规清单-根据零件号获取关键零部件名称", notes = "业务支持-市场法规清单-根据零件号获取关键零部件名称") + @GetMapping(value = "/queryByPartNum") + @ApiOperationSupport(order = 2) + @Translation + public Result queryByPartNum(LawsPartType lawsPartType) { + LawsPartRelevance result = lawsPartTypeService.queryByPartNum(lawsPartType.getPartNum()); + return Result.OK(result); + } + + /** + * 获取已有零件对应零件号列表 + * + * @param lawsPartType + * @return + */ + @AutoLog(value = "业务支持-市场法规清单-获取已有零件对应零件号列表") + @ApiOperation(value = "业务支持-市场法规清单-获取已有零件对应零件号列表", notes = "业务支持-市场法规清单-获取已有零件对应零件号列表") + @GetMapping(value = "/queryByPartNumList") + @ApiOperationSupport(order = 2) + @Translation + public Result> queryByPartNumList(LawsPartType lawsPartType) { + List result = lawsPartTypeService.queryByPartNumList(lawsPartType.getPartNum()); + return Result.OK(result); + } } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/part/entity/LawsPartInfo.java b/laws-modules/src/main/java/com/jero/modules/laws/part/entity/LawsPartInfo.java new file mode 100644 index 00000000..8495d7e8 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/part/entity/LawsPartInfo.java @@ -0,0 +1,82 @@ +package com.jero.modules.laws.part.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.Date; + +/** + * 零件信息 + * + * @TableName laws_part_info + */ +@TableName(value ="laws_part_info") +@Data +public class LawsPartInfo implements Serializable { + /** + * 主键ID + */ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键ID") + private String id; + /** + * 创建时间 + */ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @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表示删除 + */ + @TableLogic + @ApiModelProperty(value = "0表示未删除,1表示删除") + private Integer delFlag; + /** + * 零件号 + */ + @ApiModelProperty(value = "零件号") + @Excel(name = "零件号", width = 15) + private String partNum; + + /** + * 零件名称 + */ + @NotBlank(message = "零件名称") + @ApiModelProperty(value = "零件名称") + @Excel(name = "零件名称", width = 15) + private String partName; + + /** + * 零件英文名称 + */ + @ApiModelProperty(value = "零件英文名称") + private String partNameEn; + + /** + * FND+GPC关联 + */ + @ApiModelProperty(value = "FND+GPC关联") + private String fndGpc; +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/part/mapper/LawsPartInfoMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/part/mapper/LawsPartInfoMapper.java new file mode 100644 index 00000000..a17fb7f4 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/part/mapper/LawsPartInfoMapper.java @@ -0,0 +1,13 @@ +package com.jero.modules.laws.part.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.laws.part.entity.LawsPartInfo; + + +public interface LawsPartInfoMapper extends BaseMapper { + +} + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/part/mapper/xml/LawsPartInfoMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/part/mapper/xml/LawsPartInfoMapper.xml new file mode 100644 index 00000000..9b284e39 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/part/mapper/xml/LawsPartInfoMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/part/service/ILawsPartInfoService.java b/laws-modules/src/main/java/com/jero/modules/laws/part/service/ILawsPartInfoService.java new file mode 100644 index 00000000..bb6fc8e5 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/part/service/ILawsPartInfoService.java @@ -0,0 +1,12 @@ +package com.jero.modules.laws.part.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.laws.part.entity.LawsPartInfo; + +import javax.servlet.http.HttpServletRequest; +import java.util.List; + +public interface ILawsPartInfoService extends IService { + + List queryList(LawsPartInfo lawsPartInfo, HttpServletRequest req); +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/part/service/ILawsPartTypeService.java b/laws-modules/src/main/java/com/jero/modules/laws/part/service/ILawsPartTypeService.java index 7c8f6d12..d83f7f9d 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/part/service/ILawsPartTypeService.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/part/service/ILawsPartTypeService.java @@ -33,4 +33,8 @@ public interface ILawsPartTypeService extends IService { void cancellation(LawsPartType lawsPartType); ModelAndView export(LawsPartType lawsPartType, HttpServletRequest request); + + LawsPartRelevance queryByPartNum(String partNum); + + List queryByPartNumList(String partNum); } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/part/service/impl/LawsPartInfoServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/part/service/impl/LawsPartInfoServiceImpl.java new file mode 100644 index 00000000..412af77f --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/part/service/impl/LawsPartInfoServiceImpl.java @@ -0,0 +1,32 @@ +package com.jero.modules.laws.part.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.common.system.query.QueryGenerator; +import com.jero.modules.laws.part.entity.LawsPartInfo; +import com.jero.modules.laws.part.entity.LawsPartType; +import com.jero.modules.laws.part.mapper.LawsPartInfoMapper; +import com.jero.modules.laws.part.service.ILawsPartInfoService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import javax.servlet.http.HttpServletRequest; +import java.util.List; + + +@Service +@Slf4j +public class LawsPartInfoServiceImpl extends ServiceImpl + implements ILawsPartInfoService { + + @Override + public List queryList(LawsPartInfo lawsPartInfo, HttpServletRequest req) { + QueryWrapper queryWrapper = + QueryGenerator.initQueryWrapper(lawsPartInfo, req.getParameterMap()); + return list(queryWrapper); + } +} + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/part/service/impl/LawsPartTypeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/part/service/impl/LawsPartTypeServiceImpl.java index a0da02bc..d2f0dc81 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/part/service/impl/LawsPartTypeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/part/service/impl/LawsPartTypeServiceImpl.java @@ -1,6 +1,7 @@ package com.jero.modules.laws.part.service.impl; import com.alibaba.fastjson.JSON; +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; @@ -12,8 +13,10 @@ import com.jero.common.system.base.controller.JeroController; import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.vo.LoginUser; import com.jero.modules.laws.part.constans.PartConstants; +import com.jero.modules.laws.part.entity.LawsPartRelevance; import com.jero.modules.laws.part.entity.LawsPartType; import com.jero.modules.laws.part.mapper.LawsPartTypeMapper; +import com.jero.modules.laws.part.service.ILawsPartRelevanceService; import com.jero.modules.laws.part.service.ILawsPartTypeService; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.SecurityUtils; @@ -40,6 +43,8 @@ public class LawsPartTypeServiceImpl extends ServiceImpl queryPage(LawsPartType lawsPartType, Integer pageNo, @@ -61,7 +66,19 @@ public class LawsPartTypeServiceImpl extends ServiceImpl queryLawsPartType = new LambdaQueryWrapper<>(); + queryLawsPartType.eq(LawsPartType::getPartNum,partNum); + LawsPartType lawsPartType = getOne(queryLawsPartType,false); + if(Objects.isNull(lawsPartType)){ + throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND); + } + QueryWrapper queryLawsPartRelevance = new QueryWrapper<>(); + queryLawsPartRelevance.gt("FIND_IN_SET(fnd_gpc," + lawsPartType.getFndGpc() + ")", 0); + LawsPartRelevance lawsPartRelevance = lawsPartRelevanceService.getOne(queryLawsPartRelevance,false); + if(Objects.isNull(lawsPartRelevance)){ + throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND); + } + return lawsPartRelevance; + } + + @Override + public List queryByPartNumList(String partNum) { + LambdaQueryWrapper queryLawsPartType = new LambdaQueryWrapper<>(); + queryLawsPartType.select(LawsPartType::getPartRelevanceType); + queryLawsPartType.eq(LawsPartType::getPartNum,partNum); + queryLawsPartType.isNotNull(LawsPartType::getSuccessTime); + List list = list(queryLawsPartType); + return list; + } }