Commit e0b7801b authored by maoying's avatar maoying

Merge branch 'developer' into temp

parents 42cd994b 2926a682
...@@ -9,7 +9,8 @@ import java.lang.annotation.Target; ...@@ -9,7 +9,8 @@ import java.lang.annotation.Target;
/** /**
* @author DELL * @author DELL
* *
* 注解在mapper方法上 * 注解需要数据权限过滤的mapper。
* interfacePath对应为平台菜单管理中菜单组件(全局唯一)。
*/ */
@Target(ElementType.METHOD) @Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME) @Retention(RetentionPolicy.RUNTIME)
...@@ -20,6 +21,6 @@ public @interface DataAuth { ...@@ -20,6 +21,6 @@ public @interface DataAuth {
* 菜单组件 * 菜单组件
* @return * @return
*/ */
String interfacePath() default ""; String interfacePath();
} }
...@@ -61,30 +61,39 @@ public class PermissionInterceptor implements Interceptor { ...@@ -61,30 +61,39 @@ public class PermissionInterceptor implements Interceptor {
MetaObject metaObject = SystemMetaObject.forObject(statementHandler); MetaObject metaObject = SystemMetaObject.forObject(statementHandler);
MappedStatement mappedStatement = (MappedStatement) metaObject.getValue("delegate.mappedStatement"); MappedStatement mappedStatement = (MappedStatement) metaObject.getValue("delegate.mappedStatement");
// TODO 处理mybatis plus
String dataAuthRule = PermissionInterceptorContext.getDataAuthRule();
// 被拦截方法 // 被拦截方法
Method method = getTargetDataAuthMethod(mappedStatement); Method method = getTargetDataAuthMethod(mappedStatement);
DataAuth dataAuth = getTargetDataAuthAnnotation(mappedStatement); DataAuth dataAuth = getTargetDataAuthAnnotation(mappedStatement);
// 没有DataAuth定义注解的跳过 // 没有DataAuth定义注解的跳过及没有手动指定使用数据规则的跳过
if (null == dataAuth) { if (null == dataAuth && ValidationUtil.isEmpty(dataAuthRule)) {
PermissionInterceptorContext.clean();
return invocation.proceed(); return invocation.proceed();
} }
// 接口地址为空返回空数据 // 数据权限地址为空返回空数据
if (ValidationUtil.isEmpty(dataAuth.interfacePath())) { if (ValidationUtil.isEmpty(dataAuth.interfacePath()) && ValidationUtil.isEmpty(dataAuthRule)) {
// method.getReturnType().isPrimitive() = true 是count语句 // method.getReturnType().isPrimitive() = true 是count语句
PermissionInterceptorContext.clean();
return method.getReturnType().isPrimitive() ? invocation.proceed() : null; return method.getReturnType().isPrimitive() ? invocation.proceed() : null;
} }
dataAuthRule = ValidationUtil.isEmpty(dataAuth.interfacePath()) ? dataAuthRule : dataAuth.interfacePath();
ReginParams reginParam = JSON.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId() ReginParams reginParam = JSON.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId()
, RequestContext.getToken())).toString(), ReginParams.class); , RequestContext.getToken())).toString(), ReginParams.class);
if (ValidationUtil.isEmpty(reginParam) || ValidationUtil.isEmpty(reginParam.getUserModel())) { if (ValidationUtil.isEmpty(reginParam) || ValidationUtil.isEmpty(reginParam.getUserModel())) {
// method.getReturnType().isPrimitive() = true 是count语句 // method.getReturnType().isPrimitive() = true 是count语句
PermissionInterceptorContext.clean();
return method.getReturnType().isPrimitive() ? invocation.proceed() : null; return method.getReturnType().isPrimitive() ? invocation.proceed() : null;
} }
// 用户数据权限配置信息 // 用户数据权限配置信息
Map<String, List<PermissionDataruleModel>> dataAuthorization = Privilege.permissionDataruleClient.queryByUser(reginParam.getUserModel().getUserId(), Map<String, List<PermissionDataruleModel>> dataAuthorization = Privilege.permissionDataruleClient.queryByUser(reginParam.getUserModel().getUserId(),
dataAuth.interfacePath()).getResult(); dataAuthRule).getResult();
// 没有数据权限直接返回空数据 // 没有数据权限直接返回空数据
if (ValidationUtil.isEmpty(dataAuthorization)) { if (ValidationUtil.isEmpty(dataAuthorization)) {
PermissionInterceptorContext.clean();
return method.getReturnType().isPrimitive() ? invocation.proceed() : null; return method.getReturnType().isPrimitive() ? invocation.proceed() : null;
} }
...@@ -93,6 +102,7 @@ public class PermissionInterceptor implements Interceptor { ...@@ -93,6 +102,7 @@ public class PermissionInterceptor implements Interceptor {
// 将权限规则拼接到原始sql // 将权限规则拼接到原始sql
sql = processSelectSql(sql, dataAuthorization, reginParam, boundSql); sql = processSelectSql(sql, dataAuthorization, reginParam, boundSql);
metaObject.setValue("delegate.boundSql.sql", sql); metaObject.setValue("delegate.boundSql.sql", sql);
PermissionInterceptorContext.clean();
return invocation.proceed(); return invocation.proceed();
} }
......
package com.yeejoin.amos.boot.biz.common.interceptors;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class PermissionInterceptorContext {
private static final Logger logger = LoggerFactory.getLogger(PermissionInterceptorContext.class);
private static ThreadLocal<PermissionInterceptorContextModel> requestContext = ThreadLocal.withInitial(PermissionInterceptorContextModel::new);
private static PermissionInterceptorContextModel getPermissionInterceptorContext() {
return requestContext.get();
}
public static String getDataAuthRule() {
return getPermissionInterceptorContext().getDataAuthRule();
}
public static void setDataAuthRule(String dataAuthRule) {
getPermissionInterceptorContext().setDataAuthRule(dataAuthRule);
}
public static void clean() {
if (requestContext != null) {
logger.info("clean RestThreadLocal......Begin");
requestContext.remove();
logger.info("clean RestThreadLocal......Done");
}
}
}
package com.yeejoin.amos.boot.biz.common.interceptors;
import org.typroject.tyboot.core.foundation.context.RequestContextEntityType;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
/**
*
*/
public class PermissionInterceptorContextModel implements Serializable {
private static final long serialVersionUID = 1L;
private String dataAuthRule;
public String getDataAuthRule() {
return dataAuthRule;
}
public void setDataAuthRule(String dataAuthRule) {
this.dataAuthRule = dataAuthRule;
}
public void clean() {
this.dataAuthRule = null;
}
}
...@@ -23,6 +23,7 @@ public class MessageAction { ...@@ -23,6 +23,7 @@ public class MessageAction {
MessageModel messageModel = JSON.parseObject(JSON.toJSONString(msgObj), MessageModel.class); MessageModel messageModel = JSON.parseObject(JSON.toJSONString(msgObj), MessageModel.class);
messageModel.setTitle(title); messageModel.setTitle(title);
messageModel.setBody(RuleUtils.instedParams(content, msgObj)); messageModel.setBody(RuleUtils.instedParams(content, msgObj));
log.info(String.format("接收规则返回数据: %s", JSON.toJSONString(msgObj)));
if (!ValidationUtil.isEmpty(messageModel)) { if (!ValidationUtil.isEmpty(messageModel)) {
try { try {
Systemctl.messageClient.create(messageModel); Systemctl.messageClient.create(messageModel);
......
...@@ -46,7 +46,7 @@ public class ContractDto extends BaseDto { ...@@ -46,7 +46,7 @@ public class ContractDto extends BaseDto {
private String contractNo; private String contractNo;
@ApiModelProperty(value = "机构代码用于权限过滤") @ApiModelProperty(value = "机构代码用于权限过滤")
private Boolean orgCode; private String orgCode;
@ApiModelProperty(value = "单位名称") @ApiModelProperty(value = "单位名称")
private String company; private String company;
......
...@@ -61,7 +61,7 @@ public class Contract extends BaseEntity { ...@@ -61,7 +61,7 @@ public class Contract extends BaseEntity {
* 机构代码用于权限过滤 * 机构代码用于权限过滤
*/ */
@TableField("org_code") @TableField("org_code")
private Boolean orgCode; private String orgCode;
/** /**
* 单位名称 * 单位名称
*/ */
......
...@@ -183,7 +183,9 @@ public interface EquipFeignClient { ...@@ -183,7 +183,9 @@ public interface EquipFeignClient {
* @return * @return
*/ */
@RequestMapping(value = "/building/video/page", method = RequestMethod.GET) @RequestMapping(value = "/building/video/page", method = RequestMethod.GET)
ResponseModel<Page<Map<String, Object>>> getVideo( @RequestParam("current") long current, @RequestParam("size") long size, @RequestParam("buildingId") Long buildingId); ResponseModel<Page<Map<String, Object>>> getVideo( @RequestParam("current") long current,
@RequestParam("size") long size,
@RequestParam("buildingId") Long buildingId);
@RequestMapping(value = "/building/video/page", method = RequestMethod.GET) @RequestMapping(value = "/building/video/page", method = RequestMethod.GET)
ResponseModel<Page<Map<String, Object>>> getVideopag( @RequestParam("current") String current, ResponseModel<Page<Map<String, Object>>> getVideopag( @RequestParam("current") String current,
...@@ -203,13 +205,11 @@ public interface EquipFeignClient { ...@@ -203,13 +205,11 @@ public interface EquipFeignClient {
); );
@RequestMapping(value = "/confirmAlarm/getDetailsById", method = RequestMethod.GET) @RequestMapping(value = "/confirmAlarm/getDetailsById", method = RequestMethod.GET)
public ResponseModel<Map<String, Object>> getDetailsById(@RequestParam Long alamId, @RequestParam(required = false) Long equipId, @RequestParam(required = false) String type, @RequestParam String area) ; ResponseModel<Map<String, Object>> getDetailsById(@RequestParam Long alamId,
@RequestParam(required = false) Long equipId,
@RequestParam(required = false) String type,
@RequestParam String area) ;
/** /**
* *
*获取视频列表 *获取视频列表
...@@ -217,7 +217,11 @@ public interface EquipFeignClient { ...@@ -217,7 +217,11 @@ public interface EquipFeignClient {
* @return * @return
*/ */
@RequestMapping(value = "/video/pageVideo", method = RequestMethod.GET) @RequestMapping(value = "/video/pageVideo", method = RequestMethod.GET)
ResponseModel<Page<Map<String, Object>>> pageVideo( @RequestParam("pageNum") Integer pageNum, @RequestParam("pageSize") Integer pageSize, @RequestParam("longitude") Double longitude,@RequestParam("latitude") Double latitude,@RequestParam("distance") Double distance); ResponseModel<Page<Map<String, Object>>> pageVideo(@RequestParam("pageNum") Integer pageNum,
@RequestParam("pageSize") Integer pageSize,
@RequestParam("longitude") Double longitude,
@RequestParam("latitude") Double latitude,
@RequestParam("distance") Double distance);
@RequestMapping(value = "/video/pageList", method = RequestMethod.GET) @RequestMapping(value = "/video/pageList", method = RequestMethod.GET)
......
...@@ -166,4 +166,8 @@ public interface IMaintenanceCompanyService { ...@@ -166,4 +166,8 @@ public interface IMaintenanceCompanyService {
List<MaintenanceCompany> findByInstanceIdAndType(Long instanceId, String type); List<MaintenanceCompany> findByInstanceIdAndType(Long instanceId, String type);
List<MaintenanceCompany> findByCodeAndType(String code, String type); List<MaintenanceCompany> findByCodeAndType(String code, String type);
List<MaintenanceCompany> findPersonByAmosOrgId(String code, String userId);
MaintenanceCompany getOne(Long parentId);
} }
...@@ -108,8 +108,8 @@ public interface IOrgUsrService { ...@@ -108,8 +108,8 @@ public interface IOrgUsrService {
* @throws Exception * @throws Exception
*/ */
Map<String, Object> selectForShowById(OrgUsr orgUsr, Long id) throws Exception; Map<String, Object> selectForShowById(OrgUsr orgUsr, Long id) throws Exception;
Map<String, Object> selectForShowByIduser(OrgUsr orgUsr, Long id) throws Exception;
Map<String, Object> selectForShowByIduser(OrgUsr orgUsr, Long id) throws Exception;
List<OrgUsr> selectCompanyDepartmentMsg(); List<OrgUsr> selectCompanyDepartmentMsg();
...@@ -145,7 +145,9 @@ public interface IOrgUsrService { ...@@ -145,7 +145,9 @@ public interface IOrgUsrService {
OrgDepartmentFormDto selectDepartmentById(Long id) throws Exception; OrgDepartmentFormDto selectDepartmentById(Long id) throws Exception;
List<Map<String, Object>> selectForShowByListId(List<Long> ids) throws Exception; List<Map<String, Object>> selectForShowByListId(List<Long> ids) throws Exception;
List<Map<String, Object>> selectForShowByListIdUser(List<Long> ids) throws Exception; List<Map<String, Object>> selectForShowByListIdUser(List<Long> ids) throws Exception;
/** /**
* * @param null * * @param null
* *
...@@ -185,7 +187,7 @@ public interface IOrgUsrService { ...@@ -185,7 +187,7 @@ public interface IOrgUsrService {
List<Map<String, Object>> getparent(); List<Map<String, Object>> getparent();
List<OrgUsrExcelDto> exportToExcel( Map par); List<OrgUsrExcelDto> exportToExcel(Map par);
UserUnitDto getUserUnit(String userId); UserUnitDto getUserUnit(String userId);
...@@ -226,7 +228,7 @@ public interface IOrgUsrService { ...@@ -226,7 +228,7 @@ public interface IOrgUsrService {
* *
* @param orgUserId * @param orgUserId
* @return * @return
* @exception * @throws
*/ */
AgencyUserModel getAmosIdByOrgUserId(String orgUserId) throws Exception; AgencyUserModel getAmosIdByOrgUserId(String orgUserId) throws Exception;
...@@ -235,12 +237,13 @@ public interface IOrgUsrService { ...@@ -235,12 +237,13 @@ public interface IOrgUsrService {
* *
* @param orgUserIds * @param orgUserIds
* @return * @return
* @exception * @throws
*/ */
List<String> getAmosIdListByOrgUserId(String orgUserIds) throws Exception; List<String> getAmosIdListByOrgUserId(String orgUserIds) throws Exception;
/** /**
* 查询目标公司下所有人员的简要信息,数据包含:所在公司id和name ,人员id和name,岗位id和name * 查询目标公司下所有人员的简要信息,数据包含:所在公司id和name ,人员id和name,岗位id和name
*
* @param ids * @param ids
* @return * @return
*/ */
...@@ -252,12 +255,12 @@ public interface IOrgUsrService { ...@@ -252,12 +255,12 @@ public interface IOrgUsrService {
OrgUsr selectByAmosOrgId(Long id); OrgUsr selectByAmosOrgId(Long id);
public List<OrgUsr> getPersonListByParentIds(List<String> ids) ; List<OrgUsr> getPersonListByParentIds(List<String> ids);
List<OrgUsrFormDto> getUnSyncOrgCompanyList(List<Long> companyIdList); List<OrgUsrFormDto> getUnSyncOrgCompanyList(List<Long> companyIdList);
public OrgUsr getDetailById( Long id);
OrgUsr getDetailById(Long id);
/** /**
...@@ -275,7 +278,7 @@ public interface IOrgUsrService { ...@@ -275,7 +278,7 @@ public interface IOrgUsrService {
* @throws Exception * @throws Exception
*/ */
List<OrgMenuDto> getTreeFlc(Long topId, Collection entityList, String packageURL, String IDMethodName, int IDHierarchy, List<OrgMenuDto> getTreeFlc(Long topId, Collection entityList, String packageURL, String IDMethodName, int IDHierarchy,
String NAMEMethodName, String PARENTIDMethodName, String OrgTypeMethodName) throws Exception; String NAMEMethodName, String PARENTIDMethodName, String OrgTypeMethodName) throws Exception;
OrgUsrDto saveOrgPersonFlc(OrgPersonDto OrgPersonDto) throws Exception; OrgUsrDto saveOrgPersonFlc(OrgPersonDto OrgPersonDto) throws Exception;
......
...@@ -130,4 +130,22 @@ public class EquipmentInformDto extends BaseDto { ...@@ -130,4 +130,22 @@ public class EquipmentInformDto extends BaseDto {
@TableField(exist = false) @TableField(exist = false)
private Map<String, List<AttachmentDto>> attachments; private Map<String, List<AttachmentDto>> attachments;
@ApiModelProperty(value = "设备数量")
private Integer equipmentNum;
@ApiModelProperty(value = "开始-施工告知日期")
private String productInformDateStart;
@ApiModelProperty(value = "结束-施工告知日期")
private String productInformDateEnd;
@ApiModelProperty(value = "开始-计划施工日期")
private String planProductDateStart;
@ApiModelProperty(value = "结束-计划施工日期")
private String planProductDateEnd;
@ApiModelProperty(value = "施工区域")
private String productArea;
} }
package com.yeejoin.amos.boot.module.tzs.flc.api.mapper; package com.yeejoin.amos.boot.module.tzs.flc.api.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentInformDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.entity.EquipmentInform; import com.yeejoin.amos.boot.module.tzs.flc.api.entity.EquipmentInform;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
/** /**
* 设备告知单 Mapper 接口 * 设备告知单 Mapper 接口
...@@ -11,4 +17,17 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -11,4 +17,17 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/ */
public interface EquipmentInformMapper extends BaseMapper<EquipmentInform> { public interface EquipmentInformMapper extends BaseMapper<EquipmentInform> {
Page<List<EquipmentInformDto>> queryDtoList(Page<EquipmentInformDto> page,
@Param("productCode") String productCode,
@Param("productInformDateStart") String productInformDateStart,
@Param("productInformDateEnd") String productInformDateEnd,
@Param("productUnitId") Long productUnitId,
@Param("regionCode") String regionCode,
@Param("address") String address,
@Param("planProductDateStart") String planProductDateStart,
@Param("planProductDateEnd") String planProductDateEnd,
@Param("acceptUnitId") Long acceptUnitId,
@Param("informStatus") String informStatus,
@Param("sortParam") String sortParam,
@Param("sortRule") String sortRule);
} }
...@@ -16,4 +16,6 @@ import java.util.List; ...@@ -16,4 +16,6 @@ import java.util.List;
public interface UnitInfoMapper extends BaseMapper<UnitInfo> { public interface UnitInfoMapper extends BaseMapper<UnitInfo> {
List<UnitInfoDto> getUnitByType(@Param("typeCode") String typeCode); List<UnitInfoDto> getUnitByType(@Param("typeCode") String typeCode);
List<UnitInfoDto> getAllUnit();
} }
package com.yeejoin.amos.boot.module.tzs.flc.api.service; package com.yeejoin.amos.boot.module.tzs.flc.api.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentInformDto; import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentInformDto;
import java.util.List;
/** /**
* 设备告知单接口类 * 设备告知单接口类
* *
...@@ -13,4 +16,7 @@ public interface IEquipmentInformService { ...@@ -13,4 +16,7 @@ public interface IEquipmentInformService {
EquipmentInformDto createEquipmentInform(EquipmentInformDto model); EquipmentInformDto createEquipmentInform(EquipmentInformDto model);
Page<EquipmentInformDto> queryDtoList(Page<EquipmentInformDto> page, EquipmentInformDto equipmentInformDto, String sortParam, String sortRule);
Boolean batchDelete(List<Long> sequenceNbrList);
} }
...@@ -38,4 +38,6 @@ public interface IUnitInfoService { ...@@ -38,4 +38,6 @@ public interface IUnitInfoService {
List<UnitInfoDto> getInspectionUnit(); List<UnitInfoDto> getInspectionUnit();
List<UnitInfoDto> getUseUnit(); List<UnitInfoDto> getUseUnit();
List<UnitInfoDto> getAllUnit();
} }
...@@ -2,4 +2,69 @@ ...@@ -2,4 +2,69 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.tzs.flc.api.mapper.EquipmentInformMapper"> <mapper namespace="com.yeejoin.amos.boot.module.tzs.flc.api.mapper.EquipmentInformMapper">
<select id="queryDtoList" resultType="java.util.Map">
SELECT
a.sequence_nbr AS sequenceNbr,
a.product_code AS productCode,
a.product_unit AS productUnit,
CONCAT(a.province,a.city,a.district) AS productArea,
CONCAT(a.stree,a.community,a.address) AS address,
a.plan_product_date AS planProductDate,
a.product_inform_date AS productInformDate,
a.accept_unit AS acceptUnit,
CASE
a.inform_status
WHEN 0 THEN
'暂存'
WHEN 1 THEN
'未接收'
WHEN 9 THEN
'已接收'
ELSE
''
END AS informStatus,
IFNULL(t.equipmentNum, 0) as equipmentNum
FROM
tz_equipment_inform a
LEFT JOIN (select count(e.sequence_nbr) as equipmentNum, e.inform_id from tcb_inform_equipment e GROUP BY e.inform_id ) t on t.inform_id = a.sequence_nbr
WHERE a.is_delete = 0
<if test="productCode != null and productCode != ''">
AND a.product_code like CONCAT('%',#{productCode},'%')
</if>
<if test="productUnitId != null ">
AND a.product_unit_id = #{productUnitId}
</if>
<if test="regionCode != null and regionCode != ''">
AND a.region_code like CONCAT('%',#{regionCode},'%')
</if>
<if test="address != null and address != ''">
AND ( a.stree like CONCAT('%',#{address},'%')
or a.community like CONCAT('%',#{address},'%')
or a.address like CONCAT('%',#{address},'%') )
</if>
<if test="productInformDateStart != null and productInformDateStart != ''">
and #{productInformDateStart} <![CDATA[ <= ]]> a.product_inform_date
</if>
<if test="productInformDateEnd != null and productInformDateEnd != ''">
and a.product_inform_date <![CDATA[ <= ]]> #{productInformDateEnd}
</if>
<if test="planProductDateStart != null and planProductDateStart != ''">
and #{planProductDateStart} <![CDATA[ <= ]]> a.plan_product_date
</if>
<if test="planProductDateEnd != null and planProductDateEnd != ''">
and a.plan_product_date <![CDATA[ <= ]]> #{planProductDateEnd}
</if>
<if test="acceptUnitId != null ">
AND a.accept_unit_id = #{acceptUnitId}
</if>
<if test="informStatus != null and informStatus != ''">
AND a.inform_status = #{informStatus}
</if>
<if test="sortParam != null and sortParam != '' and sortRule != null and sortRule != '' ">
ORDER BY ${sortParam} ${sortRule}
</if>
</select>
</mapper> </mapper>
...@@ -12,5 +12,14 @@ ...@@ -12,5 +12,14 @@
AND a.unit_type_code LIKE CONCAT('%', #{typeCode}, '%') AND a.unit_type_code LIKE CONCAT('%', #{typeCode}, '%')
</select> </select>
<select id="getAllUnit" resultType="com.yeejoin.amos.boot.module.tzs.flc.api.dto.UnitInfoDto">
select
a.*
from tz_flc_unit_info a
where a.is_delete = 0
AND
(a.unit_status = '1' or a.is_change = 1)
</select>
</mapper> </mapper>
...@@ -172,7 +172,7 @@ public class CommandController extends BaseController { ...@@ -172,7 +172,7 @@ public class CommandController extends BaseController {
public ResponseModel<Page<AlertCalledZhDto>> listhistoryPage(Integer pageNum, Integer pageSize, RequestData par) { public ResponseModel<Page<AlertCalledZhDto>> listhistoryPage(Integer pageNum, Integer pageSize, RequestData par) {
if(par.getStatus() != null&&par.getStatus() == -1 ){ if (par.getStatus() != null && par.getStatus() == -1) {
AgencyUserModel agencyUserModel = getUserInfo(); AgencyUserModel agencyUserModel = getUserInfo();
Long id = null; Long id = null;
...@@ -181,17 +181,17 @@ public class CommandController extends BaseController { ...@@ -181,17 +181,17 @@ public class CommandController extends BaseController {
//获取正在进行的灾情null //获取正在进行的灾情null
if (userCar != null) { if (userCar != null) {
AlertCalled alertCalled = powerTransferCompanyResourcesService.getByPowerTransferCompanyResourId(userCar.getCarId()); AlertCalled alertCalled = powerTransferCompanyResourcesService.getByPowerTransferCompanyResourId(userCar.getCarId());
if(alertCalled!=null){ if (alertCalled != null) {
par.setAlertId(alertCalled.getSequenceNbr()); par.setAlertId(alertCalled.getSequenceNbr());
par.setStatus(null); par.setStatus(null);
}else{ } else {
return ResponseHelper.buildResponse(null); return ResponseHelper.buildResponse(null);
} }
}else{ } else {
return ResponseHelper.buildResponse(null); return ResponseHelper.buildResponse(null);
} }
}else{ } else {
if (par.getStatus() == null) { if (par.getStatus() == null) {
par.setStatus(1); par.setStatus(1);
} }
...@@ -295,15 +295,12 @@ public class CommandController extends BaseController { ...@@ -295,15 +295,12 @@ public class CommandController extends BaseController {
@GetMapping(value = "video/list") @GetMapping(value = "video/list")
@ApiOperation(httpMethod = "GET", value = " 视频分页查询88", notes = "视频分页查询88") @ApiOperation(httpMethod = "GET", value = " 视频分页查询88", notes = "视频分页查询88")
public ResponseModel<Object> getVideo(Integer pageNum, Integer pageSize, RequestData par) { public ResponseModel<Object> getVideo(Integer pageNum, Integer pageSize, RequestData par) {
if (par.getAlertId() != null) { if (par.getAlertId() != null) {
AlertCalled alertCalled = iAlertCalledService.getAlertCalledById(par.getAlertId()); AlertCalled alertCalled = iAlertCalledService.getAlertCalledById(par.getAlertId());
par.setLatitude(alertCalled.getCoordinateX()); par.setLatitude(alertCalled.getCoordinateX());
par.setLongitude(alertCalled.getCoordinateY()); par.setLongitude(alertCalled.getCoordinateY());
} }
ResponseModel<Page<Map<String, Object>>> data = equipFeignClient.pageVideo(pageNum == 0 ? 1 : pageNum, pageSize, par.getLongitude(), par.getLatitude(), par.getDistance()); ResponseModel<Page<Map<String, Object>>> data = equipFeignClient.pageVideo(pageNum == 0 ? 1 : pageNum, pageSize, par.getLongitude(), par.getLatitude(), par.getDistance());
Page<Map<String, Object>> pag = data != null ? data.getResult() : null; Page<Map<String, Object>> pag = data != null ? data.getResult() : null;
List<Map<String, Object>> records = pag != null ? pag.getRecords() : null; List<Map<String, Object>> records = pag != null ? pag.getRecords() : null;
if (records != null && records.size() > 0) { if (records != null && records.size() > 0) {
...@@ -343,21 +340,16 @@ public class CommandController extends BaseController { ...@@ -343,21 +340,16 @@ public class CommandController extends BaseController {
} }
@TycloudOperation(needAuth = true, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = true, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "分页查询视图下的视频列表") @ApiOperation(value = "分页查询视图下的视频列表")
@RequestMapping(value = "monitorView/video/page", method = RequestMethod.GET) @RequestMapping(value = "monitorView/video/page", method = RequestMethod.GET)
public ResponseModel<Page<Map<String, Object>>> queryUncheckedVideoList( public ResponseModel<Page<Map<String, Object>>> queryUncheckedVideoList(
@RequestParam(value = "nodeId") Long nodeId, @RequestParam(value = "nodeId") Long nodeId,
@RequestParam(value = "nodeType" ,required =false) String nodeType, @RequestParam(value = "nodeType", required = false) String nodeType,
@RequestParam(value = "current") int current, @RequestParam(value = "current") int current,
@RequestParam(value = "size") int size @RequestParam(value = "size") int size
) throws Exception ) throws Exception {
{ ResponseModel<Page<Map<String, Object>>> data = equipFeignClient.queryVideoPage(nodeId, nodeType, current, size);
ResponseModel<Page<Map<String, Object>>> data = equipFeignClient.queryVideoPage(nodeId,nodeType,current,size);
Page<Map<String, Object>> pag = data != null ? data.getResult() : null; Page<Map<String, Object>> pag = data != null ? data.getResult() : null;
List<Map<String, Object>> records = pag != null ? pag.getRecords() : null; List<Map<String, Object>> records = pag != null ? pag.getRecords() : null;
if (records != null && records.size() > 0) { if (records != null && records.size() > 0) {
...@@ -375,24 +367,21 @@ public class CommandController extends BaseController { ...@@ -375,24 +367,21 @@ public class CommandController extends BaseController {
@GetMapping(value = "confirmAlarm/getDetailsById") @GetMapping(value = "confirmAlarm/getDetailsById")
@ApiOperation(value = "根据id,type查询确警页面相关数据") @ApiOperation(value = "根据id,type查询确警页面相关数据")
public ResponseModel<Map<String, Object>> getDetailsById(@RequestParam Long alamId, @RequestParam Long equipId, @RequestParam String type, @RequestParam String area) { public ResponseModel<Map<String, Object>> getDetailsById(@RequestParam Long alamId, @RequestParam Long equipId, @RequestParam String type, @RequestParam String area) {
ResponseModel<Map<String, Object>> response = equipFeignClient.getDetailsById( alamId, equipId, type, area); ResponseModel<Map<String, Object>> response = equipFeignClient.getDetailsById(alamId, equipId, type, area);
Map<String, Object> data = response.getResult(); Map<String, Object> data = response.getResult();
List<Map<String, Object>> records = data != null ? (List<Map<String, Object>>)data.get("video") : null; List<Map<String, Object>> records = data != null ? (List<Map<String, Object>>) data.get("video") : null;
if (records != null && records.size() > 0) { if (records != null && records.size() > 0) {
for (Map<String, Object> record : records) { for (Map<String, Object> record : records) {
ResponseModel<String> da = videoFeignClient.videoUrlByIndexCode(record.get("code") + ""); ResponseModel<String> da = videoFeignClient.videoUrlByIndexCode(record.get("code") + "");
String url = da != null ? da.getResult().substring(da.getResult().indexOf("openUrl")) : null; String url = da != null ? da.getResult().substring(da.getResult().indexOf("openUrl")) : null;
record.put("url", url); record.put("url", url);
} }
data.put("video",records); data.put("video", records);
} }
return ResponseHelper.buildResponse(data); return ResponseHelper.buildResponse(data);
} }
/** /**
* 水源列表分页查询 * 水源列表分页查询
* *
...@@ -589,16 +578,16 @@ public class CommandController extends BaseController { ...@@ -589,16 +578,16 @@ public class CommandController extends BaseController {
public ResponseModel<JSONObject> selectOne(Long id) { public ResponseModel<JSONObject> selectOne(Long id) {
JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(iWaterResourceService.selectBySequenceNbr(id))); JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(iWaterResourceService.selectBySequenceNbr(id)));
if(!ValidationUtil.isEmpty(jsonObject.get("buildDate"))) { if (!ValidationUtil.isEmpty(jsonObject.get("buildDate"))) {
String str = jsonObject.get("buildDate").toString(); String str = jsonObject.get("buildDate").toString();
Date date = new Date(Long.parseLong(str)); Date date = new Date(Long.parseLong(str));
jsonObject.put("buildDate", DateUtils.convertDateToString(date,DateUtils.DATE_TIME_PATTERN)); jsonObject.put("buildDate", DateUtils.convertDateToString(date, DateUtils.DATE_TIME_PATTERN));
} else { } else {
jsonObject.put("buildDate", ""); jsonObject.put("buildDate", "");
} }
if(ValidationUtil.isEmpty(jsonObject.get("intakeHeight"))) { if (ValidationUtil.isEmpty(jsonObject.get("intakeHeight"))) {
jsonObject.put("intakeHeight", ""); jsonObject.put("intakeHeight", "");
} }
return ResponseHelper.buildResponse(jsonObject); return ResponseHelper.buildResponse(jsonObject);
...@@ -1074,8 +1063,7 @@ public class CommandController extends BaseController { ...@@ -1074,8 +1063,7 @@ public class CommandController extends BaseController {
Page page = new Page(current, size); Page page = new Page(current, size);
List<OrderItem> list = OrderItem.ascs("id"); List<OrderItem> list = OrderItem.ascs("id");
page.setOrders(list); page.setOrders(list);
ResponseModel<Page<Map<String, Object>>> data = equipFeignClient.getVideo(current, size, 0l); ResponseModel<Page<Map<String, Object>>> data = equipFeignClient.getVideo(current, size, 0L);
Page<Map<String, Object>> pag = data != null ? data.getResult() : null; Page<Map<String, Object>> pag = data != null ? data.getResult() : null;
List<Map<String, Object>> records = pag != null ? pag.getRecords() : null; List<Map<String, Object>> records = pag != null ? pag.getRecords() : null;
if (records != null && records.size() > 0) { if (records != null && records.size() > 0) {
...@@ -1453,71 +1441,69 @@ public class CommandController extends BaseController { ...@@ -1453,71 +1441,69 @@ public class CommandController extends BaseController {
} }
@TycloudOperation(needAuth = true, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = true, ApiLevel = UserType.AGENCY)
@RequestMapping(value = "getPowerTransferCompanyResourcesServiceNew", produces = "application/json;charset=UTF-8", method = RequestMethod.GET) @RequestMapping(value = "getPowerTransferCompanyResourcesServiceNew", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "获取当前任务,车辆状态,随车人员,任务详情", notes = "获取当前任务,车辆状态,随车人员,任务详情") @ApiOperation(httpMethod = "GET", value = "获取当前任务,车辆状态,随车人员,任务详情", notes = "获取当前任务,车辆状态,随车人员,任务详情")
public ResponseModel<Object> getPowerTransferCompanyResourcesNewService(@RequestParam String id public ResponseModel<Object> getPowerTransferCompanyResourcesNewService(@RequestParam String id
) { ) {
PowerTransferCompanyResources powerTransferCompanyResources = new PowerTransferCompanyResources(); PowerTransferCompanyResources powerTransferCompanyResources = new PowerTransferCompanyResources();
// 根据车牌查询车辆调派信息级警情id // 根据车牌查询车辆调派信息级警情id
List<PowerData> pw = powerTransferMapper.getPowerDataCar(id); List<PowerData> pw = powerTransferMapper.getPowerDataCar(id);
if(null != pw && pw.size() > 0) { if (null != pw && pw.size() > 0) {
Long alertCalledId = Long.valueOf(pw.get(0).getAlertCallId()); Long alertCalledId = Long.valueOf(pw.get(0).getAlertCallId());
Long carid = Long.valueOf(pw.get(0).getResourcesId()); Long carid = Long.valueOf(pw.get(0).getResourcesId());
//获取正在进行的灾情 //获取正在进行的灾情
powerTransferCompanyResources = powerTransferCompanyResourcesService.getByAlertCalledIdCarId(alertCalledId, carid); powerTransferCompanyResources = powerTransferCompanyResourcesService.getByAlertCalledIdCarId(alertCalledId, carid);
// 随车人员 // 随车人员
// List<PowerData> powerDataOne = powerTransferMapper.getPowerDataOne(carid); // List<PowerData> powerDataOne = powerTransferMapper.getPowerDataOne(carid);
List<Map<String, Object>> equipmentList = iDutyCarService.getDutyCaruser(carid); List<Map<String, Object>> equipmentList = iDutyCarService.getDutyCaruser(carid);
if(!ValidationUtil.isEmpty(equipmentList)) { if (!ValidationUtil.isEmpty(equipmentList)) {
String str = ""; String str = "";
String newStr = ""; String newStr = "";
for(int i = 0; i < equipmentList.size(); i++ ) { for (int i = 0; i < equipmentList.size(); i++) {
if(i==equipmentList.size()-1){ if (i == equipmentList.size() - 1) {
newStr = str.concat(equipmentList.get(i).get("userName")+""); newStr = str.concat(equipmentList.get(i).get("userName") + "");
}else{ } else {
newStr = str.concat(equipmentList.get(i).get("userName")+","); newStr = str.concat(equipmentList.get(i).get("userName") + ",");
} }
} }
powerTransferCompanyResources.setPw(newStr); powerTransferCompanyResources.setPw(newStr);
} else { } else {
powerTransferCompanyResources.setPw("无"); powerTransferCompanyResources.setPw("无");
} }
//任务详情 //任务详情
PowerData powerData = powerTransferMapper.getPowerDataOther(alertCalledId,carid); PowerData powerData = powerTransferMapper.getPowerDataOther(alertCalledId, carid);
if(null != powerData) { if (null != powerData) {
powerTransferCompanyResources.setTaskInformation(powerData.getTaskInformation()); powerTransferCompanyResources.setTaskInformation(powerData.getTaskInformation());
} }
} else { } else {
ResponseModel<Map<String, Object>> equipmentIndexDto = equipFeignClient.getCarDetailByCarNum(id); ResponseModel<Map<String, Object>> equipmentIndexDto = equipFeignClient.getCarDetailByCarNum(id);
if(equipmentIndexDto.getResult().size() == 0) { if (equipmentIndexDto.getResult().size() == 0) {
return ResponseHelper.buildResponse(null); return ResponseHelper.buildResponse(null);
} }
// LambdaQueryWrapper<PowerTransferCompanyResources> queryWrapper = new LambdaQueryWrapper<>(); // LambdaQueryWrapper<PowerTransferCompanyResources> queryWrapper = new LambdaQueryWrapper<>();
// queryWrapper.eq(PowerTransferCompanyResources::getResourcesNum,id); // queryWrapper.eq(PowerTransferCompanyResources::getResourcesNum,id);
// powerTransferCompanyResources = powerTransferCompanyResourcesMapper.selectOne(queryWrapper); // powerTransferCompanyResources = powerTransferCompanyResourcesMapper.selectOne(queryWrapper);
if(!ValidationUtil.isEmpty(equipmentIndexDto.getResult())) { if (!ValidationUtil.isEmpty(equipmentIndexDto.getResult())) {
Map<String,Object> map = equipmentIndexDto.getResult(); Map<String, Object> map = equipmentIndexDto.getResult();
// 随车人员 // 随车人员
List<PowerData> powerDataOne = powerTransferMapper.getPowerDataOne(Long.valueOf(map.get("id").toString())); List<PowerData> powerDataOne = powerTransferMapper.getPowerDataOne(Long.valueOf(map.get("id").toString()));
powerTransferCompanyResources.setResourcesName(map.get("name").toString()); powerTransferCompanyResources.setResourcesName(map.get("name").toString());
powerTransferCompanyResources.setResourcesNum(map.get("carNum").toString()); powerTransferCompanyResources.setResourcesNum(map.get("carNum").toString());
if(!ValidationUtil.isEmpty(powerDataOne)) { if (!ValidationUtil.isEmpty(powerDataOne)) {
String str = ""; String str = "";
String newStr = ""; String newStr = "";
for(int i = 0; i < powerDataOne.size(); i++ ) { for (int i = 0; i < powerDataOne.size(); i++) {
newStr = str.concat(powerDataOne.get(i).getPostTypeName()).concat(":").concat(powerDataOne.get(i).getUser()); newStr = str.concat(powerDataOne.get(i).getPostTypeName()).concat(":").concat(powerDataOne.get(i).getUser());
} }
powerTransferCompanyResources.setPw(newStr); powerTransferCompanyResources.setPw(newStr);
} else { } else {
......
package com.yeejoin.amos.boot.module.jcs.biz.controller; package com.yeejoin.amos.boot.module.common.biz.controller;
import java.util.Arrays; import java.util.Arrays;
import java.util.HashMap; import java.util.HashMap;
...@@ -34,7 +34,7 @@ import com.yeejoin.amos.boot.module.common.api.dto.FireTeamCardDto; ...@@ -34,7 +34,7 @@ import com.yeejoin.amos.boot.module.common.api.dto.FireTeamCardDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireTeamListDto; import com.yeejoin.amos.boot.module.common.api.dto.FireTeamListDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersDto; import com.yeejoin.amos.boot.module.common.api.dto.FirefightersDto;
import com.yeejoin.amos.boot.module.common.api.entity.FireTeam; import com.yeejoin.amos.boot.module.common.api.entity.FireTeam;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.FireTeamServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.FireTeamServiceImpl;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
......
package com.yeejoin.amos.boot.module.jcs.biz.service.impl; package com.yeejoin.amos.boot.module.common.biz.service.impl;
import static org.hamcrest.CoreMatchers.nullValue; import static org.hamcrest.CoreMatchers.nullValue;
......
...@@ -33,14 +33,7 @@ import org.typroject.tyboot.core.foundation.utils.ValidationUtil; ...@@ -33,14 +33,7 @@ import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest; import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.util.ArrayList; import java.util.*;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry; import java.util.Map.Entry;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -53,627 +46,642 @@ import java.util.stream.Collectors; ...@@ -53,627 +46,642 @@ import java.util.stream.Collectors;
*/ */
@Service @Service
public class MaintenanceCompanyServiceImpl public class MaintenanceCompanyServiceImpl
extends BaseService<MaintenanceCompanyDto, MaintenanceCompany, MaintenanceCompanyMapper> extends BaseService<MaintenanceCompanyDto, MaintenanceCompany, MaintenanceCompanyMapper>
implements IMaintenanceCompanyService { implements IMaintenanceCompanyService {
private static final String MAINTENANCE_COMPANY = "maintenanceCompany"; private static final String MAINTENANCE_COMPANY = "maintenanceCompany";
private static final String MAINTENANCE_PERSON = "maintenancePerson"; private static final String MAINTENANCE_PERSON = "maintenancePerson";
private static final String MAINTENANCE_DEPARTMENT = "maintenanceDepartment"; private static final String MAINTENANCE_DEPARTMENT = "maintenanceDepartment";
private static final String PERSON = "PERSON"; private static final String PERSON = "PERSON";
private static final String COMPANY = "COMPANY"; private static final String COMPANY = "COMPANY";
private static final String DEPARTMENT = "DEPARTMENT"; private static final String DEPARTMENT = "DEPARTMENT";
@Autowired @Autowired
DynamicFormInstanceServiceImpl dynamicFormInstanceService; DynamicFormInstanceServiceImpl dynamicFormInstanceService;
@Autowired @Autowired
DynamicFormColumnServiceImpl dynamicFormColumnServiceImpl; DynamicFormColumnServiceImpl dynamicFormColumnServiceImpl;
@Autowired @Autowired
Sequence sequence; Sequence sequence;
@Autowired @Autowired
MaintenanceCompanyMapper maintenanceCompanyMapper; MaintenanceCompanyMapper maintenanceCompanyMapper;
@Autowired @Autowired
IOrgUsrService iOrgUsrService; IOrgUsrService iOrgUsrService;
@Autowired @Autowired
DynamicFormInstanceMapper dynamicFormInstanceMapper; DynamicFormInstanceMapper dynamicFormInstanceMapper;
@Autowired @Autowired
SourceFileServiceImpl sourceFileService; SourceFileServiceImpl sourceFileService;
/** /**
* 分页查询 * 分页查询
*/ */
public Page<MaintenanceCompanyDto> queryForMaintenanceCompanyPage(Page<MaintenanceCompanyDto> page) { public Page<MaintenanceCompanyDto> queryForMaintenanceCompanyPage(Page<MaintenanceCompanyDto> page) {
return this.queryForPage(page, null, false); return this.queryForPage(page, null, false);
} }
/** /**
* 列表查询 示例 * 列表查询 示例
*/ */
public List<MaintenanceCompanyDto> queryForMaintenanceCompanyList() { public List<MaintenanceCompanyDto> queryForMaintenanceCompanyList() {
return this.queryForList("", false); return this.queryForList("", false);
} }
/** /**
* 添加维保单位基本信息 * 添加维保单位基本信息
* *
* @param maintenanceCompany * @param maintenanceCompany
* @return * @return
*/ */
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public MaintenanceCompany saveCompanyDetail(MaintenanceCompany maintenanceCompany) { public MaintenanceCompany saveCompanyDetail(MaintenanceCompany maintenanceCompany) {
Long instanceId = saveDynamicFormList(maintenanceCompany); Long instanceId = saveDynamicFormList(maintenanceCompany);
// 设置单位code // 设置单位code
setTargetObjCode(maintenanceCompany); setTargetObjCode(maintenanceCompany);
maintenanceCompany.setOrgCode(null); maintenanceCompany.setOrgCode(null);
maintenanceCompany.setBizCode(sequence.nextId() + ""); maintenanceCompany.setBizCode(sequence.nextId() + "");
maintenanceCompany.setInstanceId(instanceId); maintenanceCompany.setInstanceId(instanceId);
maintenanceCompany.setType(maintenanceCompany.getType().toUpperCase()); maintenanceCompany.setType(maintenanceCompany.getType().toUpperCase());
maintenanceCompany.setIsDelete(false); maintenanceCompany.setIsDelete(false);
this.save(maintenanceCompany); this.save(maintenanceCompany);
if (maintenanceCompany.getAttachments().isEmpty()){ if (maintenanceCompany.getAttachments().isEmpty()) {
sourceFileService.saveAttachments(maintenanceCompany.getSequenceNbr(), maintenanceCompany.getAttachments()); sourceFileService.saveAttachments(maintenanceCompany.getSequenceNbr(), maintenanceCompany.getAttachments());
} }
return maintenanceCompany; return maintenanceCompany;
} }
/** /**
* 设置单位code * 设置单位code
* *
* @param targetObj * @param targetObj
*/ */
private void setTargetObjCode(MaintenanceCompany targetObj) { private void setTargetObjCode(MaintenanceCompany targetObj) {
MaintenanceCompany parent = getById(targetObj.getParentId()); MaintenanceCompany parent = getById(targetObj.getParentId());
if (!ValidationUtil.isEmpty(parent)) { if (!ValidationUtil.isEmpty(parent)) {
// 当前的code为上级单位code+6位随机数 // 当前的code为上级单位code+6位随机数
targetObj.setCode(parent.getCode() + TreeParser.genTreeCode()); targetObj.setCode(parent.getCode() + TreeParser.genTreeCode());
} else { } else {
targetObj.setCode(TreeParser.genTreeCode()); targetObj.setCode(TreeParser.genTreeCode());
} }
} }
@Override @Override
public MaintenanceCompany savePersonDetail(MaintenanceCompany maintenanceCompany) { public MaintenanceCompany savePersonDetail(MaintenanceCompany maintenanceCompany) {
Long instanceId = saveDynamicFormList(maintenanceCompany); Long instanceId = saveDynamicFormList(maintenanceCompany);
Long parentId = maintenanceCompany.getParentId(); Long parentId = maintenanceCompany.getParentId();
// 设置人员code // 设置人员code
setTargetObjCode(maintenanceCompany); setTargetObjCode(maintenanceCompany);
maintenanceCompany.setOrgCode(null); maintenanceCompany.setOrgCode(null);
if (ValidationUtil.isEmpty(maintenanceCompany.getBizCode())) { if (ValidationUtil.isEmpty(maintenanceCompany.getBizCode())) {
maintenanceCompany.setBizCode(sequence.nextId() + ""); maintenanceCompany.setBizCode(sequence.nextId() + "");
} }
maintenanceCompany.setInstanceId(instanceId); maintenanceCompany.setInstanceId(instanceId);
maintenanceCompany.setParentId(parentId); maintenanceCompany.setParentId(parentId);
maintenanceCompany.setIsDelete(false); maintenanceCompany.setIsDelete(false);
this.save(maintenanceCompany); this.save(maintenanceCompany);
if (maintenanceCompany.getAttachments().isEmpty()){ if (maintenanceCompany.getAttachments().isEmpty()) {
sourceFileService.saveAttachments(maintenanceCompany.getSequenceNbr(), maintenanceCompany.getAttachments()); sourceFileService.saveAttachments(maintenanceCompany.getSequenceNbr(), maintenanceCompany.getAttachments());
} }
return maintenanceCompany; return maintenanceCompany;
} }
/** /**
* 添加动态表单信息 * 添加动态表单信息
* *
* @param maintenanceCompany * @param maintenanceCompany
* @return * @return
*/ */
public Long saveDynamicFormList(MaintenanceCompany maintenanceCompany) { public Long saveDynamicFormList(MaintenanceCompany maintenanceCompany) {
Long instanceId = sequence.nextId(); Long instanceId = sequence.nextId();
List<DynamicFormInstance> dynamicFormInstanceList = maintenanceCompany.getDynamicFormValue(); List<DynamicFormInstance> dynamicFormInstanceList = maintenanceCompany.getDynamicFormValue();
for (DynamicFormInstance dynamicFormInstance : dynamicFormInstanceList) { for (DynamicFormInstance dynamicFormInstance : dynamicFormInstanceList) {
dynamicFormInstance.setInstanceId(instanceId); dynamicFormInstance.setInstanceId(instanceId);
dynamicFormInstanceService.save(dynamicFormInstance); dynamicFormInstanceService.save(dynamicFormInstance);
} }
return instanceId; return instanceId;
} }
@Override @Override
public MaintenanceCompany saveDepartmentDetail(MaintenanceCompany maintenanceCompany) { public MaintenanceCompany saveDepartmentDetail(MaintenanceCompany maintenanceCompany) {
Long instanceId = saveDynamicFormList(maintenanceCompany); Long instanceId = saveDynamicFormList(maintenanceCompany);
Long parentId = maintenanceCompany.getParentId(); Long parentId = maintenanceCompany.getParentId();
setTargetObjCode(maintenanceCompany); setTargetObjCode(maintenanceCompany);
maintenanceCompany.setOrgCode(null); maintenanceCompany.setOrgCode(null);
maintenanceCompany.setBizCode(sequence.nextId() + ""); maintenanceCompany.setBizCode(sequence.nextId() + "");
maintenanceCompany.setInstanceId(instanceId); maintenanceCompany.setInstanceId(instanceId);
maintenanceCompany.setType(maintenanceCompany.getType().toUpperCase()); maintenanceCompany.setType(maintenanceCompany.getType().toUpperCase());
maintenanceCompany.setParentId(parentId); maintenanceCompany.setParentId(parentId);
maintenanceCompany.setIsDelete(false); maintenanceCompany.setIsDelete(false);
this.save(maintenanceCompany); this.save(maintenanceCompany);
if (maintenanceCompany.getAttachments().isEmpty()){ if (maintenanceCompany.getAttachments().isEmpty()) {
sourceFileService.saveAttachments(maintenanceCompany.getSequenceNbr(), maintenanceCompany.getAttachments()); sourceFileService.saveAttachments(maintenanceCompany.getSequenceNbr(), maintenanceCompany.getAttachments());
} }
return maintenanceCompany; return maintenanceCompany;
} }
@Override
public boolean deleteById(Long sequenceNbr) {
MaintenanceCompany maintenanceCompany = maintenanceCompanyMapper.selectById(sequenceNbr);
if (ObjectUtils.isEmpty(maintenanceCompany)) {
return false;
}
// 新增删除维保单位逻辑,BUG 2500 单位下有子单位或者人员时应无法直接删除. by litw satrt
LambdaQueryWrapper<MaintenanceCompany> wrapperCompany = new LambdaQueryWrapper<MaintenanceCompany>();
wrapperCompany.eq(MaintenanceCompany::getParentId,sequenceNbr);
wrapperCompany.eq(MaintenanceCompany::getIsDelete,false);
int count = maintenanceCompanyMapper.selectCount(wrapperCompany);
if(count > 0) {
throw new BadRequest("单位下有子单位或者人员,无法删除");
}
// 新增删除维保单位逻辑,BUG 2500 单位下有子单位或者人员时应无法直接删除. by litw end
maintenanceCompany.setIsDelete(true);
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
wrapper.eq(MaintenanceCompany::getSequenceNbr, sequenceNbr);
int number = maintenanceCompanyMapper.update(maintenanceCompany, wrapper);
if (number > 0) {
// 更新动态表单字段为删除状态
List<DynamicFormInstance> dyInstance = dynamicFormInstanceService
.list(new LambdaQueryWrapper<DynamicFormInstance>().eq(DynamicFormInstance::getInstanceId,
maintenanceCompany.getInstanceId()));
dyInstance.forEach(i -> i.setIsDelete(true));
dynamicFormInstanceService.updateBatchById(dyInstance);
return true;
}
return false;
}
@Override
public List<Map<String, Object>> getMaintenanceCompanyDropDownList() {
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
wrapper.select(MaintenanceCompany::getCode, MaintenanceCompany::getName, MaintenanceCompany::getSequenceNbr);
wrapper.eq(MaintenanceCompany::getType, COMPANY);
wrapper.eq(MaintenanceCompany::getIsDelete, false);
return maintenanceCompanyMapper.selectMaps(wrapper);
}
@Override
public boolean checkPersonCodeExists(String code) {
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
wrapper.eq(MaintenanceCompany::getBizCode, code);
MaintenanceCompany detail = maintenanceCompanyMapper.selectOne(wrapper);
if (ObjectUtils.isEmpty(detail)) {
return true;
}
return false;
}
@Override @Override
public List<Map<String, Object>> getAllMaintenanceList(String maintenanceType) { public boolean deleteById(Long sequenceNbr) {
String type = null; MaintenanceCompany maintenanceCompany = maintenanceCompanyMapper.selectById(sequenceNbr);
switch (maintenanceType.toUpperCase()) { if (ObjectUtils.isEmpty(maintenanceCompany)) {
case PERSON: return false;
type = MAINTENANCE_PERSON; }
break; // 新增删除维保单位逻辑,BUG 2500 单位下有子单位或者人员时应无法直接删除. by litw satrt
case DEPARTMENT: LambdaQueryWrapper<MaintenanceCompany> wrapperCompany = new LambdaQueryWrapper<MaintenanceCompany>();
type = MAINTENANCE_DEPARTMENT; wrapperCompany.eq(MaintenanceCompany::getParentId, sequenceNbr);
break; wrapperCompany.eq(MaintenanceCompany::getIsDelete, false);
default: int count = maintenanceCompanyMapper.selectCount(wrapperCompany);
type = MAINTENANCE_COMPANY; if (count > 0) {
} throw new BadRequest("单位下有子单位或者人员,无法删除");
if (StringUtils.isBlank(type)) { }
return null;
}
List<Map<String, Object>> dynamicFormList = dynamicFormInstanceService.listAll(type);
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
wrapper.eq(MaintenanceCompany::getType, maintenanceType.toUpperCase());
wrapper.eq(MaintenanceCompany::getIsDelete, false);
List<MaintenanceCompany> maintenanceCompany = this.list(wrapper);
Map<Long, MaintenanceCompany> maintenanceCompanyMap = maintenanceCompany.stream()
.collect(Collectors.toMap(MaintenanceCompany::getInstanceId, Function.identity()));
dynamicFormList.forEach(r -> {
MaintenanceCompany detail = maintenanceCompanyMap.get(Long.parseLong(r.get("instanceId").toString()));
if (!ObjectUtils.isEmpty(detail)) {
if(detail.getParentId()!=null) {
MaintenanceCompany map = maintenanceCompanyMapper.selectById(detail.getParentId());
r.put("parentName", map.getName());
}
r.putAll(Bean.BeantoMap(detail));
}
});
return dynamicFormList;
}
public List<Map<String, Object>> getAllMaintenanceEexcleList(String maintenanceType,Map parms) {
String type = null;
switch (maintenanceType.toUpperCase()) {
case PERSON:
type = MAINTENANCE_PERSON;
break;
case DEPARTMENT:
type = MAINTENANCE_DEPARTMENT;
break;
default:
type = MAINTENANCE_COMPANY;
}
if (StringUtils.isBlank(type)) {
return null;
}
List<Map<String, Object>> dynamicFormList = dynamicFormInstanceService.listAll(type);
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
wrapper.eq(MaintenanceCompany::getType, maintenanceType.toUpperCase());
wrapper.eq(MaintenanceCompany::getIsDelete, false);
if(parms!=null && parms.size()>0) {
String name =parms.containsKey("name")?parms.get("name").toString():null;
String parentId =parms.containsKey("parentId")?parms.get("parentId").toString():null;
if(name!=null) {
wrapper.like(MaintenanceCompany::getName, name);
}
if(parentId!=null) {
wrapper.eq(MaintenanceCompany::getParentId, parentId);
}
}
List<MaintenanceCompany> maintenanceCompany = this.list(wrapper);
Map<Long, MaintenanceCompany> maintenanceCompanyMap = maintenanceCompany.stream()
.collect(Collectors.toMap(MaintenanceCompany::getInstanceId, Function.identity()));
dynamicFormList.forEach(r -> {
MaintenanceCompany detail = maintenanceCompanyMap.get(Long.parseLong(r.get("instanceId").toString()));
if (!ObjectUtils.isEmpty(detail)) {
if(detail.getParentId()!=null && detail.getName()!=null) {
MaintenanceCompany map = maintenanceCompanyMapper.selectById(detail.getParentId());
r.put("parentName", map.getName());
r.putAll(Bean.BeantoMap(detail));
}
}
});
return dynamicFormList.stream().filter(i-> i.containsKey("name")).collect(Collectors.toList());
}
@Override
public List<MaintenancePersonExcleDto> exportToMaintenancePersonExcel(Map map) {
List<Map<String, Object>> list = this.getAllMaintenanceEexcleList(PERSON,map);
return JSONArray.parseArray(JSONArray.toJSONString(list), MaintenancePersonExcleDto.class);
}
@Override
public List<MaintenanceCompany> findByInstanceIdAndType(Long instanceId, String type) {
List<MaintenanceCompany> list = maintenanceCompanyMapper.findByInstanceIdAndType(instanceId, type);
if (!CollectionUtils.isEmpty(list)) {
return list;
}
return Lists.newArrayList();
}
@Override
public List<MaintenanceCompany> findByCodeAndType(String code, String type) {
List<MaintenanceCompany> list = maintenanceCompanyMapper.findByCodeAndType(code, type);
if (!CollectionUtils.isEmpty(list)) {
return list;
}
return Lists.newArrayList();
}
/**
* 维保单位人员信息分頁信息显示时的字段过滤
*
* @param current
* @param size
* @param list
* @param arrayType
* @return
*/
public IPage<Map<String, Object>> getLegalList(int current, int size, IPage<Map<String, Object>> list,
String[] arrayType) {
List<Map<String, Object>> returnlist = new ArrayList<Map<String, Object>>();
Map<String, Object> legalMap = null;
for (Map<String, Object> map : list.getRecords()) {
legalMap = new HashMap<String, Object>();
for (Entry<String, Object> m : map.entrySet()) {
if (Arrays.asList(arrayType).contains(m.getKey())) {
legalMap.putAll(map);
}
}
returnlist.add(legalMap);
}
Page<Map<String, Object>> pegaIPage = new Page<Map<String, Object>>();
pegaIPage.setCurrent(current);
pegaIPage.setSize(size);
pegaIPage.setRecords(returnlist);
return pegaIPage;
}
@Override // 新增删除维保单位逻辑,BUG 2500 单位下有子单位或者人员时应无法直接删除. by litw end
public IPage<Map<String, Object>> getPageMaintenanceList(Map<String, Object> paramsMap) { maintenanceCompany.setIsDelete(true);
if (!paramsMap.containsKey("current") && !paramsMap.containsKey("size")) { LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
return null; wrapper.eq(MaintenanceCompany::getSequenceNbr, sequenceNbr);
}
if (!paramsMap.containsKey("maintenanceType")) { int number = maintenanceCompanyMapper.update(maintenanceCompany, wrapper);
return null; if (number > 0) {
} // 更新动态表单字段为删除状态
int current = Integer.parseInt(paramsMap.get("current").toString()); List<DynamicFormInstance> dyInstance = dynamicFormInstanceService
int size = Integer.parseInt(paramsMap.get("size").toString()); .list(new LambdaQueryWrapper<DynamicFormInstance>().eq(DynamicFormInstance::getInstanceId,
String maintenanceType = paramsMap.get("maintenanceType").toString().toUpperCase(); maintenanceCompany.getInstanceId()));
Map<String, String> filedParamsMap = Maps.newHashMap(); dyInstance.forEach(i -> i.setIsDelete(true));
dynamicFormInstanceService.updateBatchById(dyInstance);
List<MaintenanceCompany> mainTableList; return true;
String type; }
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<>(); return false;
wrapper.eq(MaintenanceCompany::getIsDelete, false); }
switch (maintenanceType) {
case PERSON: @Override
type = MAINTENANCE_PERSON; public List<Map<String, Object>> getMaintenanceCompanyDropDownList() {
filedParamsMap = new HashMap<>(); LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
if (paramsMap.containsKey("status")) { wrapper.select(MaintenanceCompany::getCode, MaintenanceCompany::getName, MaintenanceCompany::getSequenceNbr);
filedParamsMap.put("status", paramsMap.get("status").toString()); wrapper.eq(MaintenanceCompany::getType, COMPANY);
} wrapper.eq(MaintenanceCompany::getIsDelete, false);
mainTableList = this.checkMaintenanceCompanyList(wrapper, paramsMap); return maintenanceCompanyMapper.selectMaps(wrapper);
/*BUG 2503 人员头像存在附件中,获取附件信息返回前端 start*/ }
for (MaintenanceCompany m:mainTableList
) { @Override
m.setAttachments(sourceFileService.getAttachments(m.getSequenceNbr())); public boolean checkPersonCodeExists(String code) {
} LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
/* *BUG 2503 end*/ wrapper.eq(MaintenanceCompany::getBizCode, code);
List<Long> instanceIds = Lists.transform(mainTableList, MaintenanceCompany::getInstanceId); MaintenanceCompany detail = maintenanceCompanyMapper.selectOne(wrapper);
filedParamsMap.put("instanceIds", Joiner.on(",").join(instanceIds)); if (ObjectUtils.isEmpty(detail)) {
break; return true;
case COMPANY: }
type = MAINTENANCE_COMPANY; return false;
wrapper.eq(MaintenanceCompany::getType, maintenanceType.toUpperCase()); }
mainTableList = this.list(wrapper);
break; @Override
case DEPARTMENT: public List<Map<String, Object>> getAllMaintenanceList(String maintenanceType) {
type = MAINTENANCE_DEPARTMENT; String type = null;
wrapper.eq(MaintenanceCompany::getType, maintenanceType.toUpperCase()); switch (maintenanceType.toUpperCase()) {
mainTableList = this.list(wrapper); case PERSON:
break; type = MAINTENANCE_PERSON;
default: break;
throw new IllegalStateException("Unexpected maintenanceType: " + maintenanceType); case DEPARTMENT:
} type = MAINTENANCE_DEPARTMENT;
if (StringUtils.isBlank(type)) { break;
return null; default:
} type = MAINTENANCE_COMPANY;
IPage<Map<String, Object>> page = dynamicFormInstanceService.pageList(current, size, type, filedParamsMap); }
if (StringUtils.isBlank(type)) {
Map<Long, MaintenanceCompany> maintenanceCompanyMap = mainTableList.stream() return null;
.collect(Collectors.toMap(MaintenanceCompany::getInstanceId, Function.identity())); }
List<Map<String, Object>> dynamicFormList = dynamicFormInstanceService.listAll(type);
page.getRecords().forEach(r -> { LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
MaintenanceCompany detail = maintenanceCompanyMap.get(Long.parseLong(r.get("instanceId").toString())); wrapper.eq(MaintenanceCompany::getType, maintenanceType.toUpperCase());
if (!ObjectUtils.isEmpty(detail)) { wrapper.eq(MaintenanceCompany::getIsDelete, false);
r.putAll(Bean.BeantoMap(detail)); List<MaintenanceCompany> maintenanceCompany = this.list(wrapper);
}
Map<Long, MaintenanceCompany> maintenanceCompanyMap = maintenanceCompany.stream()
}); .collect(Collectors.toMap(MaintenanceCompany::getInstanceId, Function.identity()));
return page; dynamicFormList.forEach(r -> {
} MaintenanceCompany detail = maintenanceCompanyMap.get(Long.parseLong(r.get("instanceId").toString()));
if (!ObjectUtils.isEmpty(detail)) {
if (detail.getParentId() != null) {
MaintenanceCompany map = maintenanceCompanyMapper.selectById(detail.getParentId());
r.put("parentName", map.getName());
}
r.putAll(Bean.BeantoMap(detail));
}
});
return dynamicFormList;
}
public List<Map<String, Object>> getAllMaintenanceEexcleList(String maintenanceType, Map parms) {
String type = null;
switch (maintenanceType.toUpperCase()) {
case PERSON:
type = MAINTENANCE_PERSON;
break;
case DEPARTMENT:
type = MAINTENANCE_DEPARTMENT;
break;
default:
type = MAINTENANCE_COMPANY;
}
if (StringUtils.isBlank(type)) {
return null;
}
List<Map<String, Object>> dynamicFormList = dynamicFormInstanceService.listAll(type);
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
wrapper.eq(MaintenanceCompany::getType, maintenanceType.toUpperCase());
wrapper.eq(MaintenanceCompany::getIsDelete, false);
if (parms != null && parms.size() > 0) {
String name = parms.containsKey("name") ? parms.get("name").toString() : null;
String parentId = parms.containsKey("parentId") ? parms.get("parentId").toString() : null;
if (name != null) {
wrapper.like(MaintenanceCompany::getName, name);
}
if (parentId != null) {
wrapper.eq(MaintenanceCompany::getParentId, parentId);
}
public List<MaintenanceCompany> checkMaintenanceCompanyList(LambdaQueryWrapper<MaintenanceCompany> wrapper, }
Map<String, Object> paramsMap) { List<MaintenanceCompany> maintenanceCompany = this.list(wrapper);
if (paramsMap.containsKey("name")) {
wrapper.like(MaintenanceCompany::getName, paramsMap.get("name").toString()); Map<Long, MaintenanceCompany> maintenanceCompanyMap = maintenanceCompany.stream()
} .collect(Collectors.toMap(MaintenanceCompany::getInstanceId, Function.identity()));
if (paramsMap.containsKey("parentId") && !"-1".equals(paramsMap.get("parentId"))) { dynamicFormList.forEach(r -> {
Long parentId = Long.parseLong(paramsMap.get("parentId").toString()); MaintenanceCompany detail = maintenanceCompanyMap.get(Long.parseLong(r.get("instanceId").toString()));
MaintenanceCompany company = getOne( if (!ObjectUtils.isEmpty(detail)) {
new LambdaQueryWrapper<MaintenanceCompany>().eq(MaintenanceCompany::getSequenceNbr, parentId)); if (detail.getParentId() != null && detail.getName() != null) {
wrapper.likeRight(MaintenanceCompany::getCode, company.getCode()); MaintenanceCompany map = maintenanceCompanyMapper.selectById(detail.getParentId());
} r.put("parentName", map.getName());
wrapper.eq(MaintenanceCompany::getType, PERSON); r.putAll(Bean.BeantoMap(detail));
}
return maintenanceCompanyMapper.selectList(wrapper); }
} });
return dynamicFormList.stream().filter(i -> i.containsKey("name")).collect(Collectors.toList());
}
@Override
public List<MaintenancePersonExcleDto> exportToMaintenancePersonExcel(Map map) {
List<Map<String, Object>> list = this.getAllMaintenanceEexcleList(PERSON, map);
return JSONArray.parseArray(JSONArray.toJSONString(list), MaintenancePersonExcleDto.class);
}
@Override
public List<MaintenanceCompany> findByInstanceIdAndType(Long instanceId, String type) {
List<MaintenanceCompany> list = maintenanceCompanyMapper.findByInstanceIdAndType(instanceId, type);
if (!CollectionUtils.isEmpty(list)) {
return list;
}
return Lists.newArrayList();
}
@Override
public List<MaintenanceCompany> findByCodeAndType(String code, String type) {
List<MaintenanceCompany> list = maintenanceCompanyMapper.findByCodeAndType(code, type);
if (!CollectionUtils.isEmpty(list)) {
return list;
}
return Lists.newArrayList();
}
@Override @Override
public Map<String, Object> findBySequenceNbr(Long sequenceNbr) { public List<MaintenanceCompany> findPersonByAmosOrgId(String code, String userId) {
MaintenanceCompany maintenanceCompany = maintenanceCompanyMapper.selectById(sequenceNbr); LambdaQueryWrapper<MaintenanceCompany> queryWrapper = new LambdaQueryWrapper<>();
String type; queryWrapper.eq(MaintenanceCompany::getType, code);
switch (maintenanceCompany.getType()) { queryWrapper.eq(MaintenanceCompany::getAmosId, userId);
case PERSON: return this.baseMapper.selectList(queryWrapper);
type = MAINTENANCE_PERSON; }
break;
case DEPARTMENT:
type = MAINTENANCE_DEPARTMENT;
break;
default:
type = MAINTENANCE_COMPANY;
}
Map<String, Object> mainMap = Bean.BeantoMap(maintenanceCompany);
Map<String, Object> dynamicMap = dynamicFormInstanceService.getOneMap(maintenanceCompany.getInstanceId(), type);
mainMap.put("attachments", sourceFileService.getAttachments(maintenanceCompany.getSequenceNbr()));
mainMap.put("dynamicFormValue", dynamicMap);
return mainMap;
}
@Override @Override
@Transactional(rollbackFor = Exception.class) public MaintenanceCompany getOne(Long parentId) {
public boolean updateMaintenanceCompanyDetail(MaintenanceCompany model) throws Exception { return this.getById(parentId);
return updateMaintenanceDetail(model, COMPANY);
}
public boolean updateMaintenanceDetail(MaintenanceCompany model, String type) throws Exception {
return updateDetail(model, type);
}
public boolean updateDetail(MaintenanceCompany model, String type) throws Exception {
// 1、更新动态表单数据
iOrgUsrService.updateDynamicFormInstance(model.getInstanceId(), model.getDynamicFormValue());
// 2、更新单位及子单位code
updateCode(model);
// 3、更新主表数据
model.setType(type);
this.updateById(model);
if (ValidationUtil.isEmpty(model.getParentId())) {
update(new LambdaUpdateWrapper<MaintenanceCompany>().set(MaintenanceCompany::getParentId, null).eq(MaintenanceCompany::getSequenceNbr, model.getSequenceNbr()));
}
// 4、更新附件
sourceFileService.saveAttachments(model.getSequenceNbr(), model.getAttachments());
return true;
} }
/** /**
* 更新单位及子单位code * 维保单位人员信息分頁信息显示时的字段过滤
* *
* @return company 维保单位/部门/人员 * @param current
*/ * @param size
public void updateCode(MaintenanceCompany company) { * @param list
MaintenanceCompany parent = getById(company.getParentId()); * @param arrayType
// 新父节点的code * @return
String parentCode = ""; */
// 父节点不为空 public IPage<Map<String, Object>> getLegalList(int current, int size, IPage<Map<String, Object>> list,
if (!ValidationUtil.isEmpty(parent)) { String[] arrayType) {
parentCode = parent.getCode(); List<Map<String, Object>> returnlist = new ArrayList<Map<String, Object>>();
} Map<String, Object> legalMap = null;
// 旧父节点的code for (Map<String, Object> map : list.getRecords()) {
if(company.getCode() != null){ legalMap = new HashMap<String, Object>();
String oldParentCode = company.getCode().substring(0, company.getCode().length() - TreeParser.CODE_LENGTH); for (Entry<String, Object> m : map.entrySet()) {
List<MaintenanceCompany> children = if (Arrays.asList(arrayType).contains(m.getKey())) {
list(new LambdaQueryWrapper<MaintenanceCompany>().eq(MaintenanceCompany::getIsDelete, false).likeRight(MaintenanceCompany::getCode, company.getCode()).ne(MaintenanceCompany::getSequenceNbr, company.getSequenceNbr())); legalMap.putAll(map);
if (!ValidationUtil.isEmpty(children)) { }
String finalParentCode = parentCode; }
children.forEach(i -> { returnlist.add(legalMap);
i.setCode(i.getCode().replaceFirst(oldParentCode, finalParentCode)); }
}); Page<Map<String, Object>> pegaIPage = new Page<Map<String, Object>>();
updateBatchById(children); pegaIPage.setCurrent(current);
} pegaIPage.setSize(size);
company.setCode(company.getCode().replaceFirst(oldParentCode, parentCode)); pegaIPage.setRecords(returnlist);
} return pegaIPage;
} }
@Override @Override
@Transactional(rollbackFor = Exception.class) public IPage<Map<String, Object>> getPageMaintenanceList(Map<String, Object> paramsMap) {
public boolean updateMaintenancePersonDetail(MaintenanceCompany model) throws Exception { if (!paramsMap.containsKey("current") && !paramsMap.containsKey("size")) {
return updateMaintenanceDetail(model, PERSON); return null;
} }
if (!paramsMap.containsKey("maintenanceType")) {
@Override return null;
@Transactional(rollbackFor = Exception.class) }
public boolean updateMaintenanceDepartmentDetail(MaintenanceCompany model) throws Exception { int current = Integer.parseInt(paramsMap.get("current").toString());
return updateMaintenanceDetail(model, DEPARTMENT); int size = Integer.parseInt(paramsMap.get("size").toString());
} String maintenanceType = paramsMap.get("maintenanceType").toString().toUpperCase();
Map<String, String> filedParamsMap = Maps.newHashMap();
@Override
public List<MaintenanceCompany> getCompanyAndDepartmentTree() { List<MaintenanceCompany> mainTableList;
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>(); String type;
wrapper.select(MaintenanceCompany::getSequenceNbr, MaintenanceCompany::getName, MaintenanceCompany::getCode, LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<>();
MaintenanceCompany::getType, MaintenanceCompany::getBizCode, MaintenanceCompany::getParentId); wrapper.eq(MaintenanceCompany::getIsDelete, false);
wrapper.eq(MaintenanceCompany::getIsDelete, 0); switch (maintenanceType) {
wrapper.in(MaintenanceCompany::getType, Arrays.asList(COMPANY, DEPARTMENT)); case PERSON:
List<MaintenanceCompany> list = maintenanceCompanyMapper.selectList(wrapper); type = MAINTENANCE_PERSON;
if (list == null) { filedParamsMap = new HashMap<>();
return new ArrayList<>(); if (paramsMap.containsKey("status")) {
} filedParamsMap.put("status", paramsMap.get("status").toString());
list = list.stream().filter(o -> !ObjectUtils.isEmpty(o)).collect(Collectors.toList()); }
return list; mainTableList = this.checkMaintenanceCompanyList(wrapper, paramsMap);
} /*BUG 2503 人员头像存在附件中,获取附件信息返回前端 start*/
for (MaintenanceCompany m : mainTableList
@Override ) {
public List<MaintenanceCompany> getDepartmentAndPersonTree(long sequenceNbr) { m.setAttachments(sourceFileService.getAttachments(m.getSequenceNbr()));
List<MaintenanceCompany> departmentList = getDepartmentList(sequenceNbr); }
if (departmentList == null) { /* *BUG 2503 end*/
return new ArrayList<>(); List<Long> instanceIds = Lists.transform(mainTableList, MaintenanceCompany::getInstanceId);
} filedParamsMap.put("instanceIds", Joiner.on(",").join(instanceIds));
return departmentList.stream().filter(o -> !ObjectUtils.isEmpty(o)).collect(Collectors.toList()); break;
} case COMPANY:
type = MAINTENANCE_COMPANY;
@Override wrapper.eq(MaintenanceCompany::getType, maintenanceType.toUpperCase());
public List<MaintenanceCompany> getDepartmentList(long sequenceNbr) { mainTableList = this.list(wrapper);
MaintenanceCompany companyDetail = maintenanceCompanyMapper.selectById(sequenceNbr); break;
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>(); case DEPARTMENT:
wrapper.select(MaintenanceCompany::getSequenceNbr, MaintenanceCompany::getName, MaintenanceCompany::getCode, type = MAINTENANCE_DEPARTMENT;
MaintenanceCompany::getType, MaintenanceCompany::getBizCode, MaintenanceCompany::getParentId); wrapper.eq(MaintenanceCompany::getType, maintenanceType.toUpperCase());
wrapper.eq(MaintenanceCompany::getIsDelete, false); mainTableList = this.list(wrapper);
wrapper.in(MaintenanceCompany::getType, Arrays.asList(PERSON, DEPARTMENT)); break;
wrapper.likeRight(MaintenanceCompany::getCode, companyDetail.getCode()); default:
List<MaintenanceCompany> maintenanceCompanyList = maintenanceCompanyMapper.selectList(wrapper); throw new IllegalStateException("Unexpected maintenanceType: " + maintenanceType);
return maintenanceCompanyList; }
} if (StringUtils.isBlank(type)) {
return null;
}
IPage<Map<String, Object>> page = dynamicFormInstanceService.pageList(current, size, type, filedParamsMap);
public List<MaintenanceCompany> getPersonList(long sequenceNbr) { Map<Long, MaintenanceCompany> maintenanceCompanyMap = mainTableList.stream()
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>(); .collect(Collectors.toMap(MaintenanceCompany::getInstanceId, Function.identity()));
wrapper.select(MaintenanceCompany::getSequenceNbr, MaintenanceCompany::getName, MaintenanceCompany::getCode,
MaintenanceCompany::getType, MaintenanceCompany::getBizCode, MaintenanceCompany::getParentId);
wrapper.eq(MaintenanceCompany::getIsDelete, false);
wrapper.eq(MaintenanceCompany::getType, PERSON);
wrapper.eq(MaintenanceCompany::getParentId, sequenceNbr);
return maintenanceCompanyMapper.selectList(wrapper);
}
/** page.getRecords().forEach(r -> {
* 根据维保单位查询所有机场单位(返回List<Map>类型) 不带分页 MaintenanceCompany detail = maintenanceCompanyMap.get(Long.parseLong(r.get("instanceId").toString()));
* if (!ObjectUtils.isEmpty(detail)) {
* @param seq r.putAll(Bean.BeantoMap(detail));
* @return }
*/
public List<Map<String, Object>> queryOrgUsrMsg(Long seq) {
if (ValidationUtil.isEmpty(this.queryBySeq(seq))) {
throw new BadRequest("参数校验失败.");
} else {
List<Map<String, Object>> companys = new ArrayList<>();
// 机场单位列表基本信息
List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrList(seq);
// 机场组装单位动态表单数据
orgUsrDtos.forEach(orgUsrDto -> {
Map<String, Object> map = Bean.BeantoMap(orgUsrDto);
mapCopy(dynamicFormInstanceService.getOneMap(orgUsrDto.getSequenceNbr(), OrgPersonEnum.公司.getKey()),
map);
companys.add(map);
});
return companys;
}
}
/** });
* 根据维保单位查询所有机场单位(返回List<Map>类型) 带分页 return page;
* }
* @param pageNum
* @param pageSize
* @param seq
* @param amosUserId
* @return
*/
public Page<Map<String, Object>> queryOrgUsrMsgPage(int pageNum, int pageSize, Long seq, String amosUserId) {
MaintenanceCompany maintenanceCompany = new MaintenanceCompany();
if (ValidationUtil.isEmpty(seq)) {
maintenanceCompany = getMaintenanceCompany(amosUserId);
seq = maintenanceCompany.getSequenceNbr();
}
// 机场单位列表基本信息
if (pageNum == -1 || pageSize == -1) {
pageSize = Integer.MAX_VALUE;
}
Page page = new Page(pageNum, pageSize);
Page<Map<String, Object>> companys = new Page<>(pageNum, pageSize);
Page<OrgUsrDto> pageResult = this.baseMapper.selectOrgUsrPageList(page, seq);
List<Map<String, Object>> finalResultMap = Lists.newArrayList();
// 机场组装单位动态表单数据
pageResult.getRecords().forEach(orgUsrDto -> {
Map<String, Object> map = Bean.BeantoMap(orgUsrDto);
mapCopy(dynamicFormInstanceService.getOneMap(orgUsrDto.getSequenceNbr(), OrgPersonEnum.公司.getKey()), map);
finalResultMap.add(map);
});
companys.setRecords(finalResultMap);
companys.setTotal(pageResult.getTotal());
companys.setPages(pageResult.getPages());
return companys;
}
/** public List<MaintenanceCompany> checkMaintenanceCompanyList(LambdaQueryWrapper<MaintenanceCompany> wrapper,
* 根据平台用户id查询登陆人所属维保单位 Map<String, Object> paramsMap) {
* if (paramsMap.containsKey("name")) {
* @param amosUserId wrapper.like(MaintenanceCompany::getName, paramsMap.get("name").toString());
* @return }
*/ if (paramsMap.containsKey("parentId") && !"-1".equals(paramsMap.get("parentId"))) {
public MaintenanceCompany getMaintenanceCompany(String amosUserId) { Long parentId = Long.parseLong(paramsMap.get("parentId").toString());
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>(); MaintenanceCompany company = getOne(
wrapper.eq(MaintenanceCompany::getIsDelete, false); new LambdaQueryWrapper<MaintenanceCompany>().eq(MaintenanceCompany::getSequenceNbr, parentId));
wrapper.eq(MaintenanceCompany::getAmosId, amosUserId); wrapper.likeRight(MaintenanceCompany::getCode, company.getCode());
MaintenanceCompany maintenanceCompany = this.baseMapper.selectOne(wrapper); }
wrapper.eq(MaintenanceCompany::getType, PERSON);
return maintenanceCompanyMapper.selectList(wrapper);
}
@Override
public Map<String, Object> findBySequenceNbr(Long sequenceNbr) {
MaintenanceCompany maintenanceCompany = maintenanceCompanyMapper.selectById(sequenceNbr);
String type;
switch (maintenanceCompany.getType()) {
case PERSON:
type = MAINTENANCE_PERSON;
break;
case DEPARTMENT:
type = MAINTENANCE_DEPARTMENT;
break;
default:
type = MAINTENANCE_COMPANY;
}
Map<String, Object> mainMap = Bean.BeantoMap(maintenanceCompany);
Map<String, Object> dynamicMap = dynamicFormInstanceService.getOneMap(maintenanceCompany.getInstanceId(), type);
mainMap.put("attachments", sourceFileService.getAttachments(maintenanceCompany.getSequenceNbr()));
mainMap.put("dynamicFormValue", dynamicMap);
return mainMap;
}
@Override
@Transactional(rollbackFor = Exception.class)
public boolean updateMaintenanceCompanyDetail(MaintenanceCompany model) throws Exception {
return updateMaintenanceDetail(model, COMPANY);
}
public boolean updateMaintenanceDetail(MaintenanceCompany model, String type) throws Exception {
return updateDetail(model, type);
}
public boolean updateDetail(MaintenanceCompany model, String type) throws Exception {
// 1、更新动态表单数据
iOrgUsrService.updateDynamicFormInstance(model.getInstanceId(), model.getDynamicFormValue());
// 2、更新单位及子单位code
updateCode(model);
// 3、更新主表数据
model.setType(type);
this.updateById(model);
if (ValidationUtil.isEmpty(model.getParentId())) {
update(new LambdaUpdateWrapper<MaintenanceCompany>().set(MaintenanceCompany::getParentId, null).eq(MaintenanceCompany::getSequenceNbr, model.getSequenceNbr()));
}
// 4、更新附件
sourceFileService.saveAttachments(model.getSequenceNbr(), model.getAttachments());
return true;
}
/**
* 更新单位及子单位code
*
* @return company 维保单位/部门/人员
*/
public void updateCode(MaintenanceCompany company) {
MaintenanceCompany parent = getById(company.getParentId());
// 新父节点的code
String parentCode = "";
// 父节点不为空
if (!ValidationUtil.isEmpty(parent)) {
parentCode = parent.getCode();
}
// 旧父节点的code
if (company.getCode() != null) {
String oldParentCode = company.getCode().substring(0, company.getCode().length() - TreeParser.CODE_LENGTH);
List<MaintenanceCompany> children =
list(new LambdaQueryWrapper<MaintenanceCompany>().eq(MaintenanceCompany::getIsDelete, false).likeRight(MaintenanceCompany::getCode, company.getCode()).ne(MaintenanceCompany::getSequenceNbr, company.getSequenceNbr()));
if (!ValidationUtil.isEmpty(children)) {
String finalParentCode = parentCode;
children.forEach(i -> {
i.setCode(i.getCode().replaceFirst(oldParentCode, finalParentCode));
});
updateBatchById(children);
}
company.setCode(company.getCode().replaceFirst(oldParentCode, parentCode));
}
}
@Override
@Transactional(rollbackFor = Exception.class)
public boolean updateMaintenancePersonDetail(MaintenanceCompany model) throws Exception {
return updateMaintenanceDetail(model, PERSON);
}
@Override
@Transactional(rollbackFor = Exception.class)
public boolean updateMaintenanceDepartmentDetail(MaintenanceCompany model) throws Exception {
return updateMaintenanceDetail(model, DEPARTMENT);
}
@Override
public List<MaintenanceCompany> getCompanyAndDepartmentTree() {
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
wrapper.select(MaintenanceCompany::getSequenceNbr, MaintenanceCompany::getName, MaintenanceCompany::getCode,
MaintenanceCompany::getType, MaintenanceCompany::getBizCode, MaintenanceCompany::getParentId);
wrapper.eq(MaintenanceCompany::getIsDelete, 0);
wrapper.in(MaintenanceCompany::getType, Arrays.asList(COMPANY, DEPARTMENT));
List<MaintenanceCompany> list = maintenanceCompanyMapper.selectList(wrapper);
if (list == null) {
return new ArrayList<>();
}
list = list.stream().filter(o -> !ObjectUtils.isEmpty(o)).collect(Collectors.toList());
return list;
}
@Override
public List<MaintenanceCompany> getDepartmentAndPersonTree(long sequenceNbr) {
List<MaintenanceCompany> departmentList = getDepartmentList(sequenceNbr);
if (departmentList == null) {
return new ArrayList<>();
}
return departmentList.stream().filter(o -> !ObjectUtils.isEmpty(o)).collect(Collectors.toList());
}
@Override
public List<MaintenanceCompany> getDepartmentList(long sequenceNbr) {
MaintenanceCompany companyDetail = maintenanceCompanyMapper.selectById(sequenceNbr);
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
wrapper.select(MaintenanceCompany::getSequenceNbr, MaintenanceCompany::getName, MaintenanceCompany::getCode,
MaintenanceCompany::getType, MaintenanceCompany::getBizCode, MaintenanceCompany::getParentId);
wrapper.eq(MaintenanceCompany::getIsDelete, false);
wrapper.in(MaintenanceCompany::getType, Arrays.asList(PERSON, DEPARTMENT));
wrapper.likeRight(MaintenanceCompany::getCode, companyDetail.getCode());
List<MaintenanceCompany> maintenanceCompanyList = maintenanceCompanyMapper.selectList(wrapper);
return maintenanceCompanyList;
}
public List<MaintenanceCompany> getPersonList(long sequenceNbr) {
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
wrapper.select(MaintenanceCompany::getSequenceNbr, MaintenanceCompany::getName, MaintenanceCompany::getCode,
MaintenanceCompany::getType, MaintenanceCompany::getBizCode, MaintenanceCompany::getParentId);
wrapper.eq(MaintenanceCompany::getIsDelete, false);
wrapper.eq(MaintenanceCompany::getType, PERSON);
wrapper.eq(MaintenanceCompany::getParentId, sequenceNbr);
return maintenanceCompanyMapper.selectList(wrapper);
}
/**
* 根据维保单位查询所有机场单位(返回List<Map>类型) 不带分页
*
* @param seq
* @return
*/
public List<Map<String, Object>> queryOrgUsrMsg(Long seq) {
if (ValidationUtil.isEmpty(this.queryBySeq(seq))) {
throw new BadRequest("参数校验失败.");
} else {
List<Map<String, Object>> companys = new ArrayList<>();
// 机场单位列表基本信息
List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrList(seq);
// 机场组装单位动态表单数据
orgUsrDtos.forEach(orgUsrDto -> {
Map<String, Object> map = Bean.BeantoMap(orgUsrDto);
mapCopy(dynamicFormInstanceService.getOneMap(orgUsrDto.getSequenceNbr(), OrgPersonEnum.公司.getKey()),
map);
companys.add(map);
});
return companys;
}
}
/**
* 根据维保单位查询所有机场单位(返回List<Map>类型) 带分页
*
* @param pageNum
* @param pageSize
* @param seq
* @param amosUserId
* @return
*/
public Page<Map<String, Object>> queryOrgUsrMsgPage(int pageNum, int pageSize, Long seq, String amosUserId) {
MaintenanceCompany maintenanceCompany = new MaintenanceCompany();
if (ValidationUtil.isEmpty(seq)) {
maintenanceCompany = getMaintenanceCompany(amosUserId);
seq = maintenanceCompany.getSequenceNbr();
}
// 机场单位列表基本信息
if (pageNum == -1 || pageSize == -1) {
pageSize = Integer.MAX_VALUE;
}
Page page = new Page(pageNum, pageSize);
Page<Map<String, Object>> companys = new Page<>(pageNum, pageSize);
Page<OrgUsrDto> pageResult = this.baseMapper.selectOrgUsrPageList(page, seq);
List<Map<String, Object>> finalResultMap = Lists.newArrayList();
// 机场组装单位动态表单数据
pageResult.getRecords().forEach(orgUsrDto -> {
Map<String, Object> map = Bean.BeantoMap(orgUsrDto);
mapCopy(dynamicFormInstanceService.getOneMap(orgUsrDto.getSequenceNbr(), OrgPersonEnum.公司.getKey()), map);
finalResultMap.add(map);
});
companys.setRecords(finalResultMap);
companys.setTotal(pageResult.getTotal());
companys.setPages(pageResult.getPages());
return companys;
}
/**
* 根据平台用户id查询登陆人所属维保单位
*
* @param amosUserId
* @return
*/
public MaintenanceCompany getMaintenanceCompany(String amosUserId) {
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
wrapper.eq(MaintenanceCompany::getIsDelete, false);
wrapper.eq(MaintenanceCompany::getAmosId, amosUserId);
MaintenanceCompany maintenanceCompany = this.baseMapper.selectOne(wrapper);
// DynamicFormInstance dyFormInstance = dynamicFormInstanceService.getOne( // DynamicFormInstance dyFormInstance = dynamicFormInstanceService.getOne(
// new LambdaQueryWrapper<DynamicFormInstance>().eq(DynamicFormInstance::getFieldCode, "amosAccount") // new LambdaQueryWrapper<DynamicFormInstance>().eq(DynamicFormInstance::getFieldCode, "amosAccount")
// .eq(DynamicFormInstance::getFieldValue, amosUserId)); // .eq(DynamicFormInstance::getFieldValue, amosUserId));
if (ValidationUtil.isEmpty(maintenanceCompany)) { if (ValidationUtil.isEmpty(maintenanceCompany)) {
throw new BadRequest("维保账号不存在或未关联系统账号."); throw new BadRequest("维保账号不存在或未关联系统账号.");
} }
// MaintenanceCompany person = this.getOne(new LambdaQueryWrapper<MaintenanceCompany>() // MaintenanceCompany person = this.getOne(new LambdaQueryWrapper<MaintenanceCompany>()
// .eq(MaintenanceCompany::getInstanceId, dyFormInstance.getInstanceId())); // .eq(MaintenanceCompany::getInstanceId, dyFormInstance.getInstanceId()));
// if (ValidationUtil.isEmpty(person)) { // if (ValidationUtil.isEmpty(person)) {
...@@ -684,148 +692,148 @@ public class MaintenanceCompanyServiceImpl ...@@ -684,148 +692,148 @@ public class MaintenanceCompanyServiceImpl
// if (ValidationUtil.isEmpty(maintenanceCompany)) { // if (ValidationUtil.isEmpty(maintenanceCompany)) {
// throw new BadRequest("维保账号不存在或未关联系统账号."); // throw new BadRequest("维保账号不存在或未关联系统账号.");
// } // }
return maintenanceCompany; return maintenanceCompany;
} }
public List<Map<String, Object>> queryCompanyMsg() { public List<Map<String, Object>> queryCompanyMsg() {
List<Map<String, Object>> companysMsg = new ArrayList<>(); List<Map<String, Object>> companysMsg = new ArrayList<>();
LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>(); LambdaQueryWrapper<MaintenanceCompany> wrapper = new LambdaQueryWrapper<MaintenanceCompany>();
wrapper.eq(MaintenanceCompany::getIsDelete, false); wrapper.eq(MaintenanceCompany::getIsDelete, false);
wrapper.eq(MaintenanceCompany::getType, COMPANY); wrapper.eq(MaintenanceCompany::getType, COMPANY);
// 查询所有维保单位信息 // 查询所有维保单位信息
List<MaintenanceCompany> lists = maintenanceCompanyMapper.selectList(wrapper); List<MaintenanceCompany> lists = maintenanceCompanyMapper.selectList(wrapper);
//List<MaintenanceCompany> lists = this.list(); //List<MaintenanceCompany> lists = this.list();
lists.forEach(list -> { lists.forEach(list -> {
Map<String, Object> maintenanceCompany = new HashMap<>(); Map<String, Object> maintenanceCompany = new HashMap<>();
maintenanceCompany.put("id", list.getSequenceNbr()); maintenanceCompany.put("id", list.getSequenceNbr());
maintenanceCompany.put("code", list.getCode()); maintenanceCompany.put("code", list.getCode());
maintenanceCompany.put("name", list.getName()); maintenanceCompany.put("name", list.getName());
maintenanceCompany.put("type", 1); maintenanceCompany.put("type", 1);
maintenanceCompany.put("parentId", 0); maintenanceCompany.put("parentId", 0);
// 查询该维保单位下的业主信息 // 查询该维保单位下的业主信息
List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrList(list.getSequenceNbr()); List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrList(list.getSequenceNbr());
orgUsrDtos.forEach(orgUsrDto -> { orgUsrDtos.forEach(orgUsrDto -> {
Map<String, Object> airCompany = new HashMap<>(); Map<String, Object> airCompany = new HashMap<>();
airCompany.put("id", orgUsrDto.getSequenceNbr()); airCompany.put("id", orgUsrDto.getSequenceNbr());
airCompany.put("code", orgUsrDto.getBizOrgCode()); airCompany.put("code", orgUsrDto.getBizOrgCode());
airCompany.put("name", orgUsrDto.getBizOrgName()); airCompany.put("name", orgUsrDto.getBizOrgName());
airCompany.put("type", 2); airCompany.put("type", 2);
airCompany.put("parentId", list.getSequenceNbr()); airCompany.put("parentId", list.getSequenceNbr());
companysMsg.add(airCompany); companysMsg.add(airCompany);
}); });
companysMsg.add(maintenanceCompany); companysMsg.add(maintenanceCompany);
}); });
return companysMsg; return companysMsg;
} }
/** /**
* 复制map对象 * 复制map对象
* *
* @explain 将paramsMap中的键值对全部拷贝到resultMap中; * @param paramsMap 被拷贝对象
* @param paramsMap 被拷贝对象 * @param resultMap 拷贝后的对象
* @param resultMap 拷贝后的对象 * @explain 将paramsMap中的键值对全部拷贝到resultMap中;
*/ */
private static void mapCopy(Map paramsMap, Map resultMap) { private static void mapCopy(Map paramsMap, Map resultMap) {
if (resultMap == null) { if (resultMap == null) {
return; return;
} }
if (paramsMap == null) { if (paramsMap == null) {
return; return;
} }
Iterator it = paramsMap.entrySet().iterator(); Iterator it = paramsMap.entrySet().iterator();
while (it.hasNext()) { while (it.hasNext()) {
Map.Entry entry = (Map.Entry) it.next(); Map.Entry entry = (Map.Entry) it.next();
Object key = entry.getKey(); Object key = entry.getKey();
resultMap.put(key, paramsMap.get(key) != null ? paramsMap.get(key) : ""); resultMap.put(key, paramsMap.get(key) != null ? paramsMap.get(key) : "");
} }
} }
@Override @Override
public List<DynamicFormInstance> maintenancePersonExcleDtoToDynamicFormInstanceList(List<DynamicFormColumn> columns, public List<DynamicFormInstance> maintenancePersonExcleDtoToDynamicFormInstanceList(List<DynamicFormColumn> columns,
MaintenancePersonExcleDto maintenancePersonExcleDto, long instanceId, List<DynamicFormInstance> list) { MaintenancePersonExcleDto maintenancePersonExcleDto, long instanceId, List<DynamicFormInstance> list) {
Map<String, Object> maintenancePersonExcleDtoMap = Bean.BeantoMap(maintenancePersonExcleDto); Map<String, Object> maintenancePersonExcleDtoMap = Bean.BeantoMap(maintenancePersonExcleDto);
// 填充动态表单的属性 // 填充动态表单的属性
columns.stream().forEach(item -> { columns.stream().forEach(item -> {
if (maintenancePersonExcleDtoMap.containsKey(item.getFieldCode())) { if (maintenancePersonExcleDtoMap.containsKey(item.getFieldCode())) {
DynamicFormInstance dynamicFormInstance = new DynamicFormInstance(); DynamicFormInstance dynamicFormInstance = new DynamicFormInstance();
String valueString = maintenancePersonExcleDtoMap.get(item.getFieldCode()).toString(); String valueString = maintenancePersonExcleDtoMap.get(item.getFieldCode()).toString();
Bean.copyExistPropertis(item, dynamicFormInstance); Bean.copyExistPropertis(item, dynamicFormInstance);
dynamicFormInstance.setAppKey(RequestContext.getAppKey()); dynamicFormInstance.setAppKey(RequestContext.getAppKey());
dynamicFormInstance.setInstanceId(instanceId); dynamicFormInstance.setInstanceId(instanceId);
dynamicFormInstance.setSequenceNbr(sequence.nextId()); dynamicFormInstance.setSequenceNbr(sequence.nextId());
dynamicFormInstance.setFormColumnId(item.getSequenceNbr()); dynamicFormInstance.setFormColumnId(item.getSequenceNbr());
dynamicFormInstance.setFieldValue(maintenancePersonExcleDtoMap.get(item.getFieldCode()) != null dynamicFormInstance.setFieldValue(maintenancePersonExcleDtoMap.get(item.getFieldCode()) != null
? maintenancePersonExcleDtoMap.get(item.getFieldCode()).toString() ? maintenancePersonExcleDtoMap.get(item.getFieldCode()).toString()
: ""); : "");
if (valueString.contains("@")) { if (valueString.contains("@")) {
String[] mapDetailArray = valueString.split("@"); String[] mapDetailArray = valueString.split("@");
dynamicFormInstance.setFieldValue(mapDetailArray[0]); dynamicFormInstance.setFieldValue(mapDetailArray[0]);
if (mapDetailArray.length > 1) { if (mapDetailArray.length > 1) {
dynamicFormInstance.setFieldValueLabel(mapDetailArray[1]); dynamicFormInstance.setFieldValueLabel(mapDetailArray[1]);
} }
} }
if (dynamicFormInstance != null && dynamicFormInstance.getSequenceNbr().longValue() > 0) { if (dynamicFormInstance != null && dynamicFormInstance.getSequenceNbr().longValue() > 0) {
list.add(dynamicFormInstance); list.add(dynamicFormInstance);
} }
} }
}); });
return list; return list;
} }
public boolean saveDynamicFormInstanceBatch(List<DynamicFormInstance> list) { public boolean saveDynamicFormInstanceBatch(List<DynamicFormInstance> list) {
dynamicFormInstanceService.saveBatch(list); dynamicFormInstanceService.saveBatch(list);
return false; return false;
} }
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public boolean saveMaintenanceCompanyBatch(List<MaintenanceCompany> companyList, List<DynamicFormInstance> list) { public boolean saveMaintenanceCompanyBatch(List<MaintenanceCompany> companyList, List<DynamicFormInstance> list) {
saveDynamicFormInstanceBatch(list); saveDynamicFormInstanceBatch(list);
this.saveBatch(companyList); this.saveBatch(companyList);
return false; return false;
} }
/** /**
* 查询当前登陆用户所在维保单位下的维保人员列表部门列表,不分页 * 查询当前登陆用户所在维保单位下的维保人员列表部门列表,不分页
* *
* @param companyId * @param companyId
* @param userId * @param userId
* @return * @return
*/ */
public List<Map<String, Object>> getPersonListByCompanyId(Long companyId, String userId) { public List<Map<String, Object>> getPersonListByCompanyId(Long companyId, String userId) {
MaintenanceCompany company; MaintenanceCompany company;
if (ValidationUtil.isEmpty(companyId)) { if (ValidationUtil.isEmpty(companyId)) {
company = getMaintenanceCompany(userId); company = getMaintenanceCompany(userId);
if (ValidationUtil.isEmpty(company)) { if (ValidationUtil.isEmpty(company)) {
throw new BadRequest("用户不存在"); throw new BadRequest("用户不存在");
} }
} else { } else {
company = this.getById(companyId); company = this.getById(companyId);
} }
// 查询公司下人列表 // 查询公司下人列表
List<MaintenanceCompany> personList = list(new LambdaQueryWrapper<MaintenanceCompany>() List<MaintenanceCompany> personList = list(new LambdaQueryWrapper<MaintenanceCompany>()
.eq(MaintenanceCompany::getIsDelete, false).eq(MaintenanceCompany::getType, PERSON) .eq(MaintenanceCompany::getIsDelete, false).eq(MaintenanceCompany::getType, PERSON)
.likeRight(MaintenanceCompany::getCode, company.getCode())); .likeRight(MaintenanceCompany::getCode, company.getCode()));
List<Long> instanceIdList = Lists.transform(personList, MaintenanceCompany::getInstanceId); List<Long> instanceIdList = Lists.transform(personList, MaintenanceCompany::getInstanceId);
// 查询手机号 // 查询手机号
List<DynamicFormInstance> dynamicFormInstanceList = dynamicFormInstanceService List<DynamicFormInstance> dynamicFormInstanceList = dynamicFormInstanceService
.list(new LambdaQueryWrapper<DynamicFormInstance>().eq(DynamicFormInstance::getFieldCode, "tel") .list(new LambdaQueryWrapper<DynamicFormInstance>().eq(DynamicFormInstance::getFieldCode, "tel")
.in(DynamicFormInstance::getInstanceId, instanceIdList)); .in(DynamicFormInstance::getInstanceId, instanceIdList));
Map<Long, List<DynamicFormInstance>> dyMap = dynamicFormInstanceList.stream() Map<Long, List<DynamicFormInstance>> dyMap = dynamicFormInstanceList.stream()
.collect(Collectors.groupingBy(DynamicFormInstance::getInstanceId)); .collect(Collectors.groupingBy(DynamicFormInstance::getInstanceId));
List<Map<String, Object>> resultList = Lists.newArrayList(); List<Map<String, Object>> resultList = Lists.newArrayList();
personList.forEach(person -> { personList.forEach(person -> {
Map<String, Object> map = Maps.newHashMap(); Map<String, Object> map = Maps.newHashMap();
map.put("sequenceNbr", person.getSequenceNbr()); map.put("sequenceNbr", person.getSequenceNbr());
map.put("name", person.getName()); map.put("name", person.getName());
map.put("tel", dyMap.get(person.getInstanceId()).get(0).getFieldValue()); map.put("tel", dyMap.get(person.getInstanceId()).get(0).getFieldValue());
resultList.add(map); resultList.add(map);
}); });
return resultList; return resultList;
} }
} }
\ No newline at end of file
package com.yeejoin.amos.boot.module.jcs.biz.controller; package com.yeejoin.amos.boot.module.jcs.biz.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional;
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.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
...@@ -16,29 +36,28 @@ import com.yeejoin.amos.boot.biz.common.utils.RedisUtils; ...@@ -16,29 +36,28 @@ import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersDto; import com.yeejoin.amos.boot.module.common.api.dto.FirefightersDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersInfoDto; import com.yeejoin.amos.boot.module.common.api.dto.FirefightersInfoDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersZhDto; import com.yeejoin.amos.boot.module.common.api.dto.FirefightersZhDto;
import com.yeejoin.amos.boot.module.common.api.entity.*; import com.yeejoin.amos.boot.module.common.api.entity.FireTeam;
import com.yeejoin.amos.boot.module.common.biz.service.impl.*; import com.yeejoin.amos.boot.module.common.api.entity.Firefighters;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.FireTeamServiceImpl; import com.yeejoin.amos.boot.module.common.api.entity.FirefightersContacts;
import com.yeejoin.amos.boot.module.common.api.entity.FirefightersContract;
import com.yeejoin.amos.boot.module.common.api.entity.FirefightersEducation;
import com.yeejoin.amos.boot.module.common.api.entity.FirefightersJacket;
import com.yeejoin.amos.boot.module.common.api.entity.FirefightersPost;
import com.yeejoin.amos.boot.module.common.api.entity.FirefightersThought;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireTeamServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersContactsServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersContractServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersEducationServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersPostServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersThoughtServiceImpl;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.FirefightersJacketServiceImpl; import com.yeejoin.amos.boot.module.jcs.biz.service.impl.FirefightersJacketServiceImpl;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.Systemctl; import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.RegionModel; import com.yeejoin.amos.feign.systemctl.model.RegionModel;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/** /**
* 消防队员 * 消防队员
......
...@@ -22,10 +22,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -22,10 +22,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.NameUtils; import com.yeejoin.amos.boot.biz.common.utils.NameUtils;
import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient; import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireTeamServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferDto; import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferSimpleDto; import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferSimpleDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransfer; import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransfer;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.FireTeamServiceImpl;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.PowerTransferServiceImpl; import com.yeejoin.amos.boot.module.jcs.biz.service.impl.PowerTransferServiceImpl;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
......
package com.yeejoin.amos.boot.module.jcs.biz.service.impl; package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Field;
import java.text.ParseException;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;
import java.util.function.BiConsumer;
import java.util.function.Consumer;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.xwpf.usermodel.XWPFTable;
import org.apache.poi.xwpf.usermodel.XWPFTableRow;
import org.eclipse.paho.client.mqttv3.MqttException;
import org.eclipse.paho.client.mqttv3.MqttPersistenceException;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STJc.Enum;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONException; import com.alibaba.fastjson.JSONException;
...@@ -35,14 +79,42 @@ import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient; ...@@ -35,14 +79,42 @@ import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient;
import com.yeejoin.amos.boot.module.common.api.mapper.DynamicFormInstanceMapper; import com.yeejoin.amos.boot.module.common.api.mapper.DynamicFormInstanceMapper;
import com.yeejoin.amos.boot.module.common.api.service.IDutyPersonService; import com.yeejoin.amos.boot.module.common.api.service.IDutyPersonService;
import com.yeejoin.amos.boot.module.common.api.service.IFireTeamService; import com.yeejoin.amos.boot.module.common.api.service.IFireTeamService;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireTeamServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.dto.*; import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCallCommandDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCallePowerTransferRo;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledFormDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledMobDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledObjsDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledPowerInfoDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledRo;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledZhDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedExtDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedSMSDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedZHDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.CarStatusInfoDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.InstructionsZHDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerData;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferCompanyDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferCompanyResourcesDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferCompanyZHDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PushMessageWebAndAppRo;
import com.yeejoin.amos.boot.module.jcs.api.dto.SchedulingReportingDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.TemplateDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.TemplateExtendDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.VoiceRecordFileDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled; import com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertSubmitted; import com.yeejoin.amos.boot.module.jcs.api.entity.AlertSubmitted;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertSubmittedObject; import com.yeejoin.amos.boot.module.jcs.api.entity.AlertSubmittedObject;
import com.yeejoin.amos.boot.module.jcs.api.entity.Template; import com.yeejoin.amos.boot.module.jcs.api.entity.Template;
import com.yeejoin.amos.boot.module.jcs.api.enums.*; import com.yeejoin.amos.boot.module.jcs.api.enums.AlertBusinessTypeEnum;
import com.yeejoin.amos.boot.module.jcs.api.enums.AlertSchedulingTypeEnum;
import com.yeejoin.amos.boot.module.jcs.api.enums.AlertStageEnums;
import com.yeejoin.amos.boot.module.jcs.api.enums.AlertSubmitTypeEnum;
import com.yeejoin.amos.boot.module.jcs.api.enums.FireCarStatusEnum;
import com.yeejoin.amos.boot.module.jcs.api.enums.SubmissionMethodEnum;
import com.yeejoin.amos.boot.module.jcs.api.mapper.AlertSubmittedMapper; import com.yeejoin.amos.boot.module.jcs.api.mapper.AlertSubmittedMapper;
import com.yeejoin.amos.boot.module.jcs.api.mapper.PowerTransferCompanyMapper; import com.yeejoin.amos.boot.module.jcs.api.mapper.PowerTransferCompanyMapper;
import com.yeejoin.amos.boot.module.jcs.api.mapper.PowerTransferMapper; import com.yeejoin.amos.boot.module.jcs.api.mapper.PowerTransferMapper;
...@@ -53,32 +125,6 @@ import com.yeejoin.amos.component.feign.model.FeignClientResult; ...@@ -53,32 +125,6 @@ import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.component.rule.RuleTrigger; import com.yeejoin.amos.component.rule.RuleTrigger;
import com.yeejoin.amos.component.rule.config.RuleConfig; import com.yeejoin.amos.component.rule.config.RuleConfig;
import com.yeejoin.amos.feign.systemctl.Systemctl; import com.yeejoin.amos.feign.systemctl.Systemctl;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.xwpf.usermodel.XWPFTable;
import org.apache.poi.xwpf.usermodel.XWPFTableRow;
import org.eclipse.paho.client.mqttv3.MqttException;
import org.eclipse.paho.client.mqttv3.MqttPersistenceException;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STJc.Enum;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.io.*;
import java.lang.reflect.Field;
import java.text.ParseException;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.util.*;
import java.util.function.BiConsumer;
import java.util.function.Consumer;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
/** /**
...@@ -485,7 +531,7 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto, Al ...@@ -485,7 +531,7 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto, Al
smsParams.put("feedback", calledRo.getFeedback()); smsParams.put("feedback", calledRo.getFeedback());
} }
// 短信报送对象 // 短信报送对象
// alertSubmittedObjectServiceImpl.saveBatch(alertSubmittedObjectList); alertSubmittedObjectServiceImpl.saveBatch(alertSubmittedObjectList);
// 发送任务消息 // 发送任务消息
// 组织短信内容 // 组织短信内容
// 调用短信发送接口 // 调用短信发送接口
......
...@@ -9,12 +9,6 @@ import java.util.stream.Collectors; ...@@ -9,12 +9,6 @@ import java.util.stream.Collectors;
import javax.annotation.Resource; import javax.annotation.Resource;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto;
import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient;
import com.yeejoin.amos.boot.module.common.api.service.ILinkageUnitService;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.RegionModel;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
...@@ -40,15 +34,22 @@ import com.yeejoin.amos.boot.module.common.api.dto.FireTeamCardDto; ...@@ -40,15 +34,22 @@ import com.yeejoin.amos.boot.module.common.api.dto.FireTeamCardDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireTeamListDto; import com.yeejoin.amos.boot.module.common.api.dto.FireTeamListDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersDto; import com.yeejoin.amos.boot.module.common.api.dto.FirefightersDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersZhDto; import com.yeejoin.amos.boot.module.common.api.dto.FirefightersZhDto;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgMenuDto; import com.yeejoin.amos.boot.module.common.api.dto.OrgMenuDto;
import com.yeejoin.amos.boot.module.common.api.entity.MaintenanceCompany; import com.yeejoin.amos.boot.module.common.api.entity.MaintenanceCompany;
import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr; import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr;
import com.yeejoin.amos.boot.module.common.api.enums.ExcelSelectData; import com.yeejoin.amos.boot.module.common.api.enums.ExcelSelectData;
import com.yeejoin.amos.boot.module.common.api.excel.DataSources; import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient;
import com.yeejoin.amos.boot.module.common.api.service.IKeySiteService; import com.yeejoin.amos.boot.module.common.api.service.IKeySiteService;
import com.yeejoin.amos.boot.module.common.api.service.ILinkageUnitService;
import com.yeejoin.amos.boot.module.common.api.service.IMaintenanceCompanyService; import com.yeejoin.amos.boot.module.common.api.service.IMaintenanceCompanyService;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireTeamServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.RegionModel;
@Service @Service
public class DataSourcesImpl implements DataSources { public class DataSourcesImpl implements DataSources {
......
package com.yeejoin.amos.boot.module.jcs.biz.service.impl; package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import java.io.InputStream;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.beanutils.ConvertUtils;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import com.alibaba.excel.support.ExcelTypeEnum; import com.alibaba.excel.support.ExcelTypeEnum;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
...@@ -15,7 +45,33 @@ import com.yeejoin.amos.boot.biz.common.utils.DateUtils; ...@@ -15,7 +45,33 @@ import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.QRCodeUtil; import com.yeejoin.amos.boot.biz.common.utils.QRCodeUtil;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey; import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils; import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.common.api.dto.*; import com.yeejoin.amos.boot.module.common.api.dto.CompanyPerson;
import com.yeejoin.amos.boot.module.common.api.dto.DutyCarDto;
import com.yeejoin.amos.boot.module.common.api.dto.DutyFireFightingDto;
import com.yeejoin.amos.boot.module.common.api.dto.DutyFirstAidDto;
import com.yeejoin.amos.boot.module.common.api.dto.DutyPersonDto;
import com.yeejoin.amos.boot.module.common.api.dto.DutyPersonShiftDto;
import com.yeejoin.amos.boot.module.common.api.dto.DutyShiftDto;
import com.yeejoin.amos.boot.module.common.api.dto.DynamicFormInitDto;
import com.yeejoin.amos.boot.module.common.api.dto.DynamicFormInstanceDto;
import com.yeejoin.amos.boot.module.common.api.dto.ExcelDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireChemicalDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireExpertsDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireStationDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireTeamDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersExcelDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersInfoDto;
import com.yeejoin.amos.boot.module.common.api.dto.KeySiteExcleDto;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitVo;
import com.yeejoin.amos.boot.module.common.api.dto.MaintenancePersonExcleDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrExcelDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrFormDto;
import com.yeejoin.amos.boot.module.common.api.dto.RescueEquipmentDto;
import com.yeejoin.amos.boot.module.common.api.dto.SpecialPositionStaffDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto;
import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormColumn; import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormColumn;
import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormInstance; import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormInstance;
import com.yeejoin.amos.boot.module.common.api.entity.FireChemical; import com.yeejoin.amos.boot.module.common.api.entity.FireChemical;
...@@ -46,6 +102,7 @@ import com.yeejoin.amos.boot.module.common.biz.service.impl.DynamicFormInstanceS ...@@ -46,6 +102,7 @@ import com.yeejoin.amos.boot.module.common.biz.service.impl.DynamicFormInstanceS
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireChemicalServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.FireChemicalServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireExpertsServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.FireExpertsServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireStationServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.FireStationServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireTeamServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersContactsServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersContactsServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersEducationServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersEducationServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersPostServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersPostServiceImpl;
...@@ -64,34 +121,6 @@ import com.yeejoin.amos.boot.module.jcs.api.enums.ExcelEnums; ...@@ -64,34 +121,6 @@ import com.yeejoin.amos.boot.module.jcs.api.enums.ExcelEnums;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege; import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import org.apache.commons.beanutils.ConvertUtils;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.stream.Collectors;
/** /**
* @author tb * @author tb
......
package com.yeejoin.amos.boot.module.jcs.biz.service.impl; package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import java.util.*; import java.util.ArrayList;
import java.util.function.Function; import java.util.HashMap;
import java.util.function.IntFunction; import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.yeejoin.amos.boot.module.common.api.service.IDutyCarService;
import com.yeejoin.amos.boot.module.jcs.api.dto.*;
import com.yeejoin.amos.boot.module.jcs.api.entity.*;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.eclipse.paho.client.mqttv3.MqttException; import org.eclipse.paho.client.mqttv3.MqttException;
...@@ -27,6 +25,7 @@ import org.typroject.tyboot.core.rdbms.service.BaseService; ...@@ -27,6 +25,7 @@ import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
...@@ -38,6 +37,26 @@ import com.yeejoin.amos.boot.module.common.api.entity.FireTeam; ...@@ -38,6 +37,26 @@ import com.yeejoin.amos.boot.module.common.api.entity.FireTeam;
import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient; import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient;
import com.yeejoin.amos.boot.module.common.api.mapper.DynamicFormInstanceMapper; import com.yeejoin.amos.boot.module.common.api.mapper.DynamicFormInstanceMapper;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DutyCarServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.DutyCarServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireTeamServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledObjsDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledRo;
import com.yeejoin.amos.boot.module.jcs.api.dto.CarStatusInfoDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.ControllerDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerCarCountDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerCompanyCountDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferCompanyDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferCompanyResourcesDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferResourceDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferSimpleDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.ResourceStatisticsDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertFormValue;
import com.yeejoin.amos.boot.module.jcs.api.entity.Controller;
import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransfer;
import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransferCompany;
import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransferCompanyResources;
import com.yeejoin.amos.boot.module.jcs.api.entity.Template;
import com.yeejoin.amos.boot.module.jcs.api.enums.AlertFeedbackStatusEnum; import com.yeejoin.amos.boot.module.jcs.api.enums.AlertFeedbackStatusEnum;
import com.yeejoin.amos.boot.module.jcs.api.enums.DutyInfoEnum; import com.yeejoin.amos.boot.module.jcs.api.enums.DutyInfoEnum;
import com.yeejoin.amos.boot.module.jcs.api.enums.FireBrigadeTypeEnum; import com.yeejoin.amos.boot.module.jcs.api.enums.FireBrigadeTypeEnum;
......
...@@ -1312,7 +1312,8 @@ public class LatentDangerServiceImpl extends BaseService<LatentDangerBo, LatentD ...@@ -1312,7 +1312,8 @@ public class LatentDangerServiceImpl extends BaseService<LatentDangerBo, LatentD
return executeSubmitDto; return executeSubmitDto;
} }
AgencyUserModel checkLeader = jcsFeignClient.getAmosIdByUserId(param.getReformLeaderId()).getResult(); AgencyUserModel checkLeader = jcsFeignClient.getAmosIdByUserId(param.getReformLeaderId()).getResult();
JSONObject reformJson = new JSONObject(); JSONObject reformJson = ValidationUtil.isEmpty(latentDanger.getReformJson()) ? new JSONObject() :
latentDanger.getReformJson();
reformJson.put("reformLeaderId", param.getReformLeaderId()); reformJson.put("reformLeaderId", param.getReformLeaderId());
latentDanger.setReformJson(reformJson); latentDanger.setReformJson(reformJson);
Object result = workflowExecuteService.setTaskAssign(processInstanceId, checkLeader.getUserName()); Object result = workflowExecuteService.setTaskAssign(processInstanceId, checkLeader.getUserName());
......
...@@ -9,6 +9,8 @@ import org.aspectj.lang.JoinPoint; ...@@ -9,6 +9,8 @@ import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before; import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut; import org.aspectj.lang.annotation.Pointcut;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -25,6 +27,8 @@ import java.util.List; ...@@ -25,6 +27,8 @@ import java.util.List;
@Component @Component
public class EnumFillAop { public class EnumFillAop {
private static final Logger logger = LoggerFactory.getLogger(EnumFillAop.class);
@Autowired @Autowired
RedisUtils redisUtils; RedisUtils redisUtils;
...@@ -39,19 +43,27 @@ public class EnumFillAop { ...@@ -39,19 +43,27 @@ public class EnumFillAop {
@Before("fillEnum()") @Before("fillEnum()")
public void doBefore(JoinPoint joinPoint) { public void doBefore(JoinPoint joinPoint) {
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
// 获取隐患等级枚举
synchronized (this) { synchronized (this) {
// 获取隐患等级枚举
if (ValidationUtil.isEmpty(LatentDangerLevelEnum.supervisionDangerLevelEnumMap)) { if (ValidationUtil.isEmpty(LatentDangerLevelEnum.supervisionDangerLevelEnumMap)) {
List<DictionarieValueModel> dicResult = try {
Systemctl.dictionarieClient.dictValues(bizType + LatentDangerLevelEnum.dictCode).getResult(); List<DictionarieValueModel> dicResult =
dicResult.forEach(dic -> LatentDangerLevelEnum.addEnumDynamic(dic.getDictDataDesc(), dic.getDictDataValue(), dic.getDictDataKey(), Systemctl.dictionarieClient.dictValues(bizType + LatentDangerLevelEnum.dictCode).getResult();
"", dic.getOrderNum())); dicResult.forEach(dic -> LatentDangerLevelEnum.addEnumDynamic(dic.getDictDataDesc(), dic.getDictDataValue(), dic.getDictDataKey(),
"", dic.getOrderNum()));
} catch (Exception e) {
logger.debug(e.getMessage());
}
} }
// 获取治理方式枚举 // 获取治理方式枚举
if (ValidationUtil.isEmpty(LatentDangerReformTypeEnum.supervisionReformTypeEnumMap)) { try {
List<DictionarieValueModel> dicResult = if (ValidationUtil.isEmpty(LatentDangerReformTypeEnum.supervisionReformTypeEnumMap)) {
Systemctl.dictionarieClient.dictValues(bizType + LatentDangerReformTypeEnum.dictCode).getResult(); List<DictionarieValueModel> dicResult =
dicResult.forEach(dic -> LatentDangerReformTypeEnum.addEnumDynamic(dic.getDictDataDesc(), dic.getDictDataValue(), dic.getDictDataKey())); Systemctl.dictionarieClient.dictValues(bizType + LatentDangerReformTypeEnum.dictCode).getResult();
dicResult.forEach(dic -> LatentDangerReformTypeEnum.addEnumDynamic(dic.getDictDataDesc(), dic.getDictDataValue(), dic.getDictDataKey()));
}
} catch (Exception e) {
logger.debug(e.getMessage());
} }
} }
// 获取治理状态枚举 // 获取治理状态枚举
......
...@@ -7,7 +7,6 @@ import com.google.common.base.Joiner; ...@@ -7,7 +7,6 @@ import com.google.common.base.Joiner;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.google.common.collect.Sets; import com.google.common.collect.Sets;
import com.google.gson.JsonObject;
import com.yeejoin.amos.boot.biz.common.bo.DepartmentBo; import com.yeejoin.amos.boot.biz.common.bo.DepartmentBo;
import com.yeejoin.amos.boot.biz.common.bo.RoleBo; import com.yeejoin.amos.boot.biz.common.bo.RoleBo;
import com.yeejoin.amos.boot.biz.common.service.impl.WorkflowExcuteServiceImpl; import com.yeejoin.amos.boot.biz.common.service.impl.WorkflowExcuteServiceImpl;
...@@ -328,7 +327,7 @@ public class LatentDangerServiceImpl implements ILatentDangerService { ...@@ -328,7 +327,7 @@ public class LatentDangerServiceImpl implements ILatentDangerService {
riskSourceId = Long.parseLong(inputCheckDto.getRiskSourceId()); riskSourceId = Long.parseLong(inputCheckDto.getRiskSourceId());
} }
LatentDangerBo latentDangerBo = saveLatentDanger("", param.getRemark(), remark, userId, departmentId, LatentDangerBo latentDangerBo = saveLatentDanger("", "", remark, userId, departmentId,
businessKey, orgCode, dangerName, levelEnum.getCode(), businessKey, orgCode, dangerName, levelEnum.getCode(),
null, dangerTypeEnum, photoUrls, inputCheckDto.getCheckInputId(), riskSourceId, null, dangerTypeEnum, photoUrls, inputCheckDto.getCheckInputId(), riskSourceId,
position.get(inputCheckDto.getRiskSourceId())==null?"":position.get(inputCheckDto.getRiskSourceId()).toString(), InstanceKeyEnum.PATROL.getCode()); position.get(inputCheckDto.getRiskSourceId())==null?"":position.get(inputCheckDto.getRiskSourceId()).toString(), InstanceKeyEnum.PATROL.getCode());
...@@ -1234,7 +1233,7 @@ public class LatentDangerServiceImpl implements ILatentDangerService { ...@@ -1234,7 +1233,7 @@ public class LatentDangerServiceImpl implements ILatentDangerService {
executeParam.getFlowJson(), executeParam.getDangerId(), role, executeTypeEnum.getName(),executeParam.getRemark()); executeParam.getFlowJson(), executeParam.getDangerId(), role, executeTypeEnum.getName(),executeParam.getRemark());
} else { } else {
if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患评审通过)) { if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患评审通过)) {
// 将定的治理人保存在日志记录 // 将定的治理人保存在日志记录
executeParam.getFlowJson().put("governUserId", governUserId); executeParam.getFlowJson().put("governUserId", governUserId);
} }
LatentDangerFlowRecordBo flowRecord = saveFlowRecord(executeJson.getString("id"), data.getString("name"), userId, departmentId, LatentDangerFlowRecordBo flowRecord = saveFlowRecord(executeJson.getString("id"), data.getString("name"), userId, departmentId,
...@@ -1243,9 +1242,16 @@ public class LatentDangerServiceImpl implements ILatentDangerService { ...@@ -1243,9 +1242,16 @@ public class LatentDangerServiceImpl implements ILatentDangerService {
latentDangerBo.setDangerState(executeTypeEnum.getNextState().getCode().toString()); latentDangerBo.setDangerState(executeTypeEnum.getNextState().getCode().toString());
if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患常规治理)) { if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患常规治理)) {
latentDangerBo.setReformType(LatentDangerReformTypeEnum.常规整改.getCode().toString()); latentDangerBo.setReformType(LatentDangerReformTypeEnum.常规整改.getCode().toString());
latentDangerBo.setReformJson(executeParam.getFlowJson().toJSONString()); JSONObject reformJsonObj = JSONObject.parseObject(latentDangerBo.getReformJson());
if (ValidationUtil.isEmpty(reformJsonObj)) {
reformJsonObj = executeParam.getFlowJson();
} else {
reformJsonObj.putAll(executeParam.getFlowJson());
}
latentDangerBo.setReformJson(reformJsonObj.toJSONString());
latentDangerBo.setInferOtherThings(executeParam.getInferOtherThings()); latentDangerBo.setInferOtherThings(executeParam.getInferOtherThings());
latentDangerBo.setProblemDescription(executeParam.getRemark()); latentDangerBo.setProblemDescription(ValidationUtil.isEmpty(executeParam.getProblemDescription()) ?
executeParam.getRemark() : executeParam.getProblemDescription());
latentDangerBo.setReasonAnalysis(executeParam.getReasonAnalysis()); latentDangerBo.setReasonAnalysis(executeParam.getReasonAnalysis());
} else if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患延期治理)) { } else if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患延期治理)) {
latentDangerBo.setReformType(LatentDangerReformTypeEnum.延期治理.getCode().toString()); latentDangerBo.setReformType(LatentDangerReformTypeEnum.延期治理.getCode().toString());
...@@ -1258,10 +1264,21 @@ public class LatentDangerServiceImpl implements ILatentDangerService { ...@@ -1258,10 +1264,21 @@ public class LatentDangerServiceImpl implements ILatentDangerService {
if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患评审通过)) { if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患评审通过)) {
latentDangerBo.setReformLimitDate(DateUtil.str2Date(executeParam.getReformLimitDate(), DateUtil.DATETIME_DEFAULT_FORMAT)); latentDangerBo.setReformLimitDate(DateUtil.str2Date(executeParam.getReformLimitDate(), DateUtil.DATETIME_DEFAULT_FORMAT));
latentDangerBo.setDangerLevel(executeParam.getDangerLevel().toString()); latentDangerBo.setDangerLevel(executeParam.getDangerLevel().toString());
JSONObject reformJsonObject = JSONObject.parseObject(latentDangerBo.getReformJson());
if (ValidationUtil.isEmpty(reformJsonObject)) {
reformJsonObject = new JSONObject();
}
reformJsonObject.put("governUserId", governUserId);
latentDangerBo.setReformJson(reformJsonObject.toJSONString());
// 消防巡查需求:评审通过后定治理人 // 消防巡查需求:评审通过后定治理人
// 2.指定治理执行人 // 2.指定治理执行人
workflowExecuteService.setTaskAssign(latentDangerBo.getInstanceId(), governUserId); Object result = workflowExecuteService.setTaskAssign(latentDangerBo.getInstanceId(), governUserId);
if (!(Boolean) result) {
executeSubmitDto.setIsOk(false);
executeSubmitDto.setMsg("设置治理行人失败");
return executeSubmitDto;
}
} }
} }
if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患延期治理车间部门审核通过)) { if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患延期治理车间部门审核通过)) {
...@@ -1269,6 +1286,10 @@ public class LatentDangerServiceImpl implements ILatentDangerService { ...@@ -1269,6 +1286,10 @@ public class LatentDangerServiceImpl implements ILatentDangerService {
if (executeParam.getNeedCompanyVerify() == 0) { if (executeParam.getNeedCompanyVerify() == 0) {
latentDangerBo.setDangerState(LatentDangerStateEnum.延期治理申请.getCode().toString()); latentDangerBo.setDangerState(LatentDangerStateEnum.延期治理申请.getCode().toString());
latentDangerBo.setReformLimitDate(latentDangerBo.getDelayLimitDate()); latentDangerBo.setReformLimitDate(latentDangerBo.getDelayLimitDate());
if (!assignGovernUser(latentDangerBo, executeSubmitDto)) {
return executeSubmitDto;
}
} else {// 延期治理评审通过且 需要 公司审核 } else {// 延期治理评审通过且 需要 公司审核
latentDangerBo.setDangerState(LatentDangerStateEnum.延期治理申请待公司审核.getCode().toString()); latentDangerBo.setDangerState(LatentDangerStateEnum.延期治理申请待公司审核.getCode().toString());
LatentDangerFlowRecordBo recordBo = LatentDangerFlowRecordBo recordBo =
...@@ -1283,15 +1304,16 @@ public class LatentDangerServiceImpl implements ILatentDangerService { ...@@ -1283,15 +1304,16 @@ public class LatentDangerServiceImpl implements ILatentDangerService {
|| LatentDangerExcuteTypeEnum.隐患延期治理公司审核拒绝.equals(executeTypeEnum) || LatentDangerExcuteTypeEnum.隐患延期治理公司审核拒绝.equals(executeTypeEnum)
|| LatentDangerExcuteTypeEnum.隐患验证拒绝.equals(executeTypeEnum)) { || LatentDangerExcuteTypeEnum.隐患验证拒绝.equals(executeTypeEnum)) {
latentDangerBo.setDangerState(LatentDangerStateEnum.待治理.getCode().toString()); latentDangerBo.setDangerState(LatentDangerStateEnum.待治理.getCode().toString());
// 获取第一次评审时选择的治理人 if (!assignGovernUser(latentDangerBo, executeSubmitDto)) {
LatentDangerFlowRecordBo record = latentDangerFlowRecordMapper.getByDangerIdAndActionFlag(latentDangerBo.getId(), "隐患评审"); return executeSubmitDto;
JSONObject recordObj = JSONObject.parseObject(record.getFlowJson());
if (!ValidationUtil.isEmpty(recordObj.get("governUserId"))) {
workflowExecuteService.setTaskAssign(latentDangerBo.getInstanceId(), (String) recordObj.get("governUserId"));
} }
} else if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患延期治理公司审核通过)) { } else if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患延期治理公司审核通过)) {
latentDangerBo.setDangerState(LatentDangerStateEnum.延期治理申请.getCode().toString()); latentDangerBo.setDangerState(LatentDangerStateEnum.延期治理申请.getCode().toString());
latentDangerBo.setReformLimitDate(latentDangerBo.getDelayLimitDate()); latentDangerBo.setReformLimitDate(latentDangerBo.getDelayLimitDate());
if (!assignGovernUser(latentDangerBo, executeSubmitDto)) {
return executeSubmitDto;
}
} /**else if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患延期治理公司审核拒绝)) { } /**else if (executeTypeEnum.equals(LatentDangerExcuteTypeEnum.隐患延期治理公司审核拒绝)) {
// TODO 待需求确认是回到部门审核还是回到隐患治理节点 // TODO 待需求确认是回到部门审核还是回到隐患治理节点
latentDangerBo.setDangerState(LatentDangerStateEnum.延期治理申请待车间部门审核.getCode().toString()); latentDangerBo.setDangerState(LatentDangerStateEnum.延期治理申请待车间部门审核.getCode().toString());
...@@ -1310,6 +1332,29 @@ public class LatentDangerServiceImpl implements ILatentDangerService { ...@@ -1310,6 +1332,29 @@ public class LatentDangerServiceImpl implements ILatentDangerService {
return executeSubmitDto; return executeSubmitDto;
} }
/**
* 设置治理人到流程执行节点(平台人员用户名)
*
* @param latentDangerBo
* @param executeSubmitDto
* @return
*/
public boolean assignGovernUser(LatentDangerBo latentDangerBo, DangerExecuteSubmitDto executeSubmitDto) {
// 获取最后一次评审时选择的治理人
LatentDangerFlowRecordBo record = latentDangerFlowRecordMapper.getByDangerIdAndActionFlag(latentDangerBo.getId(), "隐患评审");
JSONObject recordObj = JSONObject.parseObject(record.getFlowJson());
if (!ValidationUtil.isEmpty(recordObj.get("governUserId"))) {
Object result = workflowExecuteService.setTaskAssign(latentDangerBo.getInstanceId(),
(String) recordObj.get("governUserId"));
if (!(Boolean) result) {
executeSubmitDto.setIsOk(false);
executeSubmitDto.setMsg("指定治理人失败");
return false;
}
}
return true;
}
private void sendMessage(LatentDangerBo latentDangerBo, LatentDangerExcuteTypeEnum excuteTypeEnum, private void sendMessage(LatentDangerBo latentDangerBo, LatentDangerExcuteTypeEnum excuteTypeEnum,
LatentDangerPatrolBo patrolBo, String flowTaskName, String informerList, LatentDangerPatrolBo patrolBo, String flowTaskName, String informerList,
String userRealName, String departmentName) { String userRealName, String departmentName) {
......
...@@ -7,8 +7,10 @@ import com.yeejoin.amos.boot.module.tzs.api.dto.MaintenanceUnitDto; ...@@ -7,8 +7,10 @@ import com.yeejoin.amos.boot.module.tzs.api.dto.MaintenanceUnitDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.Elevator; import com.yeejoin.amos.boot.module.tzs.api.entity.Elevator;
import com.yeejoin.amos.boot.module.tzs.api.entity.MaintenanceUnit; import com.yeejoin.amos.boot.module.tzs.api.entity.MaintenanceUnit;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentDto; import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentInformDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.UnitInfoDto; import com.yeejoin.amos.boot.module.tzs.flc.api.dto.UnitInfoDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.entity.Equipment; import com.yeejoin.amos.boot.module.tzs.flc.api.entity.Equipment;
import com.yeejoin.amos.boot.module.tzs.flc.api.entity.EquipmentInform;
import com.yeejoin.amos.boot.module.tzs.flc.api.entity.UnitInfo; import com.yeejoin.amos.boot.module.tzs.flc.api.entity.UnitInfo;
import com.yeejoin.amos.boot.module.tzs.flc.api.enums.EquipmentStatusEnum; import com.yeejoin.amos.boot.module.tzs.flc.api.enums.EquipmentStatusEnum;
import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel; import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel;
...@@ -302,4 +304,7 @@ public class BeanDtoVoUtils { ...@@ -302,4 +304,7 @@ public class BeanDtoVoUtils {
} }
}); });
} }
} }
\ No newline at end of file
package com.yeejoin.amos.boot.module.tzs.flc.biz.controller; package com.yeejoin.amos.boot.module.tzs.flc.biz.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledQueryDto;
import com.yeejoin.amos.boot.module.tzs.biz.utils.BeanDtoVoUtils;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.InformEquipmentDto; import com.yeejoin.amos.boot.module.tzs.flc.api.dto.InformEquipmentDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.UnitInfoDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.entity.EquipmentInform; import com.yeejoin.amos.boot.module.tzs.flc.api.entity.EquipmentInform;
import com.yeejoin.amos.boot.module.tzs.flc.api.entity.UnitInfo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -74,25 +82,13 @@ public class EquipmentInformController extends BaseController { ...@@ -74,25 +82,13 @@ public class EquipmentInformController extends BaseController {
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}") @PutMapping(value = "/updateEquipmentInform")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新设备告知单", notes = "根据sequenceNbr更新设备告知单") @ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新设备告知单", notes = "根据sequenceNbr更新设备告知单")
public ResponseModel<EquipmentInformDto> updateBySequenceNbrEquipmentInform(@RequestBody EquipmentInformDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) { public ResponseModel<EquipmentInformDto> updateBySequenceNbrEquipmentInform(@RequestBody EquipmentInformDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr); model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(equipmentInformServiceImpl.updateWithModel(model)); return ResponseHelper.buildResponse(equipmentInformServiceImpl.updateWithModel(model));
} }
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除设备告知单", notes = "根据sequenceNbr删除设备告知单")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(equipmentInformServiceImpl.removeById(sequenceNbr));
}
/** /**
* 根据sequenceNbr查询 * 根据sequenceNbr查询
...@@ -107,37 +103,59 @@ public class EquipmentInformController extends BaseController { ...@@ -107,37 +103,59 @@ public class EquipmentInformController extends BaseController {
return ResponseHelper.buildResponse(equipmentInformServiceImpl.queryBySeq(sequenceNbr)); return ResponseHelper.buildResponse(equipmentInformServiceImpl.queryBySeq(sequenceNbr));
} }
/** /**
* 列表分页查询 * 列表分页查询
* *
* @param current 当前页 * @param pageNum 当前页
* @param current 每页大小 * @param pageSize 每页大小
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page") @GetMapping(value = "/list")
@ApiOperation(httpMethod = "GET",value = "设备告知单分页查询", notes = "设备告知单分页查询") @ApiOperation(httpMethod = "GET", value = "告知书列表查询", notes = "告知书列表查询")
public ResponseModel<Page<EquipmentInformDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam public ResponseModel<Page<EquipmentInformDto>> queryForPage(@RequestParam(value = "pageNum") int pageNum, @RequestParam(value = "pageSize") int pageSize, String sort , EquipmentInformDto equipmentInformDto) {
(value = "size") int size) { Page<EquipmentInformDto> page = new Page<EquipmentInformDto>();
Page<EquipmentInformDto> page = new Page<EquipmentInformDto>(); page.setCurrent(pageNum);
page.setCurrent(current); page.setSize(pageSize);
page.setSize(size); String sortParam = "";
return ResponseHelper.buildResponse(equipmentInformServiceImpl.queryForEquipmentInformPage(page)); String sortRule = "";
if(sort!=null) { // 排序失效
String[] date= sort.split(",");
if(date[1].equals("ascend")) {
sortParam = RedisKey.humpToLine(date[0]);
sortRule = "asc";
}else {
sortParam =RedisKey.humpToLine(date[0]);
sortRule = "desc";
}
}else {
sortParam = "rec_date";
sortRule = "desc";
}
Page<EquipmentInformDto> pageBean = equipmentInformServiceImpl.queryDtoList(page,equipmentInformDto,sortParam,sortRule);
Page<EquipmentInformDto> result = new Page<EquipmentInformDto>(pageNum,pageSize);
long totle = pageBean.getTotal();
result.setRecords(pageBean.getRecords());
result.setTotal(totle);
return ResponseHelper.buildResponse(result);
} }
/** /**
* 列表全部数据查询 * 根据sequenceNbr删除
* *
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "设备告知单列表全部数据查询", notes = "设备告知单列表全部数据查询") @DeleteMapping(value = "/delete_batch")
@GetMapping(value = "/list") @ApiOperation(httpMethod = "DELETE", value = "批量删除告知书信息", notes = "批量删除告知书信息")
public ResponseModel<List<EquipmentInformDto>> selectForList() { public ResponseModel<Boolean> deleteBySequenceNbr(@RequestParam(value = "sequenceNbrList") List<Long> sequenceNbrList){
return ResponseHelper.buildResponse(equipmentInformServiceImpl.queryForEquipmentInformList()); return ResponseHelper.buildResponse(equipmentInformServiceImpl.batchDelete(sequenceNbrList));
} }
} }
...@@ -470,6 +470,17 @@ public class UnitInfoController extends BaseController { ...@@ -470,6 +470,17 @@ public class UnitInfoController extends BaseController {
return ResponseHelper.buildResponse(result); return ResponseHelper.buildResponse(result);
} }
/**
* 获取所有单位列表
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/getAllUnit")
@ApiOperation(httpMethod = "GET", value = "获取所有单位列表", notes = "获取所有单位列表")
public ResponseModel<List<UnitInfoDto>> getAllUnit() {
List<UnitInfoDto> result = unitInfoServiceImpl.getAllUnit();
return ResponseHelper.buildResponse(result);
}
} }
...@@ -302,8 +302,8 @@ public class UnitPersonController extends BaseController { ...@@ -302,8 +302,8 @@ public class UnitPersonController extends BaseController {
/** /**
* 根据sequenceNbr删除 * 根据sequenceNbr删除
* *
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/delete_batch") @DeleteMapping(value = "/delete_batch")
@ApiOperation(httpMethod = "DELETE", value = "批量删除人员信息", notes = "批量删除人员信息") @ApiOperation(httpMethod = "DELETE", value = "批量删除人员信息", notes = "批量删除人员信息")
......
package com.yeejoin.amos.boot.module.tzs.flc.biz.service.impl; package com.yeejoin.amos.boot.module.tzs.flc.biz.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto; import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto;
import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr; import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr;
import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.SourceFileServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.SourceFileServiceImpl;
import com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledQueryDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentDto; import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentIndexDto; import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentIndexDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.InformEquipmentDto; import com.yeejoin.amos.boot.module.tzs.flc.api.dto.InformEquipmentDto;
...@@ -102,8 +105,30 @@ public class EquipmentInformServiceImpl extends BaseService<EquipmentInformDto,E ...@@ -102,8 +105,30 @@ public class EquipmentInformServiceImpl extends BaseService<EquipmentInformDto,E
return model; return model;
} }
@Override
public Page<EquipmentInformDto> queryDtoList(Page<EquipmentInformDto> page, EquipmentInformDto equipmentInformDto, String sortParam, String sortRule) {
Page<List<EquipmentInformDto>>list = baseMapper.queryDtoList(page,equipmentInformDto.getProductCode(),equipmentInformDto.getProductInformDateStart(),equipmentInformDto.getProductInformDateEnd(),
equipmentInformDto.getProductUnitId(),equipmentInformDto.getRegionCode(),equipmentInformDto.getAddress(),equipmentInformDto.getPlanProductDateStart(),equipmentInformDto.getPlanProductDateEnd(),
equipmentInformDto.getAcceptUnitId(),equipmentInformDto.getInformStatus(),sortParam,sortRule);
Page<EquipmentInformDto> page1 = new Page<>();
List<EquipmentInformDto> resultDtoList = JSONArray.parseArray(JSONArray.toJSONString(list.getRecords()),EquipmentInformDto.class);
page1.setCurrent(page.getCurrent());
page1.setSize(page.getSize());
page1.setTotal(list.getTotal());
page1.setRecords(resultDtoList);
return page1;
}
@Transactional
@Override
public Boolean batchDelete(List<Long> sequenceNbrList) {
for(Long sequenceNbr : sequenceNbrList) {
if(! this.update(new LambdaUpdateWrapper<EquipmentInform>().eq(EquipmentInform::getSequenceNbr,sequenceNbr).set(EquipmentInform::getIsDelete,true))) {
throw new BadRequest("删除" + sequenceNbr +"告知书失败");
}
}
return true;
}
// 保存附件信息 // 保存附件信息
public void saveSourceFile(EquipmentInformDto model) { public void saveSourceFile(EquipmentInformDto model) {
......
...@@ -556,4 +556,9 @@ public class UnitInfoServiceImpl extends BaseService<UnitInfoDto, UnitInfo, Unit ...@@ -556,4 +556,9 @@ public class UnitInfoServiceImpl extends BaseService<UnitInfoDto, UnitInfo, Unit
public List<UnitInfoDto> getUseUnit() { public List<UnitInfoDto> getUseUnit() {
return baseMapper.getUnitByType(TzsCommonParam.USE_UNIT_CODE); return baseMapper.getUnitByType(TzsCommonParam.USE_UNIT_CODE);
} }
@Override
public List<UnitInfoDto> getAllUnit() {
return baseMapper.getAllUnit();
}
} }
\ No newline at end of file
...@@ -734,18 +734,18 @@ ...@@ -734,18 +734,18 @@
</select> </select>
<select id="getEquipSpecificDetail" <select id="getEquipSpecificDetail"
resultType="com.yeejoin.equipmanage.common.datasync.entity.FireEquipment"> resultType="com.yeejoin.equipmanage.common.datasync.entity.FireEquipment">
SELECT SELECT
es.id, es.id,
es.`code` AS mrid, es.`code` AS mrid,
ed.`name`, es.`name`,
ed.`name` AS aliasname, es.`name` AS aliasname,
es.`code`, es.`code`,
e.`name` AS categoryname, ed.equipment_name AS categoryname,
e.`code` AS categorycode, ed.`code` AS categorycode,
( SELECT GROUP_CONCAT( url ) FROM wl_upload_file WHERE file_type = 'image' AND object_type = 'equipment' AND object_id = ed.id ) AS img, ( SELECT GROUP_CONCAT( url ) FROM wl_upload_file WHERE file_type = 'image' AND object_type = 'equipment' AND object_id = ed.id ) AS img,
es.iot_code AS iotcode, es.iot_code AS iotcode,
f.`name` AS stationname, '' AS stationname,
f.`code` AS stationcode, '' AS stationcode,
ws.source_id AS buildid, ws.source_id AS buildid,
es.system_id AS fightingsystemids, es.system_id AS fightingsystemids,
TRIM(CONCAT_WS(' ',ws.full_name,sd.description)) AS position, TRIM(CONCAT_WS(' ',ws.full_name,sd.description)) AS position,
...@@ -760,11 +760,9 @@ ...@@ -760,11 +760,9 @@
FROM FROM
wl_equipment_specific es wl_equipment_specific es
LEFT JOIN wl_equipment_detail ed ON es.equipment_detail_id = ed.id LEFT JOIN wl_equipment_detail ed ON es.equipment_detail_id = ed.id
LEFT JOIN wl_equipment e ON e.id = ed.equipment_id
LEFT JOIN wl_stock_detail sd ON sd.equipment_specific_id = es.id LEFT JOIN wl_stock_detail sd ON sd.equipment_specific_id = es.id
LEFT JOIN wl_warehouse_structure ws ON ws.id = sd.warehouse_structure_id LEFT JOIN wl_warehouse_structure ws ON ws.id = sd.warehouse_structure_id
LEFT JOIN wl_area a ON es.area_id = a.id, LEFT JOIN wl_area a ON es.area_id = a.id
f_station_info f
WHERE WHERE
es.id = #{id} es.id = #{id}
</select> </select>
......
...@@ -314,21 +314,14 @@ ...@@ -314,21 +314,14 @@
</if> </if>
wle.latitude wle.latitude
FROM wl_video wle FROM wl_video wle
where wle.longitude is not null and wle.latitude is not null where wle.longitude is not null and wle.latitude is not null
<if test='longitude!=null and latitude!=null and distance!=null'>
<if test='distance!=null'> and distance &lt;= #{distance}
and Round(st_distance(point(wle.longitude,wle.latitude),point(#{longitude},#{latitude}))*111195,1) &lt;=
#{distance}
</if> </if>
<if test='longitude!=null and latitude!=null '> <if test='longitude!=null and latitude!=null '>
ORDER BY distance ORDER BY distance
</if> </if>
limit #{pageNum},#{pageSize} limit #{pageNum},#{pageSize}
</select> </select>
......
...@@ -2389,5 +2389,14 @@ ...@@ -2389,5 +2389,14 @@
</sql> </sql>
</changeSet> </changeSet>
<changeSet author="helinlin" id="2021-12-23-11-06">
<preConditions onFail="MARK_RAN">
<tableExists tableName="cb_contract"/>
</preConditions>
<comment>change org_code filed type</comment>
<sql>
ALTER TABLE `cb_contract` MODIFY COLUMN org_code VARCHAR(10) DEFAULT NULL COMMENT '机构代码用于权限过滤';
</sql>
</changeSet>
</databaseChangeLog> </databaseChangeLog>
...@@ -71,10 +71,11 @@ ...@@ -71,10 +71,11 @@
p_point_inputitem pi p_point_inputitem pi
LEFT JOIN p_input_item ii ON ii.id = pi.input_item_id LEFT JOIN p_input_item ii ON ii.id = pi.input_item_id
LEFT JOIN p_point_classify pc ON FIND_IN_SET(pc.id, pi.classify_ids) > 0 LEFT JOIN p_point_classify pc ON FIND_IN_SET(pc.id, pi.classify_ids) > 0
LEFT JOIN p_route_point prp ON prp.point_id = pi.point_id LEFT JOIN p_route_point prp ON prp.point_id = pi.point_id
WHERE WHERE
pi.point_id = #{pointId} pi.point_id = #{pointId}
AND NOT FIND_IN_SET(pi.id,prp.exclude_items) AND IF(prp.id, NOT FIND_IN_SET(pi.id,prp.exclude_items),' 1=1 ')
ORDER BY ORDER BY
pi.order_no pi.order_no
</select> </select>
......
spring.application.name=TZS-kfm spring.application.name=TZS
server.servlet.context-path=/tzs server.servlet.context-path=/tzs
server.port=11000 server.port=11000
spring.profiles.active=jd spring.profiles.active=jd
......
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