Browse Source

含水率与档案

qianxb 2 years ago
parent
commit
0043784bae
17 changed files with 180 additions and 29 deletions
  1. 0 9
      blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/vo/ArchiveVo.java
  2. 19 0
      blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/vo/ArchivesAutoVO2.java
  3. 25 0
      blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/vo/CheckoutVO.java
  4. 5 2
      blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/dto/MoistureContentDTO.java
  5. 16 0
      blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchivesAutoController.java
  6. 6 0
      blade-service/blade-archive/src/main/java/org/springblade/archive/mapper/ArchivesAutoMapper.java
  7. 13 0
      blade-service/blade-archive/src/main/java/org/springblade/archive/mapper/ArchivesAutoMapper.xml
  8. 2 0
      blade-service/blade-archive/src/main/java/org/springblade/archive/service/IArchivesAutoService.java
  9. 48 0
      blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchivesAutoServiceImpl.java
  10. 10 0
      blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ExcelTabController.java
  11. 6 4
      blade-service/blade-manager/src/main/java/org/springblade/manager/controller/MixProportionInfoController.java
  12. 2 0
      blade-service/blade-manager/src/main/java/org/springblade/manager/controller/TextdictInfoController.java
  13. 1 1
      blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/ArchiveTreeContractMapper.xml
  14. 1 1
      blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/MixProportionInfoMapper.java
  15. 6 8
      blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/MixProportionInfoMapper.xml
  16. 2 1
      blade-service/blade-manager/src/main/java/org/springblade/manager/service/IMixProportionInfoService.java
  17. 18 3
      blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/MixProportionInfoServiceImpl.java

+ 0 - 9
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/vo/ArchiveVo.java

@@ -1,9 +0,0 @@
-package org.springblade.archive.vo;
-
-/**
- * @author yangyj
- * @Date 2023/2/17 10:40
- * @description TODO
- */
-public class ArchiveVo {
-}

+ 19 - 0
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/vo/ArchivesAutoVO2.java

@@ -0,0 +1,19 @@
+package org.springblade.archive.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.archive.entity.ArchivesAuto;
+
+/**
+ * @author yangyj
+ * @Date 2023/2/17 10:40
+ * @description TODO
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class ArchivesAutoVO2 extends ArchivesAuto {
+
+    @ApiModelProperty("主节点")
+    private String masterNode;
+}

+ 25 - 0
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/vo/CheckoutVO.java

@@ -0,0 +1,25 @@
+package org.springblade.archive.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springblade.archive.entity.ArchivesAuto;
+
+import java.util.List;
+
+/**
+ * @Param    在线验收首页VO
+ * @Author wangwl
+ * @Date 2023/8/23 14:52
+ **/
+@Data
+public class CheckoutVO {
+
+    @ApiModelProperty("节点名称")
+    private String nodeName;
+
+    @ApiModelProperty("档案总数")
+    private Integer total;
+
+    @ApiModelProperty("档案集合")
+    private List<ArchivesAutoVO2> list;
+}

+ 5 - 2
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/dto/MoistureContentDTO.java

