Explorar o código

接口调整及表名称调整---

zhanghao hai 2 meses
pai
achega
4698e730c9

+ 47 - 0
project-zcustom/src/main/java/com/project/zcustom/domain/addional/LargeAssetDirs.java

@@ -0,0 +1,47 @@
+package com.project.zcustom.domain.addional;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.project.common.annotation.Excel;
+import com.project.common.core.domain.CustomBaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+import lombok.experimental.Accessors;
+
+@Data
+@Accessors(chain = true)
+@ToString(callSuper = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value = "large_plat_logistics实体小类")
+@JsonInclude(JsonInclude.Include.NON_NULL)
+public class LargeAssetDirs extends CustomBaseEntity {
+    /**
+     * id
+     */
+    @TableId(value = "id")
+    @ApiModelProperty("id")
+    private Long id;
+
+    /**
+     * 地区编码(后勤资产)
+     */
+    @Excel(name = "地区编码")
+    @ApiModelProperty("地区编码(后勤资产)")
+    private String appCode;
+
+    /**
+     * 小类名称
+     */
+    @ApiModelProperty("小类名称")
+    private String categoryName;
+
+    /**
+     * 小类资产数量
+     */
+    @ApiModelProperty("小类资产数量")
+    private Long assetNum;
+
+}

+ 241 - 0
project-zcustom/src/main/java/com/project/zcustom/domain/addional/LargeLogistics.java

