From d7f3fc9f95bcfa5b63dfc9767a9362b004e7a346 Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Fri, 30 Jul 2021 00:48:48 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=9B=BD=E5=86=85=E5=A4=96=E6=A0=87?= =?UTF-8?q?=E5=87=86=20=E5=8F=8D=E5=90=91=E6=A0=87=E5=87=86=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dao/SarStandAttrInfoDao.java | 2 + .../SarStandardsInfoController.java | 11 +-- .../entity/SarStandardsInfo.java | 8 ++ .../service/ISarStandardsInfoService.java | 2 + .../impl/SarStandardsInfoServiceImpl.java | 77 +++++++++++++++++-- .../SarStandAttrInfoMapper.xml | 11 +++ .../SarStandardsInfoMapper.xml | 2 +- 7 files changed, 101 insertions(+), 12 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrInfo/dao/SarStandAttrInfoDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrInfo/dao/SarStandAttrInfoDao.java index bda32502..2eced4cf 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrInfo/dao/SarStandAttrInfoDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrInfo/dao/SarStandAttrInfoDao.java @@ -28,6 +28,8 @@ public interface SarStandAttrInfoDao extends BaseMapper { Map selectStandFieldAndData(@Param("fieldInfo") String fieldInfo, @Param("standId") String standId); + List> selectStandFieldAndDataListMap(@Param("fieldInfo") String fieldInfo, @Param("ids") List ids); + int insertStandAttr(@Param("fieldInfo") String fieldInfo, @Param("fieldValue") String fieldValue); int deleteStandAttrByStandId(@Param("standId") String standId); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java index 8cbf6ece..5e5a1324 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java @@ -1,10 +1,7 @@ package com.adc.da.slrs.sarStandardsInfo.controller; -import cn.afterturn.easypoi.excel.ExcelExportUtil; -import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.hutool.core.util.ZipUtil; -import com.adc.da.att.entity.AttFileEO; import com.adc.da.common.FileUnZip; import com.adc.da.common.ReadExcel; import com.adc.da.exception.AdcDaBaseException; @@ -20,7 +17,6 @@ import com.adc.da.util.LoginUserUtil; import com.adc.da.util.UUIDUtils; import com.adc.da.utils.util.*; import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import io.swagger.annotations.ApiOperation; import org.apache.commons.io.FileUtils; import org.apache.commons.lang3.StringUtils; @@ -42,7 +38,6 @@ import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.*; -import java.net.URLEncoder; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.*; @@ -82,6 +77,12 @@ public class SarStandardsInfoController extends BaseController @Autowired ISarLawsInfoService sarLawsInfoEOService; + @ApiOperation(value="SarStandardsInfoEO|反向标准操作") + @GetMapping(value = "/reverseQueryStand") + public void reverseQueryStand(@RequestParam(name="ids",required=true) String ids, String standName, String type) { + this.sarStandardsInfoEOService.reverseQueryStand(Arrays.asList(ids.split(",")),standName,type); + } + @ApiOperation(value = "|SarStandardsInfoEO|自定义分页查询") @GetMapping("/getSarStandardsInfoPage") //@RequiresPermissions("lawss:sarStandardsInfo:getSarStandardsInfoPage") diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfo.java index f61bd816..efc43ee6 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfo.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfo.java @@ -94,6 +94,14 @@ public class SarStandardsInfo extends BaseEntity { @TableField("REPLACED_STAND_NUM") private String replacedStandNum; + @ApiModelProperty(value = "代替部分标准号") + @TableField("REPLACE_PART_STAND_NUM") + private String replacePartStandNum; + + @ApiModelProperty(value = "被代替部分标准号") + @TableField("REPLACED_PART_STAND_NUM") + private String replacedPartStandNum; + @TableField("CREATION_USER") private String creationUser; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java index b3fc3d01..93aa8d45 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java @@ -17,6 +17,8 @@ import java.util.Map; */ public interface ISarStandardsInfoService extends IService { + void reverseQueryStand(List ids, String standName,String type); + List getSarStandardsInfoPage(SarStandardsInfoEOPage page) throws Exception; void createSarStandardsInfo(SarStandardsInfo sarStandardsInfoEO) throws Exception; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index 247f3cc1..b496c928 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -9,7 +9,6 @@ import com.adc.da.http.Result; import com.adc.da.mq.service.CreateStandMQService; import com.adc.da.person.dao.PersonCollectEODao; import com.adc.da.person.dao.PersonShareEODao; -import com.adc.da.person.entity.PersonMsgEO; import com.adc.da.person.service.IPersonCollectEOService; import com.adc.da.slrs.sarLawsInfo.entity.SarLawsInfo; import com.adc.da.slrs.sarLawsInfo.page.SarLawsInfoEOPage; @@ -39,7 +38,6 @@ import com.adc.da.slrs.sarStandPutTime.entity.SarStandPutTime; import com.adc.da.slrs.sarStandVal.dao.SarStandValDao; import com.adc.da.slrs.sarStandVal.entity.SarStandVal; import com.adc.da.slrs.sarStandardsInfo.entity.*; -import com.adc.da.slrs.sarMenu.service.ISarMenuService; import com.adc.da.slrs.sarStandardsInfo.dao.SarStandardsInfoDao; import com.adc.da.slrs.sarStandardsInfo.service.ISarStandardsInfoService; import com.adc.da.slrs.sarUpdLog.service.ISarUpdLogService; @@ -65,14 +63,23 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; +import java.beans.BeanInfo; +import java.beans.IntrospectionException; +import java.beans.Introspector; +import java.beans.PropertyDescriptor; import java.io.File; +import java.lang.reflect.Field; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Modifier; import java.sql.Clob; import java.text.SimpleDateFormat; import java.util.*; +import java.util.concurrent.atomic.AtomicInteger; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.stream.Collectors; @@ -175,6 +182,60 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl ids, String standName,String type){ + String fieldInfo = InitStandAttrUtil.queryField; + if (StringUtils.isNotBlank(fieldInfo) && StringUtils.isNotBlank(type)) { + List> getAttrListMap = sarStandAttrInfoEODao.selectStandFieldAndDataListMap(fieldInfo, ids); + getAttrListMap.forEach(attrMap -> { + List list = Collections.singletonList(attrMap.get(type).toString()); + list.add(standName); + String reverseStandName = list.stream().map(String::toString).collect(Collectors.joining(",")); + attrMap.put(type,reverseStandName); + SarStandAttrInfo sarStandAttrInfo = map2Object(attrMap,SarStandAttrInfo.class); + sarStandAttrInfoEODao.updateById(sarStandAttrInfo); + }); + } + } + + public static T map2Object(Map map, Class clazz) { + + T obj = null; + try { + BeanInfo bean = Introspector.getBeanInfo(clazz); + PropertyDescriptor[] propertyDescriptorArr = bean.getPropertyDescriptors(); + for (int i = 0; i < propertyDescriptorArr.length; i++) { + PropertyDescriptor propertyDescriptor = propertyDescriptorArr[i]; + String name = propertyDescriptor.getName(); + if(map.containsKey(name)) { + Object value = map.get(name); + if("null".equals(value)) { + value = null; + } + Object[] objArr = new Object[0]; + objArr[0] = value; + try { + propertyDescriptor.getWriteMethod().invoke(obj, objArr); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } catch (IllegalArgumentException e) { + e.printStackTrace(); + } catch (InvocationTargetException e) { + e.printStackTrace(); + } + } + + } + } catch (IntrospectionException e) { + e.printStackTrace(); + } + return obj; + } + /*** * @Description: 分页查询 @@ -436,8 +497,8 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl 0) { // 主要逻辑处理新增的 @@ -1004,8 +1069,8 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl + + + insert into SAR_STAND_ATTR_INFO(${fieldInfo}) values (${fieldValue}) diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml index 2bc31a08..4b56f28b 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml @@ -395,7 +395,7 @@ and country = #{country} - + and ( (concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER,'-',