From 48b69b857ae860050a790be63b317e15be49f1b1 Mon Sep 17 00:00:00 2001 From: dengzedong <dengzedong@email> Date: 星期二, 13 五月 2025 16:57:41 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/PowerMaxdemandDetService.java | 5 + ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java | 81 +++++++++++++++++--- ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/impl/PowerMaxdemandDetServiceImpl.java | 74 +++++++++++++++++- ansteel-biz/src/main/java/com/iailab/module/ansteel/power/entity/PowerCapacitorHisEntity.java | 3 doc/鞍钢数据接口文档_master.doc | 0 ansteel-biz/src/main/java/com/iailab/module/ansteel/api/dto/PowerCapacitorStatusDTO.java | 6 ansteel-biz/src/main/java/com/iailab/module/ansteel/api/dto/PowerCapacitorHisDTO.java | 7 + doc/鞍钢数据接口文档_250512.doc | 0 ansteel-biz/src/main/java/com/iailab/module/ansteel/api/vo/PowerMaxDemandMainPageReqVO.java | 9 ++ ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunPowerMaxdemandTask.java | 41 +-------- ansteel-biz/src/main/java/com/iailab/module/ansteel/power/dao/PowerMaxdemandMainDao.java | 2 ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/impl/PowerCapacitorHisServiceImpl.java | 8 ++ 12 files changed, 178 insertions(+), 58 deletions(-) diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java index 795f7da..bdcf1d2 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java @@ -3,6 +3,7 @@ import cn.hutool.core.util.NumberUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.iailab.framework.common.exception.ErrorCode; import com.iailab.framework.common.exception.enums.GlobalErrorCodeConstants; import com.iailab.framework.common.pojo.CommonResult; import com.iailab.framework.common.pojo.PageResult; @@ -38,6 +39,7 @@ import java.util.*; import java.util.stream.Collectors; +import static com.iailab.framework.common.pojo.CommonResult.error; import static com.iailab.framework.common.pojo.CommonResult.success; /** @@ -93,6 +95,7 @@ @Autowired private PowerMaxdemandMainService powerMaxDemandMainService; + @Autowired private PowerMaxdemandDetService powerMaxdemandDetService; @@ -431,8 +434,51 @@ @GetMapping("/capacitor-status/list") @Operation(summary = "功率因数-电容器投退状态") public CommonResult<List<PowerCapacitorStatusDTO>> getPowerCapacitorStatusList(@RequestParam Map<String, Object> params) { + List<PowerCapacitorStatusDTO> result = new ArrayList<>(); List<PowerCapacitorStatusEntity> list = powerCapacitorStatusService.list(params); - return success(ConvertUtils.sourceToTarget(list, PowerCapacitorStatusDTO.class)); + for (PowerCapacitorStatusEntity entity : list) { + PowerCapacitorStatusDTO dto = new PowerCapacitorStatusDTO(); + dto.setId(entity.getId()); + dto.setName(entity.getName()); + dto.setRemark(entity.getRemark()); + dto.setMainCount(DecimalUtil.toBigDecimal(entity.getMainCount()).intValue()); + dto.setChildCount(DecimalUtil.toBigDecimal(entity.getChildCount()).intValue()); + int onCount = 0; + Map<String, Object> params1 = new HashMap<>(); + params1.put("statusId", entity.getId()); + List<PowerCapacitorDetEntity> detList = powerCapacitorDetService.list(params1); + if (CollectionUtils.isEmpty(detList)) { + dto.setOnCount(onCount); + continue; + } + List<String> points = new ArrayList<>(); + Map<String, Object> pointsRealValue = new HashMap<>(); + for (PowerCapacitorDetEntity det : detList) { + if (StringUtils.isNotBlank(det.getPointNo())) { + points.add(det.getPointNo()); + } + } + if (!CollectionUtils.isEmpty(points)) { + pointsRealValue = dataPointApi.queryPointsRealValue(points); + } + for (PowerCapacitorDetEntity det : detList) { + if (StringUtils.isBlank(det.getId())) { + continue; + } + Object obj = pointsRealValue.get(det.getPointNo()); + if (obj == null) { + continue; + } + BigDecimal pv = new BigDecimal(obj.toString()); + if (pv.compareTo(BigDecimal.ZERO) <= 0) { + continue; + } + onCount ++; + } + dto.setOnCount(onCount); + result.add(dto); + } + return success(result); } @GetMapping("/capacitor-det/list") @@ -440,10 +486,13 @@ public CommonResult<List<PowerCapacitorDetDTO>> getPowerCapacitorDetList(@RequestParam Map<String, Object> params) { List<PowerCapacitorDetEntity> list = powerCapacitorDetService.list(params); log.info("list.size=" + list.size()); - List<String> points = list.stream().map(item -> { - return item.getPointNo(); - }).collect(Collectors.toList()); + List<String> points = new ArrayList<>(); Map<String, Object> pointsRealValue = new HashMap<>(); + for (PowerCapacitorDetEntity det : list) { + if (StringUtils.isNotBlank(det.getPointNo())) { + points.add(det.getPointNo()); + } + } if (!CollectionUtils.isEmpty(points)) { pointsRealValue = dataPointApi.queryPointsRealValue(points); } @@ -802,7 +851,7 @@ apiPointValueQueryDTO.setEnd(new Date()); List<ApiPointValueDTO> monthChartData = dataPointApi.queryPointHistoryValue(apiPointValueQueryDTO); List<Double> monthValues = new ArrayList<>(); - if (CollectionUtils.isEmpty(monthChartData)) { + if (!CollectionUtils.isEmpty(monthChartData)) { monthValues = monthChartData.stream().map(item -> item.getV()).collect(Collectors.toList()); result.setMax(monthValues.stream().max(Double::compareTo).get()); result.setMin(monthValues.stream().min(Double::compareTo).get()); @@ -1107,15 +1156,12 @@ @PostMapping("/power-maxdemand/page") @Operation(summary = "负荷移植-最大需量发生记录分页") public CommonResult<PageResult<PowerMaxDemandMainDTO>> getPowerMaxDemandMainPage(@RequestBody PowerMaxDemandMainPageReqVO reqVO) { + if (StringUtils.isBlank(reqVO.getCode())) { + log.info("code is blank"); + return error(GlobalErrorCodeConstants.BAD_REQUEST); + } PageResult<PowerMaxdemandMainEntity> page = powerMaxDemandMainService.page(reqVO); PageResult<PowerMaxDemandMainDTO> result = BeanUtils.toBean(page, PowerMaxDemandMainDTO.class); - /*List<String> parentIds = result.getList() - .stream() - .map(PowerMaxDemandMainDTO::getId) - .collect(Collectors.toList()); - List<PowerMaxdemandDetEntity> children = powerMaxdemandDetService.selectListByRelIds(parentIds); - Map<String, List<PowerMaxdemandDetEntity>> childrenMap = children.stream() - .collect(Collectors.groupingBy(PowerMaxdemandDetEntity::getRelId));*/ result.getList().forEach(dto0 -> { List<PowerMaxdemandDetEntity> detList0 = powerMaxdemandDetService.selectListByRelId(dto0.getId(), dto0.getOccurTime()); dto0.setChildren(ConvertUtils.sourceToTarget(detList0, PowerMaxdemandDetDTO.class)); @@ -1128,4 +1174,15 @@ }); return success(result); } + + @PostMapping("/power-maxdemand/det-list") + @Operation(summary = "负荷移植-最大需量发生记录详情") + public CommonResult<List<PowerMaxdemandDetDTO>> getPowerMaxDemandDetList(@RequestParam Map<String, Object> params) { + String relId = (String) params.get("relId"); + if (StringUtils.isBlank(relId)) { + return error(GlobalErrorCodeConstants.BAD_REQUEST); + } + List<PowerMaxdemandDetEntity> list = powerMaxdemandDetService.selectListByRelId(relId); + return success(ConvertUtils.sourceToTarget(list, PowerMaxdemandDetDTO.class)); + } } \ No newline at end of file diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/dto/PowerCapacitorHisDTO.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/dto/PowerCapacitorHisDTO.java index 70481fa..62e2b1d 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/dto/PowerCapacitorHisDTO.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/dto/PowerCapacitorHisDTO.java @@ -1,9 +1,11 @@ package com.iailab.module.ansteel.api.dto; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.io.Serializable; +import java.util.Date; /** * @author PanZhibao @@ -30,6 +32,7 @@ @Schema(description = "备注") private String remark; - @Schema(description = "i创建时间d") - private String createDate; + @Schema(description = "创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date createDate; } \ No newline at end of file diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/dto/PowerCapacitorStatusDTO.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/dto/PowerCapacitorStatusDTO.java index 4cb8a2a..5b4bd01 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/dto/PowerCapacitorStatusDTO.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/dto/PowerCapacitorStatusDTO.java @@ -23,13 +23,13 @@ private String name; @Schema(description = "主变数量") - private String mainCount; + private Integer mainCount; @Schema(description = "下属数量") - private String childCount; + private Integer childCount; @Schema(description = "投运数量") - private String onCount; + private Integer onCount; @Schema(description = "备注") private String remark; diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/vo/PowerMaxDemandMainPageReqVO.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/vo/PowerMaxDemandMainPageReqVO.java index 994628e..c56a71c 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/vo/PowerMaxDemandMainPageReqVO.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/vo/PowerMaxDemandMainPageReqVO.java @@ -1,5 +1,6 @@ package com.iailab.module.ansteel.api.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.iailab.framework.common.pojo.PageParam; import com.iailab.module.ansteel.power.entity.PowerMaxdemandDetEntity; import io.swagger.v3.oas.annotations.media.Schema; @@ -25,4 +26,12 @@ @Schema(description = "名称") private String code; + + @Schema(description = "开始时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date startTime; + + @Schema(description = "结束时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date endTime; } diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunPowerMaxdemandTask.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunPowerMaxdemandTask.java index 51d1f0d..92290bb 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunPowerMaxdemandTask.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunPowerMaxdemandTask.java @@ -109,42 +109,15 @@ mainEntity.setOccurTime(occurTime); mainEntity.setMaxDemand(todayMax); String mainId = powerMaxdemandMainService.add(mainEntity); - - Map<String, Object> params1 = new HashMap<>(); - params1.put("groupName", demand.getName()); - List<PowerNetDropdownEntity> dropdownList = powerNetDropdownService.list(params1); - if (CollectionUtils.isEmpty(dropdownList)) { - logger.info("dropdownList is empty"); + // 插入第一层children + List<PowerMaxdemandDetEntity> detList0 = powerMaxdemandDetService.addList(mainId, demand.getName(), occurTime); + if(CollectionUtils.isEmpty(detList0)){ + logger.info("detList0 is empty"); continue; } - Calendar calendar1 = Calendar.getInstance(); - calendar1.setTime(occurTime); - calendar1.add(Calendar.MINUTE, 1); - int sort = 0; - for (PowerNetDropdownEntity dropdown : dropdownList) { - if (StringUtils.isBlank(dropdown.getExt1())) { - logger.info(dropdown.getNodeCode() + ":dropdown.getExt1() is empty"); - continue; - } - logger.info(dropdown.getNodeCode() + ":dropdown.getExt1() = " + dropdown.getExt1()); - ApiPointValueQueryDTO pointValueQuery1 = new ApiPointValueQueryDTO(); - pointValueQuery1.setStart(occurTime); - pointValueQuery1.setEnd(calendar1.getTime()); - pointValueQuery1.setPointNo(dropdown.getExt1()); - List<ApiPointValueDTO> valueList1 = dataPointApi.queryPointHistoryValue(pointValueQuery1); - if (CollectionUtils.isEmpty(valueList1)) { - logger.info("valueList1 is empty"); - continue; - } - PowerMaxdemandDetEntity detEntity = new PowerMaxdemandDetEntity(); - detEntity.setRelId(mainId); - detEntity.setCode(dropdown.getNodeCode()); - detEntity.setName(dropdown.getNodeName()); - detEntity.setOccurTime(occurTime); - detEntity.setMaxDemand(BigDecimal.valueOf(valueList1.get(0).getV())); - detEntity.setSort(sort); - powerMaxdemandDetService.add(detEntity); - sort ++; + for (PowerMaxdemandDetEntity detEntity : detList0) { + // 插入第二层children + powerMaxdemandDetService.addList(detEntity.getId(), detEntity.getName(), occurTime); } } logger.info("RunPowerMaxdemandTask end"); diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/dao/PowerMaxdemandMainDao.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/dao/PowerMaxdemandMainDao.java index a97a23d..c7b342b 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/dao/PowerMaxdemandMainDao.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/dao/PowerMaxdemandMainDao.java @@ -19,6 +19,8 @@ return selectPage(reqVO, new LambdaQueryWrapperX<PowerMaxdemandMainEntity>() .likeIfPresent(PowerMaxdemandMainEntity::getName, reqVO.getName()) .eqIfPresent(PowerMaxdemandMainEntity::getCode, reqVO.getCode()) + .geIfPresent(PowerMaxdemandMainEntity::getOccurTime, reqVO.getStartTime()) + .le(PowerMaxdemandMainEntity::getOccurTime, reqVO.getEndTime()) .orderByDesc(PowerMaxdemandMainEntity::getOccurTime)); } diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/entity/PowerCapacitorHisEntity.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/entity/PowerCapacitorHisEntity.java index 2f6047b..152be93 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/entity/PowerCapacitorHisEntity.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/entity/PowerCapacitorHisEntity.java @@ -5,6 +5,7 @@ import lombok.Data; import java.io.Serializable; +import java.util.Date; /** * @author PanZhibao @@ -50,5 +51,5 @@ /** * 创建时间 */ - private String createDate; + private Date createDate; } \ No newline at end of file diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/PowerMaxdemandDetService.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/PowerMaxdemandDetService.java index 4b7ae95..157575f 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/PowerMaxdemandDetService.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/PowerMaxdemandDetService.java @@ -1,6 +1,5 @@ package com.iailab.module.ansteel.power.service; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.iailab.module.ansteel.power.entity.PowerMaxdemandDetEntity; import java.util.Date; @@ -15,7 +14,11 @@ void add(PowerMaxdemandDetEntity entity); + List<PowerMaxdemandDetEntity> addList(String relId, String groupName, Date occurTime); + List<PowerMaxdemandDetEntity> selectListByRelIds(List<String> relIds); List<PowerMaxdemandDetEntity> selectListByRelId(String relId, Date occurTime); + + List<PowerMaxdemandDetEntity> selectListByRelId(String relId); } diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/impl/PowerCapacitorHisServiceImpl.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/impl/PowerCapacitorHisServiceImpl.java index 7d70374..f601168 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/impl/PowerCapacitorHisServiceImpl.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/impl/PowerCapacitorHisServiceImpl.java @@ -9,8 +9,10 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.Date; import java.util.List; import java.util.Map; +import java.util.UUID; /** * @author PanZhibao @@ -32,4 +34,10 @@ .orderByDesc("create_date"); return powerCapacitorHisDao.selectList(queryWrapper); } + + public void add(PowerCapacitorHisEntity entity) { + entity.setId(UUID.randomUUID().toString()); + entity.setCreateDate(new Date()); + powerCapacitorHisDao.insert(entity); + } } \ No newline at end of file diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/impl/PowerMaxdemandDetServiceImpl.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/impl/PowerMaxdemandDetServiceImpl.java index a15ed08..e332b69 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/impl/PowerMaxdemandDetServiceImpl.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/power/service/impl/PowerMaxdemandDetServiceImpl.java @@ -3,15 +3,21 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.iailab.module.ansteel.power.dao.PowerMaxdemandDetDao; import com.iailab.module.ansteel.power.entity.PowerMaxdemandDetEntity; +import com.iailab.module.ansteel.power.entity.PowerNetDropdownEntity; import com.iailab.module.ansteel.power.service.PowerMaxdemandDetService; +import com.iailab.module.ansteel.power.service.PowerNetDropdownService; +import com.iailab.module.data.api.point.DataPointApi; +import com.iailab.module.data.api.point.dto.ApiPointValueDTO; +import com.iailab.module.data.api.point.dto.ApiPointValueQueryDTO; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; import javax.annotation.Resource; -import java.util.Collections; -import java.util.Date; -import java.util.List; -import java.util.UUID; +import java.math.BigDecimal; +import java.util.*; /** * @author PanZhibao @@ -25,10 +31,59 @@ @Resource private PowerMaxdemandDetDao powerMaxdemandDetDao; + @Autowired + private PowerNetDropdownService powerNetDropdownService; + + @Resource + private DataPointApi dataPointApi; + @Override public void add(PowerMaxdemandDetEntity entity) { entity.setId(UUID.randomUUID().toString()); powerMaxdemandDetDao.insert(entity); + } + + @Override + public List<PowerMaxdemandDetEntity> addList(String relId, String groupName, Date occurTime) { + List<PowerMaxdemandDetEntity> result = new ArrayList<>(); + Map<String, Object> params1 = new HashMap<>(); + params1.put("groupName", groupName); + List<PowerNetDropdownEntity> dropdownList = powerNetDropdownService.list(params1); + if (CollectionUtils.isEmpty(dropdownList)) { + log.info("dropdownList is empty"); + return result; + } + Calendar calendar1 = Calendar.getInstance(); + calendar1.setTime(occurTime); + calendar1.add(Calendar.MINUTE, 1); + int sort0 = 0; + for (PowerNetDropdownEntity dropdown : dropdownList) { + if (StringUtils.isBlank(dropdown.getExt1())) { + log.info(dropdown.getNodeCode() + ":dropdown.getExt1() is empty"); + continue; + } + log.info(dropdown.getNodeCode() + ":dropdown.getExt1() = " + dropdown.getExt1()); + ApiPointValueQueryDTO pointValueQuery1 = new ApiPointValueQueryDTO(); + pointValueQuery1.setStart(occurTime); + pointValueQuery1.setEnd(calendar1.getTime()); + pointValueQuery1.setPointNo(dropdown.getExt1()); + List<ApiPointValueDTO> valueList1 = dataPointApi.queryPointHistoryValue(pointValueQuery1); + if (CollectionUtils.isEmpty(valueList1)) { + log.info("valueList1 is empty"); + continue; + } + PowerMaxdemandDetEntity detEntity0 = new PowerMaxdemandDetEntity(); + detEntity0.setRelId(relId); + detEntity0.setCode(dropdown.getNodeCode()); + detEntity0.setName(dropdown.getNodeName()); + detEntity0.setOccurTime(occurTime); + detEntity0.setMaxDemand(BigDecimal.valueOf(valueList1.get(0).getV())); + detEntity0.setSort(sort0); + this.add(detEntity0); + sort0 ++; + result.add(detEntity0); + } + return result; } @Override @@ -42,6 +97,15 @@ return powerMaxdemandDetDao.selectList( new QueryWrapper<PowerMaxdemandDetEntity>() .eq("rel_id", relId) - .eq("occur_time", occurTime)); + .eq("occur_time", occurTime) + .orderByAsc("sort")); + } + + @Override + public List<PowerMaxdemandDetEntity> selectListByRelId(String relId) { + return powerMaxdemandDetDao.selectList( + new QueryWrapper<PowerMaxdemandDetEntity>() + .eq("rel_id", relId) + .orderByAsc("sort")); } } \ No newline at end of file diff --git "a/doc/\351\236\215\351\222\242\346\225\260\346\215\256\346\216\245\345\217\243\346\226\207\346\241\243_250512.doc" "b/doc/\351\236\215\351\222\242\346\225\260\346\215\256\346\216\245\345\217\243\346\226\207\346\241\243_250512.doc" new file mode 100644 index 0000000..6d527be --- /dev/null +++ "b/doc/\351\236\215\351\222\242\346\225\260\346\215\256\346\216\245\345\217\243\346\226\207\346\241\243_250512.doc" Binary files differ diff --git "a/doc/\351\236\215\351\222\242\346\225\260\346\215\256\346\216\245\345\217\243\346\226\207\346\241\243_master.doc" "b/doc/\351\236\215\351\222\242\346\225\260\346\215\256\346\216\245\345\217\243\346\226\207\346\241\243_master.doc" index 10f31b0..6d527be 100644 --- "a/doc/\351\236\215\351\222\242\346\225\260\346\215\256\346\216\245\345\217\243\346\226\207\346\241\243_master.doc" +++ "b/doc/\351\236\215\351\222\242\346\225\260\346\215\256\346\216\245\345\217\243\346\226\207\346\241\243_master.doc" Binary files differ -- Gitblit v1.9.3