@@ -0,0 +1,241 @@
+package com.project.zcustom.domain.addional;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.project.common.annotation.Excel;
+import com.project.common.core.domain.CustomBaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+import lombok.experimental.Accessors;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * 后勤运行监控中心对象 large_plat_logistics
+ *
+ * @author change
+ * @date 2025-02-10
+ */
+@Data
+@Accessors(chain = true)
+@ToString(callSuper = true)
+@EqualsAndHashCode(callSuper = false)
+@TableName("large_plat_logistics")
+@ApiModel(value = "large_plat_logistics实体类")
+@JsonInclude(JsonInclude.Include.NON_NULL)
+public class LargeLogistics extends CustomBaseEntity {
+
+    /**
+     * id
+     */
+    @TableId(value = "id")
+    @ApiModelProperty("id")
+    private Long id;
+
+    /**
+     * 地区编码(后勤资产)
+     */
+    @Excel(name = "地区编码")
+    @ApiModelProperty("地区编码(后勤资产)")
+    private String appCode;
+
+    /**
+     * 父地区编码(后勤资产)
+     */
+    @Excel(name = "父地区编码")
+    @ApiModelProperty("父地区编码(后勤资产)")
+    private String appParentCode;
+
+    /**
+     * 已赋码台账数
+     */
+    @Excel(name = "已赋码台账数")
+    @ApiModelProperty("已赋码台账数")
+    private Long codedNum;
+
+    /**
+     * 已贴签台账数
+     */
+    @Excel(name = "已贴签台账数")
+    @ApiModelProperty("已贴签台账数")
+    private Long labelNum;
+
+    /**
+     * 台账总数
+     */
+    @Excel(name = "台账总数")
+    @ApiModelProperty("台账总数")
+    private Long assetNum;
+
+    /**
+     * 办公资产数
+     */
+    @Excel(name = "办公资产数")
+    @ApiModelProperty("办公资产数")
+    private Long officeAssetNum;
+
+    /**
+     * 存量办公资产数
+     */
+    @Excel(name = "存量办公资产数")
+    @ApiModelProperty("存量办公资产数")
+    private Long stockOfficeAssetNum;
+
+    /**
+     * 新增办公资产数
+     */
+    @Excel(name = "新增办公资产数")
+    @ApiModelProperty("新增办公资产数")
+    private Long newOfficeAssetNum;
+
+    /**
+     * 报废办公资产数
+     */
+    @Excel(name = "报废办公资产数")
+    @ApiModelProperty("报废办公资产数")
+    private Long scrapOfficeAssetNum;
+
+    /**
+     * 楼宇设备数
+     */
+    @Excel(name = "楼宇设备数")
+    @ApiModelProperty("楼宇设备数")
+    private Long buildingAssetNum;
+
+    /**
+     * 存量楼宇设备数
+     */
+    @Excel(name = "存量楼宇设备数")
+    @ApiModelProperty("存量楼宇设备数")
+    private Long stockBuildingAssetNum;
+
+    /**
+     * 新增楼宇设备数
+     */
+    @Excel(name = "新增楼宇设备数")
+    @ApiModelProperty("新增楼宇设备数")
+    private Long newBuildingAssetNum;
+
+    /**
+     * 报废楼宇设备数
+     */
+    @Excel(name = "报废楼宇设备数")
+    @ApiModelProperty("报废楼宇设备数")
+    private Long scrapBuildingAssetNum;
+
+    /**
+     * 服务设备数
+     */
+    @Excel(name = "服务设备数")
+    @ApiModelProperty("服务设备数")
+    private Long serviceAssetNum;
+
+    /**
+     * 存量服务设备数
+     */
+    @Excel(name = "存量服务设备数")
+    @ApiModelProperty("存量服务设备数")
+    private Long stockServiceAssetNum;
+
+    /**
+     * 新增服务设备数
+     */
+    @Excel(name = "新增服务设备数")
+    @ApiModelProperty("新增服务设备数")
+    private Long newServiceAssetNum;
+
+    /**
+     * 报废服务设备数
+     */
+    @Excel(name = "报废服务设备数")
+    @ApiModelProperty("报废服务设备数")
+    private Long scrapServiceAssetNum;
+
+    /**
+     * 典型应用场景覆盖率
+     */
+    @Excel(name = "典型应用场景覆盖率")
+    private BigDecimal sceneRate;
+
+    /**
+     * 楼宇资产巡检执行数
+     */
+    @Excel(name = "楼宇资产巡检执行数")
+    private Long inspectionSchemeNum;
+
+    /**
+     * 重点楼宇设备巡检执行数
+     */
+    @Excel(name = "重点楼宇设备巡检执行数")
+    private BigDecimal importantDeviceTypeInspectionExecuteRate;
+
+    /**
+     * 楼宇资产巡检异常数
+     */
+    @Excel(name = "楼宇资产巡检异常数")
+    private Long inspectionAnomalyRecordNum;
+
+
+    /**
+     * 检修记录数
+     */
+    @Excel(name = "检修记录数")
+    @ApiModelProperty("检修记录数")
+    private Long repairRecordNum;
+
+    /**
+     * 维保记录数
+     */
+    @Excel(name = "维保记录数")
+    @ApiModelProperty("维保记录数")
+    private Long maintenanceRecordNum;
+
+    /**
+     * 办公资产分布列表
+     */
+    @ApiModelProperty("办公资产分布列表")
+    private List<LargeAssetDirs> officeAssetList;
+
+    /**
+     * 楼宇设备分布列表
+     */
+    @ApiModelProperty("楼宇设备分布列表")
+    private List<LargeAssetDirs> buildingAssetList;
+
+    /**
+     * 服务设备分布列表
+     */
+    @ApiModelProperty("服务设备分布列表")
+    private List<LargeAssetDirs> serviceAssetList;
+
+    public LargeLogistics(String appCode, String appParentCode, Long codedNum, Long labelNum, Long assetNum, Long officeAssetNum, Long stockOfficeAssetNum, Long newOfficeAssetNum, Long scrapOfficeAssetNum, Long buildingAssetNum, Long stockBuildingAssetNum, Long newBuildingAssetNum, Long scrapBuildingAssetNum, Long serviceAssetNum, Long stockServiceAssetNum, Long newServiceAssetNum, Long scrapServiceAssetNum, BigDecimal sceneRate, Long inspectionSchemeNum, BigDecimal importantDeviceTypeInspectionExecuteRate, Long inspectionAnomalyRecordNum, Long repairRecordNum, Long maintenanceRecordNum) {
+        this.appCode = appCode;
+        this.appParentCode = appParentCode;
+        this.codedNum = codedNum;
+        this.labelNum = labelNum;
+        this.assetNum = assetNum;
+        this.officeAssetNum = officeAssetNum;
+        this.stockOfficeAssetNum = stockOfficeAssetNum;
+        this.newOfficeAssetNum = newOfficeAssetNum;
+        this.scrapOfficeAssetNum = scrapOfficeAssetNum;
+        this.buildingAssetNum = buildingAssetNum;
+        this.stockBuildingAssetNum = stockBuildingAssetNum;
+        this.newBuildingAssetNum = newBuildingAssetNum;
+        this.scrapBuildingAssetNum = scrapBuildingAssetNum;
+        this.serviceAssetNum = serviceAssetNum;
+        this.stockServiceAssetNum = stockServiceAssetNum;
+        this.newServiceAssetNum = newServiceAssetNum;
+        this.scrapServiceAssetNum = scrapServiceAssetNum;
+        this.sceneRate = sceneRate;
+        this.inspectionSchemeNum = inspectionSchemeNum;
+        this.importantDeviceTypeInspectionExecuteRate = importantDeviceTypeInspectionExecuteRate;
+        this.inspectionAnomalyRecordNum = inspectionAnomalyRecordNum;
+        this.repairRecordNum = repairRecordNum;
+        this.maintenanceRecordNum = maintenanceRecordNum;
+    }
+}

