Pārlūkot izejas kodu

审核bug修复

wangtong 1 gadu atpakaļ
vecāks
revīzija
fda039de79

+ 5 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZEngineeringCivilController.java

@@ -219,6 +219,11 @@ public class ZEngineeringCivilController extends BaseController {
     public R getRivewStatus( @PathVariable("Id")  String Id) {
         return R.ok(iZEngineeringCivilService.getRivewStatus(Id));
     }
+    @Log(title = "民用工程", businessType = BusinessType.OTHER)
+    @PostMapping("/batchNode")
+    public R batchNode( @RequestBody  ZEngineeringCivilBo bo) {
+        return R.ok(iZEngineeringCivilService.batchNode(bo));
+    }
 
 
 }

+ 7 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZEngineeringInfoController.java

@@ -105,4 +105,11 @@ public class ZEngineeringInfoController extends BaseController {
                           @PathVariable String[] ids) {
         return toAjax(iZEngineeringInfoService.deleteWithValidByIds(Arrays.asList(ids), true));
     }
+    @SaCheckPermission("zdsz:engineeringInfo:remove")
+    @Log(title = "信息删除", businessType = BusinessType.DELETE)
+    @DeleteMapping("/deleteById")
+    public R deleteById(@RequestBody  ZEngineeringInfoBo bo) {
+        return R.ok(iZEngineeringInfoService.deleteById(bo));
+    }
+
 }

+ 2 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/mapper/ZHouseMapper.java

@@ -3,6 +3,7 @@ package com.ruoyi.zdsz.mapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.zdsz.domain.ZHouse;
 import com.ruoyi.zdsz.domain.bo.ZBuildingBo;
+import com.ruoyi.zdsz.domain.bo.ZEngineeringCivilBo;
 import com.ruoyi.zdsz.domain.bo.ZHouseBo;
 import com.ruoyi.zdsz.domain.vo.ZBuildingVo;
 import com.ruoyi.zdsz.domain.vo.ZHouseVo;
@@ -21,4 +22,5 @@ public interface ZHouseMapper extends BaseMapperPlus<ZHouseMapper, ZHouse, ZHous
     Page<ZHouseVo> getPageList(@Param("p") ZHouseBo bo, Page<?> page);
     ZHouse getByName(@Param("name")String name,@Param("unitId")String unitId);
     List<ZHouseVo> selectListByunitId(String unitId);
+    List<ZHouse> selectHouseId(@Param("p") ZEngineeringCivilBo bo);
 }

+ 1 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZEngineeringCivilService.java

@@ -80,4 +80,5 @@ public interface IZEngineeringCivilService {
      * @return
      */
     List<ZEngineeringNodeBo> getRivewStatus(String Id);
+    Boolean  batchNode(ZEngineeringCivilBo bo);
 }

+ 1 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZEngineeringInfoService.java

@@ -70,6 +70,7 @@ public interface IZEngineeringInfoService {
      */
     Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
     Boolean delete(ZEngineeringNodeBo bo);
+    Boolean deleteById(ZEngineeringInfoBo bo);
     List<ZEngineeringMaterialBo> getzEngineeringMaterialBoList(ZEngineeringNodeBo bo);
 
 }

+ 3 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZEngineeringNodeService.java

@@ -5,6 +5,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.zdsz.domain.ZEngineeringCivil;
 import com.ruoyi.zdsz.domain.ZEngineeringNode;
 import com.ruoyi.zdsz.domain.ZEngineeringReview;
+import com.ruoyi.zdsz.domain.ZHouse;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringCivilBo;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringReviewBo;
@@ -105,5 +106,7 @@ public interface IZEngineeringNodeService {
      */
     int Civilinsert(List<ZEngineeringCivil> zEngineeringCivilList,ZEngineeringNodeBo bo,String UserId);
 
+    Integer  batchNode(List<ZHouse> zHouseList,ZEngineeringCivilBo zEngineeringCivilBo,String userId);
+
 
 }

+ 13 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringCivilServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
 import com.ruoyi.common.annotation.DynamicName;
 import com.ruoyi.common.core.domain.BaseEntity;
 import com.ruoyi.common.core.domain.entity.SysDictData;
+import com.ruoyi.common.helper.LoginHelper;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.common.core.domain.PageQuery;
@@ -15,12 +16,14 @@ import com.ruoyi.framework.handler.MonthTableNameHandler;
 import com.ruoyi.system.service.ISysDictTypeService;
 import com.ruoyi.zdsz.domain.ZArea;
 import com.ruoyi.zdsz.domain.ZEngineeringNode;
+import com.ruoyi.zdsz.domain.ZHouse;
 import com.ruoyi.zdsz.domain.bo.ZBuildingBo;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringReviewBo;
 import com.ruoyi.zdsz.domain.vo.*;
 import com.ruoyi.zdsz.mapper.ZAreaMapper;
 import com.ruoyi.zdsz.mapper.ZEngineeringNodeMapper;
+import com.ruoyi.zdsz.mapper.ZHouseMapper;
 import com.ruoyi.zdsz.service.*;
 import com.ruoyi.zdsz.task.RiewTask;
 import com.ruoyi.zdsz.task.photoTask;
