slowslo 4 лет назад
Родитель
Сommit
1cb63f977d

+ 8 - 2
blade-service-api/estate-api/src/main/java/org/springblade/estate/entity/Repair.java

@@ -168,11 +168,17 @@ public class Repair extends BaseEntity {
 	@ApiModelProperty(value = "图片-多张图片用“,”切割")
 	private String pic;
 	/**
-	 * 区ID
+	 * 区ID
 	 */
-	@ApiModelProperty(value = "区ID")
+	@ApiModelProperty(value = "区ID")
 	private Long agencyId;
 
+	/**
+	 * 小区ID
+	 */
+	@ApiModelProperty(value = "小区ID")
+	private Long residentialId;
+
 	/**
 	 * 工单组ID
 	 */

+ 2 - 1
blade-service-api/estate-api/src/main/java/org/springblade/estate/feign/IRepairClient.java

@@ -1,5 +1,6 @@
 package org.springblade.estate.feign;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.plugins.Page;
 import io.swagger.annotations.ApiParam;
 import org.springblade.core.tool.api.R;
@@ -71,7 +72,7 @@ public interface IRepairClient  {
 	 * @return
 	 */
 	@PostMapping("/page")
-	R<Page<Repair>> page(@RequestBody RepairDTO repairDTO);
+	R<IPage<RepairVO>> page(@RequestBody RepairDTO repairDTO);
 
 
 }

+ 2 - 1
blade-service-api/estate-api/src/main/java/org/springblade/estate/feign/RepairClientFallback.java

@@ -1,5 +1,6 @@
 package org.springblade.estate.feign;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.plugins.Page;
 import org.springblade.core.tool.api.R;
 import org.springblade.estate.dto.RepairDTO;
@@ -63,7 +64,7 @@ public class RepairClientFallback implements IRepairClient {
         }
 
 	@Override
-	public R<Page<Repair>> page(RepairDTO repairDTO) {
+	public R<IPage<RepairVO>> page(RepairDTO repairDTO) {
 		return null;
 	}
 

+ 1 - 0
blade-service-api/estate-api/src/main/java/org/springblade/estate/vo/RepairVO.java

@@ -34,5 +34,6 @@ public class RepairVO extends Repair {
 	private static final long serialVersionUID = 1L;
 
 	private String agencyName;
+	private String residentialName;
 
 }

+ 2 - 2
blade-service/estate/src/main/java/org/springblade/estate/feign/RepairClient.java

@@ -98,7 +98,7 @@ public class RepairClient implements IRepairClient {
 
 	@Override
 	@PostMapping("/page")
-	public R<Page<Repair>> page(@RequestBody RepairDTO repairDTO) {
+	public R<IPage<RepairVO>> page(@RequestBody RepairDTO repairDTO) {
 		Query query = new Query();
 		Page<Repair> queryPage = repairDTO.getPage();
 		query.setCurrent(queryPage.getCurrent());
@@ -109,7 +109,7 @@ public class RepairClient implements IRepairClient {
 		result.setSize((int)repairIPage.getSize());
 		result.setRecords(repairIPage.getRecords());
 		result.setTotal(repairIPage.getTotal());
-		return R.data(result);
+		return R.data(RepairWrapper.build().pageVO(repairIPage));
 	}
 
 

+ 1 - 0
blade-service/estate/src/main/java/org/springblade/estate/mapper/RepairMapper.xml

@@ -34,6 +34,7 @@
         <result property="rate" column="rate"/>
         <result property="pic" column="pic"/>
         <result property="agencyId" column="agency_id"/>
+        <result property="residentialId" column="resiential_id"/>
         <result property="enterpriseId" column="enterprise_id"/>
         <result property="workOrderGroupId" column="work_order_group_id"/>
         <result property="workOrderGroupUserId" column="work_order_group_user_id"/>

+ 8 - 0
blade-service/estate/src/main/java/org/springblade/estate/wrapper/RepairWrapper.java

@@ -17,7 +17,9 @@
 package org.springblade.estate.wrapper;
 
 import org.springblade.community.entity.Agency;
+import org.springblade.community.entity.Residential;
 import org.springblade.community.feign.IAgencyClient;
+import org.springblade.community.feign.IResidentialClient;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.Func;
@@ -41,6 +43,7 @@ public class RepairWrapper extends BaseEntityWrapper<Repair, RepairVO> {
 
 	private static IConfClient confClient;
 	private static IAgencyClient agencyClient;
+	private static IResidentialClient residentialClient;
 
 	public static RepairWrapper build() {
 		return new RepairWrapper();
@@ -49,6 +52,7 @@ public class RepairWrapper extends BaseEntityWrapper<Repair, RepairVO> {
  	static {
 		confClient = SpringUtil.getBean(IConfClient.class);
 		agencyClient = SpringUtil.getBean(IAgencyClient.class);
+		residentialClient = SpringUtil.getBean(IResidentialClient.class);
 	}
 
 	@Override
@@ -66,6 +70,10 @@ public class RepairWrapper extends BaseEntityWrapper<Repair, RepairVO> {
 		if(agency != null){
 			repairVO.setAgencyName(agency.getName());
 		}
+		Residential residential = residentialClient.getById(repair.getResidentialId());
+		if(residential != null){
+			repairVO.setResidentialName(residential.getName());
+		}
 		return repairVO;
 	}
 

+ 31 - 46
community-app-gateway/src/main/java/org/springblade/app/controller/EstateRepairController.java

@@ -1,5 +1,6 @@
 package org.springblade.app.controller;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.plugins.Page;
 import lombok.RequiredArgsConstructor;
 import org.apache.commons.io.FilenameUtils;
@@ -7,13 +8,18 @@ import org.apache.commons.lang.StringUtils;
 import org.springblade.community.entity.Residential;
 import org.springblade.community.feign.IResidentialClient;
 import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.core.tool.utils.StringUtil;
 import org.springblade.estate.dto.RepairDTO;
 import org.springblade.estate.entity.Repair;
+import org.springblade.estate.feign.ICarClient;
 import org.springblade.estate.feign.IRepairClient;
 import org.springblade.estate.vo.RepairVO;
 import org.springblade.person.entity.HouseUser;
 import org.springblade.person.feign.IHouseUserClient;
 import org.springblade.person.vo.HouseUserVO;
+import org.springblade.system.expand.feign.IConfClient;
+import org.springframework.util.Assert;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -24,10 +30,7 @@ import java.io.IOException;
 import java.time.LocalDateTime;
 import java.time.ZoneId;
 import java.time.format.DateTimeFormatter;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.concurrent.atomic.AtomicInteger;
 
 /**
@@ -41,63 +44,45 @@ public class EstateRepairController {
 	private final IRepairClient repairClient;
 	private final IResidentialClient residentialClient;
 	private final IHouseUserClient houseUserClient;
+	private final IConfClient confClient;
 
 	@PostMapping(value = "/estateRepairList")
-	public Map<String,Object> getEstateRepairList(@RequestBody RepairDTO estateRepairDto){
-		Map<String,Object> map = new HashMap<>();
-//        EstateRepairDto
-		R<Page<Repair>> page = this.repairClient.page(estateRepairDto);
-		if(page != null &&page.getData()!=null){
-			map.put("estateRepairList",page.getData());
-		}
-		return map;
+	public R<IPage<RepairVO>> getEstateRepairList(@RequestBody RepairDTO repairDTO){
+		R<IPage<RepairVO>> page = this.repairClient.page(repairDTO);
+		return page;
 	}
 
 	@PostMapping(value = "/addEstateRepair")
-	public Map<String,Object> addEstateRepair(@RequestBody RepairDTO estateRepairDto){
-		Map<String,Object> map = new HashMap<>();
-		estateRepairDto.setRepairNo(generateRepairNO());
+	public R addEstateRepair(@RequestBody RepairDTO repairDTO){
+		repairDTO.setRepairNo(generateRepairNO());
 		Residential searchResidential = new Residential();
-		Residential residentialById = residentialClient.detail(searchResidential);
-		if(residentialById != null){
-			estateRepairDto.setTenantId(residentialById.getTenantId());
-		}else{
-			map.put("add_result", "小区不存在");
-		}
+		Residential residential = residentialClient.detail(searchResidential);
+		Assert.notNull(residential, "小区不存在");
+		repairDTO.setTenantId(residential.getTenantId());
 		HouseUser searchHouseUser = new HouseUser();
 		HouseUserVO houseUserVO = houseUserClient.detail(searchHouseUser);
 		if(houseUserVO != null){
-			estateRepairDto.setReportor(houseUserVO.getName());
-			estateRepairDto.setReportorPhone(houseUserVO.getPhone());
-		}
-		//处理图片
-		Object pic = map.get("pic");
-		if(pic != null){
-
+			repairDTO.setReportor(houseUserVO.getName());
+			repairDTO.setReportorPhone(houseUserVO.getPhone());
 		}
-		boolean submit = this.repairClient.submit(estateRepairDto);
-		if(submit){
-			map.put("add_result",submit);
-		}else{
-			map.put("add_result", "后台程序异常");
+		if(StringUtil.isNotBlank(repairDTO.getPic())){
+			List<String> picList = Func.toStrList(repairDTO.getPic());
+			List<String> savePicList = new ArrayList<>();
+			for(String pic : picList){
+				savePicList.add(confClient.removePrefix(pic));
+			}
+			repairDTO.setPic(StringUtil.join(savePicList));
 		}
-		return map;
+		boolean submit = this.repairClient.submit(repairDTO);
+		return R.status(submit);
 	}
 
 	@PostMapping(value = "/estateRepairDetail")
-	public Map<String,Object> estateDetail(@RequestBody Repair estateRepair1){
-		Map<String,Object> map = new HashMap<>();
+	public R<RepairVO> estateDetail(@RequestBody RepairDTO repairDTO){
 		Repair searchRepair = new Repair();
-		searchRepair.setId(estateRepair1.getId());
-		RepairVO detail = this.repairClient.detail(searchRepair);
-		if(detail != null){
-
-			map.put("estateRepairDetail",detail);
-		}else{
-			map.put("estateRepairDetail", "报修记录不存在");
-		}
-
-		return map;
+		searchRepair.setId(repairDTO.getId());
+		RepairVO repairVO = this.repairClient.detail(searchRepair);
+		return R.data(repairVO);
 	}
 
 

+ 1 - 1
community-app-gateway/src/main/java/org/springblade/app/controller/MemberController.java

@@ -703,7 +703,7 @@ public class MemberController {
 			List<HouseUser> houseUserList = houseUserClient.getListByMember(openDoorDto.getMemberId(), openDoorDto.getResidentialId());
 			Assert.notEmpty(houseUserList, "设备所在小区无住户");
 			HouseUser one = houseUserList.get(0);
-			return doorDeviceClient.remoteOpenDoor(one.getId().toString(), one.getName(), CommonConstant.UserFlag.GUEST_FLAG.getValue(), openDoorDto.getSerialNum(), openDoorDto.getDeviceFactory(), true);
+			return doorDeviceClient.remoteOpenDoor(one.getId().toString(), one.getName(), CommonConstant.UserFlag.HOUSE_USER_FLAG.getValue(), openDoorDto.getSerialNum(), openDoorDto.getDeviceFactory(), true);
 		}else{
 			return R.fail("非法用户类型,无法开门");
 		}