+ 27 - 0
project-zcustom/src/main/java/com/project/zcustom/mapper/logistics/PlatLogisticsMapper.java

@@ -0,0 +1,27 @@
+package com.project.zcustom.mapper.logistics;
+
+import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
+import com.project.zcustom.domain.addional.LargeAssetDirs;
+import com.project.zcustom.domain.addional.LargeLogistics;
+
+import java.util.List;
+
+@InterceptorIgnore(blockAttack = "true")
+public interface PlatLogisticsMapper {
+
+    public int deleteLogistics();
+
+    public int deleteOfficeAssetDirs();
+
+    public int deleteBuildingAssetDirs();
+
+    public int deleteServiceAssetDirs();
+
+    public int insertLargePlatLogistics(List<LargeLogistics> largeLogisticsList);
+
+    public int insertOfficeAssetDirs(List<LargeAssetDirs> largeAssetDirsList);
+
+    public int insertBuildingAssetDirs(List<LargeAssetDirs> largeAssetDirsList);
+
+    public int insertServiceAssetDirs(List<LargeAssetDirs> largeAssetDirsList);
+}

+ 225 - 0
project-zcustom/src/main/java/com/project/zcustom/tools/DataTools.java

@@ -6,8 +6,11 @@ import com.alibaba.fastjson2.JSONObject;
 import com.project.common.enums.EmployeeTypeEnum;
 import com.project.common.utils.StringUtils;
 import com.project.common.utils.http.HttpUtils;
+import com.project.zcustom.domain.addional.LargeAssetDirs;
+import com.project.zcustom.domain.addional.LargeLogistics;
 import com.project.zcustom.domain.plat.PlatApiRecord;
 import com.project.zcustom.domain.addional.LargeBuilding;
+import com.project.zcustom.mapper.logistics.PlatLogisticsMapper;
 import com.project.zcustom.mapper.unit.PlatBuildingMapper;
 import com.project.zcustom.service.access.IPlatAccessService;
 import com.project.zcustom.service.basics.IPlatBasicsService;
@@ -21,7 +24,10 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.time.LocalDate;
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 
@@ -37,6 +43,9 @@ public class DataTools {
     @Autowired
     private PlatBuildingMapper platBuildingMapper;
 
+    @Autowired
+    private PlatLogisticsMapper platLogisticsMapper;
+
     @Resource
     IPlatEmployeeTypeService platEmployeeTypeService;
     @Resource
@@ -107,7 +116,223 @@ public class DataTools {
         }
     }
 
