Commit 0710b0fc authored by “yiyousong”'s avatar “yiyousong”
parents ee8464b1 76821993
......@@ -2,8 +2,8 @@ package com.mortals.xhx.feign.base;
import com.alibaba.fastjson.JSON;
import com.mortals.xhx.common.code.ApiRespCodeEnum;
import com.mortals.xhx.common.pdu.dept.DeptPdu;
import com.mortals.xhx.feign.IFeign;
import com.mortals.xhx.feign.base.pdu.DeptPdu;
import com.mortals.xhx.feign.base.pdu.SitePdu;
import com.mortals.xhx.feign.rsp.ApiResp;
import feign.hystrix.FallbackFactory;
......
package com.mortals.xhx.feign.base.pdu;
import lombok.Data;
import java.util.List;
@Data
public class DeptPdu {
private List<Long> idList;
private Long siteId;
private Integer page;
/**分页每页显示数 -1为不分页*/
private Integer size;
}
package com.mortals.xhx.feign.dept;
import com.mortals.framework.common.Rest;
import com.mortals.xhx.common.pdu.RespData;
import com.mortals.xhx.common.pdu.dept.DeptPdu;
import com.mortals.xhx.feign.IFeign;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 部门 Feign接口
* @author zxfei
* @date 2022-12-09
*/
@FeignClient(name = "base-manager", path = "/base", fallbackFactory = DeptFeignFallbackFactory.class)
public interface IDeptFeign extends IFeign {
/**
* 查看部门列表
*
* @param deptPdu
* @return
*/
@PostMapping(value = "/dept/list")
Rest<RespData<List<DeptPdu>>> list(@RequestBody DeptPdu deptPdu);
/**
* 查看部门
*
* @param id
* @return
*/
@GetMapping(value = "/dept/info")
Rest<DeptPdu> info(@RequestParam(value = "id") Long id);
/**
* 删除部门
*
* @param ids
* @return
*/
@GetMapping(value = "/dept/delete")
Rest<Void> delete(Long[] ids,@RequestHeader("Authorization") String authorization);
/**
* 部门保存更新
*
* @param deptPdu
* @return
*/
@PostMapping(value = "/dept/save")
Rest<RespData<DeptPdu>> save(@RequestBody DeptPdu deptPdu,@RequestHeader("Authorization") String authorization);
}
@Slf4j
@Component
class DeptFeignFallbackFactory implements FallbackFactory<IDeptFeign> {
@Override
public IDeptFeign create(Throwable t) {
return new IDeptFeign() {
@Override
public Rest<RespData<List<DeptPdu>>> list(DeptPdu deptPdu) {
return Rest.fail("暂时无法获取部门列表,请稍后再试!");
}
@Override
public Rest<DeptPdu> info(Long id) {
return Rest.fail("暂时无法获取部门详细,请稍后再试!");
}
@Override
public Rest<Void> delete(Long[] ids, String authorization) {
return Rest.fail("暂时无法删除部门,请稍后再试!");
}
@Override
public Rest<RespData<DeptPdu>> save(DeptPdu deptPdu, String authorization) {
return Rest.fail("暂时无法保存部门,请稍后再试!");
}
};
}
}
package com.mortals.xhx.module.device.service.impl;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.PageInfo;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.pdu.RespData;
import com.mortals.xhx.common.pdu.dept.DeptPdu;
import com.mortals.xhx.feign.dept.IDeptFeign;
import com.mortals.xhx.module.device.model.DeviceEntity;
import com.mortals.xhx.module.device.model.DeviceMatterDatumQuery;
import com.mortals.xhx.module.device.service.DeviceService;
......@@ -38,6 +43,8 @@ public class DeviceMatterDatumServiceImpl extends AbstractCRUDServiceImpl<Device
@Autowired
private MatterDatumService matterDatumService;
@Autowired
private IDeptFeign deptFeign;
@Override
......@@ -71,6 +78,18 @@ public class DeviceMatterDatumServiceImpl extends AbstractCRUDServiceImpl<Device
entity.setSource(matterEntity.getSource());
entity.setSort(matterEntity.getSort());
entity.setDeptId(matterEntity.getDeptId());
DeptPdu deptPdu = new DeptPdu();
deptPdu.setDeptNumber(matterEntity.getDeptCode());
deptPdu.setSiteId(entity.getSiteId());
Rest<RespData<List<DeptPdu>>> rest = deptFeign.list(deptPdu);
if(YesNoEnum.YES.getValue()==rest.getCode()){
List<DeptPdu> data = rest.getData().getData();
if(!ObjectUtils.isEmpty(data)){
entity.setDeptId(data.get(0).getId());
}
}
entity.setDeptCode(matterEntity.getDeptCode());
entity.setDeptName(matterEntity.getDeptName());
}
......
......@@ -6,7 +6,7 @@ import lombok.Data;
public class HomeQueryPdu {
private Long siteId;
private String devicenum;
private String deviceCode;
private Integer newSource;
}
......@@ -15,9 +15,11 @@ import com.mortals.framework.web.BaseJsonBodyController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.key.Constant;
import com.mortals.xhx.common.pdu.RespData;
import com.mortals.xhx.common.pdu.dept.DeptPdu;
import com.mortals.xhx.feign.base.IApiBaseManagerFeign;
import com.mortals.xhx.feign.base.pdu.DeptPdu;
import com.mortals.xhx.feign.base.pdu.SitePdu;
import com.mortals.xhx.feign.dept.IDeptFeign;
import com.mortals.xhx.feign.rsp.ApiResp;
import com.mortals.xhx.feign.site.ISiteFeign;
import com.mortals.xhx.module.baseset.model.BasesetEntity;
......@@ -65,6 +67,8 @@ public class HomeController extends BaseJsonBodyController {
private ISiteFeign siteFeign;
@Autowired
private BasesetService basesetService;
@Autowired
private IDeptFeign deptFeign;
@PostMapping({"site/list"})
public Rest<Object> list() {
......@@ -132,17 +136,17 @@ public class HomeController extends BaseJsonBodyController {
deptPdu.setSiteId(queryPdu.getSiteId());
deptPdu.setSize(-1);
if(!ObjectUtils.isEmpty(queryPdu.getDevicenum())){
List<Long> deptIdList = deviceMatterDatumService.find(new DeviceMatterDatumQuery().deviceCode(queryPdu.getDevicenum())).stream().map(item -> item.getDeptId()).collect(Collectors.toList());
if(!ObjectUtils.isEmpty(queryPdu.getDeviceCode())){
List<Long> deptIdList = deviceMatterDatumService.find(new DeviceMatterDatumQuery().deviceCode(queryPdu.getDeviceCode())).stream().map(item -> item.getDeptId()).collect(Collectors.toList());
deptPdu.setIdList(deptIdList);
}
String resp = iApiBaseManagerFeign.getDeptByQuery(deptPdu);
ApiResp<JSONObject> apiResp = JSON.parseObject(resp, ApiResp.class);
Rest<RespData<List<DeptPdu>>> apiResp = deptFeign.list(deptPdu);
// ApiResp<JSONObject> apiResp = JSON.parseObject(resp, ApiResp.class);
if (apiResp.getCode() != YesNoEnum.YES.getValue()) {
throw new AppException("获取用户站点部门列表失败:" + apiResp.getMsg());
}
if (apiResp.getData().get("data") != null) {
model.put("data", apiResp.getData().get("data"));
if (apiResp.getData().getData()!= null) {
model.put("data", apiResp.getData().getData());
} else {
model.put("data", Collections.emptyList());
}
......@@ -173,9 +177,16 @@ public class HomeController extends BaseJsonBodyController {
model.put("deptMap", new HashMap<>());
try {
if (queryPdu.getSiteId() != null) {
if (!ObjectUtils.isEmpty(queryPdu.getDeviceCode())) {
Map<String, String> deptMap = deviceMatterDatumService.find(new DeviceMatterDatumQuery().siteId(queryPdu.getSiteId()).deviceCode(queryPdu.getDeviceCode())).stream().collect(Collectors.toMap(x -> x.getDeptCode(), y -> y.getDeptName(), (o, n) -> n));
;
model.put("deptMap", deptMap);
// deptPdu.setIdList(deptIdList);
} else {
Map<String, String> deptMap = matterService.find(new MatterQuery().siteId(queryPdu.getSiteId())).stream().collect(Collectors.toMap(x -> x.getDeptCode(), y -> y.getDeptName(), (o, n) -> n));
model.put("deptMap", deptMap);
}
}
model.put("message_info", busiDesc + "成功");
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception var9) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment