diff --git a/cf-framework/cf-spring-boot-starter-elasticsearch/src/main/java/com/cf/imes/framework/es/core/service/ESDocumentServiceImpl.java b/cf-framework/cf-spring-boot-starter-elasticsearch/src/main/java/com/cf/imes/framework/es/core/service/ESDocumentServiceImpl.java index 25ca4d658..35333fcbd 100644 --- a/cf-framework/cf-spring-boot-starter-elasticsearch/src/main/java/com/cf/imes/framework/es/core/service/ESDocumentServiceImpl.java +++ b/cf-framework/cf-spring-boot-starter-elasticsearch/src/main/java/com/cf/imes/framework/es/core/service/ESDocumentServiceImpl.java @@ -122,13 +122,16 @@ public class ESDocumentServiceImpl implements ESDocumentService{ public BulkResponse bulkCreate(String idxName, List documents) throws Exception { BulkRequest.Builder br = new BulkRequest.Builder(); LoginUser loginUser = SecurityFrameworkUtils.getLoginUser(); + Date date = new Date(); documents.forEach(document ->{ ESDocument esDocument = (ESDocument) document; if(StrUtil.isBlank(esDocument.getId())) { esDocument.setId(snowflake.nextIdStr()); } + esDocument.setCreator(loginUser.getId()); + esDocument.setCreateTime(date); esDocument.setUpdater(loginUser.getId()); - esDocument.setUpdateTime(new Date()); + esDocument.setUpdateTime(date); br.operations(op -> op.index(idx -> idx .index(idxName) .id(esDocument.getId().toString()) diff --git a/cf-framework/cf-spring-boot-starter-protection/src/main/java/com/cf/imes/framework/resilience4j/《芋道 Spring Boot 服务容错 Resilience4j 入门》.md b/cf-framework/cf-spring-boot-starter-protection/src/main/java/com/cf/imes/framework/resilience4j/《芋道 Spring Boot 服务容错 Resilience4j 入门》.md deleted file mode 100644 index 1d99255f9..000000000 --- a/cf-framework/cf-spring-boot-starter-protection/src/main/java/com/cf/imes/framework/resilience4j/《芋道 Spring Boot 服务容错 Resilience4j 入门》.md +++ /dev/null @@ -1 +0,0 @@ - diff --git a/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/convert/《芋道 Spring Boot 对象转换 MapStruct 入门》.md b/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/convert/《芋道 Spring Boot 对象转换 MapStruct 入门》.md deleted file mode 100644 index deee049ee..000000000 --- a/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/convert/《芋道 Spring Boot 对象转换 MapStruct 入门》.md +++ /dev/null @@ -1 +0,0 @@ - diff --git a/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/framework/monitor/《芋道 Spring Boot 监控工具 Admin 入门》.md b/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/framework/monitor/《芋道 Spring Boot 监控工具 Admin 入门》.md deleted file mode 100644 index 9e6fa8904..000000000 --- a/cf-module-infra/cf-module-infra-biz/src/main/java/com/cf/imes/module/infra/framework/monitor/《芋道 Spring Boot 监控工具 Admin 入门》.md +++ /dev/null @@ -1 +0,0 @@ - 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 e187fca62..937bc7051 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 @@ -2,10 +2,7 @@ package com.cf.imes.module.executor.controller.admin.plan; import com.cf.imes.framework.common.pojo.CommonResult; import com.cf.imes.framework.operatelog.core.annotations.OperateLog; -import com.cf.imes.module.executor.controller.admin.plan.vo.AddRemainReqVO; -import com.cf.imes.module.executor.controller.admin.plan.vo.OptimizeParamResVO; -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.controller.admin.plan.vo.*; import com.cf.imes.module.executor.service.optimizeplan.OptimizePlanService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.media.Schema; @@ -73,7 +70,15 @@ public class OptimizePlanController { @PreAuthorize("@ss.hasPermission('executor:optimize-plate:create')") public CommonResult getCfData(@RequestParam @Valid @NotNull(message = "排单id不能空") Long planId) { //todo - return CommonResult.success(null);//optimizePlanService.getCfData(planId)); + return CommonResult.success(null); + } + + @GetMapping("/getOptimizePlanParam") + @Operation(summary = "获取优化排单参数 (未完成)") + @PreAuthorize("@ss.hasPermission('executor:optimize-plate:create')") + public CommonResult getOptimizePlanParam (@RequestParam @Valid @NotNull(message = "排单id不能空") Long planId) { + //todo + return CommonResult.success(optimizePlanService.getOptimizePlanParam(planId)); } } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OptimizeParamRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OptimizeParamRespVO.java new file mode 100644 index 000000000..312ab43aa --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OptimizeParamRespVO.java @@ -0,0 +1,59 @@ +package com.cf.imes.module.executor.controller.admin.plan.vo; + +import com.cf.imes.module.executor.controller.admin.goods.vo.GoodsRespVO; +import com.cf.imes.module.executor.controller.admin.plate.vo.PlateRespVO; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.time.LocalDateTime; +import java.util.Date; +import java.util.List; + +import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; +import static com.cf.imes.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT; + +/** + * @author Beal + */ +@Data +public class OptimizeParamRespVO { + @Schema(description = "排单id") + private Long planId; + @Schema(description = "排单号") + private String planNo; + @Schema(description = "排序优先级") + private Integer sort; + @Schema(description = "排单类型:1 混单排单,2 生产单排单") + private Integer type; + @Schema(description = "排单状态 0 新单,1 板材已申请,2 开料中,3 已开料") + private Integer status; + @Schema(description = "是否支付") + private Boolean isPay; + @Schema(description = "机台 ID") + private Long machineId; + @Schema(description = "计划时间") + private LocalDateTime planTime; + @Schema(description = "生产单号") + private String orderNos; + @Schema(description = "排单优化文件地址") + private String placeDateFileUrl; + @Schema(description = "排单优化文件地址") + private String placeOrderFileUrl; + @Schema(description = "备注") + private String remark; + @Schema(description = "生产操作人") + private String operator; + @Schema(description = "生产时间") + @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT) + private Date produceTime; + + @Schema(description = "生产单列表") + private List orderList; + + @Schema(description = "商品列表") + private List goodsList; + + @Schema(description = "小板列表") + private List plateList; +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OrderResp.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OrderResp.java new file mode 100644 index 000000000..8438b0a76 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OrderResp.java @@ -0,0 +1,52 @@ +package com.cf.imes.module.executor.controller.admin.plan.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; +import static com.cf.imes.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT; + +/** + * @author Beal + */ +@Data +public class OrderResp { + @Schema(description = "生产单id") + private Long orderId; + @Schema(description = "父id") + private Long parentNo; + @Schema(description = "自定义单号") + private String customOrderNo; + @Schema(description = "客户") + private String customer; + @Schema(description = "地址") + private String address; + @Schema(description = "客户电话") + private String phoneNumber; + @Schema(description = "经销商") + private String dealer; + @Schema(description = "经销商电话") + private String dealerPhoneNumber; + @Schema(description = "业务员") + private String salesman; + @Schema(description = "拆单员") + private String splitter; + @Schema(description = "备注") + private String remark; + @Schema(description = "交付日期") + @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT) + private Date deliveryDate; + @Schema(description = "生产单类型,1主单 2子单") + private Integer type; + @Schema(description = "生产单排序号") + private Integer sort; + @Schema(description = "CAD数据类型,1CAD 2WebCAD 3Excel") + private Integer dataType; + @Schema(description = "订单状态,0未排单1已排单2生产中3加工完成4打包完成5入库完成6出库完成") + private Integer status; + +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plan/PlanMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plan/PlanMapper.java index 171bbb61a..d7d5e5e9c 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plan/PlanMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plan/PlanMapper.java @@ -35,4 +35,7 @@ public interface PlanMapper extends BaseMapperX { } List selectPlateListByPlanId(Long planId); + + OptimizeParamRespVO getOptimizePlanParam(Long planId); + } \ 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/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 5ed338ff7..e80f34025 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,6 @@ 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.OptimizeParamResVO; -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.controller.admin.plan.vo.*; import java.util.List; @@ -17,4 +14,6 @@ public interface OptimizePlanService { Boolean commit(Long planId); OptimizeParamResVO getOptimizeParam(Long planId); + + OptimizeParamRespVO getOptimizePlanParam(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 46dec29a6..e762b82dd 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 @@ -200,5 +200,10 @@ public class OptimizePlanServiceImpl implements OptimizePlanService { } + @Override + public OptimizeParamRespVO getOptimizePlanParam(Long planId) { + return planMapper.getOptimizePlanParam(planId); + } + } 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 8dc9f74ea..46ab15c25 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 @@ -19,6 +19,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/dept/DeptRespVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/dept/DeptRespVO.java index 56dc19bb8..a69cc189b 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/dept/DeptRespVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/dept/DeptRespVO.java @@ -36,4 +36,6 @@ public class DeptRespVO { @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "时间戳格式") private LocalDateTime createTime; + private Long organId; + } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/dept/DeptSaveReqVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/dept/DeptSaveReqVO.java index f59879aae..21a9bb343 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/dept/DeptSaveReqVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/dept/DeptSaveReqVO.java @@ -17,6 +17,9 @@ public class DeptSaveReqVO { @Schema(description = "部门编号", example = "1024") private Long id; + @Schema(description = "组织id") + private Long organId; + @Schema(description = "部门名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "晨丰") @NotBlank(message = "部门名称不能为空") @Size(max = 30, message = "部门名称长度不能超过 30 个字符") diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/post/PostPageReqVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/post/PostPageReqVO.java index 64923e440..aa6f20457 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/post/PostPageReqVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/post/PostPageReqVO.java @@ -19,4 +19,6 @@ public class PostPageReqVO extends PageParam { @Schema(description = "展示状态,参见 CommonStatusEnum 枚举类", example = "1") private Integer status; + private Long organId; + } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/post/PostRespVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/post/PostRespVO.java index 246f9872f..380031e47 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/post/PostRespVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/dept/vo/post/PostRespVO.java @@ -42,4 +42,5 @@ public class PostRespVO { @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) private LocalDateTime createTime; + private Long organId; } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/permission/RoleController.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/permission/RoleController.java index 1b93fa35d..1ac3f3c0f 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/permission/RoleController.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/permission/RoleController.java @@ -7,6 +7,7 @@ import com.cf.imes.framework.common.pojo.PageResult; import com.cf.imes.framework.common.util.object.BeanUtils; import com.cf.imes.framework.excel.core.util.ExcelUtils; import com.cf.imes.framework.operatelog.core.annotations.OperateLog; +import com.cf.imes.framework.organ.core.context.OrganContextHolder; import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils; import com.cf.imes.module.system.controller.admin.permission.vo.role.*; import com.cf.imes.module.system.controller.admin.permission.vo.role.RolePageReqVO; @@ -29,6 +30,7 @@ import javax.validation.Valid; import java.io.IOException; import java.util.Comparator; import java.util.List; +import java.util.Objects; import static com.cf.imes.framework.common.pojo.CommonResult.success; import static com.cf.imes.framework.operatelog.core.enums.OperateTypeEnum.EXPORT; @@ -47,14 +49,20 @@ public class RoleController { @Operation(summary = "创建角色") @PreAuthorize("@ss.hasPermission('system:role:create')") public CommonResult createRole(@Valid @RequestBody RoleSaveReqVO createReqVO) { + if(Objects.isNull(createReqVO.getOrganId())) { + createReqVO.setOrganId(OrganContextHolder.getOrganId()); + } Long organId = SecurityFrameworkUtils.getLoginUser().getOrganId(); - return success(roleService.createRole(createReqVO, null, organId)); + return success(roleService.createRole(createReqVO, null)); } @PutMapping("/update") @Operation(summary = "修改角色") @PreAuthorize("@ss.hasPermission('system:role:update')") public CommonResult updateRole(@Valid @RequestBody RoleSaveReqVO updateReqVO) { + if(Objects.isNull(updateReqVO.getOrganId())) { + updateReqVO.setOrganId(OrganContextHolder.getOrganId()); + } roleService.updateRole(updateReqVO); return success(true); } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java index 137329ce9..7f7488ac5 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java @@ -28,4 +28,6 @@ public class UserProfileUpdateReqVO { @Schema(description = "用户性别,参见 SexEnum 枚举类", example = "1") private Integer sex; + private Long organId; + } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/user/UserPageReqVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/user/UserPageReqVO.java index 341e52ed4..7b2202bb1 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/user/UserPageReqVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/user/UserPageReqVO.java @@ -47,4 +47,6 @@ public class UserPageReqVO extends PageParam { */ private String pyAll; + private Long organId; + } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/user/UserRespVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/user/UserRespVO.java index 79e587b17..bce45709c 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/user/UserRespVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/user/vo/user/UserRespVO.java @@ -72,4 +72,6 @@ public class UserRespVO{ @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "时间戳格式") private LocalDateTime createTime; + private Long organId; + } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/dept/PostDO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/dept/PostDO.java index d93eb8f24..a5afaff58 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/dept/PostDO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/dept/PostDO.java @@ -5,6 +5,7 @@ import com.cf.imes.framework.mybatis.core.dataobject.BaseDO; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.cf.imes.framework.organ.core.db.OrganBaseDO; import lombok.Data; import lombok.EqualsAndHashCode; @@ -17,7 +18,7 @@ import lombok.EqualsAndHashCode; @KeySequence("system_post_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 @Data @EqualsAndHashCode(callSuper = true) -public class PostDO extends BaseDO { +public class PostDO extends OrganBaseDO { /** * 岗位序号 diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machine/CuttingSettingDO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machine/CuttingSettingDO.java index 22cb8ca64..9e4cf7c1e 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machine/CuttingSettingDO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machine/CuttingSettingDO.java @@ -15,17 +15,14 @@ public class CuttingSettingDO extends ESDocument { @Schema(description = "机台id") private Long machineId; - @Schema(description = "默认true,按机台尺寸排版/按板材尺寸排版,false台面尺寸范围内自适应材料尺寸") - private Boolean useWorkPanelSize; + @Schema(description = "默认1,开料刀缝间隙") + private Integer cutGap; + + //基础配置 @Schema(description = "默认1220,机台台面宽度(原料板宽)") private Integer boardWidth; @Schema(description = "默认2440,机台台面长度(原料板长)") private Integer boardLength; - @Schema(description = "默认3,总修边值") - private Integer reverseTrimValue; - - @Schema(description = "默认1,开料刀缝间隙") - private Integer cutGap; @Schema(description = "默认0,工位1原点位置") private Integer originPoIntegerPosition; @Schema(description = "工作原点Z0基准面") @@ -34,6 +31,8 @@ public class CuttingSettingDO extends ESDocument { private String layoutBenchmark; @Schema(description = "排版基准点跟随大板定位") private Boolean useLocator4Place; + @Schema(description = "默认true,按机台尺寸排版/按板材尺寸排版,false台面尺寸范围内自适应材料尺寸") + private Boolean useWorkPanelSize; @Schema(description = "默认0 短边坐标轴向") private Integer widthSideAxis; @Schema(description = "默认2 长边坐标轴向") @@ -50,99 +49,70 @@ public class CuttingSettingDO extends ESDocument { private Integer offsetX_Block; @Schema(description = "默认0,小板定位坐标Y偏移") private Integer offsetY_Block; - @Schema(description = "默认200,余料生成规则1-两边均大于限定值") - private Integer scrapBlockSquare; - @Schema(description = "默认100,余料生成规则2-短边最小限定值") - private Integer srcapBlockWidthMin; - @Schema(description = "默认600,余料生成规则2-长边最小限定值") - private Integer scrapBlockWidthMax; - @Schema(description = "余料归方") - private Boolean scrapDirection; - @Schema(description = "钻孔延时") - private Boolean drillingDelay; - @Schema(description = "钻孔延时条件-孔直径上限") - private Double drillingDelayConditionMaxDiameter; - @Schema(description = "钻孔延时指令") - private String drillingDelayInstruction; + @Schema(description = "矩形板件R角开料 默认否") + private Boolean rectanglR; + @Schema(description = "圆弧加工使用IJ指令 默认否,使用R指令") + private Boolean arcUseIJ; + @Schema(description = "圆弧方向反转 默认否 顺时针G2/逆时针G3") + private Boolean arcInversion; + @Schema(description = "圆弧转多段线长度 默认0 不转") + private Boolean arcTurnLength; + + + //加工 @Schema(description = "默认40,安全高度") private Integer freeHeight; @Schema(description = "总修边值") private Double totalTrimValue; - /*@Schema(description = "默认0,停刀位置X坐标") - private Integer freeLocationX;*/ -/* @Schema(description = "默认2440,停刀位置Y坐标") - private Integer freeLocationY;*/ + @Schema(description = "默认3,总修边值") + private Integer reverseTrimValue; @Schema(description = "默认15000,空程速度") private Integer freeSpeed; - /* @Schema(description = "默认0,起始下刀高度(距板面)") - private Integer workStartHeight;*/ + @Schema(description = "默认2400,排钻空程速度") + private Integer holeFreeSpeed; @Schema(description = "默认3000,下刀速度") private Integer workStartSpeed; - @Schema(description = "默认20,斜向下刀水平距离") - private Integer workStartDistance; @Schema(description = "默认2,开料提前") private Integer workPreDistance; + @Schema(description = "默认25,收刀距离") + private Integer workEndDistace; + @Schema(description = "默认3000,收刀速度") + private Integer workEndSpeed; + @Schema(description = "默认1200,排钻速度") + private Integer holeSpeed; + @Schema(description = "默认8000,造型速度") + private Integer modelSpeed; @Schema(description = "默认8000,开料速度") private Integer cuttingSpeedForMaterial; @Schema(description = "公边切割速度") private Double cuttingSpeedForEdge; @Schema(description = "外转角切割速度") private Double outerCornerCuttingSpeed; - /* @Schema(description = "默认3000,转角切割速度") - private Integer workCornerSpeed;*/ - @Schema(description = "默认3000,收刀速度") - private Integer workEndSpeed; - @Schema(description = "默认25,收刀距离") - private Integer workEndDistace; - /* @Schema(description = "默认0,共边加速") - private Integer sameBorderHighSpeed;*/ @Schema(description = "默认0,内转角减速提前距离") private Integer innerCornerDistence; @Schema(description = "默认3000,内转角速度") private Integer innerCornerSpeed; - @Schema(description = "默认2400,排钻空程速度") - private Integer holeFreeSpeed; @Schema(description = "默认2,排钻初始段深度") private Integer holeFirstDepth; @Schema(description = "默认800,排钻初始段速度") private Integer holeFirstSpeed; - @Schema(description = "默认1200,排钻速度") - private Integer holeSpeed; - @Schema(description = "默认8000,造型速度") - private Integer modelSpeed; - @Schema(description = "默认true,双面加工优先排版") - private Boolean allowDoubleHoleFirstSort; - @Schema(description = "余料板允许排入双面加工的板件") - private Boolean yuLiaoBoardDo2FaceBlock; - /* @Schema(description = "默认150,开料优先最小宽度") - private Integer autoSortingMinWidth;*/ - @Schema(description = "默认true,反面加工先修边后加工孔槽") - private Boolean firstCutBorderInFaceB; @Schema(description = "默认false,通孔一刀打穿") private Boolean tongHoleOnlyOneTime; @Schema(description = "穿孔对面加工") private Boolean tongKongDoBackFace; @Schema(description = "先修边加工") private Boolean priorTrimmingProcessing; - /* @Schema(description = "默认false,通孔(穿孔)分正反两刀加工(失效?)") - private Boolean tongHoleUseTwoTime;*/ @Schema(description = "默认false,开料分工") private Boolean allowDoubleSplit; @Schema(description = "默认8,分刀步进深度") private Integer splitDepth; -/* @Schema(description = "默认false,最小板件分刀开料") - private Boolean limitDouleSplit;*/ + @Schema(description = "仅加工孔/造型,") + private Boolean disposeCutBlock; @Schema(description = "默认100,小板分刀-短边上限") private Integer doubleSplitWidth; @Schema(description = "默认100,小板分刀-长边上限") private Integer doubleSplitLength; - /* @Schema(description = "默认空,强制分刀小板顺序号,如:1,-1,-2,第一片、最后一片、倒数第二片分刀") - private String splitBlockSeqIds;*/ - /* @Schema(description = "默认false,使用横竖算法(电子锯)优化,目前无效") - private Boolean useDianZiJuMethod;*/ - @Schema(description = "仅加工孔/造型,") - private Boolean disposeCutBlock; @Schema(description = "挖穿板内板件优先开料") private Boolean cutBlockInModelFirst; @Schema(description = "同刀辅助开料") @@ -157,89 +127,22 @@ public class CuttingSettingDO extends ESDocument { private Double helpCutKnifeDepth; @Schema(description = "辅助开料指令") private String auxiliaryCuttingInstruction; - /* @Schema(description = "默认false,旧版本刀库配置(不带轴号、排钻启停使用排钻包启停参数项设置);true,使用新模式刀库配置(支持轴号、组合刀、多轴预启动)。") - private Boolean useNewKnifeModule;*/ - /* @Schema(description = "默认[],造型刀组") - private List modelKnifeGroup;*/ - @Schema(description = "KnifeList") - private List knifeList; - @Schema(description = "默认{0}_{1}_{2},导出zip文件名") - private List exportOrderPathName; - @Schema(description = "大板NC正(A)面文件名") - private String largePlateNcPositiveFileName; - @Schema(description = "大板NC反(B)面文件名") - private String largePlateNcNegativeFileName; - @Schema(description = "小板NC正(A)面文件名") - private String smallPlateNcPositiveFileName; - @Schema(description = "小板NC反(B)面文件名") - private String smallPlateNcNegativeFileName; - @Schema(description = "大板DXF(排版图)文件名") - private String largePlateDxfLayoutFileName; - @Schema(description = "小板DXF(孔槽加工图)文件名") - private String smallPlateDxfProcessingFileName; - @Schema(description = "导出大板NC反(B)面文件") - private String exportLargePlateNcNegativeFile; - @Schema(description = "合并大板NC正反(AB)面文件") - private String mergeLargePlateNcFiles; - @Schema(description = "导出小板NC正(A)面文件") - private String exportSmallPlateNcPositiveFile; - @Schema(description = "导出小板NC反(B)面文件") - private String exportSmallPlateNcNegativeFile; - @Schema(description = "合并小板NC正反(AB)面文件") - private String mergeSmallPlateNcFiles; - @Schema(description = "导出大板DXF(排版图)文件") - private String exportLargePlateDxfLayoutFile; - @Schema(description = "导出小板DXF(孔槽加工图)文件") - private String exportSmallPlateDxfProcessingFile; - @Schema(description = "NC文件编码") - private String ncFileEncoding; - @Schema(description = "添加NC文件注释") - private String addNcFileComments; - @Schema(description = "上料代码插入到NC文件头前") - private Boolean insertLoadingCodeAtFileHeader; - @Schema(description = "上料代码") - private String loadingCode; - @Schema(description = "大板NC正(A)面文件头") - private String largePlateNcPositiveFileHeader; - @Schema(description = "大板NC正(A)面文件尾") - private String largePlateNcPositiveFileFooter; - @Schema(description = "大板NC反(B)面文件头") - private String largePlateNcNegativeFileHeader; - @Schema(description = "大板NC反(B)面文件尾") - private String largePlateNcNegativeFileFooter; - @Schema(description = "小板NC文件头") - private String smallPlateNcFileHeader; - @Schema(description = "小板NC文件尾") - private String smallPlateNcFileFooter; - @Schema(description = "小板切割开始") - private String smallPlateCuttingStart; - @Schema(description = "小板切割结束") - private String smallPlateCuttingEnd; - - /* @Schema(description = "默认{0} {1},导出NC文件路径") - private String exportBoardPathName;*/ - /* @Schema(description = "默认{0}_A.nc,正面NC文件名") - private String boardFileA; - @Schema(description = "默认{0}_B.nc,反面NC文件名") - private String boardFileB; - @Schema(description = "默认{0}.nc,小板文件名") - private String blockFile; - @Schema(description = "默认空,正面NC文件头") - private String ncFileHead; - @Schema(description = "默认空,正面NC文件尾") - private String ncFileEnd; - @Schema(description = "默认空,反面NC文件头") - private String ncFileHead_B; - @Schema(description = "默认空,反面NC文件尾") - private String ncFileEnd_B; - @Schema(description = "默认空,小板(补孔)NC文件头") - private String ncFileHead_Block; - @Schema(description = "默认空,小板(补孔)NC文件尾") - private String ncFileEnd_Block;*/ + @Schema(description = "默认200,余料生成规则1-两边均大于限定值") + private Integer scrapBlockSquare; + @Schema(description = "默认100,余料生成规则2-短边最小限定值") + private Integer srcapBlockWidthMin; + @Schema(description = "默认600,余料生成规则2-长边最小限定值") + private Integer scrapBlockWidthMax; + @Schema(description = "余料归方") + private Boolean scrapDirection; + @Schema(description = "钻孔延时") + private Boolean drillingDelay; + @Schema(description = "钻孔延时条件-孔直径上限") + private Double drillingDelayConditionMaxDiameter; + @Schema(description = "钻孔延时指令") + private String drillingDelayInstruction; @Schema(description = "默认false,矩形板件开料R拐角") private Boolean regularBlockFilletCurve; - /* @Schema(description = "默认true,非矩形板R倒角") - private Boolean unregularBlockFilletCurve;*/ @Schema(description = "默认false,加工圆弧使用IJ指令") private Boolean dealCircleWithIJ; @Schema(description = "默认false,G2/G3圆弧方向反转") @@ -248,28 +151,16 @@ public class CuttingSettingDO extends ESDocument { private Boolean arcLineMaxLength; @Schema(description = "排钻按位置加工") private Boolean holePositionProcessing; - /* @Schema(description = "默认true,导出NC文件注释") - private Boolean allowNCComments;*/ - /* @Schema(description = "默认false,G代码行尾加结束符") - private Boolean allowAddGcodeEndChar; - @Schema(description = "默认空,G代码行结尾代码") - private String gcodeEndChar; - @Schema(description = "默认false(utf8),NC文件编码,true(gb2312)") - private Boolean ncFileIsGB2312; - @Schema(description = "默认true,导出反面NC文件") - private Boolean allowExportNC_BackFace; - @Schema(description = "默认false,正反面加工合成一个文件") - private Boolean oneBoardFile; - @Schema(description = "默认false,导出小板NC文件") - private Boolean allowExportNC_block; - @Schema(description = "默认false,是否导出优化结果cfdat文件") - private Boolean allowExportDataFile; - @Schema(description = "默认false,导出大板dxf文件") - private Boolean allowExportBoardDxf; - @Schema(description ="默认false,显示双工位配置") - private Boolean showTwoWorkSpace; - @Schema(description ="默认false,显示选择开料刀配置") - private Boolean showChooseCutKnife;*/ + + + @Schema(description = "默认20,斜向下刀水平距离") + private Integer workStartDistance; + @Schema(description = "刀库") + private List knifeList; + + + + //高级设置 @Schema(description ="默认true,显示开料机工作模式(是否排钻/造型,sc)配置") private Boolean showPriorFacing; @Schema(description = "双工位") @@ -344,19 +235,358 @@ public class CuttingSettingDO extends ESDocument { private Double cNCModelingSpeed; @Schema(description = "NC指令可配置") private String configurableNCCommands; + + + @Schema(description = "默认false,启用自定义板件编号") private Boolean allowBlockNo_Note; @Schema(description = "默认空,机台备注") private String remark; - @Schema(description = "矩形板件R角开料 默认否") - private Boolean rectanglR; - @Schema(description = "圆弧加工使用IJ指令 默认否,使用R指令") - private Boolean arcUseIJ; - @Schema(description = "圆弧方向反转 默认否 顺时针G2/逆时针G3") - private Boolean arcInversion; - @Schema(description = "圆弧转多段线长度 默认0 不转") - private Boolean arcTurnLength; + + + //文件导出 + @Schema(description = "默认{0}_{1}_{2},导出zip文件名") + private List exportOrderPathName; + @Schema(description = "大板NC正(A)面文件名") + private String largePlateNcPositiveFileName; + @Schema(description = "大板NC反(B)面文件名") + private String largePlateNcNegativeFileName; + @Schema(description = "小板NC正(A)面文件名") + private String smallPlateNcPositiveFileName; + @Schema(description = "小板NC反(B)面文件名") + private String smallPlateNcNegativeFileName; + @Schema(description = "大板DXF(排版图)文件名") + private String largePlateDxfLayoutFileName; + @Schema(description = "小板DXF(孔槽加工图)文件名") + private String smallPlateDxfProcessingFileName; + @Schema(description = "导出大板NC反(B)面文件") + private String exportLargePlateNcNegativeFile; + @Schema(description = "合并大板NC正反(AB)面文件") + private String mergeLargePlateNcFiles; + @Schema(description = "导出小板NC正(A)面文件") + private String exportSmallPlateNcPositiveFile; + @Schema(description = "导出小板NC反(B)面文件") + private String exportSmallPlateNcNegativeFile; + @Schema(description = "合并小板NC正反(AB)面文件") + private String mergeSmallPlateNcFiles; + @Schema(description = "导出大板DXF(排版图)文件") + private String exportLargePlateDxfLayoutFile; + @Schema(description = "导出小板DXF(孔槽加工图)文件") + private String exportSmallPlateDxfProcessingFile; + @Schema(description = "NC文件编码") + private String ncFileEncoding; + @Schema(description = "添加NC文件注释") + private String addNcFileComments; + @Schema(description = "上料代码插入到NC文件头前") + private Boolean insertLoadingCodeAtFileHeader; + @Schema(description = "上料代码") + private String loadingCode; + @Schema(description = "大板NC正(A)面文件头") + private String largePlateNcPositiveFileHeader; + @Schema(description = "大板NC正(A)面文件尾") + private String largePlateNcPositiveFileFooter; + @Schema(description = "大板NC反(B)面文件头") + private String largePlateNcNegativeFileHeader; + @Schema(description = "大板NC反(B)面文件尾") + private String largePlateNcNegativeFileFooter; + @Schema(description = "小板NC文件头") + private String smallPlateNcFileHeader; + @Schema(description = "小板NC文件尾") + private String smallPlateNcFileFooter; + @Schema(description = "小板切割开始") + private String smallPlateCuttingStart; + @Schema(description = "小板切割结束") + private String smallPlateCuttingEnd; + + //优化排版 + @Schema(description = "默认true,双面加工优先排版") + private Boolean allowDoubleHoleFirstSort; + @Schema(description = "余料板允许排入双面加工的板件") + private Boolean yuLiaoBoardDo2FaceBlock; + + //样式排版 + @Schema(description = "标尺(工件坐标)-刻度标线 间距") + private Double scaleLineSpacing; + @Schema(description = "标尺(工件坐标)-刻度标线线宽") + private Double scaleLineWidth; + @Schema(description = "标尺(工件坐标)-刻度标线线长") + private Double scaleLineLong; + @Schema(description = "标尺(工件坐标)-刻度标线颜色") + private String scaleLineColor; + @Schema(description = "标尺(工件坐标)-刻度标线 偏移标尺线距离") + private Double scaleLineDistance; + @Schema(description = "标尺(工件坐标)-数值 字体") + private String rulerValueFont; + @Schema(description = "标尺(工件坐标)-数值 大小") + private Double rulerValueSize; + @Schema(description = "标尺(工件坐标)-颜色") + private String rulerValueColor; + @Schema(description = "标尺(工件坐标)-数值 ") + private Double rulerValueDistance; + @Schema(description = "台面轮廓-轮廓线 线宽") + private Double tableContorLineWidth; + @Schema(description = "台面轮廓-轮廓线 颜色") + private String tableContorColor; + @Schema(description = "台面轮廓-填充 颜色") + private String tableFillColor; + @Schema(description = "台面轮廓-填充 平铺几何线条") + private Double tableFillGeometry; + @Schema(description = "工位号 字体") + private String useDoubleworkFont; + @Schema(description = "工位号 大小") + private Double useDoubleworkSize; + @Schema(description = "工位号 颜色") + private String useDoubleworkColor; + @Schema(description = "工位号 偏移台面轮廓线距离") + private String useDoubleworkDistance; + @Schema(description = "原始轮廓-轮廓线 线宽") + private Double originContourWidth; + @Schema(description = "原始轮廓-轮廓线 颜色") + private String originContourColor; + @Schema(description = "原始轮廓-填充 颜色") + private String originFillColor; + @Schema(description = "原始轮廓-填充 平铺几何线条") + private Double originFillGeometry; + @Schema(description = "修边偏移轮廓-轮廓线 线宽") + private Double wheelContourWidth; + @Schema(description = "修边偏移轮廓-轮廓线 颜色") + private String wheelContourColor; + @Schema(description = "修边偏移轮廓-与原始轮廓间的填充 颜色") + private String wheelFillColor; + @Schema(description = "修边偏移轮廓-与原始轮廓间的填充 平铺几何线条") + private Double wheelFillGeometry; + @Schema(description = "尺寸规格-长*宽 字体") + private String dimensionFont; + @Schema(description = "尺寸规格-长*宽 大小") + private Double dimensionSize; + @Schema(description = "尺寸规格-长*宽 颜色") + private String dimensionColor; + @Schema(description = "尺寸规格-长*宽 偏移台面轮廓线距离") + private Double dimensionDistance; + @Schema(description = "开料原始轮廓-轮廓线 线宽") + private Double cuttingMaterialWidth; + @Schema(description = "开料原始轮廓-轮廓线 颜色") + private String cuttingMaterialColor; + @Schema(description = "开料原始轮廓-轮廓线 正纹/反纹区分") + private Boolean cuttingMaterialDistinguish; + @Schema(description = "开料原始轮廓-填充 颜色") + private String cuttingFillColor; + @Schema(description = "开料原始轮廓-填充 平铺几何线条") + private Double cuttingFillGeometry; + @Schema(description = "扩展尺寸轮廓-轮廓线 线宽") + private Double expandContourWidth; + @Schema(description = "扩展尺寸轮廓-轮廓线 颜色") + private String expandContourColor; + @Schema(description = "扩展尺寸轮廓-与原始轮廓间的填充 颜色") + private String expandFillColor; + @Schema(description = "扩展尺寸轮廓-与原始轮廓间的填充 平铺几何线条") + private Double expandFillGeometry; + @Schema(description = "选中后显示边界坐标和尺寸数值-标线/界线 线宽") + private Double checkLineWidth; + @Schema(description = "选中后显示边界坐标和尺寸数值-标线/界线 线长") + private Double checkLineLong; + @Schema(description = "选中后显示边界坐标和尺寸数值-标线/界线 颜色") + private String checkLineColor; + @Schema(description = "选中后显示边界坐标和尺寸数值-标线/界线 偏移标尺线距离") + private Double checkLineDistance; + @Schema(description = "选中后显示边界坐标和尺寸数值-数值 字体") + private String checkNumberFont; + @Schema(description = "选中后显示边界坐标和尺寸数值-数值 大小") + private Double checkNumberSize; + @Schema(description = "选中后显示边界坐标和尺寸数值-数值 颜色") + private String checkNumberColor; + @Schema(description = "选中后显示边界坐标和尺寸数值-数值 偏移标尺线距离") + private Double checkNumberDistance; + @Schema(description = "干涉显示-填充 颜色") + private String displayFillColor; + @Schema(description = "干涉显示-填充 平铺几何线条") + private Double displayFillGeometry; + @Schema(description = "移动/拖拽显示-填充 颜色") + private String dragFillColor; + @Schema(description = "移动/拖拽显示-填充 平铺几何线条") + private Double dragFillGeometry; + @Schema(description = "开料顺序-数值 字体") + private String cuttingOrderFont; + @Schema(description = "开料顺序-数值 大小") + private Double cuttingOrderSize; + @Schema(description = "开料顺序-数值 颜色") + private String cuttingOrderColor; + @Schema(description = "下刀点-圆点 大小") + private Double cuttingPointSize; + @Schema(description = "下刀点-圆点 颜色") + private String cuttingPointColor; + @Schema(description = "对齐参考点-圆点 大小") + private Double alignPointSize; + @Schema(description = "对齐参考点-圆点 颜色") + private String alignPointColor; + @Schema(description = "对齐参考点-圆点 移动/对齐参考点") + private Double alignPointType; + @Schema(description = "反面加工标记-圆圈 直径") + private Double reverseDiameter; + @Schema(description = "反面加工标记-圆圈 线宽") + private Double reverseLineWidth; + @Schema(description = "反面加工标记-圆圈 颜色") + private String reverseColor; + @Schema(description = "板高方向标记-箭头 大小") + private Double flagArrowSize; + @Schema(description = "板高方向标记-箭头 颜色") + private String flagArrowColor; + @Schema(description = "板件编号-编码 字体") + private String banCodeFont; + @Schema(description = "板件编号-编码 大小") + private Double banCodeSize; + @Schema(description = "板件编号-编码 颜色") + private String banCodeColor; + @Schema(description = "板件编号-板件尺寸 字体") + private String banNumFont; + @Schema(description = "板件编号-板件尺寸 大小") + private Double banNumSize; + @Schema(description = "板件编号-板件尺寸 颜色") + private String banNumColor; + @Schema(description = "余料板-轮廓线 线宽") + private Double restTourWidth; + @Schema(description = "余料板-轮廓线 颜色") + private String restTourColor; + @Schema(description = "余料板-填充 颜色") + private String restFillColor; + @Schema(description = "余料板-填充 平铺几何线条") + private Double restFillGeometry; + @Schema(description = "孔位显示-轮廓线 线宽") + private Double holeTourWidth; + @Schema(description = "孔位显示-轮廓线 颜色") + private String holeTourColor; + @Schema(description = "孔位显示-填充 颜色") + private String holeFillColor; + @Schema(description = "孔位显示-填充 平铺几何线条") + private Double holeFillGeometry; + @Schema(description = "孔位显示-填充 正反面挖穿区分") + private Boolean holeFillType; + @Schema(description = "造型刀路/槽轮廓显示-轮廓线 线宽") + private Double profilingTourWidth; + @Schema(description = "造型刀路/槽轮廓显示-轮廓线 颜色") + private String profilingTourColor; + @Schema(description = "造型刀路/槽轮廓显示-填充 颜色") + private String profilingFillColor; + @Schema(description = "造型刀路/槽轮廓显示-填充 平铺几何线条") + private Double profilingFillGeometry; + @Schema(description = "造型刀路/槽轮廓显示-填充 正反面挖穿区分") + private Boolean profilingFillType; + @Schema(description = "孔槽标注-位置 距小板边") + private Double holePositionSmall; + @Schema(description = "孔槽标注-位置 距大板/台面") + private Double holePositionLarge; + @Schema(description = "孔槽标注-位置 字体") + private String holePositionFont; + @Schema(description = "孔槽标注-位置 大小") + private Double holePositionSize; + @Schema(description = "孔槽标注-位置 颜色") + private String holePositionColor; + @Schema(description = "孔槽标注-位置 线宽") + private Double holePositionWidth; + @Schema(description = "孔槽标注-尺寸 直径/宽度") + private Double holeSizeDiameter; + @Schema(description = "孔槽标注-尺寸 深度") + private Double holeSizeDepth; + @Schema(description = "孔槽标注-尺寸 字体") + private String holeSizeFont; + @Schema(description = "孔槽标注-尺寸 大小") + private Double holeSizeSize; + @Schema(description = "孔槽标注-尺寸 颜色") + private String holeSizeColor; + + + + @NoArgsConstructor + @Data + public static class KnifeListBean { + @Schema(description = "KnifeID") + private Integer knifeID; + @Schema(description = "刀具") + private String knifeName; + @Schema(description = "刀具类型") + private Integer knifeType; + @Schema(description = "轴号") + private Integer axleID; + @Schema(description = "辅助开料") + private Boolean allowCut; + @Schema(description = "排钻") + private Boolean allowHole; + @Schema(description = "辅助开料") + private Boolean allowHole1; + @Schema(description = "是否运行铣孔") + private Boolean isXiKnif; + @Schema(description = "AllowPrevRun") + private Boolean allowPrevRun; + @Schema(description = "直径") + private Integer diameter; + @Schema(description = "刀长") + private Integer length; + @Schema(description = "步进深度") + private Double stepDepth; + @Schema(description = "是否主刀") + private Boolean mainKnife; + @Schema(description = "组号") + private Integer groupNumber; + @Schema(description = "X轴偏移") + private Double f_offsetX; + @Schema(description = "Y轴偏移") + private Double f_offsetY; + @Schema(description = "Diameter2") + private Integer diameter2; + @Schema(description = "GroupType") + private String groupType; + @Schema(description = "X轴偏移") + private Integer offsetX; + @Schema(description = "Y轴偏移") + private Integer offsetY; + @Schema(description = "Z轴偏移") + private Integer offsetZ; + @Schema(description = "速度") + private Integer speed; + @Schema(description = "轴启动指令") + private String axisStartInstruction; + @Schema(description = "刀启动指令") + private String knifeStartInstruction; + @Schema(description = "刀停止指令") + private String knifeStopInstruction; + @Schema(description = "轴停止指令") + private String axisStopInstruction; + @Schema(description = "是否预启动") + private String preStartEnabled; + @Schema(description = "高级加工") + private Boolean advancedProcessingEnabled; + @Schema(description = "集合加工") + private Boolean batchProcessingEnabled; + @Schema(description = "默认开料刀") + private Boolean defaultCuttingToolSelected; + + } + + /* @Schema(description = "默认false,旧版本刀库配置(不带轴号、排钻启停使用排钻包启停参数项设置);true,使用新模式刀库配置(支持轴号、组合刀、多轴预启动)。") + private Boolean useNewKnifeModule;*/ + /* @Schema(description = "默认[],造型刀组") + private List modelKnifeGroup;*/ + /* @Schema(description = "默认false,使用横竖算法(电子锯)优化,目前无效") + private Boolean useDianZiJuMethod;*/ + /* @Schema(description = "默认空,强制分刀小板顺序号,如:1,-1,-2,第一片、最后一片、倒数第二片分刀") + private String splitBlockSeqIds;*/ + /* @Schema(description = "默认false,最小板件分刀开料") + private Boolean limitDouleSplit;*/ + /* @Schema(description = "默认false,通孔(穿孔)分正反两刀加工(失效?)") + private Boolean tongHoleUseTwoTime;*/ + /* @Schema(description = "默认150,开料优先最小宽度") + private Integer autoSortingMinWidth;*/ + /* @Schema(description = "默认0,共边加速") + private Integer sameBorderHighSpeed;*/ + /* @Schema(description = "默认3000,转角切割速度") + private Integer workCornerSpeed;*/ + /*Schema(description = "默认0,停刀位置X坐标") + private Integer freeLocationX; + @Schema(description = "默认2440,停刀位置Y坐标") + private Integer freeLocationY; + @Schema(description = "默认0,起始下刀高度(距板面)") + private Integer workStartHeight;*/ /*@Schema(description ="默认false,显示自动上料代码配置") private Boolean showAutoLoadBoard; @Schema(description ="默认false,显示排钻包起停配置") @@ -566,70 +796,50 @@ public class CuttingSettingDO extends ESDocument { private Boolean allowOppositeDealChuanHole; @Schema(description = "默认cftech123456789,高级配置密码") private String managerPassword;*/ + /* @Schema(description = "默认{0} {1},导出NC文件路径") + private String exportBoardPathName;*/ + /* @Schema(description = "默认{0}_A.nc,正面NC文件名") + private String boardFileA; + @Schema(description = "默认{0}_B.nc,反面NC文件名") + private String boardFileB; + @Schema(description = "默认{0}.nc,小板文件名") + private String blockFile; + @Schema(description = "默认空,正面NC文件头") + private String ncFileHead; + @Schema(description = "默认空,正面NC文件尾") + private String ncFileEnd; + @Schema(description = "默认空,反面NC文件头") + private String ncFileHead_B; + @Schema(description = "默认空,反面NC文件尾") + private String ncFileEnd_B; + @Schema(description = "默认空,小板(补孔)NC文件头") + private String ncFileHead_Block; + @Schema(description = "默认空,小板(补孔)NC文件尾") + private String ncFileEnd_Block;*/ + /* @Schema(description = "默认true,非矩形板R倒角") + private Boolean unregularBlockFilletCurve;*/ - @NoArgsConstructor - @Data - public static class KnifeListBean { - @Schema(description = "KnifeID") - private Integer knifeID; - @Schema(description = "刀具") - private String knifeName; - @Schema(description = "刀具类型") - private Integer knifeType; - @Schema(description = "轴号") - private Integer axleID; - @Schema(description = "辅助开料") - private Boolean allowCut; - @Schema(description = "排钻") - private Boolean allowHole; - @Schema(description = "辅助开料") - private Boolean allowHole1; - @Schema(description = "是否运行铣孔") - private Boolean isXiKnif; - @Schema(description = "AllowPrevRun") - private Boolean allowPrevRun; - @Schema(description = "直径") - private Integer diameter; - @Schema(description = "刀长") - private Integer length; - @Schema(description = "步进深度") - private Double stepDepth; - @Schema(description = "是否主刀") - private Boolean mainKnife; - @Schema(description = "组号") - private Integer groupNumber; - @Schema(description = "X轴偏移") - private Double f_offsetX; - @Schema(description = "Y轴偏移") - private Double f_offsetY; - @Schema(description = "Diameter2") - private Integer diameter2; - @Schema(description = "GroupType") - private String groupType; - @Schema(description = "X轴偏移") - private Integer offsetX; - @Schema(description = "Y轴偏移") - private Integer offsetY; - @Schema(description = "Z轴偏移") - private Integer offsetZ; - @Schema(description = "速度") - private Integer speed; - @Schema(description = "轴启动指令") - private String axisStartInstruction; - @Schema(description = "刀启动指令") - private String knifeStartInstruction; - @Schema(description = "刀停止指令") - private String knifeStopInstruction; - @Schema(description = "轴停止指令") - private String axisStopInstruction; - @Schema(description = "是否预启动") - private String preStartEnabled; - @Schema(description = "高级加工") - private Boolean advancedProcessingEnabled; - @Schema(description = "集合加工") - private Boolean batchProcessingEnabled; - @Schema(description = "默认开料刀") - private Boolean defaultCuttingToolSelected; + /* @Schema(description = "默认true,导出NC文件注释") + private Boolean allowNCComments;*/ + /* @Schema(description = "默认false,G代码行尾加结束符") + private Boolean allowAddGcodeEndChar; + @Schema(description = "默认空,G代码行结尾代码") + private String gcodeEndChar; + @Schema(description = "默认false(utf8),NC文件编码,true(gb2312)") + private Boolean ncFileIsGB2312; + @Schema(description = "默认true,导出反面NC文件") + private Boolean allowExportNC_BackFace; + @Schema(description = "默认false,正反面加工合成一个文件") + private Boolean oneBoardFile; + @Schema(description = "默认false,导出小板NC文件") + private Boolean allowExportNC_block; + @Schema(description = "默认false,是否导出优化结果cfdat文件") + private Boolean allowExportDataFile; + @Schema(description = "默认false,导出大板dxf文件") + private Boolean allowExportBoardDxf; + @Schema(description ="默认false,显示双工位配置") + private Boolean showTwoWorkSpace; + @Schema(description ="默认false,显示选择开料刀配置") + private Boolean showChooseCutKnife;*/ - } } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machinetemplate/CuttingTemplateMachineDO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machinetemplate/CuttingTemplateMachineDO.java index 2c7e04a19..fe3fa3540 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machinetemplate/CuttingTemplateMachineDO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machinetemplate/CuttingTemplateMachineDO.java @@ -19,16 +19,14 @@ public class CuttingTemplateMachineDO extends ESDocument { @Schema(description = "开料机台模板id") private Long templateId; - @Schema(description = "默认true,按机台尺寸排版/按板材尺寸排版,false台面尺寸范围内自适应材料尺寸") - private Boolean useWorkPanelSize; + @Schema(description = "默认1,开料刀缝间隙") + private Integer cutGap; + + //基础配置 @Schema(description = "默认1220,机台台面宽度(原料板宽)") private Integer boardWidth; @Schema(description = "默认2440,机台台面长度(原料板长)") private Integer boardLength; - @Schema(description = "默认3,总修边值") - private Integer reverseTrimValue; - @Schema(description = "默认1,开料刀缝间隙") - private Integer cutGap; @Schema(description = "默认0,工位1原点位置") private Integer originPoIntegerPosition; @Schema(description = "工作原点Z0基准面") @@ -37,6 +35,8 @@ public class CuttingTemplateMachineDO extends ESDocument { private String layoutBenchmark; @Schema(description = "排版基准点跟随大板定位") private Boolean useLocator4Place; + @Schema(description = "默认true,按机台尺寸排版/按板材尺寸排版,false台面尺寸范围内自适应材料尺寸") + private Boolean useWorkPanelSize; @Schema(description = "默认0 短边坐标轴向") private Integer widthSideAxis; @Schema(description = "默认2 长边坐标轴向") @@ -53,99 +53,70 @@ public class CuttingTemplateMachineDO extends ESDocument { private Integer offsetX_Block; @Schema(description = "默认0,小板定位坐标Y偏移") private Integer offsetY_Block; - @Schema(description = "默认200,余料生成规则1-两边均大于限定值") - private Integer scrapBlockSquare; - @Schema(description = "默认100,余料生成规则2-短边最小限定值") - private Integer srcapBlockWidthMin; - @Schema(description = "默认600,余料生成规则2-长边最小限定值") - private Integer scrapBlockWidthMax; - @Schema(description = "余料归方") - private Boolean scrapDirection; - @Schema(description = "钻孔延时") - private Boolean drillingDelay; - @Schema(description = "钻孔延时条件-孔直径上限") - private Double drillingDelayConditionMaxDiameter; - @Schema(description = "钻孔延时指令") - private String drillingDelayInstruction; + @Schema(description = "矩形板件R角开料 默认否") + private Boolean rectanglR; + @Schema(description = "圆弧加工使用IJ指令 默认否,使用R指令") + private Boolean arcUseIJ; + @Schema(description = "圆弧方向反转 默认否 顺时针G2/逆时针G3") + private Boolean arcInversion; + @Schema(description = "圆弧转多段线长度 默认0 不转") + private Boolean arcTurnLength; + + + //加工 @Schema(description = "默认40,安全高度") private Integer freeHeight; @Schema(description = "总修边值") private Double totalTrimValue; - /*@Schema(description = "默认0,停刀位置X坐标") - private Integer freeLocationX;*/ -/* @Schema(description = "默认2440,停刀位置Y坐标") - private Integer freeLocationY;*/ + @Schema(description = "默认3,总修边值") + private Integer reverseTrimValue; @Schema(description = "默认15000,空程速度") private Integer freeSpeed; - /* @Schema(description = "默认0,起始下刀高度(距板面)") - private Integer workStartHeight;*/ + @Schema(description = "默认2400,排钻空程速度") + private Integer holeFreeSpeed; @Schema(description = "默认3000,下刀速度") private Integer workStartSpeed; - @Schema(description = "默认20,斜向下刀水平距离") - private Integer workStartDistance; @Schema(description = "默认2,开料提前") private Integer workPreDistance; + @Schema(description = "默认25,收刀距离") + private Integer workEndDistace; + @Schema(description = "默认3000,收刀速度") + private Integer workEndSpeed; + @Schema(description = "默认1200,排钻速度") + private Integer holeSpeed; + @Schema(description = "默认8000,造型速度") + private Integer modelSpeed; @Schema(description = "默认8000,开料速度") private Integer cuttingSpeedForMaterial; @Schema(description = "公边切割速度") private Double cuttingSpeedForEdge; @Schema(description = "外转角切割速度") private Double outerCornerCuttingSpeed; - /* @Schema(description = "默认3000,转角切割速度") - private Integer workCornerSpeed;*/ - @Schema(description = "默认3000,收刀速度") - private Integer workEndSpeed; - @Schema(description = "默认25,收刀距离") - private Integer workEndDistace; - /* @Schema(description = "默认0,共边加速") - private Integer sameBorderHighSpeed;*/ @Schema(description = "默认0,内转角减速提前距离") private Integer innerCornerDistence; @Schema(description = "默认3000,内转角速度") private Integer innerCornerSpeed; - @Schema(description = "默认2400,排钻空程速度") - private Integer holeFreeSpeed; @Schema(description = "默认2,排钻初始段深度") private Integer holeFirstDepth; @Schema(description = "默认800,排钻初始段速度") private Integer holeFirstSpeed; - @Schema(description = "默认1200,排钻速度") - private Integer holeSpeed; - @Schema(description = "默认8000,造型速度") - private Integer modelSpeed; - @Schema(description = "默认true,双面加工优先排版") - private Boolean allowDoubleHoleFirstSort; - @Schema(description = "余料板允许排入双面加工的板件") - private Boolean yuLiaoBoardDo2FaceBlock; - /* @Schema(description = "默认150,开料优先最小宽度") - private Integer autoSortingMinWidth;*/ - @Schema(description = "默认true,反面加工先修边后加工孔槽") - private Boolean firstCutBorderInFaceB; @Schema(description = "默认false,通孔一刀打穿") private Boolean tongHoleOnlyOneTime; @Schema(description = "穿孔对面加工") private Boolean tongKongDoBackFace; @Schema(description = "先修边加工") private Boolean priorTrimmingProcessing; - /* @Schema(description = "默认false,通孔(穿孔)分正反两刀加工(失效?)") - private Boolean tongHoleUseTwoTime;*/ @Schema(description = "默认false,开料分工") private Boolean allowDoubleSplit; @Schema(description = "默认8,分刀步进深度") private Integer splitDepth; - /* @Schema(description = "默认false,最小板件分刀开料") - private Boolean limitDouleSplit;*/ + @Schema(description = "仅加工孔/造型,") + private Boolean disposeCutBlock; @Schema(description = "默认100,小板分刀-短边上限") private Integer doubleSplitWidth; @Schema(description = "默认100,小板分刀-长边上限") private Integer doubleSplitLength; - /* @Schema(description = "默认空,强制分刀小板顺序号,如:1,-1,-2,第一片、最后一片、倒数第二片分刀") - private String splitBlockSeqIds;*/ - /* @Schema(description = "默认false,使用横竖算法(电子锯)优化,目前无效") - private Boolean useDianZiJuMethod;*/ - @Schema(description = "仅加工孔/造型,") - private Boolean disposeCutBlock; @Schema(description = "挖穿板内板件优先开料") private Boolean cutBlockInModelFirst; @Schema(description = "同刀辅助开料") @@ -160,89 +131,22 @@ public class CuttingTemplateMachineDO extends ESDocument { private Double helpCutKnifeDepth; @Schema(description = "辅助开料指令") private String auxiliaryCuttingInstruction; - /* @Schema(description = "默认false,旧版本刀库配置(不带轴号、排钻启停使用排钻包启停参数项设置);true,使用新模式刀库配置(支持轴号、组合刀、多轴预启动)。") - private Boolean useNewKnifeModule;*/ - /* @Schema(description = "默认[],造型刀组") - private List modelKnifeGroup;*/ - @Schema(description = "KnifeList") - private List knifeList; - @Schema(description = "默认{0}_{1}_{2},导出zip文件名") - private String exportOrderPathName; - @Schema(description = "大板NC正(A)面文件名") - private String largePlateNcPositiveFileName; - @Schema(description = "大板NC反(B)面文件名") - private String largePlateNcNegativeFileName; - @Schema(description = "小板NC正(A)面文件名") - private String smallPlateNcPositiveFileName; - @Schema(description = "小板NC反(B)面文件名") - private String smallPlateNcNegativeFileName; - @Schema(description = "大板DXF(排版图)文件名") - private String largePlateDxfLayoutFileName; - @Schema(description = "小板DXF(孔槽加工图)文件名") - private String smallPlateDxfProcessingFileName; - @Schema(description = "导出大板NC反(B)面文件") - private String exportLargePlateNcNegativeFile; - @Schema(description = "合并大板NC正反(AB)面文件") - private String mergeLargePlateNcFiles; - @Schema(description = "导出小板NC正(A)面文件") - private String exportSmallPlateNcPositiveFile; - @Schema(description = "导出小板NC反(B)面文件") - private String exportSmallPlateNcNegativeFile; - @Schema(description = "合并小板NC正反(AB)面文件") - private String mergeSmallPlateNcFiles; - @Schema(description = "导出大板DXF(排版图)文件") - private String exportLargePlateDxfLayoutFile; - @Schema(description = "导出小板DXF(孔槽加工图)文件") - private String exportSmallPlateDxfProcessingFile; - @Schema(description = "NC文件编码") - private String ncFileEncoding; - @Schema(description = "添加NC文件注释") - private String addNcFileComments; - @Schema(description = "上料代码插入到NC文件头前") - private Boolean insertLoadingCodeAtFileHeader; - @Schema(description = "上料代码") - private Boolean loadingCode; - @Schema(description = "大板NC正(A)面文件头") - private String largePlateNcPositiveFileHeader; - @Schema(description = "大板NC正(A)面文件尾") - private String largePlateNcPositiveFileFooter; - @Schema(description = "大板NC反(B)面文件头") - private String largePlateNcNegativeFileHeader; - @Schema(description = "大板NC反(B)面文件尾") - private String largePlateNcNegativeFileFooter; - @Schema(description = "小板NC文件头") - private String smallPlateNcFileHeader; - @Schema(description = "小板NC文件尾") - private String smallPlateNcFileFooter; - @Schema(description = "小板切割开始") - private String smallPlateCuttingStart; - @Schema(description = "小板切割结束") - private String smallPlateCuttingEnd; - - /* @Schema(description = "默认{0} {1},导出NC文件路径") - private String exportBoardPathName;*/ - /* @Schema(description = "默认{0}_A.nc,正面NC文件名") - private String boardFileA; - @Schema(description = "默认{0}_B.nc,反面NC文件名") - private String boardFileB; - @Schema(description = "默认{0}.nc,小板文件名") - private String blockFile; - @Schema(description = "默认空,正面NC文件头") - private String ncFileHead; - @Schema(description = "默认空,正面NC文件尾") - private String ncFileEnd; - @Schema(description = "默认空,反面NC文件头") - private String ncFileHead_B; - @Schema(description = "默认空,反面NC文件尾") - private String ncFileEnd_B; - @Schema(description = "默认空,小板(补孔)NC文件头") - private String ncFileHead_Block; - @Schema(description = "默认空,小板(补孔)NC文件尾") - private String ncFileEnd_Block;*/ + @Schema(description = "默认200,余料生成规则1-两边均大于限定值") + private Integer scrapBlockSquare; + @Schema(description = "默认100,余料生成规则2-短边最小限定值") + private Integer srcapBlockWidthMin; + @Schema(description = "默认600,余料生成规则2-长边最小限定值") + private Integer scrapBlockWidthMax; + @Schema(description = "余料归方") + private Boolean scrapDirection; + @Schema(description = "钻孔延时") + private Boolean drillingDelay; + @Schema(description = "钻孔延时条件-孔直径上限") + private Double drillingDelayConditionMaxDiameter; + @Schema(description = "钻孔延时指令") + private String drillingDelayInstruction; @Schema(description = "默认false,矩形板件开料R拐角") private Boolean regularBlockFilletCurve; - /* @Schema(description = "默认true,非矩形板R倒角") - private Boolean unregularBlockFilletCurve;*/ @Schema(description = "默认false,加工圆弧使用IJ指令") private Boolean dealCircleWithIJ; @Schema(description = "默认false,G2/G3圆弧方向反转") @@ -251,28 +155,16 @@ public class CuttingTemplateMachineDO extends ESDocument { private Boolean arcLineMaxLength; @Schema(description = "排钻按位置加工") private Boolean holePositionProcessing; - /* @Schema(description = "默认true,导出NC文件注释") - private Boolean allowNCComments;*/ - /* @Schema(description = "默认false,G代码行尾加结束符") - private Boolean allowAddGcodeEndChar; - @Schema(description = "默认空,G代码行结尾代码") - private String gcodeEndChar; - @Schema(description = "默认false(utf8),NC文件编码,true(gb2312)") - private Boolean ncFileIsGB2312; - @Schema(description = "默认true,导出反面NC文件") - private Boolean allowExportNC_BackFace; - @Schema(description = "默认false,正反面加工合成一个文件") - private Boolean oneBoardFile; - @Schema(description = "默认false,导出小板NC文件") - private Boolean allowExportNC_block; - @Schema(description = "默认false,是否导出优化结果cfdat文件") - private Boolean allowExportDataFile; - @Schema(description = "默认false,导出大板dxf文件") - private Boolean allowExportBoardDxf; - @Schema(description ="默认false,显示双工位配置") - private Boolean showTwoWorkSpace; - @Schema(description ="默认false,显示选择开料刀配置") - private Boolean showChooseCutKnife;*/ + + + @Schema(description = "默认20,斜向下刀水平距离") + private Integer workStartDistance; + @Schema(description = "刀库") + private List knifeList; + + + + //高级设置 @Schema(description ="默认true,显示开料机工作模式(是否排钻/造型,sc)配置") private Boolean showPriorFacing; @Schema(description = "双工位") @@ -347,228 +239,267 @@ public class CuttingTemplateMachineDO extends ESDocument { private Double cNCModelingSpeed; @Schema(description = "NC指令可配置") private String configurableNCCommands; + + + @Schema(description = "默认false,启用自定义板件编号") private Boolean allowBlockNo_Note; @Schema(description = "默认空,机台备注") private String remark; - @Schema(description = "矩形板件R角开料 默认否") - private Boolean rectanglR; - @Schema(description = "圆弧加工使用IJ指令 默认否,使用R指令") - private Boolean arcUseIJ; - @Schema(description = "圆弧方向反转 默认否 顺时针G2/逆时针G3") - private Boolean arcInversion; - @Schema(description = "圆弧转多段线长度 默认0 不转") - private Boolean arcTurnLength; - /*@Schema(description ="默认false,显示自动上料代码配置") - private Boolean showAutoLoadBoard; - @Schema(description ="默认false,显示排钻包起停配置") - private Boolean showHoleGroup; - @Schema(description ="自动贴标机配置") - private Boolean showAutoNotePrIntegerer; - @Schema(description ="默认false,自定义板标签编号") - private Boolean showCustomBlockNo; - @Schema(description ="默认false,显示可开料不排钻(有CNC/PTP,erp)配置") - private Boolean showMachine; - @Schema(description = "默认false,启用双工位") - private Boolean allowDoubleWorkSpace; - @Schema(description = "工位2与工位1同工件原点(同一坐标系") - private Boolean sameOriginPoIntegerPosition; - @Schema(description = "认0,工位2相对工位1坐标X偏移值") - private Integer offsetX_WorkNum2; - @Schema(description = "默认2600,工位2相对工位1坐标Y偏移值") - private Integer offsetY_WorkNum2; - @Schema(description = "默认0,工位2原点位置") - private Integer originPoIntegerPosition2; - @Schema(description = "默认0") - private Integer widthSideAxis2; - @Schema(description = "默认2") - private Integer lengthSideAxis2; - @Schema(description = "默认0,工位2定位点(靠点)") - private Integer locatorPosition2; - @Schema(description = "默认0,工位2大板定位坐标(工件坐标原点)X偏移值") - private Integer offsetX_Board2; - @Schema(description = "默认0,工位2大板定位坐标(工件坐标原点)Y偏移值") - private Integer offsetY_Board2; - @Schema(description = "默认false,正反面文件合并成一个NC文件") - private Boolean allowCombineNCWithDoubleWorkSpace; - @Schema(description = "默认true") - private Boolean isOddNumInWorkSpace1; - @Schema(description = "默认true") - private Boolean isHoleBlockInSpace1; - @Schema(description = "默认空,工位2正面NC文件头") - private String ncFileHead_WorkSpace2; - @Schema(description = "默认空,工位2正面NC文件尾") - private String ncFileEnd_WorkSpace2; - @Schema(description = "默认空,工位2反面NC文件头") - private String ncFileHead_B_WorkSpace2; - @Schema(description = "默认空,工位2反面NC文件尾") - private String ncFileEnd_B_WorkSpace2; - @Schema(description = "默认false,根据板厚选择开料刀") - private Boolean allowChangeCutKnifeWithThickness; - @Schema(description = "默认false,根据刀号选择开料刀") - private Boolean allowChangeCutKnifeWidthID; - @Schema(description = "默认[]空") - private List boardKnifeList; - @Schema(description = "默认0,加工模式") - private Integer isPriorFacing_RoleNum; - @Schema(description = "默认true,开料机加工超小板") - private Boolean isForceHoling_MultiSide_Minimum; - @Schema(description = "默认50,超小板(两边都小于)值") - private Integer ignoreValue_MultiSide_Minimum; - @Schema(description = "默认true,开料机加工超细板") - private Boolean isForceHoling_SingleSide_Minimum; - @Schema(description = "默认50,超细板(一边小于)值") - private Integer ignoreValue_SingleSide_Minimum; - @Schema(description = "默认true,开料机加工超长板") - private Boolean isForceHoling_SingleSide_Maximum; - @Schema(description = "默认2440,超长板(一边大于)值") - private Integer ignoreValue_SingleSide_Maximum; - @Schema(description = "默认true,开料机加工超大板") - private Boolean isForceHoling_MultiSide_Maximun; - @Schema(description = "默认850,超大板(两边都大于)值") - private Integer ignoreValue_MultiSide_Maximun; - @Schema(description = "默认true,开料机加工异形板") - private Boolean isForceHoling_UnRegularBlock; - @Schema(description = "默认false,开料机加工孔-有造型的板件") - private Boolean isForceHoling_HasModel; - @Schema(description = "默认false,开料机加工全部造型") - private Boolean doModel_hasModel; - @Schema(description = "默认false,开料机加工异形板件的造型") - private Boolean doModel_UnRegular; - @Schema(description = "默认false,超小(两边都小于") - private Boolean doModel_twoSmall; - @Schema(description = "默认50,超小值") - private Integer doModel_twoSmall_Value; - @Schema(description = "默认false,超短(单边小于") - private Boolean doModel_oneSmall; - @Schema(description = "默认50,超短值") - private Integer doModel_oneSmall_Value; - @Schema(description = "默认false,超大(两边都大于)") - private Boolean doModel_twoBig; - @Schema(description = "默认850,超大值") - private Integer doModel_twoBig_Value; - @Schema(description = "默认false,超长(单边大于") - private Boolean doModel_oneBig; - @Schema(description = "默认2434,超长值") - private Integer doModel_oneBig_Value; - @Schema(description = "默认false,开料机加工造型-所有造型") - private Boolean isFoceModeling_hasModel; - @Schema(description = "默认false,开料机加工造型-有孔的板件") - private Boolean isFoceModeling_SameHoling; - @Schema(description = "默认false,开料机加工多段线造型") - private Boolean isFoceModeling_MultiLine; - @Schema(description = "默认false,开料机加工圆弧造型板") - private Boolean isForceModeling_Arc; - @Schema(description = "默认false,开料机加工挖穿造型板") - private Boolean isForceModeling_Through; - @Schema(description = "默认false,排版优先-排版面") - private Boolean isPriorFacing_KaiLiaoMian; - @Schema(description = "默认false,排版优先-反转开料面") - private Boolean isPriorFacing_Reverse; - @Schema(description = "默认true,排版优先-单面有造型") - private Boolean isPriorFacing_SingleModel; - @Schema(description = "默认true,排版优先-单面有造型-正面朝上??") - private Boolean isPriorFacing_SingleModel_Front; - @Schema(description = "默认true,排版优先-双面有造型") - private Boolean isPriorFacing_DoubleModel; - @Schema(description = "默认true,排版优先-双面有造型-正面朝上??") - private Boolean isPriorFacing_DoubleModel_Front; - @Schema(description = "默认true,排版优先-单面有孔") - private Boolean isPriorFacing_SingleHole; - @Schema(description = "默认true,排版优先-单面有孔-正面朝上??") - private Boolean isPriorFacing_SingleHole_Front; - @Schema(description = "IsPriorFacing_BigHole") - private Boolean isPriorFacing_BigHole; - @Schema(description = "默认true,排版优先-有大孔") - private Boolean isPriorFacing_BigHole_Front; - @Schema(description = "默认true,排版优先-双面有孔") - private Boolean isPriorFacing_DoubleHole; - @Schema(description = "默认true,排版优先-双面有孔-孔多面") - private Boolean isPriorFacing_DoubleHole_More; - @Schema(description = "默认空,自定义排版面规则") - private String isPriorFacing_CustomFunction;*/ - /* @Schema(description = "认true,上料代码放文件头前") - private Boolean isLoadBoardBeforeFileHead; - @Schema(description = "默认空,上料代码??") - private String ncLoadBoard; - @Schema(description = "默认空,钻包启动代码") - private String ncFileHoleBegin; - @Schema(description = "默认空,钻包停止代码") - private String ncFileHoleEnd; - @Schema(description = "默认true,排钻按孔分组加工,false排钻就近调刀") - private Boolean holingByKnifeDia; - @Schema(description = "默认false,是否启用自动贴标") - private Boolean noteAutoPrIntegerer; - @Schema(description = "默认print_{0}.nc,标签贴标路径/文件名") - private String noteNcName; - @Schema(description = "默认“标签/{0}_{1}.bmp”,标签导出路径/文件名") - private String notePicName; - @Schema(description = "默认jpg,标签导出图片格式") - private String notePicType; - @Schema(description = "默认24,图片位深") - private String notePicBit; - @Schema(description = "默认true,标签贴在开料正面") - private Boolean notePrIntegerOnFaceA; - @Schema(description = "默认true,标签避让孔位") - private Boolean notePositionAvoidHole; - @Schema(description = "默认60,自动贴标标签宽") - private Integer noteWidth; - @Schema(description = "默认40,自动贴标标签高") - private Integer nOteHeight; - @Schema(description = "默认空,自动贴标函数") - private String noteContent; - @Schema(description = "默认false,自动贴标文件生成在nc文件") - private Boolean notePushInNcFile; - @Schema(description = "默认false,自动贴标函数文件编码方式") - private Boolean noteGB2312; - @Schema(description = "默认false,自动贴标其他函数是否导出") - private Boolean noteOtherExport; - @Schema(description = "默认空,自动贴标其他函数") - private String noteOtherFun; - @Schema(description = "默认return obj.BlockNo; 自定义板件编号") - private String blockNo_Note; - *//* @Schema(description = "默认{0}_{1}_{2}_{3},") - private String boardName;*//* - @Schema(description = "默认10,最小板件宽度") - private Integer minBlockWidth; - @Schema(description = "默认1,最小排钻孔半径") - private Integer minHoleRadius; - @Schema(description = "默认1,最小排钻深度") - private Integer minHoleDepth; - @Schema(description = "默认0,最小造型深度") - private Integer minModelDepth; - @Schema(description = "默认1,最小造型刀半径") - private Integer minModelRadius; - @Schema(description = "默认10,最大封边值(防止出错)") - private Integer maxBorderThickness; - @Schema(description = "默认false,过滤侧孔") - private Boolean ignore2in1SideHole; - @Schema(description = "默认0.01,过滤最小侧孔深度") - private Double ignore2in1SideHoleGap; - @Schema(description = "默认false,是否可重新加载cfdat") - private Boolean canReloadPlaceInfo; - @Schema(description = "默认5,最小排版空间") - private Integer miniumSpaceSize; - @Schema(description = "默认0,锯缝") - private Integer neatenSpaceGap; - @Schema(description = "默认false,根据大板定位点,排版移动对齐到定位点") - private Boolean resetPositionWithLocator; - @Schema(description = "默认3,nc中小数点位数") - private Integer ncNumberFixNumber; - @Schema(description = "默认true,nc文件忽略空行") - private Boolean ncFileRemoveEmptyLine; - @Schema(description = "默认空,排钻悬停等待代码,如:G04 X1.500 暂停抬刀1.5秒") - private String holeWaitingCode; - @Schema(description = "默认5,预启动提前动作(下刀——抬刀记作1个动作)") - private Integer prevRunActionCount; - @Schema(description = "默认false,正面是否修边(L型)") - private Boolean shearBorderFaceA; - @Schema(description = "默认值false,穿孔对面打") - private Boolean allowOppositeDealChuanHole; - @Schema(description = "默认cftech123456789,高级配置密码") - private String managerPassword;*/ + + //文件导出 + @Schema(description = "默认{0}_{1}_{2},导出zip文件名") + private List exportOrderPathName; + @Schema(description = "大板NC正(A)面文件名") + private String largePlateNcPositiveFileName; + @Schema(description = "大板NC反(B)面文件名") + private String largePlateNcNegativeFileName; + @Schema(description = "小板NC正(A)面文件名") + private String smallPlateNcPositiveFileName; + @Schema(description = "小板NC反(B)面文件名") + private String smallPlateNcNegativeFileName; + @Schema(description = "大板DXF(排版图)文件名") + private String largePlateDxfLayoutFileName; + @Schema(description = "小板DXF(孔槽加工图)文件名") + private String smallPlateDxfProcessingFileName; + @Schema(description = "导出大板NC反(B)面文件") + private String exportLargePlateNcNegativeFile; + @Schema(description = "合并大板NC正反(AB)面文件") + private String mergeLargePlateNcFiles; + @Schema(description = "导出小板NC正(A)面文件") + private String exportSmallPlateNcPositiveFile; + @Schema(description = "导出小板NC反(B)面文件") + private String exportSmallPlateNcNegativeFile; + @Schema(description = "合并小板NC正反(AB)面文件") + private String mergeSmallPlateNcFiles; + @Schema(description = "导出大板DXF(排版图)文件") + private String exportLargePlateDxfLayoutFile; + @Schema(description = "导出小板DXF(孔槽加工图)文件") + private String exportSmallPlateDxfProcessingFile; + @Schema(description = "NC文件编码") + private String ncFileEncoding; + @Schema(description = "添加NC文件注释") + private String addNcFileComments; + @Schema(description = "上料代码插入到NC文件头前") + private Boolean insertLoadingCodeAtFileHeader; + @Schema(description = "上料代码") + private String loadingCode; + @Schema(description = "大板NC正(A)面文件头") + private String largePlateNcPositiveFileHeader; + @Schema(description = "大板NC正(A)面文件尾") + private String largePlateNcPositiveFileFooter; + @Schema(description = "大板NC反(B)面文件头") + private String largePlateNcNegativeFileHeader; + @Schema(description = "大板NC反(B)面文件尾") + private String largePlateNcNegativeFileFooter; + @Schema(description = "小板NC文件头") + private String smallPlateNcFileHeader; + @Schema(description = "小板NC文件尾") + private String smallPlateNcFileFooter; + @Schema(description = "小板切割开始") + private String smallPlateCuttingStart; + @Schema(description = "小板切割结束") + private String smallPlateCuttingEnd; + + //优化排版 + @Schema(description = "默认true,双面加工优先排版") + private Boolean allowDoubleHoleFirstSort; + @Schema(description = "余料板允许排入双面加工的板件") + private Boolean yuLiaoBoardDo2FaceBlock; + + //样式排版 + @Schema(description = "标尺(工件坐标)-刻度标线 间距") + private Double scaleLineSpacing; + @Schema(description = "标尺(工件坐标)-刻度标线线宽") + private Double scaleLineWidth; + @Schema(description = "标尺(工件坐标)-刻度标线线长") + private Double scaleLineLong; + @Schema(description = "标尺(工件坐标)-刻度标线颜色") + private String scaleLineColor; + @Schema(description = "标尺(工件坐标)-刻度标线 偏移标尺线距离") + private Double scaleLineDistance; + @Schema(description = "标尺(工件坐标)-数值 字体") + private String rulerValueFont; + @Schema(description = "标尺(工件坐标)-数值 大小") + private Double rulerValueSize; + @Schema(description = "标尺(工件坐标)-颜色") + private String rulerValueColor; + @Schema(description = "标尺(工件坐标)-数值 ") + private Double rulerValueDistance; + @Schema(description = "台面轮廓-轮廓线 线宽") + private Double tableContorLineWidth; + @Schema(description = "台面轮廓-轮廓线 颜色") + private String tableContorColor; + @Schema(description = "台面轮廓-填充 颜色") + private String tableFillColor; + @Schema(description = "台面轮廓-填充 平铺几何线条") + private Double tableFillGeometry; + @Schema(description = "工位号 字体") + private String useDoubleworkFont; + @Schema(description = "工位号 大小") + private Double useDoubleworkSize; + @Schema(description = "工位号 颜色") + private String useDoubleworkColor; + @Schema(description = "工位号 偏移台面轮廓线距离") + private String useDoubleworkDistance; + @Schema(description = "原始轮廓-轮廓线 线宽") + private Double originContourWidth; + @Schema(description = "原始轮廓-轮廓线 颜色") + private String originContourColor; + @Schema(description = "原始轮廓-填充 颜色") + private String originFillColor; + @Schema(description = "原始轮廓-填充 平铺几何线条") + private Double originFillGeometry; + @Schema(description = "修边偏移轮廓-轮廓线 线宽") + private Double wheelContourWidth; + @Schema(description = "修边偏移轮廓-轮廓线 颜色") + private String wheelContourColor; + @Schema(description = "修边偏移轮廓-与原始轮廓间的填充 颜色") + private String wheelFillColor; + @Schema(description = "修边偏移轮廓-与原始轮廓间的填充 平铺几何线条") + private Double wheelFillGeometry; + @Schema(description = "尺寸规格-长*宽 字体") + private String dimensionFont; + @Schema(description = "尺寸规格-长*宽 大小") + private Double dimensionSize; + @Schema(description = "尺寸规格-长*宽 颜色") + private String dimensionColor; + @Schema(description = "尺寸规格-长*宽 偏移台面轮廓线距离") + private Double dimensionDistance; + @Schema(description = "开料原始轮廓-轮廓线 线宽") + private Double cuttingMaterialWidth; + @Schema(description = "开料原始轮廓-轮廓线 颜色") + private String cuttingMaterialColor; + @Schema(description = "开料原始轮廓-轮廓线 正纹/反纹区分") + private Boolean cuttingMaterialDistinguish; + @Schema(description = "开料原始轮廓-填充 颜色") + private String cuttingFillColor; + @Schema(description = "开料原始轮廓-填充 平铺几何线条") + private Double cuttingFillGeometry; + @Schema(description = "扩展尺寸轮廓-轮廓线 线宽") + private Double expandContourWidth; + @Schema(description = "扩展尺寸轮廓-轮廓线 颜色") + private String expandContourColor; + @Schema(description = "扩展尺寸轮廓-与原始轮廓间的填充 颜色") + private String expandFillColor; + @Schema(description = "扩展尺寸轮廓-与原始轮廓间的填充 平铺几何线条") + private Double expandFillGeometry; + @Schema(description = "选中后显示边界坐标和尺寸数值-标线/界线 线宽") + private Double checkLineWidth; + @Schema(description = "选中后显示边界坐标和尺寸数值-标线/界线 线长") + private Double checkLineLong; + @Schema(description = "选中后显示边界坐标和尺寸数值-标线/界线 颜色") + private String checkLineColor; + @Schema(description = "选中后显示边界坐标和尺寸数值-标线/界线 偏移标尺线距离") + private Double checkLineDistance; + @Schema(description = "选中后显示边界坐标和尺寸数值-数值 字体") + private String checkNumberFont; + @Schema(description = "选中后显示边界坐标和尺寸数值-数值 大小") + private Double checkNumberSize; + @Schema(description = "选中后显示边界坐标和尺寸数值-数值 颜色") + private String checkNumberColor; + @Schema(description = "选中后显示边界坐标和尺寸数值-数值 偏移标尺线距离") + private Double checkNumberDistance; + @Schema(description = "干涉显示-填充 颜色") + private String displayFillColor; + @Schema(description = "干涉显示-填充 平铺几何线条") + private Double displayFillGeometry; + @Schema(description = "移动/拖拽显示-填充 颜色") + private String dragFillColor; + @Schema(description = "移动/拖拽显示-填充 平铺几何线条") + private Double dragFillGeometry; + @Schema(description = "开料顺序-数值 字体") + private String cuttingOrderFont; + @Schema(description = "开料顺序-数值 大小") + private Double cuttingOrderSize; + @Schema(description = "开料顺序-数值 颜色") + private String cuttingOrderColor; + @Schema(description = "下刀点-圆点 大小") + private Double cuttingPointSize; + @Schema(description = "下刀点-圆点 颜色") + private String cuttingPointColor; + @Schema(description = "对齐参考点-圆点 大小") + private Double alignPointSize; + @Schema(description = "对齐参考点-圆点 颜色") + private String alignPointColor; + @Schema(description = "对齐参考点-圆点 移动/对齐参考点") + private Double alignPointType; + @Schema(description = "反面加工标记-圆圈 直径") + private Double reverseDiameter; + @Schema(description = "反面加工标记-圆圈 线宽") + private Double reverseLineWidth; + @Schema(description = "反面加工标记-圆圈 颜色") + private String reverseColor; + @Schema(description = "板高方向标记-箭头 大小") + private Double flagArrowSize; + @Schema(description = "板高方向标记-箭头 颜色") + private String flagArrowColor; + @Schema(description = "板件编号-编码 字体") + private String banCodeFont; + @Schema(description = "板件编号-编码 大小") + private Double banCodeSize; + @Schema(description = "板件编号-编码 颜色") + private String banCodeColor; + @Schema(description = "板件编号-板件尺寸 字体") + private String banNumFont; + @Schema(description = "板件编号-板件尺寸 大小") + private Double banNumSize; + @Schema(description = "板件编号-板件尺寸 颜色") + private String banNumColor; + @Schema(description = "余料板-轮廓线 线宽") + private Double restTourWidth; + @Schema(description = "余料板-轮廓线 颜色") + private String restTourColor; + @Schema(description = "余料板-填充 颜色") + private String restFillColor; + @Schema(description = "余料板-填充 平铺几何线条") + private Double restFillGeometry; + @Schema(description = "孔位显示-轮廓线 线宽") + private Double holeTourWidth; + @Schema(description = "孔位显示-轮廓线 颜色") + private String holeTourColor; + @Schema(description = "孔位显示-填充 颜色") + private String holeFillColor; + @Schema(description = "孔位显示-填充 平铺几何线条") + private Double holeFillGeometry; + @Schema(description = "孔位显示-填充 正反面挖穿区分") + private Boolean holeFillType; + @Schema(description = "造型刀路/槽轮廓显示-轮廓线 线宽") + private Double profilingTourWidth; + @Schema(description = "造型刀路/槽轮廓显示-轮廓线 颜色") + private String profilingTourColor; + @Schema(description = "造型刀路/槽轮廓显示-填充 颜色") + private String profilingFillColor; + @Schema(description = "造型刀路/槽轮廓显示-填充 平铺几何线条") + private Double profilingFillGeometry; + @Schema(description = "造型刀路/槽轮廓显示-填充 正反面挖穿区分") + private Boolean profilingFillType; + @Schema(description = "孔槽标注-位置 距小板边") + private Double holePositionSmall; + @Schema(description = "孔槽标注-位置 距大板/台面") + private Double holePositionLarge; + @Schema(description = "孔槽标注-位置 字体") + private String holePositionFont; + @Schema(description = "孔槽标注-位置 大小") + private Double holePositionSize; + @Schema(description = "孔槽标注-位置 颜色") + private String holePositionColor; + @Schema(description = "孔槽标注-位置 线宽") + private Double holePositionWidth; + @Schema(description = "孔槽标注-尺寸 直径/宽度") + private Double holeSizeDiameter; + @Schema(description = "孔槽标注-尺寸 深度") + private Double holeSizeDepth; + @Schema(description = "孔槽标注-尺寸 字体") + private String holeSizeFont; + @Schema(description = "孔槽标注-尺寸 大小") + private Double holeSizeSize; + @Schema(description = "孔槽标注-尺寸 颜色") + private String holeSizeColor; + + @NoArgsConstructor @Data diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/dept/DeptMapper.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/dept/DeptMapper.java index 03296ce8f..7b2f7a354 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/dept/DeptMapper.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/dept/DeptMapper.java @@ -2,12 +2,16 @@ package com.cf.imes.module.system.dal.mysql.dept; import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX; import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; +import com.cf.imes.framework.organ.core.context.OrganContextHolder; +import com.cf.imes.framework.organ.core.security.OrganSecurityWebFilter; +import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils; import com.cf.imes.module.system.controller.admin.dept.vo.dept.DeptListReqVO; import com.cf.imes.module.system.dal.dataobject.dept.DeptDO; import org.apache.ibatis.annotations.Mapper; import java.util.Collection; import java.util.List; +import java.util.Objects; @Mapper public interface DeptMapper extends BaseMapperX { @@ -19,8 +23,17 @@ public interface DeptMapper extends BaseMapperX { .eqIfPresent(DeptDO::getStatus, reqVO.getStatus())); } - default DeptDO selectByParentIdAndName(Long parentId, String name) { - return selectOne(DeptDO::getParentId, parentId, DeptDO::getName, name); + default DeptDO selectByParentIdAndName(Long parentId, String name, Long organId) { + //如果请求中没有organId 从上下文中获取 + if(Objects.isNull(organId)) { + organId = OrganContextHolder.getOrganId(); + } + return selectOne(new LambdaQueryWrapperX() + .eq(DeptDO::getOrganId, organId) + .eq(DeptDO::getParentId, parentId) + .eq(DeptDO::getName, name) + ); + //return selectOne(DeptDO::getParentId, parentId, DeptDO::getName, name); } default Long selectCountByParentId(Long parentId) { diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/dept/PostMapper.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/dept/PostMapper.java index 3912d661a..f1598aa51 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/dept/PostMapper.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/dept/PostMapper.java @@ -21,6 +21,7 @@ public interface PostMapper extends BaseMapperX { default PageResult selectPage(PostPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(PostDO::getOrganId, reqVO.getOrganId()) .likeIfPresent(PostDO::getCode, reqVO.getCode()) .likeIfPresent(PostDO::getName, reqVO.getName()) .eqIfPresent(PostDO::getStatus, reqVO.getStatus()) diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/user/AdminUserMapper.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/user/AdminUserMapper.java index f7816d935..7c48cdc3c 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/user/AdminUserMapper.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/user/AdminUserMapper.java @@ -34,6 +34,7 @@ public interface AdminUserMapper extends BaseMapperX { default PageResult selectPage(UserPageReqVO reqVO, Collection deptIds) { return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(AdminUserDO::getOrganId, reqVO.getOrganId()) .likeIfPresent(AdminUserDO::getUsername, reqVO.getUsername()) .likeIfPresent(AdminUserDO::getMobile, reqVO.getMobile()) .eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus()) diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/dept/DeptServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/dept/DeptServiceImpl.java index f54995a95..2e64e0a86 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/dept/DeptServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/dept/DeptServiceImpl.java @@ -48,7 +48,7 @@ public class DeptServiceImpl implements DeptService { // 校验父部门的有效性 validateParentDept(null, createReqVO.getParentId()); // 校验部门名的唯一性 - validateDeptNameUnique(null, createReqVO.getParentId(), createReqVO.getName()); + validateDeptNameUnique(null, createReqVO.getParentId(), createReqVO.getName(), createReqVO.getOrganId()); // 插入部门 DeptDO dept = BeanUtils.toBean(createReqVO, DeptDO.class); @@ -68,7 +68,7 @@ public class DeptServiceImpl implements DeptService { // 校验父部门的有效性 validateParentDept(updateReqVO.getId(), updateReqVO.getParentId()); // 校验部门名的唯一性 - validateDeptNameUnique(updateReqVO.getId(), updateReqVO.getParentId(), updateReqVO.getName()); + validateDeptNameUnique(updateReqVO.getId(), updateReqVO.getParentId(), updateReqVO.getName(), updateReqVO.getOrganId()); // 更新部门 DeptDO updateObj = BeanUtils.toBean(updateReqVO, DeptDO.class); @@ -136,8 +136,8 @@ public class DeptServiceImpl implements DeptService { } @VisibleForTesting - void validateDeptNameUnique(Long id, Long parentId, String name) { - DeptDO dept = deptMapper.selectByParentIdAndName(parentId, name); + void validateDeptNameUnique(Long id, Long parentId, String name, Long organId) { + DeptDO dept = deptMapper.selectByParentIdAndName(parentId, name, organId); if (dept == null) { return; } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/labeltemplate/LabelTemplateServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/labeltemplate/LabelTemplateServiceImpl.java index dfc8f805a..9e189d2cb 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/labeltemplate/LabelTemplateServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/labeltemplate/LabelTemplateServiceImpl.java @@ -67,21 +67,23 @@ public class LabelTemplateServiceImpl implements LabelTemplateService { // 插入子表 List createReqVOElements = createReqVO.getElements(); - List labelElementPropertyDOS = new ArrayList<>(); - createReqVOElements.forEach(e -> { - e.setLabelTemplateId(labelTemplate.getId()); - LabelElementTemplateDO elementTemplateDO = Convert.convert(LabelElementTemplateDO.class, e); - labelElementTemplateMapper.insert(elementTemplateDO); - LabelElementPropertyDO propertyDO = e.getPropertyDO(); - propertyDO.setElementId(elementTemplateDO.getId()); - labelElementPropertyDOS.add(propertyDO); - }); - //插入索引 - try { - esDocumentService.bulkCreate(LABEL_TEMPLATE_ELEMENT_PROPERTY_INX, labelElementPropertyDOS); - } catch (Exception e) { - log.error(e.getMessage()); - throw exception(INTERNAL_SERVER_ERROR); + if(CollectionUtil.isNotEmpty(createReqVOElements)) { + List labelElementPropertyDOS = new ArrayList<>(); + createReqVOElements.forEach(e -> { + e.setLabelTemplateId(labelTemplate.getId()); + LabelElementTemplateDO elementTemplateDO = Convert.convert(LabelElementTemplateDO.class, e); + labelElementTemplateMapper.insert(elementTemplateDO); + LabelElementPropertyDO propertyDO = e.getPropertyDO(); + propertyDO.setElementId(elementTemplateDO.getId()); + labelElementPropertyDOS.add(propertyDO); + }); + //插入索引 + try { + esDocumentService.bulkCreate(LABEL_TEMPLATE_ELEMENT_PROPERTY_INX, labelElementPropertyDOS); + } catch (Exception e) { + log.error(e.getMessage()); + throw exception(INTERNAL_SERVER_ERROR); + } } // 返回 return labelTemplate.getId(); @@ -96,11 +98,51 @@ public class LabelTemplateServiceImpl implements LabelTemplateService { LabelTemplateDO updateObj = BeanUtils.toBean(updateReqVO, LabelTemplateDO.class); labelTemplateMapper.updateById(updateObj); - // 更新子表 - List elements = updateReqVO.getElements(); + List labelElementTemplateDOS = labelElementTemplateMapper.selectList(new LambdaQueryWrapperX() + .select(LabelElementTemplateDO::getId) + .eq(LabelElementTemplateDO::getLabelTemplateId, updateReqVO.getId())); + //删除旧的元素 + DeleteByQueryRequest.Builder builder = null; + if(CollectionUtil.isNotEmpty(labelElementTemplateDOS)) { + List templateIds = labelElementTemplateDOS.stream() + .map(LabelElementTemplateDO::getId) + .toList(); + labelElementTemplateMapper.deleteBatchIds(templateIds); + List fieldValues = templateIds.stream().map(FieldValue::of).collect(Collectors.toList()); + builder = new DeleteByQueryRequest.Builder() + .index(LABEL_TEMPLATE_ELEMENT_PROPERTY_INX) + .query(TermsQuery.of(e -> e.field("elementId").terms(b -> b.value(fieldValues)))._toQuery()); + } + + + //新增新的元素 + List createReqVOElements = updateReqVO.getElements(); + List labelElementPropertyDOS = new ArrayList<>(); + createReqVOElements.forEach(e -> { + e.setLabelTemplateId(updateObj.getId()); + LabelElementTemplateDO elementTemplateDO = Convert.convert(LabelElementTemplateDO.class, e); + labelElementTemplateMapper.insert(elementTemplateDO); + LabelElementPropertyDO propertyDO = e.getPropertyDO(); + propertyDO.setElementId(elementTemplateDO.getId()); + labelElementPropertyDOS.add(propertyDO); + }); + //插入索引 + try { + if(CollectionUtil.isNotEmpty(labelElementPropertyDOS)) { + esDocumentService.bulkCreate(LABEL_TEMPLATE_ELEMENT_PROPERTY_INX, labelElementPropertyDOS); + } + if(!Objects.isNull(builder)) { + elasticsearchClient.deleteByQuery(builder.build()); + } + } catch (Exception e) { + log.error(e.getMessage()); + throw exception(INTERNAL_SERVER_ERROR); + } + + /*updateLabelElementTemplateList(updateReqVO.getId(), Convert.convert(new TypeReference>() { }, elements));*/ - labelElementTemplateMapper.updateBatch(Convert.convert(new TypeReference>() { + /* labelElementTemplateMapper.updateBatch(Convert.convert(new TypeReference>() { }, elements)); List labelElementPropertyDOS = elements.stream().map(e -> e.getPropertyDO()).collect(Collectors.toList()); try { @@ -108,7 +150,7 @@ public class LabelTemplateServiceImpl implements LabelTemplateService { } catch (Exception e) { log.error(e.getMessage()); throw exception(INTERNAL_SERVER_ERROR); - } + }*/ } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/lable/LabelServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/lable/LabelServiceImpl.java index 3888aa595..b7cc29423 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/lable/LabelServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/lable/LabelServiceImpl.java @@ -15,7 +15,9 @@ import com.cf.imes.framework.common.util.object.BeanUtils; import com.cf.imes.framework.es.core.service.ESDocumentService; import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.module.system.controller.admin.label.vo.*; +import com.cf.imes.module.system.controller.admin.labeltemplate.vo.LabelElementTemplateSaveReqVO; import com.cf.imes.module.system.dal.dataobject.labelelementproperty.LabelElementPropertyDO; +import com.cf.imes.module.system.dal.dataobject.labeltemplate.LabelElementTemplateDO; import com.cf.imes.module.system.dal.dataobject.lable.LabelDO; import com.cf.imes.module.system.dal.dataobject.lable.LabelElementDO; import com.cf.imes.module.system.dal.dataobject.machine.CuttingSettingDO; @@ -65,21 +67,23 @@ public class LabelServiceImpl implements LabelService { // 插入子表 List createReqVOElements = createReqVO.getElements(); - List labelElementPropertyDOS = new ArrayList<>(); - createReqVOElements.forEach(e -> { - e.setLabelId(Label.getId()); - LabelElementDO elementDO = Convert.convert(LabelElementDO.class, e); - labelElementMapper.insert(elementDO); - LabelElementPropertyDO propertyDO = e.getPropertyDO(); - propertyDO.setElementId(elementDO.getId()); - labelElementPropertyDOS.add(propertyDO); - }); - //插入索引 - try { - esDocumentService.bulkCreate(LABEL_ELEMENT_PROPERTY_INX, labelElementPropertyDOS); - } catch (Exception e) { - log.error(e.getMessage()); - throw exception(INTERNAL_SERVER_ERROR); + if(CollectionUtil.isNotEmpty(createReqVOElements)) { + List labelElementPropertyDOS = new ArrayList<>(); + createReqVOElements.forEach(e -> { + e.setLabelId(Label.getId()); + LabelElementDO elementDO = Convert.convert(LabelElementDO.class, e); + labelElementMapper.insert(elementDO); + LabelElementPropertyDO propertyDO = e.getPropertyDO(); + propertyDO.setElementId(elementDO.getId()); + labelElementPropertyDOS.add(propertyDO); + }); + //插入索引 + try { + esDocumentService.bulkCreate(LABEL_ELEMENT_PROPERTY_INX, labelElementPropertyDOS); + } catch (Exception e) { + log.error(e.getMessage()); + throw exception(INTERNAL_SERVER_ERROR); + } } // 返回 return Label.getId(); @@ -94,10 +98,50 @@ public class LabelServiceImpl implements LabelService { LabelDO updateObj = BeanUtils.toBean(updateReqVO, LabelDO.class); LabelMapper.updateById(updateObj); - // 更新子表 - List elements = updateReqVO.getElements(); - /*updateLabelElementList(updateReqVO.getId(), Convert.convert(new TypeReference>() { - }, elements));*/ + List labelElementDOS = labelElementMapper.selectList(new LambdaQueryWrapperX() + .select(LabelElementDO::getId) + .eq(LabelElementDO::getLabelId, updateReqVO.getId())); + //删除旧的元素 + DeleteByQueryRequest.Builder builder = null; + if(CollectionUtil.isNotEmpty(labelElementDOS)) { + List templateIds = labelElementDOS.stream() + .map(LabelElementDO::getId) + .toList(); + labelElementMapper.deleteBatchIds(templateIds); + List fieldValues = templateIds.stream().map(FieldValue::of).collect(Collectors.toList()); + builder = new DeleteByQueryRequest.Builder() + .index(LABEL_ELEMENT_PROPERTY_INX) + .query(TermsQuery.of(e -> e.field("elementId").terms(b -> b.value(fieldValues)))._toQuery()); + } + + + //新增新的元素 + List createReqVOElements = updateReqVO.getElements(); + List labelElementPropertyDOS = new ArrayList<>(); + createReqVOElements.forEach(e -> { + e.setLabelId(updateObj.getId()); + LabelElementDO labelElementDO = Convert.convert(LabelElementDO.class, e); + labelElementMapper.insert(labelElementDO); + LabelElementPropertyDO propertyDO = e.getPropertyDO(); + propertyDO.setElementId(labelElementDO.getId()); + labelElementPropertyDOS.add(propertyDO); + }); + //插入索引 + try { + if(CollectionUtil.isNotEmpty(labelElementPropertyDOS)) { + esDocumentService.bulkCreate(LABEL_ELEMENT_PROPERTY_INX, labelElementPropertyDOS); + } + if(!Objects.isNull(builder)) { + elasticsearchClient.deleteByQuery(builder.build()); + } + } catch (Exception e) { + log.error(e.getMessage()); + throw exception(INTERNAL_SERVER_ERROR); + } + + /* List elements = updateReqVO.getElements(); + *//*updateLabelElementList(updateReqVO.getId(), Convert.convert(new TypeReference>() { + }, elements));*//* labelElementMapper.updateBatch(Convert.convert(new TypeReference>() { }, elements)); List labelElementPropertyDOS = elements.stream().map(e -> e.getPropertyDO()).collect(Collectors.toList()); @@ -106,7 +150,7 @@ public class LabelServiceImpl implements LabelService { } catch (Exception e) { log.error(e.getMessage()); throw exception(INTERNAL_SERVER_ERROR); - } + }*/ } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/organ/OrganServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/organ/OrganServiceImpl.java index bf31015eb..b81752091 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/organ/OrganServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/organ/OrganServiceImpl.java @@ -150,7 +150,7 @@ public class OrganServiceImpl implements OrganService { RoleSaveReqVO reqVO = new RoleSaveReqVO(); reqVO.setName(RoleCodeEnum.TENANT_ADMIN.getName()).setCode(RoleCodeEnum.TENANT_ADMIN.getCode()) .setSort(0).setRemark("系统自动生成").setOrganId(organId); - Long roleId = roleService.createRole(reqVO, RoleTypeEnum.SYSTEM.getType(), organId); + Long roleId = roleService.createRole(reqVO, RoleTypeEnum.SYSTEM.getType()); // 分配权限 permissionService.assignRoleMenu(roleId, tenantPackage.getMenuIds()); return roleId; diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/RoleService.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/RoleService.java index 84c8237b5..58fcc6e53 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/RoleService.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/RoleService.java @@ -24,7 +24,7 @@ public interface RoleService { * @param type 角色类型 * @return 角色编号 */ - Long createRole(@Valid RoleSaveReqVO createReqVO, Integer type, Long organId); + Long createRole(@Valid RoleSaveReqVO createReqVO, Integer type); /** * 更新角色 diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/RoleServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/RoleServiceImpl.java index d61931c5c..5f70fb828 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/RoleServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/RoleServiceImpl.java @@ -49,15 +49,15 @@ public class RoleServiceImpl implements RoleService { @Override @Transactional(rollbackFor = Exception.class) - public Long createRole(RoleSaveReqVO createReqVO, Integer type, Long organId) { + public Long createRole(RoleSaveReqVO createReqVO, Integer type) { // 校验角色 - validateRoleDuplicate(createReqVO.getName(), createReqVO.getCode(), null, organId); + validateRoleDuplicate(createReqVO.getName(), createReqVO.getCode(), null, createReqVO.getOrganId()); // 插入到数据库 RoleDO role = BeanUtils.toBean(createReqVO, RoleDO.class); role.setType(ObjectUtil.defaultIfNull(type, RoleTypeEnum.CUSTOM.getType())); role.setStatus(CommonStatusEnum.ENABLE.getStatus()); role.setDataScope(DataScopeEnum.ALL.getScope()); // 默认可查看所有数据。原因是,可能一些项目不需要项目权限 - role.setOrganId(organId); + role.setOrganId(createReqVO.getOrganId()); roleMapper.insert(role); // 返回 return role.getId(); @@ -66,11 +66,10 @@ public class RoleServiceImpl implements RoleService { @Override @CacheEvict(value = RedisKeyConstants.ROLE, key = "#updateReqVO.id") public void updateRole(RoleSaveReqVO updateReqVO) { - Long organId = SecurityFrameworkUtils.getLoginUser().getOrganId(); // 校验是否可以更新 validateRoleForUpdate(updateReqVO.getId()); // 校验角色的唯一字段是否重复 - validateRoleDuplicate(updateReqVO.getName(), updateReqVO.getCode(), updateReqVO.getId(), organId); + validateRoleDuplicate(updateReqVO.getName(), updateReqVO.getCode(), updateReqVO.getId(), updateReqVO.getOrganId()); // 更新到数据库 RoleDO updateObj = BeanUtils.toBean(updateReqVO, RoleDO.class); diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/machine.json b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/machine.json deleted file mode 100644 index 2d8ac8725..000000000 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/machine.json +++ /dev/null @@ -1,990 +0,0 @@ -[ - { - "Type": 1, - "Setting": { - "UseWorkPanelSize": true, - "BoardWidth": 1220, - "BoardLength": 2750, - "BoardBorder": 3, - "BoardBorder_B": 2, - "CutBorderOff1": 0, - "CutBorderOff2": 0, - "KnifeDia": 6, - "CutGap": 1, - "OriginPointPosition": 0, - "WidthSideAxis": 0, - "LengthSideAxis": 2, - "LocatorPosition": 0, - "OffsetX_Board1": 0, - "OffsetY_Board1": 0, - "LocatorPosition_Block": 0, - "OffsetX_Block": 0, - "OffsetY_Block": 0, - "scrapBlockSquare": 200, - "srcapBlockWidthMin": 100, - "scrapBlockWidthMax": 600, - "FreeHeight": 10, - "FreeLocationX": 0, - "FreeLocationY": 2440, - "FreeSpeed": 15000, - "WorkStartHeight": 0, - "WorkStartSpeed": 3000, - "WorkStartDistance": 20, - "WorkPreDistance": 2, - "WorkSpeed": 8000, - "WorkCornerSpeed": 3000, - "WorkEndSpeed": 3000, - "WorkEndDistace": 25, - "sameBorderHighSpeed": 55555, - "innerCornerDistence": 50, - "innerCornerSpeed": 2222, - "HoleFreeSpeed": 2400, - "HoleFirstDepth": 2, - "HoleFirstSpeed": 800, - "HoleSpeed": 1200, - "ModelSpeed": 8000, - "AllowDoubleHoleFirstSort": true, - "AutoSortingMinWidth": 150, - "FirstCutBorderInFaceB": true, - "TongHoleOnlyOneTime": false, - "TongHoleUseTwoTime": false, - "AllowDoubleSplit": false, - "SplitDepth": 8, - "LimitDouleSplit": false, - "DoubleSplitWidth": 100, - "DoubleSplitLength": 100, - "SplitBlockSeqIds": "", - "UseDianZiJuMethod": false, - "DisposeCutBlock": false, - "UseNewKnifeModule": false, - "KnifeIDForHole": 1, - "Knifes4Hole": "1,", - "ModelKnifeGroup": [], - "KnifeList": [ - { - "KnifeID": 1, - "KnifeName": "切割刀1", - "AxleID": 0, - "AllowCut": true, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 6, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 2, - "KnifeName": "切割刀2", - "AxleID": 0, - "AllowCut": true, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 5, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 3, - "KnifeName": "1号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 5, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 4, - "KnifeName": "2号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 8, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 5, - "KnifeName": "3号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 10, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 6, - "KnifeName": "4号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 15, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 7, - "KnifeName": "5号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 20, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 8, - "KnifeName": "6号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 9, - "KnifeName": "7号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 10, - "KnifeName": "8号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 11, - "KnifeName": "9号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - } - ], - "ExportOrderPathName": "{0}_{1}_{2}", - "ExportBoardPathName": "{0}_{2}_{3}", - "BoardFileA": "{0,#3}_A.nc", - "BoardFileB": "{0,#3}_B.nc", - "BlockFile": "{0}.nc", - "NcFileHead": "", - "NcFileEnd": "", - "NcFileHead_B": "", - "NcFileEnd_B": "", - "NcFileHead_Block": "", - "NcFileEnd_Block": "", - "RegularBlockFilletCurve": false, - "UnregularBlockFilletCurve": true, - "DealCircleWithIJ": true, - "IsTurnOverG2G3": false, - "AllowNCComments": true, - "AllowAddGcodeEndChar": false, - "GcodeEndChar": "", - "NcFileIsGB2312": false, - "AllowExportNC_BackFace": true, - "OneBoardFile": false, - "AllowExportNC_block": false, - "AllowExportDataFile": true, - "AllowExportBoardDxf": false, - "showTwoWorkSpace": false, - "showChooseCutKnife": false, - "showPriorFacing": true, - "showAutoLoadBoard": false, - "showHoleGroup": false, - "showAutoNotePrinter": false, - "showCustomBlockNo": false, - "showMachine": false, - "AllowDoubleWorkSpace": false, - "SameOriginPointPosition": false, - "OffsetX_WorkNum2": 0, - "OffsetY_WorkNum2": 2600, - "OriginPointPosition2": 0, - "WidthSideAxis2": 0, - "LengthSideAxis2": 2, - "LocatorPosition2": 0, - "OffsetX_Board2": 0, - "OffsetY_Board2": 0, - "AllowCombineNCWithDoubleWorkSpace": false, - "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": 50, - "wr6_OverRun_LengthE": 2440, - "wr6_OverRun_hasThroghModel": false, - "wr6_OverRun_hasThroghModel_r": 30, - "wr6_OverRun_hasThroghModel_size": 30, - "wr6_OverRun_UnRegular": false, - "wr6_OverRun_MaxChamferR": 0, - "wr6_OverRun_MaxInnerLength": 0, - "wr6_unModel_all": false, - "wr6_unModel_isThrogh": true, - "wr6_unModel_isArc": 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": true, - "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_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_doStyle_1Face": 0, - "wr6_doStyle_1Face_hole": true, - "wr6_doStyle_1Face_model": true, - "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", - "IsLoadBoardBeforeFileHead": true, - "NcLoadBoard": "", - "NcFileHoleBegin": "", - "NcFileHoleEnd": "", - "HolingByKnifeDia": true, - "NoteAutoPrinter": 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, - "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, - "AllowOppositeDealChuanHole": false, - "ManagerPassword": "cftech123456789", - "Remark": "", - "WebQueryPageSize": 1000, - "ExportRootPath": "C:", - "AllowSelectExportPath": false, - "AllowExportImage": false, - "ManualSortingCornerWidth": 2 - } - }, - { - "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;", - "ShowData": true, - "DataWidth": 8, - "FontSize": 15, - "FontWeight": 800, - "FontFamily": "宋体", - "ShowCncDict": true, - "CncDictType": 0, - "ShowSideHole": false - }, - { - "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;", - "LineHeight": 1, - "LineColor": "rgb(0,0,0)", - "FillColor": "rgb(0,0,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": "400", - "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": "400", - "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": "400", - "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;", - "LineHeight": 1, - "LineColor": "rgb(0,0,0)", - "FillColor": "rgb(0,0,0)" - }, - { - "Type": 4, - "ObjcectID": 0, - "ObjectName": "数据", - "X": 135, - "Y": 141, - "Width": 40, - "Height": 40, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "IsVertical": false, - "DataText": "A", - "DataExpression": "return obj.BoxName.substr(0,1);", - "DisplayType": 0, - "BarcodeType": "CODE39", - "FontSize": 40, - "FontWeight": "400", - "FontFamily": "宋体", - "TextAlign": "left", - "TextBaseline": "top", - "QrcodeErrorRate": "M" - } - ] - } - }, - { - "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", - "CutPoint_Radius": 6, - "PointFillColor_cutPoint": "#FF0000", - "CutSortID_Radius": 10, - "CutSortID_font": "18px arial", - "CutSortID_color": "#0000FF", - "BlockDirectionShow": true, - "BlockNoShow": false, - "BlockNoColor": "#000000", - "BlockNoFont": "18px arial", - "BlockSizeShow": false, - "BlockSizeColor": "#000000", - "BlockSizeFont": "10px arial", - "ScrapBlockStrokeColor": "black", - "ScrapBlockFocusColor": "#D3F767", - "ScrapPlaceBlock": "#F9F8BE" - } - } -] diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/sss.json b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/sss.json deleted file mode 100644 index 729cd4b0c..000000000 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/sss.json +++ /dev/null @@ -1,945 +0,0 @@ -[ - { - "Type": 1, - "Setting": { - "UseWorkPanelSize": true, - "BoardWidth": 1220, - "BoardLength": 2440, - "BoardBorder": 3, - "BoardBorder_B": 2, - "CutBorderOff1": 0, - "CutBorderOff2": 0, - "KnifeDia": 6, - "CutGap": 1, - "OriginPointPosition": 0, - "WidthSideAxis": 3, - "LengthSideAxis": 0, - "LocatorPosition": 0, - "OffsetX_Board1": 0, - "OffsetY_Board1": 0, - "LocatorPosition_Block": 0, - "OffsetX_Block": 0, - "OffsetY_Block": 0, - "scrapBlockSquare": 200, - "srcapBlockWidthMin": 100, - "scrapBlockWidthMax": 600, - "FreeHeight": 40, - "FreeLocationX": 0, - "FreeLocationY": 2440, - "FreeSpeed": 15000, - "WorkStartHeight": 0, - "WorkStartSpeed": 2000, - "WorkStartDistance": 25, - "WorkPreDistance": 2, - "WorkSpeed": 15000, - "WorkCornerSpeed": 2500, - "WorkEndSpeed": 2500, - "WorkEndDistace": 30, - "sameBorderHighSpeed": 0, - "innerCornerDistence": 0, - "innerCornerSpeed": 3000, - "HoleFreeSpeed": 5000, - "HoleFirstDepth": 0, - "HoleFirstSpeed": 3500, - "HoleSpeed": 3500, - "ModelSpeed": 8000, - "AllowDoubleHoleFirstSort": true, - "AutoSortingMinWidth": 200, - "FirstCutBorderInFaceB": false, - "TongHoleOnlyOneTime": false, - "TongHoleUseTwoTime": false, - "AllowDoubleSplit": false, - "SplitDepth": 8, - "LimitDouleSplit": false, - "DoubleSplitWidth": 100, - "DoubleSplitLength": 100, - "SplitBlockSeqIds": "", - "UseDianZiJuMethod": false, - "DisposeCutBlock": false, - "UseNewKnifeModule": false, - "KnifeIDForHole": 1, - "Knifes4Hole": "1", - "ModelKnifeGroup": [], - "KnifeList": [ - { - "KnifeID": 1, - "KnifeName": "T1", - "AxleID": 0, - "AllowCut": true, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 6, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T1nM03 S18000nG43 H1", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 2, - "KnifeName": "T2", - "AxleID": 0, - "AllowCut": true, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 4, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T2nM03 S18000nG43 H2", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 3, - "KnifeName": "T3", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 5, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T3nM03 S18000nG43 H3", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 4, - "KnifeName": "T4", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 8, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T4nM03 S18000nG43 H4", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 5, - "KnifeName": "T5", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 10, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T5nM03 S18000nG43 H5", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 6, - "KnifeName": "T6", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 15, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T6nM03 S18000nG43 H6", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 7, - "KnifeName": "T7", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 6, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T7nM03 S18000nG43 H7", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 8, - "KnifeName": "T8", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 6, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T8nM03 S18000nG43 H8", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 9, - "KnifeName": "T9", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 6, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T9nM03 S18000nG43 H9", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 10, - "KnifeName": "T10", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 6, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T10nM03 S18000nG43 H10", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 11, - "KnifeName": "T11", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 6, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T11nM03 S18000nG43 H11", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 12, - "KnifeName": "T12", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 6, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "M06 T12nM03 S18000nG43 H12", - "StopCode": "M05", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - } - ], - "ExportOrderPathName": "{0}_{1}_{2}", - "ExportBoardPathName": "{0}_{2}_{3}", - "BoardFileA": "{0,#3}_正.nc", - "BoardFileB": "{0,#3}_反.nc", - "BlockFile": "{0}.nc", - "NcFileHead": "G54 G90nG53 Z-5.", - "NcFileEnd": "M30", - "NcFileHead_B": "G54 G90", - "NcFileEnd_B": "G00 Z60.000nM30", - "NcFileHead_Block": "G54 G90", - "NcFileEnd_Block": "G00 Z60.000nM30", - "RegularBlockFilletCurve": false, - "UnregularBlockFilletCurve": true, - "DealCircleWithIJ": false, - "IsTurnOverG2G3": false, - "AllowNCComments": false, - "AllowAddGcodeEndChar": false, - "GcodeEndChar": "", - "NcFileIsGB2312": false, - "AllowExportNC_BackFace": false, - "OneBoardFile": false, - "AllowExportNC_block": true, - "AllowExportDataFile": true, - "AllowExportBoardDxf": false, - "showTwoWorkSpace": false, - "showChooseCutKnife": true, - "showPriorFacing": true, - "showAutoLoadBoard": true, - "showHoleGroup": true, - "showAutoNotePrinter": false, - "showCustomBlockNo": false, - "showMachine": false, - "AllowDoubleWorkSpace": false, - "SameOriginPointPosition": false, - "OffsetX_WorkNum2": 0, - "OffsetY_WorkNum2": 2600, - "OriginPointPosition2": 0, - "WidthSideAxis2": 0, - "LengthSideAxis2": 2, - "LocatorPosition2": 0, - "OffsetX_Board2": 0, - "OffsetY_Board2": 0, - "AllowCombineNCWithDoubleWorkSpace": false, - "IsOddNumInWorkSpace1": true, - "IsHoleBlockInSpace1": true, - "NcFileHead_WorkSpace2": "", - "NcFileEnd_WorkSpace2": "", - "NcFileHead_B_WorkSpace2": "", - "NcFileEnd_B_WorkSpace2": "", - "AllowChangeCutKnifeWithThickness": false, - "AllowChangeCutKnifeWidthID": false, - "BoardKnifeList": [], - "IsPriorFacing_RoleNum": 1, - "DisPloseHoleRole": false, - "IsIgnore_HolingModeling": true, - "IsForceHoling_MultiSide_Minimum": true, - "IgnoreValue_MultiSide_Minimum": 250, - "IsForceHoling_SingleSide_Minimum": true, - "IgnoreValue_SingleSide_Minimum": 60, - "IsForceHoling_SingleSide_Maximum": false, - "IgnoreValue_SingleSide_Maximum": 2440, - "IsForceHoling_MultiSide_Maximun": true, - "IgnoreValue_MultiSide_Maximun": 1200, - "IsForceHoling_UnRegularBlock": false, - "IsForceHoling_HasModel": false, - "IsIgnore_Modeling": true, - "doModel_hasModel": false, - "doModel_UnRegular": false, - "doModel_twoSmall": true, - "doModel_twoSmall_Value": 250, - "doModel_oneSmall": true, - "doModel_oneSmall_Value": 60, - "doModel_twoBig": true, - "doModel_twoBig_Value": 1220, - "doModel_oneBig": false, - "doModel_oneBig_Value": 2440, - "AllowChangeIgnore": true, - "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": 50, - "wr6_OverRun_LengthE": 2440, - "wr6_OverRun_hasThroghModel": false, - "wr6_OverRun_hasThroghModel_r": 30, - "wr6_OverRun_hasThroghModel_size": 30, - "wr6_OverRun_UnRegular": false, - "wr6_OverRun_MaxChamferR": 0, - "wr6_OverRun_MaxInnerLength": 0, - "wr6_unModel_all": false, - "wr6_unModel_isThrogh": true, - "wr6_unModel_isArc": 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": true, - "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_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_doStyle_1Face": 0, - "wr6_doStyle_1Face_hole": true, - "wr6_doStyle_1Face_model": true, - "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", - "IsLoadBoardBeforeFileHead": true, - "NcLoadBoard": "M406", - "NcFileHoleBegin": "", - "NcFileHoleEnd": "", - "HolingByKnifeDia": true, - "NoteAutoPrinter": 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, - "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, - "MiniumSpaceSize": 5, - "NeatenSpaceGap": 0, - "ResetPositionWithLocator": false, - "NcNumberFixNumber": 3, - "NcFileRemoveEmptyLine": true, - "HoleWaitingCode": "", - "prevRunActionCount": 5, - "ShearBorderFaceA": false, - "AllowOppositeDealChuanHole": false, - "ManagerPassword": "cftech123456789", - "Remark": "", - "WebQueryPageSize": 1000, - "ExportRootPath": "C:", - "AllowSelectExportPath": false, - "AllowExportImage": false, - "ManualSortingCornerWidth": 2 - } - }, - { - "Type": 2, - "Setting": { - "companyID": 0, - "noteName": "标签-宽60mm高40mm", - "width": 480, - "height": 304, - "objects": [ - { - "Type": 4, - "ObjcectID": 0, - "ObjectName": "材质", - "X": 10, - "Y": 45, - "Width": 300, - "Height": 30, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "IsVertical": false, - "DataText": "多层板黑色荧光", - "DataExpression": "return obj.MetrialName+obj.Color;", - "DisplayType": 0, - "BarcodeType": "CODE39", - "FontSize": 30, - "FontWeight": 800, - "FontFamily": "雅黑", - "TextAlign": "left", - "TextBaseline": "top", - "QrcodeErrorRate": "M" - }, - { - "Type": 4, - "ObjcectID": 0, - "ObjectName": "柜名", - "X": 10, - "Y": 115, - "Width": 450, - "Height": 30, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "IsVertical": false, - "DataText": "电视柜顶板", - "DataExpression": "return obj.BoxName+obj.BlockName+obj.Remark1+obj.Remark2+obj.Remark3+obj.Remark4+obj.Remark5;", - "DisplayType": 0, - "BarcodeType": "CODE39", - "FontSize": 30, - "FontWeight": 800, - "FontFamily": "雅黑", - "TextAlign": "left", - "TextBaseline": "top", - "QrcodeErrorRate": "M" - }, - { - "Type": 4, - "ObjcectID": 0, - "ObjectName": "地址", - "X": 10, - "Y": 10, - "Width": 340, - "Height": 30, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "IsVertical": false, - "DataText": "招商樾园1-2-305", - "DataExpression": "return obj.ConsigneeAddress;", - "DisplayType": 0, - "BarcodeType": "CODE39", - "FontSize": 30, - "FontWeight": 800, - "FontFamily": "雅黑", - "TextAlign": "left", - "TextBaseline": "top", - "QrcodeErrorRate": "M" - }, - { - "Type": 6, - "ObjcectID": 0, - "ObjectName": "封边图", - "X": 20, - "Y": 200, - "Width": 100, - "Height": 80, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "ShowData": true, - "DataWidth": 15, - "FontSize": 18, - "FontWeight": 800, - "FontFamily": "黑体", - "ShowCncDict": true, - "CncDictType": 1, - "ShowSideHole": false - }, - { - "Type": 5, - "ObjcectID": 0, - "ObjectName": "位置图", - "X": 250, - "Y": 180, - "Width": 220, - "Height": 110, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "LineHeight": 1, - "LineColor": "rgb(0,0,0)", - "FillColor": "rgb(0,0,0)" - }, - { - "Type": 4, - "ObjcectID": 0, - "ObjectName": "条码", - "X": 140, - "Y": 190, - "Width": 100, - "Height": 100, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "IsVertical": false, - "DataText": "210191122706", - "DataExpression": "return obj.BlockNo;", - "DisplayType": 2, - "BarcodeType": "CODE128", - "FontSize": "20", - "FontWeight": "400", - "FontFamily": "宋体", - "TextAlign": "left", - "TextBaseline": "top", - "QrcodeErrorRate": "M" - }, - { - "Type": 4, - "ObjcectID": 0, - "ObjectName": "成品尺寸", - "X": 10, - "Y": 80, - "Width": 300, - "Height": 30, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "IsVertical": false, - "DataText": "2178*348*18", - "DataExpression": "return obj.CuttingLength + '*' +obj.CuttingWidth+'*'+obj.Thickness;", - "DisplayType": 0, - "BarcodeType": "CODE39", - "FontSize": 30, - "FontWeight": 800, - "FontFamily": "雅黑", - "TextAlign": "left", - "TextBaseline": "top", - "QrcodeErrorRate": "M" - }, - { - "Type": 4, - "ObjcectID": 0, - "ObjectName": "自定义单号", - "X": 10, - "Y": 150, - "Width": 230, - "Height": 30, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "IsVertical": false, - "DataText": "ZSYY1-2-305-6-3", - "DataExpression": "return obj.CustomOrderNo;", - "DisplayType": 0, - "BarcodeType": "CODE39", - "FontSize": 30, - "FontWeight": 800, - "FontFamily": "雅黑", - "TextAlign": "left", - "TextBaseline": "top", - "QrcodeErrorRate": "M" - }, - { - "Type": 4, - "ObjcectID": 0, - "ObjectName": "板编号", - "X": 270, - "Y": 150, - "Width": 180, - "Height": 30, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "IsVertical": false, - "DataText": "210191122706", - "DataExpression": "return obj.BlockNo;", - "DisplayType": 0, - "BarcodeType": "CODE39", - "FontSize": 30, - "FontWeight": 800, - "FontFamily": "雅黑", - "TextAlign": "left", - "TextBaseline": "top", - "QrcodeErrorRate": "M" - }, - { - "Type": 4, - "ObjcectID": 0, - "ObjectName": "页码", - "X": 350, - "Y": 10, - "Width": 110, - "Height": 30, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "IsVertical": false, - "DataText": "1-12", - "DataExpression": "return obj.BoardID + '-' + obj.CutSortID;", - "DisplayType": 0, - "BarcodeType": "CODE39", - "FontSize": 30, - "FontWeight": 800, - "FontFamily": "雅黑", - "TextAlign": "left", - "TextBaseline": "top", - "QrcodeErrorRate": "M" - }, - { - "Type": 4, - "ObjcectID": 0, - "ObjectName": "柜体名", - "X": 360, - "Y": 40, - "Width": 90, - "Height": 65, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "IsVertical": false, - "DataText": "A", - "DataExpression": "return obj.BoxName.substr(0,1);", - "DisplayType": 0, - "BarcodeType": "CODE39", - "FontSize": 80, - "FontWeight": 800, - "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": "400", - "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": "400", - "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": "400", - "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;", - "LineHeight": 1, - "LineColor": "rgb(0,0,0)", - "FillColor": "rgb(0,0,0)" - } - ] - } - }, - { - "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": "#cccccc", - "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": "#EE9A9A", - "HoleColor": "#676767", - "HoleColor2": "#FFFFFF", - "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": "#7AA77A", - "ScrapBlockFocusColor": "#D3E767", - "ScrapPlaceBlock": "#F9F8BE" - } - } -] \ No newline at end of file diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/xx.json b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/xx.json deleted file mode 100644 index 04e34f86a..000000000 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/xx.json +++ /dev/null @@ -1,28 +0,0 @@ -[ - { - "ID": 0, - "MachineID": 5511, - "CompanyID": 1678, - "Name": "通用电子锯-备份", - "Type": 5, - "Setting": { - "templateName": "通用电子锯表格", - "encodingName": "", - "fileA": "", - "fileB": "", - "fileCreateType": "", - "codeContent": "// @changelog 2022-05-09 xzh 添加可配置压缩包名称n//参数可配置通用电子锯nnif(order == null || helper == null) return getArgList();nnfunction getArgList()n{ntlet args= { list:[],add(name,value,remark){ this.list.push({name,value,remark});return this;}};ntreturn argsn .add('zipFileName','cnc-{0}-{1}-{5}-{3}.zip', '导出zip文件名(0:日期时间,1:排单号,2:排单备注,3:地址列表,4:订单号列表,5:客户名称列表)')ntt.add('filename','{0}_{1}_{2}_{3}.csv','文件名(按板材导出时 0:板材名 1:材质 2:颜色 3:厚度 4:品牌rn按订单导出时 0:订单号 1:自定义单号 2:经销商 3:客户 4:地址)')ntt.add('gb2312',true,'中文编码方式(false:UTF-8 true:GB-2312)')ntt.add('groupByPM',true,'文件导出方式(fasle:按订单导出 true:按板材导出)')ntt.add('showTitle',true,'是否显示标题') n .add('fn_Filter','return false;','板件过滤函数(b板件)@b') ntt.add('fn_row',let texts = [];nlet isTitle = i ==0;nnaddV('订单号',b.OrderNo);naddV('柜号',b.BoxName);naddV('板件编号',b.BlockNo);nlet ztm = (b.FrontHoleCount+b.FrontModelCount>0 || b.BackHoleCount+b.BackModelCount==0 && b.HoleCount_Side>0 || b.IsUnRegular) ? b.BlockNo+'A' : '';nlet ftm = b.BackHoleCount+b.BackModelCount>0 ? b.BlockNo+'B' : '';naddV('正面条码',ztm);naddV('反面条码',ftm);naddV('产品名称',b.BlockName);naddV('成品名称',b.BlockName);naddV('材质名称',b.Thickness+'mm'+b.MetrialName+b.Color);nlet fL = getNum(b.Wave==2 ? b.Width : b.Length,1);nlet fW = getNum(b.Wave==2 ? b.Length : b.Width,1);naddV('成品长度',fL);naddV('成品宽度',fW);naddV('成品厚度',b.Thickness);nlet cL = getNum(b.Wave==2 ? b.CuttingWidth : b.CuttingLength,1);nlet cW = getNum(b.Wave==2 ? b.CuttingLength : b.CuttingWidth,1);naddV('开料长度',cL);naddV('开料宽度',cW);naddV('开料厚度',b.Thickness);naddV('纹路方向',b.Wave==2 ? '横纹' : '竖纹');naddV('需切数量',1);nlet fc1 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderUpper : b.BorderLeft,1);nlet fc2 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderUnder : b.BorderRight,1);nlet fk1 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderLeft : b.BorderUpper,1);nlet fk2 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderRight : b.BorderUnder,1);naddV('封长1',fc1);naddV('封宽1',fk1);naddV('封长2',fc2);naddV('封宽2',fk2);naddV('订单类型',b.RoomName);naddV('客户信息',b.ConsigneeAddress);naddV('加盟店',b.CustomerName);naddV('异形',b.IsUnRegular ? '异形' : '');naddV('旋转','');naddV('正面槽',b.FrontModelCount);naddV('是否开槽',b.FrontModelCount+b.BackModelCount>0 ? '槽' : '');naddV('反面槽',b.BackModelCount);naddV('正面孔',b.FrontHoleCount);naddV('是否打孔',b.FrontHoleCount+b.BackHoleCount>0 ? '孔' : '');naddV('反面孔',b.BackHoleCount);naddV('拉槽标识',b.FrontModelCount+b.BackModelCount>0 ? '槽' : '');naddV('排钻标识',b.FrontHoleCount+b.BackHoleCount+b.HoleCount_Side>0 ? '钻' : '');naddV('钻孔',b.FrontHoleCount>0 && b.BackHoleCount>0 ? '双' : (b.FrontHoleCount+b.HoleCount_Side>0 || b.BackHoleCount+b.HoleCount_Side>0 ? '单' : ''));naddV('异形ID','');nnreturn texts.join(',');nnfunction addV(title,v)n{n if(v == undefined) v = '';n texts.push(isTitle ? title : v.toString());n}nnfunction getNum(v,b)n{n return v.toFixed(b);n},'数据行(helper帮助类,i行号,pm板材,b板)@helper,i,pm,b')ntt.list;n}nnlet filename = helper.getArg('filename','{0}_{1}_{2}_{3}.xls');nlet groupByPM = helper.getArg('groupByPM',true);nlet isGb2312 = helper.getArg('gb2312',true);nlet showTitle = helper.getArg('showTitle',true);nlet fn_Filter = helper.newFn('板件过滤函数','fn_Filter','return false;','b'); //板件过滤函数nlet fn_row = helper.newFn('数据行','fn_row',let texts = [];nlet isTitle = i ==0;nnaddV('订单号',b.OrderNo);naddV('柜号',b.BoxName);naddV('板件编号',b.BlockNo);nlet ztm = (b.FrontHoleCount+b.FrontModelCount>0 || b.BackHoleCount+b.BackModelCount==0 && b.HoleCount_Side>0 || b.IsUnRegular) ? b.BlockNo+'A' : '';nlet ftm = b.BackHoleCount+b.BackModelCount>0 ? b.BlockNo+'B' : '';naddV('正面条码',ztm);naddV('反面条码',ftm);naddV('产品名称',b.BlockName);naddV('成品名称',b.BlockName);naddV('材质名称',b.Thickness+'mm'+b.MetrialName+b.Color);nlet fL = getNum(b.Wave==2 ? b.Width : b.Length,1);nlet fW = getNum(b.Wave==2 ? b.Length : b.Width,1);naddV('成品长度',fL);naddV('成品宽度',fW);naddV('成品厚度',b.Thickness);nlet cL = getNum(b.Wave==2 ? b.CuttingWidth : b.CuttingLength,1);nlet cW = getNum(b.Wave==2 ? b.CuttingLength : b.CuttingWidth,1);naddV('开料长度',cL);naddV('开料宽度',cW);naddV('开料厚度',b.Thickness);naddV('纹路方向',b.Wave==2 ? '横纹' : '竖纹');naddV('需切数量',1);nlet fc1 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderUpper : b.BorderLeft,1);nlet fc2 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderUnder : b.BorderRight,1);nlet fk1 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderLeft : b.BorderUpper,1);nlet fk2 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderRight : b.BorderUnder,1);naddV('封长1',fc1);naddV('封宽1',fk1);naddV('封长2',fc2);naddV('封宽2',fk2);naddV('订单类型',b.RoomName);naddV('客户信息',b.ConsigneeAddress);naddV('加盟店',b.CustomerName);naddV('异形',b.IsUnRegular ? '异形' : '');naddV('旋转','');naddV('正面槽',b.FrontModelCount);naddV('是否开槽',b.FrontModelCount+b.BackModelCount>0 ? '槽' : '');naddV('反面槽',b.BackModelCount);naddV('正面孔',b.FrontHoleCount);naddV('是否打孔',b.FrontHoleCount+b.BackHoleCount>0 ? '孔' : '');naddV('反面孔',b.BackHoleCount);naddV('拉槽标识',b.FrontModelCount+b.BackModelCount>0 ? '槽' : '');naddV('排钻标识',b.FrontHoleCount+b.BackHoleCount+b.HoleCount_Side>0 ? '钻' : '');naddV('钻孔',b.FrontHoleCount>0 && b.BackHoleCount>0 ? '双' : (b.FrontHoleCount+b.HoleCount_Side>0 || b.BackHoleCount+b.HoleCount_Side>0 ? '单' : ''));naddV('异形ID','');nnreturn texts.join(',');nnfunction addV(title,v)n{n if(v == undefined) v = '';n texts.push(isTitle ? title : v.toString());n}nnfunction getNum(v,b)n{n return v.toFixed(b);n},'helper','i','pm','b');nnlet hasTitle = false;nlet cache = [];nlet orderFileName='';nlet rowID = 0;nnfor(let pm of order.MetrialList) //按板材 0:板材名 1:材质 2:颜色 3:厚度 4:品牌n{ntif(groupByPM)nt{nttcache = [];nttrowID = 0;nt}ntfor(let i = 1; i <= pm.BlockList.length; i ++)nt{nttlet str_line = '';nttlet block = pm.BlockList[i-1];nttrowID = rowID + 1;nn let isValid = helper.exec(fn_Filter,block); //板件过滤函数nttif(isValid == true) continue; //过滤板件nntt//标题nttif(showTitle && !hasTitle)ntt{ntttlet str_title = helper.exec(fn_row,helper,0,pm,block);ntttcache.push(str_title);nttthasTitle = true;ntt}nntttryntt{ntttstr_line = helper.exec(fn_row,helper,rowID,pm,block);ntt}nttcatch (error)ntt{ntttstr_line = '执行失败';ntt}nttcache.push(str_line); nnttif(!groupByPM && orderFileName=='') //按订单生成 0:订单号 1:自定义单号 2:经销商 3:客户 4:地址ntt{ntttorderFileName = helper.format(filename,block.OrderNo,block.CustomOrderNo,block.CustomerName,block.Consignee,block.ConsigneeAddress);ntt}nt}nntif(groupByPM)nt{nttlet fname = helper.format(filename,pm.GoodsName,pm.Metrial,pm.Color,pm.Thickness,pm.Brank);nttisGb2312 ? helper.pushFile_gb2312(fname,cache.join('rn')) : helper.pushFile(fname,cache.join('rn'));nt}n}nnif(!groupByPM)n{ntisGb2312 ? helper.pushFile_gb2312(orderFileName,cache.join('rn')) : helper.pushFile(orderFileName,cache.join('rn'));n}nn//参数可配置通用电子锯", - "Remark": "", - "cncConfig": { - "zipFileName": "{3}-电子锯文件.zip", - "filename": "{0}_{1}_{2}_{3}.csv", - "gb2312": true, - "groupByPM": true, - "showTitle": true, - "fn_Filter": "return false;", - "fn_row": "let texts = [];nlet isTitle = i ==0;nnaddV('订单号',b.util);naddV('订单号',b.OrderNo);naddV('柜号',b.BoxName);naddV('板件编号',b.BlockNo);nlet ztm = (b.FrontHoleCount+b.FrontModelCount>0 || b.BackHoleCount+b.BackModelCount==0 && b.HoleCount_Side>0 || b.IsUnRegular) ? b.BlockNo+'A' : '';nlet ftm = b.BackHoleCount+b.BackModelCount>0 ? b.BlockNo+'B' : '';naddV('正面条码',ztm);naddV('反面条码',ftm);naddV('产品名称',b.BlockName);naddV('成品名称',b.BlockName);naddV('材质名称',b.Thickness+'mm'+b.MetrialName+b.Color);nlet fL = getNum(b.Wave==2 ? b.Width : b.Length,1);nlet fW = getNum(b.Wave==2 ? b.Length : b.Width,1);naddV('成品长度',fL);naddV('成品宽度',fW);naddV('成品厚度',b.Thickness);nlet cL = getNum(b.Wave==2 ? b.CuttingWidth : b.CuttingLength,1);nlet cW = getNum(b.Wave==2 ? b.CuttingLength : b.CuttingWidth,1);naddV('开料长度',cL);naddV('开料宽度',cW);naddV('开料厚度',b.Thickness);naddV('纹路方向',b.Wave==2 ? '横纹' : '竖纹');naddV('需切数量',1);nlet fc1 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderUpper : b.BorderLeft,1);nlet fc2 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderUnder : b.BorderRight,1);nlet fk1 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderLeft : b.BorderUpper,1);nlet fk2 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderRight : b.BorderUnder,1);naddV('封长1',fc1);naddV('封宽1',fk1);naddV('封长2',fc2);naddV('封宽2',fk2);naddV('订单类型',b.RoomName);naddV('客户信息',b.ConsigneeAddress);naddV('加盟店',b.CustomerName);naddV('异形',b.IsUnRegular ? '异形' : '');naddV('旋转','');naddV('正面槽',b.FrontModelCount);naddV('是否开槽',b.FrontModelCount+b.BackModelCount>0 ? '槽' : '');naddV('反面槽',b.BackModelCount);naddV('正面孔',b.FrontHoleCount);naddV('是否打孔',b.FrontHoleCount+b.BackHoleCount>0 ? '孔' : '');naddV('反面孔',b.BackHoleCount);naddV('拉槽标识',b.FrontModelCount+b.BackModelCount>0 ? '槽' : '');naddV('排钻标识',b.FrontHoleCount+b.BackHoleCount+b.HoleCount_Side>0 ? '钻' : '');naddV('钻孔',b.FrontHoleCount>0 && b.BackHoleCount>0 ? '双' : (b.FrontHoleCount+b.HoleCount_Side>0 || b.BackHoleCount+b.HoleCount_Side>0 ? '单' : ''));naddV('异形ID','');nnreturn texts.join(',');nnfunction addV(title,v)n{n if(v == undefined) v = '';n texts.push(isTitle ? title : v.toString());n}nnfunction getNum(v,b)n{n return v.toFixed(b);n}}" - } - }, - "Remark": "品牌:通用 备注:2020.05.09" - } -] \ No newline at end of file diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/xxx.js b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/xxx.js deleted file mode 100644 index 284ba1600..000000000 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/xxx.js +++ /dev/null @@ -1 +0,0 @@ -// @changelog 2022-05-09 xzh 添加可配置压缩包名称n//参数可配置通用电子锯nnif(order == null || helper == null) return getArgList();nnfunction getArgList()n{ntlet args= { list:[],add(name,value,remark){ this.list.push({name,value,remark});return this;}};ntreturn argsn .add('zipFileName','cnc-{0}-{1}-{5}-{3}.zip', '导出zip文件名(0:日期时间,1:排单号,2:排单备注,3:地址列表,4:订单号列表,5:客户名称列表)')ntt.add('filename','{0}_{1}_{2}_{3}.csv','文件名(按板材导出时 0:板材名 1:材质 2:颜色 3:厚度 4:品牌rn按订单导出时 0:订单号 1:自定义单号 2:经销商 3:客户 4:地址)')ntt.add('gb2312',true,'中文编码方式(false:UTF-8 true:GB-2312)')ntt.add('groupByPM',true,'文件导出方式(fasle:按订单导出 true:按板材导出)')ntt.add('showTitle',true,'是否显示标题') n .add('fn_Filter','return false;','板件过滤函数(b板件)@b') ntt.add('fn_row',let texts = [];nlet isTitle = i ==0;nnaddV('订单号',b.OrderNo);naddV('柜号',b.BoxName);naddV('板件编号',b.BlockNo);nlet ztm = (b.FrontHoleCount+b.FrontModelCount>0 || b.BackHoleCount+b.BackModelCount==0 && b.HoleCount_Side>0 || b.IsUnRegular) ? b.BlockNo+'A' : '';nlet ftm = b.BackHoleCount+b.BackModelCount>0 ? b.BlockNo+'B' : '';naddV('正面条码',ztm);naddV('反面条码',ftm);naddV('产品名称',b.BlockName);naddV('成品名称',b.BlockName);naddV('材质名称',b.Thickness+'mm'+b.MetrialName+b.Color);nlet fL = getNum(b.Wave==2 ? b.Width : b.Length,1);nlet fW = getNum(b.Wave==2 ? b.Length : b.Width,1);naddV('成品长度',fL);naddV('成品宽度',fW);naddV('成品厚度',b.Thickness);nlet cL = getNum(b.Wave==2 ? b.CuttingWidth : b.CuttingLength,1);nlet cW = getNum(b.Wave==2 ? b.CuttingLength : b.CuttingWidth,1);naddV('开料长度',cL);naddV('开料宽度',cW);naddV('开料厚度',b.Thickness);naddV('纹路方向',b.Wave==2 ? '横纹' : '竖纹');naddV('需切数量',1);nlet fc1 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderUpper : b.BorderLeft,1);nlet fc2 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderUnder : b.BorderRight,1);nlet fk1 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderLeft : b.BorderUpper,1);nlet fk2 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderRight : b.BorderUnder,1);naddV('封长1',fc1);naddV('封宽1',fk1);naddV('封长2',fc2);naddV('封宽2',fk2);naddV('订单类型',b.RoomName);naddV('客户信息',b.ConsigneeAddress);naddV('加盟店',b.CustomerName);naddV('异形',b.IsUnRegular ? '异形' : '');naddV('旋转','');naddV('正面槽',b.FrontModelCount);naddV('是否开槽',b.FrontModelCount+b.BackModelCount>0 ? '槽' : '');naddV('反面槽',b.BackModelCount);naddV('正面孔',b.FrontHoleCount);naddV('是否打孔',b.FrontHoleCount+b.BackHoleCount>0 ? '孔' : '');naddV('反面孔',b.BackHoleCount);naddV('拉槽标识',b.FrontModelCount+b.BackModelCount>0 ? '槽' : '');naddV('排钻标识',b.FrontHoleCount+b.BackHoleCount+b.HoleCount_Side>0 ? '钻' : '');naddV('钻孔',b.FrontHoleCount>0 && b.BackHoleCount>0 ? '双' : (b.FrontHoleCount+b.HoleCount_Side>0 || b.BackHoleCount+b.HoleCount_Side>0 ? '单' : ''));naddV('异形ID','');nnreturn texts.join(',');nnfunction addV(title,v)n{n if(v == undefined) v = '';n texts.push(isTitle ? title : v.toString());n}nnfunction getNum(v,b)n{n return v.toFixed(b);n},'数据行(helper帮助类,i行号,pm板材,b板)@helper,i,pm,b')ntt.list;n}nnlet filename = helper.getArg('filename','{0}_{1}_{2}_{3}.xls');nlet groupByPM = helper.getArg('groupByPM',true);nlet isGb2312 = helper.getArg('gb2312',true);nlet showTitle = helper.getArg('showTitle',true);nlet fn_Filter = helper.newFn('板件过滤函数','fn_Filter','return false;','b'); //板件过滤函数nlet fn_row = helper.newFn('数据行','fn_row',let texts = [];nlet isTitle = i ==0;nnaddV('订单号',b.OrderNo);naddV('柜号',b.BoxName);naddV('板件编号',b.BlockNo);nlet ztm = (b.FrontHoleCount+b.FrontModelCount>0 || b.BackHoleCount+b.BackModelCount==0 && b.HoleCount_Side>0 || b.IsUnRegular) ? b.BlockNo+'A' : '';nlet ftm = b.BackHoleCount+b.BackModelCount>0 ? b.BlockNo+'B' : '';naddV('正面条码',ztm);naddV('反面条码',ftm);naddV('产品名称',b.BlockName);naddV('成品名称',b.BlockName);naddV('材质名称',b.Thickness+'mm'+b.MetrialName+b.Color);nlet fL = getNum(b.Wave==2 ? b.Width : b.Length,1);nlet fW = getNum(b.Wave==2 ? b.Length : b.Width,1);naddV('成品长度',fL);naddV('成品宽度',fW);naddV('成品厚度',b.Thickness);nlet cL = getNum(b.Wave==2 ? b.CuttingWidth : b.CuttingLength,1);nlet cW = getNum(b.Wave==2 ? b.CuttingLength : b.CuttingWidth,1);naddV('开料长度',cL);naddV('开料宽度',cW);naddV('开料厚度',b.Thickness);naddV('纹路方向',b.Wave==2 ? '横纹' : '竖纹');naddV('需切数量',1);nlet fc1 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderUpper : b.BorderLeft,1);nlet fc2 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderUnder : b.BorderRight,1);nlet fk1 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderLeft : b.BorderUpper,1);nlet fk2 = b.IsUnRegular ? '-' : getNum(b.Wave==2 ? b.BorderRight : b.BorderUnder,1);naddV('封长1',fc1);naddV('封宽1',fk1);naddV('封长2',fc2);naddV('封宽2',fk2);naddV('订单类型',b.RoomName);naddV('客户信息',b.ConsigneeAddress);naddV('加盟店',b.CustomerName);naddV('异形',b.IsUnRegular ? '异形' : '');naddV('旋转','');naddV('正面槽',b.FrontModelCount);naddV('是否开槽',b.FrontModelCount+b.BackModelCount>0 ? '槽' : '');naddV('反面槽',b.BackModelCount);naddV('正面孔',b.FrontHoleCount);naddV('是否打孔',b.FrontHoleCount+b.BackHoleCount>0 ? '孔' : '');naddV('反面孔',b.BackHoleCount);naddV('拉槽标识',b.FrontModelCount+b.BackModelCount>0 ? '槽' : '');naddV('排钻标识',b.FrontHoleCount+b.BackHoleCount+b.HoleCount_Side>0 ? '钻' : '');naddV('钻孔',b.FrontHoleCount>0 && b.BackHoleCount>0 ? '双' : (b.FrontHoleCount+b.HoleCount_Side>0 || b.BackHoleCount+b.HoleCount_Side>0 ? '单' : ''));naddV('异形ID','');nnreturn texts.join(',');nnfunction addV(title,v)n{n if(v == undefined) v = '';n texts.push(isTitle ? title : v.toString());n}nnfunction getNum(v,b)n{n return v.toFixed(b);n},'helper','i','pm','b');nnlet hasTitle = false;nlet cache = [];nlet orderFileName='';nlet rowID = 0;nnfor(let pm of order.MetrialList) //按板材 0:板材名 1:材质 2:颜色 3:厚度 4:品牌n{ntif(groupByPM)nt{nttcache = [];nttrowID = 0;nt}ntfor(let i = 1; i <= pm.BlockList.length; i ++)nt{nttlet str_line = '';nttlet block = pm.BlockList[i-1];nttrowID = rowID + 1;nn let isValid = helper.exec(fn_Filter,block); //板件过滤函数nttif(isValid == true) continue; //过滤板件nntt//标题nttif(showTitle && !hasTitle)ntt{ntttlet str_title = helper.exec(fn_row,helper,0,pm,block);ntttcache.push(str_title);nttthasTitle = true;ntt}nntttryntt{ntttstr_line = helper.exec(fn_row,helper,rowID,pm,block);ntt}nttcatch (error)ntt{ntttstr_line = '执行失败';ntt}nttcache.push(str_line); nnttif(!groupByPM && orderFileName=='') //按订单生成 0:订单号 1:自定义单号 2:经销商 3:客户 4:地址ntt{ntttorderFileName = helper.format(filename,block.OrderNo,block.CustomOrderNo,block.CustomerName,block.Consignee,block.ConsigneeAddress);ntt}nt}nntif(groupByPM)nt{nttlet fname = helper.format(filename,pm.GoodsName,pm.Metrial,pm.Color,pm.Thickness,pm.Brank);nttisGb2312 ? helper.pushFile_gb2312(fname,cache.join('rn')) : helper.pushFile(fname,cache.join('rn'));nt}n}nnif(!groupByPM)n{ntisGb2312 ? helper.pushFile_gb2312(orderFileName,cache.join('rn')) : helper.pushFile(orderFileName,cache.join('rn'));n}nn//参数可配置通用电子锯 \ No newline at end of file diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/xxx.json b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/xxx.json deleted file mode 100644 index 59a7b7d81..000000000 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/xxx.json +++ /dev/null @@ -1,847 +0,0 @@ -{ - "name": "开料机台", - "createTime": "2021-03-25 13:28:25", - "creator": 1, - "updateTime": "2021-03-25 13:28:25", - "updater": 1, - "organId": 1, - "deleted": 0, - "Settings": [ - { - "ID": 0, - "MachineID": 5385, - "CompanyID": 2176, - "Name": "", - "Type": 1, - "Setting": { - "WebQueryPageSize": 1000, - "Remark": "", - "BoardWidth": 1220, - "BoardLength": 2440, - "BoardBorder": 3, - "BoardBorder_B": 2, - "CutBorderOff1": 0, - "CutBorderOff2": 0, - "KnifeDia": 6, - "CutGap": 1, - "OriginPointPosition": 0, - "WidthSideAxis": 0, - "LengthSideAxis": 2, - "LocatorPosition": 0, - "OffsetX_Board1": 0, - "OffsetY_Board1": 0, - "LocatorPosition_Block": 0, - "OffsetX_Block": 0, - "OffsetY_Block": 0, - "AllowBlockNo_Note": false, - "BlockNo_Note": "return obj.BlockNo;", - "BoardName": "{0}_{1}_{2}_{3}", - "FreeHeight": 40, - "FreeLocationX": 0, - "FreeLocationY": 2440, - "FreeSpeed": 15000, - "WorkStartHeight": 0, - "WorkStartSpeed": 3000, - "WorkStartDistance": 20, - "WorkPreDistance": 2, - "WorkSpeed": 8000, - "WorkCornerSpeed": 3000, - "WorkEndSpeed": 3000, - "WorkEndDistace": 25, - "HoleFreeSpeed": 2400, - "HoleFirstDepth": 2, - "HoleFirstSpeed": 800, - "HoleSpeed": 1200, - "ModelSpeed": 8000, - "UseDianZiJuMethod": false, - "DisposeCutBlock": false, - "UseNewKnifeModule": false, - "KnifeIDForHole": 1, - "KnifeList": [ - { - "KnifeID": 1, - "KnifeName": "切割刀1", - "AxleID": 0, - "AllowCut": true, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 6, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 2, - "KnifeName": "切割刀2", - "AxleID": 0, - "AllowCut": true, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 5, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 3, - "KnifeName": "1号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 5, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 4, - "KnifeName": "2号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 8, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 5, - "KnifeName": "3号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 10, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 6, - "KnifeName": "4号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 15, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 7, - "KnifeName": "5号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 20, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 8, - "KnifeName": "6号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 9, - "KnifeName": "7号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 10, - "KnifeName": "8号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 11, - "KnifeName": "9号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - } - ], - "ModelKnifeGroup": [], - "ExportRootPath": "C:", - "AllowSelectExportPath": false, - "ExportOrderPathName": "{0}_{1}_{2}", - "ExportBoardPathName": "{0} {1}", - "BoardFileA": "{0}_A.nc", - "BoardFileB": "{0}_B.nc", - "BlockFile": "{0}.nc", - "AllowExportNC_BackFace": true, - "OneBoardFile": false, - "AllowExportNC_block": false, - "AllowNCComments": true, - "AllowExportDataFile": false, - "NcFileHead": "", - "NcFileEnd": "", - "NcFileHead_B": "", - "NcFileEnd_B": "", - "NcFileHead_Block": "", - "NcFileEnd_Block": "", - "NcNumberFixNumber": 3, - "NcFileIsGB2312": false, - "NcFileRemoveEmptyLine": true, - "AllowExportImage": false, - "AllowExportBoardDxf": false, - "HoleWaitingCode": "", - "AllowDoubleWorkSpace": false, - "SameOriginPointPosition": false, - "OffsetX_WorkNum2": 0, - "OffsetY_WorkNum2": 2600, - "OriginPointPosition2": 0, - "WidthSideAxis2": 0, - "LengthSideAxis2": 2, - "LocatorPosition2": 0, - "OffsetX_Board2": 0, - "OffsetY_Board2": 0, - "AllowCombineNCWithDoubleWorkSpace": false, - "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": "", - "ManualSortingCornerWidth": 2, - "AllowDoubleHoleFirstSort": true, - "AutoSortingMinWidth": 150, - "FirstCutBorderInFaceB": true, - "TongHoleOnlyOneTime": false, - "AllowOppositeDealChuanHole": false, - "Ignore2in1SideHole": false, - "Ignore2in1SideHoleGap": 0.01, - "AllowDoubleSplit": false, - "SplitDepth": 8, - "LimitDouleSplit": false, - "DoubleSplitWidth": 100, - "DoubleSplitLength": 100, - "SplitBlockSeqIds": "", - "IsLoadBoardBeforeFileHead": true, - "NcLoadBoard": "", - "NcFileHoleBegin": "", - "NcFileHoleEnd": "", - "HolingByKnifeDia": true, - "DealCircleWithIJ": false, - "IsTurnOverG2G3": false, - "RegularBlockFilletCurve": false, - "UnregularBlockFilletCurve": true, - "AllowAddGcodeEndChar": false, - "GcodeEndChar": "", - "ResetPositionWithLocator": false, - "NoteAutoPrinter": 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, - "NoteOtherExport": false, - "NoteOtherFun": "", - "MinBlockWidth": 10, - "MinHoleRadius": 1, - "MinHoleDepth": 1, - "MinModelDepth": 0, - "MinModelRadius": 1, - "MaxBorderThickness": 10, - "MiniumSpaceSize": 5, - "NeatenSpaceGap": 0, - "ManagerPassword": "cftech123456789", - "showTwoWorkSpace": false, - "showChooseCutKnife": false, - "showPriorFacing": false, - "showAutoLoadBoard": false, - "showHoleGroup": false, - "showMachine": false, - "showAutoNotePrinter": false, - "showCustomBlockNo": false, - "prevRunActionCount": 5 - }, - "Remark": "" - }, - { - "ID": 0, - "MachineID": 5385, - "CompanyID": 2176, - "Name": "", - "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;", - "ShowData": true, - "DataWidth": 8, - "FontSize": 15, - "FontWeight": 800, - "FontFamily": "宋体", - "ShowCncDict": true, - "CncDictType": 0 - }, - { - "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;", - "LineHeight": 1, - "LineColor": "rgb(0,0,0)", - "FillColor": "rgb(0,0,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" - } - ] - }, - "Remark": "" - }, - { - "ID": 0, - "MachineID": 5385, - "CompanyID": 2176, - "Name": "", - "Type": 3, - "Setting": { - "BoardBorder": 40, - "GlobalAlpha": 0.95, - "WorkSpaceColor": "#d3d7d4", - "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", - "CutPoint_Radius": 6, - "PointFillColor_cutPoint": "#FF0000", - "CutSortID_Radius": 10, - "CutSortID_font": "18px arial", - "CutSortID_color": "#0000FF", - "BlockDirectionShow": true, - "BlockNoShow": false, - "BlockNoColor": "#000000", - "BlockNoFont": "18px arial", - "BlockSizeShow": false, - "BlockSizeColor": "#000000", - "BlockSizeFont": "10px arial", - "ScrapBlockStrokeColor": "black", - "ScrapBlockFocusColor": "#D3F767", - "ScrapPlaceBlock": "#F9F8BE" - }, - "Remark": "" - } - ] -} - diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/zhuankong.json b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/zhuankong.json deleted file mode 100644 index 72dafa77f..000000000 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/zhuankong.json +++ /dev/null @@ -1,30 +0,0 @@ -[ - { - "ID": 0, - "MachineID": 0, - "CompanyID": 813, - "Name": "极东六面mpr(可配置)", - "Type": 5, - "Setting": { - "templateName": "", - "encodingName": "", - "fileA": "", - "fileB": "", - "fileCreateType": "", - "codeContent": "" - }, - "Remark": "品牌:极东 备注:可配置参数-2020.12.08" - } -] - -[ - { - "ID": 0, - "MachineID": 5347, - "CompanyID": 0, - "Name": "nc通用(通用配置模式)", - "Type": 5, - "Setting": "{\"templateName\":\"nc通用\",\"encodingName\":\"\",\"fileA\":\"\",\"fileB\":\"\",\"fileCreateType\":\"\",\"codeContent\":\"//2022-3-7 lrx 纯铣边不出文件问题处理\\n//2022-1-6 lrx 文件头尾 修改成函数. \\n//2021-12-27 sqy 工位头尾定义修正,空行(调刀、停刀、文件头尾、工位头尾)不显示\\n//2021-12-2 sqy 增加板件编号自定义函数\\n//Gcode PTP函数 支持双工位\\n\\nif (order == null || helper == null) return getArgList();\\n\\nfunction getArgList() /*初始化 配置列表****************************************************************************/\\n{\\n let strfnKnifes = `\\n\\tlet knifes = [];\\n\\taddKnife('左右',0,5,4,'M33','T23T2200\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('左右',0,4,5,'M33','T24T2900\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('上下',0,5,4,'M33','T23T2400\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('上下',0,4,5,'M33','T22T2900\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('单',0,7.5,0,'M33','T2100\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('单',0,4,0,'M33','T2200\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('单',0,5,0,'M33','T2300\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('单',0,0,0,'M33','T2400\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('单',0,17.5,0,'M33','T2500\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('单',0,2.5,0,'M33','T2600\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('单',0,0,0,'M33','T2700\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('单',0,10,0,'M33','T2800\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('单',0,0,0,'M33','T2900\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('左',0,4,0,'M33','T6100\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('右',0,4,0,'M33','T6200\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('上',0,4,3,'M33','T66T6400\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('上',0,3,4,'M33','T68T6600\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('上',0,4,0,'M33','T6600\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('上',0,3,0,'M33','T6800\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('下',0,4,3,'M33','T65T6300\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('下',0,3,4,'M33','T67T6500\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('下',0,4,0,'M33','T6500\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\taddKnife('下',0,3,0,'M33','T6700\\\\\\\\r\\\\\\\\nM63','','T0\\\\\\\\r\\\\\\\\nM35');\\n\\treturn knifes\\n\\tfunction addKnife(type,z,r1,r2,zStart,kStart,kEnd,zEnd)\\n\\t{ //类型,轴号,半径1,半径2,轴启动,刀启动,刀停止,轴停止\\n\\t\\tlet knife = {t:type,z:z,r1:r1,r2:r2,zsc:zStart,sc:kStart,ec:kEnd,zec:zEnd};\\n\\t\\tknifes.push(knife);\\n\\t\\treturn knife;\\n\\t}`;\\n\\n let args = { list: [], add(name, value, remark) { this.list.push({ name, value, remark }); return this; } };\\n return args\\n .add('roleNum', 1, '加工模式(1=CNC全加工 2=CNC少加工 3=CNC多加工)')\\n .add('fileNameA', '{0}A.nc', '正面文件名')\\n .add('fileNameB', '{0}B.nc', '反面文件名')\\n .add('gb2312', true, '文件编码(false:utf8 true:gb2312)')\\n .add('bitNum', 2, '小数点位数')\\n .add('isPlaceByLength', false, '小板加工方向(false:高方向 true:长边方向)')\\n .add('isTurnByWidth', true, '翻板方式(true:按板宽左右翻 false:按板长上下掉头翻)')\\n .add('cutBorder', false, '铣异形边(false:不加工 true:加工)')\\n .add('doModel_through', false, '挖穿造型(false:不加工 true:加工)')\\n .add('doModel_arc', true, '加工弧形造型')\\n .add('sideHoleDepth_min', 12, '侧孔深最小值')\\n .add('sideHoleDepth_max', 40, '侧孔深最大值')\\n .add('holeDepth_min', 0.2, '面孔深最小值')\\n .add('holeDepth_max', 40, '面孔深最大值')\\n .add('DisposeHoleRadius', '', '面孔不打的半径(用空格分隔)')\\n .add('has2WorkPanel', false, '双工位(false:单工位 true:双工位)')\\n .add('fn_transXY', 'return {x:y,y:w-x};', '坐标XY函数(p工位1、2\\\\r\\\\nw宽,l长\\\\r\\\\nx,y原坐标)\\\\\\\\@p,w,l,x,y')\\n .add('fn_transZ', 'return t+z;', '坐标Z函数(p工位1、2\\\\r\\\\nt板厚,z原坐标)\\\\\\\\@t,z')\\n .add('fn_fileBegin', 'return \\\"\\\";', '文件头(obj传参下有:helper帮助类\\\\r\\\\npt原函数,b板,f反面,p工位1、2)\\\\\\\\@obj')\\n .add('fn_fileEnd', 'return \\\"\\\";', '文件尾(obj传参下有:helper帮助类\\\\r\\\\npt原函数,b板,f反面,p工位1、2)\\\\\\\\@obj')\\n .add('fn_wrpBegin', 'return \\\"\\\";', '工位头(obj传参下有:helper帮助类\\\\r\\\\npt原函数,b板,f反面,p工位1、2)\\\\\\\\@obj')\\n .add('fn_wrpEnd', 'return \\\"\\\";', '工位尾(obj传参下有:helper帮助类\\\\r\\\\npt原函数,b板,f反面,p工位1、2)\\\\\\\\@obj')\\n .add('safeV', 30, '水平安全距离(打侧孔时)')\\n .add('safeH', 40, '垂直安全距离(打侧孔时)')\\n .add('speed_space', 12000, '空程速度')\\n .add('speed_shole', 3500, '水平孔速度')\\n .add('speed_hole', 3500, '垂直孔速度')\\n .add('speed_model', 6000, '造型速度')\\n .add('speed_cut', 5000, '铣边速度')\\n .add('fn_knifes', strfnKnifes, '刀库(t:类型\\\\r\\\\n 水平排钻刀:左 右 上 下\\\\r\\\\n 垂直排钻刀:单 左右 上下\\\\r\\\\n 铣刀:铣\\\\r\\\\nr1:主刀半径\\\\r\\\\nr2:组合刀半径\\\\r\\\\nz:轴号\\\\r\\\\nsc:刀启动代码 \\\\r\\\\nec:刀停止代码 \\\\r\\\\nzsc:轴启动代码 \\\\r\\\\nzec:轴停止代码)//@')\\n .add('fn_cutKnife', 'return t > 18 ? 4 : 3;', '异形铣边刀选择(根据板厚t选择铣刀,返回刀半径)//@t,h')\\n .add('fn_blockNo', 'return b.BlockNo;', '板编号(b板)\\\\\\\\@b')\\n .list;\\n}\\n\\n//开料模式 1:全加工 2:cnc少加工 3:cnc多加工\\nlet roleNum = helper.getArg('roleNum', 1);\\n\\n//文件名,编码 {0}代表板编号\\nlet fileNameA = helper.getArg('fileNameA', '{0}A.nc');\\nlet fileNameB = helper.getArg('fileNameB', '{0}B.nc');\\nlet isGb2312 = helper.getArg('gb2312', true);\\n\\n//小数位数\\nlet bitNum = helper.getArg('bitNum', 2);\\n\\n//放板方式 false:高方向 true:长边方向\\nlet isPlaceByLength = helper.getArg('isPlaceByLength', false);\\n\\n//翻面方式 false:长边翻 true:宽边翻\\nlet isTurnByWidth = helper.getArg('isTurnByWidth', true);\\n\\n//是否铣边 false:不加工 true:加工\\nlet cutBorder = helper.getArg('cutBorder', false);\\n\\n//是否加工打穿的造型 false:不加工 true:加工\\nlet doModel_through = helper.getArg('doModel_through', false);\\n\\n//是否加工有弧形的造型 false:不加工 true:加工\\nlet doModel_arc = helper.getArg('doModel_arc', true);\\n\\nlet unDoList_holeRidus; //不处理 面孔半径\\nlet unDoRange_holeDepth; //不处理 面孔深度\\nlet unDoRange_sideHoleDepth; //不处理 侧孔深度\\n\\nlet has2WorkPanel = helper.getArg('has2WorkPanel', false); //有双工位\\n\\nlet fn_blockNo = helper.newFn('板编号', 'fn_blockNo', 'return b.BlockNo;', 'b');\\n//坐标函数\\nlet fn_transXY = helper.newFn('坐标XY函数', 'fn_transXY', 'return {x:y,y:w-x};', 'p', 'w', 'l', 'x', 'y');\\nlet fn_transZ = helper.newFn('坐标Z函数', 'fn_transZ', 'return t+z;', 'p', 't', 'z');\\n//文件头尾\\nlet fn_fileBegin = helper.newFn('文件头', 'fn_fileBegin', 'return \\\"\\\";', 'obj');\\nlet fn_fileEnd = helper.newFn('文件尾', 'fn_fileEnd', 'return \\\"\\\";', 'obj');\\nlet fn_wrpBegin = helper.newFn('工位头', 'fn_wrpBegin', 'return \\\"\\\";', 'obj');\\nlet fn_wrpEnd = helper.newFn('工位尾', 'fn_wrpEnd', 'return \\\"\\\";', 'obj');\\n\\nlet safeV = helper.getArg('safeV', 30); //水平安全距离\\nlet safeH = helper.getArg('safeH', 40); //垂直孔安全距离\\nlet speed_space = helper.getArg('speed_space', 12000); //空程速度\\nlet speed_shole = helper.getArg('speed_shole', 3500); //水平孔排钻速度\\nlet speed_hole = helper.getArg('speed_hole', 3500); //垂直孔排钻速度\\nlet speed_model = helper.getArg('speed_model', 6000); //造型速度\\nlet speed_cut = helper.getArg('speed_cut', 5000); //异形铣边速度\\n\\n//排钻、造型刀库\\nlet knifeList = [];\\nlet strfn_knifes = helper.getArg('fn_knifes', 'return [];');\\ntry\\n{\\n let fn_getKnifes = new Function(strfn_knifes);\\n knifeList = fn_getKnifes();\\n}\\ncatch\\n{\\n console.log('创建刀库失败!请检查刀库函数');\\n return;\\n}\\n\\n//铣边刀半径 函数\\nlet strcutKnifeFn = helper.getArg('fn_cutKnife', 'return t > 18 ? 4 : 3;');\\nlet fn_getCutKnife;\\ntry\\n{\\n fn_getCutKnife = new Function('t', strcutKnifeFn);\\n}\\ncatch\\n{\\n console.log('创建铣边刀函数失败!' + strcutKnifeFn);\\n return;\\n}\\n\\nlet block = null; //当前加工板\\nlet isFaceB = false; //当前加工面\\nlet binfo = null; //板信息\\nlet withSideHole = false; //当前加工面是否包含侧孔\\nlet hasCuteBorder = false; //是否异形铣边\\nlet theKnife; //当前工作刀\\nlet hasDo = false; //是否有加工项目\\n\\nlet cache = [];\\nlet text = '';\\nlet blockNo = '';\\n\\nlet placeStation = 1; //加工工位\\n\\n//处理板件\\nfor (let b of order.BlockList)\\n{\\n if (b.IsAdditionalBlock) continue; //自增小板\\n if(helper.isEmptyBlock(b) && !b.IsUnRegular) continue; //无加工项目\\n\\n block = b;\\n hasCuteBorder = false;\\n\\n blockNo = helper.exec(fn_blockNo, block);\\n\\n //2、3模式下正反面是否处理\\n let doFlag = helper.getDoFlag(block, roleNum);\\n\\n if (doFlag.faceA || cutBorder) //铣边 安排在正面\\n {\\n isFaceB = false;\\n withSideHole = doFlag.faceSideWithA;\\n doFace();\\n hasCuteBorder = true;\\n }\\n if (doFlag.faceB)\\n {\\n isFaceB = true;\\n withSideHole = !doFlag.faceSideWithA;\\n doFace();\\n }\\n}\\n\\n\\nfunction doFace() /*处理面*************************************************************************************/\\n{\\n //清空\\n hasDo = false;\\n cache = [];\\n\\n binfo = helper.getBlockInfo(block, isPlaceByLength, isFaceB, isTurnByWidth);\\n\\n placeStation = 1;\\n\\n let obj = { helper: helper, pt: this, b: block, f: isFaceB, p: placeStation, binfo: binfo };\\n\\n let fileBegin = helper.exec(fn_fileBegin, obj);\\n let fileEnd = helper.exec(fn_fileEnd, obj);\\n let wrpBegin = helper.exec(fn_wrpBegin, obj);\\n let wrpEnd = helper.exec(fn_wrpEnd, obj);\\n\\n //文件头\\n if (fileBegin) cache.push(fileBegin);\\n //工位1头\\n if (wrpBegin) cache.push(wrpBegin); \\n \\n //工位1 铣边\\n doBorders();\\n\\n //工位1 造型\\n doModels();\\n\\n //工位1 正面孔\\n doHoles();\\n\\n //工位1 侧孔\\n doHoles_z();\\n doHoles_y();\\n doHoles_s();\\n doHoles_x();\\n\\n //停当前刀\\n changeKnife(null);\\n\\n //工位1尾\\n if (wrpEnd) cache.push(wrpEnd );\\n\\n if (has2WorkPanel) //工位2\\n {\\n placeStation = 2;\\n let obj = { helper: helper, pt: this, b: block, f: isFaceB, p: placeStation, binfo: binfo };\\n let wrpBegin2 = helper.exec(fn_wrpBegin, obj);\\n let wrpEnd2 = helper.exec(fn_wrpEnd, obj);\\n \\n //工位2头\\n if (wrpBegin2) cache.push(wrpBegin2);\\n\\n //工位2 铣边\\n doBorders();\\n\\n //工位2 造型\\n doModels();\\n\\n //工位2 正面孔\\n doHoles();\\n\\n //工位2 侧孔\\n doHoles_z();\\n doHoles_y();\\n doHoles_s();\\n doHoles_x();\\n\\n //停当前刀\\n changeKnife(null);\\n\\n //工位2尾\\n if (wrpEnd2) cache.push(wrpEnd2);\\n }\\n\\n //文件尾\\n if (fileEnd) cache.push(fileEnd);\\n\\n if (!hasDo) return;\\n let fileName = helper.format(isFaceB ? fileNameB : fileNameA, blockNo);\\n let fileText = cache.join('\\\\r\\\\n');\\n isGb2312 ? helper.pushFile_gb2312(fileName, fileText) : helper.pushFile(fileName, fileText);\\n}\\n\\nfunction doBorders() /*异形铣边*********************************************************************************/\\n{\\n\\tif(!cutBorder) return;\\n if (isFaceB) return;\\n\\tif(!block.IsUnRegular) return;\\n if (hasCuteBorder) return;\\n\\n let kr = fn_getCutKnife(block.Thickness);\\n let knife = getKnife_cut(kr);\\n if (knife == null)\\n {\\n console.log('未发现铣边的刀');\\n return;\\n }\\n let lines = helper.getCutBorders(block);\\n\\n let hasG42 = false;\\n for (let line of lines)\\n {\\n if (line.length < 2) continue;\\n\\n let mDepth = 0; //铣边深度\\n //换刀\\n changeKnife(knife);\\n\\n //铣边起点\\n let p_s = line[0];\\n let np_s = helper.getXY(block, isPlaceByLength, isFaceB, isTurnByWidth, p_s.PointX + block.BorderLeft, p_s.PointY + block.BorderUnder);\\n let rp_s = getPos(np_s.x, np_s.y);\\n let strG42 = '';\\n if(hasG42 == false) \\n {\\n strG42 = 'G42';\\n hasG42 = true;\\n }\\n text = `G00 ${strG42} X${getStr(rp_s.x)} Y${getStr(rp_s.y)} Z${getStr(safeH)} F${getStr(speed_space)}`;\\n cache.push(text);\\n\\n //下刀\\n text = `G01 Z${getStr(mDepth)} F${getStr(speed_cut)}`;\\n cache.push(text);\\n\\n //铣边中间点\\n for (let i = 1; i < line.length; i++)\\n {\\n let p0 = line[i - 1]; //前一点\\n let p1 = line[i];\\n\\n let np1 = helper.getXY(block, isPlaceByLength, isFaceB, isTurnByWidth, p1.PointX + block.BorderLeft, p1.PointY + block.BorderUnder);\\n let rp1 = getPos(np1.x, np1.y);\\n\\n if (p0.Curve == 0) //直线\\n {\\n text = `G01 X${getStr(rp1.x)} Y${getStr(rp1.y)} F${getStr(speed_cut)}`;\\n }\\n else //圆弧\\n {\\n //求圆心\\n let isG2 = p0.Curve < 0;\\n text = `${isG2 ? 'G2' : 'G3'} X${getStr(rp1.x)} Y${getStr(rp1.y)} R${getStr(Math.abs(p0.Radius))} F${getStr(speed_cut)}`;\\n }\\n cache.push(text);\\n }\\n\\n //抬刀\\n text = `G1 Z${getStr(safeH)} F${getStr(speed_cut)}`;\\n cache.push(text);\\n hasDo = true;\\n }\\n if(hasG42)\\n {\\n text = `G1 G40 Z${getStr(safeH + 1)} F${getStr(speed_cut)}`;\\n cache.push(text);\\n }\\t\\t\\t\\n}\\n\\nfunction doModels() /*造型************************************************************************************/\\n{\\n let models = helper.getModels(block, isFaceB);\\n if (models.length == 0) return;\\n for (let model of models)\\n {\\n if (model.PointList.length == 0) continue;\\n //打穿的不加工\\n if (doModel_through == false && helper.isThroughModel(block, model)) continue;\\n //弧形不加工\\n if (doModel_arc == false && helper.isArcModel(model)) continue;\\n\\n let knife = getKnife_cut(model.KnifeRadius);\\n if (knife == null)\\n {\\n console.log('未发现造型刀,半径' + model.KnifeRadius);\\n continue;\\n }\\n\\n changeKnife(knife);\\n\\n //定位\\n let mp0 = model.PointList[0];\\n let xp0 = helper.getXY(block, isPlaceByLength, isFaceB, isTurnByWidth, mp0.PointX, mp0.PointY);\\n let rp0 = getPos(xp0.x, xp0.y);\\n text = `G0 X${getStr(rp0.x)} Y${getStr(rp0.y)} Z${getStr(safeH)} F${getStr(speed_space)}`;\\n cache.push(text);\\n\\n //下刀\\n let z = block.Thickness - model.Depth;\\n text = `G1 Z${getStr(z)} F${getStr(speed_model)}`;\\n cache.push(text);\\n\\n //造型中间点\\n for (let i = 1; i < model.PointList.length; i++)\\n {\\n let mp1 = model.PointList[i - 1];\\n let mp2 = model.PointList[i];\\n let xp_2 = helper.getXY(block, isPlaceByLength, isFaceB, isTurnByWidth, mp2.PointX, mp2.PointY);\\n let rp_2 = getPos(xp_2.x, xp_2.y);\\n\\n if (mp1.Curve == 0) //直线\\n {\\n text = `G1 X${getStr(rp_2.x)} Y${getStr(rp_2.y)} F${getStr(speed_model)}`;\\n cache.push(text);\\n }\\n else //圆弧\\n {\\n let isG2 = (mp1.Curve < 0);\\n if (isFaceB) isG2 = !isG2;\\n text = `${isG2 ? 'G2' : 'G3'} X${getStr(rp_2.x)} Y${getStr(rp_2.y)} R${getStr(Math.abs(mp1.Radius))} F${getStr(speed_model)}`;\\n cache.push(text);\\n }\\n }\\n\\n //抬刀\\n text = `G1 Z${getStr(safeH)} F${getStr(speed_model)}`;\\n cache.push(text);\\n\\n hasDo = true;\\n }\\n}\\n\\nfunction doHoles() /*正面孔************************************************************************************/\\n{\\n let holes_F = helper.getHoles(block, isFaceB);\\n if (holes_F.length == 0) return;\\n\\n let holes = [];\\n for (let hole of holes_F)\\n {\\n if (unDo_hole_depth(hole)) continue;\\n if (undo_hole_radius(hole)) continue;\\n let p = helper.getXY(block, isPlaceByLength, isFaceB, isTurnByWidth, hole.PointX, hole.PointY);\\n holes.push({ x: p.x, y: p.y, z: p.z, r: hole.Radius, d: hole.Depth });\\n }\\n\\n let lx = 0, ly = 0;\\n while (holes.length > 0)\\n {\\n let hole = getNextHole(holes, lx, ly);\\n lx = hole.x;\\n ly = hole.y;\\n let hasGroup = getGroupHole(holes, hole);\\n\\n let knife = hasGroup.knife;\\n if (knife == null) continue; //无匹配刀具,忽略孔\\n\\n hole = hasGroup.hole; //替换成组合孔的 左边孔 或下边孔\\n\\n //换刀\\n changeKnife(knife);\\n\\n let p1 = getPos(hole.x, hole.y);\\n\\n let z = block.Thickness - hole.d;\\n\\n text = `G0 X${getStr(p1.x)} Y${getStr(p1.y)} Z${getStr(safeH)} F${getStr(speed_space)}`; //首次 安全高度\\n cache.push(text);\\n\\n text = `G1 Z${getStr(z)} F${getStr(speed_hole)}`; //打孔\\n cache.push(text);\\n\\n text = `G1 Z${getStr(safeH)} F${getStr(speed_hole)}`; //退刀 安全高度\\n cache.push(text);\\n\\n hasDo = true;\\n }\\n}\\n\\nfunction doHoles_z() /*侧孔 左*********************************************************************************/\\n{\\n if (!withSideHole) return;\\n let holes_s = withSideHole ? helper.getSideHoles_Left(block, isPlaceByLength, isFaceB, isTurnByWidth) : [];\\n if (holes_s.length == 0) return;\\n let holes = [];\\n for (let hole of holes_s)\\n {\\n if (undo_sidehole_depth(hole)) continue;\\n let p = helper.getXY(block, isPlaceByLength, isFaceB, isTurnByWidth, hole.PointX, hole.PointY);\\n holes.push({ x: p.x, y: p.y, z: hole.PointZ, r: hole.Radius, d: hole.Depth });\\n }\\n\\n //按下到到上排序 y+\\n holes = holes.sort((a, b) => a.y - b.y);\\n\\n text = `G00 Z${getStr(safeH)} F${getStr(speed_space)}`; //安全高度\\n cache.push(text);\\n\\n for (let i = 0; i < holes.length;)\\n {\\n let h1 = holes[i];\\n let h2 = i + 1 < holes.length ? holes[i + 1] : null;\\n let r1 = h1.r;\\n let r2 = 0; //默认单刀\\n\\n //如果两孔位置间距32,且深度一样,则考虑组合刀\\n if (h2 && Math.abs(h1.d - h2.d) < 0.01 && Math.abs(h1.z - h2.z) < 0.01 && Math.abs(h2.y - h1.y - 32) < 0.01) r2 = h2.r;\\n\\n let knife = getKnife_sidehole('左', r1, r2);\\n if (knife == null) //找不到刀,不处理\\n {\\n i++;\\n continue;\\n }\\n changeKnife(knife);\\n\\n let x1 = 0 - safeV;\\n let y1 = h1.y;\\n let x2 = h1.x + h1.d;\\n let y2 = h1.y;\\n\\n let p1 = getPos(x1, y1);\\n let p2 = getPos(x2, y2);\\n\\n let z = getZ(h1.z);\\n\\n text = `G0 X${getStr(p1.x)} Y${getStr(p1.y)} F${getStr(speed_space)}`; //定位\\n cache.push(text);\\n\\n text = `G0 Z${getStr(z)} F${getStr(speed_space)}`; //下刀\\n\\n cache.push(text);\\n text = `G1 X${getStr(p2.x)} Y${getStr(p2.y)} F${getStr(speed_shole)}`; //打孔\\n\\n cache.push(text);\\n text = `G1 X${getStr(p1.x)} Y${getStr(p1.y)} F${getStr(speed_shole)}`; //退刀\\n cache.push(text);\\n\\n hasDo = true;\\n\\n i = i + (knife.r2 > 0 ? 2 : 1); //组合刀 要多跳一孔\\n }\\n\\n text = `G0 Z${getStr(safeH)} F${getStr(speed_space)}`; //回到安全高度\\n cache.push(text);\\n}\\n\\nfunction doHoles_y() /*侧孔 右*********************************************************************************/\\n{\\n if (!withSideHole) return;\\n let holes_s = withSideHole ? helper.getSideHoles_Right(block, isPlaceByLength, isFaceB, isTurnByWidth) : [];\\n if (holes_s.length == 0) return;\\n let holes = [];\\n for (let hole of holes_s)\\n {\\n if (undo_sidehole_depth(hole)) continue;\\n let p = helper.getXY(block, isPlaceByLength, isFaceB, isTurnByWidth, hole.PointX, hole.PointY);\\n holes.push({ x: p.x, y: p.y, z: hole.PointZ, r: hole.Radius, d: hole.Depth });\\n }\\n\\n //按下到到上排序 y+\\n holes = holes.sort((a, b) => a.y - b.y);\\n\\n text = `G0 Z${getStr(safeH)} F${getStr(speed_space)}`; //安全高度\\n cache.push(text);\\n\\n for (let i = 0; i < holes.length;)\\n {\\n let h1 = holes[i];\\n let h2 = i + 1 < holes.length ? holes[i + 1] : null;\\n let r1 = h1.r;\\n let r2 = 0;\\n //如果 两孔位置相差 32 且深度一样 ,则考虑组合刀\\n if (h2 && Math.abs(h1.d - h2.d) < 0.01 && Math.abs(h1.z - h2.z) < 0.01 && Math.abs(h2.y - h1.y - 32) < 0.01) r2 = h2.r;\\n let knife = getKnife_sidehole('右', r1, r2);\\n if (knife == null) //找不到刀,不处理\\n {\\n i++;\\n continue;\\n }\\n changeKnife(knife);\\n let x1 = binfo.width + safeV;\\n let y1 = h1.y;\\n let x2 = h1.x - h1.d;\\n let y2 = h1.y;\\n let p1 = getPos(x1, y1);\\n let p2 = getPos(x2, y2);\\n let z = getZ(h1.z);\\n text = `G0 X${getStr(p1.x)} Y${getStr(p1.y)} F${getStr(speed_space)}`; //定位\\n cache.push(text);\\n text = `G0 Z${getStr(z)} F${getStr(speed_space)}`; //下刀\\n cache.push(text);\\n text = `G1 X${getStr(p2.x)} Y${getStr(p2.y)} F${getStr(speed_shole)}`; //打孔\\n cache.push(text);\\n text = `G1 X${getStr(p1.x)} Y${getStr(p1.y)} F${getStr(speed_shole)}`; //退刀\\n cache.push(text);\\n hasDo = true;\\n i = i + (knife.r2 > 0 ? 2 : 1); //组合刀 要多跳一孔\\n }\\n\\n //回到安全高度\\n text = `G0 Z${getStr(safeH)} F${getStr(speed_space)}`;\\n cache.push(text);\\n}\\n\\nfunction doHoles_s() /*侧孔 上**********************************************************************************/\\n{\\n if (!withSideHole) return;\\n let holes_s = withSideHole ? helper.getSideHoles_Upper(block, isPlaceByLength, isFaceB, isTurnByWidth) : [];\\n if (holes_s.length == 0) return;\\n\\n let holes = [];\\n for (let h of holes_s)\\n {\\n if (undo_sidehole_depth(h)) continue;\\n let p = helper.getXY(block, isPlaceByLength, isFaceB, isTurnByWidth, h.PointX, h.PointY);\\n holes.push({ x: p.x, y: p.y, z: h.PointZ, r: h.Radius, d: h.Depth });\\n }\\n\\n //按左到到右排序 y+\\n holes = holes.sort((a, b) => a.x - b.x);\\n\\n text = `G0 Z${getStr(safeH)} F${getStr(speed_space)}`; //安全高度\\n cache.push(text);\\n\\n for (let i = 0; i < holes.length;)\\n {\\n let h1 = holes[i];\\n let h2 = i + 1 < holes.length ? holes[i + 1] : null;\\n let r1 = h1.r;\\n let r2 = 0;\\n //如果 两孔位置相差 32 且深度一样 ,则考虑组合刀\\n if (h2 && Math.abs(h1.d - h2.d) < 0.01 && Math.abs(h1.z - h2.z) < 0.01 && Math.abs(h2.x - h1.x - 32) < 0.01)\\n {\\n r2 = h2.r;\\n }\\n let knife = getKnife_sidehole('上', r1, r2);\\n if (knife == null) //找不到刀,不处理\\n {\\n i++;\\n continue;\\n }\\n changeKnife(knife);\\n let x1 = h1.x;\\n let y1 = binfo.length + safeV;\\n let x2 = h1.x;\\n let y2 = h1.y - h1.d;\\n let p1 = getPos(x1, y1);\\n let p2 = getPos(x2, y2);\\n let z = getZ(h1.z);\\n text = `G0 X${getStr(p1.x)} Y${getStr(p1.y)} F${getStr(speed_space)}`; //定位\\n cache.push(text);\\n text = `G0 Z${getStr(z)} F${getStr(speed_space)}`; //下刀\\n cache.push(text);\\n text = `G1 X${getStr(p2.x)} Y${getStr(p2.y)} F${getStr(speed_shole)}`; //打孔\\n cache.push(text);\\n text = `G1 X${getStr(p1.x)} Y${getStr(p1.y)} F${getStr(speed_shole)}`; //退刀\\n cache.push(text);\\n hasDo = true;\\n i = i + (knife.r2 > 0 ? 2 : 1); //组合刀 要多跳一孔\\n }\\n\\n text = `G0 Z${getStr(safeH)} F${getStr(speed_space)}`; //回到安全高度\\n cache.push(text);\\n}\\n\\nfunction doHoles_x() /*侧孔 下********************************************************************************/\\n{\\n if (!withSideHole) return;\\n let holes_x = withSideHole ? helper.getSideHoles_Under(block, isPlaceByLength, isFaceB, isTurnByWidth) : [];\\n if (holes_x.length == 0) return;\\n let holes = [];\\n for (let h of holes_x)\\n {\\n if (undo_sidehole_depth(h)) continue;\\n let p = helper.getXY(block, isPlaceByLength, isFaceB, isTurnByWidth, h.PointX, h.PointY);\\n holes.push({ x: p.x, y: p.y, z: h.PointZ, r: h.Radius, d: h.Depth });\\n }\\n\\n //按左到到右排序 y+\\n holes = holes.sort((a, b) => a.x - b.x);\\n\\n text = `G0 Z${getStr(safeH)} F${getStr(speed_space)}`; //安全高度\\n cache.push(text);\\n\\n for (let i = 0; i < holes.length;)\\n {\\n let h1 = holes[i];\\n let h2 = i + 1 < holes.length ? holes[i + 1] : null;\\n let r1 = h1.r;\\n let r2 = 0;\\n //如果 两孔位置相差 32 且深度一样 ,则考虑组合刀\\n if (h2 && Math.abs(h1.d - h2.d) < 0.01 && Math.abs(h1.z - h2.z) < 0.01 && Math.abs(h2.x - h1.x - 32) < 0.01) r2 = h2.r;\\n\\n let knife = getKnife_sidehole('下', r1, r2);\\n if (knife == null) //找不到刀,不处理\\n {\\n i++;\\n continue;\\n }\\n changeKnife(knife);\\n let x1 = h1.x;\\n let y1 = -safeV;\\n let x2 = h1.x;\\n let y2 = h1.y + h1.d;\\n let p1 = getPos(x1, y1);\\n let p2 = getPos(x2, y2);\\n let z = getZ(h1.z);\\n text = `G0 X${getStr(p1.x)} Y${getStr(p1.y)} F${getStr(speed_space)}`; //定位\\n cache.push(text);\\n text = `G0 Z${getStr(z)} F${getStr(speed_space)}`; //下刀\\n cache.push(text);\\n text = `G1 X${getStr(p2.x)} Y${getStr(p2.y)} F${getStr(speed_shole)}`; //打孔\\n cache.push(text);\\n text = `G1 X${getStr(p1.x)} Y${getStr(p1.y)} F${getStr(speed_shole)}`; //退刀\\n cache.push(text);\\n hasDo = true;\\n i = i + (knife.r2 > 0 ? 2 : 1); //组合刀 要多跳一孔\\n }\\n text = `G0 Z${getStr(safeH)} F${getStr(speed_space)}`; //回到安全高度\\n cache.push(text);\\n}\\n\\nfunction getNextHole(holes, x, y) /*获得最近孔*********************************************************************/\\n{\\n if (holes.length == 0) return null;\\n let nextHole;\\n let nextIndex = 0;\\n let mindis = Number.MAX_VALUE;\\n for (let i = 0; i < holes.length; i++)\\n {\\n let h = holes[i];\\n let d = (h.x - x) ** 2 + (h.y - y) ** 2;\\n if (d < mindis)\\n {\\n mindis = d;\\n nextHole = h;\\n nextIndex = i;\\n }\\n }\\n //移除 hole\\n holes.splice(nextIndex, 1);\\n return nextHole;\\n}\\n\\nfunction getGroupHole(holes, thehole) /*找组合孔 ****************************************************************/\\n{\\n let x = thehole.x;\\n let y = thehole.y;\\n let d = thehole.d;\\n\\n let closeHole = null;\\n let pos;\\n let knife;\\n\\n //左\\n for (let i = 0; i < holes.length; i++)\\n {\\n let h = holes[i];\\n if (equal(x - 32, h.x) && equal(y, h.y) && equal(d, h.d))\\n {\\n closeHole = h;\\n pos = i;\\n\\n //找刀\\n knife = getKnife_hole('左右', closeHole.r, thehole.r);\\n if (knife) //有刀\\n {\\n holes.splice(pos, 1); //移除 关联hole\\n return { knife: knife, hole: closeHole }; //以左边孔为准\\n }\\n break;\\n }\\n }\\n\\n //右\\n closeHole = null;\\n for (let i = 0; i < holes.length; i++)\\n {\\n let h = holes[i];\\n if (equal(x + 32, h.x) && equal(y, h.y) && equal(d, h.d))\\n {\\n closeHole = h;\\n pos = i;\\n\\n //找刀\\n knife = getKnife_hole('左右', thehole.r, closeHole.r);\\n if (knife) //有刀\\n {\\n holes.splice(pos, 1); //移除 关联hole\\n return { knife: knife, hole: thehole }; //以左边孔为准\\n }\\n break;\\n }\\n }\\n\\n //上\\n closeHole = null;\\n for (let i = 0; i < holes.length; i++)\\n {\\n let h = holes[i];\\n if (equal(x, h.x) && equal(y + 32, h.y) && equal(d, h.d))\\n {\\n closeHole = h;\\n pos = i;\\n\\n //找刀\\n knife = getKnife_hole('上下', thehole.r, closeHole.r);\\n if (knife) //有刀\\n {\\n holes.splice(pos, 1); //移除 关联hole\\n return { knife: knife, hole: thehole }; //以下边孔为准\\n }\\n break;\\n }\\n }\\n\\n //下\\n closeHole = null;\\n for (let i = 0; i < holes.length; i++)\\n {\\n let h = holes[i];\\n if (equal(x, h.x) && equal(y - 32, h.y) && equal(thehole.d, h.d))\\n {\\n closeHole = h;\\n pos = i;\\n\\n //找刀\\n knife = getKnife_hole('上下', closeHole.r, thehole.r);\\n if (knife) //有刀\\n {\\n holes.splice(pos, 1); //移除 关联hole\\n return { knife: knife, hole: closeHole }; //以下边孔为准\\n }\\n break;\\n }\\n }\\n\\n //没找到组合孔\\n knife = getKnife_hole('单', thehole.r, 0);\\n return { knife: knife, hole: thehole };\\n}\\n\\nfunction getKnife_cut(r) /*获得铣刀 按半径*************************************************************************/\\n{\\n return knifeList.find(t => t.t == '铣' && equal(t.r1, r));\\n}\\n\\nfunction getKnife_hole(type, r1, r2) /*面孔刀********************************************************************/\\n{\\n return knifeList.find(t => t.t == type && equal(t.r1, r1) && equal(t.r2, r2));\\n}\\n\\nfunction getKnife_sidehole(type, r1, r2) /*侧孔刀****************************************************************/\\n{\\n let ks = knifeList.filter(t => t.t == type);\\n\\n let k = ks.find(t => equal(t.r1, r1) && equal(t.r2, r2));\\n if (k) return k; //先找组合,后再单刀\\n return ks.find(t => equal(t.r1, r1)); //单刀\\n}\\n\\nfunction changeKnife(knife) /*换刀****************************************************************************/\\n{\\n if (knife != theKnife)\\n {\\n if (theKnife != null)\\n {\\n if (theKnife.ec) cache.push(theKnife.ec); //停刀\\n if ((theKnife.z != (knife ? knife.z : -9999999)) && theKnife.zec) cache.push(theKnife.zec); //停轴\\n }\\n\\n if (knife)\\n {\\n if ((knife.z != (theKnife ? theKnife.z : -9999999)) && knife.zsc) cache.push(knife.zsc); //启动轴\\n if (knife.sc) cache.push(knife.sc); //启动刀\\n }\\n theKnife = knife;\\n }\\n}\\n\\nfunction undo_hole_radius(hole) /*忽略面孔, 半径过滤****************************************************************/\\n{\\n if (!unDoList_holeRidus)\\n {\\n unDoList_holeRidus = [];\\n let strDisPoseHoleRidus = helper.getArg('DisposeHoleRadius', '');\\n let strs = strDisPoseHoleRidus.split(',');\\n for (let s of strs)\\n {\\n try\\n {\\n let r = Number.parseFloat(s);\\n unDoList_holeRidus.push(r);\\n }\\n catch\\n {\\n\\n }\\n }\\n }\\n\\n for (let r of unDoList_holeRidus)\\n {\\n if (Math.abs(hole.Radius - r) < 0.01) return true;\\n }\\n return false;\\n}\\n\\nfunction unDo_hole_depth(hole) /*忽略面孔,深度********************************************************************/\\n{\\n if (!unDoRange_holeDepth)\\n {\\n //面孔深度\\n let holeDepth_min = helper.getArg('holeDepth_min', 0.1);\\n let holeDepth_max = helper.getArg('holeDepth_max', 100);\\n unDoRange_holeDepth = { min: holeDepth_min, max: holeDepth_max };\\n }\\n if (hole.Depth < unDoRange_holeDepth.min) return true;\\n if (hole.Depth > unDoRange_holeDepth.max) return true;\\n if (hole.Depth > block.Thickness) return true;\\n return false;\\n}\\n\\nfunction undo_sidehole_depth(hole) /*忽略侧孔,深度****************************************************************/\\n{\\n if (!unDoRange_sideHoleDepth)\\n {\\n //侧孔深度 (深度小于SideHole值)\\n let sideHoleDepth_min = helper.getArg('sideHoleDepth_min', 0);\\n let sideHoleDepth_max = helper.getArg('sideHoleDepth_max', 100);\\n unDoRange_sideHoleDepth = { min: sideHoleDepth_min, max: sideHoleDepth_max };\\n }\\n if (hole.Depth < unDoRange_sideHoleDepth.min) return true;\\n if (hole.Depth > unDoRange_sideHoleDepth.max) return true;\\n return false;\\n}\\n\\nfunction getPos(x, y, hasTurnXY = true) /*坐标系转化********************************************************************************/\\n{\\n let x1 = x;\\n let y1 = y;\\n if (hasTurnXY == false)\\n {\\n let lp = helper.getXY(block, isPlaceByLength, isFaceB, isTurnByWidth, x, y);\\n x1 = lp.x;\\n y1 = lp.y;\\n }\\n return helper.exec(fn_transXY, placeStation, binfo.width, binfo.length, x1, y1);\\n}\\n\\nfunction getZ(z) /*获得z**************************************************************************************/\\n{\\n let nz = z;\\n if (isFaceB) nz = -(block.Thickness + z);\\n return helper.exec(fn_transZ, placeStation, block.Thickness, nz);\\n}\\n\\nfunction getStr(v) /*格式化数字**********************************************************************************/\\n{\\n return helper.formatNumber(v, bitNum);\\n}\\n\\nfunction equal(a, b) /*判断a b是否相等*****************************************************************************/\\n{\\n return Math.abs(a - b) < 0.01;\\n}\\n\\nfunction log(a) /*浏览器控制台调试跟踪********************************************************************************/\\n{\\n console.log(a);\\n}\\n\\n//Gcode PTP函数完成\",\"Remark\":\"\",\"cncConfig\":\"{\\\"roleNum\\\":1,\\\"fileNameA\\\":\\\"{0}5.cnc\\\",\\\"fileNameB\\\":\\\"{0}6.cnc\\\",\\\"gb2312\\\":true,\\\"bitNum\\\":2,\\\"isPlaceByLength\\\":false,\\\"isTurnByWidth\\\":false,\\\"cutBorder\\\":true,\\\"doModel_through\\\":false,\\\"doModel_arc\\\":false,\\\"sideHoleDepth_min\\\":12,\\\"sideHoleDepth_max\\\":40,\\\"holeDepth_min\\\":0.2,\\\"holeDepth_max\\\":40,\\\"DisposeHoleRadius\\\":\\\"\\\",\\\"has2WorkPanel\\\":true,\\\"fn_transXY\\\":\\\"return p==1 ? {x:y,y:w-x} : {x:y-l,y:w-x};\\\\n\\\",\\\"fn_transZ\\\":\\\"return t+z;\\\",\\\"fn_fileBegin\\\":\\\"let block = obj.b;\\\\nlet strs = [];\\\\n\\\\nstrs.push(`;${block.BoxName} ${block.BlockName} ${getStr(block.Length)}*${getStr(block.Width)}*${getStr(block.Thickness)}`);\\\\nstrs.push('G600');\\\\nstrs.push('G90');\\\\nstrs.push('G80');\\\\nstrs.push('T0');\\\\nstrs.push('M82');\\\\nstrs.push('M52');\\\\nstrs.push('G40');\\\\nstrs.push('(UAO,1)');\\\\nstrs.push('\\\\\\\"START\\\\\\\"');\\\\nstrs.push('G300 A1 B5');\\\\nstrs.push('G79 Z0.');\\\\nstrs.push('(UAO,@ORG)');\\\\nstrs.push('#(GTO,B,@NEXTABL=1)');\\\\n\\\\nreturn strs.join('\\\\\\\\n');\\\\n\\\\n/*格式化数字字符串*/\\\\nfunction getStr(num, bit = 2) //需定义acc默认精度位数\\\\n{\\\\n return num.toFixed(bit).replace(/[.]?0+$/,\\\\\\\"\\\\\\\");\\\\n}\\\",\\\"fn_fileEnd\\\":\\\"let str = `\\\\nM15\\\\nT0\\\\nM52\\\\nM48\\\\nM5\\\\nh0\\\\n(UAO,0)\\\\nM83\\\\nG79 Z0.\\\\nG79 X2000. Y-50.\\\\nM30\\\\n`;\\\\nreturn str;\\\",\\\"fn_wrpBegin\\\":\\\"let wkp = obj.p;\\\\nlet str = '';\\\\n\\\\nif(wkp == 1)\\\\n{\\\\n str = `\\\\n\\\\\\\"A\\\\\\\"\\\\n(UAO,1)\\\\n `;\\\\n}\\\\n\\\\nif(wkp == 2)\\\\n{\\\\n str = `\\\\n\\\\\\\"B\\\\\\\"\\\\n(UAO,5)\\\\n `;\\\\n}\\\\n\\\\nreturn str;\\\",\\\"fn_wrpEnd\\\":\\\"let wkp = obj.p;\\\\nlet str = '';\\\\n\\\\nif(wkp == 1)\\\\n{\\\\n str = `\\\\n#(GTO,START,@NEXTABL=1)\\\\n(GTO,END)\\\\n `;\\\\n}\\\\n\\\\nif(wkp == 2)\\\\n{\\\\n str = `\\\\n(GTO,START,@NEXTABL=0)\\\\n\\\\\\\"END\\\\\\\"\\\\n `;\\\\n}\\\\n\\\\nreturn str;\\\",\\\"safeV\\\":30,\\\"safeH\\\":68,\\\"speed_space\\\":12000,\\\"speed_shole\\\":3500,\\\"speed_hole\\\":3500,\\\"speed_model\\\":6000,\\\"speed_cut\\\":5000,\\\"fn_knifes\\\":\\\"\\\\tlet knifes = [];\\\\n\\\\n\\\\taddKnife('单',0,5,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T11\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,4.75,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T12\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,4.75,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T13\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,4.75,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T14\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,4.75,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T15\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,10,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T16\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,4.75,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T17\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,4.75,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T18\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,7.5,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T19\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,2.5,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T20\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,2.5,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T21\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,17.5,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T22\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,2.5,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T23\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('单',0,2.5,0,'M13 S15000\\\\\\\\r\\\\\\\\nM52\\\\\\\\r\\\\\\\\nM49','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T24\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG17\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n\\\\taddKnife('下',1,4,0,'','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T37\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG19\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n addKnife('上',1,4,0,'','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T38\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG19\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n addKnife('左',2,4,0,'','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T32\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG18\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n addKnife('右',2,4,0,'','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T31\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG18\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n addKnife('左',2,4,0,'','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T34\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG18\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n addKnife('右',2,4,0,'','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM63 T33\\\\\\\\r\\\\\\\\nG0 Z68.00\\\\\\\\r\\\\\\\\nG27\\\\\\\\r\\\\\\\\nG18\\\\\\\\r\\\\\\\\nG80','G80\\\\\\\\r\\\\\\\\nG0 Z68.00','');\\\\n addKnife('铣',3,6,0,'','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM15\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nG79 Z0.\\\\\\\\r\\\\\\\\nM6 T5\\\\\\\\r\\\\\\\\nM3 S12000\\\\\\\\r\\\\\\\\nM53','G0 G40 Z48.00\\\\\\\\r\\\\\\\\nM5\\\\\\\\r\\\\\\\\nM52',''); \\\\n addKnife('铣',4,4.75,0,'','G80\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nM15\\\\\\\\r\\\\\\\\nT0\\\\\\\\r\\\\\\\\nG79 Z0.\\\\\\\\r\\\\\\\\nM6 T1\\\\\\\\r\\\\\\\\nM3 S12000\\\\\\\\r\\\\\\\\nM53','G0 G40 Z48.00\\\\\\\\r\\\\\\\\nM5\\\\\\\\r\\\\\\\\nM52',''); \\\\n\\\\treturn knifes;\\\\n\\\\n\\\\tfunction addKnife(type,z,r1,r2,zStart,kStart,kEnd,zEnd)\\\\n\\\\t{\\\\n //类型,轴号,半径1,半径2,轴启动,刀启动,刀停止,轴停止\\\\n let knife = {t:type,z:z,r1:r1,r2:r2,zsc:zStart,sc:kStart,ec:kEnd,zec:zEnd};\\\\n knifes.push(knife);\\\\n return knife;\\\\n\\\\t}\\\",\\\"fn_cutKnife\\\":\\\"return 6;\\\",\\\"fn_blockNo\\\":\\\"return (''+b.BlockNo).substr(-7);\\\"}\"}", - "Remark": "品牌:通用 备注:2022.03.09" - } -] \ No newline at end of file diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/开料机台.json b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/开料机台.json deleted file mode 100644 index 975cbeb0f..000000000 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/util/开料机台.json +++ /dev/null @@ -1,1000 +0,0 @@ -{ - "id": "2", - "name": "开料机台111", - "createTime":"2021-03-25 08:52:12", - "creator": 1, - "updateTime":"2021-03-25 08:52:12", - "updater": 1, - "organId": 1, - "settings": [ - { - "Type": 1, - "Setting": { - "UseWorkPanelSize": true, - "BoardWidth": 1220, - "BoardLength": 2750, - "BoardBorder": 3, - "BoardBorder_B": 2, - "CutBorderOff1": 0, - "CutBorderOff2": 0, - "KnifeDia": 6, - "CutGap": 1, - "OriginPointPosition": 0, - "WidthSideAxis": 0, - "LengthSideAxis": 2, - "LocatorPosition": 0, - "OffsetX_Board1": 0, - "OffsetY_Board1": 0, - "LocatorPosition_Block": 0, - "OffsetX_Block": 0, - "OffsetY_Block": 0, - "scrapBlockSquare": 200, - "srcapBlockWidthMin": 100, - "scrapBlockWidthMax": 600, - "FreeHeight": 10, - "FreeLocationX": 0, - "FreeLocationY": 2440, - "FreeSpeed": 15000, - "WorkStartHeight": 0, - "WorkStartSpeed": 3000, - "WorkStartDistance": 20, - "WorkPreDistance": 2, - "WorkSpeed": 8000, - "WorkCornerSpeed": 3000, - "WorkEndSpeed": 3000, - "WorkEndDistace": 25, - "sameBorderHighSpeed": 55555, - "innerCornerDistence": 50, - "innerCornerSpeed": 2222, - "HoleFreeSpeed": 2400, - "HoleFirstDepth": 2, - "HoleFirstSpeed": 800, - "HoleSpeed": 1200, - "ModelSpeed": 8000, - "AllowDoubleHoleFirstSort": true, - "AutoSortingMinWidth": 150, - "FirstCutBorderInFaceB": true, - "TongHoleOnlyOneTime": false, - "TongHoleUseTwoTime": false, - "AllowDoubleSplit": false, - "SplitDepth": 8, - "LimitDouleSplit": false, - "DoubleSplitWidth": 100, - "DoubleSplitLength": 100, - "SplitBlockSeqIds": "", - "UseDianZiJuMethod": false, - "DisposeCutBlock": false, - "UseNewKnifeModule": false, - "KnifeIDForHole": 1, - "Knifes4Hole": "1,", - "ModelKnifeGroup": [], - "KnifeList": [ - { - "KnifeID": 1, - "KnifeName": "切割刀1", - "AxleID": 0, - "AllowCut": true, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 6, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 2, - "KnifeName": "切割刀2", - "AxleID": 0, - "AllowCut": true, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 5, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 3, - "KnifeName": "1号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 5, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 4, - "KnifeName": "2号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 8, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 5, - "KnifeName": "3号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 10, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 6, - "KnifeName": "4号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 15, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 7, - "KnifeName": "5号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": true, - "AllowPrevRun": false, - "Diameter": 20, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 8, - "KnifeName": "6号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 9, - "KnifeName": "7号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 10, - "KnifeName": "8号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - }, - { - "KnifeID": 11, - "KnifeName": "9号排钻刀", - "AxleID": 0, - "AllowCut": false, - "AllowHole": false, - "AllowPrevRun": false, - "Diameter": 0, - "Diameter2": 0, - "GroupType": "", - "OffsetX": 0, - "OffsetY": 0, - "OffsetZ": 0, - "VKnifAngle": 0, - "Speed": 0, - "PushDepthIncres": "", - "RunCode": "", - "SwitchCode": "", - "StopCode": "", - "IsAdvanceHole": false, - "RePlaceKnifeID": 0, - "AdvanceHoleCode": "", - "AdvanceHolePoints": [], - "IsAdvanceHoleGroup": false - } - ], - "ExportOrderPathName": "{0}_{1}_{2}", - "ExportBoardPathName": "{0}_{2}_{3}", - "BoardFileA": "{0,#3}_A.nc", - "BoardFileB": "{0,#3}_B.nc", - "BlockFile": "{0}.nc", - "NcFileHead": "", - "NcFileEnd": "", - "NcFileHead_B": "", - "NcFileEnd_B": "", - "NcFileHead_Block": "", - "NcFileEnd_Block": "", - "RegularBlockFilletCurve": false, - "UnregularBlockFilletCurve": true, - "DealCircleWithIJ": true, - "IsTurnOverG2G3": false, - "AllowNCComments": true, - "AllowAddGcodeEndChar": false, - "GcodeEndChar": "", - "NcFileIsGB2312": false, - "AllowExportNC_BackFace": true, - "OneBoardFile": false, - "AllowExportNC_block": false, - "AllowExportDataFile": true, - "AllowExportBoardDxf": false, - "showTwoWorkSpace": false, - "showChooseCutKnife": false, - "showPriorFacing": true, - "showAutoLoadBoard": false, - "showHoleGroup": false, - "showAutoNotePrinter": false, - "showCustomBlockNo": false, - "showMachine": false, - "AllowDoubleWorkSpace": false, - "SameOriginPointPosition": false, - "OffsetX_WorkNum2": 0, - "OffsetY_WorkNum2": 2600, - "OriginPointPosition2": 0, - "WidthSideAxis2": 0, - "LengthSideAxis2": 2, - "LocatorPosition2": 0, - "OffsetX_Board2": 0, - "OffsetY_Board2": 0, - "AllowCombineNCWithDoubleWorkSpace": false, - "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": 50, - "wr6_OverRun_LengthE": 2440, - "wr6_OverRun_hasThroghModel": false, - "wr6_OverRun_hasThroghModel_r": 30, - "wr6_OverRun_hasThroghModel_size": 30, - "wr6_OverRun_UnRegular": false, - "wr6_OverRun_MaxChamferR": 0, - "wr6_OverRun_MaxInnerLength": 0, - "wr6_unModel_all": false, - "wr6_unModel_isThrogh": true, - "wr6_unModel_isArc": 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": true, - "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_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_doStyle_1Face": 0, - "wr6_doStyle_1Face_hole": true, - "wr6_doStyle_1Face_model": true, - "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", - "IsLoadBoardBeforeFileHead": true, - "NcLoadBoard": "", - "NcFileHoleBegin": "", - "NcFileHoleEnd": "", - "HolingByKnifeDia": true, - "NoteAutoPrinter": 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, - "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, - "AllowOppositeDealChuanHole": false, - "ManagerPassword": "cftech123456789", - "Remark": "", - "WebQueryPageSize": 1000, - "ExportRootPath": "C:", - "AllowSelectExportPath": false, - "AllowExportImage": false, - "ManualSortingCornerWidth": 2 - } - }, - { - "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;", - "ShowData": true, - "DataWidth": 8, - "FontSize": 15, - "FontWeight": 800, - "FontFamily": "宋体", - "ShowCncDict": true, - "CncDictType": 0, - "ShowSideHole": false - }, - { - "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;", - "LineHeight": 1, - "LineColor": "rgb(0,0,0)", - "FillColor": "rgb(0,0,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": "400", - "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": "400", - "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": "400", - "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;", - "LineHeight": 1, - "LineColor": "rgb(0,0,0)", - "FillColor": "rgb(0,0,0)" - }, - { - "Type": 4, - "ObjcectID": 0, - "ObjectName": "数据", - "X": 135, - "Y": 141, - "Width": 40, - "Height": 40, - "Visible": true, - "IsScrapBlock": false, - "VisibleExpression": "return true;", - "IsVertical": false, - "DataText": "A", - "DataExpression": "return obj.BoxName.substr(0,1);", - "DisplayType": 0, - "BarcodeType": "CODE39", - "FontSize": 40, - "FontWeight": "400", - "FontFamily": "宋体", - "TextAlign": "left", - "TextBaseline": "top", - "QrcodeErrorRate": "M" - } - ] - } - }, - { - "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", - "CutPoint_Radius": 6, - "PointFillColor_cutPoint": "#FF0000", - "CutSortID_Radius": 10, - "CutSortID_font": "18px arial", - "CutSortID_color": "#0000FF", - "BlockDirectionShow": true, - "BlockNoShow": false, - "BlockNoColor": "#000000", - "BlockNoFont": "18px arial", - "BlockSizeShow": false, - "BlockSizeColor": "#000000", - "BlockSizeFont": "10px arial", - "ScrapBlockStrokeColor": "black", - "ScrapBlockFocusColor": "#D3F767", - "ScrapPlaceBlock": "#F9F8BE" - } - } - ] -} - diff --git a/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/dept/DeptServiceImplTest.java b/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/dept/DeptServiceImplTest.java index 30be52d16..4e08e7317 100644 --- a/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/dept/DeptServiceImplTest.java +++ b/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/dept/DeptServiceImplTest.java @@ -154,7 +154,7 @@ public class DeptServiceImplTest extends BaseDbUnitTest { String name = deptDO.getName(); // 调用, 并断言异常 - assertServiceException(() -> deptService.validateDeptNameUnique(id, parentId, name), + assertServiceException(() -> deptService.validateDeptNameUnique(id, parentId, name, null), DEPT_NAME_DUPLICATE); } diff --git a/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/organ/TenantServiceImplTest.java b/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/organ/TenantServiceImplTest.java index c9aa647fe..cd0a6b74d 100644 --- a/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/organ/TenantServiceImplTest.java +++ b/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/organ/TenantServiceImplTest.java @@ -132,7 +132,7 @@ public class TenantServiceImplTest extends BaseDbUnitTest { TenantPackageDO tenantPackage = randomPojo(TenantPackageDO.class, o -> o.setId(100L)); when(tenantPackageService.validTenantPackage(eq(100L))).thenReturn(tenantPackage); // mock 角色 200L - when(roleService.createRole(argThat(role -> { + /* when(roleService.createRole(argThat(role -> { assertEquals(RoleCodeEnum.TENANT_ADMIN.getName(), role.getName()); assertEquals(RoleCodeEnum.TENANT_ADMIN.getCode(), role.getCode()); Assertions.assertEquals(0, role.getSort()); @@ -147,7 +147,7 @@ public class TenantServiceImplTest extends BaseDbUnitTest { assertEquals("15601691300", user.getMobile()); return true; }))).thenReturn(300L); - +*/ // 准备参数 OrganSaveReqVO reqVO = randomPojo(OrganSaveReqVO.class, o -> { o.setContactName("晨丰"); diff --git a/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/permission/RoleServiceImplTest.java b/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/permission/RoleServiceImplTest.java index 5f6ac9072..db598d66e 100644 --- a/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/permission/RoleServiceImplTest.java +++ b/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/permission/RoleServiceImplTest.java @@ -54,7 +54,7 @@ public class RoleServiceImplTest extends BaseDbUnitTest { .setId(null); // 防止 id 被赋值 // 调用 - Long roleId = roleService.createRole(reqVO, null, null); + Long roleId = roleService.createRole(reqVO, null); // 断言 RoleDO roleDO = roleMapper.selectById(roleId); assertPojoEquals(reqVO, roleDO, "id");