+    public void getLogisticsData(){
+        String json = "{\n" +
+                "    \"code\": \"200\",\n" +
+                "    \"msg\": \"操作成功\",\n" +
+                "    \"data\": [\n" +
+                "        {\n" +
+                "            \"orgId\": \"10001\",\n" +
+                "            \"orgName\": \"三亚电力公司\",\n" +
+                "            \"parentOrgId\": \"12001\",\n" +
+                "            \"parentOrgName\": \"\",\n" +
+                "            \"codedNum\": 10,\n" +
+                "            \"labelNum\": 10,\n" +
+                "            \"assetNum\": 20,\n" +
+                "            \"officeAssetNum\": 110,\n" +
+                "            \"stockOfficeAssetNum\": 22,\n" +
+                "            \"newOfficeAssetNum\": 34,\n" +
+                "            \"scrapOfficeAssetNum\": 56,\n" +
+                "            \"buildingAssetNum\": 77,\n" +
+                "            \"stockBuildingAssetNum\": 35,\n" +
+                "            \"newBuildingAssetNum\": 3,\n" +
+                "            \"scrapBuildingAssetNum\": 6,\n" +
+                "            \"serviceAssetNum\": 88,\n" +
+                "            \"stockServiceAssetNum\": 34,\n" +
+                "            \"newServiceAssetNum\": 99,\n" +
+                "            \"scrapServiceAssetNum\": 1,\n" +
+                "            \"officeAssetDistrs\": [\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"电梯电气\",\n" +
+                "                    \"assetNum\": 12\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"供热采暖\",\n" +
+                "                    \"assetNum\": 42\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"消防\",\n" +
+                "                    \"assetNum\": 20\n" +
+                "                }\n" +
+                "            ],\n" +
+                "            \"buildingAssetDistrs\": [\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"电梯电气\",\n" +
+                "                    \"assetNum\": 12\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"供热采暖\",\n" +
+                "                    \"assetNum\": 42\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"消防\",\n" +
+                "                    \"assetNum\": 20\n" +
+                "                }\n" +
+                "            ],\n" +
+                "            \"serviceAssetDistrs\": [\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"电梯电气\",\n" +
+                "                    \"assetNum\": 12\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"供热采暖\",\n" +
+                "                    \"assetNum\": 42\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"消防\",\n" +
+                "                    \"assetNum\": 20\n" +
+                "                }\n" +
+                "            ],\n" +
+                "            \"sceneRate\": 85.55,\n" +
+                "            \"inspectionSchemeNum\": 12,\n" +
+                "            \"importantDeviceTypeInspectionExecuteRate\": 66.33,\n" +
+                "            \"inspectionAnomalyRecordNum\": 13,\n" +
+                "            \"repairRecordNum\": 44,\n" +
+                "            \"maintenanceRecordNum\": 56\n" +
+                "        },\n" +
+                "        {\n" +
+                "            \"orgId\": \"10444\",\n" +
+                "            \"orgName\": \"济南电力公司\",\n" +
+                "            \"parentOrgId\": \"13401\",\n" +
+                "            \"parentOrgName\": \"\",\n" +
+                "            \"codedNum\": 110,\n" +
+                "            \"labelNum\": 120,\n" +
+                "            \"assetNum\": 70,\n" +
+                "            \"officeAssetNum\": 69,\n" +
+                "            \"stockOfficeAssetNum\": 53,\n" +
+                "            \"newOfficeAssetNum\": 9,\n" +
+                "            \"scrapOfficeAssetNum\": 17,\n" +
+                "            \"buildingAssetNum\": 36,\n" +
+                "            \"stockBuildingAssetNum\": 8,\n" +
+                "            \"newBuildingAssetNum\": 95,\n" +
+                "            \"scrapBuildingAssetNum\": 71,\n" +
+                "            \"serviceAssetNum\": 103,\n" +
+                "            \"stockServiceAssetNum\": 0,\n" +
+                "            \"newServiceAssetNum\": 2,\n" +
+                "            \"scrapServiceAssetNum\": 1,\n" +
+                "            \"officeAssetDistrs\": [\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"消防\",\n" +
+                "                    \"assetNum\": 12\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"排水\",\n" +
+                "                    \"assetNum\": 42\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"楼宇通风\",\n" +
+                "                    \"assetNum\": 20\n" +
+                "                }\n" +
+                "            ],\n" +
+                "            \"buildingAssetDistrs\": [\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"电梯电气\",\n" +
+                "                    \"assetNum\": 12\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"楼宇通风\",\n" +
+                "                    \"assetNum\": 42\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"消防\",\n" +
+                "                    \"assetNum\": 20\n" +
+                "                }\n" +
+                "            ],\n" +
+                "            \"serviceAssetDistrs\": [\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"排水\",\n" +
+                "                    \"assetNum\": 12\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"供热采暖\",\n" +
+                "                    \"assetNum\": 42\n" +
+                "                },\n" +
+                "                {\n" +
+                "                    \"categoryName\": \"楼宇通风\",\n" +
+                "                    \"assetNum\": 20\n" +
+                "                }\n" +
+                "            ],\n" +
+                "            \"sceneRate\": 88.99,\n" +
+                "            \"inspectionSchemeNum\": 21,\n" +
+                "            \"importantDeviceTypeInspectionExecuteRate\": 56.65,\n" +
+                "            \"inspectionAnomalyRecordNum\": 19,\n" +
+                "            \"repairRecordNum\": 23,\n" +
+                "            \"maintenanceRecordNum\": 200\n" +
+                "        }\n" +
+                "    ]\n" +
+                "}";
+        JSONObject jsonObject = JSONObject.parseObject(json);
+        JSONArray dataArray = jsonObject.getJSONArray("data");
+        List<LargeLogistics> list = new ArrayList<>();
+        List<LargeAssetDirs> officeAssetList = new ArrayList<>();
+        List<LargeAssetDirs> buildingAssetList = new ArrayList<>();
+        List<LargeAssetDirs> serviceAssetList = new ArrayList<>();
+        for (int i = 0; i < dataArray.size(); i++) {
+            JSONObject dataItem = dataArray.getJSONObject(i);
+            LargeLogistics largeLogistics = new LargeLogistics(
+                    dataItem.getString("orgId"),
+                    dataItem.getString("parentOrgId"),
+                    Long.valueOf(dataItem.getString("codedNum")),
+                    Long.valueOf(dataItem.getString("labelNum")),
+                    Long.valueOf(dataItem.getString("assetNum")),
+                    Long.valueOf(dataItem.getString("officeAssetNum")),
+                    Long.valueOf(dataItem.getString("stockOfficeAssetNum")),
+                    Long.valueOf(dataItem.getString("newOfficeAssetNum")),
+                    Long.valueOf(dataItem.getString("scrapOfficeAssetNum")),
+                    Long.valueOf(dataItem.getString("buildingAssetNum")),
+                    Long.valueOf(dataItem.getString("stockBuildingAssetNum")),
+                    Long.valueOf(dataItem.getString("newBuildingAssetNum")),
+                    Long.valueOf(dataItem.getString("scrapBuildingAssetNum")),
+                    Long.valueOf(dataItem.getString("serviceAssetNum")),
+                    Long.valueOf(dataItem.getString("stockServiceAssetNum")),
+                    Long.valueOf(dataItem.getString("newServiceAssetNum")),
+                    Long.valueOf(dataItem.getString("scrapServiceAssetNum")),
+                    new BigDecimal(dataItem.getString("sceneRate")),
+                    Long.valueOf(dataItem.getString("inspectionSchemeNum")),
+                    new BigDecimal(dataItem.getString("importantDeviceTypeInspectionExecuteRate")),
+                    Long.valueOf(dataItem.getString("inspectionAnomalyRecordNum")),
+                    Long.valueOf(dataItem.getString("repairRecordNum")),
+                    Long.valueOf(dataItem.getString("maintenanceRecordNum"))
+                    );
+            JSONArray officeAssetArray = dataItem.getJSONArray("officeAssetDistrs");
+            for (int j = 0; j < dataArray.size(); j++) {
+                LargeAssetDirs largeAssetDirs = new LargeAssetDirs();
+                JSONObject assetItem = officeAssetArray.getJSONObject(j);
+                largeAssetDirs.setAppCode(largeLogistics.getAppCode());
+                largeAssetDirs.setCategoryName(assetItem.getString("categoryName"));
+                largeAssetDirs.setAssetNum(Long.valueOf(assetItem.getString("assetNum")));
+                officeAssetList.add(largeAssetDirs);
+            }
+            JSONArray buildingAssetArray = dataItem.getJSONArray("buildingAssetDistrs");
+            for (int j = 0; j < dataArray.size(); j++) {
+                LargeAssetDirs largeAssetDirs = new LargeAssetDirs();
+                JSONObject assetItem = buildingAssetArray.getJSONObject(j);
+                largeAssetDirs.setAppCode(largeLogistics.getAppCode());
+                largeAssetDirs.setCategoryName(assetItem.getString("categoryName"));
+                largeAssetDirs.setAssetNum(Long.valueOf(assetItem.getString("assetNum")));
+                buildingAssetList.add(largeAssetDirs);
+            }
+            JSONArray serviceAssetArray = dataItem.getJSONArray("serviceAssetDistrs");
+            for (int j = 0; j < dataArray.size(); j++) {
+                LargeAssetDirs largeAssetDirs = new LargeAssetDirs();
+                JSONObject assetItem = serviceAssetArray.getJSONObject(j);
+                largeAssetDirs.setAppCode(largeLogistics.getAppCode());
+                largeAssetDirs.setCategoryName(assetItem.getString("categoryName"));
+                largeAssetDirs.setAssetNum(Long.valueOf(assetItem.getString("assetNum")));
+                serviceAssetList.add(largeAssetDirs);
+            }
 
+            list.add(largeLogistics);
+        }
+        platLogisticsMapper.deleteLogistics();
+        platLogisticsMapper.insertLargePlatLogistics(list);
+        platLogisticsMapper.deleteOfficeAssetDirs();
+        platLogisticsMapper.insertOfficeAssetDirs(officeAssetList);
+        platLogisticsMapper.deleteBuildingAssetDirs();
+        platLogisticsMapper.insertBuildingAssetDirs(buildingAssetList);
+        platLogisticsMapper.deleteServiceAssetDirs();
+        platLogisticsMapper.insertServiceAssetDirs(serviceAssetList);
+    }
 
     public void getBuildingDataFirstHalf(){
         LargeBuilding largeBuilding = new LargeBuilding();

+ 146 - 0
project-zcustom/src/main/resources/mapper/zcustom/logistics/PlatLogisticsMapper.xml

@@ -0,0 +1,146 @@
+<?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.project.zcustom.mapper.logistics.PlatLogisticsMapper">
+    <resultMap type="com.project.zcustom.domain.addional.LargeLogistics" id="LargePlatLogisticsResult">
+        <result property="id"    column="id"    />
+        <result property="appCode"    column="app_code"    />
+        <result property="appParentCode"    column="app_parent_code"    />
+        <result property="codedNum"    column="coded_num"    />
+        <result property="labelNum"    column="label_num"    />
+        <result property="assetNum"    column="asset_num"    />
+        <result property="officeAssetNum"    column="office_asset_num"    />
+        <result property="stockOfficeAssetNum"    column="stock_office_asset_num"    />
+        <result property="newOfficeAssetNum"    column="new_office_asset_num"    />
+        <result property="scrapOfficeAssetNum"    column="scrap_office_asset_num"    />
+        <result property="buildingAssetNum"    column="building_asset_num"    />
+        <result property="stockBuildingAssetNum"    column="stock_building_asset_num"    />
+        <result property="newBuildingAssetNum"    column="new_building_asset_num"    />
+        <result property="scrapBuildingAssetNum"    column="scrap_building_asset_num"    />
+        <result property="serviceAssetNum"    column="service_asset_num"    />
+        <result property="stockServiceAssetNum"    column="stock_service_asset_num"    />
+        <result property="newServiceAssetNum"    column="new_service_asset_num"    />
+        <result property="scrapServiceAssetNum"    column="scrap_service_asset_num"    />
+        <result property="sceneRate"    column="scene_rate"    />
+        <result property="inspectionSchemeNum"    column="inspection_scheme_num"    />
+        <result property="importantDeviceTypeInspectionExecuteRate"    column="important_device_type_inspection_execute_rate"    />
+        <result property="inspectionAnomalyRecordNum"    column="inspection_anomaly_record_num"    />
+        <result property="repairRecordNum"    column="repair_record_num"    />
+        <result property="maintenanceRecordNum"    column="maintenance_record_num"    />
+    </resultMap>
+
+    <resultMap type="com.project.zcustom.domain.addional.LargeAssetDirs" id="LargePlatAssetDirsResult">
+        <result property="id"    column="id"    />
+        <result property="appCode"    column="app_code"    />
+        <result property="categoryName"    column="category_name"    />
+        <result property="assetNum"    column="asset_num"    />
+    </resultMap>
+
+    <insert id="insertLargePlatLogistics" parameterType="com.project.zcustom.domain.addional.LargeLogistics">
+        insert into large_plat_logistics (app_code,
+                                          app_parent_code,
+                                          coded_num,
+                                          label_num,
+                                          asset_num,
+                                          office_asset_num,
+                                          stock_office_asset_num,
+                                            new_office_asset_num,
+                                            scrap_office_asset_num,
+                                            building_asset_num,
+                                            stock_building_asset_num,
+                                            new_building_asset_num,
+                                            scrap_building_asset_num,
+                                            service_asset_num,
+                                            stock_service_asset_num,
+                                            new_service_asset_num,
+                                            scrap_service_asset_num,
+                                            scene_rate,
+                                            inspection_scheme_num,
+                                            important_device_type_inspection_execute_rate,
+                                            inspection_anomaly_record_num,
+                                            repair_record_num,
+                                            maintenance_record_num                            )
+        values
+        <foreach collection="list" item="item" separator="," close=";">
+            <trim prefix="(" suffix=")" suffixOverrides=",">
+            #{item.appCode},
+            #{item.appParentCode},
+            #{item.codedNum},
+            #{item.labelNum},
+            #{item.assetNum},
+            #{item.officeAssetNum},
+            #{item.stockOfficeAssetNum},
+            #{item.newOfficeAssetNum},
+            #{item.scrapOfficeAssetNum},
+            #{item.buildingAssetNum},
+            #{item.stockBuildingAssetNum},
+            #{item.newBuildingAssetNum},
+            #{item.scrapBuildingAssetNum},
+            #{item.serviceAssetNum},
+            #{item.stockServiceAssetNum},
+            #{item.newServiceAssetNum},
+            #{item.scrapServiceAssetNum},
+            #{item.sceneRate},
+            #{item.inspectionSchemeNum},
+            #{item.importantDeviceTypeInspectionExecuteRate},
+            #{item.inspectionAnomalyRecordNum},
+            #{item.repairRecordNum},
+            #{item.maintenanceRecordNum},
+            </trim>
+        </foreach>
+    </insert>
+
+
+    <insert id="insertOfficeAssetDirs" parameterType="com.project.zcustom.domain.addional.LargeAssetDirs">
+        insert into large_plat_logistics_office_asset (app_code,category_name,asset_num)
+        values
+        <foreach collection="list" item="item" separator="," close=";">
+            <trim prefix="(" suffix=")" suffixOverrides=",">
+                #{item.appCode},
+                #{item.categoryName},
+                #{item.assetNum}
+            </trim>
+        </foreach>
+    </insert>
+
+    <insert id="insertBuildingAssetDirs" parameterType="com.project.zcustom.domain.addional.LargeAssetDirs">
+        insert into large_plat_logistics_building_asset (app_code,category_name,asset_num)
+        values
+        <foreach collection="list" item="item" separator="," close=";">
+            <trim prefix="(" suffix=")" suffixOverrides=",">
+                #{item.appCode},
+                #{item.categoryName},
+                #{item.assetNum}
+            </trim>
+        </foreach>
+    </insert>
+
+    <insert id="insertServiceAssetDirs" parameterType="com.project.zcustom.domain.addional.LargeAssetDirs">
+        insert into large_plat_logistics_service_asset (app_code,category_name,asset_num)
+        values
+        <foreach collection="list" item="item" separator="," close=";">
+            <trim prefix="(" suffix=")" suffixOverrides=",">
+                #{item.appCode},
+                #{item.categoryName},
+                #{item.assetNum}
+            </trim>
+        </foreach>
+    </insert>
+
+    <delete id="deleteLogistics">
+        DELETE FROM `large_plat_logistics`
+    </delete>
+
+    <delete id="deleteOfficeAssetDirs">
+        DELETE FROM `large_plat_logistics_office_asset`
+    </delete>
+
+    <delete id="deleteBuildingAssetDirs">
+        DELETE FROM `large_plat_logistics_building_asset`
+    </delete>
+
+    <delete id="deleteServiceAssetDirs">
+        DELETE FROM `large_plat_logistics_service_asset`
+    </delete>
+</mapper>