Bladeren bron

优化房屋装修

xiaogang 5 jaren geleden
bovenliggende
commit
36dd169adb

+ 14 - 2
java110-core/src/main/java/com/java110/core/client/FtpUploadTemplate.java

@@ -34,6 +34,8 @@ public class FtpUploadTemplate {
 
     private final static String IMAGE_DEFAULT_PATH = "img/";
 
+    private final static String VIDEO_PATH = "video/";
+
     /*
      *图片上传工具方法
      * 默认上传至 img 文件下的当前日期下
@@ -52,7 +54,12 @@ public class FtpUploadTemplate {
             ftpClient.login(userName, userPassword);
             ftpClient.enterLocalPassiveMode();
             ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
-            ftpPath = ftpPath + IMAGE_DEFAULT_PATH + DateUtil.getNowII() + "/";
+            if (imageBase64.contains("mp4") || imageBase64.contains("MP4") || imageBase64.contains("AVI") || imageBase64.contains("avi")
+                    || imageBase64.contains("WMV") || imageBase64.contains("wmv")) {
+                ftpPath = ftpPath + VIDEO_PATH + DateUtil.getNowII() + "/";
+            } else {
+                ftpPath = ftpPath + IMAGE_DEFAULT_PATH + DateUtil.getNowII() + "/";
+            }
             mkDir(ftpClient, ftpPath);// 创建目录
             // 设置上传目录 must
             ftpClient.changeWorkingDirectory(ftpPath);
@@ -109,7 +116,12 @@ public class FtpUploadTemplate {
                 logger.error("关闭ftpClient 失败", e);
             }
         }
-        return IMAGE_DEFAULT_PATH + DateUtil.getNowII() + "/" + fileName;
+        if (imageBase64.contains("mp4") || imageBase64.contains("MP4") || imageBase64.contains("AVI") || imageBase64.contains("avi")
+                || imageBase64.contains("WMV") || imageBase64.contains("wmv")) {
+            return VIDEO_PATH + DateUtil.getNowII() + "/" + fileName;
+        } else {
+            return IMAGE_DEFAULT_PATH + DateUtil.getNowII() + "/" + fileName;
+        }
     }
 
 

+ 6 - 25
service-api/src/main/java/com/java110/api/listener/fee/SaveRoomCreateFeeListener.java

@@ -7,7 +7,6 @@ import com.java110.api.listener.AbstractServiceApiListener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
 import com.java110.core.event.service.api.ServiceDataFlowEvent;
-import com.java110.core.factory.Java110ThreadPoolFactory;
 import com.java110.dto.RoomDto;
 import com.java110.dto.fee.FeeAttrDto;
 import com.java110.dto.fee.FeeConfigDto;
@@ -41,6 +40,7 @@ import java.util.List;
  **/
 @Java110Listener("saveRoomCreateFeeListener")
 public class SaveRoomCreateFeeListener extends AbstractServiceApiListener {
+
     private static Logger logger = LoggerFactory.getLogger(SaveRoomCreateFeeListener.class);
 
     @Autowired
@@ -75,7 +75,7 @@ public class SaveRoomCreateFeeListener extends AbstractServiceApiListener {
         Assert.hasKeyAndValue(reqJson, "locationObjId", "未包含收费对象");
         Assert.hasKeyAndValue(reqJson, "configId", "未包含收费项目");
         //Assert.hasKeyAndValue(reqJson, "startTime", "未包含收费其实时间");
-//        Assert.hasKeyAndValue(reqJson, "billType", "未包含出账类型");
+        //Assert.hasKeyAndValue(reqJson, "billType", "未包含出账类型");
         Assert.hasKeyAndValue(reqJson, "storeId", "未包含商户ID");
     }
 
@@ -92,10 +92,9 @@ public class SaveRoomCreateFeeListener extends AbstractServiceApiListener {
         reqJson.put("feeFlag", feeConfigDtos.get(0).getFeeFlag());
         //判断收费范围
         RoomDto roomDto = new RoomDto();
-
-//        if (reqJson.containsKey("roomState") && RoomDto.STATE_SELL.equals(reqJson.getString("roomState"))) {
-//            roomDto.setState(RoomDto.STATE_SELL);
-//        }
+        /*if (reqJson.containsKey("roomState") && RoomDto.STATE_SELL.equals(reqJson.getString("roomState"))) {
+            roomDto.setState(RoomDto.STATE_SELL);
+        }*/
         if (reqJson.containsKey("roomState") && reqJson.getString("roomState").contains(",")) {
             String states = reqJson.getString("roomState");
             roomDto.setStates(states.split(","));
@@ -104,21 +103,18 @@ public class SaveRoomCreateFeeListener extends AbstractServiceApiListener {
         if (reqJson.containsKey("roomType")) {
             roomDto.setRoomType(reqJson.getString("roomType"));
         }
-        if(reqJson.containsKey("feeLayer") && !"全部".equals(reqJson.getString("feeLayer"))){
+        if (reqJson.containsKey("feeLayer") && !"全部".equals(reqJson.getString("feeLayer"))) {
             String[] layers = reqJson.getString("feeLayer").split("#");
             roomDto.setLayers(layers);
         }
         if ("1000".equals(reqJson.getString("locationTypeCd"))) {//小区
-
             roomDto.setCommunityId(reqJson.getString("communityId"));
             roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
-
         } else if ("4000".equals(reqJson.getString("locationTypeCd"))) {//楼栋
             //RoomDto roomDto = new RoomDto();
             roomDto.setCommunityId(reqJson.getString("communityId"));
             roomDto.setFloorId(reqJson.getString("locationObjId"));
             roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
-
         } else if ("2000".equals(reqJson.getString("locationTypeCd"))) {//单元
             //RoomDto roomDto = new RoomDto();
             roomDto.setCommunityId(reqJson.getString("communityId"));
@@ -132,23 +128,18 @@ public class SaveRoomCreateFeeListener extends AbstractServiceApiListener {
         } else {
             throw new IllegalArgumentException("收费范围错误");
         }
-
         if (roomDtos == null || roomDtos.size() < 1) {
             throw new IllegalArgumentException("未查到需要付费的房屋");
         }
-
         dealRoomFee(roomDtos, context, reqJson, event);
     }
 
     private void dealRoomFee(List<RoomDto> roomDtos, DataFlowContext context, JSONObject reqJson, ServiceDataFlowEvent event) {
-
         AppService service = event.getAppService();
-
         List<String> roomIds = new ArrayList<>();
         for (RoomDto roomDto : roomDtos) {
             roomIds.add(roomDto.getRoomId());
         }
-
         //房屋刷入业主信息
         OwnerDto ownerDto = new OwnerDto();
         ownerDto.setCommunityId(roomDtos.get(0).getCommunityId());
@@ -163,7 +154,6 @@ public class SaveRoomCreateFeeListener extends AbstractServiceApiListener {
                 }
             }
         }
-
         HttpHeaders header = new HttpHeaders();
         context.getRequestCurrentHeaders().put(CommonConstant.HTTP_ORDER_TYPE_CD, "D");
         JSONArray businesses = new JSONArray();
@@ -173,7 +163,6 @@ public class SaveRoomCreateFeeListener extends AbstractServiceApiListener {
         //添加单元信息
         int curFailRoomCount = 0;
         for (int roomIndex = 0; roomIndex < roomDtos.size(); roomIndex++) {
-
             curFailRoomCount++;
             businesses.add(feeBMOImpl.addRoomFee(roomDtos.get(roomIndex), reqJson, context));
             if (!StringUtil.isEmpty(roomDtos.get(roomIndex).getOwnerId())) {
@@ -182,37 +171,29 @@ public class SaveRoomCreateFeeListener extends AbstractServiceApiListener {
                 businesses.add(feeBMOImpl.addFeeAttr(reqJson, context, FeeAttrDto.SPEC_CD_OWNER_NAME, roomDtos.get(roomIndex).getOwnerName()));
             }
             if (roomIndex % DEFAULT_ADD_FEE_COUNT == 0 && roomIndex != 0) {
-
                 responseEntity = feeBMOImpl.callService(context, service.getServiceCode(), businesses);
-
                 if (responseEntity.getStatusCode() != HttpStatus.OK) {
                     failRooms += curFailRoomCount;
                 } else {
                     curFailRoomCount = 0;
                 }
-
                 businesses = new JSONArray();
             }
         }
         if (businesses != null && businesses.size() > 0) {
-
             responseEntity = feeBMOImpl.callService(context, service.getServiceCode(), businesses);
             if (responseEntity.getStatusCode() != HttpStatus.OK) {
                 failRooms += businesses.size();
             }
         }
-
         JSONObject paramOut = new JSONObject();
         paramOut.put("totalRoom", roomDtos.size());
         paramOut.put("successRoom", roomDtos.size() - failRooms);
         paramOut.put("errorRoom", failRooms);
-
         responseEntity = new ResponseEntity<>(paramOut.toJSONString(), HttpStatus.OK);
-
         context.setResponseEntity(responseEntity);
     }
 
-
     @Override
     public int getOrder() {
         return DEFAULT_ORDER;

+ 28 - 12
service-community/src/main/java/com/java110/community/api/RoomRenovationApi.java

@@ -153,15 +153,23 @@ public class RoomRenovationApi {
         RoomRenovationPo roomRenovationPo = BeanConvertUtil.covertBean(reqJson, RoomRenovationPo.class);
         roomRenovationPo.setStartTime(roomRenovationPo.getStartTime() + " 00:00:00");
         roomRenovationPo.setEndTime(roomRenovationPo.getEndTime() + " 23:59:59");
-        //如果状态为装修中,则房屋状态改为装修中;如果状态为验收成功,则房屋状态改为已装修
-        if (roomRenovationPo.getState().equals("3000")) {
+        //如果状态为装修中、待验收,则房屋状态改为装修中;如果状态为验收成功,则房屋状态改为已装修;如果为待审核、审核失败、验收失败,则房屋状态改为已交房
+        if (roomRenovationPo.getState().equals("3000") || roomRenovationPo.getState().equals("4000")) {
             RoomDto roomDto = new RoomDto();
             roomDto.setRoomId(roomRenovationPo.getRoomId());
             //房屋状态变为装修中
             roomDto.setState("2009");
             updateRoomRenovationBMOImpl.update(roomRenovationPo);
             return updateRoomRenovationBMOImpl.updateRoom(roomDto);
-        } else if (roomRenovationPo.getState().equals("")) {
+        } else if (roomRenovationPo.getState().equals("1000") || roomRenovationPo.getState().equals("2000")
+                || roomRenovationPo.getState().equals("5000")) {
+            RoomDto roomDto = new RoomDto();
+            roomDto.setRoomId(roomRenovationPo.getRoomId());
+            //房屋状态变为已交房
+            roomDto.setState("2003");
+            updateRoomRenovationBMOImpl.update(roomRenovationPo);
+            return updateRoomRenovationBMOImpl.updateRoom(roomDto);
+        } else if (roomRenovationPo.getState().equals("6000")) {
             RoomDto roomDto = new RoomDto();
             roomDto.setRoomId(roomRenovationPo.getRoomId());
             //房屋状态变为已装修
@@ -319,15 +327,8 @@ public class RoomRenovationApi {
         if (!StringUtil.isEmpty(videoName)) {
             //21000表示装修视频
             fileRelPo.setRelTypeCd("21000");
-            FileDto fileDto = new FileDto();
-            fileDto.setCommunityId("-1");
-            fileDto.setContext(videoName);
-            fileDto.setFileId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_file_id));
-            fileDto.setFileName(fileDto.getFileId());
-            fileDto.setSuffix("mp4");
-            String fileName = fileInnerServiceSMOImpl.saveFile(fileDto);
-            fileRelPo.setFileRealName(fileName);
-            fileRelPo.setFileSaveName(fileName);
+            fileRelPo.setFileRealName(videoName);
+            fileRelPo.setFileSaveName(videoName);
             fileRelInnerServiceSMOImpl.saveFileRel(fileRelPo);
         }
         RoomRenovationRecordPo roomRenovationRecord = new RoomRenovationRecordPo();
@@ -355,6 +356,14 @@ public class RoomRenovationApi {
             //更新装修信息
             updateRoomRenovationBMOImpl.update(roomRenovationPo);
             return updateRoomRenovationBMOImpl.updateRoom(roomDto);
+        } else if (roomRenovationPo.getState().equals("2000")) {
+            RoomDto roomDto = new RoomDto();
+            roomDto.setRoomId(roomRenovationPo.getRoomId());
+            //房屋状态变为已交房
+            roomDto.setState("2003");
+            //更新装修信息
+            updateRoomRenovationBMOImpl.update(roomRenovationPo);
+            return updateRoomRenovationBMOImpl.updateRoom(roomDto);
         } else {
             return updateRoomRenovationBMOImpl.update(roomRenovationPo);
         }
@@ -438,6 +447,13 @@ public class RoomRenovationApi {
             roomDto.setState("2005");
             saveRoomRenovationDetailBMOImpl.save(roomRenovationDetailPo);
             return updateRoomRenovationBMOImpl.updateRoom(roomDto);
+        } else if (roomRenovationDetailPo.getState().equals("6000")) {
+            RoomDto roomDto = new RoomDto();
+            roomDto.setRoomId(reqJson.getString("roomId"));
+            //状态变为已交房
+            roomDto.setState("2003");
+            saveRoomRenovationDetailBMOImpl.save(roomRenovationDetailPo);
+            return updateRoomRenovationBMOImpl.updateRoom(roomDto);
         } else {
             return saveRoomRenovationDetailBMOImpl.save(roomRenovationDetailPo);
         }

+ 3 - 1
service-community/src/main/java/com/java110/community/bmo/roomRenovationRecord/impl/GetRoomRenovationRecordBMOImpl.java

@@ -38,9 +38,11 @@ public class GetRoomRenovationRecordBMOImpl implements IGetRoomRenovationRecordB
         if (count > 0) {
             List<RoomRenovationRecordPo> roomRenovationRecordList = roomRenovationRecordInnerServiceSMOImpl.queryRoomRenovationRecords(roomRenovationRecordPo);
             for (RoomRenovationRecordPo renovationRecordPo : roomRenovationRecordList) {
-                if (!StringUtil.isEmpty(renovationRecordPo.getFileRealName())) {
+                if (!StringUtil.isEmpty(renovationRecordPo.getFileRealName()) && renovationRecordPo.getRelTypeCd().equals("19000")) {
                     renovationRecordPo.setUrl("/callComponent/download/getFile/file?fileId=" +
                             renovationRecordPo.getFileRealName() + "&communityId=-1");
+                } else if (!StringUtil.isEmpty(renovationRecordPo.getFileRealName()) && renovationRecordPo.getRelTypeCd().equals("21000")) {
+                    renovationRecordPo.setUrl("/video/" + renovationRecordPo.getFileRealName());
                 }
                 roomRenovationRecordPos.add(renovationRecordPo);
             }