Commit e64b50f3 authored by fupeiyang's avatar fupeiyang

导入导出

parent 19fcd6a4
spring.application.name=JCS-tb
spring.application.name=JCS-FPY
server.servlet.context-path=/jcs
server.port=11100
spring.profiles.active=dev
......
package com.yeejoin.amos.boot.module.common.api.dto;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.yeejoin.amos.boot.biz.common.constants.CommonConstant;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import com.yeejoin.amos.boot.module.common.api.excel.ExplicitConstraint;
import com.yeejoin.amos.boot.module.common.api.excel.RoleNameExplicitConstraint;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* @author fengwang
* @date 2021-06-18.
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "OrgUsr对象", description = "人员信息")
public class ExcelOrgPersonDto extends BaseDto {
@ExcelIgnore
private static final long serialVersionUID = 1L;
@ExcelProperty(value = "姓名", index = 0)
@ApiModelProperty(value = "人员名称")
private String bizOrgName;
@ExcelIgnore
@ApiModelProperty(value = "人员编码")
private String bizOrgCode;
@ExcelProperty(value = "关联账户", index = 1)
@ApiModelProperty(value = "amos中公司/部门ID")
private String amosOrgId;
@ExcelIgnore
@ApiModelProperty(value = "amos中公司/部门编码")
private String amosOrgCode;
@ExcelIgnore
@ApiModelProperty(value = "机构类型(部门:DEPARTMENT,单位:COMPANY,人员:PERSON)")
private String bizOrgType = CommonConstant.BIZ_ORG_TYPE_PERSON;
@ExcelProperty(value = "所属单位/部门", index = 2)
@ApiModelProperty(value = "归属机构/部门/人员")
private String parentId;
@ExcelProperty(value = "员工编号", index = 3)
@ApiModelProperty(value = "员工编号")
private String personNumber;
@ExplicitConstraint(type = "XB", indexNum = 4, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "性别", index = 4)
@ApiModelProperty(value = "性别")
private String gender;
@ExcelIgnore
@ApiModelProperty(value = "性别code")
private String genderCode;
@ExplicitConstraint(type = "RYZJLX", indexNum = 5, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "证件类型", index = 5)
@ApiModelProperty(value = "证件类型")
private String certificatesType;
@ExcelIgnore
@ApiModelProperty(value = "证件类型code")
private String certificatesTypeCode;
@ExcelProperty(value = "证件号码", index = 6)
@ApiModelProperty(value = "证件号码")
private String certificatesNumber;
@ExcelProperty(value = "联系电话", index = 7)
@ApiModelProperty(value = "联系电话")
private String telephone;
@ExplicitConstraint(type = "RYZT", indexNum = 8, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "人员状态", index = 8)
@ApiModelProperty(value = "人员状态")
private String state;
@ExcelIgnore
@ApiModelProperty(value = "人员状态code")
private String stateCode;
@ExplicitConstraint(type = "AQPX", indexNum = 9, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "是否进行安全培训", index = 9)
@ApiModelProperty(value = "是否进行安全培训")
private String safetyTraining;
@ExcelIgnore
@ApiModelProperty(value = "是否进行安全培训code")
private String safetyTrainingCode;
@ExplicitConstraint(type = "XZZW", indexNum = 10, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "行政职务", index = 10)
@ApiModelProperty(value = "行政职务")
private String administrativePosition;
@ExcelIgnore
@ApiModelProperty(value = "行政职务code")
private String administrativePositionCode;
@ExplicitConstraint(type = "JGNBZW", indexNum = 11, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "消防管理组织机构内部职务", index = 11)
@ApiModelProperty(value = "消防管理组织机构内部职务")
private String internalPosition;
@ExcelIgnore
@ApiModelProperty(value = "消防管理组织机构内部职务code")
private String internalPositionCode;
@ExplicitConstraint(type = "XFGLGW", indexNum = 12, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "消防管理岗位", index = 12)
@ApiModelProperty(value = "消防管理岗位")
private String fireManagementPost;
@ExcelIgnore
@ApiModelProperty(value = "消防管理岗位code")
private String fireManagementPostCode;
@ExplicitConstraint(type = "GWMC", indexNum = 13, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "岗位类型", index = 13)
@ApiModelProperty(value = "岗位类型")
private String positionType;
@ExcelIgnore
@ApiModelProperty(value = "岗位类型code")
private String positionTypeCode;
@ExplicitConstraint(type = "CZLB", indexNum = 14, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "持证类别", index = 14)
@ApiModelProperty(value = "持证类别")
private String certificateType;
@ExcelIgnore
@ApiModelProperty(value = "持证类别code")
private String certificateTypeCode;
@ExcelProperty(value = "持证时间", index = 15)
@ApiModelProperty(value = "持证时间")
private Date holdingTime;
@ExplicitConstraint(type = "SHZQ", indexNum = 16, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "审核周期", index = 16)
@ApiModelProperty(value = "审核周期")
private String auditCycle;
@ExcelIgnore
@ApiModelProperty(value = "审核周期code")
private String auditCycleCode;
@ExcelProperty(value = "人员照片", index = 17)
@ApiModelProperty(value = "人员照片")
private String personImg;
@ExcelProperty(value = "重点工种资质证书", index = 18)
@ApiModelProperty(value = "重点工种资质证书")
private String certificateImg;
@ExcelIgnore
@ApiModelProperty(value = "更新人")
@TableField(fill = FieldFill.INSERT_UPDATE)
private String recUserName;
}
package com.yeejoin.amos.boot.module.common.api.dto;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
......@@ -8,90 +10,112 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 微型消防站
*
* @author system_generator
* @date 2021-06-28
*/
* 微型消防站
*
* @author system_generator
* @date 2021-06-28
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="FireStationDto", description="微型消防站")
public class FireStationDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModel(value = "FireStationDto", description = "微型消防站")
public class FireStationDto extends BaseDto {
@ExcelIgnore
private static final long serialVersionUID = 1L;
@ExcelProperty(value = "微型消防站名称", index = 0)
@ApiModelProperty(value = "微型消防站名称")
private String name;
@ExcelIgnore
@ApiModelProperty(value = "所在建筑物id")
private String whereBuildingId;
@ExcelProperty(value = "所在建筑", index = 1)
@ApiModelProperty(value = "所在建筑物名称")
private String whereBuilding;
@ApiModelProperty(value = "装备简要情况")
private String equipmentBrief;
@ExcelProperty(value = "地址", index = 2)
@ApiModelProperty(value = "地址")
private String address;
@ApiModelProperty(value = "经度")
private Double longitude;
@ApiModelProperty(value = "纬度")
private Double latitude;
@ApiModelProperty(value = "行政区区划名称")
private String administrativeDivisions;
@ApiModelProperty(value = "行政区区划编号")
private String administrativeDivisionsCode;
@ExcelProperty(value = "联系电话", index = 3)
@ApiModelProperty(value = "值班室电话")
private String dutyRoomTelephone;
@ExcelProperty(value = "负责人名称", index = 4)
@ApiModelProperty(value = "负责人名称")
private String personChargeName;
@ExcelProperty(value = "负责人电话", index = 5)
@ApiModelProperty(value = "负责人电话")
private String personChargeTelephone;
@ExcelIgnore
@ApiModelProperty(value = "单位id")
private Long bizCompanyId;
@ExcelProperty(value = "所属单位", index = 6)
@ApiModelProperty(value = "所属单位名称")
private String bizCompany;
@ExcelIgnore
@ApiModelProperty(value = "所属单位code")
private String bizCompanyCode;
@ExcelProperty(value = "建造日期", index = 7)
@ApiModelProperty(value = "建造日期")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
private Date buildTime;
@ExcelProperty(value = "启用日期", index = 8)
@ApiModelProperty(value = "启用日期")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
private Date enableTime;
@ExcelProperty(value = "装备简要情况", index = 9)
@ApiModelProperty(value = "装备简要情况")
private String equipmentBrief;
@ExcelProperty(value = "微型消防站照片", index = 10)
@ApiModelProperty(value = "图片信息")
private String img;
@ExcelIgnore
@ApiModelProperty(value = "经度")
private Double longitude;
@ExcelIgnore
@ApiModelProperty(value = "纬度")
private Double latitude;
@ExcelIgnore
@ApiModelProperty(value = "行政区区划名称")
private String administrativeDivisions;
@ExcelIgnore
@ApiModelProperty(value = "行政区区划编号")
private String administrativeDivisionsCode;
@ExcelIgnore
@ApiModelProperty(value = "更新时间")
private Date updateTime;
@ExcelIgnore
@ApiModelProperty(value = "操作人名称")
private String recUserName;
@ExcelIgnore
@ApiModelProperty(value = "战备装备数量")
private Integer eqNum;
@ExcelIgnore
@ApiModelProperty(value = "战备人数量")
private Integer userNum;
@ExcelIgnore
@ApiModelProperty(value = "战备车辆数量")
private Integer carNum;
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.common.api.dto;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import com.yeejoin.amos.boot.module.common.api.excel.ExplicitConstraint;
import com.yeejoin.amos.boot.module.common.api.excel.RoleNameExplicitConstraint;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......@@ -10,66 +14,100 @@ import java.util.Date;
import java.util.List;
/**
* 消防队伍
*
* @author tb
* @date 2021-06-07
*/
* 消防队伍
*
* @author tb
* @date 2021-06-07
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="FireTeamDto", description="消防队伍")
@ApiModel(value = "FireTeamDto", description = "消防队伍")
public class FireTeamDto extends BaseDto {
@ExcelIgnore
private static final long serialVersionUID = 1L;
@ExcelProperty(value = "所属单位", index = 0)
@ApiModelProperty(value = "机构名称")
private String companyName;
@ApiModelProperty(value = "消防队伍图片")
private String img;
@ExcelIgnore
@ApiModelProperty(value = "机构id")
private Long company;
@ExcelIgnore
@ApiModelProperty(value = "机构code")
private String companyCode;
@ExcelProperty(value = "上级单位", index = 1)
@ApiModelProperty(value = "父级名称")
private String parentName;
@ExcelIgnore
@ApiModelProperty(value = "父级")
private Long parent;
@ExcelProperty(value = "队伍名称", index = 2)
@ApiModelProperty(value = "单位名称")
private String name;
@ApiModelProperty(value = "所属机构")
private Long company;
@ExplicitConstraint(type = "XFJGLX", indexNum = 3, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "队伍类型", index = 3)
@ApiModelProperty(value = "消防队类型(专职消防队,监控大队)")
private String type;
@ApiModelProperty(value = "机构code")
private String companyCode;
@ExcelIgnore
@ApiModelProperty(value = "队伍类型code")
private String typeCode;
@ExcelProperty(value = "队伍地址", index = 4)
@ApiModelProperty(value = "队伍地址")
private String address;
@ExcelProperty(value = "地球经度", index = 5)
@ApiModelProperty(value = "经度")
private Double longitude;
@ExcelProperty(value = "地球纬度", index = 6)
@ApiModelProperty(value = "纬度")
private Double latitude;
@ExcelIgnore
@ApiModelProperty(value = "联系人id")
private Integer contactUserId;
private Long contactUserId;
@ExcelProperty(value = "联系人", index = 7)
@ApiModelProperty(value = "联系人")
private String contactUser;
@ExcelProperty(value = "联系电话", index = 8)
@ApiModelProperty(value = "联系电话")
private String contactPhone;
@ExcelProperty(value = "职责_简要情况", index = 9)
@ApiModelProperty(value = "职责_简要情况")
private String obligation;
@ApiModelProperty(value = "经度")
private Double longitude;
@ApiModelProperty(value = "纬度")
private Double latitude;
@ApiModelProperty(value = "机构名称")
private String companyName;
@ExcelProperty(value = "消防队伍图片", index = 10)
@ApiModelProperty(value = "消防队伍图片")
private String img;
@ExcelIgnore
@ApiModelProperty(value = "更新时间")
private Date updateTime;
@ExcelIgnore
@ApiModelProperty(value = "操作人名称")
private String recUserName;
@ApiModelProperty(value = "消防队类型(专职消防队,监控大队)")
private String type;
@ExcelIgnore
@ApiModelProperty(value = "执勤车辆数")
private String onDutyCount;
@ExcelIgnore
@ApiModelProperty(value = "出动车辆数")
private String outCount;
@ExcelIgnore
@ApiModelProperty(value = "队伍下车辆")
private List<FireBrigadeResourceDto> children;
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.common.api.dto;
import java.util.Date;
import java.util.List;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import com.yeejoin.amos.boot.module.common.api.excel.ExplicitConstraint;
import com.yeejoin.amos.boot.module.common.api.excel.RoleNameExplicitConstraint;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.util.List;
/**
* @author system_generator
* @date 2021-06-29
......@@ -51,7 +50,7 @@ public class WaterResourceDto extends BaseDto {
@ApiModelProperty(value = "所在建筑id")
private Long belongBuildingId;
// @ExplicitConstraint(indexNum = 3, sourceClass = SelectionDataFromInterface.class, method = "getBuildingList")
// @ExplicitConstraint(indexNum = 3, sourceClass = SelectionDataFromInterface.class, method = "getBuildingList")
//动态下拉内容
@ExcelProperty(value = "所在建筑", index = 3)
@ApiModelProperty(value = "所在建筑")
......@@ -61,7 +60,8 @@ public class WaterResourceDto extends BaseDto {
@ApiModelProperty(value = "所属消防系统id")
private Long belongFightingSystemId;
// @ExplicitConstraint(indexNum = 4, sourceClass = SelectionDataFromInterface.class, method = "getFireSystemList")
// @ExplicitConstraint(indexNum = 4, sourceClass = SelectionDataFromInterface.class, method =
// "getFireSystemList")
//动态下拉内容
@ExcelProperty(value = "所属消防系统", index = 4)
@ApiModelProperty(value = "所属消防系统")
......
......@@ -7,24 +7,23 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
*
*
* @author tb
* @date 2021-06-17
*/
* @author tb
* @date 2021-06-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("jc_alert_form_value")
@ApiModel(value="AlertFormValue对象", description="")
@ApiModel(value = "AlertFormValue对象", description = "AlertFormValue对象")
public class AlertFormValue extends BaseEntity {
/**
*
*/
private static final long serialVersionUID = 1L;
*
*/
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "表单id")
@ApiModelProperty(value = "表单id")
private Long alertFormId;
@ApiModelProperty(value = "警情id")
......@@ -51,9 +50,9 @@ public class AlertFormValue extends BaseEntity {
@ApiModelProperty(value = "是否一行显示")
private Boolean block;
public AlertFormValue() {
super();
}
public AlertFormValue() {
super();
}
public AlertFormValue(Long alertFormId, String fieldName, String fieldCode, boolean block) {
this.alertFormId = alertFormId;
......@@ -61,7 +60,7 @@ public class AlertFormValue extends BaseEntity {
this.fieldCode = fieldCode;
this.block = block;
}
public AlertFormValue(Long alertFormId, String fieldName, String fieldCode, boolean block, String alertTypeCode) {
this.alertFormId = alertFormId;
this.fieldName = fieldName;
......@@ -70,7 +69,8 @@ public class AlertFormValue extends BaseEntity {
this.alertTypeCode = alertTypeCode;
}
public AlertFormValue(Long alertFormId, String fieldName, String fieldCode,boolean block, String alertTypeCode,String fieldValue, String fieldValueCode) {
public AlertFormValue(Long alertFormId, String fieldName, String fieldCode, boolean block, String alertTypeCode,
String fieldValue, String fieldValueCode) {
this.alertFormId = alertFormId;
this.fieldName = fieldName;
this.fieldCode = fieldCode;
......@@ -78,7 +78,16 @@ public class AlertFormValue extends BaseEntity {
this.alertTypeCode = alertTypeCode;
this.fieldValue = fieldValue;
this.fieldValueCode = fieldValueCode;
}
public AlertFormValue(Long alertFormId, String alertTypeCode, String fieldName, String fieldCode,
String fieldValue, String fieldValueCode, Boolean block) {
this.alertFormId = alertFormId;
this.alertTypeCode = alertTypeCode;
this.fieldName = fieldName;
this.fieldCode = fieldCode;
this.fieldValue = fieldValue;
this.fieldValueCode = fieldValueCode;
this.block = block;
}
}
package com.yeejoin.amos.boot.module.common.api.mapper;
import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.dto.FireBrigadeResourceDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireTeamCardDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireTeamDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireTeamListDto;
import com.yeejoin.amos.boot.module.common.api.entity.FireTeam;
import java.util.List;
/**
* 消防队伍 Mapper 接口
*
......@@ -50,4 +51,6 @@ public interface FireTeamMapper extends BaseMapper<FireTeam> {
* @return
*/
IPage<FireTeamCardDto> getFireTeamForPage(Page page, FireTeamListDto par);
List<FireTeamDto> listFireTeamDto(Boolean isDelete);
}
package com.yeejoin.amos.boot.module.common.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.common.api.dto.ExcelOrgPersonDto;
import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr;
import org.apache.ibatis.annotations.Param;
......@@ -27,4 +28,6 @@ public interface OrgUsrMapper extends BaseMapper<OrgUsr> {
List<Map<String, Object>> selectPersonAllList(Map<String, Object> map);
List<OrgUsr> queryOrgUsrListByBizOrgCode(String bizOrgCode);
List<ExcelOrgPersonDto> queryOrgPersonDtoList(boolean isDelete);
}
......@@ -3,18 +3,15 @@
<mapper namespace="com.yeejoin.amos.boot.module.jcs.api.mapper.FireTeamMapper">
<select id="listMonitorFireBrigade" resultType="com.yeejoin.amos.boot.module.common.api.dto.FireBrigadeResourceDto">
SELECT
ft.sequence_nbr id,
ft.NAME,
ft.img,
COUNT( DISTINCT ff.sequence_nbr ) personCount
FROM
cb_fire_team ft
LEFT JOIN cb_firefighters ff ON ff.fire_team_id = ft.sequence_nbr
WHERE
ft.is_delete = 0 and ft.type_code = 118
GROUP BY
ft.sequence_nbr
SELECT ft.sequence_nbr id,
ft.NAME,
ft.img,
COUNT(DISTINCT ff.sequence_nbr) personCount
FROM cb_fire_team ft
LEFT JOIN cb_firefighters ff ON ff.fire_team_id = ft.sequence_nbr
WHERE ft.is_delete = 0
and ft.type_code = 118
GROUP BY ft.sequence_nbr
</select>
<select id="getFireTeamForPage" resultType="com.yeejoin.amos.boot.module.common.api.dto.FireTeamCardDto">
SELECT
......@@ -34,4 +31,11 @@
<if test='par.companyCode!=null'>and a.company_code = #{par.companyCode}</if>
<if test='par.name!=null'>and a.name like concat('%', #{par.name}, '%')</if>
</select>
<select id="listFireTeamDto" resultType="com.yeejoin.amos.boot.module.common.api.dto.FireTeamDto">
select t.*, p.name parentName
from cb_fire_team t
left join cb_fire_team p on t.parent = p.sequence_nbr
where t.is_delete = #{isDelete}
</select>
</mapper>
<?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">
<mapper namespace="com.yeejoin.amos.boot.module.jcs.api.mapper.WaterResourceMapper">
<mapper namespace="com.yeejoin.amos.boot.module.common.api.mapper.WaterResourceMapper">
<select id="exportToExcel" resultType="com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto">
select r.name,
......
package com.yeejoin.amos.boot.module.common.biz.controller;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
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.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.Bean;
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.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
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.entity.FireChemical;
import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireChemicalServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.Bean;
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.HttpServletResponse;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
......@@ -51,7 +37,6 @@ public class FireChemicalController extends BaseController {
@Autowired
FireChemicalServiceImpl fireChemicalServiceImpl;
/**
* 新增危化品
......@@ -146,7 +131,7 @@ public class FireChemicalController extends BaseController {
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导入危化品")
@PostMapping("/import_batch")
public void importByExcel(MultipartFile multipartFile, HttpServletResponse response) throws Exception {
public void importByExcel(MultipartFile multipartFile) throws Exception {
List<FireChemicalDto> excelDtoList = ExcelUtil.readFirstSheetExcel(multipartFile, FireChemicalDto.class,
1);
List<FireChemical> excelEntityList = new ArrayList<>();
......@@ -165,5 +150,17 @@ public class FireChemicalController extends BaseController {
fireChemicalServiceImpl.saveBatch(excelEntityList);
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出危化品")
@GetMapping("/export")
public void exportToExcel(HttpServletResponse response, ExcelDto excelDto) {
try {
List<FireChemicalDto> data = fireChemicalServiceImpl.queryForFireChemicalList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), data,
FireChemicalDto.class, null, false);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常!");
}
}
}
package com.yeejoin.amos.boot.module.common.biz.controller;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
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.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.Bean;
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.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
......@@ -40,15 +12,24 @@ import com.yeejoin.amos.boot.module.common.api.dto.ExcelDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireExpertsDto;
import com.yeejoin.amos.boot.module.common.api.entity.DataDictionary;
import com.yeejoin.amos.boot.module.common.api.entity.FireExperts;
import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireExpertsServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.utils.BeanDtoVoUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.Bean;
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.HttpServletResponse;
import java.util.*;
import java.util.stream.Collectors;
/**
......@@ -71,8 +52,6 @@ public class FireExpertsController extends BaseController {
@Autowired
DataDictionaryServiceImpl dataDictionaryService;
/**
* 新增
*
......@@ -125,7 +104,7 @@ public class FireExpertsController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET", value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个")
public ResponseModel<FireExpertsDto> selectOne(@PathVariable Long sequenceNbr) throws Exception {
public ResponseModel<FireExpertsDto> selectOne(@PathVariable Long sequenceNbr) {
FireExpertsDto fireExpertsDto = fireExpertsServiceImpl.queryBySeq(sequenceNbr);
Date birthdayTime = fireExpertsDto.getBirthdayTime();
int age = BeanDtoVoUtils.getAge(birthdayTime);
......@@ -228,7 +207,7 @@ public class FireExpertsController extends BaseController {
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "批量导入消防专家")
@PostMapping("/import_batch")
public void importByExcel(MultipartFile multipartFile, HttpServletResponse response) throws Exception {
public void importByExcel(MultipartFile multipartFile) throws Exception {
List<FireExpertsDto> excelDtoList = ExcelUtil.readFirstSheetExcel(multipartFile, FireExpertsDto.class, 1);
List<FireExperts> excelEntityList = new ArrayList<>();
excelDtoList.forEach(
......@@ -260,6 +239,18 @@ public class FireExpertsController extends BaseController {
fireExpertsServiceImpl.saveBatch(excelEntityList);
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出消防专家")
@GetMapping("/export")
public void exportToExcel(HttpServletResponse response, ExcelDto excelDto) {
try {
List<FireExpertsDto> fireExpertsDtoList = fireExpertsServiceImpl.queryForFireExpertsList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), fireExpertsDtoList,
FireExpertsDto.class, null, false);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常");
}
}
}
package com.yeejoin.amos.boot.module.common.biz.controller;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
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.springframework.web.multipart.MultipartFile;
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.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.EnumsUtils;
import com.yeejoin.amos.boot.module.common.api.dto.ExcelDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceCraneDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceHydrantDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceIotDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceNaturalDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourcePoolDto;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResource;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResourceCrane;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResourceHydrant;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResourceIot;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResourceNatural;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResourcePool;
import com.yeejoin.amos.boot.module.common.api.dto.*;
import com.yeejoin.amos.boot.module.common.api.entity.*;
import com.yeejoin.amos.boot.module.common.api.enums.WaterResourceTypeEnum;
import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceCraneServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceHydrantServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceIotServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceNaturalServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourcePoolServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
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.HttpServletResponse;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
/**
......@@ -79,7 +49,6 @@ public class WaterResourceController extends BaseController {
WaterResourcePoolServiceImpl waterResourcePoolService;
@Autowired
WaterResourceIotServiceImpl waterResourceIotService;
/**
* 新增
......@@ -356,7 +325,7 @@ public class WaterResourceController extends BaseController {
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "批量导入消防水源")
@PostMapping("/import_batch")
public void importByExcel(MultipartFile multipartFile, HttpServletResponse response) throws Exception {
public void importByExcel(MultipartFile multipartFile) throws Exception {
List<WaterResourceDto> excelDtoList = ExcelUtil.readFirstSheetExcel(multipartFile, WaterResourceDto.class, 1);
excelDtoList.forEach(
item -> {
......@@ -385,5 +354,17 @@ public class WaterResourceController extends BaseController {
);
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出消防水源")
@GetMapping("/export")
public void exportToExcel(HttpServletResponse response, ExcelDto excelDto) {
try {
List<WaterResourceDto> waterResourceDtoList = waterResourceServiceImpl.exportToExcel(true);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), waterResourceDtoList,
WaterResourceDto.class, null, false);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常");
}
}
}
package com.yeejoin.amos.boot.module.common.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yeejoin.amos.boot.module.common.api.entity.DataDictionary;
import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class DataSourcesImpl implements DataSources {
@Resource
DataDictionaryMapper dataDictionaryMapper;
@Override
public String[] selectList(String type, String method) {
QueryWrapper<DataDictionary> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("type", type);
if ("ZJLY".equals(type)) {
queryWrapper.isNull("parent");
}
queryWrapper.orderByAsc("sort_num");
List<DataDictionary> list = dataDictionaryMapper.selectList(queryWrapper);
List<String> names = list.stream().map(dataDictionary -> {
return dataDictionary.getName() + "@" + dataDictionary.getCode();
}).collect(Collectors.toList());
String[] str = names.toArray(new String[names.size()]);
return str;
}
}
package com.yeejoin.amos.boot.module.common.biz.service.impl;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.dto.FireStationDto;
......@@ -16,6 +8,15 @@ import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr;
import com.yeejoin.amos.boot.module.common.api.mapper.FireStationMapper;
import com.yeejoin.amos.boot.module.common.api.mapper.OrgUsrMapper;
import com.yeejoin.amos.boot.module.common.api.service.IFireStationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.rdbms.annotation.Condition;
import org.typroject.tyboot.core.rdbms.annotation.Operator;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.util.List;
import java.util.Map;
/**
* 微型消防站服务实现类
......@@ -25,73 +26,69 @@ import com.yeejoin.amos.boot.module.common.api.service.IFireStationService;
*/
@Service
public class FireStationServiceImpl extends BaseService<FireStationDto, FireStation, FireStationMapper>
implements IFireStationService {
implements IFireStationService {
@Autowired
FireStationMapper fireStationMapper;
@Autowired
OrgUsrMapper orgUsrMapper;
@Autowired
FireStationMapper fireStationMapper;
@Autowired
OrgUsrMapper orgUsrMapper;
/**
* 分页查询
*/
public Page<FireStationDto> queryForFireStationPage(Page<FireStationDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 分页查询
*/
public Page<FireStationDto> queryForFireStationPage(Page<FireStationDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<FireStationDto> queryForFireStationList() {
return this.queryForList("", false);
}
/**
* 列表查询 示例
*/
public List<FireStationDto> queryForFireStationList(@Condition(Operator.eq) Boolean isDelete) {
return this.queryForList("", false, isDelete);
}
/**
* 删除
*/
public Boolean updateisDelete(Long sequenceNbr) {
/**
* 删除
*/
public Boolean updateisDelete(Long sequenceNbr) {
return this.update(new UpdateWrapper<FireStation>().eq("sequence_nbr", sequenceNbr).set("is_delete", 1));
}
return this.update(new UpdateWrapper<FireStation>().eq("sequence_nbr", sequenceNbr).set("is_delete", 1));
}
@Override
public Page<FireStationDto> getFirefighters(int pageNum, int pageSize, FireStationDto par) {
List<FireStationDto> list = fireStationMapper.getFireStation((pageNum - 1) * pageSize, pageSize, par);
Map<String, Long> num = fireStationMapper.getFireStationCount(par);
Page<FireStationDto> pageBean = new Page<>(pageNum, pageSize, num.get("num"));
return pageBean.setRecords(list);
}
@Override
public Page<FireStationDto> getFirefighters(int pageNum, int pageSize, FireStationDto par) {
List<FireStationDto> list = fireStationMapper.getFireStation((pageNum - 1) * pageSize, pageSize, par);
Map<String, Long> num = fireStationMapper.getFireStationCount(par);
Page<FireStationDto> pageBean = new Page<>(pageNum, pageSize, num.get("num"));
return pageBean.setRecords(list);
}
/**
*
* 新增
*
***/
public FireStationDto add(FireStationDto model) {
/**
* 新增
***/
public FireStationDto add(FireStationDto model) {
if (model.getBizCompanyId() != null) {
OrgUsr orgUsr = orgUsrMapper.selectById(model.getBizCompanyId());
model.setBizCompany(orgUsr.getBizOrgName());
model.setBizCompanyCode(orgUsr.getBizOrgCode());
}
FireStation entity = this.prepareEntity(model);
this.save(entity);
return Bean.toModel(entity, model);
}
if (model.getBizCompanyId() != null) {
OrgUsr orgUsr = orgUsrMapper.selectById(model.getBizCompanyId());
model.setBizCompany(orgUsr.getBizOrgName());
model.setBizCompanyCode(orgUsr.getBizOrgCode());
}
FireStation entity = this.prepareEntity(model);
this.save(entity);
return Bean.toModel(entity, model);
}
/**
*
* 修改
*
***/
public FireStationDto Update(FireStationDto model) {
if (model.getBizCompanyId() != null) {
OrgUsr orgUsr = orgUsrMapper.selectById(model.getBizCompanyId());
model.setBizCompany(orgUsr.getBizOrgName());
model.setBizCompanyCode(orgUsr.getBizOrgCode());
}
FireStation entity = this.prepareEntity(model);
this.updateById(entity);
return Bean.toModel(entity, model);
}
/**
* 修改
***/
public FireStationDto Update(FireStationDto model) {
if (model.getBizCompanyId() != null) {
OrgUsr orgUsr = orgUsrMapper.selectById(model.getBizCompanyId());
model.setBizCompany(orgUsr.getBizOrgName());
model.setBizCompanyCode(orgUsr.getBizOrgCode());
}
FireStation entity = this.prepareEntity(model);
this.updateById(entity);
return Bean.toModel(entity, model);
}
}
package com.yeejoin.amos.boot.module.jcs.biz.controller;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
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.ExcelDto;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DataSourcesImpl;
import com.yeejoin.amos.boot.module.jcs.api.dto.AircraftDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.Aircraft;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.AircraftServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
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.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
......@@ -26,18 +22,9 @@ import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
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.ExcelDto;
import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import com.yeejoin.amos.boot.module.jcs.api.dto.AircraftDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.Aircraft;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.AircraftServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -53,7 +40,8 @@ public class AircraftController extends BaseController {
@Autowired
private AircraftServiceImpl aircraftServiceImpl;
@Autowired
DataSourcesImpl dataSourcesImpl;
/**
* 新增航空器信息
......@@ -144,7 +132,7 @@ public class AircraftController extends BaseController {
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导入航空器")
@PostMapping("/import_batch")
public void importByExcel(MultipartFile multipartFile, HttpServletResponse response) throws Exception {
public void importByExcel(MultipartFile multipartFile) throws Exception {
List<AircraftDto> excelDtoList = ExcelUtil.readFirstSheetExcel(multipartFile, AircraftDto.class,
1);
List<Aircraft> excelEntityList = new ArrayList<>();
......@@ -168,6 +156,31 @@ public class AircraftController extends BaseController {
aircraftServiceImpl.saveBatch(excelEntityList);
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出航空器")
@GetMapping("/export")
public void exportToExcel(HttpServletResponse response, ExcelDto excelDto) {
try {
List<AircraftDto> data = aircraftServiceImpl.queryAircraftDtoForList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), data,
AircraftDto.class, null, false);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常!");
}
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "下载航空器模板")
@GetMapping("/template")
public void template(HttpServletResponse response, ExcelDto excelDto) {
try {
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), null,
AircraftDto.class, dataSourcesImpl, true);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常!");
}
}
}
package com.yeejoin.amos.boot.module.jcs.biz.controller;
import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import 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.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
......@@ -29,13 +8,28 @@ import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.Menu;
import com.yeejoin.amos.boot.biz.common.utils.NameUtils;
import com.yeejoin.amos.boot.biz.common.utils.TreeParser;
import com.yeejoin.amos.boot.module.common.api.dto.ExcelDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireTeamCardDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireTeamDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireTeamListDto;
import com.yeejoin.amos.boot.module.common.api.entity.FireTeam;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.FireTeamServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.Bean;
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 javax.servlet.http.HttpServletResponse;
import java.util.*;
/**
* 消防队伍
......@@ -189,4 +183,40 @@ public class FireTeamController extends BaseController {
page = iFireTeamService.page(pageBean, fireTeamQueryWrapper);
return page;
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导入消防队伍")
@PostMapping("/import_batch")
public void importByExcel(MultipartFile multipartFile, HttpServletResponse response) throws Exception {
List<FireTeamDto> excelDtoList = ExcelUtil.readFirstSheetExcel(multipartFile, FireTeamDto.class,
1);
List<FireTeam> excelEntityList = new ArrayList<>();
excelDtoList.forEach(
item -> {
FireTeam fireTeam = new FireTeam();
fireTeam = Bean.toPo(item, fireTeam);
if (fireTeam.getType() != null) {
String[] type = fireTeam.getType().split("@");
fireTeam.setType(type[0]);
fireTeam.setTypeCode(type[1]);
}
excelEntityList.add(fireTeam);
}
);
iFireTeamService.saveBatch(excelEntityList);
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出消防队伍")
@GetMapping("/export")
public void exportToExcel(HttpServletResponse response, ExcelDto excelDto) {
try {
List<FireTeamDto> data = iFireTeamService.queryFireTeamForList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), data,
FireTeamDto.class, null, false);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常!");
}
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import java.util.List;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yeejoin.amos.boot.module.common.api.entity.DataDictionary;
import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class DataSourcesImpl implements DataSources {
@Resource
DataDictionaryMapper dataDictionaryMapper;
@Resource
DataDictionaryMapper dataDictionaryMapper;
@Override
public String[] selectList(String type, String method) {
QueryWrapper<DataDictionary> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("type", type);
queryWrapper.isNull("parent");
queryWrapper.orderByAsc("sort_num");
List<DataDictionary> list = dataDictionaryMapper.selectList(queryWrapper);
List<String> names = list.stream().map(dataDictionary -> {
return dataDictionary.getName() + "@" + dataDictionary.getCode();
}).collect(Collectors.toList());
String[] str = names.toArray(new String[names.size()]);
return str;
}
@Override
public String[] selectList(String type, String method) {
QueryWrapper<DataDictionary> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("type", type);
if ("ZJLY".equals(type)) {
queryWrapper.isNull("parent");
}
queryWrapper.orderByAsc("sort_num");
List<DataDictionary> list = dataDictionaryMapper.selectList(queryWrapper);
List<String> names = list.stream().map(dataDictionary -> {
return dataDictionary.getName() + "@" + dataDictionary.getCode();
}).collect(Collectors.toList());
String[] str = names.toArray(new String[names.size()]);
return str;
}
}
package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Maps;
......@@ -21,59 +11,73 @@ import com.yeejoin.amos.boot.module.common.api.entity.FireTeam;
import com.yeejoin.amos.boot.module.common.api.mapper.FireTeamMapper;
import com.yeejoin.amos.boot.module.common.api.service.IFireTeamService;
import com.yeejoin.amos.boot.module.jcs.api.feign.EquipFeignClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 消防队伍 服务实现类
*
* @author tb
* @date 2021-06-07
*/
* 消防队伍 服务实现类
*
* @author tb
* @date 2021-06-07
*/
@Service
public class FireTeamServiceImpl extends BaseService<FireTeamDto, FireTeam,FireTeamMapper> implements IFireTeamService {
@Autowired
FireTeamMapper fireTeamMapper;
public class FireTeamServiceImpl extends BaseService<FireTeamDto, FireTeam, FireTeamMapper> implements IFireTeamService {
@Resource
FireTeamMapper fireTeamMapper;
@Autowired
EquipFeignClient equipFeignClient;
@Autowired
EquipFeignClient equipFeignClient;
/**
* 获取监控大队列表
*
* @return
*/
public List<FireBrigadeResourceDto> listMonitorFireBrigade() {
return fireTeamMapper.listMonitorFireBrigade();
}
/**
* 获取监控大队列表
*
* @return
*/
public List<FireBrigadeResourceDto> listMonitorFireBrigade() {
return fireTeamMapper.listMonitorFireBrigade();
}
/**
* 消防队伍分页查询
*
* @param page 分页对象
* @param team 查询参数
* @return
*/
public IPage<FireTeamCardDto> listFireTeamByPage(Page page, FireTeamListDto team) {
// 获取消防车辆列表
ResponseModel<Object> result = equipFeignClient.getFireCarListAll();
Map<Object, Long> teamCarCountMap = Maps.newConcurrentMap();
if (!ValidationUtil.isEmpty(result)) {
List<Map<String, Object>> fireCarListMapList = (List<Map<String, Object>>) result.getResult();
if (!ValidationUtil.isEmpty(fireCarListMapList)) {
teamCarCountMap =
fireCarListMapList.stream().filter(car -> !ValidationUtil.isEmpty(car.get("teamId"))).collect(Collectors.groupingBy(car -> car.get(
"teamId"), Collectors.counting()));
}
}
IPage<FireTeamCardDto> fireTeamListPage = this.baseMapper.getFireTeamForPage(page, team);
List<FireTeamCardDto> fireTeamList = fireTeamListPage.getRecords();
Map<Object, Long> finalTeamCarCountMap = teamCarCountMap;
fireTeamList.forEach(t -> {
if (!ValidationUtil.isEmpty(finalTeamCarCountMap.get(t.getSequenceNbr().toString()))) {
t.setCarNum(finalTeamCarCountMap.get(t.getSequenceNbr().toString()).intValue());
}
});
fireTeamListPage.setRecords(fireTeamList);
return fireTeamListPage;
}
/**
* 消防队伍分页查询
*
* @param page 分页对象
* @param team 查询参数
* @return
*/
public IPage<FireTeamCardDto> listFireTeamByPage(Page page, FireTeamListDto team) {
// 获取消防车辆列表
ResponseModel<Object> result = equipFeignClient.getFireCarListAll();
Map<Object, Long> teamCarCountMap = Maps.newConcurrentMap();
if (!ValidationUtil.isEmpty(result)) {
List<Map<String, Object>> fireCarListMapList = (List<Map<String, Object>>) result.getResult();
if (!ValidationUtil.isEmpty(fireCarListMapList)) {
teamCarCountMap =
fireCarListMapList.stream().filter(car -> !ValidationUtil.isEmpty(car.get("teamId"))).collect(Collectors.groupingBy(car -> car.get(
"teamId"), Collectors.counting()));
}
}
IPage<FireTeamCardDto> fireTeamListPage = this.baseMapper.getFireTeamForPage(page, team);
List<FireTeamCardDto> fireTeamList = fireTeamListPage.getRecords();
Map<Object, Long> finalTeamCarCountMap = teamCarCountMap;
fireTeamList.forEach(t -> {
if (!ValidationUtil.isEmpty(finalTeamCarCountMap.get(t.getSequenceNbr().toString()))) {
t.setCarNum(finalTeamCarCountMap.get(t.getSequenceNbr().toString()).intValue());
}
});
fireTeamListPage.setRecords(fireTeamList);
return fireTeamListPage;
}
public List<FireTeamDto> queryFireTeamForList(Boolean isDelete) {
return fireTeamMapper.listFireTeamDto(isDelete);
}
}
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