@@ -54,6 +57,8 @@ public class ZEngineeringCivilServiceImpl implements IZEngineeringCivilService {
     private final ZEngineeringCivilMapper baseMapper;
     @Resource
     private ZAreaMapper zAreaMapper;
+    @Resource
+    private ZHouseMapper zHouseMapper;
 
     @Autowired
     private IZEngineeringNodeService izEngineeringNodeService;
@@ -593,6 +598,14 @@ public class ZEngineeringCivilServiceImpl implements IZEngineeringCivilService {
         }
 
     }
+
+    @Override
+    public Boolean batchNode(ZEngineeringCivilBo bo) {
+     List<ZHouse> zHouseList=zHouseMapper.selectHouseId(bo);
+         zEngineeringNodeService.batchNode(zHouseList,bo,LoginHelper.getLoginUser().getUserId().toString());
+        return true ;
+
+    }
 }
 
 

+ 16 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringInfoServiceImpl.java

@@ -477,6 +477,22 @@ public class ZEngineeringInfoServiceImpl implements IZEngineeringInfoService {
     }
 
     @Override
+    @DynamicName(spel = "#bo.createTime")
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean deleteById(ZEngineeringInfoBo bo) {
+        LambdaQueryWrapper<ZEngineeringInfo> lqw = Wrappers.lambdaQuery();
+        lqw.eq(StringUtils.isNotBlank(bo.getId()), ZEngineeringInfo::getId, bo.getId());
+        ZEngineeringInfo zEngineeringInfo = baseMapper.selectOne(lqw);
+            ZEngineeringInfoBo zEngineeringInfobo =new ZEngineeringInfoBo();
+        zEngineeringInfobo= BeanUtil.toBean(zEngineeringInfo, ZEngineeringInfoBo.class);
+            //zEngineeringInfobo.setCreateTime(bo.getCreateTime());
+            izEngiineeringPhotoService.delete(zEngineeringInfobo);
+            izEngineeringMaterialService.delete(zEngineeringInfobo);
+            baseMapper.deleteById(zEngineeringInfo.getId());
+        return null;
+    }
+
+    @Override
     public List<ZEngineeringMaterialBo> getzEngineeringMaterialBoList(ZEngineeringNodeBo bo) {
         LambdaQueryWrapper<ZEngineeringInfo> lqw = Wrappers.lambdaQuery();
         lqw.eq(StringUtils.isNotBlank(bo.getId()), ZEngineeringInfo::getEngInfoId, bo.getId());

+ 70 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringNodeServiceImpl.java

@@ -15,6 +15,7 @@ import com.ruoyi.framework.handler.MonthTableNameHandler;
 import com.ruoyi.zdsz.domain.ZEngineeringCivil;
 import com.ruoyi.zdsz.domain.ZEngineeringNode;
 import com.ruoyi.zdsz.domain.ZEngineeringReview;
+import com.ruoyi.zdsz.domain.ZHouse;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringCivilBo;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringInfoBo;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
@@ -323,6 +324,75 @@ public class ZEngineeringNodeServiceImpl implements IZEngineeringNodeService {
         return 0;
     }
 
+    @Override
+    @Async
+    public Integer batchNode(List<ZHouse> zHouseList,ZEngineeringCivilBo zEngineeringCivilBo,String userId) {
+        zHouseList.stream().forEach(item->{
+            LambdaQueryWrapper<ZEngineeringCivil> lqw = Wrappers.lambdaQuery();
+            lqw.eq(StringUtils.isNotBlank(item.getAreaId()), ZEngineeringCivil::getAreaId, item.getAreaId());
+            lqw.eq(ZEngineeringCivil::getBuildingId, item.getBuildingId());
+//        .isNull(!StringUtils.isNotBlank(item.getBuildingId()),ZEngineeringCivil::getBuildingId);
+            lqw.eq(ZEngineeringCivil::getUnitId, item.getUnitId());
+//            .isNull(!StringUtils.isNotBlank(item.getUnitId()),ZEngineeringCivil::getUnitId);
+            lqw.eq( ZEngineeringCivil::getHouseId, item.getId());
+//            .isNull(!StringUtils.isNotBlank(item.getId()),ZEngineeringCivil::getHouseId);
+            lqw.eq(StringUtils.isNotBlank(zEngineeringCivilBo.getEnginCycle()), ZEngineeringCivil::getEnginCycle, zEngineeringCivilBo.getEnginCycle());
+            lqw.eq(StringUtils.isNotBlank(zEngineeringCivilBo.getEnginType()), ZEngineeringCivil::getEnginType, zEngineeringCivilBo.getEnginType());
+            lqw.eq(StringUtils.isNotBlank(zEngineeringCivilBo.getEnginClassification()), ZEngineeringCivil::getEnginClassification, zEngineeringCivilBo.getEnginClassification());
+            ZEngineeringCivilVo zEngineeringCivilVo = zEngineeringCivilMapper.selectVoOne(lqw);
+            if (!ObjectUtils.isEmpty(zEngineeringCivilVo)) {
+                SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy_MM");
+                MonthTableNameHandler.setData(simpleDateFormat.format(zEngineeringCivilVo.getCreateTime()));
+                LambdaQueryWrapper<ZEngineeringNode> lqw2 = Wrappers.lambdaQuery();
+                lqw2.eq(StringUtils.isNotBlank(zEngineeringCivilVo.getId()), ZEngineeringNode::getCivliId, zEngineeringCivilVo.getId());
+                lqw2.eq(StringUtils.isNotBlank(zEngineeringCivilBo.getType()), ZEngineeringNode::getType, zEngineeringCivilBo.getType());
+                ZEngineeringNode zEngineeringNode = baseMapper.selectOne(lqw2);
+                if (!ObjectUtils.isEmpty(zEngineeringNode)) {
+                    ZEngineeringReview zEngineeringReview = new ZEngineeringReview();
+                    zEngineeringReview.setReviewTime(new Date());
+                    zEngineeringReview.setReviewStatus(zEngineeringCivilBo.getCompletionStatus());
+                    zEngineeringReview.setReviewUser(userId);
+                    zEngineeringReview.setEngInfoId(zEngineeringNode.getId());
+                    zEngineeringReviewMapper.insert(zEngineeringReview);
+                } else
+                {
+                    ZEngineeringNode zEngineeringNode1=new ZEngineeringNode();
+                    zEngineeringNode1.setCivliId(zEngineeringCivilVo.getId());
+                    zEngineeringNode1.setType(zEngineeringCivilBo.getType());
+                    baseMapper.insert(zEngineeringNode1);
+                    ZEngineeringReview zEngineeringReview=new ZEngineeringReview();
+                    zEngineeringReview.setReviewTime(new Date());
+                    zEngineeringReview.setReviewStatus(zEngineeringCivilBo.getCompletionStatus());
+                    zEngineeringReview.setReviewUser(userId);
+                    zEngineeringReview.setEngInfoId(zEngineeringNode1.getId());
+                    zEngineeringReviewMapper.insert(zEngineeringReview);
+                }
+                MonthTableNameHandler.removeData();
+            }else
+            {
+                ZEngineeringCivil zEngineeringCivil=new ZEngineeringCivil();
+                BeanUtils.copyProperties(zEngineeringCivilBo,zEngineeringCivil);
+                BeanUtils.copyProperties(item,zEngineeringCivil);
+                zEngineeringCivil.setId(null);
+                zEngineeringCivil.setCompletionStatus("施工中");
+                zEngineeringCivil.setHouseId(item.getId());
+                zEngineeringCivilMapper.insert(zEngineeringCivil);
+                ZEngineeringNode zEngineeringNode1=new ZEngineeringNode();
+                zEngineeringNode1.setCivliId(zEngineeringCivil.getId());
+                zEngineeringNode1.setType(zEngineeringCivilBo.getType());
+                baseMapper.insert(zEngineeringNode1);
+                ZEngineeringReview zEngineeringReview=new ZEngineeringReview();
+                zEngineeringReview.setReviewTime(new Date());
+                zEngineeringReview.setReviewStatus(zEngineeringCivilBo.getCompletionStatus());
+                zEngineeringReview.setReviewUser(userId);
+                zEngineeringReview.setEngInfoId(zEngineeringNode1.getId());
+                zEngineeringReviewMapper.insert(zEngineeringReview);
+            }
+
+        });
+        return 0;
+    }
+
     public List getZEngineeringNodeList(String date, String UserId, ZEngineeringNodeBo bo) {
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
         List<ZEngineeringNodeVo> list = new ArrayList<>();

+ 30 - 0
ruoyi-zdsz/src/main/resources/mapper/zdsz/ZHouseMapper.xml

@@ -67,4 +67,34 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </if>
         order by a.create_time desc
     </select>
+    <select id="selectHouseId" resultType="com.ruoyi.zdsz.domain.ZHouse">
+        select
+        <if test="p.enginClassification == 'indoor_engin'">
+            a.unit_id,
+            a.id as id,
+        </if>
+        <if test="p.enginClassification == 'renovation_courtyard'  or p.enginClassification == 'renovation_courtyard' or p.enginClassification == 'built_overhead' or p.enginClassification == 'construction_records'
+ or p.enginClassification == 'bottom_leg' ">
+            '' as id,
+            '' as unit_id,
+        </if>
+        a.building_id,
+        a.area_id
+        from z_house as a
+        where a.del_flag = '0'
+        <if test="p.areaId != null  and p.areaId != ''">
+            and a.area_id = #{p.areaId}
+
+        </if>
+
+        <if test="p.enginClassification == 'renovation_courtyard'  or p.enginClassification == 'renovation_courtyard' or p.enginClassification == 'built_overhead' or p.enginClassification == 'construction_records'
+ or p.enginClassification == 'bottom_leg' ">
+            group by a.building_id ,
+                     a.unit_id
+        </if>
+        <if test="p.enginClassification == 'indoor_engin'">
+            group by a.building_id ,a.unit_id,a.id
+        </if>
+        order by a.create_time desc
+    </select>
 </mapper>