@@ -16,8 +16,11 @@ public class MoistureContentDTO {
     @ApiModelProperty(value = "当前位置")
     private String key ;
 
-    @ApiModelProperty(value = "配合比id")
-    private Long mixProportionId ;
+    @ApiModelProperty(value = "合同段id")
+    private String contractId ;
+
+    @ApiModelProperty(value = "设计强度")
+    private String designStrength;
 
     @ApiModelProperty(value = "黄砂含水率")
     private BigDecimal sand ;

+ 16 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchivesAutoController.java

@@ -32,6 +32,7 @@ import org.apache.http.message.BasicNameValuePair;
 import org.springblade.archive.service.IArchiveAutoPdfService;
 import org.springblade.archive.utils.CallBgrsjk;
 import org.springblade.archive.utils.FileUtils;
+import org.springblade.archive.vo.CheckoutVO;
 import org.springblade.business.entity.ArchiveFile;
 import org.springblade.common.constant.CommonConstant;
 import org.springblade.common.utils.CommonUtil;
@@ -628,4 +629,19 @@ public class ArchivesAutoController extends BladeController {
         ArchivesAuto archivesAuto = archivesAutoService.getById(id);
         return R.data(archivesAuto);
     }
+
+	/**
+	 * 在线验收-根据单位显示档案
+	 */
+	@GetMapping("/getUnitArchivesAutoView")
+	@ApiOperationSupport(order = 11)
+	@ApiOperation(value = "在线验收-根据单位显示档案", notes = "传入项目id,和单位类型")
+	@ApiImplicitParams(value = {
+			@ApiImplicitParam(name = "unitType", value = "单位类型,1建设2监理3施工4科研", required = true),
+			@ApiImplicitParam(name = "projectId", value = "项目id", required = true)
+	})
+	public R<List<CheckoutVO>> getArchivesAutoViewByUnit(@RequestParam Integer unitType, Long projectId) {
+		List<CheckoutVO> list = archivesAutoService.getArchivesAutoViewByUnit(unitType,projectId);
+		return R.data(list);
+	}
 }

+ 6 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/mapper/ArchivesAutoMapper.java

@@ -23,6 +23,8 @@ import org.springblade.archive.entity.ArchivesAuto;
 import org.springblade.archive.vo.ArchivesAutoVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.archive.vo.ArchivesAutoVO2;
+import org.springblade.manager.entity.ArchiveTreeContract;
 import org.springblade.system.entity.DictBiz;
 import org.springblade.system.user.entity.User;
 
@@ -151,4 +153,8 @@ public interface ArchivesAutoMapper extends BaseMapper<ArchivesAuto> {
 	List<ArchivesAutoVO> getArchivesCabinet22(@Param("vo") ArchivesAutoVO archivesAuto);
 
 	List<ArchivesAutoVO> pageByArchivesAuto5(@Param("vo") ArchivesAutoVO vo);
+
+    List<ArchiveTreeContract> getUnitNodeByProjectId(@Param("projectId") Long projectId);
+
+	List<ArchivesAutoVO2> getUnitAllArchive(@Param("node") String node);
 }

+ 13 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/mapper/ArchivesAutoMapper.xml

@@ -929,6 +929,19 @@
         select *
         from u_archives_auto uaa WHERE uaa.id = #{id} and is_deleted = 0
     </select>
