From d5eab9650cd03fdb637364a0cea2b126e5ba490b Mon Sep 17 00:00:00 2001 From: yangsb Date: Mon, 11 Mar 2024 17:10:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=B7=BB=E5=8A=A0=E4=BD=99?= =?UTF-8?q?=E6=96=99=E6=9D=BF=E3=80=81=E6=8F=90=E4=BA=A4=E4=BF=9D=E5=AD=98?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E7=BB=93=E6=9E=9C=E6=96=87=E4=BB=B6=E3=80=81?= =?UTF-8?q?=E5=BC=80=E5=A7=8B=E5=BC=80=E6=96=99=20=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../imes/module/infra/api/file/FileApi.java | 7 + .../infra/enums/ErrorCodeConstants.java | 1 + .../module/infra/api/file/FileApiImpl.java | 5 + .../infra/service/file/FileService.java | 6 + .../infra/service/file/FileServiceImpl.java | 25 + .../admin/plan/OptimizePlanController.java | 33 +- .../controller/admin/plan/PlanController.java | 9 +- .../admin/plan/vo/AddRemainReqVO.java | 42 + .../admin/plan/vo/PlateOptimize.java | 2 + .../admin/plan/vo/SavePlanPlateResult.java | 24 + .../executor/dal/dataobject/plan/PlanDO.java | 9 +- .../mysql/remainplaten/RemainPlateMapper.java | 10 + .../executor/dal/mysql/remainplaten/ss.json | 3626 +++++++++++++++++ .../rpc/config/RpcConfiguration.java | 3 +- .../optimizeplan/OptimizePlanService.java | 8 + .../optimizeplan/OptimizePlanServiceImpl.java | 92 +- .../main/resources/mapper/plan/PlanMapper.xml | 4 +- .../executor/service/zlib/ZlibTest.java | 45 +- 18 files changed, 3930 insertions(+), 21 deletions(-) create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/AddRemainReqVO.java create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/SavePlanPlateResult.java create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/RemainPlateMapper.java create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/ss.json diff --git a/cf-module-infra/cf-module-infra-api/src/main/java/com/cf/imes/module/infra/api/file/FileApi.java b/cf-module-infra/cf-module-infra-api/src/main/java/com/cf/imes/module/infra/api/file/FileApi.java index d23b2b17a..1d5618534 100644 --- a/cf-module-infra/cf-module-infra-api/src/main/java/com/cf/imes/module/infra/api/file/FileApi.java +++ b/cf-module-infra/cf-module-infra-api/src/main/java/com/cf/imes/module/infra/api/file/FileApi.java @@ -3,9 +3,11 @@ package com.cf.imes.module.infra.api.file; import com.cf.imes.framework.common.pojo.CommonResult; import com.cf.imes.module.infra.api.file.dto.FileCreateReqDTO; import com.cf.imes.module.infra.enums.ApiConstants; +import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Operation; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; @@ -57,4 +59,9 @@ public interface FileApi { @Operation(summary = "保存文件,并返回文件的访问路径") CommonResult createFile(@Valid @RequestBody FileCreateReqDTO createReqDTO); + @DeleteMapping(PREFIX + "/deleteFileByPath") + @Operation(summary = "根据文件地址删除文件") + @Parameter(name = "path", description = "文件地址", example = "url", required = true) + CommonResult deleteFileByPath(String path); + } diff --git a/cf-module-infra/cf-module-infra-api/src/main/java/com/cf/imes/module/infra/enums/ErrorCodeConstants.java b/cf-module-infra/cf-module-infra-api/src/main/java/com/cf/imes/module/infra/enums/ErrorCodeConstants.java index f9eab6440..de3c95245 100644 --- a/cf-module-infra/cf-module-infra-api/src/main/java/com/cf/imes/module/infra/enums/ErrorCodeConstants.java +++ b/cf-module-infra/cf-module-infra-api/src/main/java/com/cf/imes/module/infra/enums/ErrorCodeConstants.java @@ -31,6 +31,7 @@ public interface ErrorCodeConstants { ErrorCode FILE_PATH_EXISTS = new ErrorCode(1_001_003_000, "文件路径已存在"); ErrorCode FILE_NOT_EXISTS = new ErrorCode(1_001_003_001, "文件不存在"); ErrorCode FILE_IS_EMPTY = new ErrorCode(1_001_003_002, "文件为空"); + ErrorCode FILE_REMOVE_FAIL = new ErrorCode(1_001_003_003, "文件删除失败"); // ========== 代码生成器 1-001-004-000 ========== ErrorCode CODEGEN_TABLE_EXISTS = new ErrorCode(1_003_001_000, "表定义已经存在"); diff --git a/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/api/file/FileApiImpl.java b/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/api/file/FileApiImpl.java index f64ad4164..7f0368e8a 100644 --- a/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/api/file/FileApiImpl.java +++ b/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/api/file/FileApiImpl.java @@ -23,4 +23,9 @@ public class FileApiImpl implements FileApi { createReqDTO.getContent())); } + @Override + public CommonResult deleteFileByPath(String path) { + return success(fileService.deleteFileByPath(path)); + } + } diff --git a/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/service/file/FileService.java b/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/service/file/FileService.java index 369d2f216..22403e3d2 100644 --- a/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/service/file/FileService.java +++ b/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/service/file/FileService.java @@ -45,4 +45,10 @@ public interface FileService { */ byte[] getFileContent(Long configId, String path) throws Exception; + /** + * 删除文件 + * @param path 文件地址 + * @return + */ + Boolean deleteFileByPath(String path); } diff --git a/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/service/file/FileServiceImpl.java b/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/service/file/FileServiceImpl.java index 86c07eac6..2ab44c357 100644 --- a/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/service/file/FileServiceImpl.java +++ b/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/service/file/FileServiceImpl.java @@ -6,6 +6,7 @@ import com.cf.imes.framework.common.pojo.PageResult; import com.cf.imes.framework.common.util.io.FileUtils; import com.cf.imes.framework.file.core.client.FileClient; import com.cf.imes.framework.file.core.utils.FileTypeUtils; +import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.module.infra.controller.admin.file.vo.file.FilePageReqVO; import com.cf.imes.module.infra.dal.dataobject.file.FileDO; import com.cf.imes.module.infra.dal.mysql.file.FileMapper; @@ -14,8 +15,11 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.Objects; + import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.cf.imes.module.infra.enums.ErrorCodeConstants.FILE_NOT_EXISTS; +import static com.cf.imes.module.infra.enums.ErrorCodeConstants.FILE_REMOVE_FAIL; /** * 文件 Service 实现类 @@ -95,4 +99,25 @@ public class FileServiceImpl implements FileService { return client.getContent(path); } + @Override + public Boolean deleteFileByPath(String path) { + // 校验存在 + FileDO fileDO = fileMapper.selectOne(new LambdaQueryWrapperX().eq(FileDO::getPath, path)); + if(Objects.isNull(fileDO)) { + throw exception(FILE_NOT_EXISTS); + } + // 从文件存储器中删除 + FileClient client = fileConfigService.getFileClient(fileDO.getConfigId()); + Assert.notNull(client, "客户端({}) 不能为空", fileDO.getConfigId()); + try { + client.delete(path); + } catch (Exception e) { + throw exception(FILE_REMOVE_FAIL); + } + + // 删除记录 + fileMapper.deleteById(fileDO.getId()); + return Boolean.TRUE; + } + } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/OptimizePlanController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/OptimizePlanController.java index 1fbae2fc0..38befdf72 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/OptimizePlanController.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/OptimizePlanController.java @@ -1,18 +1,20 @@ package com.cf.imes.module.executor.controller.admin.plan; import com.cf.imes.framework.common.pojo.CommonResult; +import com.cf.imes.module.executor.controller.admin.plan.vo.AddRemainReqVO; import com.cf.imes.module.executor.controller.admin.plan.vo.PlateOptimize; +import com.cf.imes.module.executor.controller.admin.plan.vo.SavePlanPlateResult; import com.cf.imes.module.executor.service.optimizeplan.OptimizePlanService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import javax.validation.Valid; +import javax.validation.constraints.NotNull; import java.util.List; /** @@ -21,6 +23,7 @@ import java.util.List; @RestController @RequestMapping("/executor/optimize-plan") @Tag(name= "优化排单") +@Validated public class OptimizePlanController { @Resource @@ -33,4 +36,26 @@ public class OptimizePlanController { return CommonResult.success(optimizePlanService.getPlateListByPlanId(planId)); } + + @PostMapping("/addRemain") + @Operation(summary = "添加余料板") + @PreAuthorize("@ss.hasPermission('executor:optimize-plate:create')") + public CommonResult addRemain(@RequestBody @Valid AddRemainReqVO vo){ + return CommonResult.success(optimizePlanService.addRemain(vo)); + } + + @PostMapping("savePlanPlateResult") + @Operation(summary = "提交保存优化结果文件") + @PreAuthorize("@ss.hasPermission('executor:optimize-plate:create')") + public CommonResult savePlanPlateResult(SavePlanPlateResult result) { + return CommonResult.success(optimizePlanService.savePlanPlateResult(result)); + } + + @GetMapping("commit") + @Operation(summary = "开始开料") + @PreAuthorize("@ss.hasPermission('executor:optimize-plate:create')") + public CommonResult commit(@RequestParam @Valid @NotNull(message = "排单id不能空") Long planId) { + return CommonResult.success(optimizePlanService.commit(planId)); + } + } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java index 378095c95..4c4d859ee 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java @@ -133,13 +133,12 @@ public class PlanController { @Operation(summary = "导出板材 Excel") @PreAuthorize("@ss.hasPermission('executor:plan:export')") @OperateLog(type = EXPORT) - public void exportPlateExcel(@Valid PlanPageReqVO pageReqVO, + public void exportPlateExcel(@Valid GetPlateByPlanIdVO vo, HttpServletResponse response) throws IOException { - pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); - List list = planService.getPlanPage(pageReqVO).getList(); + List plateByPlanId = planService.getPlateByPlanId(vo); // 导出 Excel - ExcelUtils.write(response, "排单.xls", "数据", PlanRespVO.class, - BeanUtils.toBean(list, PlanRespVO.class)); + ExcelUtils.write(response, "排单板材.xls", "数据", PlateResList.class, + BeanUtils.toBean(plateByPlanId, PlateResList.class)); } } \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/AddRemainReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/AddRemainReqVO.java new file mode 100644 index 000000000..1e97030f8 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/AddRemainReqVO.java @@ -0,0 +1,42 @@ +package com.cf.imes.module.executor.controller.admin.plan.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.math.BigDecimal; + +/** + * @author Beal + */ +@Data +public class AddRemainReqVO { + + @Schema(description = "排单id") + private Long planId; + + @NotNull(message = "宽 不能空") + @Schema(description = "宽") + private BigDecimal width; + + @NotNull(message = "长 不能空") + @Schema(description = "长") + private BigDecimal length; + + @NotNull(message = "数量 不能空") + @Schema(description = "数量") + private Integer count; + + @Schema(description = "商品id") + private String goodsId; + + @Schema(description = "商品名称") + private String goodsName; + + @Schema(description = "材料") + private String material; + + @Schema(description = "颜色") + private String color; + +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateOptimize.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateOptimize.java index de41205b5..a11181645 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateOptimize.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateOptimize.java @@ -20,6 +20,8 @@ import java.util.List; public class PlateOptimize { @Schema(description = "是否已排") private Boolean isPlan; + @Schema(description = "商品id") + private String goodsId; @Schema(description = "商品名称") private String goodsName; @Schema(description = "商品材质") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/SavePlanPlateResult.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/SavePlanPlateResult.java new file mode 100644 index 000000000..0cd9a266e --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/SavePlanPlateResult.java @@ -0,0 +1,24 @@ +package com.cf.imes.module.executor.controller.admin.plan.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import org.springframework.web.multipart.MultipartFile; +import javax.validation.constraints.NotNull; + +/** + * @author Beal + */ +@Data +public class SavePlanPlateResult { + + @NotNull(message = "排单id") + @Schema(description = "排单id") + private Long planId; + + @NotNull(message = "文件附件不能为空") + private MultipartFile placeOrder; + + @NotNull(message = "文件附件不能为空") + private MultipartFile placeData; +} + diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plan/PlanDO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plan/PlanDO.java index 0b13344d4..9093bed1a 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plan/PlanDO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plan/PlanDO.java @@ -61,7 +61,14 @@ public class PlanDO extends BaseDO { * 生产单号 */ private String orderNos; - + /** + * 排单优化文件地址 + */ + private String placeDateFileUrl; + /** + * 排单优化文件地址 + */ + private String placeOrderFileUrl; /** * 备注 */ diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/RemainPlateMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/RemainPlateMapper.java new file mode 100644 index 000000000..83be2922b --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/RemainPlateMapper.java @@ -0,0 +1,10 @@ +package com.cf.imes.module.executor.dal.mysql.remainplaten; + +import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX; +import com.cf.imes.module.executor.dal.dataobject.remainplaten.RemainPlateDO; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface RemainPlateMapper extends BaseMapperX { + +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/ss.json b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/ss.json new file mode 100644 index 000000000..d7faa2216 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/ss.json @@ -0,0 +1,3626 @@ +{ + "AreaID": 4686, + "AreaName": "开料机台", + "PlanOrder": { + "goodsIDList": null, + "ID": 134289, + "PlanCode": "PD240102002614", + "State": 0, + "MachineID": 4686, + "CreateTime": "2024-01-02T16:07:00", + "CreatorID": 658, + "PlanTime": "2024-01-02T16:07:00", + "ProduceTime": "0001-01-01T00:00:00", + "ProducerID": 0, + "Remark": "", + "IsPay": false, + "CompanyID": 1108, + "ModifyTime": "0001-01-01T00:00:00", + "PlanType": 1, + "OrderNos": "[20231124029547, 20231218029769]", + "BlockInfo": "多层板--暖白dfdfgsdg--18--2440*1220--2片--2.426;材料2--颜色2--18--2501*1221--1片--0.72", + "SaleOrderList": null, + "Deleted": false, + "Sort": 0 + }, + "MetrialList": [ + { + "OrderNo": "PD240102002614", + "GoodsID": 2595, + "GoodsName": "多层板>", + "Specification": "多层板", + "Metrial": "多层板", + "Color": "暖白dfdfgsdg", + "Brank": "多层板dfghdfgh", + "Width": 1215, + "Length": 2435, + "Thickness": 18, + "Border": 1, + "CutDia": 6, + "CutGap": 1, + "IsSorted": true, + "BoardCount": 1, + "MinBoardID": 1, + "MaxBoardID": 1, + "AvgLyr_All": 2.426, + "AvgLyr_NoLastOne": 2.426, + "Lyr_LastOne": 2.426, + "CompanyID": 0, + "UsedBoardMessage": "[{\"Bi\":1,\"W\":1215,\"L\":2435,\"Si\":0,\"So\":\"\",\"No\":\"\",\"RM\":\"\",\"LK\":false,\"scrapPts\":null,\"scrapBlocks\":[],\"LE\":false,\"RE\":false}]", + "BlockPlaceMessage": "[{\"zzInfo\":null,\"Bi\":1,\"Bo\":2311001625348,\"X\":603,\"Y\":1,\"Pi\":2,\"Ps\":4,\"Ci\":1,\"Ca\":0,\"CP\":3,\"iA\":true,\"iO\":false,\"Dh\":true,\"Dm\":true,\"OF\":0,\"type\":0,\"points\":[],\"OrgSizeOutOff\":{\"left\":0,\"right\":0,\"upper\":0,\"under\":0,\"width\":0,\"length\":0,\"outWidth\":0,\"outLength\":0,\"hasDone\":false},\"SizeOutOff\":{\"left\":3.5,\"right\":3.5,\"upper\":3.5,\"under\":3.5,\"width\":7,\"length\":7,\"outWidth\":0,\"outLength\":0,\"hasDone\":false},\"PlaceOffX\":3.5,\"PlaceOffY\":3.5},{\"zzInfo\":null,\"Bi\":1,\"Bo\":2311001625349,\"X\":1,\"Y\":1,\"Pi\":1,\"Ps\":4,\"Ci\":2,\"Ca\":0,\"CP\":2,\"iA\":true,\"iO\":false,\"Dh\":true,\"Dm\":true,\"OF\":0,\"type\":0,\"points\":[],\"OrgSizeOutOff\":{\"left\":0,\"right\":0,\"upper\":0,\"under\":0,\"width\":0,\"length\":0,\"outWidth\":0,\"outLength\":0,\"hasDone\":false},\"SizeOutOff\":{\"left\":3.5,\"right\":3.5,\"upper\":3.5,\"under\":3.5,\"width\":7,\"length\":7,\"outWidth\":0,\"outLength\":0,\"hasDone\":false},\"PlaceOffX\":3.5,\"PlaceOffY\":3.5}]", + "State": 0, + "HasWave": true, + "OrgWidth": 1220, + "OrgLength": 2440, + "PreCutValue": 0, + "HelpCut": false, + "SameKnifeHelpCutGap": 0, + "CutKnifeID": 1, + "HelpKnifeID": -1, + "BoardCount_Remain": 0, + "RemainBoardMessage": "[{\"RemainID\":0,\"BoardNo\":\"\",\"Width\":300.5,\"Length\":400,\"Count\":1,\"UseCount\":0}]", + "ScrapBoardList": [], + "LastSaveDate": "2024-03-11 15:09:53" + }, + { + "OrderNo": "PD240102002614", + "GoodsID": 3819, + "GoodsName": "我是板材2", + "Specification": "2500*1220*18", + "Metrial": "材料2", + "Color": "颜色2", + "Brank": "品牌2", + "Width": 1215, + "Length": 2435, + "Thickness": 18, + "Border": 1, + "CutDia": 6, + "CutGap": 1, + "IsSorted": true, + "BoardCount": 1, + "MinBoardID": 1, + "MaxBoardID": 1, + "AvgLyr_All": 0.72, + "AvgLyr_NoLastOne": 0.72, + "Lyr_LastOne": 0.72, + "CompanyID": 0, + "UsedBoardMessage": "[{\"Bi\":1,\"W\":1215,\"L\":2435,\"Si\":0,\"So\":\"\",\"No\":\"\",\"RM\":\"\",\"LK\":false,\"scrapPts\":null,\"scrapBlocks\":[],\"LE\":false,\"RE\":false}]", + "BlockPlaceMessage": "[{\"zzInfo\":null,\"Bi\":1,\"Bo\":2312002515815,\"X\":1,\"Y\":1,\"Pi\":1,\"Ps\":4,\"Ci\":1,\"Ca\":0,\"CP\":1,\"iA\":true,\"iO\":false,\"Dh\":true,\"Dm\":true,\"OF\":0,\"type\":0,\"points\":[],\"OrgSizeOutOff\":{\"left\":0,\"right\":0,\"upper\":0,\"under\":0,\"width\":0,\"length\":0,\"outWidth\":0,\"outLength\":0,\"hasDone\":false},\"SizeOutOff\":{\"left\":3.5,\"right\":3.5,\"upper\":3.5,\"under\":3.5,\"width\":7,\"length\":7,\"outWidth\":0,\"outLength\":0,\"hasDone\":false},\"PlaceOffX\":3.5,\"PlaceOffY\":3.5}]", + "State": 0, + "HasWave": true, + "OrgWidth": 1221, + "OrgLength": 2501, + "PreCutValue": 0, + "HelpCut": false, + "SameKnifeHelpCutGap": 0, + "CutKnifeID": 1, + "HelpKnifeID": -1, + "BoardCount_Remain": 0, + "RemainBoardMessage": "[]", + "ScrapBoardList": [], + "LastSaveDate": "2024-03-11 15:09:53" + } + ], + "OrderList": [ + { + "CustomerID": 9297, + "CustomerName": "1", + "CustomerPhone": "12355555551", + "SaleDate": "2023-12-18T15:30:58", + "SalePersonNo": 658, + "Consignee": "111", + "ConsigneePhone": "12345678912", + "ConsigneeAddress": "11", + "OrderState": 4, + "OrderMoney": 1756.2, + "Remark": "", + "CustomOrderNo": "", + "DeliveryDate": "2024-01-07T00:00:00", + "PushConfig": false, + "OfferListStr": null, + "CancelState": 0, + "ItemList": null, + "GoodsList": null, + "OfferList": null, + "TotalOrderOfferList": null, + "BlockList": null, + "DataBlockList": null, + "ObjectList": null, + "DataObjectList": null, + "GoodsInfoList": null, + "OrderProcessList": null, + "EditFun": { + "customer": 1 + }, + "SalePerson": "chenlh", + "CdUserID": 658, + "CdUser": "chenlh", + "OrderNo": 20231218029769, + "CreateTime": "2023-12-18T15:30:58", + "CompanyID": 1108, + "SchduleDeliveryDate": "0001-01-01T00:00:00", + "OrderType": 2, + "OrderSort": 0, + "CadDataType": 0, + "Deleted": false, + "ProcessState": null + }, + { + "CustomerID": 9297, + "CustomerName": "1", + "CustomerPhone": "12355555551", + "SaleDate": "2023-11-24T16:23:58", + "SalePersonNo": 658, + "Consignee": "1", + "ConsigneePhone": "11111111111", + "ConsigneeAddress": "1", + "OrderState": 4, + "OrderMoney": 242.6, + "Remark": "", + "CustomOrderNo": "", + "DeliveryDate": "2023-12-14T00:00:00", + "PushConfig": false, + "OfferListStr": null, + "CancelState": 0, + "ItemList": null, + "GoodsList": null, + "OfferList": null, + "TotalOrderOfferList": null, + "BlockList": null, + "DataBlockList": null, + "ObjectList": null, + "DataObjectList": null, + "GoodsInfoList": null, + "OrderProcessList": null, + "EditFun": { + "customer": 1 + }, + "SalePerson": "chenlh", + "CdUserID": 658, + "CdUser": "chenlh", + "OrderNo": 20231124029547, + "CreateTime": "2023-11-24T16:23:58", + "CompanyID": 1108, + "SchduleDeliveryDate": "0001-01-01T00:00:00", + "OrderType": 2, + "OrderSort": 0, + "CadDataType": 0, + "Deleted": false, + "ProcessState": null + } + ], + "ConfigList": [ + { + "Type": 1, + "Setting": "{\"UseWorkPanelSize\":true,\"BoardWidth\":1215,\"BoardLength\":2435,\"BoardSizeList\":[],\"BoardBorder\":1,\"BoardBorder_B\":2,\"CutBorderOff1\":0,\"CutBorderOff2\":0,\"KnifeDia\":6,\"CutGap\":1,\"PreCutValue\":0,\"OriginPointPosition\":1,\"WidthSideAxis\":1,\"LengthSideAxis\":1,\"LocatorPosition\":1,\"UseLocator4Place\":false,\"OffsetX_Board1\":5,\"OffsetY_Board1\":6,\"LocatorPosition_Block\":1,\"OffsetX_Block\":7,\"OffsetY_Block\":8,\"scrapBlockSquare\":200,\"srcapBlockWidthMin\":200,\"scrapBlockWidthMax\":800,\"FreeHeight\":36,\"FreeLocationX\":0,\"FreeLocationY\":2440,\"FreeSpeed\":14997,\"WorkStartHeight\":0,\"WorkStartSpeed\":2995,\"WorkStartDistance\":16,\"WorkPreDistance\":1,\"WorkSpeed\":7995,\"WorkCornerSpeed\":2996,\"WorkEndSpeed\":2996,\"WorkEndDistace\":22,\"sameBorderHighSpeed\":0,\"innerCornerDistence\":0,\"innerCornerSpeed\":5000,\"HoleFreeSpeed\":2398,\"HoleFirstDepth\":1,\"HoleFirstSpeed\":796,\"HoleSpeed\":1196,\"ModelSpeed\":7998,\"AllowDoubleHoleFirstSort\":false,\"YuLiaoBoardDo2FaceBlock\":false,\"ShowDoubleHoleFirst4Place\":false,\"AutoSortingMinWidth\":150,\"FirstCutBorderInFaceB\":false,\"TongHoleOnlyOneTime\":false,\"TongHoleUseTwoTime\":false,\"TongKongDoBackFace\":false,\"AllowDoubleSplit\":false,\"SplitThickness\":40,\"SplitDepth\":8,\"LimitDouleSplit\":false,\"DoubleSplitWidth\":100,\"DoubleSplitLength\":100,\"SplitBlockSeqIds\":\"\",\"UseDianZiJuMethod\":false,\"DisposeCutBlock\":false,\"ThroughModelSkewCutLength\":0,\"UseNewSort\":false,\"UseOrgSortInYX\":false,\"CutBlockInModelFirst\":false,\"LastBoardReplace\":false,\"LastBoardReplaceTime\":5,\"HelpCutKnifeNo\":0,\"HelpCutKnifeDepth\":0,\"HelpCutKnifeWaitingCode\":\"\",\"HelpCutKnifeWaitingCode2\":\"\",\"UseSecodeKnifeBlockName\":\"\",\"UseSecondKnifeBlockWidth\":0,\"UseSecondKnifeBlockLength\":0,\"UseSameKnifeToHelpCut\":false,\"UseSameKnifeToHelpCutGap\":2,\"UseNewKnifeModule\":false,\"KnifeIDForHole\":2,\"Knifes4Hole\":\"1,\",\"ModelKnifeGroup\":[],\"KnifeList\":[{\"KnifeID\":1,\"KnifeName\":\"切割刀1\",\"AxleID\":0,\"AllowCut\":true,\"AllowHole\":true,\"AllowModel\":true,\"AllowPrevRun\":false,\"Diameter\":6,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":2,\"KnifeName\":\"切割刀2\",\"AxleID\":0,\"AllowCut\":true,\"AllowHole\":true,\"AllowModel\":true,\"AllowPrevRun\":false,\"Diameter\":5,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":3,\"KnifeName\":\"1号排钻刀\",\"AxleID\":0,\"AllowCut\":false,\"AllowHole\":true,\"AllowModel\":false,\"AllowPrevRun\":false,\"Diameter\":5,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":4,\"KnifeName\":\"2号排钻刀\",\"AxleID\":0,\"AllowCut\":false,\"AllowHole\":true,\"AllowModel\":false,\"AllowPrevRun\":false,\"Diameter\":8,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":5,\"KnifeName\":\"3号排钻刀\",\"AxleID\":0,\"AllowCut\":false,\"AllowHole\":true,\"AllowModel\":false,\"AllowPrevRun\":false,\"Diameter\":10,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":6,\"KnifeName\":\"4号排钻刀\",\"AxleID\":0,\"AllowCut\":false,\"AllowHole\":true,\"AllowModel\":false,\"AllowPrevRun\":false,\"Diameter\":15,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":7,\"KnifeName\":\"5号排钻刀\",\"AxleID\":0,\"AllowCut\":false,\"AllowHole\":true,\"AllowModel\":false,\"AllowPrevRun\":false,\"Diameter\":20,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":8,\"KnifeName\":\"6号排钻刀\",\"AxleID\":0,\"AllowCut\":false,\"AllowHole\":false,\"AllowModel\":false,\"AllowPrevRun\":false,\"Diameter\":0,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":9,\"KnifeName\":\"7号排钻刀\",\"AxleID\":0,\"AllowCut\":false,\"AllowHole\":false,\"AllowModel\":false,\"AllowPrevRun\":false,\"Diameter\":0,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":10,\"KnifeName\":\"8号排钻刀\",\"AxleID\":0,\"AllowCut\":false,\"AllowHole\":false,\"AllowModel\":false,\"AllowPrevRun\":false,\"Diameter\":0,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":11,\"KnifeName\":\"9号排钻刀\",\"AxleID\":0,\"AllowCut\":false,\"AllowHole\":false,\"AllowModel\":false,\"AllowPrevRun\":false,\"Diameter\":0,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":12,\"KnifeName\":\"10号排钻刀\",\"AxleID\":0,\"AllowCut\":false,\"AllowHole\":false,\"AllowModel\":false,\"AllowPrevRun\":false,\"Diameter\":10,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":13,\"KnifeName\":\"11\",\"AxleID\":0,\"AllowCut\":true,\"AllowHole\":false,\"AllowModel\":true,\"AllowPrevRun\":false,\"Diameter\":6,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false},{\"KnifeID\":14,\"KnifeName\":\"555\",\"AxleID\":0,\"AllowCut\":true,\"AllowHole\":false,\"AllowModel\":true,\"AllowPrevRun\":false,\"Diameter\":6,\"Diameter2\":0,\"Length\":40,\"GroupType\":\"\",\"OffsetX\":0,\"OffsetY\":0,\"OffsetZ\":0,\"VKnifAngle\":0,\"Speed\":0,\"PushDepthIncres\":\"\",\"RunCode\":\"\",\"SwitchCode\":\"\",\"StopCode\":\"\",\"IsAdvanceHole\":false,\"RePlaceKnifeID\":0,\"AdvanceHoleCode\":\"\",\"AdvanceHolePoints\":[],\"IsAdvanceHoleGroup\":false,\"IsOutBlockDown\":false}],\"ExportOrderPathName\":\"{0}_{1}_{2}\",\"ExportBoardPathName\":\"{0} {1} {2} {3}\",\"BoardFileA\":\"{0}_A.nc {1}_A.nc\",\"BoardFileB\":\"{0}_B.nc\",\"BlockFile\":\"{0}.nc\",\"NcFileHead\":\"\",\"NcFileEnd\":\"\",\"NcFileHead_B\":\"\",\"NcFileEnd_B\":\"\",\"NcFileHead_Block\":\"\",\"NcFileEnd_Block\":\"\",\"NcFileBeginCutBlock\":\"\",\"NcFileEndCutBlock\":\"\",\"RegularBlockFilletCurve\":true,\"UnregularBlockFilletCurve\":true,\"DealCircleWithIJ\":true,\"IsTurnOverG2G3\":true,\"ArcLineMaxLength\":0,\"AllowNCComments\":true,\"AllowAddGcodeEndChar\":true,\"GcodeEndChar\":\"11\",\"NcFileIsGB2312\":true,\"NcFileIsUtfBom\":false,\"AllowExportNC_BackFace\":true,\"OneBoardFile\":true,\"AllowExportNC_block\":true,\"AllowExportDataFile\":true,\"AllowExportBoardDxf\":true,\"isNcSimpleXYZ\":false,\"showTwoWorkSpace\":true,\"showChooseCutKnife\":true,\"showPriorFacing\":true,\"showAutoLoadBoard\":true,\"showHoleGroup\":true,\"showAutoNotePrinter\":true,\"showCustomBlockNo\":true,\"showMachine\":false,\"AllowDoubleWorkSpace\":true,\"SameOriginPointPosition\":true,\"OffsetX_WorkNum2\":0,\"OffsetY_WorkNum2\":2600,\"OriginPointPosition2\":0,\"WidthSideAxis2\":0,\"LengthSideAxis2\":2,\"LocatorPosition2\":0,\"OffsetX_Board2\":0,\"OffsetY_Board2\":0,\"AllowCombineNCWithDoubleWorkSpace\":false,\"CombineNCFileName\":\"{5}mm_{0}_{1}_{2}_{3}-{4}.nc\",\"IsOddNumInWorkSpace1\":true,\"IsHoleBlockInSpace1\":true,\"NcFileHead_WorkSpace2\":\"\",\"NcFileEnd_WorkSpace2\":\"\",\"NcFileHead_B_WorkSpace2\":\"\",\"NcFileEnd_B_WorkSpace2\":\"\",\"AllowChangeCutKnifeWithThickness\":false,\"AllowChangeCutKnifeWidthID\":false,\"BoardKnifeList\":[],\"IsPriorFacing_RoleNum\":0,\"DisPloseHoleRole\":false,\"IsIgnore_HolingModeling\":false,\"IsForceHoling_MultiSide_Minimum\":true,\"IgnoreValue_MultiSide_Minimum\":50,\"IsForceHoling_SingleSide_Minimum\":true,\"IgnoreValue_SingleSide_Minimum\":50,\"IsForceHoling_SingleSide_Maximum\":true,\"IgnoreValue_SingleSide_Maximum\":2440,\"IsForceHoling_MultiSide_Maximun\":true,\"IgnoreValue_MultiSide_Maximun\":850,\"IsForceHoling_UnRegularBlock\":true,\"IsForceHoling_HasModel\":false,\"IsIgnore_Modeling\":false,\"doModel_hasModel\":false,\"doModel_UnRegular\":false,\"doModel_twoSmall\":false,\"doModel_twoSmall_Value\":50,\"doModel_oneSmall\":false,\"doModel_oneSmall_Value\":50,\"doModel_twoBig\":false,\"doModel_twoBig_Value\":850,\"doModel_oneBig\":false,\"doModel_oneBig_Value\":2434,\"AllowChangeIgnore\":false,\"IsFoceModeling_hasModel\":false,\"IsFoceModeling_SameHoling\":false,\"IsFoceModeling_MultiLine\":false,\"IsForceModeling_Arc\":false,\"IsForceModeling_Through\":false,\"IsPriorFacing_KaiLiaoMian\":false,\"IsPriorFacing_Reverse\":false,\"IsPriorFacing_SingleModel\":true,\"IsPriorFacing_SingleModel_Front\":true,\"IsPriorFacing_DoubleModel\":true,\"IsPriorFacing_DoubleModel_Front\":true,\"IsPriorFacing_SingleHole\":true,\"IsPriorFacing_SingleHole_Front\":true,\"IsPriorFacing_BigHole\":true,\"IsPriorFacing_BigHole_Front\":true,\"IsPriorFacing_DoubleHole\":true,\"IsPriorFacing_DoubleHole_More\":true,\"IsPriorFacing_CustomFunction\":\"\",\"wr6_OverRun_WdthS\":50,\"wr6_OverRun_WdthE\":1220,\"wr6_OverRun_LengthS\":120,\"wr6_OverRun_LengthE\":2440,\"wr6_OverRun_hasThroghModel\":false,\"wr6_OverRun_hasThroghModel_r\":50,\"wr6_OverRun_hasThroghModel_size\":40000,\"wr6_OverRun_UnRegular\":false,\"wr6_OverRun_hasCorner\":true,\"wr6_OverRun_MaxChamferR\":50,\"wr6_OverRun_MaxInnerLength\":100,\"wr6_OverRun_hasOneRightAngle\":false,\"wr6_OverRun_hasOneBorder\":false,\"wr6_OverRun_WorkGroups\":\"\",\"wr6_OverRun_BlockNames\":\"\",\"wr6_unModel_all\":false,\"wr6_unModel_isThrogh\":true,\"wr6_unModel_isArc\":false,\"wr6_unModel_hasMulLines\":false,\"wr6_unModel_checkRadius\":false,\"wr6_unModel_isRadius\":\"\",\"wr6_unModel_checkName\":false,\"wr6_unModel_isName\":\"\",\"wr6_unModel_checkDepth\":false,\"wr6_unModel_isDepth\":\"\",\"wr6_unModel_isVKnifeModel\":false,\"wr6_unModel_is3VModell\":true,\"wr6_unModel_isLaChao\":false,\"wr6_unModel_notLaChao\":false,\"wr6_laChao_maxWidth\":50,\"wr6_lachao_minLength\":100,\"wr6_unHole_all\":false,\"wr6_unHole_checkRadius\":false,\"wr6_unHole_isRadius\":\"\",\"wr6_unHole_checkType\":false,\"wr6_unHole_isType\":\"\",\"wr6_unHole_checkDepth\":false,\"wr6_unHole_isDepth\":\"\",\"wr6_unHole_isThrogh\":false,\"wr6_unHole_isNoHoleKnife\":false,\"wr6_dragUndo_m2m\":false,\"wr6_dragUndo_m2m_2face\":false,\"wr6_dragUndo_m2h\":false,\"wr6_dragUndo_m2h_2face\":false,\"wr6_dragUndo_h2m\":false,\"wr6_dragUndo_h2m_2face\":false,\"wr6_dragUndo_h2h\":false,\"wr6_dragUndo_h2h_2face\":false,\"wr6_cncDo_BlockNames\":\"\",\"wr6_cncDo_WorkGroups\":\"\",\"wr6_cncDo_modelR\":false,\"wr6_cncDo_modelR_str\":\"\",\"wr6_cncDo_modelD\":false,\"wr6_cncDo_modelD_str\":\"\",\"wr6_cncDo_model_wc\":false,\"wr6_cncDo_holeR\":false,\"wr6_cncDo_holeR_str\":\"\",\"wr6_cncDo_holeD\":false,\"wr6_cncDo_holeD_str\":\"\",\"wr6_cncDo_hole_wc\":false,\"wr6_doStyle_1Face\":0,\"wr6_doStyle_1Face_hole\":true,\"wr6_doStyle_1Face_model\":true,\"wr6_doStyle_1Face_face\":false,\"wr6_doStyle_1Face_pbm\":false,\"wr6_doStyle_1Face_sideHole\":false,\"wr6_doStyle_2Face\":0,\"wr6_doStyle_2Face_hole\":true,\"wr6_doStyle_2Face_model\":true,\"wr6_doStyle_2Face_role\":\"df,cn,mm,bh,mh\",\"wr6_turnFace_roleSeq\":\"df,mm,bh,mh\",\"wr6_CustomFun_use\":false,\"wr6_CustomFun_text\":\"let canCheckBlock = false;\\r\\nlet canCheckModel = false;\\r\\nlet canCheckHole = false;\\r\\nlet canDoWith = false;\\r\\nlet canSplit = false;\\r\\nlet canDoFace = false;\\r\\nfunction checkBlock(obj) { return false; }\\r\\nfunction checkModel(obj) { return false; }\\r\\nfunction checkHole(obj) { return false; }\\r\\nfunction doWith(obj) { return; }\\r\\nfunction split(obj) { return; }\\r\\nfunction doFace(obj) { return false; }\\r\\nreturn { canCheckBlock, canCheckModel, canCheckHole, canDoWith, canSplit, canDoFace, checkBlock, checkModel, checkHole, doWith, split, doFace };\",\"AllowHoleToModel\":false,\"HoleToModelKnifes\":[],\"IsLoadBoardBeforeFileHead\":true,\"NcLoadBoard\":\"\",\"NcFileHoleBegin\":\"\",\"NcFileHoleEnd\":\"\",\"HolingByKnifeDia\":true,\"NoteAutoPrinter\":false,\"NoteAutoPrinterScrapBorad\":false,\"NoteNcName\":\"print_{0}.nc\",\"NotePicName\":\"标签/{0}_{1}.bmp\",\"NotePicType\":\"jpg\",\"NotePicBit\":\"24\",\"NotePrintOnFaceA\":true,\"NotePositionAvoidHole\":true,\"NoteWidth\":60,\"NOteHeight\":40,\"NoteContent\":\"\",\"NotePushInNcFile\":false,\"NoteGB2312\":false,\"NoteUtf8Bom\":false,\"NoteOtherExport\":false,\"NoteOtherFun\":\"\",\"AllowBlockNo_Note\":false,\"BlockNo_Note\":\"return obj.BlockNo;\",\"BoardName\":\"{0}_{1}_{2}_{3}\",\"MinBlockWidth\":10,\"MinHoleRadius\":1,\"MinHoleDepth\":1,\"MinModelDepth\":0,\"MinModelRadius\":1,\"MaxBorderThickness\":10,\"Ignore2in1SideHole\":false,\"Ignore2in1SideHoleGap\":0.01,\"canReloadPlaceInfo\":false,\"MiniumSpaceSize\":5,\"NeatenSpaceGap\":0,\"ResetPositionWithLocator\":false,\"NcNumberFixNumber\":3,\"NcFileRemoveEmptyLine\":true,\"HoleWaitingCode\":\"\",\"prevRunActionCount\":5,\"ShearBorderFaceA\":false,\"DelayDoCountBeforeChangeKnife\":0,\"DelayCodeBeforeChangeKnife\":\"G04 X2.0\",\"UseBoardFaceZ\":false,\"PushNcLineIDStr\":\"{\\\"enable\\\":false,\\\"beginLine\\\":0,\\\"endLine\\\":0,\\\"ignoreEmptyLine\\\":false, \\\"format\\\":\\\"N[4]\\\",\\\"lineID\\\":1}\",\"ReverseModelPoints\":false,\"ModelPointControl\":0,\"ModelCutRedundancy\":0,\"DisPoseModelInBoardBorderWidth\":0,\"DisPoseModelInBoardFace\":1,\"DisPoseModelInBoardBorderForCNC\":false,\"DisPoseModelInBoardReverse\":false,\"EnableFaceWithDoingRate\":false,\"EnableFaceByCncDoing\":false,\"DoingRate\":30,\"PerHoleTime\":0.5,\"PerModelTime\":16,\"EnableNotePrintAutoPosition\":false,\"EnabaleModelOutSize\":true,\"Enable2VModelOutSize\":true,\"OverlapGap\":0.05,\"EnableUnPlacedBlockWithABoard\":false,\"UnregularSizeLimit\":15000,\"ManagerPassword\":\"cftech123456789\",\"Remark\":\"\",\"WebQueryPageSize\":1000,\"ExportRootPath\":\"C:\\\\\",\"AllowSelectExportPath\":false,\"AllowExportImage\":false,\"ManualSortingCornerWidth\":2,\"AllowOppositeDealChuanHole\":false,\"UseSecodeKnifeBlockNames\":null}", + "MachineID": 4686 + }, + { + "Type": 2, + "Setting": "{\"companyID\":0,\"noteName\":\"标签-宽60mm高40mm\",\"width\":480,\"height\":312,\"objects\":[{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"板件名称\",\"X\":5,\"Y\":21,\"Width\":150,\"Height\":20,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"背板\",\"DataExpression\":\"return obj.BlockName;\",\"DisplayType\":0,\"BarcodeType\":\"CODE39\",\"FontSize\":30,\"FontWeight\":200,\"FontFamily\":\"宋体\",\"TextAlign\":\"left\",\"TextBaseline\":\"center\",\"QrcodeErrorRate\":\"M\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"房名柜名\",\"X\":155,\"Y\":25,\"Width\":305,\"Height\":20,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"房间名-柜名\",\"DataExpression\":\"return obj.RoomName+'-'+obj.BoxName;\",\"DisplayType\":0,\"BarcodeType\":\"CODE39\",\"FontSize\":20,\"FontWeight\":200,\"FontFamily\":\"宋体\",\"TextAlign\":\"left\",\"TextBaseline\":\"center\",\"QrcodeErrorRate\":\"M\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"板材\",\"X\":5,\"Y\":2,\"Width\":350,\"Height\":20,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"18mm-经典檀木-生态板\",\"DataExpression\":\"return obj.Thickness+'mm-'+obj.Color+'-'+obj.MetrialName;\",\"DisplayType\":0,\"BarcodeType\":\"CODE39\",\"FontSize\":20,\"FontWeight\":200,\"FontFamily\":\"宋体\",\"TextAlign\":\"left\",\"TextBaseline\":\"center\",\"QrcodeErrorRate\":\"M\"},{\"Type\":6,\"ObjcectID\":0,\"ObjectName\":\"封边图\",\"X\":25,\"Y\":163,\"Width\":80,\"Height\":60,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"ShowByRate\":false,\"ShowData\":true,\"DataWidth\":8,\"DataFix\":1,\"DisplayFB\":-1,\"FontSize\":15,\"FontWeight\":800,\"FontFamily\":\"宋体\",\"ShowCncDict\":true,\"CncDictType\":0,\"ArrowsSize\":30,\"ShowSideHole\":false,\"SideHoleFlag\":\"#\",\"showFBStr\":\"return fb.toString();\",\"ShowSideHoleStr\":false,\"ShowSideHoleFnStr\":\"if(holes.some(t=> Math.abs(t.Radius - 1.03) < 0.001)) return 'G拉手';\\r\\nreturn '';\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"地址\",\"X\":9,\"Y\":87,\"Width\":150,\"Height\":20,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"送货地址\",\"DataExpression\":\"return obj.ConsigneeAddress;\",\"DisplayType\":0,\"BarcodeType\":\"CODE39\",\"FontSize\":20,\"FontWeight\":200,\"FontFamily\":\"宋体\",\"TextAlign\":\"left\",\"TextBaseline\":\"center\",\"QrcodeErrorRate\":\"M\"},{\"Type\":5,\"ObjcectID\":0,\"ObjectName\":\"位置图\",\"X\":181,\"Y\":120,\"Width\":258,\"Height\":79,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"ShowByRate\":false,\"LineHeight\":1,\"LineColor\":\"rgb(0,0,0)\",\"FillColor\":\"rgb(0,0,0)\",\"Angle\":0},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"自定义单号\",\"X\":10,\"Y\":118,\"Width\":150,\"Height\":20,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"自定义单号\",\"DataExpression\":\"return obj.CustomOrderNo;\",\"DisplayType\":0,\"BarcodeType\":\"CODE39\",\"FontSize\":\"20\",\"FontWeight\":800,\"FontFamily\":\"宋体\",\"TextAlign\":\"left\",\"TextBaseline\":\"center\",\"QrcodeErrorRate\":\"M\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"板件备注\",\"X\":13,\"Y\":250,\"Width\":455,\"Height\":20,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"板件备注\",\"DataExpression\":\"return obj.Remark1+obj.Remark2+obj.Remark3+obj.Remark4+obj.Remark5;\",\"DisplayType\":0,\"BarcodeType\":\"CODE39\",\"FontSize\":15,\"FontWeight\":800,\"FontFamily\":\"宋体\",\"TextAlign\":\"left\",\"TextBaseline\":\"center\",\"QrcodeErrorRate\":\"M\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"反面条码\",\"X\":269,\"Y\":98,\"Width\":120,\"Height\":15,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"B184224052\",\"DataExpression\":\"return obj.BlockNo;\",\"DisplayType\":0,\"BarcodeType\":\"CODE128\",\"FontSize\":20,\"FontWeight\":\"400\",\"FontFamily\":\"宋体\",\"TextAlign\":\"left\",\"TextBaseline\":\"top\",\"QrcodeErrorRate\":\"M\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"翻面条码\",\"X\":181,\"Y\":211,\"Width\":275,\"Height\":39,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return obj.HoleCount_DoFaceB + obj.ModelCount_DoFaceB > 0;\",\"IsVertical\":false,\"DataText\":\"B184224052\",\"DataExpression\":\"return obj.BlockNo;\",\"DisplayType\":1,\"BarcodeType\":\"CODE128\",\"FontSize\":\"20\",\"FontWeight\":\"400\",\"FontFamily\":\"宋体\",\"TextAlign\":\"left\",\"TextBaseline\":\"top\",\"QrcodeErrorRate\":\"M\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"条码\",\"X\":181,\"Y\":49,\"Width\":276,\"Height\":46,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"B184224052\",\"DataExpression\":\"return obj.BlockNo;\",\"DisplayType\":1,\"BarcodeType\":\"CODE128\",\"FontSize\":\"20\",\"FontWeight\":\"400\",\"FontFamily\":\"宋体\",\"TextAlign\":\"left\",\"TextBaseline\":\"top\",\"QrcodeErrorRate\":\"M\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"成品尺寸\",\"X\":3,\"Y\":51,\"Width\":130,\"Height\":20,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"900*1033.33\",\"DataExpression\":\"return obj.Length + '*' + obj.Width;\",\"DisplayType\":0,\"BarcodeType\":\"CODE39\",\"FontSize\":30,\"FontWeight\":\"400\",\"FontFamily\":\"宋体\",\"TextAlign\":\"left\",\"TextBaseline\":\"top\",\"QrcodeErrorRate\":\"M\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"页码\",\"X\":398,\"Y\":6,\"Width\":69,\"Height\":20,\"Visible\":true,\"IsScrapBlock\":false,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"1页6\",\"DataExpression\":\"return obj.BoardID + '页' + obj.CutSortID;\",\"DisplayType\":0,\"BarcodeType\":\"CODE39\",\"FontSize\":30,\"FontWeight\":\"400\",\"FontFamily\":\"宋体\",\"TextAlign\":\"left\",\"TextBaseline\":\"top\",\"QrcodeErrorRate\":\"M\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"余料板尺寸\",\"X\":30,\"Y\":13,\"Width\":300,\"Height\":40,\"Visible\":true,\"IsScrapBlock\":true,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"1120.0 * 1560.0\",\"DataExpression\":\"return obj.Length.toFixed(1) + '*' + obj.Width.toFixed(1);\",\"DisplayType\":0,\"BarcodeType\":\"CODE39\",\"FontSize\":\"40\",\"FontWeight\":\"600\",\"FontFamily\":\"黑体\",\"TextAlign\":\"left\",\"TextBaseline\":\"top\",\"QrcodeErrorRate\":\"M\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"余料板编号\",\"X\":30,\"Y\":54,\"Width\":300,\"Height\":40,\"Visible\":true,\"IsScrapBlock\":true,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"编号\",\"DataExpression\":\"return obj.BlockNo;\",\"DisplayType\":0,\"BarcodeType\":\"CODE39\",\"FontSize\":\"40\",\"FontWeight\":\"600\",\"FontFamily\":\"黑体\",\"TextAlign\":\"left\",\"TextBaseline\":\"top\",\"QrcodeErrorRate\":\"M\"},{\"Type\":4,\"ObjcectID\":0,\"ObjectName\":\"余料板颜色\",\"X\":30,\"Y\":99,\"Width\":350,\"Height\":40,\"Visible\":true,\"IsScrapBlock\":true,\"VisibleExpression\":\"return true;\",\"IsVertical\":false,\"DataText\":\"颜色\",\"DataExpression\":\"return obj.MetrialName + ' ' + obj.Color ;\",\"DisplayType\":0,\"BarcodeType\":\"CODE39\",\"FontSize\":\"40\",\"FontWeight\":\"600\",\"FontFamily\":\"黑体\",\"TextAlign\":\"left\",\"TextBaseline\":\"top\",\"QrcodeErrorRate\":\"M\"},{\"Type\":5,\"ObjcectID\":0,\"ObjectName\":\"余料板位置图\",\"X\":30,\"Y\":145,\"Width\":218,\"Height\":80,\"Visible\":true,\"IsScrapBlock\":true,\"VisibleExpression\":\"return true;\",\"ShowByRate\":false,\"LineHeight\":1,\"LineColor\":\"rgb(0,0,0)\",\"FillColor\":\"rgb(0,0,0)\",\"Angle\":0}]}", + "MachineID": 4686 + }, + { + "Type": 3, + "Setting": "{\"BoardBorder\":40,\"GlobalAlpha\":0.95,\"WorkSpaceColor\":\"#6A6C6B\",\"WorkSpaceBorderColor\":\"#000000\",\"ShowAxis\":true,\"AxisPos\":-10,\"AxisNodeWidth0\":3,\"AxisNodeWidth1\":5,\"AxisNodeWidth2\":10,\"AxisblockFlagWidth\":30,\"AxisColor\":\"#8a8c8e\",\"BlockInfoInAxisFont\":\"bold 16px arial\",\"BlockInfoInAxisColor\":\"#0000FF\",\"BlockInfoInAxisColor2\":\"#00FF00\",\"BoardColor\":\"#FFFFFF\",\"BoardColor2\":\"#BAE6C7\",\"BoardBorderColor\":\"#000000\",\"BlockFillColor\":\"#FFFFFF\",\"BlockFillColor2\":\"#CFD0D3\",\"BlockFillColor_overLap1\":\"#FF0000\",\"BlockFillColor_overLap2\":\"#f391a9\",\"BlockFillColor_draging\":\"#00FF00\",\"BlockFillColor_closest\":\"#90d7ec\",\"BlockBorderColor\":\"#000000\",\"BlockBorderColor2\":\"#FF0000\",\"BlockBorderWidth\":4,\"PointFillColor_draging\":\"#FF0000\",\"PointFillColor_closest\":\"#0000FF\",\"ModelLineColor\":\"#BCE7E0\",\"HoleColor\":\"#007d65\",\"HoleColor2\":\"#FFFFFF\",\"ModelLineColor2\":\"#EF2B19\",\"HoleColor3\":\"#50DAC0\",\"FaceBShow\":false,\"CutPoint_Radius\":6,\"PointFillColor_cutPoint\":\"#FF0000\",\"CutSortID_Radius\":10,\"CutSortID_font\":\"18px arial\",\"CutSortID_color\":\"#0000FF\",\"BlockDirectionShow\":true,\"BlockNoShow\":true,\"BlockNoColor\":\"#000000\",\"BlockNoFont\":\"18px arial\",\"BlockSizeShow\":false,\"BlockSizeColor\":\"#000000\",\"BlockSizeFont\":\"10px arial\",\"ScrapBlockStrokeColor\":\"black\",\"ScrapBlockFocusColor\":\"#D3F767\",\"ScrapPlaceBlock\":\"#F9F8BE\",\"HelpKnifeBlockColor\":\"#EAE3EE\"}", + "MachineID": 4686 + } + ], + "SourceType": 2, + "BlockList": [ + { + "RoomName": "主卧", + "BoxName": "下柜", + "OrderNo": 20231124029547, + "BlockID": 4143407, + "GoodsID": 2595, + "OldBlockID": 4143407, + "BlockNo": 2311001625348, + "NoteNo": "", + "BlockName": "左开门板", + "Width": 597, + "Length": 2032, + "Thickness": 18, + "Area": 1.213, + "IsHXDJX": false, + "BorderLeft": 1, + "BorderRight": 1, + "BorderUpper": 1, + "BorderUnder": 1, + "Wave": 0, + "PaiKong": 2, + "BorderLengthLight": 0, + "BorderLengthHeavy": 0, + "RemarkJson": "[]", + "CadDataType": 2, + "ProcessGroupName": "", + "Type": "柜体", + "OpenDoorType": 1, + "ExtraRemark": { + "extra": { + "boardType": "背板", + "throughHoleCount": 0, + "throughModelCount": 0, + "has2DModel": false, + "has3DModel": false, + "composingFace": "任意面", + "processList": [] + } + }, + "ItemID": 8427578, + "IsUnRegular": false, + "IsModel": true, + "BoxGroupNumber": 1, + "BoxNumber": 1, + "BoxMultNumber": 1 + }, + { + "RoomName": "主卧", + "BoxName": "下柜", + "OrderNo": 20231124029547, + "BlockID": 4143408, + "GoodsID": 2595, + "OldBlockID": 4143408, + "BlockNo": 2311001625349, + "NoteNo": "", + "BlockName": "右开门板", + "Width": 597, + "Length": 2032, + "Thickness": 18, + "Area": 1.213, + "IsHXDJX": false, + "BorderLeft": 1, + "BorderRight": 1, + "BorderUpper": 1, + "BorderUnder": 1, + "Wave": 0, + "PaiKong": 2, + "BorderLengthLight": 0, + "BorderLengthHeavy": 0, + "RemarkJson": "[]", + "CadDataType": 2, + "ProcessGroupName": "", + "Type": "柜体", + "OpenDoorType": 2, + "ExtraRemark": { + "extra": { + "boardType": "背板", + "throughHoleCount": 0, + "throughModelCount": 0, + "has2DModel": false, + "has3DModel": false, + "composingFace": "任意面", + "processList": [] + } + }, + "ItemID": 8427579, + "IsUnRegular": false, + "IsModel": true, + "BoxGroupNumber": 1, + "BoxNumber": 1, + "BoxMultNumber": 1 + }, + { + "RoomName": "未命名", + "BoxName": "标准柜", + "OrderNo": 20231218029769, + "BlockID": 4152899, + "GoodsID": 3819, + "OldBlockID": 4152899, + "BlockNo": 2312002515815, + "NoteNo": "", + "BlockName": "背板", + "Width": 600, + "Length": 1200, + "Thickness": 18, + "Area": 0.72, + "IsHXDJX": false, + "BorderLeft": 1, + "BorderRight": 1, + "BorderUpper": 1, + "BorderUnder": 1, + "Wave": 0, + "PaiKong": 1, + "BorderLengthLight": 0, + "BorderLengthHeavy": 0, + "RemarkJson": "[]", + "CadDataType": 2, + "ProcessGroupName": "", + "Type": "柜体", + "OpenDoorType": 0, + "ExtraRemark": { + "extra": { + "boardType": "背板", + "throughHoleCount": 0, + "throughModelCount": 0, + "has2DModel": false, + "has3DModel": false, + "composingFace": "反面", + "processList": [] + } + }, + "ItemID": 8626295, + "IsUnRegular": false, + "IsModel": false, + "BoxGroupNumber": 2, + "BoxNumber": 1, + "BoxMultNumber": 1 + } + ], + "BlockDetailList": [ + { + "ID": 4143407, + "OrderNo": 20231124029547, + "PointDetail": [], + "ModelDetail": [ + { + "ModelID": 1, + "LineID": 1, + "Face": 1, + "KnifeName": "", + "KnifeRadius": 3, + "Depth": 12.04779353108516, + "PointList": [ + { + "LineID": 1, + "PointID": 1, + "PointX": 3.9999999999999787, + "PointY": 85.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 2, + "PointX": 3.9999999999999787, + "PointY": 111.90365259751412, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 3, + "PointX": 30, + "PointY": 111.90365259751412, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 4, + "PointX": 30, + "PointY": 85.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 5, + "PointX": 3.9999999999999787, + "PointY": 85.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 6, + "PointX": 9.999999999999979, + "PointY": 91.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 7, + "PointX": 24, + "PointY": 91.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 8, + "PointX": 24, + "PointY": 105.90365259751412, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 9, + "PointX": 9.999999999999979, + "PointY": 105.90365259751412, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 10, + "PointX": 9.999999999999979, + "PointY": 91.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 11, + "PointX": 15.999999999999979, + "PointY": 97.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 12, + "PointX": 18, + "PointY": 97.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 13, + "PointX": 18, + "PointY": 99.90365259751412, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 14, + "PointX": 15.999999999999979, + "PointY": 99.90365259751412, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 15, + "PointX": 15.999999999999979, + "PointY": 97.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + } + ], + "OffsetList": [], + "OriginModeling": { + "outline": { + "pts": [ + { + "x": 34, + "y": 115.90365259751412 + }, + { + "x": 1.9999999999999787, + "y": 115.90365259751412 + }, + { + "x": 1.9999999999999787, + "y": 83.8676943030234 + }, + { + "x": 34, + "y": 83.8676943030234 + }, + { + "x": 34, + "y": 115.90365259751412 + } + ], + "buls": [ + 0, + 0, + 0, + 0, + 0 + ] + }, + "holes": [], + "thickness": 0, + "dir": 0, + "knifeRadius": 0, + "addLen": 0, + "addWidth": 0, + "addDepth": 0 + } + }, + { + "ModelID": 2, + "LineID": 2, + "Face": 1, + "KnifeName": "", + "KnifeRadius": 3, + "Depth": 12.04779353108516, + "PointList": [ + { + "LineID": 2, + "PointID": 1, + "PointX": 3.999999999999986, + "PointY": 1001.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 2, + "PointX": 3.999999999999986, + "PointY": 1027.903652597514, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 3, + "PointX": 30, + "PointY": 1027.903652597514, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 4, + "PointX": 30, + "PointY": 1001.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 5, + "PointX": 3.999999999999986, + "PointY": 1001.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 6, + "PointX": 9.999999999999986, + "PointY": 1007.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 7, + "PointX": 24, + "PointY": 1007.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 8, + "PointX": 24, + "PointY": 1021.9036525975141, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 9, + "PointX": 9.999999999999986, + "PointY": 1021.9036525975141, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 10, + "PointX": 9.999999999999986, + "PointY": 1007.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 11, + "PointX": 15.999999999999986, + "PointY": 1013.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 12, + "PointX": 18, + "PointY": 1013.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 13, + "PointX": 18, + "PointY": 1015.9036525975141, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 14, + "PointX": 15.999999999999986, + "PointY": 1015.9036525975141, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 15, + "PointX": 15.999999999999986, + "PointY": 1013.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + } + ], + "OffsetList": [], + "OriginModeling": { + "outline": { + "pts": [ + { + "x": 34, + "y": 1031.903652597514 + }, + { + "x": 1.9999999999999858, + "y": 1031.903652597514 + }, + { + "x": 1.9999999999999858, + "y": 999.8676943030234 + }, + { + "x": 34, + "y": 999.8676943030234 + }, + { + "x": 34, + "y": 1031.903652597514 + } + ], + "buls": [ + 0, + 0, + 0, + 0, + 0 + ] + }, + "holes": [], + "thickness": 0, + "dir": 0, + "knifeRadius": 0, + "addLen": 0, + "addWidth": 0, + "addDepth": 0 + } + }, + { + "ModelID": 3, + "LineID": 3, + "Face": 1, + "KnifeName": "", + "KnifeRadius": 3, + "Depth": 12.04779353108516, + "PointList": [ + { + "LineID": 3, + "PointID": 1, + "PointX": 3.9999999999999645, + "PointY": 1917.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 2, + "PointX": 3.9999999999999645, + "PointY": 1943.903652597514, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 3, + "PointX": 30, + "PointY": 1943.903652597514, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 4, + "PointX": 30, + "PointY": 1917.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 5, + "PointX": 3.9999999999999645, + "PointY": 1917.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 6, + "PointX": 9.999999999999964, + "PointY": 1923.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 7, + "PointX": 24, + "PointY": 1923.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 8, + "PointX": 24, + "PointY": 1937.903652597514, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 9, + "PointX": 9.999999999999964, + "PointY": 1937.903652597514, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 10, + "PointX": 9.999999999999964, + "PointY": 1923.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 11, + "PointX": 15.999999999999964, + "PointY": 1929.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 12, + "PointX": 18, + "PointY": 1929.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 13, + "PointX": 18, + "PointY": 1931.903652597514, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 14, + "PointX": 15.999999999999964, + "PointY": 1931.903652597514, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 15, + "PointX": 15.999999999999964, + "PointY": 1929.8676943030234, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + } + ], + "OffsetList": [], + "OriginModeling": { + "outline": { + "pts": [ + { + "x": 34, + "y": 1947.903652597514 + }, + { + "x": 1.9999999999999645, + "y": 1947.903652597514 + }, + { + "x": 1.9999999999999645, + "y": 1915.8676943030234 + }, + { + "x": 34, + "y": 1915.8676943030234 + }, + { + "x": 34, + "y": 1947.903652597514 + } + ], + "buls": [ + 0, + 0, + 0, + 0, + 0 + ] + }, + "holes": [], + "thickness": 0, + "dir": 0, + "knifeRadius": 0, + "addLen": 0, + "addWidth": 0, + "addDepth": 0 + } + } + ], + "HoleDetail": [], + "OffSet": { + "x": 1, + "y": 1, + "z": 0 + }, + "NewVersion": false, + "OrgPointDetail": [], + "KaiLiaoSize": { + "width": 595, + "height": 2030 + }, + "SideModelDetail": [], + "SideHoleDetail": [] + }, + { + "ID": 4143408, + "OrderNo": 20231124029547, + "PointDetail": [], + "ModelDetail": [ + { + "ModelID": 1, + "LineID": 1, + "Face": 1, + "KnifeName": "", + "KnifeRadius": 3, + "Depth": 12.04779353108516, + "PointList": [ + { + "LineID": 1, + "PointID": 1, + "PointX": 565, + "PointY": 86.09634740248588, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 2, + "PointX": 565, + "PointY": 112.1323056969766, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 3, + "PointX": 591.0000000000001, + "PointY": 112.1323056969766, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 4, + "PointX": 591.0000000000001, + "PointY": 86.09634740248588, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 5, + "PointX": 565, + "PointY": 86.09634740248588, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 6, + "PointX": 571, + "PointY": 92.09634740248588, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 7, + "PointX": 585.0000000000001, + "PointY": 92.09634740248588, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 8, + "PointX": 585.0000000000001, + "PointY": 106.1323056969766, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 9, + "PointX": 571, + "PointY": 106.1323056969766, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 10, + "PointX": 571, + "PointY": 92.09634740248588, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 11, + "PointX": 577, + "PointY": 98.09634740248588, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 12, + "PointX": 579.0000000000001, + "PointY": 98.09634740248588, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 13, + "PointX": 579.0000000000001, + "PointY": 100.1323056969766, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 14, + "PointX": 577, + "PointY": 100.1323056969766, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 15, + "PointX": 577, + "PointY": 98.09634740248588, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + } + ], + "OffsetList": [], + "OriginModeling": { + "outline": { + "pts": [ + { + "x": 563, + "y": 84.09634740248588 + }, + { + "x": 595.0000000000001, + "y": 84.09634740248588 + }, + { + "x": 595.0000000000001, + "y": 116.1323056969766 + }, + { + "x": 563, + "y": 116.1323056969766 + }, + { + "x": 563, + "y": 84.09634740248588 + } + ], + "buls": [ + 0, + 0, + 0, + 0, + 0 + ] + }, + "holes": [], + "thickness": 0, + "dir": 0, + "knifeRadius": 0, + "addLen": 0, + "addWidth": 0, + "addDepth": 0 + } + }, + { + "ModelID": 2, + "LineID": 2, + "Face": 1, + "KnifeName": "", + "KnifeRadius": 3, + "Depth": 12.04779353108516, + "PointList": [ + { + "LineID": 2, + "PointID": 1, + "PointX": 565, + "PointY": 1002.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 2, + "PointX": 565, + "PointY": 1028.1323056969768, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 3, + "PointX": 591, + "PointY": 1028.132305696977, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 4, + "PointX": 591, + "PointY": 1002.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 5, + "PointX": 565, + "PointY": 1002.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 6, + "PointX": 571, + "PointY": 1008.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 7, + "PointX": 585, + "PointY": 1008.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 8, + "PointX": 585, + "PointY": 1022.1323056969769, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 9, + "PointX": 571, + "PointY": 1022.1323056969769, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 10, + "PointX": 571, + "PointY": 1008.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 11, + "PointX": 577, + "PointY": 1014.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 12, + "PointX": 579, + "PointY": 1014.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 13, + "PointX": 579, + "PointY": 1016.1323056969769, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 14, + "PointX": 577, + "PointY": 1016.1323056969769, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 2, + "PointID": 15, + "PointX": 577, + "PointY": 1014.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + } + ], + "OffsetList": [], + "OriginModeling": { + "outline": { + "pts": [ + { + "x": 563, + "y": 1000.0963474024861 + }, + { + "x": 595, + "y": 1000.0963474024861 + }, + { + "x": 595, + "y": 1032.132305696977 + }, + { + "x": 563, + "y": 1032.1323056969768 + }, + { + "x": 563, + "y": 1000.0963474024861 + } + ], + "buls": [ + 0, + 0, + 0, + 0, + 0 + ] + }, + "holes": [], + "thickness": 0, + "dir": 0, + "knifeRadius": 0, + "addLen": 0, + "addWidth": 0, + "addDepth": 0 + } + }, + { + "ModelID": 3, + "LineID": 3, + "Face": 1, + "KnifeName": "", + "KnifeRadius": 3, + "Depth": 12.04779353108516, + "PointList": [ + { + "LineID": 3, + "PointID": 1, + "PointX": 565, + "PointY": 1918.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 2, + "PointX": 565, + "PointY": 1944.1323056969768, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 3, + "PointX": 591, + "PointY": 1944.1323056969768, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 4, + "PointX": 591, + "PointY": 1918.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 5, + "PointX": 565, + "PointY": 1918.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 6, + "PointX": 571, + "PointY": 1924.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 7, + "PointX": 585, + "PointY": 1924.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 8, + "PointX": 585, + "PointY": 1938.1323056969768, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 9, + "PointX": 571, + "PointY": 1938.1323056969768, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 10, + "PointX": 571, + "PointY": 1924.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 11, + "PointX": 577, + "PointY": 1930.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 12, + "PointX": 579, + "PointY": 1930.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 13, + "PointX": 579, + "PointY": 1932.1323056969768, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 14, + "PointX": 577, + "PointY": 1932.1323056969768, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + }, + { + "LineID": 3, + "PointID": 15, + "PointX": 577, + "PointY": 1930.0963474024861, + "Radius": 0, + "Depth": 12.04779353108516, + "Curve": 0 + } + ], + "OffsetList": [], + "OriginModeling": { + "outline": { + "pts": [ + { + "x": 563, + "y": 1916.0963474024861 + }, + { + "x": 595, + "y": 1916.0963474024861 + }, + { + "x": 595, + "y": 1948.1323056969768 + }, + { + "x": 563, + "y": 1948.1323056969768 + }, + { + "x": 563, + "y": 1916.0963474024861 + } + ], + "buls": [ + 0, + 0, + 0, + 0, + 0 + ] + }, + "holes": [], + "thickness": 0, + "dir": 0, + "knifeRadius": 0, + "addLen": 0, + "addWidth": 0, + "addDepth": 0 + } + } + ], + "HoleDetail": [], + "OffSet": { + "x": 1, + "y": 1, + "z": 0 + }, + "NewVersion": false, + "OrgPointDetail": [], + "KaiLiaoSize": { + "width": 595, + "height": 2030 + }, + "SideModelDetail": [], + "SideHoleDetail": [] + }, + { + "ID": 4152899, + "OrderNo": 20231218029769, + "PointDetail": [], + "ModelDetail": [ + { + "ModelID": 1, + "LineID": 1, + "Face": 0, + "KnifeName": "", + "KnifeRadius": 3, + "Depth": 12, + "PointList": [ + { + "LineID": 1, + "PointID": 1, + "PointX": 32, + "PointY": 32, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 2, + "PointX": 32, + "PointY": 1166, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 3, + "PointX": 566, + "PointY": 1166, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 4, + "PointX": 566, + "PointY": 32, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 5, + "PointX": 32, + "PointY": 32, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 6, + "PointX": 38, + "PointY": 38, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 7, + "PointX": 560, + "PointY": 38, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 8, + "PointX": 560, + "PointY": 1160, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 9, + "PointX": 38, + "PointY": 1160, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 10, + "PointX": 38, + "PointY": 38, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 11, + "PointX": 44, + "PointY": 44, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 12, + "PointX": 554, + "PointY": 44, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 13, + "PointX": 554, + "PointY": 1154, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 14, + "PointX": 44, + "PointY": 1154, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 15, + "PointX": 44, + "PointY": 44, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 16, + "PointX": 50, + "PointY": 50, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 17, + "PointX": 548, + "PointY": 50, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 18, + "PointX": 548, + "PointY": 1148, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 19, + "PointX": 50, + "PointY": 1148, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 20, + "PointX": 50, + "PointY": 50, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 21, + "PointX": 56, + "PointY": 56, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 22, + "PointX": 542, + "PointY": 56, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 23, + "PointX": 542, + "PointY": 1142, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 24, + "PointX": 56, + "PointY": 1142, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 25, + "PointX": 56, + "PointY": 56, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 26, + "PointX": 62, + "PointY": 62, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 27, + "PointX": 536, + "PointY": 62, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 28, + "PointX": 536, + "PointY": 1136, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 29, + "PointX": 62, + "PointY": 1136, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 30, + "PointX": 62, + "PointY": 62, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 31, + "PointX": 68, + "PointY": 68, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 32, + "PointX": 530, + "PointY": 68, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 33, + "PointX": 530, + "PointY": 1130, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 34, + "PointX": 68, + "PointY": 1130, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 35, + "PointX": 68, + "PointY": 68, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 36, + "PointX": 74, + "PointY": 74, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 37, + "PointX": 524, + "PointY": 74, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 38, + "PointX": 524, + "PointY": 1124, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 39, + "PointX": 74, + "PointY": 1124, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 40, + "PointX": 74, + "PointY": 74, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 41, + "PointX": 80, + "PointY": 80, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 42, + "PointX": 518, + "PointY": 80, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 43, + "PointX": 518, + "PointY": 1118, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 44, + "PointX": 80, + "PointY": 1118, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 45, + "PointX": 80, + "PointY": 80, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 46, + "PointX": 86, + "PointY": 86, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 47, + "PointX": 512, + "PointY": 86, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 48, + "PointX": 512, + "PointY": 1112, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 49, + "PointX": 86, + "PointY": 1112, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 50, + "PointX": 86, + "PointY": 86, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 51, + "PointX": 92, + "PointY": 92, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 52, + "PointX": 506, + "PointY": 92, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 53, + "PointX": 506, + "PointY": 1106, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 54, + "PointX": 92, + "PointY": 1106, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 55, + "PointX": 92, + "PointY": 92, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 56, + "PointX": 98, + "PointY": 98, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 57, + "PointX": 500, + "PointY": 98, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 58, + "PointX": 500, + "PointY": 1100, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 59, + "PointX": 98, + "PointY": 1100, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 60, + "PointX": 98, + "PointY": 98, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 61, + "PointX": 104, + "PointY": 104, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 62, + "PointX": 494, + "PointY": 104, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 63, + "PointX": 494, + "PointY": 1094, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 64, + "PointX": 104, + "PointY": 1094, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 65, + "PointX": 104, + "PointY": 104, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 66, + "PointX": 110, + "PointY": 110, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 67, + "PointX": 488, + "PointY": 110, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 68, + "PointX": 488, + "PointY": 1088, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 69, + "PointX": 110, + "PointY": 1088, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 70, + "PointX": 110, + "PointY": 110, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 71, + "PointX": 116, + "PointY": 116, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 72, + "PointX": 482, + "PointY": 116, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 73, + "PointX": 482, + "PointY": 1082, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 74, + "PointX": 116, + "PointY": 1082, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 75, + "PointX": 116, + "PointY": 116, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 76, + "PointX": 122, + "PointY": 122, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 77, + "PointX": 476, + "PointY": 122, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 78, + "PointX": 476, + "PointY": 1076, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 79, + "PointX": 122, + "PointY": 1076, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 80, + "PointX": 122, + "PointY": 122, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 81, + "PointX": 128, + "PointY": 128, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 82, + "PointX": 470, + "PointY": 128, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 83, + "PointX": 470, + "PointY": 1070, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 84, + "PointX": 128, + "PointY": 1070, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 85, + "PointX": 128, + "PointY": 128, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 86, + "PointX": 134, + "PointY": 134, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 87, + "PointX": 464, + "PointY": 134, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 88, + "PointX": 464, + "PointY": 1064, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 89, + "PointX": 134, + "PointY": 1064, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 90, + "PointX": 134, + "PointY": 134, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 91, + "PointX": 140, + "PointY": 140, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 92, + "PointX": 458, + "PointY": 140, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 93, + "PointX": 458, + "PointY": 1058, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 94, + "PointX": 140, + "PointY": 1058, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 95, + "PointX": 140, + "PointY": 140, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 96, + "PointX": 146, + "PointY": 146, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 97, + "PointX": 452, + "PointY": 146, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 98, + "PointX": 452, + "PointY": 1052, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 99, + "PointX": 146, + "PointY": 1052, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 100, + "PointX": 146, + "PointY": 146, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 101, + "PointX": 152, + "PointY": 152, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 102, + "PointX": 446, + "PointY": 152, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 103, + "PointX": 446, + "PointY": 1046, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 104, + "PointX": 152, + "PointY": 1046, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 105, + "PointX": 152, + "PointY": 152, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 106, + "PointX": 158, + "PointY": 158, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 107, + "PointX": 440, + "PointY": 158, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 108, + "PointX": 440, + "PointY": 1040, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 109, + "PointX": 158, + "PointY": 1040, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 110, + "PointX": 158, + "PointY": 158, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 111, + "PointX": 164, + "PointY": 164, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 112, + "PointX": 434, + "PointY": 164, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 113, + "PointX": 434, + "PointY": 1034, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 114, + "PointX": 164, + "PointY": 1034, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 115, + "PointX": 164, + "PointY": 164, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 116, + "PointX": 170, + "PointY": 170, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 117, + "PointX": 428, + "PointY": 170, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 118, + "PointX": 428, + "PointY": 1028, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 119, + "PointX": 170, + "PointY": 1028, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 120, + "PointX": 170, + "PointY": 170, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 121, + "PointX": 176, + "PointY": 176, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 122, + "PointX": 422, + "PointY": 176, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 123, + "PointX": 422, + "PointY": 1022, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 124, + "PointX": 176, + "PointY": 1022, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 125, + "PointX": 176, + "PointY": 176, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 126, + "PointX": 182, + "PointY": 182, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 127, + "PointX": 416, + "PointY": 182, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 128, + "PointX": 416, + "PointY": 1016, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 129, + "PointX": 182, + "PointY": 1016, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 130, + "PointX": 182, + "PointY": 182, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 131, + "PointX": 188, + "PointY": 188, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 132, + "PointX": 410, + "PointY": 188, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 133, + "PointX": 410, + "PointY": 1010, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 134, + "PointX": 188, + "PointY": 1010, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 135, + "PointX": 188, + "PointY": 188, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 136, + "PointX": 194, + "PointY": 194, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 137, + "PointX": 404, + "PointY": 194, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 138, + "PointX": 404, + "PointY": 1004, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 139, + "PointX": 194, + "PointY": 1004, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 140, + "PointX": 194, + "PointY": 194, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 141, + "PointX": 200, + "PointY": 200, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 142, + "PointX": 398, + "PointY": 200, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 143, + "PointX": 398, + "PointY": 998, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 144, + "PointX": 200, + "PointY": 998, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 145, + "PointX": 200, + "PointY": 200, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 146, + "PointX": 206, + "PointY": 206, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 147, + "PointX": 392, + "PointY": 206, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 148, + "PointX": 392, + "PointY": 992, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 149, + "PointX": 206, + "PointY": 992, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 150, + "PointX": 206, + "PointY": 206, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 151, + "PointX": 212, + "PointY": 212, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 152, + "PointX": 386, + "PointY": 212, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 153, + "PointX": 386, + "PointY": 986, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 154, + "PointX": 212, + "PointY": 986, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 155, + "PointX": 212, + "PointY": 212, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 156, + "PointX": 218, + "PointY": 218, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 157, + "PointX": 380, + "PointY": 218, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 158, + "PointX": 380, + "PointY": 980, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 159, + "PointX": 218, + "PointY": 980, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 160, + "PointX": 218, + "PointY": 218, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 161, + "PointX": 224, + "PointY": 224, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 162, + "PointX": 374, + "PointY": 224, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 163, + "PointX": 374, + "PointY": 974, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 164, + "PointX": 224, + "PointY": 974, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 165, + "PointX": 224, + "PointY": 224, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 166, + "PointX": 230, + "PointY": 230, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 167, + "PointX": 368, + "PointY": 230, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 168, + "PointX": 368, + "PointY": 968, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 169, + "PointX": 230, + "PointY": 968, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 170, + "PointX": 230, + "PointY": 230, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 171, + "PointX": 236, + "PointY": 236, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 172, + "PointX": 362, + "PointY": 236, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 173, + "PointX": 362, + "PointY": 962, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 174, + "PointX": 236, + "PointY": 962, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 175, + "PointX": 236, + "PointY": 236, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 176, + "PointX": 242, + "PointY": 242, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 177, + "PointX": 356, + "PointY": 242, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 178, + "PointX": 356, + "PointY": 956, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 179, + "PointX": 242, + "PointY": 956, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 180, + "PointX": 242, + "PointY": 242, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 181, + "PointX": 248, + "PointY": 248, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 182, + "PointX": 350, + "PointY": 248, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 183, + "PointX": 350, + "PointY": 950, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 184, + "PointX": 248, + "PointY": 950, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 185, + "PointX": 248, + "PointY": 248, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 186, + "PointX": 254, + "PointY": 254, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 187, + "PointX": 344, + "PointY": 254, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 188, + "PointX": 344, + "PointY": 944, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 189, + "PointX": 254, + "PointY": 944, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 190, + "PointX": 254, + "PointY": 254, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 191, + "PointX": 260, + "PointY": 260, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 192, + "PointX": 338, + "PointY": 260, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 193, + "PointX": 338, + "PointY": 938, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 194, + "PointX": 260, + "PointY": 938, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 195, + "PointX": 260, + "PointY": 260, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 196, + "PointX": 266, + "PointY": 266, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 197, + "PointX": 332, + "PointY": 266, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 198, + "PointX": 332, + "PointY": 932, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 199, + "PointX": 266, + "PointY": 932, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 200, + "PointX": 266, + "PointY": 266, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 201, + "PointX": 272, + "PointY": 272, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 202, + "PointX": 326, + "PointY": 272, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 203, + "PointX": 326, + "PointY": 926, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 204, + "PointX": 272, + "PointY": 926, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 205, + "PointX": 272, + "PointY": 272, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 206, + "PointX": 278, + "PointY": 278, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 207, + "PointX": 320, + "PointY": 278, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 208, + "PointX": 320, + "PointY": 920, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 209, + "PointX": 278, + "PointY": 920, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 210, + "PointX": 278, + "PointY": 278, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 211, + "PointX": 284, + "PointY": 284, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 212, + "PointX": 314, + "PointY": 284, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 213, + "PointX": 314, + "PointY": 914, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 214, + "PointX": 284, + "PointY": 914, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 215, + "PointX": 284, + "PointY": 284, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 216, + "PointX": 290, + "PointY": 290, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 217, + "PointX": 308, + "PointY": 290, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 218, + "PointX": 308, + "PointY": 908, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 219, + "PointX": 290, + "PointY": 908, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 220, + "PointX": 290, + "PointY": 290, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 221, + "PointX": 296, + "PointY": 296, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 222, + "PointX": 302, + "PointY": 296, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 223, + "PointX": 302, + "PointY": 902, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 224, + "PointX": 296, + "PointY": 902, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 225, + "PointX": 296, + "PointY": 296, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 226, + "PointX": 299, + "PointY": 299, + "Radius": 0, + "Depth": 12, + "Curve": 0 + }, + { + "LineID": 1, + "PointID": 227, + "PointX": 299, + "PointY": 899, + "Radius": 0, + "Depth": 12, + "Curve": 0 + } + ], + "OffsetList": [], + "OriginModeling": { + "outline": { + "pts": [ + { + "x": 30, + "y": 30 + }, + { + "x": 570, + "y": 30 + }, + { + "x": 570, + "y": 1170 + }, + { + "x": 30, + "y": 1170 + }, + { + "x": 30, + "y": 30 + } + ], + "buls": [ + 0, + 0, + 0, + 0, + 0 + ] + }, + "holes": [], + "thickness": 0, + "dir": 0, + "knifeRadius": 0, + "addLen": 0, + "addWidth": 0, + "addDepth": 0 + } + } + ], + "HoleDetail": [], + "OffSet": { + "x": 1, + "y": 1, + "z": 0 + }, + "NewVersion": false, + "OrgPointDetail": [], + "KaiLiaoSize": { + "width": 598, + "height": 1198 + }, + "SideModelDetail": [], + "SideHoleDetail": [] + } + ], + "AreaDeleted": false +} \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/framework/rpc/config/RpcConfiguration.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/framework/rpc/config/RpcConfiguration.java index d9db1aae4..624f44f4c 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/framework/rpc/config/RpcConfiguration.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/framework/rpc/config/RpcConfiguration.java @@ -1,5 +1,6 @@ package com.cf.imes.module.executor.framework.rpc.config; +import com.cf.imes.module.infra.api.file.FileApi; import com.cf.imes.module.system.api.machine.MachineApi; import com.cf.imes.module.system.api.user.AdminUserApi; import org.springframework.cloud.openfeign.EnableFeignClients; @@ -9,6 +10,6 @@ import org.springframework.context.annotation.Configuration; * @author there */ @Configuration(proxyBeanMethods = false) -@EnableFeignClients(clients = {AdminUserApi.class, MachineApi.class}) +@EnableFeignClients(clients = {AdminUserApi.class, MachineApi.class, FileApi.class}) public class RpcConfiguration { } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanService.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanService.java index 3d15ba2c5..008c6e95f 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanService.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanService.java @@ -1,9 +1,17 @@ package com.cf.imes.module.executor.service.optimizeplan; +import com.cf.imes.module.executor.controller.admin.plan.vo.AddRemainReqVO; import com.cf.imes.module.executor.controller.admin.plan.vo.PlateOptimize; +import com.cf.imes.module.executor.controller.admin.plan.vo.SavePlanPlateResult; import java.util.List; public interface OptimizePlanService { List getPlateListByPlanId(Long planId); + + Boolean addRemain(AddRemainReqVO vo); + + Boolean savePlanPlateResult(SavePlanPlateResult result); + + Boolean commit(Long planId); } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java index 01ccc83d0..c4c03583e 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java @@ -1,23 +1,113 @@ package com.cf.imes.module.executor.service.optimizeplan; +import cn.hutool.core.util.StrUtil; +import com.cf.imes.module.executor.controller.admin.plan.vo.AddRemainReqVO; import com.cf.imes.module.executor.controller.admin.plan.vo.PlateOptimize; +import com.cf.imes.module.executor.controller.admin.plan.vo.SavePlanPlateResult; +import com.cf.imes.module.executor.dal.dataobject.plan.PlanDO; +import com.cf.imes.module.executor.dal.dataobject.remainplaten.RemainPlateDO; import com.cf.imes.module.executor.dal.mysql.plan.PlanMapper; +import com.cf.imes.module.executor.dal.mysql.remainplaten.RemainPlateMapper; +import com.cf.imes.module.infra.api.file.FileApi; +import com.cf.imes.module.infra.api.file.dto.FileCreateReqDTO; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.io.IOException; import java.util.List; +import java.util.Objects; + +import static com.cf.imes.framework.common.exception.enums.GlobalErrorCodeConstants.UNKNOWN; +import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception; +import static com.cf.imes.module.executor.enums.ErrorCodeConstants.PLAN_NOT_EXISTS; /** * @author there */ @Service -public class OptimizePlanServiceImpl implements OptimizePlanService{ +public class OptimizePlanServiceImpl implements OptimizePlanService { @Resource private PlanMapper planMapper; + @Resource + private RemainPlateMapper remainPlateMapper; + + @Resource + private FileApi fileApi; + @Override public List getPlateListByPlanId(Long planId) { return planMapper.selectPlateListByPlanId(planId); } + + @Override + public Boolean addRemain(AddRemainReqVO vo) { + PlanDO planDO = planMapper.selectById(vo.getPlanId()); + if (Objects.isNull(planDO)) { + throw exception(PLAN_NOT_EXISTS); + } + RemainPlateDO remainPlateDO = RemainPlateDO.builder() + .width(vo.getWidth()) + .length(vo.getLength()) + .planId(vo.getPlanId()) + .initPlanId(vo.getPlanId()) + .goodsId(vo.getGoodsId()) + .name(vo.getGoodsName()) + .material(vo.getMaterial()) + .color(vo.getColor()) + .count(vo.getCount()) + .build(); + remainPlateMapper.insert(remainPlateDO); + return Boolean.TRUE; + } + + @Override + public Boolean savePlanPlateResult(SavePlanPlateResult result) { + PlanDO planDO = planMapper.selectById(result.getPlanId()); + if (Objects.isNull(planDO)) { + throw exception(PLAN_NOT_EXISTS); + } + try { + String placeDateFileUrlSource = planDO.getPlaceDateFileUrl(); + String placeOrderFileUrlSource = planDO.getPlaceOrderFileUrl(); + if (StrUtil.isNotBlank(placeDateFileUrlSource)) { + fileApi.deleteFileByPath(placeDateFileUrlSource).checkError(); + } + if (StrUtil.isNotBlank(placeOrderFileUrlSource)) { + fileApi.deleteFileByPath(placeOrderFileUrlSource).checkError(); + } + FileCreateReqDTO fileCreateReqDTO = new FileCreateReqDTO(); + + fileCreateReqDTO.setContent(result.getPlaceData().getBytes()); + String placeDateFileUrl = fileApi.createFile(fileCreateReqDTO).getCheckedData(); + + fileCreateReqDTO.setContent(result.getPlaceOrder().getBytes()); + String placeOrderFileUrl = fileApi.createFile(fileCreateReqDTO).getCheckedData(); + + PlanDO updateDO = PlanDO.builder() + .id(result.getPlanId()) + .placeDateFileUrl(placeOrderFileUrl) + .placeOrderFileUrl(placeDateFileUrl) + .build(); + planMapper.insert(updateDO); + + } catch (IOException e) { + throw exception(UNKNOWN); + } + return Boolean.TRUE; + } + + @Override + public Boolean commit(Long planId) { + PlanDO planDO = planMapper.selectById(planId); + if (Objects.isNull(planDO)) { + throw exception(PLAN_NOT_EXISTS); + } + planMapper.updateById(PlanDO.builder() + .id(planId) + .status(2) + .build()); + return Boolean.TRUE; + } } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plan/PlanMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plan/PlanMapper.xml index 9f8bf6c24..284ff9392 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plan/PlanMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plan/PlanMapper.xml @@ -21,13 +21,13 @@ \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/test/java/com/cf/imes/module/executor/service/zlib/ZlibTest.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/test/java/com/cf/imes/module/executor/service/zlib/ZlibTest.java index f4bad2238..18a14f557 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/test/java/com/cf/imes/module/executor/service/zlib/ZlibTest.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/test/java/com/cf/imes/module/executor/service/zlib/ZlibTest.java @@ -1,23 +1,29 @@ package com.cf.imes.module.executor.service.zlib; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.IoUtil; +import cn.hutool.json.JSONObject; import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.handler.codec.compression.JdkZlibDecoder; import com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.handler.codec.compression.ZlibDecoder; import com.cf.imes.module.executor.util.ZLibUtils; import lombok.Data; +import org.apache.commons.io.FileUtils; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import org.springframework.core.io.Resource; +import org.springframework.http.*; import org.springframework.jdbc.core.BeanPropertyRowMapper; import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.util.LinkedMultiValueMap; +import org.springframework.util.MultiValueMap; +import org.springframework.web.client.RestClientException; +import org.springframework.web.client.RestTemplate; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.UnsupportedEncodingException; +import java.io.*; +import java.net.URI; import java.sql.PreparedStatement; -import java.util.Base64; -import java.util.List; -import java.util.Objects; +import java.util.*; import java.util.zip.Inflater; public class ZlibTest { @@ -105,4 +111,29 @@ public class ZlibTest { byte[] Data; long CompanyID; } + + @Test + void getRes() throws IOException { + //创建url路径 + String url = "https://chenfeng.tech:777/api/v1/OrderBlockPlan/GetPlanOrderData"; + RestTemplate restTemplate = new RestTemplate(); + HttpHeaders headers = new HttpHeaders(); + MultiValueMap map = new LinkedMultiValueMap<>(); + //接口参数 + map.add("id",1306667105); + //头部类型 + headers.set("Cookie", ".AspNetCore.Cookies=CfDJ8CGzP7BhamtAnTFO8HhkPcxGBkdd4sCOIjQMV-nb37GAFKr4y6C0JA0B3JzRsDAckabiUgBXQaWyDNjCqVTvBNYwbHwVbI5b-eKdXwkIFqsJZObZA-RoLdsu1d9yy1LwBLQwJxDGKTSQzFtrs_eHDeDEuG8CWEF1Iq96X0goR_cFMn0EHWVeRnOlThmDzLkmTMhysVSludR6qV0HrD54GOv5MQvBzzcE-WlsrKTo5Uf0hT8z1fGMY8Hofa6UDh8yyJsz2LFTQTy4NpmklvyXIkwv0fw9bOynHLllUh5ToF0wgrxYFU3Rzgf863uAdtfRP1DY2Rqvf-51uvQHip-SIT_b5p7TaSRiG-M7pZTlI0oOVPZRhng7k-NeIJRdYQmj0h3G3WJHCTH7g1-YQjAGbYQkJFcZdAsZpR-kjOlp3sHpNCDUe0NucYrLNp4tTXesCL_-t8X5GsXMYGlX-oKU10I"); + //构造实体对象 + HttpEntity> param = new HttpEntity<>(map, headers); + //发起请求,服务地址,请求参数,返回消息体的数据类型 + ResponseEntity response = restTemplate.postForEntity(url, param, Resource.class); + //body + InputStream inputStream = response.getBody().getInputStream(); + BufferedOutputStream out = FileUtil.getOutputStream("C:\\Users\\Beal\\Desktop\\新建文件夹\\xx.txt"); + long copySize = IoUtil.copy(inputStream, out, IoUtil.DEFAULT_BUFFER_SIZE); + IoUtil.close(inputStream); + IoUtil.close(out); + + + } }