diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrDetails/controller/SarStandAttrDetailsController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrDetails/controller/SarStandAttrDetailsController.java
index ae190b73..5a759a15 100644
--- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrDetails/controller/SarStandAttrDetailsController.java
+++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrDetails/controller/SarStandAttrDetailsController.java
@@ -5,6 +5,7 @@ import com.adc.da.common.SarTypeEnum;
import com.adc.da.http.PageInfo;
import com.adc.da.http.ResponseMessage;
import com.adc.da.http.Result;
+import com.adc.da.slrs.sarStandAttrDetails.entity.SarStandAttrDetailsDto;
import com.adc.da.slrs.sarStandAttrDetails.page.SarStandAttrDetailsEOPage;
import com.adc.da.slrs.sarStandAttrDetails.service.ISarStandAttrDetailsService;
import com.adc.da.sys.common.SelectionResult;
@@ -15,16 +16,14 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.adc.da.slrs.sarStandAttrDetails.entity.SarStandAttrDetails;
import io.swagger.annotations.Api;
import com.adc.da.base.web.BaseController;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
/**
*
@@ -172,6 +171,24 @@ public class SarStandAttrDetailsController extends BaseController> getListData1(){
+ QueryWrapper queryWrapper=new QueryWrapper<>();
+ queryWrapper.eq("ATTR_TYPE","file");
+ List sarStandAttrDetails=sarStandAttrDetailsEOService.list(queryWrapper);
+ List sarStandAttrDetailsDtos = new ArrayList<>();
+ for (SarStandAttrDetails sarStand:sarStandAttrDetails){
+ SarStandAttrDetailsDto sarStandAttrDetailsDto = new SarStandAttrDetailsDto();
+ BeanUtils.copyProperties(sarStand,sarStandAttrDetailsDto);
+ sarStandAttrDetailsDto.setLabel(sarStandAttrDetailsDto.getAttrName());
+ sarStandAttrDetailsDto.setValue(sarStandAttrDetailsDto.getAttrField());
+ sarStandAttrDetailsDtos.add(sarStandAttrDetailsDto);
+ }
+ return Result.success(sarStandAttrDetailsDtos);
+ }
+
}
diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrDetails/entity/SarStandAttrDetailsDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrDetails/entity/SarStandAttrDetailsDto.java
new file mode 100644
index 00000000..59289406
--- /dev/null
+++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrDetails/entity/SarStandAttrDetailsDto.java
@@ -0,0 +1,115 @@
+package com.adc.da.slrs.sarStandAttrDetails.entity;
+
+import com.adc.da.base.entity.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ *
+ *
+ *
+ *
+ * @author super_liu
+ * @since 2021-06-01
+ */
+@Data
+public class SarStandAttrDetailsDto {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "主键")
+// @TableId("ID")
+ private String id;
+
+ @ApiModelProperty(value = "属性字段")
+// @TableField("ATTR_FIELD")
+ private String attrField;
+
+ private String value;
+
+ @ApiModelProperty(value = "属性名称")
+// @TableField("ATTR_NAME")
+ private String attrName;
+
+ private String label;
+
+ @ApiModelProperty(value = "类型(INPUT_STR字符串输入框,INPUT_NUM数字输入框,SELECT_OPTION下拉框,DATE_PICKER日期选择,FILE文件,TEXTAREA文本框)")
+// @TableField("ATTR_TYPE")
+ private String attrType;
+
+ @ApiModelProperty(value = "属性字段长度")
+// @TableField("ATTR_LEN")
+ private Long attrLen;
+
+ @ApiModelProperty(value = "展示顺序")
+// @TableField("ORDER_NUM")
+ private Long orderNum;
+
+ @ApiModelProperty(value = "是否可编辑(0是,1否)")
+// @TableField("IS_EDIT")
+ private String isEdit;
+
+// @TableField("CREATION_USER")
+ private String creationUser;
+
+ @ApiModelProperty(value = "是否有效")
+// @TableField("VALID_FLAG")
+ private String validFlag;
+
+ @ApiModelProperty(value = "创建时间")
+// @TableField("CREATION_TIME")
+ @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+ private Date creationTime;
+
+ @ApiModelProperty(value = "修改时间")
+// @TableField("MODIFY_TIME")
+ @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+ private Date modifyTime;
+
+ @ApiModelProperty(value = "是否必填")
+// @TableField("IS_MUST")
+ private String isMust;
+
+ @ApiModelProperty(value = "是否展示")
+// @TableField("IS_SHOW_IMP")
+ private String isShowImp;
+
+ @ApiModelProperty(value = "展示区域")
+// @TableField("SHOW_REGION_ID")
+ private String showRegionId;
+
+ @ApiModelProperty(value = "下拉选项所用的值")
+// @TableField("SEL_VAL")
+ private String selVal;
+
+ @ApiModelProperty(value = "模块类型(STAND标准,LAWS政策)")
+// @TableField("SAR_TYPE")
+ private String sarType;
+
+ @ApiModelProperty(value = "是否作为检索条件")
+// @TableField("IS_SEARCH")
+ private String isSearch;
+
+ @ApiModelProperty(value = "是否预警")
+// @TableField("IS_WARN")
+ private String isWarn;
+
+ @ApiModelProperty(value = "是否检索字段")
+// @TableField("IS_JANSUO")
+ private String isJansuo;
+
+// @TableField(exist = false)
+ private String attrValue;
+
+// @TableField(exist = false)
+ private String areaName;
+
+}
diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java
index 70c7df9a..034aa33e 100644
--- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java
+++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java
@@ -31,8 +31,11 @@ public interface SarStandProjectLibraryDao extends BaseMapper getAllStand();
void updateByProjectId(@Param("id")String id, @Param("version")String version);
List updateByProjectIdBath(@Param("id")List id, @Param("version")String version);
+
void deleteByProjectId(@Param("projectId")String projectId);
+ void deleteByProjectIdAndStandId(@Param("projectId")String projectId,@Param("standId")String standId);
+
List selectListByids(@Param("ids") List ids);
List queryProjectGroup(@Param("current")int current,@Param("size")int size,@Param("sarStandProjectLibrary") SarStandProjectLibrary sarStandProjectLibrary);
Integer queryProjectGroupCount(@Param("sarStandProjectLibrary") SarStandProjectLibrary sarStandProjectLibrary);
diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java
index 4e54c974..26ecbf36 100644
--- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java
+++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java
@@ -17,6 +17,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
+import com.mysql.cj.x.protobuf.MysqlxDatatypes;
import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
@@ -138,6 +139,7 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl queryProjectGroup(int current,int size,SarStandProjectLibrary sarStandProjectLibrary) {
+ size = 10000;
List sarStandProjectLibraries=sarStandProjectLibraryDao.queryProjectGroup(current,size,sarStandProjectLibrary);
Integer total=sarStandProjectLibraryDao.queryProjectGroupCount(sarStandProjectLibrary);
Page page=new Page<>();
@@ -460,9 +462,22 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl wrapper1 = new QueryWrapper<>();
- wrapper1.select("ID","STAND_NUMBER","STAND_SORT","STAND_YEAR","STAND_NAME","STAND_EN_NAME","TEXT_STATUS","STAND_TYPE","ISSUE_TIME","(select count(*) from sar_stand_unqualified " +
- " where STAND_ID = r.stand_id and CLOSE_STATE = '1' ) as unCount ","(select count(*) from sar_stand_unqualified" +
- " where STAND_ID = r.stand_id and CLOSE_STATE = '2' ) as counts ",
+ wrapper1.select("ID","STAND_NUMBER","STAND_SORT","STAND_YEAR","STAND_NAME","STAND_EN_NAME","TEXT_STATUS","STAND_TYPE","ISSUE_TIME",
+ "(select count(*) from sar_stand_unqualified ssu " +
+ "inner join sar_stand_project_library pn on pn.project_number = ssu.product_id" +
+ " where ssu.STAND_ID = r.stand_id and ssu.CLOSE_STATE = '1' and pn.id = '" + standId + "') as unCount ",
+
+ "(select count(*) from sar_standard_compliance_product_assess ssu " +
+ "inner join sar_stand_project_library pn on pn.project_number = ssu.product_id" +
+ " where ssu.STAND_ID = r.stand_id and ssu.no_involve is not null and pn.id = '" + standId + "') as isOverCount ",
+
+ "(select count(*) from sar_standard_compliance_product_assess ssu " +
+ "inner join sar_stand_project_library pn on pn.project_number = ssu.product_id" +
+ " where ssu.STAND_ID = r.stand_id and ssu.no_involve is null and pn.id = '" + standId + "') as isCount ",
+
+ "(select count(*) from sar_stand_unqualified ssu " +
+ "inner join sar_stand_project_library pn on pn.project_number = ssu.product_id" +
+ " where ssu.STAND_ID = r.stand_id and ssu.CLOSE_STATE = '2' and pn.id = '" + standId + "') as counts ",
"(select GROUP_CONCAT( DISTINCT DATE_FORMAT( PLAN_CLOSE_TIME, '%Y-%m-%d' ) ORDER BY PLAN_CLOSE_TIME ) from sar_stand_unqualified where " +
" STAND_ID = r.stand_id and CLOSE_STATE = '1' AND PLAN_CLOSE_TIME is NOT NULL ) as endTimes ");
wrapper1.last("INNER JOIN sar_stand_project_relation r ON r.stand_id = sar_standards_info.ID WHERE r.project_id ='" + standId + "'" +
@@ -477,8 +492,19 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl userIPage = new Page<>();
@@ -564,22 +598,14 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl list) {
if(list!=null && !list.isEmpty()){
- for (StandProjectRelationDto relationDto : list){
- SarStandProjectLibrary sarStandProjectLibrary = sarStandProjectLibraryDao.selectById(relationDto.getProjectId());
- if ("G9".equals(sarStandProjectLibrary.getCurrentNode())){
- sarStandProjectLibraryDao.updateFlag(relationDto.getProjectId());
- }else if ("G8".equals(sarStandProjectLibrary.getCurrentNode())){
- sarStandProjectLibraryDao.updateFlag(relationDto.getProjectId());
- }else if ("G7".equals(sarStandProjectLibrary.getCurrentNode())){
- sarStandProjectLibraryDao.updateFlag(relationDto.getProjectId());
- }else if ("G4".equals(sarStandProjectLibrary.getCurrentNode())){
- sarStandProjectLibraryDao.updateFlag(relationDto.getProjectId());
- }
- }
StandProjectRelationDto standProjectRelationDto = list.get(0);
if(standProjectRelationDto!=null && StringUtils.isNotBlank(standProjectRelationDto.getProjectId())){
-// sarStandProjectLibraryDao.updateFlag(standProjectRelationDto.getProjectId());
- sarStandProjectLibraryDao.deleteByProjectId(standProjectRelationDto.getProjectId());
+ sarStandProjectLibraryDao.updateFlag(standProjectRelationDto.getProjectId());
+ }
+ for (StandProjectRelationDto relationDto : list){
+ if (StringUtils.isNotBlank(relationDto.getStandId())) {
+ sarStandProjectLibraryDao.deleteByProjectIdAndStandId(relationDto.getProjectId(), relationDto.getStandId());
+ }
}
sarStandProjectLibraryDao.batchInsert(list);
if(standProjectRelationDto!=null && StringUtils.isNotBlank(standProjectRelationDto.getProjectId())){
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 a1d27dfd..80492274 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
@@ -158,6 +158,14 @@ public class SarStandardsInfo extends BaseEntity {
@TableField(exist = false)
private String endTimes;
+ @ApiModelProperty(value = "符合数量")
+ @TableField(exist = false)
+ private Long isCount;
+
+ @ApiModelProperty(value = "不涉及数量")
+ @TableField(exist = false)
+ private Long isOverCount;
+
// 以下为非表中字段
@TableField(exist = false)
diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandProjectLibrary/SarStandProjectLibraryMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandProjectLibrary/SarStandProjectLibraryMapper.xml
index 6458713f..53bdc979 100644
--- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandProjectLibrary/SarStandProjectLibraryMapper.xml
+++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandProjectLibrary/SarStandProjectLibraryMapper.xml
@@ -32,6 +32,12 @@
project_id= #{projectId}
+
+ delete from sar_stand_project_relation where
+ project_id= #{projectId}
+ and stand_id = #{standId}
+
+
update sar_stand_project_library
@@ -420,8 +426,8 @@