+    <select id="getUnitNodeByProjectId" resultType="org.springblade.manager.entity.ArchiveTreeContract">
+        SELECT matc1.*
+        FROM m_archive_tree_contract matc1
+        WHERE  matc1.parent_id in (select id from m_archive_tree_contract
+                                   WHERE parent_id = (select id from m_archive_tree_contract WHERE parent_id = 0 and project_id = #{projectId} and is_deleted = 0)
+                                     and is_deleted = 0 and tree_code is NULL)
+          and matc1.is_deleted = 0
+    </select>
+    <select id="getUnitAllArchive" resultType="org.springblade.archive.vo.ArchivesAutoVO2">
+        select SUBSTRING_INDEX(SUBSTRING_INDEX(atc.ancestors,",",4),",",-1) as masterNode,uaa.*
+        from (select * from m_archive_tree_contract WHERE is_deleted = 0 and ancestors like concat('%',#{node},'%')) atc
+                 join u_archives_auto uaa on atc.id = uaa.node_id  and uaa.is_deleted = 0
+    </select>
 
 
     <update id="splitFiles">

+ 2 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/service/IArchivesAutoService.java

@@ -18,6 +18,7 @@ package org.springblade.archive.service;
 
 import org.springblade.archive.entity.ArchivesAuto;
 import org.springblade.archive.vo.ArchivesAutoVO;
+import org.springblade.archive.vo.CheckoutVO;
 import org.springblade.business.entity.ArchiveFile;
 import org.springblade.core.mp.base.BaseService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -102,4 +103,5 @@ public interface IArchivesAutoService extends BaseService<ArchivesAuto> {
 	// 语音搜索
 	R searchInfo(MultipartFile file) throws IOException;
 
+    List<CheckoutVO> getArchivesAutoViewByUnit(Integer unitType, Long projectId);
 }

+ 48 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchivesAutoServiceImpl.java

@@ -39,6 +39,8 @@ import org.springblade.archive.utils.FileUtils;
 import org.springblade.archive.vo.ArchivesAutoVO;
 import org.springblade.archive.mapper.ArchivesAutoMapper;
 import org.springblade.archive.service.IArchivesAutoService;
+import org.springblade.archive.vo.ArchivesAutoVO2;
+import org.springblade.archive.vo.CheckoutVO;
 import org.springblade.business.entity.ArchiveFile;
 import org.springblade.business.feign.ArchiveFileClient;
 import org.springblade.business.feign.MetadataClassificationClient;
@@ -2270,4 +2272,50 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 		}
 		return R.data(jsonObject);
 	}
+
+	/**
+	 * 在线验收-根据单位显示档案
+	 * @param unitType
+	 * @param projectId
+	 * @return
+	 */
+	@Override
+	public List<CheckoutVO> getArchivesAutoViewByUnit(Integer unitType, Long projectId) {
+		//判断单位
+		if (unitType == 1){
+			//获取所有主节点,如果没有档案不显示可以取消
+			List<ArchiveTreeContract> nodes = baseMapper.getUnitNodeByProjectId(projectId);
+			if (nodes == null || nodes.size() <= 0){
+				return null;
+			}
+			String node = nodes.get(0).getAncestors().split(",")[2];
+			//获取建设单位的所有档案
+			List<ArchivesAutoVO2> vo2s = baseMapper.getUnitAllArchive(node);
+			if (vo2s == null || vo2s.size() <= 0){
+				return null;
+			}
+			List<CheckoutVO> list = new ArrayList<>();
+			CheckoutVO vo = new CheckoutVO();
+			vo.setNodeName("建设单位归档资料");
+			vo.setTotal(vo2s.size());
+			list.add(vo);
+			//根据主节点分组
+			Map<String, List<ArchivesAutoVO2>> map = vo2s.parallelStream().collect(Collectors.groupingBy(ArchivesAutoVO2::getMasterNode));
+			//循环主节点并且存入数据
+			for (ArchiveTreeContract contract : nodes) {
+				CheckoutVO v = new CheckoutVO();
+				v.setNodeName(contract.getFullName());
+				List<ArchivesAutoVO2> vo2List = map.get(contract.getId()+"");
+				if (vo2List != null && vo2List.size() > 0){
+					v.setTotal(vo2List.size());
+					v.setList(vo2List);
+				}else {
+					v.setTotal(0);
+				}
+				list.add(v);
+			}
+			return list;
+		}
+		return null;
+	}
 }

+ 10 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ExcelTabController.java

@@ -735,6 +735,16 @@ public class ExcelTabController extends BladeController {
             }
         }
 
+        // 远程搜索配置2-设计强度搜索
+        Elements hc2 = doc.select("hc-form-select-search2");
+        if (hc2.size() >= 1) {
+            for (int i = 0; i < hc2.size(); i++) {
+                Element datax = hc2.get(i);
+                datax.removeAttr("contractId");
+                datax.attr("contractId", wbsTreeContract.getContractId());
+            }
+        }
+
         // 标题解决
         ProjectInfo projectInfo = projectInfoService.getById(wbsTreeContract.getProjectId());
         //判断是否是水利水电表,水利水电项目名14,表名12 。   其他表都是18

+ 6 - 4
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/MixProportionInfoController.java

@@ -18,6 +18,7 @@ import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 import javax.validation.Valid;
 import java.util.List;
+import java.util.Map;
 
 @RestController
 @AllArgsConstructor
@@ -36,7 +37,8 @@ public class MixProportionInfoController extends BladeController {
     @ApiOperation(value = "计算含水率", notes = "计算含水率")
     @ApiImplicitParams(value = {
             @ApiImplicitParam(name = "key", value = "当前输入框位置", required = true),
-            @ApiImplicitParam(name = "MixProportionId", value = "配合比id", required = true),
+            @ApiImplicitParam(name = "contractId", value = "合同段id", required = true),
+            @ApiImplicitParam(name = "designStrength", value = "设计强度", required = true),
             @ApiImplicitParam(name = "sand", value = "黄砂含水率", required = true),
             @ApiImplicitParam(name = "macadamOne", value = "碎石1含水率", required = true),
             @ApiImplicitParam(name = "macadamTwo", value = "碎石2含水率", required = true),
@@ -52,9 +54,9 @@ public class MixProportionInfoController extends BladeController {
      */
     @GetMapping("/designStrengthList")
     @ApiOperationSupport(order = 7)
-    @ApiOperation(value = "设计强度列表", notes = "模糊搜索")
-    public R<List<MixProportionInfo>> designStrengthList(@RequestParam String searchValue,Long contractId) {
-        List<MixProportionInfo> list = mixProportionInfoService.designStrengthList(searchValue,contractId);
+    @ApiOperation(value = "设计强度列表", notes = "获取合同段下所有设计强度")
+    public R<Map<String,Map<String,String>>> designStrengthList(@RequestParam Long contractId,@RequestParam String key) {
+        Map<String,Map<String,String>> list = mixProportionInfoService.designStrengthList(contractId,key);
         return R.data(list);
     }
 

+ 2 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/TextdictInfoController.java

@@ -341,6 +341,8 @@ public class TextdictInfoController extends BladeController {
             element.removeAttr("style");
         } else if (textdictInfo.getTextId().equals("searchSelect")) { //搜索框
             element.empty().append("<hc-form-select-search id=" + keyname + " @keydown.shift.up='keyupShiftUp' @keydown.shift.down='keyupShiftDown' @keydown.shift.left='keyupShiftLeft' @keydown.shift.right='keyupShiftRight' type='dap_site_data' :val=" + vmode + " contractId=''  pkeyId='' @change='formRemoteChange' v-model=" + vmode + " placeholder=" + placeholder + " keyname=" + keyname + " weighing=" + weighing + "  @contextmenu.prevent.native='contextmenuClick(" + parm + ")'  @mouseup.right='RightClick(" + parm + ")' trIndex=" + trindex + " tdIndex=" + tdindex + "  x1=" + x1 + " x2=" + x2 + " y1=" + y1 + " y2=" + y2 + " style='width:100%;height:100%' > </hc-form-select-search>");
+        } else if (textdictInfo.getTextId().equals("strengthSearch")){ //强度搜索框
+            element.empty().append("<hc-form-select-search2 id=" + keyname + " @keydown.shift.up='keyupShiftUp' @keydown.shift.down='keyupShiftDown' @keydown.shift.left='keyupShiftLeft' @keydown.shift.right='keyupShiftRight' type='strength_search' :val=" + vmode + " contractId=''  pkeyId='' @change='formRemoteChange' v-model=" + vmode + " placeholder=" + placeholder + " keyname=" + keyname + " weighing=" + weighing + "  @contextmenu.prevent.native='contextmenuClick(" + parm + ")'  @mouseup.right='RightClick(" + parm + ")' trIndex=" + trindex + " tdIndex=" + tdindex + "  x1=" + x1 + " x2=" + x2 + " y1=" + y1 + " y2=" + y2 + " style='width:100%;height:100%' > </hc-form-select-search2>");
         }
         element.attr("@click", "getInformation(" + oncklickText + ")");
 

+ 1 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/ArchiveTreeContractMapper.xml

@@ -396,7 +396,7 @@
         FROM m_archive_tree_contract matc1
         WHERE  matc1.parent_id in (select id from m_archive_tree_contract
                             WHERE parent_id = (select id from m_archive_tree_contract WHERE parent_id = 0 and project_id = #{projectId} and is_deleted = 0)
-                              and tree_code is NULL)
+                              and is_deleted = 0 and tree_code is NULL)
           and matc1.is_deleted = 0
     </select>
 

+ 1 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/MixProportionInfoMapper.java

@@ -38,7 +38,7 @@ import java.util.Set;
  */
 public interface MixProportionInfoMapper extends BaseMapper<MixProportionInfo> {
 
-    List<MixProportionInfo> designStrengthList(@Param("searchValue") String searchValue,@Param("contractId") Long contractId);
+    List<String> designStrengthList(@Param("contractId") Long contractId);
 
     Integer compareInfo(@Param("number") Set<String> number,@Param("strength") Set<String> strength,@Param("contractId") Long contractId);
 }

+ 6 - 8
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/MixProportionInfoMapper.xml

@@ -3,14 +3,7 @@
 <mapper namespace="org.springblade.manager.mapper.MixProportionInfoMapper">
 
 
-    <select id="designStrengthList" resultType="org.springblade.manager.entity.MixProportionInfo">
-        select id,design_strength
-        from m_mix_proportion_info
-        WHERE is_deleted = 0 and contract_id = #{contractId}
-        <if test="searchValue!=null and searchValue !=''">
-            and design_strength like concat(concat('%', #{searchValue}),'%')
-        </if>
-    </select>
+
     <select id="compareInfo" resultType="java.lang.Integer">
         select count(1)
         from m_mix_proportion_info
@@ -23,4 +16,9 @@
             #{s}
         </foreach>
     </select>
+    <select id="designStrengthList" resultType="java.lang.String">
+        select design_strength
+        from m_mix_proportion_info
+        WHERE is_deleted = 0 and contract_id = #{contractId}
+    </select>
 </mapper>

+ 2 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/service/IMixProportionInfoService.java

@@ -8,11 +8,12 @@ import org.springblade.manager.entity.RawMaterialsInfo;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 
 public interface IMixProportionInfoService extends BaseService<MixProportionInfo> {
 
-    List<MixProportionInfo> designStrengthList(String searchValue,Long contractId);
+    Map<String, Map<String,String>> designStrengthList(Long contractId,String key);
 
     Integer compareInfo(Set<String> number, Set<String> strength, Long contractId);
 

+ 18 - 3
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/MixProportionInfoServiceImpl.java

@@ -1,5 +1,6 @@
 package org.springblade.manager.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringPool;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -47,8 +48,20 @@ public class MixProportionInfoServiceImpl extends BaseServiceImpl<MixProportionI
 
 
     @Override
-    public List<MixProportionInfo> designStrengthList(String searchValue,Long contractId) {
-        return baseMapper.designStrengthList(searchValue,contractId);
+    public Map<String,Map<String,String>> designStrengthList(Long contractId,String key) {
+        //查询当前合同段所有的设计强度
+        List<String> list = baseMapper.designStrengthList(contractId);
+        if (list == null || list.size() <= 0){
+            return null;
+        }
+        Map<String,Map<String,String>> map = new HashMap<>();
+        //包装返回值
+        for (String l : list) {
+            Map<String,String> m = new HashMap<>();
+            m.put(key,l);
+            map.put(l,m);
+        }
+        return map;
     }
 
     @Override
@@ -118,7 +131,9 @@ public class MixProportionInfoServiceImpl extends BaseServiceImpl<MixProportionI
         //结果集
         Map<String,BigDecimal> map = new HashMap<>();
         //获取配合比信息
-        MixProportionInfo info = this.getById(dto.getMixProportionId());
+        MixProportionInfo info = this.getOne(new LambdaQueryWrapper<MixProportionInfo>()
+                .eq(MixProportionInfo::getContractId,dto.getContractId())
+                .eq(MixProportionInfo::getDesignStrength,dto.getDesignStrength()));
         if (info == null){
             throw new ServiceException("获取配合比信息失败");
         }