Commit e4024d8f authored by suhuiguang's avatar suhuiguang

Merge branch 'dev_upgrade' into dev_upgrade_rule

# Conflicts: # YeeAmosFireAutoSysService/src/main/java/com/yeejoin/amos/fas/business/service/impl/RiskSourceServiceImpl.java # YeeAmosFireAutoSysService/src/main/java/com/yeejoin/amos/fas/business/service/intfc/IRiskSourceService.java
parents c7dbaa5c 43869524
......@@ -5,10 +5,12 @@ import com.google.common.collect.Maps;
import com.yeejoin.amos.fas.business.param.PointListParam;
import com.yeejoin.amos.fas.business.param.QueryParamUtil;
import com.yeejoin.amos.fas.business.service.intfc.ICommonService;
import com.yeejoin.amos.fas.business.service.intfc.IRiskSourceService;
import com.yeejoin.amos.fas.business.vo.ReginParams;
import com.yeejoin.amos.fas.config.Permission;
import com.yeejoin.amos.fas.core.common.request.CommonPageable;
import com.yeejoin.amos.fas.core.common.request.CommonRequest;
import com.yeejoin.amos.fas.core.common.response.RiskSourceTreeResponse;
import com.yeejoin.amos.fas.core.util.CommonResponse;
import com.yeejoin.amos.fas.core.util.CommonResponseUtil;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
......@@ -21,6 +23,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cglib.beans.BeanMap;
import org.springframework.data.domain.Page;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
......@@ -31,11 +34,13 @@ import java.util.Map;
@RequestMapping(value = "/api/common")
@Api(tags = "公共资源api")
public class CommonController extends BaseController {
private final Logger log = LoggerFactory.getLogger(CommonController.class);
@Autowired
private ICommonService commonService;
@Autowired
private IRiskSourceService iRiskSourceService;
private final Logger log = LoggerFactory.getLogger(CommonController.class);
/**
......@@ -53,19 +58,11 @@ public class CommonController extends BaseController {
return CommonResponseUtil.failure("公司信息获取失败!");
}
List<DepartmentModel> deps = commonService.getDepartment(getToken(),getProduct(),getAppKey(), companyId);
return CommonResponseUtil.success(objectsToMaps(deps));
}
public static <T> Map<String, Object> beanToMap(T bean) {
Map<String, Object> map = Maps.newHashMap();
if (bean != null) {
......@@ -95,14 +92,7 @@ public class CommonController extends BaseController {
}
}
return list;
}
}
/**
* 查询巡检点信息
......@@ -116,7 +106,6 @@ public class CommonController extends BaseController {
public CommonResponse getPoints(
@ApiParam(value = "查询条件", required = false) @RequestBody(required = false) List<CommonRequest> queryRequests,
@ApiParam(value = "分页参数", required = true, defaultValue = "pageNumber=0&pageSize=10") CommonPageable commonPageable) {
try {
PointListParam params = new PointListParam();
QueryParamUtil.fillPointListParam(queryRequests, commonPageable, params);
......@@ -180,4 +169,10 @@ public class CommonController extends BaseController {
List<AgencyUserModel> users = commonService.getAllUser(getToken(),getProduct(),getAppKey(), compCode);
return CommonResponseUtil.success(users);
}
@ApiOperation(value = "查询公司下的风险模型(厂区、区域、风险点)")
@GetMapping(value = "/riskSource/list/{orgCode}",produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public CommonResponse getRiskSourceList(@PathVariable String orgCode){
return CommonResponseUtil.success(iRiskSourceService.findRiskSourceTrees(orgCode));
}
}
package com.yeejoin.amos.fas.business.controller;
import java.util.HashMap;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.fas.business.param.CommonPageInfoParam;
import com.yeejoin.amos.fas.business.param.RiskFmeaParam;
import com.yeejoin.amos.fas.business.service.intfc.IFmeaService;
......@@ -15,18 +31,10 @@ import com.yeejoin.amos.fas.core.util.CommonResponseUtil;
import com.yeejoin.amos.fas.dao.entity.Fmea;
import com.yeejoin.amos.fas.dao.entity.RiskSource;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
@RestController
@RequestMapping("/api/riskModel")
......@@ -37,7 +45,7 @@ public class RiskModelController extends BaseController {
@Autowired
private IRiskSourceService riskSourceService;
@Autowired
private IFmeaService fmeaService;
......@@ -71,6 +79,20 @@ public class RiskModelController extends BaseController {
if (type.equals(2) && isRegion.equals("TRUE")) {
return CommonResponseUtil.failure("该区域下只能添加风险点");
}
Long id = param.getId();
if (id == 0) {//新增
} else {
// 更新的话,就放到前面,更新失败直接阻止本地
// 如果对于新增修改有什么约束,请添加到远程同步之前
String synMsg = riskSourceService.saveToEquipManage(getAppKey(), getProduct(), getToken(), SUCCESS,
param.getId(), param.getCode(), param.getName(), param.getParentId());
if (synMsg != null) {
return CommonResponseUtil.failure(synMsg);
}
}
AgencyUserModel user = getUserInfo();
ReginParams reginParams =getSelectedOrgInfo();
String compCode=getOrgCode(reginParams);
......@@ -78,13 +100,27 @@ public class RiskModelController extends BaseController {
map.put("org_code", compCode);
map.put("user_id", user.getUserId());
map.put("param", param);
return CommonResponseUtil.success(riskSourceService.editRiskSource(map));
CommonResponse cr = CommonResponseUtil.success(riskSourceService.editRiskSource(map));
if (id == 0) {//新增 新增的话,只能放到本地之后,因为必须拿到新增之后的ID才行
// 如果对于新增修改有什么约束,请添加到远程同步之前
String synMsg = riskSourceService.saveToEquipManage(getAppKey(), getProduct(), getToken(), SUCCESS,
param.getId(), param.getCode(), param.getName(), param.getParentId());
if (synMsg != null) {
//远程新增失败,就把本地删了,有点绕,但是没办法
//由于是刚刚新建的,就直接删除,不做任何不能删校验。
riskSourceService.deleteById(param.getId());
return CommonResponseUtil.failure(synMsg);
}
}
return cr;
} catch (Exception e) {
log.error(e.getMessage(), e);
return CommonResponseUtil.failure("风险模型新增及维护失败:" + e.getMessage());
}
}
/**
* 风险模型删除
*/
......@@ -93,7 +129,7 @@ public class RiskModelController extends BaseController {
@RequestMapping(value = "/riskSource/deleteRiskSource", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse deleteRiskSource(@ApiParam(value = "风险模型id", required = true) @RequestBody Long[] riskSourceId) {
try {
riskSourceService.deleteRiskSource(riskSourceId);
riskSourceService.deleteRiskSource(getAppKey(), getProduct(), getToken(), SUCCESS, riskSourceId);
return CommonResponseUtil.success();
} catch (Exception e) {
log.error(e.getMessage(), e);
......
......@@ -15,6 +15,7 @@ import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
......@@ -121,6 +122,23 @@ public class RiskSourceController extends BaseController {
return CommonResponseUtil.success(getRiskSourcesTree(riskSources));
}
@Permission
@ApiOperation(value = "远程同步", notes = "将本地 风险模型推送到远程同步")
@PutMapping(value = "/synToEquipManage")
public CommonResponse synToEquipManage() {
ReginParams reginParams =getSelectedOrgInfo();
String compCode=getOrgCode(reginParams);
if(!riskSourceService.isSynEquipManage()) {
return CommonResponseUtil.failure("同步功能未开启");
}
List<RiskSourceTreeResponse> riskSources = riskSourceService.findRiskSourceTrees(compCode);
String synMsg = riskSourceService.synToEquipManage(getAppKey(), getProduct(), getToken(), SUCCESS, getRiskSourcesTree(riskSources));
if (synMsg != null) {
return CommonResponseUtil.failure(synMsg);
}
return CommonResponseUtil.success();
}
/**
* 获取区域树型结构
*
......
package com.yeejoin.amos.fas.business.feign;
import com.yeejoin.amos.fas.core.util.CommonResponse;
public class EquipManageFeignFallback implements IEquipManageFeign{
@Override
public CommonResponse saveWarehouse(String appKey, String product, String token, String param) {
return null;
}
@Override
public CommonResponse delWarehouse(String appKey, String product, String token, String param) {
return null;
}
}
package com.yeejoin.amos.fas.business.feign;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import com.yeejoin.amos.fas.core.util.CommonResponse;
@FeignClient(name="${equipManage.fegin.name}", fallback=MassVisualFallback.class, configuration=FeignConfiguration.class)
public interface IEquipManageFeign {
/**
*
* 远程保存仓库,如果id存在就更新,不存在就新增。
*
* @param appKey
* @param product
* @param token
* @param param
* @return CommonResponse
* @throws <br>
* @author 张展弋
* @date 2020-9-8 15:15:18
*/
@RequestMapping(value = "/equip/warehouse/saveAutoSysSyn", method = RequestMethod.POST,consumes = "application/json")
public CommonResponse saveWarehouse(
@RequestHeader(name="appKey",required = true) String appKey,
@RequestHeader(name="product",required = true) String product,
@RequestHeader(name="token",required = true) String token,
@RequestBody String param);
/**
*
* 远程删除仓库
*
* @param appKey
* @param product
* @param token
* @param riskSourceId 网络传输不支持long这边传string那边long接
* @return CommonResponse
* @throws <br>
* @author 张展弋
* @date 2020-9-8 17:43:11
*/
@RequestMapping(value = "/equip/warehouse/deleteAutoSysSyn", method = RequestMethod.POST,consumes = "application/json")
public CommonResponse delWarehouse(
@RequestHeader(name="appKey",required = true) String appKey,
@RequestHeader(name="product",required = true) String product,
@RequestHeader(name="token",required = true) String token,
@RequestBody String riskSourceId);
}
package com.yeejoin.amos.fas.business.service.intfc;
import com.yeejoin.amos.fas.business.action.model.FireEquimentDataRo;
import com.yeejoin.amos.fas.business.action.model.ProtalDataRo;
import com.yeejoin.amos.fas.business.bo.BindRegionBo;
......@@ -19,7 +20,6 @@ import org.springframework.data.domain.Page;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
public interface IRiskSourceService {
......@@ -27,11 +27,55 @@ public interface IRiskSourceService {
* 新增及维护风险点
*/
RiskSource editRiskSource(HashMap<String, Object> map) throws Exception;
/**
* 风险模型新增及维护时远程同步
*
* @param appKey
* @param product
* @param token
* @param success contoler中的系统通用failed标识和这里返回前台的不一样。
* @param id
* @param code
* @param name
* @param parentId
* @return CommonResponse
* @throws <br>
* @author 张展弋
* @date 2020-9-8 17:39:32
*/
String saveToEquipManage(String appKey, String product, String token, String success, long id,
String code, String name, Long parentId);
/**
* 将本地 风险模型推送到远程同步
*
* @param appKey
* @param product
* @param token
* @param success
* @param riskSourcesTree
* @return String
* @throws <br>
* @author 张展弋
* @date 2020-9-9 15:40:18
*/
String synToEquipManage(String appKey, String product, String token, String success, List<RiskSourceTreeResponse> riskSourcesTree);
/**
*
* 是否同步到对站系统
*
* @return boolean
* @throws <br>
* @author 张展弋
* @date 2020-9-8 15:45:34
*/
boolean isSynEquipManage();
/**
* 删除风险点
*/
void deleteRiskSource(Long[] riskSourceId) throws Exception;
void deleteRiskSource(String appKey,String product,String token,String failed,Long[] riskSourceId) throws Exception;
/**
* 根据参数分页查询风险点信息
......@@ -139,4 +183,15 @@ public interface IRiskSourceService {
void notifyFmeaFromDelete(Long handId, String from);
void notifyRiskSourceDelete(Long handId);
/**
*
* 不做任何不能删校验,直接删除,慎用
*
* @param id void
* @throws <br>
* @author 张展弋
* @date 2020-9-9 11:53:36
*/
void deleteById(Long id);
}
security.password=a1234560
security.loginId=shg
security.loginId=fas_autosys
security.productWeb=CONVERTER_STATION_WEB
security.appKeyWeb=CONVERTER_STATION
......@@ -12,7 +12,7 @@ eureka.client.healthcheck.enabled = true
eureka.client.fetchRegistry = true
eureka.instance.prefer-ip-address=true
#DB properties:
spring.datasource.url=jdbc:mysql://172.16.11.33:3306/v2.0_zmd_yeejoin_safety_business?allowMultiQueries=true&serverTimezone=GMT%2B8&characterEncoding=utf8
spring.datasource.url=jdbc:mysql://172.16.11.33:3306/safety-business-2.0-36?allowMultiQueries=true&serverTimezone=GMT%2B8&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=admin_1234
spring.datasource.driver-class-name = com.mysql.jdbc.Driver
......@@ -63,11 +63,8 @@ rule.definition.load=true
rule.definition.model-package=com.yeejoin.amos.fas.business.action.model
rule.definition.default-agency=STATE_GRID
amos.feign.gennerator.use-gateway=true
autoSys.push.type=mqtt
amos.feign.gennerator.use-gateway=true
#�����
file.downLoad.url=http://172.16.10.175:8888/
......@@ -46,6 +46,10 @@ spring.servlet.multipart.max-request-size=20MB
#feginName
visual.fegin.name=maas-visual
dutyMode.fegin.name=AMOSDUTYMODE
#队站装备管理名称,主要用于风险区域同步至仓库货位
equipManage.fegin.name=AMOS-EQUIPMANAGE-ZZY
#是否开启将风险区域同步至仓库货位true开启,false关闭。默认关闭。
equipManage.fegin.isSyn=false
spring.http.multipart.maxFileSize = 10480000
spring.http.multipart.MaxRequestSize = 50480000
......
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