RoomRenovationApi.java 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503
  1. package com.java110.community.api;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.java110.community.bmo.roomRenovation.IDeleteRoomRenovationBMO;
  4. import com.java110.community.bmo.roomRenovation.IGetRoomRenovationBMO;
  5. import com.java110.community.bmo.roomRenovation.ISaveRoomRenovationBMO;
  6. import com.java110.community.bmo.roomRenovation.IUpdateRoomRenovationBMO;
  7. import com.java110.community.bmo.roomRenovationDetail.IDeleteRoomRenovationDetailBMO;
  8. import com.java110.community.bmo.roomRenovationDetail.IGetRoomRenovationDetailBMO;
  9. import com.java110.community.bmo.roomRenovationDetail.ISaveRoomRenovationDetailBMO;
  10. import com.java110.community.bmo.roomRenovationRecord.IDeleteRoomRenovationRecordBMO;
  11. import com.java110.community.bmo.roomRenovationRecord.IGetRoomRenovationRecordBMO;
  12. import com.java110.community.bmo.roomRenovationRecord.ISaveRoomRenovationRecordBMO;
  13. import com.java110.core.factory.GenerateCodeFactory;
  14. import com.java110.dto.RoomDto;
  15. import com.java110.dto.file.FileDto;
  16. import com.java110.dto.file.FileRelDto;
  17. import com.java110.dto.roomRenovation.RoomRenovationDto;
  18. import com.java110.dto.roomRenovationDetail.RoomRenovationDetailDto;
  19. import com.java110.dto.user.UserDto;
  20. import com.java110.intf.IRoomRenovationInnerServiceSMO;
  21. import com.java110.intf.common.IFileInnerServiceSMO;
  22. import com.java110.intf.common.IFileRelInnerServiceSMO;
  23. import com.java110.intf.user.IUserInnerServiceSMO;
  24. import com.java110.po.file.FileRelPo;
  25. import com.java110.po.roomRenovation.RoomRenovationPo;
  26. import com.java110.po.roomRenovationDetail.RoomRenovationDetailPo;
  27. import com.java110.po.roomRenovationRecord.RoomRenovationRecordPo;
  28. import com.java110.utils.util.Assert;
  29. import com.java110.utils.util.BeanConvertUtil;
  30. import com.java110.utils.util.StringUtil;
  31. import org.springframework.beans.factory.annotation.Autowired;
  32. import org.springframework.http.ResponseEntity;
  33. import org.springframework.web.bind.annotation.RequestBody;
  34. import org.springframework.web.bind.annotation.RequestHeader;
  35. import org.springframework.web.bind.annotation.RequestMapping;
  36. import org.springframework.web.bind.annotation.RequestMethod;
  37. import org.springframework.web.bind.annotation.RequestParam;
  38. import org.springframework.web.bind.annotation.RestController;
  39. import java.text.SimpleDateFormat;
  40. import java.util.Date;
  41. import java.util.List;
  42. @RestController
  43. @RequestMapping(value = "/roomRenovation")
  44. public class RoomRenovationApi {
  45. @Autowired
  46. private ISaveRoomRenovationBMO saveRoomRenovationBMOImpl;
  47. @Autowired
  48. private IUpdateRoomRenovationBMO updateRoomRenovationBMOImpl;
  49. @Autowired
  50. private IDeleteRoomRenovationBMO deleteRoomRenovationBMOImpl;
  51. @Autowired
  52. private IGetRoomRenovationBMO getRoomRenovationBMOImpl;
  53. @Autowired
  54. private ISaveRoomRenovationDetailBMO saveRoomRenovationDetailBMOImpl;
  55. @Autowired
  56. private IDeleteRoomRenovationDetailBMO deleteRoomRenovationDetailBMOImpl;
  57. @Autowired
  58. private IGetRoomRenovationDetailBMO getRoomRenovationDetailBMOImpl;
  59. @Autowired
  60. private IRoomRenovationInnerServiceSMO roomRenovationInnerServiceSMOImpl;
  61. @Autowired
  62. private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
  63. @Autowired
  64. private IUserInnerServiceSMO userInnerServiceSMOImpl;
  65. @Autowired
  66. private ISaveRoomRenovationRecordBMO saveRoomRenovationRecordBMO;
  67. @Autowired
  68. private IGetRoomRenovationRecordBMO getRoomRenovationRecordBMOImpl;
  69. @Autowired
  70. private IFileInnerServiceSMO fileInnerServiceSMOImpl;
  71. @Autowired
  72. private IDeleteRoomRenovationRecordBMO deleteRoomRenovationRecordBMOImpl;
  73. /**
  74. * 微信保存消息模板
  75. *
  76. * @param reqJson
  77. * @return
  78. * @serviceCode /roomRenovation/saveRoomRenovation
  79. * @path /app/roomRenovation/saveRoomRenovation
  80. */
  81. @RequestMapping(value = "/saveRoomRenovation", method = RequestMethod.POST)
  82. public ResponseEntity<String> saveRoomRenovation(@RequestBody JSONObject reqJson) {
  83. Assert.hasKeyAndValue(reqJson, "roomId", "请求报文中未包含roomId");
  84. Assert.hasKeyAndValue(reqJson, "roomName", "请求报文中未包含roomName");
  85. Assert.hasKeyAndValue(reqJson, "communityId", "请求报文中未包含communityId");
  86. Assert.hasKeyAndValue(reqJson, "startTime", "请求报文中未包含startTime");
  87. Assert.hasKeyAndValue(reqJson, "endTime", "请求报文中未包含endTime");
  88. Assert.hasKeyAndValue(reqJson, "personName", "请求报文中未包含personName");
  89. Assert.hasKeyAndValue(reqJson, "personTel", "请求报文中未包含personTel");
  90. //Assert.hasKeyAndValue(reqJson, "isViolation", "请求报文中未包含isViolation");
  91. RoomRenovationPo roomRenovationPo = BeanConvertUtil.covertBean(reqJson, RoomRenovationPo.class);
  92. //判断是否已经存在该房屋的装修记录了
  93. RoomRenovationDto roomRenovationDto = new RoomRenovationDto();
  94. roomRenovationDto.setRoomId(roomRenovationPo.getRoomId());
  95. List<RoomRenovationDto> roomRenovationDtos = roomRenovationInnerServiceSMOImpl.queryRoomRenovations(roomRenovationDto);
  96. if (roomRenovationDtos.size() > 0) {
  97. for (RoomRenovationDto renovationDto : roomRenovationDtos) {
  98. if (renovationDto.getState().equals("1000") || renovationDto.getState().equals("3000") || renovationDto.getState().equals("4000")) {
  99. throw new IllegalArgumentException("该房屋正在装修中,请仔细核对房屋信息!");
  100. }
  101. }
  102. }
  103. //待审核状态
  104. roomRenovationPo.setState("1000");
  105. //不违规
  106. roomRenovationPo.setIsViolation("N");
  107. roomRenovationPo.setStartTime(reqJson.getString("startTime") + " 00:00:00");
  108. roomRenovationPo.setEndTime(reqJson.getString("endTime") + " 23:59:59");
  109. return saveRoomRenovationBMOImpl.save(roomRenovationPo);
  110. }
  111. /**
  112. * 微信修改消息模板
  113. *
  114. * @param reqJson
  115. * @return
  116. * @serviceCode /roomRenovation/updateRoomRenovation
  117. * @path /app/roomRenovation/updateRoomRenovation
  118. */
  119. @RequestMapping(value = "/updateRoomRenovation", method = RequestMethod.POST)
  120. public ResponseEntity<String> updateRoomRenovation(@RequestBody JSONObject reqJson) {
  121. Assert.hasKeyAndValue(reqJson, "roomId", "请求报文中未包含roomId");
  122. Assert.hasKeyAndValue(reqJson, "roomName", "请求报文中未包含roomName");
  123. Assert.hasKeyAndValue(reqJson, "communityId", "请求报文中未包含communityId");
  124. Assert.hasKeyAndValue(reqJson, "startTime", "请求报文中未包含startTime");
  125. Assert.hasKeyAndValue(reqJson, "endTime", "请求报文中未包含endTime");
  126. Assert.hasKeyAndValue(reqJson, "personName", "请求报文中未包含personName");
  127. Assert.hasKeyAndValue(reqJson, "personTel", "请求报文中未包含personTel");
  128. Assert.hasKeyAndValue(reqJson, "isViolation", "请求报文中未包含isViolation");
  129. Assert.hasKeyAndValue(reqJson, "rId", "rId不能为空");
  130. RoomRenovationPo roomRenovationPo = BeanConvertUtil.covertBean(reqJson, RoomRenovationPo.class);
  131. roomRenovationPo.setStartTime(roomRenovationPo.getStartTime() + " 00:00:00");
  132. roomRenovationPo.setEndTime(roomRenovationPo.getEndTime() + " 23:59:59");
  133. //如果状态为装修中、待验收,则房屋状态改为装修中;如果状态为验收成功,则房屋状态改为已装修;如果为待审核、审核失败、验收失败,则房屋状态改为已交房
  134. if (roomRenovationPo.getState().equals("3000") || roomRenovationPo.getState().equals("4000")) {
  135. RoomDto roomDto = new RoomDto();
  136. roomDto.setRoomId(roomRenovationPo.getRoomId());
  137. //房屋状态变为装修中
  138. roomDto.setState("2009");
  139. updateRoomRenovationBMOImpl.update(roomRenovationPo);
  140. return updateRoomRenovationBMOImpl.updateRoom(roomDto);
  141. } else if (roomRenovationPo.getState().equals("1000") || roomRenovationPo.getState().equals("2000")
  142. || roomRenovationPo.getState().equals("5000")) {
  143. RoomDto roomDto = new RoomDto();
  144. roomDto.setRoomId(roomRenovationPo.getRoomId());
  145. //房屋状态变为已交房
  146. roomDto.setState("2003");
  147. updateRoomRenovationBMOImpl.update(roomRenovationPo);
  148. return updateRoomRenovationBMOImpl.updateRoom(roomDto);
  149. } else if (roomRenovationPo.getState().equals("6000")) {
  150. RoomDto roomDto = new RoomDto();
  151. roomDto.setRoomId(roomRenovationPo.getRoomId());
  152. //房屋状态变为已装修
  153. roomDto.setState("2005");
  154. updateRoomRenovationBMOImpl.update(roomRenovationPo);
  155. return updateRoomRenovationBMOImpl.updateRoom(roomDto);
  156. } else {
  157. return updateRoomRenovationBMOImpl.update(roomRenovationPo);
  158. }
  159. }
  160. /**
  161. * 装修完成
  162. *
  163. * @param reqJson
  164. * @return
  165. * @serviceCode /roomRenovation/updateRoomRenovationState
  166. * @path /app/roomRenovation/updateRoomRenovationState
  167. */
  168. @RequestMapping(value = "/updateRoomRenovationState", method = RequestMethod.POST)
  169. public ResponseEntity<String> updateRoomRenovationState(@RequestBody JSONObject reqJson) {
  170. RoomRenovationPo roomRenovationPo = BeanConvertUtil.covertBean(reqJson, RoomRenovationPo.class);
  171. //装修完成,状态变为待验收
  172. roomRenovationPo.setState("4000");
  173. return updateRoomRenovationBMOImpl.update(roomRenovationPo);
  174. }
  175. /**
  176. * 查询装修记录
  177. *
  178. * @param
  179. * @return
  180. * @serviceCode /roomRenovation/queryRoomRenovationRecord
  181. * @path /app/roomRenovation/queryRoomRenovationRecord
  182. */
  183. @RequestMapping(value = "/queryRoomRenovationRecord", method = RequestMethod.GET)
  184. public ResponseEntity<String> queryRoomRenovationRecord(@RequestParam(value = "rId", required = false) String rId,
  185. @RequestParam(value = "page", required = false) int page,
  186. @RequestParam(value = "row", required = false) int row) {
  187. RoomRenovationRecordPo roomRenovationRecord = new RoomRenovationRecordPo();
  188. roomRenovationRecord.setrId(rId);
  189. roomRenovationRecord.setPage(page);
  190. roomRenovationRecord.setRow(row);
  191. return getRoomRenovationRecordBMOImpl.getRoomRenovationRecord(roomRenovationRecord);
  192. }
  193. /**
  194. * 查询装修详情
  195. *
  196. * @param recordId
  197. * @param page
  198. * @param row
  199. * @return
  200. * @serviceCode /roomRenovation/queryRoomRenovationRecordDetail
  201. * @path /app/roomRenovation/queryRoomRenovationRecordDetail
  202. */
  203. @RequestMapping(value = "/queryRoomRenovationRecordDetail", method = RequestMethod.GET)
  204. public ResponseEntity<String> queryRoomRenovationRecordDetail(@RequestParam(value = "recordId", required = false) String recordId,
  205. @RequestParam(value = "page", required = false) int page,
  206. @RequestParam(value = "row", required = false) int row) {
  207. RoomRenovationRecordPo roomRenovationRecord = new RoomRenovationRecordPo();
  208. roomRenovationRecord.setRecordId(recordId);
  209. roomRenovationRecord.setPage(page);
  210. roomRenovationRecord.setRow(row);
  211. return getRoomRenovationRecordBMOImpl.get(roomRenovationRecord);
  212. }
  213. /**
  214. * 删除装修记录
  215. *
  216. * @param reqJson
  217. * @return
  218. * @serviceCode /roomRenovation/deleteRoomRenovationRecord
  219. * @path /app/roomRenovation/deleteRoomRenovationRecord
  220. */
  221. @RequestMapping(value = "/deleteRoomRenovationRecord", method = RequestMethod.POST)
  222. public ResponseEntity<String> deleteRoomRenovationRecord(@RequestBody JSONObject reqJson) {
  223. Assert.hasKeyAndValue(reqJson, "communityId", "小区ID不能为空");
  224. Assert.hasKeyAndValue(reqJson, "recordId", "recordId不能为空");
  225. RoomRenovationRecordPo roomRenovationRecordPo = BeanConvertUtil.covertBean(reqJson, RoomRenovationRecordPo.class);
  226. //获取装修记录id
  227. String recordId = reqJson.getString("recordId");
  228. FileRelPo fileRelpo = new FileRelPo();
  229. fileRelpo.setObjId(recordId);
  230. FileRelDto fileRelDto = new FileRelDto();
  231. fileRelDto.setObjId(recordId);
  232. List<FileRelDto> fileRelDtos = fileRelInnerServiceSMOImpl.queryFileRels(fileRelDto);
  233. if (fileRelDtos != null && fileRelDtos.size() > 0) {
  234. //删除文件表图片和视频
  235. fileRelInnerServiceSMOImpl.deleteFileRel(fileRelpo);
  236. }
  237. return deleteRoomRenovationRecordBMOImpl.delete(roomRenovationRecordPo);
  238. }
  239. /**
  240. * 装修记录
  241. *
  242. * @param reqJson
  243. * @return
  244. * @serviceCode /roomRenovation/updateRoomDecorationRecord
  245. * @path /app/roomRenovation/updateRoomDecorationRecord
  246. */
  247. @RequestMapping(value = "/updateRoomDecorationRecord", method = RequestMethod.POST)
  248. public ResponseEntity<String> updateRoomDecorationRecord(@RequestBody JSONObject reqJson, @RequestHeader(value = "user-id") String userId) {
  249. RoomRenovationPo roomRenovationPo = BeanConvertUtil.covertBean(reqJson, RoomRenovationPo.class);
  250. //图片
  251. List<String> photos = roomRenovationPo.getPhotos();
  252. //视频
  253. String videoName = roomRenovationPo.getVideoName();
  254. //备注
  255. String remark = roomRenovationPo.getRemark();
  256. //装修id
  257. String rId = roomRenovationPo.getrId();
  258. //状态
  259. String state = roomRenovationPo.getState();
  260. //查询当前用户信息
  261. UserDto userDto = new UserDto();
  262. userDto.setUserId(userId);
  263. userDto.setStatusCd("0");
  264. List<UserDto> users = userInnerServiceSMOImpl.getUsers(userDto);
  265. RoomRenovationRecordPo roomRenovationRecordPo = new RoomRenovationRecordPo();
  266. roomRenovationRecordPo.setrId(rId);
  267. roomRenovationRecordPo.setRemark(remark);
  268. roomRenovationRecordPo.setState(state);
  269. roomRenovationRecordPo.setStatusCd(roomRenovationPo.getStatusCd());
  270. SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  271. roomRenovationRecordPo.setCreateTime(format.format(new Date()));
  272. roomRenovationRecordPo.setStaffId(userId);
  273. roomRenovationRecordPo.setStaffName(users.get(0).getName());
  274. saveRoomRenovationRecordBMO.saveRecord(roomRenovationRecordPo);
  275. FileRelPo fileRelPo = new FileRelPo();
  276. fileRelPo.setFileRelId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_relId));
  277. fileRelPo.setObjId(roomRenovationRecordPo.getRecordId());
  278. //table表示表存储 ftp表示ftp文件存储
  279. fileRelPo.setSaveWay("ftp");
  280. fileRelPo.setCreateTime(new Date());
  281. //图片上传
  282. if (photos != null && photos.size() > 0) {
  283. //19000表示装修图片
  284. fileRelPo.setRelTypeCd("19000");
  285. for (String photo : photos) {
  286. FileDto fileDto = new FileDto();
  287. fileDto.setCommunityId("-1");
  288. fileDto.setContext(photo);
  289. fileDto.setFileId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_file_id));
  290. fileDto.setFileName(fileDto.getFileId());
  291. String fileName = fileInnerServiceSMOImpl.saveFile(fileDto);
  292. fileRelPo.setFileRealName(fileName);
  293. fileRelPo.setFileSaveName(fileName);
  294. fileRelInnerServiceSMOImpl.saveFileRel(fileRelPo);
  295. }
  296. }
  297. //视频上传
  298. if (!StringUtil.isEmpty(videoName)) {
  299. //21000表示装修视频
  300. fileRelPo.setRelTypeCd("21000");
  301. fileRelPo.setFileRealName(videoName);
  302. fileRelPo.setFileSaveName(videoName);
  303. fileRelInnerServiceSMOImpl.saveFileRel(fileRelPo);
  304. }
  305. RoomRenovationRecordPo roomRenovationRecord = new RoomRenovationRecordPo();
  306. roomRenovationRecord.setRecordId(roomRenovationRecordPo.getRecordId());
  307. return getRoomRenovationRecordBMOImpl.get(roomRenovationRecord);
  308. }
  309. /**
  310. * 装修审核
  311. *
  312. * @param reqJson
  313. * @return
  314. * @serviceCode /roomRenovation/updateRoomToExamine
  315. * @path /app/roomRenovation/updateRoomToExamine
  316. */
  317. @RequestMapping(value = "/updateRoomToExamine", method = RequestMethod.POST)
  318. public ResponseEntity<String> updateRoomToExamine(@RequestBody JSONObject reqJson) {
  319. RoomRenovationPo roomRenovationPo = BeanConvertUtil.covertBean(reqJson, RoomRenovationPo.class);
  320. //审核通过房屋状态变为装修中
  321. if (roomRenovationPo.getState().equals("3000")) {
  322. RoomDto roomDto = new RoomDto();
  323. roomDto.setRoomId(roomRenovationPo.getRoomId());
  324. //房屋状态变为装修中
  325. roomDto.setState("2009");
  326. //更新装修信息
  327. updateRoomRenovationBMOImpl.update(roomRenovationPo);
  328. return updateRoomRenovationBMOImpl.updateRoom(roomDto);
  329. } else if (roomRenovationPo.getState().equals("2000")) {
  330. RoomDto roomDto = new RoomDto();
  331. roomDto.setRoomId(roomRenovationPo.getRoomId());
  332. //房屋状态变为已交房
  333. roomDto.setState("2003");
  334. //更新装修信息
  335. updateRoomRenovationBMOImpl.update(roomRenovationPo);
  336. return updateRoomRenovationBMOImpl.updateRoom(roomDto);
  337. } else {
  338. return updateRoomRenovationBMOImpl.update(roomRenovationPo);
  339. }
  340. }
  341. /**
  342. * 微信删除消息模板
  343. *
  344. * @param reqJson
  345. * @return
  346. * @serviceCode /roomRenovation/deleteRoomRenovation
  347. * @path /app/roomRenovation/deleteRoomRenovation
  348. */
  349. @RequestMapping(value = "/deleteRoomRenovation", method = RequestMethod.POST)
  350. public ResponseEntity<String> deleteRoomRenovation(@RequestBody JSONObject reqJson) {
  351. Assert.hasKeyAndValue(reqJson, "communityId", "小区ID不能为空");
  352. Assert.hasKeyAndValue(reqJson, "rId", "rId不能为空");
  353. RoomRenovationPo roomRenovationPo = BeanConvertUtil.covertBean(reqJson, RoomRenovationPo.class);
  354. return deleteRoomRenovationBMOImpl.delete(roomRenovationPo);
  355. }
  356. /**
  357. * 查询房屋装修
  358. *
  359. * @param communityId 小区ID
  360. * @return
  361. * @serviceCode /roomRenovation/queryRoomRenovation
  362. * @path /app/roomRenovation/queryRoomRenovation
  363. */
  364. @RequestMapping(value = "/queryRoomRenovation", method = RequestMethod.GET)
  365. public ResponseEntity<String> queryRoomRenovation(@RequestParam(value = "communityId", required = false) String communityId,
  366. @RequestParam(value = "roomId", required = false) String roomId,
  367. @RequestParam(value = "roomName", required = false) String roomName,
  368. @RequestParam(value = "personName", required = false) String personName,
  369. @RequestParam(value = "personTel", required = false) String personTel,
  370. @RequestHeader(value = "user-id") String userId,
  371. @RequestParam(value = "page", required = false) int page,
  372. @RequestParam(value = "row", required = false) int row) {
  373. RoomRenovationDto roomRenovationDto = new RoomRenovationDto();
  374. roomRenovationDto.setPage(page);
  375. roomRenovationDto.setRow(row);
  376. roomRenovationDto.setCommunityId(communityId);
  377. roomRenovationDto.setRoomId(roomId);
  378. roomRenovationDto.setRoomName(roomName);
  379. roomRenovationDto.setPersonName(personName);
  380. roomRenovationDto.setPersonTel(personTel);
  381. roomRenovationDto.setUserId(userId);
  382. return getRoomRenovationBMOImpl.get(roomRenovationDto);
  383. }
  384. /**
  385. * 微信保存消息模板
  386. *
  387. * @param reqJson
  388. * @return
  389. * @serviceCode /roomRenovation/saveRoomRenovationDetail
  390. * @path /app/roomRenovation/saveRoomRenovationDetail
  391. */
  392. @RequestMapping(value = "/saveRoomRenovationDetail", method = RequestMethod.POST)
  393. public ResponseEntity<String> saveRoomRenovationDetail(@RequestHeader(value = "user-id") String userId,
  394. @RequestHeader(value = "user-name") String userName,
  395. @RequestBody JSONObject reqJson) {
  396. Assert.hasKeyAndValue(reqJson, "rId", "请求报文中未包含rId");
  397. Assert.hasKeyAndValue(reqJson, "communityId", "请求报文中未包含communityId");
  398. Assert.hasKeyAndValue(reqJson, "detailType", "请求报文中未包含detailType");
  399. Assert.hasKeyAndValue(reqJson, "state", "请求报文中未包含state");
  400. RoomRenovationDetailPo roomRenovationDetailPo = BeanConvertUtil.covertBean(reqJson, RoomRenovationDetailPo.class);
  401. roomRenovationDetailPo.setStaffId(userId);
  402. roomRenovationDetailPo.setStaffName(userName);
  403. RoomRenovationPo roomRenovationPo = new RoomRenovationPo();
  404. roomRenovationPo.setrId(roomRenovationDetailPo.getrId());
  405. roomRenovationPo.setState(roomRenovationDetailPo.getState());
  406. //修改房屋装修状态
  407. updateRoomRenovationBMOImpl.update(roomRenovationPo);
  408. //验收成功后房屋状态变为已装修
  409. if (roomRenovationDetailPo.getState().equals("5000")) {
  410. RoomDto roomDto = new RoomDto();
  411. roomDto.setRoomId(reqJson.getString("roomId"));
  412. //状态变为已装修
  413. roomDto.setState("2005");
  414. saveRoomRenovationDetailBMOImpl.save(roomRenovationDetailPo);
  415. return updateRoomRenovationBMOImpl.updateRoom(roomDto);
  416. } else if (roomRenovationDetailPo.getState().equals("6000")) {
  417. RoomDto roomDto = new RoomDto();
  418. roomDto.setRoomId(reqJson.getString("roomId"));
  419. //状态变为已交房
  420. roomDto.setState("2003");
  421. saveRoomRenovationDetailBMOImpl.save(roomRenovationDetailPo);
  422. return updateRoomRenovationBMOImpl.updateRoom(roomDto);
  423. } else {
  424. return saveRoomRenovationDetailBMOImpl.save(roomRenovationDetailPo);
  425. }
  426. }
  427. /**
  428. * 微信删除消息模板
  429. *
  430. * @param reqJson
  431. * @return
  432. * @serviceCode /roomRenovation/deleteRoomRenovationDetail
  433. * @path /app/roomRenovation/deleteRoomRenovationDetail
  434. */
  435. @RequestMapping(value = "/deleteRoomRenovationDetail", method = RequestMethod.POST)
  436. public ResponseEntity<String> deleteRoomRenovationDetail(@RequestBody JSONObject reqJson) {
  437. Assert.hasKeyAndValue(reqJson, "communityId", "小区ID不能为空");
  438. Assert.hasKeyAndValue(reqJson, "detailId", "detailId不能为空");
  439. RoomRenovationDetailPo roomRenovationDetailPo = BeanConvertUtil.covertBean(reqJson, RoomRenovationDetailPo.class);
  440. return deleteRoomRenovationDetailBMOImpl.delete(roomRenovationDetailPo);
  441. }
  442. /**
  443. * 微信删除消息模板
  444. *
  445. * @param communityId 小区ID
  446. * @return
  447. * @serviceCode /roomRenovation/queryRoomRenovationDetail
  448. * @path /app/roomRenovation/queryRoomRenovationDetail
  449. */
  450. @RequestMapping(value = "/queryRoomRenovationDetail", method = RequestMethod.GET)
  451. public ResponseEntity<String> queryRoomRenovationDetail(@RequestParam(value = "communityId") String communityId,
  452. @RequestParam(value = "page") int page,
  453. @RequestParam(value = "row") int row,
  454. @RequestParam(value = "rId") String rId) {
  455. RoomRenovationDetailDto roomRenovationDetailDto = new RoomRenovationDetailDto();
  456. roomRenovationDetailDto.setPage(page);
  457. roomRenovationDetailDto.setRow(row);
  458. roomRenovationDetailDto.setCommunityId(communityId);
  459. roomRenovationDetailDto.setrId(rId);
  460. return getRoomRenovationDetailBMOImpl.get(roomRenovationDetailDto);
  461. }
  462. }