Commit e2d0faf0 authored by chenhao's avatar chenhao

提交修改BUG代码 by 陈浩

parent 5ff596b7
...@@ -10,6 +10,8 @@ import lombok.EqualsAndHashCode; ...@@ -10,6 +10,8 @@ import lombok.EqualsAndHashCode;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import org.omg.CORBA.PRIVATE_MEMBER;
/** /**
* 联动单位 * 联动单位
* *
...@@ -98,5 +100,10 @@ public class LinkageUnitDto extends BaseDto { ...@@ -98,5 +100,10 @@ public class LinkageUnitDto extends BaseDto {
@ApiModelProperty(value = "联动单位图片") @ApiModelProperty(value = "联动单位图片")
private List<SourceFile> image; private List<SourceFile> image;
@ApiModelProperty(value = "车辆数量")
private String vehicleNumber;
@ApiModelProperty(value = "特岗人数")
private String personNumber;
} }
package com.yeejoin.amos.boot.module.common.api.mapper; package com.yeejoin.amos.boot.module.common.api.mapper;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.common.api.dto.CompanyDto; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto; import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitZhDto; import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitZhDto;
import com.yeejoin.amos.boot.module.common.api.dto.RequestData; import com.yeejoin.amos.boot.module.common.api.dto.RequestData;
import com.yeejoin.amos.boot.module.common.api.entity.LinkageUnit; import com.yeejoin.amos.boot.module.common.api.entity.LinkageUnit;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/** /**
* 联动单位 Mapper 接口 * 联动单位 Mapper 接口
...@@ -43,4 +45,22 @@ public interface LinkageUnitMapper extends BaseMapper<LinkageUnit> { ...@@ -43,4 +45,22 @@ public interface LinkageUnitMapper extends BaseMapper<LinkageUnit> {
List<LinkageUnitZhDto> listLinkageUnitZhDto(@Param("pageNum")int pageNum, @Param("pageSize")int pageSize, @Param("par") RequestData par); List<LinkageUnitZhDto> listLinkageUnitZhDto(@Param("pageNum")int pageNum, @Param("pageSize")int pageSize, @Param("par") RequestData par);
Integer listLinkageUnitZhDtoCount(@Param("par")RequestData par); Integer listLinkageUnitZhDtoCount(@Param("par")RequestData par);
/**
* 查询当前存在的联动单位及统计
* @param isDelete
* @param emergencyLinkageUnitCode
* @return
*/
List<Map<String, Object>> getEmergencyLinkageUnitCodeGroupByAndCount();
/**
* 查询包含特岗人数及的具体信息
* @return
*/
Page<List<LinkageUnitDto>> getEmergencyLinkageUnitList(IPage<LinkageUnitDto> page,String unitName,
String linkageUnitTypeCode, String emergencyLinkageUnitCode);
} }
package com.yeejoin.amos.boot.module.common.api.service; package com.yeejoin.amos.boot.module.common.api.service;
import java.util.List;
import org.typroject.tyboot.core.rdbms.annotation.Condition;
import org.typroject.tyboot.core.rdbms.annotation.Operator;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.utils.Menu;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto; import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitZhDto; import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitZhDto;
import com.yeejoin.amos.boot.module.common.api.dto.RequestData; import com.yeejoin.amos.boot.module.common.api.dto.RequestData;
import org.typroject.tyboot.core.rdbms.annotation.Condition; import com.yeejoin.amos.boot.module.common.api.entity.LinkageUnit;
import org.typroject.tyboot.core.rdbms.annotation.Operator;
import java.util.List;
/** /**
* 联动单位接口类 * 联动单位接口类
* *
* @author system_generator * @author system_generator
* @date 2021-07-16 * @date 2021-07-16
*/ */
public interface ILinkageUnitService { public interface ILinkageUnitService {
List<LinkageUnitZhDto> listLinkageUnitZhDto(Integer pageNum, Integer pageSize, RequestData par);
List<LinkageUnitZhDto> listLinkageUnitZhDto(Integer pageNum, Integer pageSize, RequestData par);
Integer listLinkageUnitZhDtoCount(RequestData par);
Integer listLinkageUnitZhDtoCount(RequestData par);
LinkageUnitDto queryOne(Long sequenceNbr);
LinkageUnitDto queryOne(Long sequenceNbr);
/**
/** * 联动单位分页查询
* 联动单位分页查询 *
* * @param page
* @param page * @param isDelete
* @param isDelete * @param unitName 单位名称
* @param unitName 单位名称 * @param linkageUnitType 联动单位类型
* @param linkageUnitType 联动单位类型 * @param emergencyLinkageUnitCode 紧急联动单位类型code
* @param emergencyLinkageUnitCode 紧急联动单位类型code * @return
* @return */
*/ Page<LinkageUnitDto> queryForLinkageUnitPage(IPage<LinkageUnitDto> page,
Page<LinkageUnitDto> queryForLinkageUnitPage(Page<LinkageUnitDto> page, @Condition(Operator.eq) Boolean isDelete,
@Condition(Operator.eq) Boolean isDelete, @Condition(Operator.like) String unitName,
@Condition(Operator.like) String unitName, @Condition(Operator.eq) String linkageUnitTypeCode,
@Condition(Operator.eq) String linkageUnitType, @Condition(Operator.eq) String emergencyLinkageUnitCode,
@Condition(Operator.eq) String emergencyLinkageUnitCode); String inAgreement);
/**
* 获取当前存在的联动单位的类型组code
* @return
*/
public List<Menu> getEmergencyLinkageUnitCodeGroupBy(String type, String rootName) ;
} }
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!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.common.api.mapper.LinkageUnitMapper"> <mapper
<select id="selectOne" resultType="com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto"> namespace="com.yeejoin.amos.boot.module.common.api.mapper.LinkageUnitMapper">
select <select id="selectOne"
d.*, resultType="com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto">
lu.* select
from d.*,
( lu.*
select from
i.INSTANCE_ID instanceId, (
i.GROUP_CODE groupCode, select
<foreach collection="fieldCodes" item="value" index="key" separator=","> i.INSTANCE_ID instanceId,
MAX(CASE WHEN i.FIELD_CODE = #{key} THEN i.FIELD_VALUE END) as ${key} i.GROUP_CODE
</foreach> groupCode,
from <foreach collection="fieldCodes" item="value" index="key"
cb_dynamic_form_instance i separator=",">
where i.GROUP_CODE = #{groupCode} MAX(CASE WHEN i.FIELD_CODE = #{key} THEN i.FIELD_VALUE END)
and is_delete = #{isDelete} as ${key}
GROUP by </foreach>
i.INSTANCE_ID ) d, from
cb_linkage_unit lu cb_dynamic_form_instance i
where where i.GROUP_CODE = #{groupCode}
d.instanceId = lu.instance_id and
and lu.sequence_nbr = #{sequenceNbr} is_delete = #{isDelete}
and is_delete = #{isDelete} GROUP by
</select> i.INSTANCE_ID ) d,
cb_linkage_unit lu
where
d.instanceId = lu.instance_id
and lu.sequence_nbr = #{sequenceNbr}
<select id="listLinkageUnitZhDto" resultType="com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitZhDto"> and is_delete = #{isDelete}
</select>
select
a.sequence_nbr sequenceNbr,
a.unit_name unitName,
a.address,
a.latitude, <select id="listLinkageUnitZhDto"
a.longitude, resultType="com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitZhDto">
Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) AS distance
FROM cb_linkage_unit a select
where a.longitude is not null and a.latitude is not null a.sequence_nbr sequenceNbr,
<if test='par.distance!=null'> a.unit_name unitName,
and Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) &lt;= a.address,
#{par.distance} a.latitude,
</if> a.longitude,
ORDER BY distance limit #{pageNum},#{pageSize} Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1)
</select> AS distance
FROM cb_linkage_unit a
<select id="listLinkageUnitZhDtoCount" resultType="Integer"> where a.longitude is not null and
select a.latitude is not null
COUNT(a.sequence_nbr) num <if test='par.distance!=null'>
FROM cb_linkage_unit a and
where a.longitude is not null and a.latitude is not null Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1)
<if test='par.distance!=null'> &lt;=
and Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) &lt;= #{par.distance}
#{par.distance} </if>
</if> ORDER BY distance limit #{pageNum},#{pageSize}
</select> </select>
<select id="listLinkageUnitZhDtoCount" resultType="Integer">
select
COUNT(a.sequence_nbr) num
FROM cb_linkage_unit a
where a.longitude
is not null and a.latitude is not null
<if test='par.distance!=null'>
and
Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1)
&lt;=
#{par.distance}
</if>
</select>
<select id="getEmergencyLinkageUnitCodeGroupByAndCount"
resultType="java.util.Map">
SELECT
emergency_linkage_unit_code as
emergencyLinkageUnitCode,
COUNT(unit_code) AS count
FROM
cb_linkage_unit
WHERE
is_delete = 0
GROUP BY
emergency_linkage_unit_code
</select>
<select id="getEmergencyLinkageUnitList"
resultType="java.util.Map">
SELECT
clu.sequence_nbr as sequenceNbr,
clu.unit_name as unitName,
clu.unit_code AS unitCode,
clu.parent_id AS parentId,
clu.linkage_unit_type AS linkageUnitType,
clu.linkage_unit_type_code AS linkageUnitTypeCode,
clu.administrative_divisions AS administrativeDivisions,
clu.administrative_divisions_code AS administrativeDivisionsCode,
clu.address AS address,
clu.longitude AS longitude,
clu.latitude AS latitude,
clu.agreement_start_date AS agreementStartDate,
clu.agreement_end_date AS agreementEndDate,
clu.emergency_linkage_unit AS emergencyLinkageUnit,
clu.emergency_linkage_unit_code AS emergencyLinkageUnitCode,
clu.contact_user AS contactUser,
clu.contact_phone AS contactPhone,
clu.instance_id AS instanceId,
clu.org_code AS orgCode,
clu.rec_user_name AS recUserName,
clu.rec_user_id AS recUserId,
clu.rec_date AS recDate,
clu.is_delete AS isDelete,
cre.vehicle_number AS vehicleNumber,
csps.person_number AS personNumber
FROM
cb_linkage_unit clu
LEFT JOIN cb_rescue_equipment cre ON clu.sequence_nbr = cre.company_id
LEFT JOIN cb_special_position_staff csps ON clu.sequence_nbr =
csps.company_id
WHERE clu.is_delete=0
<if test="unitName != null and unitName != ''">
AND clu.unit_name LIKE concat(#{unitName}, '%')
</if>
<if test="linkageUnitTypeCode != null and linkageUnitTypeCode != ''">
AND clu.linkage_unit_type_code =#{linkageUnitTypeCode}
</if>
<if test="emergencyLinkageUnitCode != null and emergencyLinkageUnitCode != ''">
AND clu.emergency_linkage_unit_code =#{emergencyLinkageUnitCode}
</if>
</select>
</mapper> </mapper>
package com.yeejoin.amos.boot.module.common.biz.controller; package com.yeejoin.amos.boot.module.common.biz.controller;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
import com.yeejoin.amos.boot.module.common.biz.service.impl.LinkageUnitServiceImpl; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
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.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto; import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import com.yeejoin.amos.boot.module.common.api.entity.LinkageUnit;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import com.yeejoin.amos.boot.module.common.api.service.ILinkageUnitService;
import com.yeejoin.amos.boot.module.common.biz.service.impl.LinkageUnitServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/** /**
...@@ -37,6 +41,9 @@ public class LinkageUnitController extends BaseController { ...@@ -37,6 +41,9 @@ public class LinkageUnitController extends BaseController {
@Autowired @Autowired
LinkageUnitServiceImpl linkageUnitServiceImpl; LinkageUnitServiceImpl linkageUnitServiceImpl;
@Autowired
ILinkageUnitService linkageUnitService;
/** /**
* 新增联动单位 * 新增联动单位
...@@ -116,20 +123,12 @@ public class LinkageUnitController extends BaseController { ...@@ -116,20 +123,12 @@ public class LinkageUnitController extends BaseController {
@GetMapping(value = "/page") @GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET", value = "联动单位分页查询", notes = "联动单位分页查询") @ApiOperation(httpMethod = "GET", value = "联动单位分页查询", notes = "联动单位分页查询")
public ResponseModel<Page<LinkageUnitDto>> queryForPage(@RequestParam(value = "current") int current, @RequestParam public ResponseModel<Page<LinkageUnitDto>> queryForPage(@RequestParam(value = "current") int current, @RequestParam
(value = "size") int size, String unitName, String linkageUnitType, String inAgreement, String emergencyLinkageUnitCode) { (value = "size") int size, String unitName, String linkageUnitTypeCode, String inAgreement, String emergencyLinkageUnitCode) {
Page<LinkageUnitDto> page = new Page<LinkageUnitDto>(); Page<LinkageUnitDto> page = new Page<LinkageUnitDto>();
page.setCurrent(current); page.setCurrent(current);
page.setSize(size); page.setSize(size);
Page<LinkageUnitDto> linkageUnitDtoPage = linkageUnitServiceImpl.queryForLinkageUnitPage(page, false, Page<LinkageUnitDto> linkageUnitDtoPage = linkageUnitServiceImpl.queryForLinkageUnitPage(page, false,
unitName, linkageUnitType, emergencyLinkageUnitCode); unitName, linkageUnitTypeCode, emergencyLinkageUnitCode,inAgreement);
Date now = new Date();
List<LinkageUnitDto> linkageUnitDtoList = linkageUnitDtoPage.getRecords().stream().map(item -> {
boolean isInAgreement = DateUtils.belongCalendar(now, item.getAgreementStartDate(),
item.getAgreementEndDate());
item.setInAgreement(isInAgreement ? "是" : "否");
return item;
}).filter(item -> StringUtils.isEmpty(inAgreement) || inAgreement.equals(item.getInAgreement())).collect(Collectors.toList());
linkageUnitDtoPage.setRecords(linkageUnitDtoList);
return ResponseHelper.buildResponse(linkageUnitDtoPage); return ResponseHelper.buildResponse(linkageUnitDtoPage);
} }
...@@ -144,4 +143,15 @@ public class LinkageUnitController extends BaseController { ...@@ -144,4 +143,15 @@ public class LinkageUnitController extends BaseController {
public ResponseModel<List<LinkageUnitDto>> selectForList() { public ResponseModel<List<LinkageUnitDto>> selectForList() {
return ResponseHelper.buildResponse(linkageUnitServiceImpl.queryForLinkageUnitList(false)); return ResponseHelper.buildResponse(linkageUnitServiceImpl.queryForLinkageUnitList(false));
} }
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "联动单位列表树及统计", notes = "联动单位列表树及统计")
@GetMapping(value = "/getLinkageUnitTree")
public ResponseModel<Object> getLinkageUnitTree(@RequestParam String type, @RequestParam String rootName) {
return ResponseHelper.buildResponse(linkageUnitService.getEmergencyLinkageUnitCodeGroupBy(type,rootName));
}
} }
package com.yeejoin.amos.patrol.common.remote; package com.yeejoin.amos.patrol.common.remote;
import java.util.Map;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.yeejoin.amos.patrol.business.constants.XJConstant; import com.yeejoin.amos.patrol.business.constants.XJConstant;
import com.yeejoin.amos.patrol.business.param.LatentDangerListParam;
import com.yeejoin.amos.patrol.business.util.HttpUtil; import com.yeejoin.amos.patrol.business.util.HttpUtil;
import com.yeejoin.amos.patrol.common.enums.WorkFlowUriEnum; import com.yeejoin.amos.patrol.common.enums.WorkFlowUriEnum;
import com.yeejoin.amos.patrol.common.enums.YesOrNoEnum; import com.yeejoin.amos.patrol.common.enums.YesOrNoEnum;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import java.util.Map;
@Service("remoteWorkFlowService") @Service("remoteWorkFlowService")
public class RemoteWorkFlowService { public class RemoteWorkFlowService {
......
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