src/main/java/org/springblade/modules/place/controller/PlaceController.java
@@ -260,6 +260,18 @@ } /** * 导出场所信息 */ @GetMapping("export-place") @ApiOperationSupport(order = 13) @ApiLog("导出场所信息") @ApiOperation(value = "导出场所信息", notes = "传入place") public void exportPlace(PlaceVO place, HttpServletResponse response) { List<ExportPlaceExcel> list = placeService.exportPlaceList(place); ExcelUtil.export(response, "场所数据管理" + DateUtil.time(), "场所数据表", list, ExportPlaceExcel.class); } /** * 导出模板 */ @GetMapping("export-template") src/main/java/org/springblade/modules/place/excel/ExportPlaceExcel.java
New file @@ -0,0 +1,130 @@ package org.springblade.modules.place.excel; import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ContentRowHeight; import com.alibaba.excel.annotation.write.style.HeadRowHeight; import lombok.Data; import org.springblade.common.excel.ExcelDictConverter; import org.springblade.common.excel.ExcelDictItem; import org.springblade.common.excel.ExcelDictItemLabel; import java.io.Serializable; /** * ExportPlaceExcel * * @author Chill */ @Data @ColumnWidth(25) @HeadRowHeight(20) @ContentRowHeight(18) public class ExportPlaceExcel implements Serializable { private static final long serialVersionUID = 2L; /** 场所名称 */ @ColumnWidth(25) @ExcelProperty( "场所名称*") private String placeName; /** 场所负责人 */ @ColumnWidth(15) @ExcelProperty( "场所负责人") private String principal; /** 场所负责人联系电话 */ @ColumnWidth(15) @ExcelProperty( "场所负责人联系电话") private String principalPhone; /** 场所负责人身份证号 */ @ColumnWidth(15) @ExcelProperty( "场所负责人身份证号") private String principalIdCard; /** 地址 */ @ColumnWidth(25) @ExcelProperty( "地址") private String location; /** 经度 */ @ColumnWidth(25) @ExcelProperty( "经度") private String lng; /** 纬度 */ @ColumnWidth(25) @ExcelProperty( "纬度") private String lat; /** 街道名称 */ @ExcelProperty( "街道名称") private String streetName; /** 社区名称 */ @ExcelProperty( "社区名称") private String communityName; /** 网格名称 */ @ExcelProperty( "网格名称") private String gridName; // // /** 企业法定代表 */ // @ColumnWidth(15) // @ExcelProperty( "企业法定代表") // private String legalPerson; // // /** 法定代表联系电话 */ // @ColumnWidth(15) // @ExcelProperty( "法定代表联系电话") // private String legalTel; // // /** 企业法定代表身份证号码 */ // @ColumnWidth(15) // @ExcelProperty( "企业法定代表身份证号码") // private String legalIdCard; /** 九小场所类型 */ @ExcelProperty( value = "九小场所类型",converter = ExcelDictConverter.class) @ExcelDictItem(type = "nineType") @ExcelDictItemLabel(type = "nineType") private String nineType; /** 阵地类型 */ @ExcelProperty( value = "阵地类型",converter = ExcelDictConverter.class) @ExcelDictItem(type = "frontType") @ExcelDictItemLabel(type = "frontType") private String frontType; /** 1:是 2:否 三级消防单位 */ @ExcelProperty("三级消防单位(是/否)") private String threeFireProtection; /** 无诈类别 */ @ExcelProperty(value = "无诈类别", converter = ExcelDictConverter.class) @ExcelDictItem(type = "noExplosionCategory") @ExcelDictItemLabel(type = "noExplosionCategory") private String noExplosionCategory; /** 标签分类代码 */ @ExcelProperty( "标签分类代码") private String labelCode; /** 备注 */ @ExcelProperty( "备注") private String remark; /** 审核状态 */ @ExcelProperty( "审核状态") private String confirmFlag; /** 是否有二维码 */ @ExcelProperty( "是否有二维码") private String source; } src/main/java/org/springblade/modules/place/mapper/PlaceMapper.java
@@ -19,6 +19,7 @@ import org.apache.ibatis.annotations.Param; import org.springblade.common.node.TreeStringNode; import org.springblade.modules.place.entity.PlaceEntity; import org.springblade.modules.place.excel.ExportPlaceExcel; import org.springblade.modules.place.excel.NinePlaceExcel; import org.springblade.modules.place.excel.PlaceAndRelExcel; import org.springblade.modules.place.vo.PlaceVO; @@ -41,7 +42,6 @@ * * @param page * @param place * @param houseCodeList * @param regionChildCodesList * @param isAdministrator * @return @@ -233,4 +233,14 @@ * @return */ String getCommunityCode(@Param("id") Long id); /** * 导出场所信息 * @param place * @return */ List<ExportPlaceExcel> exportPlaceList(@Param("place") PlaceVO place, @Param("gridCodeList") List<String> gridCodeList, @Param("regionChildCodesList") List<String> regionChildCodesList, @Param("isAdministrator") Integer isAdministrator); } src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
@@ -944,4 +944,139 @@ and jp.id = #{id} </select> <!--导出场所信息--> <select id="exportPlaceList" resultType="org.springblade.modules.place.excel.ExportPlaceExcel"> select jp.id, jp.location, jp.lng, jp.lat, jp.place_name, jp.principal, jp.principal_phone, jp.principal_id_card, jp.nine_type, jp.front_type, jp.no_explosion_category, jp.remark, case when jp.source=1 then '是' else '否' end as source, case when jp.three_fire_protection=1 then '是' when jp.three_fire_protection=2 then '否' end as threeFireProtection, jpe.legal_person, jpe.legal_tel, jpe.legal_id_card, jppl.labelCode, br.town_name as streetName, br.name as communityName, jg.grid_name as gridName, case when jpe.confirm_flag = 1 then '待审核' when jpe.confirm_flag = 2 then '审核通过' when jpe.confirm_flag = 3 then '审核不通过' when jpe.confirm_flag = 4 then '待完善' end as confirmFlag from jczz_place jp left join blade_user bu on bu.id = jp.principal_user_id and bu.is_deleted = 0 left join jczz_place_ext jpe on jpe.place_id=jp.id and jpe.is_deleted = 0 left join jczz_grid jg on jg.grid_code = jp.grid_code and jg.is_deleted = 0 LEFT JOIN jczz_police_affairs_grid jpag on jp.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0 left join blade_region br on br.code = jpag.community_code left join ( select place_id,GROUP_CONCAT(poi_code) as labelCode from jczz_place_poi_label group by place_id ) jppl on jppl.place_id = jp.id where jp.is_deleted = 0 and jp.source!=3 and jp.place_name != '' <if test="place.placeName!=null and place.placeName!=''"> and jp.place_name like concat('%',#{place.placeName},'%') </if> <if test="place.principal!=null and place.principal!=''"> and jp.principal like concat('%',#{place.principal},'%') </if> <if test="place.principalPhone!=null and place.principalPhone!=''"> and jp.principal_phone like concat('%',#{place.principalPhone},'%') </if> <if test="place.houseCode!=null and place.houseCode!=''"> and jp.house_code like concat('%',#{place.houseCode},'%') </if> <if test="place.townStreetName!=null and place.townStreetName!=''"> and br.town_name like concat('%',#{place.townStreetName},'%') </if> <if test="place.neiName!=null and place.neiName!=''"> and br.name like concat('%',#{place.neiName},'%') </if> <if test="place.id!=null"> and jp.id = #{place.id} </if> <if test="place.isNine!=null"> and jp.is_nine = #{place.isNine} </if> <if test="place.source!=null"> and jp.source = #{place.source} </if> <if test="place.isPerfect==1"> and jp.status = 1 </if> <if test="place.isPerfect==2"> and jp.status = 2 </if> <if test="isAdministrator==2"> <choose> <when test="place.roleName != null and place.roleName != ''"> <if test="place.roleName=='wgy'"> <choose> <when test="gridCodeList !=null and gridCodeList.size()>0"> and jp.grid_code in <foreach collection="gridCodeList" item="code" open="(" close=")" separator=","> #{code} </foreach> </when> <otherwise> and jp.grid_code in ('') </otherwise> </choose> </if> <if test="place.roleName=='mj'"> <choose> <when test="regionChildCodesList !=null and regionChildCodesList.size()>0"> and jpag.community_code in <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=","> #{code} </foreach> </when> <otherwise> and jpag.community_code in ('') </otherwise> </choose> </if> </when> <otherwise> <choose> <when test="regionChildCodesList !=null and regionChildCodesList.size()>0"> and ( jg.grid_code in <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=","> #{code} </foreach> or jpag.community_code in <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=","> #{code} </foreach> ) </when> <otherwise> and ( jg.grid_code in ('') or jpag.community_code in ('') ) </otherwise> </choose> </otherwise> </choose> </if> order by jp.create_time desc,jp.id desc </select> </mapper> src/main/java/org/springblade/modules/place/service/IPlaceService.java
@@ -19,6 +19,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import org.springblade.common.node.TreeStringNode; import org.springblade.modules.place.entity.PlaceEntity; import org.springblade.modules.place.excel.ExportPlaceExcel; import org.springblade.modules.place.excel.NinePlaceExcel; import org.springblade.modules.place.excel.PlaceAndRelExcel; import org.springblade.modules.place.excel.ImportPlaceExcel; @@ -209,4 +210,11 @@ * @return */ String getCommunityCode(Long id); /** * 导出场所信息 * @param place * @return */ List<ExportPlaceExcel> exportPlaceList(PlaceVO place); } src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
@@ -41,6 +41,7 @@ import org.springblade.modules.house.entity.HouseholdEntity; import org.springblade.modules.house.service.IHouseholdService; import org.springblade.modules.place.entity.*; import org.springblade.modules.place.excel.ExportPlaceExcel; import org.springblade.modules.place.excel.NinePlaceExcel; import org.springblade.modules.place.excel.PlaceAndRelExcel; import org.springblade.modules.place.excel.ImportPlaceExcel; @@ -1789,4 +1790,20 @@ public String getCommunityCode(Long id) { return baseMapper.getCommunityCode(id); } /** * 导出场所信息 * @param place * @return */ @Override public List<ExportPlaceExcel> exportPlaceList(PlaceVO place) { // 公共参数设置 CommonParamSet commonParamSet = new CommonParamSet().invoke(PlaceVO.class, place); return baseMapper.exportPlaceList(place, commonParamSet.getGridCodeList(), commonParamSet.getRegionChildCodesList(), commonParamSet.getIsAdministrator() ); } }