Procházet zdrojové kódy

载体库导出 活动报名导出相关bug

huZhiHao před 5 roky
rodič
revize
a75a5588d2

+ 3 - 0
src/main/java/platform/modules/carrier/dao/ContractFloorDao.java

@@ -3,6 +3,7 @@ package platform.modules.carrier.dao;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 import platform.common.base.mapper.BaseMapper;
+import platform.modules.carrier.dto.CarrierStatisitcDto;
 import platform.modules.carrier.entity.CarrierVolume;
 import platform.modules.carrier.entity.ContractFloor;
 
@@ -29,4 +30,6 @@ public interface ContractFloorDao extends BaseMapper<ContractFloor> {
     List<CarrierVolume> findEachParkVolume(@Param("startTime") String startTime, @Param("endTime") String endTime);
 
     List<ContractFloor> findEndContractByTime(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("id") Integer id);
+
+    List<CarrierStatisitcDto> export1();
 }

+ 36 - 0
src/main/java/platform/modules/carrier/dto/CarrierStatisitcDto.java

@@ -0,0 +1,36 @@
+package platform.modules.carrier.dto;
+
+import lombok.Data;
+import platform.common.annotation.ExcelField;
+
+
+@Data
+public class CarrierStatisitcDto {
+
+    @ExcelField(title="街道", align=2, sort=5)
+    private String street;
+
+    @ExcelField(title="工业园区", align=2, sort=5)
+    private String park;
+
+    @ExcelField(title="载体", align=2, sort=5)
+    private String building;
+
+    @ExcelField(title="载体建筑面积", align=2, sort=5)
+    private String area;
+
+    @ExcelField(title="已用面积", align=2, sort=5)
+    private String rentArea;
+
+    @ExcelField(title="剩余面积", align=2, sort=5)
+    private String remainingArea;
+
+    @ExcelField(title="入住企业名称", align=2, sort=5)
+    private String company;
+
+    @ExcelField(title="合同开始日期", align=2, sort=5)
+    private String contractStart;
+
+    @ExcelField(title="合同结束日期", align=2, sort=5)
+    private String contractEnd;
+}

+ 44 - 19
src/main/java/platform/modules/carrier/service/CarrierStatisticService.java

@@ -2,23 +2,32 @@ package platform.modules.carrier.service;
 
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import platform.common.Constant;
 import platform.common.base.service.DictionaryItemService;
+import platform.common.util.CommonUtils;
+import platform.common.util.DateUtil;
+import platform.common.util.ExportExcel;
 import platform.common.util.ShiroUtils;
 import platform.modules.build.service.FloorService;
 import platform.modules.carrier.dto.CarrierLibraryResult;
+import platform.modules.carrier.dto.CarrierStatisitcDto;
 import platform.modules.carrier.dto.SearchCondition;
 import platform.modules.carrier.entity.*;
 import platform.modules.government.entity.User;
 import platform.modules.government.service.StreetService;
+import platform.modules.sys.entity.ActivityDetail;
+import platform.modules.sys.entity.ActivityRegistration;
+import platform.modules.sys.report.ActivityRegistrationExports;
 
+import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.net.URLEncoder;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 /**
  * @author kevin
@@ -67,7 +76,7 @@ public class CarrierStatisticService {
         for (CarrierLibraryResult result : libraryResults) {
             Double sumRentArea = streetService.getStreetRentAreaStatistic(result.getId());
             result.setSumRentArea(sumRentArea);
-            //楼栋建筑面积为空,按楼层建筑面积和算,楼层建筑面积为空按,楼层已租、代租和算
+            //楼栋建筑面积为空,按楼层建筑面积和算,楼层建筑面积为空按,楼层已租、代租和算
             Double sumBuildArea = getSumStreetBuildingArea(result.getId());
             result.setSumBuildArea(sumBuildArea);
         }
@@ -159,10 +168,10 @@ public class CarrierStatisticService {
      */
     private void userTypeConditon(SearchCondition condition) {
         User user = ShiroUtils.getUserEntity();
-        if (user.getUser_type() != null && user.getUser_type().equals(Constant.UserType.STREET)){
+        if (user.getUser_type() != null && user.getUser_type().equals(Constant.UserType.STREET)) {
             condition.setStreetId(user.getStreet_id());
         }
-        if (user.getUser_type() != null && user.getUser_type().equals(Constant.UserType.BUILD)){
+        if (user.getUser_type() != null && user.getUser_type().equals(Constant.UserType.BUILD)) {
             condition.setParkId(user.getBuild_id());
         }
     }
@@ -235,17 +244,16 @@ public class CarrierStatisticService {
         for (Building building : buildingList) {
             building.setBuild_use_desc(dictionaryItemService.findNameByTypeAndValue(Constant.DictionaryType.BUILDING_USES, building.getBuild_use() + ""));
             building.setCarrier_attriute_desc(dictionaryItemService.findNameByTypeAndValue(Constant.DictionaryType.FACTORY_TYPE, building.getCarrier_attriute() + ""));
-            if (building.getArea() != null){
+            if (building.getArea() != null) {
                 building.setSumBuildArea(building.getArea());
-            }
-            else {
+            } else {
                 //楼栋没有建筑面积获取楼层建筑面积
 //                double totalFloorArea = floorService.getSumFloorArea(building.getId());
 //                building.setSumBuildArea(totalFloorArea);
                 building.setSumBuildArea(buildingService.findBuildingTotalArea(building.getId()));
             }
             CarrierLibraryResult areaStatistic = buildingService.getBuildAreaStatistic(building.getId());
-            if (areaStatistic != null){
+            if (areaStatistic != null) {
                 building.setSumRestArea(areaStatistic.getSumRestArea());
             }
 //            Double sumRentArea = parkService.getParkRentAreaStatistic(building.getPark_id());
@@ -271,15 +279,14 @@ public class CarrierStatisticService {
         for (Building building : buildingList) {
             building.setBuild_use_desc(dictionaryItemService.findNameByTypeAndValue(Constant.DictionaryType.BUILDING_USES, building.getBuild_use() + ""));
             building.setCarrier_attriute_desc(dictionaryItemService.findNameByTypeAndValue(Constant.DictionaryType.FACTORY_TYPE, building.getCarrier_attriute() + ""));
-            if (building.getArea() != null){
+            if (building.getArea() != null) {
                 building.setSumBuildArea(building.getArea());
-            }
-            else {
+            } else {
                 //楼栋没有建筑面积获取楼层建筑面积
                 building.setSumBuildArea(buildingService.findBuildingTotalArea(building.getId()));
             }
             CarrierLibraryResult areaStatistic = buildingService.getBuildAreaStatistic(building.getId());
-            if (areaStatistic != null){
+            if (areaStatistic != null) {
                 building.setSumRestArea(areaStatistic.getSumRestArea());
                 totalRestArea += areaStatistic.getSumRestArea();
             }
@@ -311,7 +318,7 @@ public class CarrierStatisticService {
 
             totalRestArea += result.getSumRestArea();
             Double sumRentArea = streetService.getStreetRentAreaStatistic(result.getId());
-            if (sumRentArea != null){
+            if (sumRentArea != null) {
                 totalRentArea += sumRentArea;
             }
             totalParks = totalParks + result.getParkNum();
@@ -335,15 +342,15 @@ public class CarrierStatisticService {
     public Map<String, Double> findTotalParkStatistic(Integer id) {
         Double totalBuildArea = 0d;
         Double totalRestArea = 0d;
-        Double totalRentArea =0d;
-        Integer totalBuildingNum =0;
+        Double totalRentArea = 0d;
+        Integer totalBuildingNum = 0;
         List<CarrierLibraryResult> libraryResults = parkService.getParkStatistic(id);
         for (CarrierLibraryResult result : libraryResults) {
             Double sumBuildArea = getSumParkBuildingArea(result.getId());
             totalBuildArea += sumBuildArea;
             totalRestArea += result.getSumRestArea();
             Double sumRentArea = parkService.getParkRentAreaStatistic(result.getId());
-            if (sumRentArea != null){
+            if (sumRentArea != null) {
                 totalRentArea += sumRentArea;
             }
             totalBuildingNum += result.getBuildingNum();
@@ -406,7 +413,25 @@ public class CarrierStatisticService {
      * @param data
      * @return
      */
-    public Double toScale2(Double data){
+    public Double toScale2(Double data) {
         return new BigDecimal(data).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
     }
+
+    /**
+     * @Author: huZhiHao
+     * @Description: 导出表格
+     * @Date: 2020/7/14
+     * @Params: [response]
+     * @Return: void
+     **/
+    public void exportCarrierExcel(HttpServletResponse response) throws Exception {
+
+        String timeStr = DateUtil.getCurrentDateString("yyyy-MM-dd");
+
+        String fileName = "载体数据" + timeStr + ".xlsx";
+
+        List<CarrierStatisitcDto> carrierStatisitcDtoList = contractFloorService.exportCarrier();
+
+        new ExportExcel("载体数据 " + timeStr, CarrierStatisitcDto.class).setDataList(carrierStatisitcDtoList).write(response, fileName).dispose();
+    }
 }

+ 5 - 0
src/main/java/platform/modules/carrier/service/ContractFloorService.java

@@ -6,6 +6,7 @@ import platform.common.base.service.BaseService;
 import platform.modules.build.entity.BuildFloor;
 import platform.modules.build.service.FloorService;
 import platform.modules.carrier.dao.ContractFloorDao;
+import platform.modules.carrier.dto.CarrierStatisitcDto;
 import platform.modules.carrier.entity.CarrierStatistic;
 import platform.modules.carrier.entity.CarrierVolume;
 import platform.modules.carrier.entity.ContractFloor;
@@ -121,4 +122,8 @@ public class ContractFloorService extends BaseService<ContractFloor> {
     public List<ContractFloor> findEndContractByTime(String startTime, String endTime, Integer id) {
         return contractFloorDao.findEndContractByTime(startTime, endTime, id);
     }
+
+    public List<CarrierStatisitcDto> exportCarrier() {
+        return contractFloorDao.export1();
+    }
 }

+ 13 - 0
src/main/java/platform/modules/carrier/web/IndustrialCarrierController.java

@@ -17,6 +17,8 @@ import platform.modules.government.service.StreetService;
 import platform.modules.sys.web.ResponseMessage;
 
 import javax.persistence.Id;
+import javax.servlet.http.HttpServletResponse;
+import java.net.URLEncoder;
 import java.time.LocalDate;
 import java.time.Month;
 import java.time.Period;
@@ -363,4 +365,15 @@ public class IndustrialCarrierController {
 
     }
 
+    /**
+     * 载体库导出
+     *
+     * @return
+     */
+    @GetMapping("/excel/export")
+    public void export(HttpServletResponse response) throws Exception {
+
+        carrierStatisticService.exportCarrierExcel(response);
+
+    }
 }

+ 28 - 1
src/main/java/platform/modules/government/web/ActivityController.java

@@ -224,7 +224,7 @@ public class ActivityController extends BaseController {
         Integer id = activityFindRequest.getId();
         ActivityDetail activityDetail = activityService.findOne(id.toString());
         String fileName = activityDetail.getActivity_title() + "报名信息表.xlsx";
-        List<ActivityRegistrationExports> registrationList = activityRegistrationService.findRegistrationListExports(id);
+        /*List<ActivityRegistrationExports> registrationList = activityRegistrationService.findRegistrationListExports(id);
         for (ActivityRegistrationExports activityRegistrationExports : registrationList) {
 
             String regway = dictionaryItemService.findNameByTypeAndValue(Constant.DictionaryType.ACTIVITY_REGISTRATION_WAY, activityRegistrationExports.getRegistration_way());
@@ -241,7 +241,34 @@ public class ActivityController extends BaseController {
             if (Objects.equals(activityRegistrationExports.getReview_state(), "3")) {
                 activityRegistrationExports.setReview_state("取消报名");
             }
+        }*/
+
+        List<ActivityRegistration> activityRegistrationList = activityRegistrationService.findRegistrationList(id);
+        List<ActivityRegistrationExports> registrationList = new ArrayList<>();
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        for (ActivityRegistration activityRegistration : activityRegistrationList) {
+
+            ActivityRegistrationExports activityRegistrationExports = new ActivityRegistrationExports();
+            BeanUtils.copyProperties(activityRegistration, activityRegistrationExports);
+
+            String regway = dictionaryItemService.findNameByTypeAndValue(Constant.DictionaryType.ACTIVITY_REGISTRATION_WAY, activityRegistration.getRegistration_way());
+            activityRegistrationExports.setRegistration_way(regway);
+            if (Objects.equals(activityRegistration.getReview_state(), "0")) {
+                activityRegistrationExports.setReview_state("待审核");
+            }
+            if (Objects.equals(activityRegistration.getReview_state(), "1")) {
+                activityRegistrationExports.setReview_state("通过");
+            }
+            if (Objects.equals(activityRegistration.getReview_state(), "2")) {
+                activityRegistrationExports.setReview_state("驳回");
+            }
+            if (Objects.equals(activityRegistration.getReview_state(), "3")) {
+                activityRegistrationExports.setReview_state("取消报名");
+            }
+            registrationList.add(activityRegistrationExports);
         }
+
+
         new ExportExcel(activityDetail.getActivity_title() + "报名信息表", ActivityRegistrationExports.class).setDataList(registrationList).write(response, fileName).dispose();
     }
 

+ 1 - 0
src/main/java/platform/modules/sys/dao/ActivityReviewDao.java

@@ -15,6 +15,7 @@ import java.util.List;
  */
 @Repository
 public interface ActivityReviewDao extends BaseMapper<ActivityReview> {
+
     List<ActivityReview> findActivityReviewList(@Param("condition") QueryCondition condition);
 
     void batchUpdate(@Param("batch") BatchDto batch);

+ 4 - 0
src/main/java/platform/modules/sys/entity/ActivityReview.java

@@ -60,4 +60,8 @@ public class ActivityReview extends BaseEntity {
 
     @Transient
     private String activity_endtime;
+
+    @Transient
+    private String is_public;
+
 }

+ 22 - 0
src/main/resources/mapper/carrier/ContractFloorDao.xml

@@ -73,4 +73,26 @@
             AND cf.contract_end <![CDATA[<]]> #{endTime}
         </if>
     </select>
+
+    <select id="export1" resultType="platform.modules.carrier.dto.CarrierStatisitcDto">
+        SELECT
+            s.`name` street,
+            p.`name` park,
+            b.build_name building,
+            b.area area,
+            b.rent_area rentArea,
+            ( b.area - b.rent_area ) remainingArea,
+            c.company_name company,
+            c.contract_start contractStart,
+            c.contract_end contractEnd
+        FROM
+            ic_building b
+            LEFT JOIN ic_park p ON p.id = b.park_id
+            LEFT JOIN s_street s ON s.id = p.street_id
+            LEFT JOIN ic_contract c ON c.park_id = p.id
+            AND c.del_flag = 0
+        WHERE
+            b.is_use = 1
+            AND b.del_flag = 0
+    </select>
 </mapper>

+ 2 - 1
src/main/resources/mapper/sys/ActivityReviewDao.xml

@@ -10,7 +10,8 @@
             ad.activity_publishtime,
             ad.create_name AS publisher,
             ad.activity_starttime AS activity_starttime,
-            ad.activity_endtime AS activity_endtime
+            ad.activity_endtime AS activity_endtime,
+            ad.is_public AS is_public
         FROM
             ac_activity_review ar
         LEFT JOIN ac_activity_detail ad ON ad.id = ar.activity_id