diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/RemainPlateController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/RemainPlateController.java new file mode 100644 index 000000000..397bdae62 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/RemainPlateController.java @@ -0,0 +1,95 @@ +package com.cf.imes.module.executor.controller.admin.remainplate; + +import com.cf.imes.module.executor.dal.dataobject.remainplaten.RemainPlateDO; +import org.springframework.web.bind.annotation.*; +import javax.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import javax.validation.constraints.*; +import javax.validation.*; +import javax.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import com.cf.imes.framework.common.pojo.PageParam; +import com.cf.imes.framework.common.pojo.PageResult; +import com.cf.imes.framework.common.pojo.CommonResult; +import com.cf.imes.framework.common.util.object.BeanUtils; +import static com.cf.imes.framework.common.pojo.CommonResult.success; + +import com.cf.imes.framework.excel.core.util.ExcelUtils; + +import com.cf.imes.framework.operatelog.core.annotations.OperateLog; +import static com.cf.imes.framework.operatelog.core.enums.OperateTypeEnum.*; + +import com.cf.imes.module.executor.controller.admin.remainplate.vo.*; +import com.cf.imes.module.executor.service.remainplate.RemainPlateService; + +@Tag(name = "管理后台 - 生产单余料板表 order_remain_plate_{N}") +@RestController +@RequestMapping("/executor/remain-plate") +@Validated +public class RemainPlateController { + + @Resource + private RemainPlateService remainPlateService; + + @PostMapping("/create") + @Operation(summary = "创建生产单余料板表}") + @PreAuthorize("@ss.hasPermission('executor:remain-plate:create')") + public CommonResult createRemainPlate(@Valid @RequestBody RemainPlateSaveReqVO createReqVO) { + return success(remainPlateService.createRemainPlate(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新生产单余料板表") + @PreAuthorize("@ss.hasPermission('executor:remain-plate:update')") + public CommonResult updateRemainPlate(@Valid @RequestBody RemainPlateSaveReqVO updateReqVO) { + remainPlateService.updateRemainPlate(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除生产单余料板表") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('executor:remain-plate:delete')") + public CommonResult deleteRemainPlate(@RequestParam("id") Long id) { + remainPlateService.deleteRemainPlate(id); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得生产单余料板表") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('executor:remain-plate:query')") + public CommonResult getRemainPlate(@RequestParam("id") Long id) { + RemainPlateDO remainPlate = remainPlateService.getRemainPlate(id); + return success(BeanUtils.toBean(remainPlate, RemainPlateRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得生产单余料板表 order_remain_plate分页") + @PreAuthorize("@ss.hasPermission('executor:remain-plate:query')") + public CommonResult> getRemainPlatePage(@Valid RemainPlatePageReqVO pageReqVO) { + PageResult pageResult = remainPlateService.getRemainPlatePage(pageReqVO); + return success(BeanUtils.toBean(pageResult, RemainPlateRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出生产单余料板表 Excel") + @PreAuthorize("@ss.hasPermission('executor:remain-plate:export')") + @OperateLog(type = EXPORT) + public void exportRemainPlateExcel(@Valid RemainPlatePageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = remainPlateService.getRemainPlatePage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "生产单余料板表.xls", "数据", RemainPlateRespVO.class, + BeanUtils.toBean(list, RemainPlateRespVO.class)); + } + +} \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/vo/RemainPlatePageReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/vo/RemainPlatePageReqVO.java new file mode 100644 index 000000000..9fea358f5 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/vo/RemainPlatePageReqVO.java @@ -0,0 +1,71 @@ +package com.cf.imes.module.executor.controller.admin.remainplate.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import com.cf.imes.framework.common.pojo.PageParam; +import java.math.BigDecimal; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 生产单余料板表 order_remain_plate_{N}分页 Request VO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class RemainPlatePageReqVO extends PageParam { + + @Schema(description = "排单 ID", example = "14125") + private Long planId; + + @Schema(description = "初始排单 ID", example = "28810") + private Long initPlanId; + + @Schema(description = "余料板状态,0未使用,1使用中,2已使用", example = "1") + private Integer status; + + @Schema(description = "商品 ID", example = "16139") + private String goodsId; + + @Schema(description = "商品名", example = "王五") + private String name; + + @Schema(description = "材料") + private String material; + + @Schema(description = "颜色") + private String color; + + @Schema(description = "宽度") + private BigDecimal width; + + @Schema(description = "长度") + private BigDecimal length; + + @Schema(description = "厚度") + private BigDecimal thickness; + + @Schema(description = "品牌") + private String brand; + + @Schema(description = "放置样式,0正面,1正面右转,2正面后转,3正面左转,4反面,5反面右转,6反面后转,7反面左转") + private Integer placeStyle; + + @Schema(description = "仓库名") + private String store; + + @Schema(description = "数量", example = "5334") + private Integer count; + + @Schema(description = "备注", example = "随便") + private String remark; + + @Schema(description = "轮廊数据,Json 串") + private String outline; + + @Schema(description = "创建日期") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/vo/RemainPlateRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/vo/RemainPlateRespVO.java new file mode 100644 index 000000000..1b32ccd2d --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/vo/RemainPlateRespVO.java @@ -0,0 +1,89 @@ +package com.cf.imes.module.executor.controller.admin.remainplate.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import java.util.*; +import java.math.BigDecimal; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 生产单余料板表 order_remain_plate_{N} Response VO") +@Data +@ExcelIgnoreUnannotated +public class RemainPlateRespVO { + + @Schema(description = "余料板 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25869") + @ExcelProperty("余料板 ID") + private Long id; + + @Schema(description = "排单 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "14125") + @ExcelProperty("排单 ID") + private Long planId; + + @Schema(description = "初始排单 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "28810") + @ExcelProperty("初始排单 ID") + private Long initPlanId; + + @Schema(description = "余料板状态,0未使用,1使用中,2已使用", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @ExcelProperty("余料板状态,0未使用,1使用中,2已使用") + private Integer status; + + @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16139") + @ExcelProperty("商品 ID") + private String goodsId; + + @Schema(description = "商品名", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五") + @ExcelProperty("商品名") + private String name; + + @Schema(description = "材料", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("材料") + private String material; + + @Schema(description = "颜色", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("颜色") + private String color; + + @Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("宽度") + private BigDecimal width; + + @Schema(description = "长度", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("长度") + private BigDecimal length; + + @Schema(description = "厚度", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("厚度") + private BigDecimal thickness; + + @Schema(description = "品牌", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("品牌") + private String brand; + + @Schema(description = "放置样式,0正面,1正面右转,2正面后转,3正面左转,4反面,5反面右转,6反面后转,7反面左转", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("放置样式,0正面,1正面右转,2正面后转,3正面左转,4反面,5反面右转,6反面后转,7反面左转") + private Integer placeStyle; + + @Schema(description = "仓库名", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("仓库名") + private String store; + + @Schema(description = "数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "5334") + @ExcelProperty("数量") + private Integer count; + + @Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "随便") + @ExcelProperty("备注") + private String remark; + + @Schema(description = "轮廊数据,Json 串", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("轮廊数据,Json 串") + private String outline; + + @Schema(description = "创建日期", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建日期") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/vo/RemainPlateSaveReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/vo/RemainPlateSaveReqVO.java new file mode 100644 index 000000000..ffd9297a3 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/remainplate/vo/RemainPlateSaveReqVO.java @@ -0,0 +1,80 @@ +package com.cf.imes.module.executor.controller.admin.remainplate.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import javax.validation.constraints.*; +import java.math.BigDecimal; + +@Schema(description = "管理后台 - 生产单余料板表 order_remain_plate_{N}新增/修改 Request VO") +@Data +public class RemainPlateSaveReqVO { + + @Schema(description = "余料板 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25869") + private Long id; + + @Schema(description = "排单 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "14125") + @NotNull(message = "排单 ID不能为空") + private Long planId; + + @Schema(description = "初始排单 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "28810") + @NotNull(message = "初始排单 ID不能为空") + private Long initPlanId; + + @Schema(description = "余料板状态,0未使用,1使用中,2已使用", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @NotNull(message = "余料板状态,0未使用,1使用中,2已使用不能为空") + private Integer status; + + @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16139") + @NotEmpty(message = "商品 ID不能为空") + private String goodsId; + + @Schema(description = "商品名", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五") + @NotEmpty(message = "商品名不能为空") + private String name; + + @Schema(description = "材料", requiredMode = Schema.RequiredMode.REQUIRED) + @NotEmpty(message = "材料不能为空") + private String material; + + @Schema(description = "颜色", requiredMode = Schema.RequiredMode.REQUIRED) + @NotEmpty(message = "颜色不能为空") + private String color; + + @Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "宽度不能为空") + private BigDecimal width; + + @Schema(description = "长度", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "长度不能为空") + private BigDecimal length; + + @Schema(description = "厚度", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "厚度不能为空") + private BigDecimal thickness; + + @Schema(description = "品牌", requiredMode = Schema.RequiredMode.REQUIRED) + @NotEmpty(message = "品牌不能为空") + private String brand; + + @Schema(description = "放置样式,0正面,1正面右转,2正面后转,3正面左转,4反面,5反面右转,6反面后转,7反面左转", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "放置样式,0正面,1正面右转,2正面后转,3正面左转,4反面,5反面右转,6反面后转,7反面左转不能为空") + private Integer placeStyle; + + @Schema(description = "仓库名", requiredMode = Schema.RequiredMode.REQUIRED) + @NotEmpty(message = "仓库名不能为空") + private String store; + + @Schema(description = "数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "5334") + @NotNull(message = "数量不能为空") + private Integer count; + + @Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "随便") + @NotEmpty(message = "备注不能为空") + private String remark; + + @Schema(description = "轮廊数据,Json 串", requiredMode = Schema.RequiredMode.REQUIRED) + @NotEmpty(message = "轮廊数据,Json 串不能为空") + private String outline; + +} \ 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/dal/mysql/remainplaten/RemainPlateMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/RemainPlateMapper.java index 83be2922b..cde9ee9f2 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/RemainPlateMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/RemainPlateMapper.java @@ -1,10 +1,35 @@ package com.cf.imes.module.executor.dal.mysql.remainplaten; +import com.cf.imes.framework.common.pojo.PageResult; import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX; +import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; +import com.cf.imes.module.executor.controller.admin.remainplate.vo.RemainPlatePageReqVO; import com.cf.imes.module.executor.dal.dataobject.remainplaten.RemainPlateDO; import org.apache.ibatis.annotations.Mapper; @Mapper public interface RemainPlateMapper extends BaseMapperX { + default PageResult selectPage(RemainPlatePageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(RemainPlateDO::getPlanId, reqVO.getPlanId()) + .eqIfPresent(RemainPlateDO::getInitPlanId, reqVO.getInitPlanId()) + .eqIfPresent(RemainPlateDO::getStatus, reqVO.getStatus()) + .eqIfPresent(RemainPlateDO::getGoodsId, reqVO.getGoodsId()) + .likeIfPresent(RemainPlateDO::getName, reqVO.getName()) + .eqIfPresent(RemainPlateDO::getMaterial, reqVO.getMaterial()) + .eqIfPresent(RemainPlateDO::getColor, reqVO.getColor()) + .eqIfPresent(RemainPlateDO::getWidth, reqVO.getWidth()) + .eqIfPresent(RemainPlateDO::getLength, reqVO.getLength()) + .eqIfPresent(RemainPlateDO::getThickness, reqVO.getThickness()) + .eqIfPresent(RemainPlateDO::getBrand, reqVO.getBrand()) + .eqIfPresent(RemainPlateDO::getPlaceStyle, reqVO.getPlaceStyle()) + .eqIfPresent(RemainPlateDO::getStore, reqVO.getStore()) + .eqIfPresent(RemainPlateDO::getCount, reqVO.getCount()) + .eqIfPresent(RemainPlateDO::getRemark, reqVO.getRemark()) + .eqIfPresent(RemainPlateDO::getOutline, reqVO.getOutline()) + .betweenIfPresent(RemainPlateDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(RemainPlateDO::getId)); + } + } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/remainplate/RemainPlateService.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/remainplate/RemainPlateService.java new file mode 100644 index 000000000..def2ff853 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/remainplate/RemainPlateService.java @@ -0,0 +1,55 @@ +package com.cf.imes.module.executor.service.remainplate; + +import java.util.*; +import javax.validation.*; +import com.cf.imes.module.executor.controller.admin.remainplate.vo.*; +import com.cf.imes.framework.common.pojo.PageResult; +import com.cf.imes.framework.common.pojo.PageParam; +import com.cf.imes.module.executor.dal.dataobject.remainplaten.RemainPlateDO; + +/** + * 生产单余料板表 order_remain_plate_{N} Service 接口 + * + * @author 晨丰科技 + */ +public interface RemainPlateService { + + /** + * 创建生产单余料板表 order_remain_plate_{N} + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createRemainPlate(@Valid RemainPlateSaveReqVO createReqVO); + + /** + * 更新生产单余料板表 order_remain_plate_{N} + * + * @param updateReqVO 更新信息 + */ + void updateRemainPlate(@Valid RemainPlateSaveReqVO updateReqVO); + + /** + * 删除生产单余料板表 order_remain_plate_{N} + * + * @param id 编号 + */ + void deleteRemainPlate(Long id); + + /** + * 获得生产单余料板表 order_remain_plate_{N} + * + * @param id 编号 + * @return 生产单余料板表 order_remain_plate_{N} + */ + RemainPlateDO getRemainPlate(Long id); + + /** + * 获得生产单余料板表 order_remain_plate_{N}分页 + * + * @param pageReqVO 分页查询 + * @return 生产单余料板表 order_remain_plate_{N}分页 + */ + PageResult getRemainPlatePage(RemainPlatePageReqVO pageReqVO); + +} \ 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/remainplate/RemainPlateServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/remainplate/RemainPlateServiceImpl.java new file mode 100644 index 000000000..315281856 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/remainplate/RemainPlateServiceImpl.java @@ -0,0 +1,75 @@ +package com.cf.imes.module.executor.service.remainplate; + +import com.cf.imes.module.executor.dal.dataobject.remainplaten.RemainPlateDO; +import com.cf.imes.module.executor.dal.mysql.remainplaten.RemainPlateMapper; +import org.springframework.stereotype.Service; +import javax.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; +import com.cf.imes.module.executor.controller.admin.remainplate.vo.*; +import com.cf.imes.framework.common.pojo.PageResult; +import com.cf.imes.framework.common.pojo.PageParam; +import com.cf.imes.framework.common.util.object.BeanUtils; + + +import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception; +import static com.cf.imes.module.executor.enums.ErrorCodeConstants.*; +import static com.cf.imes.module.system.enums.ErrorCodeConstants.REMAIN_PLATE_NOT_EXISTS; + +/** + * 生产单余料板表 order_remain_plate_{N} Service 实现类 + * + * @author 晨丰科技 + */ +@Service +@Validated +public class RemainPlateServiceImpl implements RemainPlateService { + + @Resource + private RemainPlateMapper remainPlateMapper; + + @Override + public Long createRemainPlate(RemainPlateSaveReqVO createReqVO) { + // 插入 + RemainPlateDO remainPlate = BeanUtils.toBean(createReqVO, RemainPlateDO.class); + remainPlateMapper.insert(remainPlate); + // 返回 + return remainPlate.getId(); + } + + @Override + public void updateRemainPlate(RemainPlateSaveReqVO updateReqVO) { + // 校验存在 + validateRemainPlateExists(updateReqVO.getId()); + // 更新 + RemainPlateDO updateObj = BeanUtils.toBean(updateReqVO, RemainPlateDO.class); + remainPlateMapper.updateById(updateObj); + } + + @Override + public void deleteRemainPlate(Long id) { + // 校验存在 + validateRemainPlateExists(id); + // 删除 + remainPlateMapper.deleteById(id); + } + + private void validateRemainPlateExists(Long id) { + if (remainPlateMapper.selectById(id) == null) { + throw exception(REMAIN_PLATE_NOT_EXISTS); + } + } + + @Override + public RemainPlateDO getRemainPlate(Long id) { + return remainPlateMapper.selectById(id); + } + + @Override + public PageResult getRemainPlatePage(RemainPlatePageReqVO pageReqVO) { + return remainPlateMapper.selectPage(pageReqVO); + } + +} \ 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/machine/vo/CuttingRespVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/CuttingRespVO.java index e16fd7af1..35742e551 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/CuttingRespVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/CuttingRespVO.java @@ -24,6 +24,9 @@ public class CuttingRespVO { @ExcelProperty("1机台设备 2CNC设备") private Integer machineType; + @Schema(description = "标签id") + private Long labelId; + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("创建时间") private LocalDateTime createTime; diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/CuttingSaveReqVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/CuttingSaveReqVO.java index fcdac3652..e66651ca6 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/CuttingSaveReqVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/CuttingSaveReqVO.java @@ -16,7 +16,7 @@ import javax.validation.constraints.NotNull; @Data public class CuttingSaveReqVO { - @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "14092") + @Schema(description = "主键", example = "14092") @NotNull(groups = UpdateGroup.class, message = "主键不能空") private Long id; diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/CuttingTemplateSaveReqVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/CuttingTemplateSaveReqVO.java index ec16886c1..ea6d9be87 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/CuttingTemplateSaveReqVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/CuttingTemplateSaveReqVO.java @@ -13,7 +13,7 @@ import javax.validation.constraints.NotNull; */ @Data public class CuttingTemplateSaveReqVO { - @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "14092") + @Schema(description = "主键", example = "14092") @NotNull(groups = UpdateGroup.class, message = "主键不能空") private Long id; @@ -25,9 +25,9 @@ public class CuttingTemplateSaveReqVO { @NotNull(message = "1开料机台设备 2钻孔机台设备 不能为空") private Integer machineType; - @Schema(description = "标签id") + /*@Schema(description = "标签id") @NotNull(message = "标签id不能空") - private Long labelId; + private Long labelId;*/ @Schema(description = "管理理后台 - 开料机台模板新增/修改 Request VO") @NotNull(message = "开料机台配置不能空") diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/DrillTemplateRespVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/DrillTemplateRespVO.java index 54904c405..4f1e3ae68 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/DrillTemplateRespVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/DrillTemplateRespVO.java @@ -34,6 +34,9 @@ public class DrillTemplateRespVO { @ExcelProperty("创建时间") private LocalDateTime createTime; + @Schema(description = "标签id") + private Long labelId; + @Schema(description = "钻孔模板配置") private DrillTemplateMachineDO drillTemplateMachineDO; } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/DrillTemplateSaveReqVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/DrillTemplateSaveReqVO.java index 3c47e00fe..6a2a6ebbd 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/DrillTemplateSaveReqVO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/machine/vo/DrillTemplateSaveReqVO.java @@ -27,9 +27,9 @@ public class DrillTemplateSaveReqVO { @NotNull(message = "1开料机台设备 2钻孔机台设备 不能为空") private Integer machineType; - @Schema(description = "标签id") + /*@Schema(description = "标签id") @NotNull(message = "标签id不能空") - private Long labelId; + private Long labelId;*/ @Schema(description = "钻孔机台模板配置") @NotNull(message = "配置不能空") 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 86d4c5b19..22cb8ca64 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,31 +15,30 @@ public class CuttingSettingDO extends ESDocument { @Schema(description = "机台id") private Long machineId; - @Schema(description = "默认true,使用机台台面尺寸,false台面尺寸范围内自适应材料尺寸") + @Schema(description = "默认true,按机台尺寸排版/按板材尺寸排版,false台面尺寸范围内自适应材料尺寸") private Boolean useWorkPanelSize; @Schema(description = "默认1220,机台台面宽度(原料板宽)") private Integer boardWidth; @Schema(description = "默认2440,机台台面长度(原料板长)") private Integer boardLength; @Schema(description = "默认3,总修边值") - private Integer boardBorder; - @Schema(description = "默认2,反面修边值") - private Integer boardBorder_B; - @Schema(description = "默认0,修边补偿1(起刀提前,保证板外下刀完整切断)") - private Integer cutBorderOff1; - @Schema(description = "默认0,修边补偿2(收刀延长,保证修边完整切断") - private Integer cutBorderOff2; - @Schema(description = "默认6") - private Integer knifeDia; + private Integer reverseTrimValue; + @Schema(description = "默认1,开料刀缝间隙") private Integer cutGap; @Schema(description = "默认0,工位1原点位置") private Integer originPoIntegerPosition; - @Schema(description = "默认0") + @Schema(description = "工作原点Z0基准面") + private String originZ0Position; + @Schema(description = "排版基准点") + private String layoutBenchmark; + @Schema(description = "排版基准点跟随大板定位") + private Boolean useLocator4Place; + @Schema(description = "默认0 短边坐标轴向") private Integer widthSideAxis; - @Schema(description = "默认2") + @Schema(description = "默认2 长边坐标轴向") private Integer lengthSideAxis; - @Schema(description = "默认0,工位1定位点(靠点") + @Schema(description = "默认0,大板定位") private Integer locatorPosition; @Schema(description = "默认0,工位1大板定位坐标(工件坐标原点)X偏移值") private Integer offsetX_Board1; @@ -51,22 +50,33 @@ public class CuttingSettingDO extends ESDocument { private Integer offsetX_Block; @Schema(description = "默认0,小板定位坐标Y偏移") private Integer offsetY_Block; - @Schema(description = "默认200,最小余料板件(长宽最小值)") + @Schema(description = "默认200,余料生成规则1-两边均大于限定值") private Integer scrapBlockSquare; - @Schema(description = "默认100,余料板件最小宽度") + @Schema(description = "默认100,余料生成规则2-短边最小限定值") private Integer srcapBlockWidthMin; - @Schema(description = "默认600,余料板件最小长度") + @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 = "默认40,安全高度") private Integer freeHeight; - @Schema(description = "默认0,停刀位置X坐标") - private Integer freeLocationX; - @Schema(description = "默认2440,停刀位置Y坐标") - private Integer freeLocationY; + @Schema(description = "总修边值") + private Double totalTrimValue; + /*@Schema(description = "默认0,停刀位置X坐标") + private Integer freeLocationX;*/ +/* @Schema(description = "默认2440,停刀位置Y坐标") + private Integer freeLocationY;*/ @Schema(description = "默认15000,空程速度") private Integer freeSpeed; - @Schema(description = "默认0,起始下刀高度(距板面)") - private Integer workStartHeight; + /* @Schema(description = "默认0,起始下刀高度(距板面)") + private Integer workStartHeight;*/ @Schema(description = "默认3000,下刀速度") private Integer workStartSpeed; @Schema(description = "默认20,斜向下刀水平距离") @@ -74,15 +84,19 @@ public class CuttingSettingDO extends ESDocument { @Schema(description = "默认2,开料提前") private Integer workPreDistance; @Schema(description = "默认8000,开料速度") - private Integer workSpeed; - @Schema(description = "默认3000,转角切割速度") - private Integer workCornerSpeed; + 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 sameBorderHighSpeed;*/ @Schema(description = "默认0,内转角减速提前距离") private Integer innerCornerDistence; @Schema(description = "默认3000,内转角速度") @@ -99,45 +113,112 @@ public class CuttingSettingDO extends ESDocument { private Integer modelSpeed; @Schema(description = "默认true,双面加工优先排版") private Boolean allowDoubleHoleFirstSort; - @Schema(description = "默认150,开料优先最小宽度") - private Integer autoSortingMinWidth; + @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 = "默认false,通孔(穿孔)分正反两刀加工(失效?)") - private Boolean tongHoleUseTwoTime; - @Schema(description = "默认false,分刀开料") + @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,分刀深度") + @Schema(description = "默认8,分刀步进深度") private Integer splitDepth; - @Schema(description = "默认false,最小板件分刀开料") - private Boolean limitDouleSplit; - @Schema(description = "默认100,分刀板件宽最小值") +/* @Schema(description = "默认false,最小板件分刀开料") + private Boolean limitDouleSplit;*/ + @Schema(description = "默认100,小板分刀-短边上限") private Integer doubleSplitWidth; - @Schema(description = "默认100,分刀板件长最小值") + @Schema(description = "默认100,小板分刀-长边上限") private Integer doubleSplitLength; - @Schema(description = "默认空,强制分刀小板顺序号,如:1,-1,-2,第一片、最后一片、倒数第二片分刀") - private String splitBlockSeqIds; - @Schema(description = "默认false,使用横竖算法(电子锯)优化,目前无效") - private Boolean useDianZiJuMethod; - @Schema(description = "默认false,") + /* @Schema(description = "默认空,强制分刀小板顺序号,如:1,-1,-2,第一片、最后一片、倒数第二片分刀") + private String splitBlockSeqIds;*/ + /* @Schema(description = "默认false,使用横竖算法(电子锯)优化,目前无效") + private Boolean useDianZiJuMethod;*/ + @Schema(description = "仅加工孔/造型,") private Boolean disposeCutBlock; - @Schema(description = "默认false,旧版本刀库配置(不带轴号、排钻启停使用排钻包启停参数项设置);true,使用新模式刀库配置(支持轴号、组合刀、多轴预启动)。") - private Boolean useNewKnifeModule; - @Schema(description = "默认1,") - private Integer knifeIDForHole; - @Schema(description = "默认1,") - private String knifes4Hole; - @Schema(description = "默认[],造型刀组") - private List modelKnifeGroup; + @Schema(description = "挖穿板内板件优先开料") + private Boolean cutBlockInModelFirst; + @Schema(description = "同刀辅助开料") + private Boolean useSameKnifeToHelpCut; + @Schema(description = "辅助开料偏移") + private Double useSameKnifeToHelpCutGap; + @Schema(description = "辅助开料-短边上限") + private Double useSecondKnifeBlockWidth; + @Schema(description = "辅助开料-长边上限") + private Double useSecondKnifeBlockLength; + @Schema(description = "辅助开料留底厚度") + 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 = "默认{0} {1},导出NC文件路径") - private String exportBoardPathName; - @Schema(description = "默认{0}_A.nc,正面NC文件名") + 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; @@ -154,18 +235,22 @@ public class CuttingSettingDO extends ESDocument { @Schema(description = "默认空,小板(补孔)NC文件头") private String ncFileHead_Block; @Schema(description = "默认空,小板(补孔)NC文件尾") - private String ncFileEnd_Block; - @Schema(description = "默认false,矩形板R倒角") + private String ncFileEnd_Block;*/ + @Schema(description = "默认false,矩形板件开料R拐角") private Boolean regularBlockFilletCurve; - @Schema(description = "默认true,非矩形板R倒角") - private Boolean unregularBlockFilletCurve; + /* @Schema(description = "默认true,非矩形板R倒角") + private Boolean unregularBlockFilletCurve;*/ @Schema(description = "默认false,加工圆弧使用IJ指令") private Boolean dealCircleWithIJ; - @Schema(description = "默认false,翻转G2G3") + @Schema(description = "默认false,G2/G3圆弧方向反转") private Boolean isTurnOverG2G3; - @Schema(description = "默认true,导出NC文件注释") - private Boolean allowNCComments; - @Schema(description = "默认false,G代码行尾加结束符") + @Schema(description = "圆弧转多段线加工直线段长度") + 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; @@ -184,10 +269,95 @@ public class CuttingSettingDO extends ESDocument { @Schema(description ="默认false,显示双工位配置") private Boolean showTwoWorkSpace; @Schema(description ="默认false,显示选择开料刀配置") - private Boolean showChooseCutKnife; + private Boolean showChooseCutKnife;*/ @Schema(description ="默认true,显示开料机工作模式(是否排钻/造型,sc)配置") private Boolean showPriorFacing; - @Schema(description ="默认false,显示自动上料代码配置") + @Schema(description = "双工位") + private Boolean dualWorkstation; + @Schema(description = "自动贴标") + private Boolean showAutoNotePrinter; + @Schema(description = "排版方式") + private Double placeStyle; + @Schema(description = "开料刀路间隙") + private Double cutKniefGap; + @Schema(description = "修边刀路前延伸") + private Double trimmingRouteFrontExtension; + @Schema(description = "修边刀路后延伸") + private Double trimmingRouteBackExtension; + @Schema(description = "最小孔半径") + private Double minR; + @Schema(description = "最浅孔深") + private Double shallowestHoleDepth; + @Schema(description = "允许加载优化结果") + private Boolean allowLoadOptimizationResult; + @Schema(description = "NC小数点位数") + private Double decimalPointPrecision; + @Schema(description = "过滤空行") + private Boolean filterEmptyLines; + @Schema(description = "钻包启动延迟指令") + private String drillStartDelayCommand; + @Schema(description = "预启动提前动作数") + private Double preStartAdvanceActions; + @Schema(description = "正面修边") + private Boolean frontTrimming; + @Schema(description = "NC行前缀") + private String ncLinePrefix; + @Schema(description = "延迟换刀下限动作数") + private Double toolChangeDelayLowerLimitActions; + @Schema(description = "延迟换刀指令") + private String toolChangeDelayCommand; + @Schema(description = "useSimpleCommands") + private Boolean useSimpleCommands; + @Schema(description = "辅助开料延时指令") + private String auxiliaryCuttingDelayCommand; + @Schema(description = "辅助开料延时指令(工位2)") + private String auxiliaryCuttingDelayCommand2; + @Schema(description = "预铣(板件外扩)值") + private Double preMillingValue; + @Schema(description = "挖穿造型斜向下刀长度") + private Double piercingSlopedDownwardLength; + @Schema(description = "造型刀路加工顺序及方向") + private Double modelToolPathOrderAndDirection; + @Schema(description = "造型刀路冗余量") + private Double modelToolPathRedundancy; + @Schema(description = "大板边缘造型范围") + private Double largePlateEdgeModelingRange; + @Schema(description = "造型尽量靠大板边缘") + private Boolean modelCloseToLargePlateEdge; + @Schema(description = "造型靠近/远离边缘作用面") + private Double modelNearFarEdgeActionSurface; + @Schema(description = "造型靠近/远离边缘作用于CNC加工") + private Boolean modelNearFarEdgeCNCProcessing; + @Schema(description = "启用雕刻机正反面加工比例分配") + private Boolean enableEngravingMachineFrontBack; + @Schema(description = "雕刻机正面加工百分比") + private Double engravingFrontProcessingPercentage; + @Schema(description = "雕刻机排钻加工速度") + private Double engravingMachineDrillingSpeed; + @Schema(description = "雕刻机造型加工速度") + private Double engravingMachineModelingSpeed; + @Schema(description = "CNC正面加工百分比") + private Double cNCFrontPercentage; + @Schema(description = "CNC排钻加工速度") + private Double cNCDrillingSpeed; + @Schema(description = "CNC造型加工速度") + 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; @@ -239,10 +409,6 @@ public class CuttingSettingDO extends ESDocument { private List boardKnifeList; @Schema(description = "默认0,加工模式") private Integer isPriorFacing_RoleNum; - @Schema(description = "默认false,替换排钻铣孔") - private Boolean disPloseHoleRole; - @Schema(description = "默认false,") - private Boolean isIgnore_HolingModeling; @Schema(description = "默认true,开料机加工超小板") private Boolean isForceHoling_MultiSide_Minimum; @Schema(description = "默认50,超小板(两边都小于)值") @@ -263,8 +429,6 @@ public class CuttingSettingDO extends ESDocument { private Boolean isForceHoling_UnRegularBlock; @Schema(description = "默认false,开料机加工孔-有造型的板件") private Boolean isForceHoling_HasModel; - @Schema(description = "默认false,") - private Boolean isIgnore_Modeling; @Schema(description = "默认false,开料机加工全部造型") private Boolean doModel_hasModel; @Schema(description = "默认false,开料机加工异形板件的造型") @@ -285,8 +449,6 @@ public class CuttingSettingDO extends ESDocument { private Boolean doModel_oneBig; @Schema(description = "默认2434,超长值") private Integer doModel_oneBig_Value; - @Schema(description = "默认false") - private Boolean allowChangeIgnore; @Schema(description = "默认false,开料机加工造型-所有造型") private Boolean isFoceModeling_hasModel; @Schema(description = "默认false,开料机加工造型-有孔的板件") @@ -322,106 +484,9 @@ public class CuttingSettingDO extends ESDocument { @Schema(description = "默认true,排版优先-双面有孔-孔多面") private Boolean isPriorFacing_DoubleHole_More; @Schema(description = "默认空,自定义排版面规则") - private String isPriorFacing_CustomFunction; - @Schema(description = "默认50,") - private Integer wr6_OverRun_WdthS; - @Schema(description = "默认1220,") - private Integer wr6_OverRun_WdthE; - @Schema(description = "默认120,") - private Integer wr6_OverRun_LengthS; - @Schema(description = "默认2440,") - private Integer wr6_OverRun_LengthE; - @Schema(description = "默认false,") - private Boolean wr6_OverRun_hasThroghModel; - @Schema(description = "默认50,") - private Integer wr6_OverRun_hasThroghModel_r; - @Schema(description = "默认40000,") - private Integer wr6_OverRun_hasThroghModel_size; - @Schema(description = "默认false,") - private Boolean wr6_OverRun_UnRegular; - @Schema(description = "默认50,") - private Integer wr6_OverRun_MaxChamferR; - @Schema(description = "默认100,") - private Integer wr6_OverRun_MaxInnerLength; - @Schema(description = "默认false,") - private Boolean wr6_unModel_all; - @Schema(description = "默认true,") - private Boolean wr6_unModel_isThrogh; - @Schema(description = "默认false,") - private Boolean wr6_unModel_isArc; - @Schema(description = "默认false,") - private Boolean wr6_unModel_checkRadius; - @Schema(description = "默认\\\"\\\",") - private String wr6_unModel_isRadius; - @Schema(description = "默认false,") - private Boolean wr6_unModel_checkName; - @Schema(description = "默认\\\"\\\",") - private String wr6_unModel_isName; - @Schema(description = "默认false,") - private Boolean wr6_unModel_checkDepth; - @Schema(description = "默认\\\"\\\",") - private String wr6_unModel_isDepth; - @Schema(description = "默认true,") - private Boolean wr6_unModel_isVKnifeModel; - @Schema(description = "默认true,") - private Boolean wr6_unModel_is3VModell; - @Schema(description = "默认false") - private Boolean wr6_unModel_isLaChao; - @Schema(description = "默认false,") - private Boolean wr6_unModel_notLaChao; - @Schema(description = "默认50,") - private Integer wr6_laChao_maxWidth; - @Schema(description = "默认100,") - private Integer wr6_lachao_minLength; - @Schema(description = "默认false,") - private Boolean wr6_unHole_all; - @Schema(description = "默认false,") - private Boolean wr6_unHole_checkRadius; - @Schema(description = "") - private String wr6_unHole_isRadius; - @Schema(description = "") - private Boolean wr6_unHole_checkType; - @Schema(description = "") - private String wr6_unHole_isType; - @Schema(description = "") - private Boolean wr6_unHole_checkDepth; - @Schema(description = "") - private String wr6_unHole_isDepth; - @Schema(description = "") - private Boolean wr6_unHole_isNoHoleKnife; - @Schema(description = "") - private Boolean wr6_dragUndo_m2m; - @Schema(description = "") - private Boolean wr6_dragUndo_m2m_2face; - @Schema(description = "") - private Boolean wr6_dragUndo_m2h; - @Schema(description = "") - private Boolean wr6_dragUndo_m2h_2face; - @Schema(description = "") - private Boolean wr6_dragUndo_h2m; - @Schema(description = "") - private Boolean wr6_dragUndo_h2m_2face; - @Schema(description = "") - private Boolean wr6_dragUndo_h2h; - @Schema(description = "") - private Boolean wr6_dragUndo_h2h_2face; - @Schema(description = "") - private Integer wr6_doStyle_1Face; - @Schema(description = "") - private Boolean wr6_doStyle_1Face_hole; - @Schema(description = "") - private Boolean wr6_doStyle_1Face_model; - @Schema(description = "") - private Integer wr6_doStyle_2Face; - @Schema(description = "") - private Boolean wr6_doStyle_2Face_hole; - @Schema(description = "") - private Boolean wr6_doStyle_2Face_model; - @Schema(description = "") - private String wr6_doStyle_2Face_role; - @Schema(description = "") - private String wr6_turnFace_roleSeq; - @Schema(description = "认true,上料代码放文件头前") + private String isPriorFacing_CustomFunction;*/ + + /* @Schema(description = "认true,上料代码放文件头前") private Boolean isLoadBoardBeforeFileHead; @Schema(description = "默认空,上料代码??") private String ncLoadBoard; @@ -459,12 +524,10 @@ public class CuttingSettingDO extends ESDocument { private Boolean noteOtherExport; @Schema(description = "默认空,自动贴标其他函数") private String noteOtherFun; - @Schema(description = "默认false,启用自定义板件编号") - private Boolean allowBlockNo_Note; @Schema(description = "默认return obj.BlockNo; 自定义板件编号") private String blockNo_Note; - @Schema(description = "默认{0}_{1}_{2}_{3},") - private String boardName; + *//* @Schema(description = "默认{0}_{1}_{2}_{3},") + private String boardName;*//* @Schema(description = "默认10,最小板件宽度") private Integer minBlockWidth; @Schema(description = "默认1,最小排钻孔半径") @@ -502,174 +565,71 @@ public class CuttingSettingDO extends ESDocument { @Schema(description = "默认值false,穿孔对面打") private Boolean allowOppositeDealChuanHole; @Schema(description = "默认cftech123456789,高级配置密码") - private String managerPassword; - @Schema(description = "默认空,机台备注") - private String remark; - @Schema(description = "WebQueryPageSize") - private Integer webQueryPageSize; - @Schema(description = "ExportRootPath") - private String exportRootPath; - @Schema(description = "AllowSelectExportPath") - private Boolean allowSelectExportPath; - @Schema(description = "AllowExportImage") - private Boolean allowExportImage; - @Schema(description = "ManualSortingCornerWidth") - private Integer manualSortingCornerWidth; - - @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 ="样式-BoardBorder") - private Integer styleBoardBorder; - @Schema( description ="样式-GlobalAlpha") - private Double globalAlpha; - @Schema( description ="样式-WorkSpaceColor") - private String workSpaceColor; - @Schema( description ="样式-WorkSpaceBorderColor") - private String workSpaceBorderColor; - @Schema( description ="样式-ShowAxis") - private Boolean showAxis; - @Schema( description ="样式-AxisPos") - private Integer axisPos; - @Schema( description ="样式-AxisNodeWidth0") - private Integer axisNodeWidth0; - @Schema( description ="样式-AxisNodeWidth1") - private Integer axisNodeWidth1; - @Schema( description ="样式-AxisNodeWidth2") - private Integer axisNodeWidth2; - @Schema( description ="样式-AxisblockFlagWidth") - private Integer axisblockFlagWidth; - @Schema( description ="样式-AxisColor") - private String axisColor; - @Schema( description ="样式-BlockInfoInAxisFont") - private String blockInfoInAxisFont; - @Schema( description ="样式-BlockInfoInAxisColor") - private String blockInfoInAxisColor; - @Schema( description ="样式-BlockInfoInAxisColor2") - private String blockInfoInAxisColor2; - @Schema( description ="样式-BoardColor") - private String boardColor; - @Schema( description ="样式-BoardColor2") - private String boardColor2; - @Schema( description ="样式-BoardBorderColor") - private String boardBorderColor; - @Schema( description ="样式-BlockFillColor") - private String blockFillColor; - @Schema( description ="样式-BlockFillColor2") - private String blockFillColor2; - @Schema( description ="样式-BlockFillColor_overLap1") - private String blockFillColor_overLap1; - @Schema( description ="样式-BlockFillColor_overLap2") - private String blockFillColor_overLap2; - @Schema( description ="样式-BlockFillColor_draging") - private String blockFillColor_draging; - @Schema( description ="样式-BlockFillColor_closest") - private String blockFillColor_closest; - @Schema( description ="样式-BlockBorderColor") - private String blockBorderColor; - @Schema( description ="样式-BlockBorderColor2") - private String blockBorderColor2; - @Schema( description ="样式-BlockBorderWidth") - private Integer blockBorderWidth; - @Schema( description ="样式-PoIntegerFillColor_draging") - private String poIntegerFillColor_draging; - @Schema( description ="样式-PoIntegerFillColor_closest") - private String poIntegerFillColor_closest; - @Schema( description ="样式-ModelLineColor") - private String modelLineColor; - @Schema( description ="样式-HoleColor") - private String holeColor; - @Schema( description ="样式-HoleColor2") - private String holeColor2; - @Schema( description ="样式-CutPoInteger_Radius") - private Integer cutPoInteger_Radius; - @Schema( description ="样式-PoIntegerFillColor_cutPoInteger") - private String poIntegerFillColor_cutPoInteger; - @Schema( description ="样式-CutSortID_Radius") - private Integer cutSortID_Radius; - @Schema( description ="样式-CutSortID_font") - private String cutSortID_font; - @Schema( description ="样式-CutSortID_color") - private String cutSortID_color; - @Schema( description ="样式-BlockDirectionShow") - private Boolean blockDirectionShow; - @Schema( description ="样式-BlockNoShow") - private Boolean blockNoShow; - @Schema( description ="样式-BlockNoColor") - private String blockNoColor; - @Schema( description ="样式-BlockNoFont") - private String blockNoFont; - @Schema( description ="样式-BlockSizeShow") - private Boolean blockSizeShow; - @Schema( description ="样式-BlockSizeColor") - private String blockSizeColor; - @Schema( description ="样式-BlockSizeFont") - private String blockSizeFont; - @Schema( description ="样式-ScrapBlockStrokeColor") - private String scrapBlockStrokeColor; - @Schema( description ="样式-ScrapBlockFocusColor") - private String scrapBlockFocusColor; - @Schema( description ="样式-ScrapPlaceBlock") - private String scrapPlaceBlock; + private String managerPassword;*/ @NoArgsConstructor @Data public static class KnifeListBean { @Schema(description = "KnifeID") private Integer knifeID; - @Schema(description = "KnifeName") + @Schema(description = "刀具") private String knifeName; - @Schema(description = "AxleID") + @Schema(description = "刀具类型") + private Integer knifeType; + @Schema(description = "轴号") private Integer axleID; - @Schema(description = "AllowCut") + @Schema(description = "辅助开料") private Boolean allowCut; - @Schema(description = "AllowHole") + @Schema(description = "排钻") private Boolean allowHole; + @Schema(description = "辅助开料") + private Boolean allowHole1; + @Schema(description = "是否运行铣孔") + private Boolean isXiKnif; @Schema(description = "AllowPrevRun") private Boolean allowPrevRun; - @Schema(description = "Diameter") + @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 = "OffsetX") + @Schema(description = "X轴偏移") private Integer offsetX; - @Schema(description = "OffsetY") + @Schema(description = "Y轴偏移") private Integer offsetY; - @Schema(description = "OffsetZ") + @Schema(description = "Z轴偏移") private Integer offsetZ; - @Schema(description = "VKnifAngle") - private Integer vKnifAngle; - @Schema(description = "Speed") + @Schema(description = "速度") private Integer speed; - @Schema(description = "PushDepthIncres") - private String pushDepthIncres; - @Schema(description = "RunCode") - private String runCode; - @Schema(description = "SwitchCode") - private String switchCode; - @Schema(description = "StopCode") - private String stopCode; - @Schema(description = "IsAdvanceHole") - private Boolean isAdvanceHole; - @Schema(description = "RePlaceKnifeID") - private Integer rePlaceKnifeID; - @Schema(description = "AdvanceHoleCode") - private String advanceHoleCode; - @Schema(description = "AdvanceHolePoIntegers") - private List advanceHolePoIntegers; - @Schema(description = "IsAdvanceHoleGroup") - private Boolean isAdvanceHoleGroup; + @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; + } } 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 3e91a29d6..2c7e04a19 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 @@ -1,6 +1,7 @@ package com.cf.imes.module.system.dal.dataobject.machinetemplate; import com.cf.imes.framework.es.core.dal.ESDocument; +import com.cf.imes.module.system.dal.dataobject.machine.CuttingSettingDO; import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; @@ -18,31 +19,29 @@ public class CuttingTemplateMachineDO extends ESDocument { @Schema(description = "开料机台模板id") private Long templateId; - @Schema(description = "默认true,使用机台台面尺寸,false台面尺寸范围内自适应材料尺寸") + @Schema(description = "默认true,按机台尺寸排版/按板材尺寸排版,false台面尺寸范围内自适应材料尺寸") private Boolean useWorkPanelSize; @Schema(description = "默认1220,机台台面宽度(原料板宽)") private Integer boardWidth; @Schema(description = "默认2440,机台台面长度(原料板长)") private Integer boardLength; @Schema(description = "默认3,总修边值") - private Integer boardBorder; - @Schema(description = "默认2,反面修边值") - private Integer boardBorder_B; - @Schema(description = "默认0,修边补偿1(起刀提前,保证板外下刀完整切断)") - private Integer cutBorderOff1; - @Schema(description = "默认0,修边补偿2(收刀延长,保证修边完整切断") - private Integer cutBorderOff2; - @Schema(description = "默认6") - private Integer knifeDia; + private Integer reverseTrimValue; @Schema(description = "默认1,开料刀缝间隙") private Integer cutGap; @Schema(description = "默认0,工位1原点位置") private Integer originPoIntegerPosition; - @Schema(description = "默认0") + @Schema(description = "工作原点Z0基准面") + private String originZ0Position; + @Schema(description = "排版基准点") + private String layoutBenchmark; + @Schema(description = "排版基准点跟随大板定位") + private Boolean useLocator4Place; + @Schema(description = "默认0 短边坐标轴向") private Integer widthSideAxis; - @Schema(description = "默认2") + @Schema(description = "默认2 长边坐标轴向") private Integer lengthSideAxis; - @Schema(description = "默认0,工位1定位点(靠点") + @Schema(description = "默认0,大板定位") private Integer locatorPosition; @Schema(description = "默认0,工位1大板定位坐标(工件坐标原点)X偏移值") private Integer offsetX_Board1; @@ -54,22 +53,33 @@ public class CuttingTemplateMachineDO extends ESDocument { private Integer offsetX_Block; @Schema(description = "默认0,小板定位坐标Y偏移") private Integer offsetY_Block; - @Schema(description = "默认200,最小余料板件(长宽最小值)") + @Schema(description = "默认200,余料生成规则1-两边均大于限定值") private Integer scrapBlockSquare; - @Schema(description = "默认100,余料板件最小宽度") + @Schema(description = "默认100,余料生成规则2-短边最小限定值") private Integer srcapBlockWidthMin; - @Schema(description = "默认600,余料板件最小长度") + @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 = "默认40,安全高度") private Integer freeHeight; - @Schema(description = "默认0,停刀位置X坐标") - private Integer freeLocationX; - @Schema(description = "默认2440,停刀位置Y坐标") - private Integer freeLocationY; + @Schema(description = "总修边值") + private Double totalTrimValue; + /*@Schema(description = "默认0,停刀位置X坐标") + private Integer freeLocationX;*/ +/* @Schema(description = "默认2440,停刀位置Y坐标") + private Integer freeLocationY;*/ @Schema(description = "默认15000,空程速度") private Integer freeSpeed; - @Schema(description = "默认0,起始下刀高度(距板面)") - private Integer workStartHeight; + /* @Schema(description = "默认0,起始下刀高度(距板面)") + private Integer workStartHeight;*/ @Schema(description = "默认3000,下刀速度") private Integer workStartSpeed; @Schema(description = "默认20,斜向下刀水平距离") @@ -77,15 +87,19 @@ public class CuttingTemplateMachineDO extends ESDocument { @Schema(description = "默认2,开料提前") private Integer workPreDistance; @Schema(description = "默认8000,开料速度") - private Integer workSpeed; - @Schema(description = "默认3000,转角切割速度") - private Integer workCornerSpeed; + 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 sameBorderHighSpeed;*/ @Schema(description = "默认0,内转角减速提前距离") private Integer innerCornerDistence; @Schema(description = "默认3000,内转角速度") @@ -102,45 +116,112 @@ public class CuttingTemplateMachineDO extends ESDocument { private Integer modelSpeed; @Schema(description = "默认true,双面加工优先排版") private Boolean allowDoubleHoleFirstSort; - @Schema(description = "默认150,开料优先最小宽度") - private Integer autoSortingMinWidth; + @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 = "默认false,通孔(穿孔)分正反两刀加工(失效?)") - private Boolean tongHoleUseTwoTime; - @Schema(description = "默认false,分刀开料") + @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,分刀深度") + @Schema(description = "默认8,分刀步进深度") private Integer splitDepth; - @Schema(description = "默认false,最小板件分刀开料") - private Boolean limitDouleSplit; - @Schema(description = "默认100,分刀板件宽最小值") + /* @Schema(description = "默认false,最小板件分刀开料") + private Boolean limitDouleSplit;*/ + @Schema(description = "默认100,小板分刀-短边上限") private Integer doubleSplitWidth; - @Schema(description = "默认100,分刀板件长最小值") + @Schema(description = "默认100,小板分刀-长边上限") private Integer doubleSplitLength; - @Schema(description = "默认空,强制分刀小板顺序号,如:1,-1,-2,第一片、最后一片、倒数第二片分刀") - private String splitBlockSeqIds; - @Schema(description = "默认false,使用横竖算法(电子锯)优化,目前无效") - private Boolean useDianZiJuMethod; - @Schema(description = "默认false,") + /* @Schema(description = "默认空,强制分刀小板顺序号,如:1,-1,-2,第一片、最后一片、倒数第二片分刀") + private String splitBlockSeqIds;*/ + /* @Schema(description = "默认false,使用横竖算法(电子锯)优化,目前无效") + private Boolean useDianZiJuMethod;*/ + @Schema(description = "仅加工孔/造型,") private Boolean disposeCutBlock; - @Schema(description = "默认false,旧版本刀库配置(不带轴号、排钻启停使用排钻包启停参数项设置);true,使用新模式刀库配置(支持轴号、组合刀、多轴预启动)。") - private Boolean useNewKnifeModule; - @Schema(description = "默认1,") - private Integer knifeIDForHole; - @Schema(description = "默认1,") - private String knifes4Hole; - @Schema(description = "默认[],造型刀组") - private List modelKnifeGroup; + @Schema(description = "挖穿板内板件优先开料") + private Boolean cutBlockInModelFirst; + @Schema(description = "同刀辅助开料") + private Boolean useSameKnifeToHelpCut; + @Schema(description = "辅助开料偏移") + private Double useSameKnifeToHelpCutGap; + @Schema(description = "辅助开料-短边上限") + private Double useSecondKnifeBlockWidth; + @Schema(description = "辅助开料-长边上限") + private Double useSecondKnifeBlockLength; + @Schema(description = "辅助开料留底厚度") + 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; + private List knifeList; @Schema(description = "默认{0}_{1}_{2},导出zip文件名") private String exportOrderPathName; - @Schema(description = "默认{0} {1},导出NC文件路径") - private String exportBoardPathName; - @Schema(description = "默认{0}_A.nc,正面NC文件名") + @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; @@ -157,18 +238,22 @@ public class CuttingTemplateMachineDO extends ESDocument { @Schema(description = "默认空,小板(补孔)NC文件头") private String ncFileHead_Block; @Schema(description = "默认空,小板(补孔)NC文件尾") - private String ncFileEnd_Block; - @Schema(description = "默认false,矩形板R倒角") + private String ncFileEnd_Block;*/ + @Schema(description = "默认false,矩形板件开料R拐角") private Boolean regularBlockFilletCurve; - @Schema(description = "默认true,非矩形板R倒角") - private Boolean unregularBlockFilletCurve; + /* @Schema(description = "默认true,非矩形板R倒角") + private Boolean unregularBlockFilletCurve;*/ @Schema(description = "默认false,加工圆弧使用IJ指令") private Boolean dealCircleWithIJ; - @Schema(description = "默认false,翻转G2G3") + @Schema(description = "默认false,G2/G3圆弧方向反转") private Boolean isTurnOverG2G3; - @Schema(description = "默认true,导出NC文件注释") - private Boolean allowNCComments; - @Schema(description = "默认false,G代码行尾加结束符") + @Schema(description = "圆弧转多段线加工直线段长度") + 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; @@ -184,21 +269,106 @@ public class CuttingTemplateMachineDO extends ESDocument { private Boolean allowExportDataFile; @Schema(description = "默认false,导出大板dxf文件") private Boolean allowExportBoardDxf; - @Schema(description = "默认false,显示双工位配置") + @Schema(description ="默认false,显示双工位配置") private Boolean showTwoWorkSpace; - @Schema(description = "默认false,显示选择开料刀配置") - private Boolean showChooseCutKnife; - @Schema(description = "默认true,显示开料机工作模式(是否排钻/造型,sc)配置") + @Schema(description ="默认false,显示选择开料刀配置") + private Boolean showChooseCutKnife;*/ + @Schema(description ="默认true,显示开料机工作模式(是否排钻/造型,sc)配置") private Boolean showPriorFacing; - @Schema(description = "默认false,显示自动上料代码配置") + @Schema(description = "双工位") + private Boolean dualWorkstation; + @Schema(description = "自动贴标") + private Boolean showAutoNotePrinter; + @Schema(description = "排版方式") + private Double placeStyle; + @Schema(description = "开料刀路间隙") + private Double cutKniefGap; + @Schema(description = "修边刀路前延伸") + private Double trimmingRouteFrontExtension; + @Schema(description = "修边刀路后延伸") + private Double trimmingRouteBackExtension; + @Schema(description = "最小孔半径") + private Double minR; + @Schema(description = "最浅孔深") + private Double shallowestHoleDepth; + @Schema(description = "允许加载优化结果") + private Boolean allowLoadOptimizationResult; + @Schema(description = "NC小数点位数") + private Double decimalPointPrecision; + @Schema(description = "过滤空行") + private Boolean filterEmptyLines; + @Schema(description = "钻包启动延迟指令") + private String drillStartDelayCommand; + @Schema(description = "预启动提前动作数") + private Double preStartAdvanceActions; + @Schema(description = "正面修边") + private Boolean frontTrimming; + @Schema(description = "NC行前缀") + private String ncLinePrefix; + @Schema(description = "延迟换刀下限动作数") + private Double toolChangeDelayLowerLimitActions; + @Schema(description = "延迟换刀指令") + private String toolChangeDelayCommand; + @Schema(description = "useSimpleCommands") + private Boolean useSimpleCommands; + @Schema(description = "辅助开料延时指令") + private String auxiliaryCuttingDelayCommand; + @Schema(description = "辅助开料延时指令(工位2)") + private String auxiliaryCuttingDelayCommand2; + @Schema(description = "预铣(板件外扩)值") + private Double preMillingValue; + @Schema(description = "挖穿造型斜向下刀长度") + private Double piercingSlopedDownwardLength; + @Schema(description = "造型刀路加工顺序及方向") + private Double modelToolPathOrderAndDirection; + @Schema(description = "造型刀路冗余量") + private Double modelToolPathRedundancy; + @Schema(description = "大板边缘造型范围") + private Double largePlateEdgeModelingRange; + @Schema(description = "造型尽量靠大板边缘") + private Boolean modelCloseToLargePlateEdge; + @Schema(description = "造型靠近/远离边缘作用面") + private Double modelNearFarEdgeActionSurface; + @Schema(description = "造型靠近/远离边缘作用于CNC加工") + private Boolean modelNearFarEdgeCNCProcessing; + @Schema(description = "启用雕刻机正反面加工比例分配") + private Boolean enableEngravingMachineFrontBack; + @Schema(description = "雕刻机正面加工百分比") + private Double engravingFrontProcessingPercentage; + @Schema(description = "雕刻机排钻加工速度") + private Double engravingMachineDrillingSpeed; + @Schema(description = "雕刻机造型加工速度") + private Double engravingMachineModelingSpeed; + @Schema(description = "CNC正面加工百分比") + private Double cNCFrontPercentage; + @Schema(description = "CNC排钻加工速度") + private Double cNCDrillingSpeed; + @Schema(description = "CNC造型加工速度") + 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,显示排钻包起停配置") + @Schema(description ="默认false,显示排钻包起停配置") private Boolean showHoleGroup; - @Schema(description = "自动贴标机配置") + @Schema(description ="自动贴标机配置") private Boolean showAutoNotePrIntegerer; - @Schema(description = "默认false,自定义板标签编号") + @Schema(description ="默认false,自定义板标签编号") private Boolean showCustomBlockNo; - @Schema(description = "默认false,显示可开料不排钻(有CNC/PTP,erp)配置") + @Schema(description ="默认false,显示可开料不排钻(有CNC/PTP,erp)配置") private Boolean showMachine; @Schema(description = "默认false,启用双工位") private Boolean allowDoubleWorkSpace; @@ -242,10 +412,6 @@ public class CuttingTemplateMachineDO extends ESDocument { private List boardKnifeList; @Schema(description = "默认0,加工模式") private Integer isPriorFacing_RoleNum; - @Schema(description = "默认false,替换排钻铣孔") - private Boolean disPloseHoleRole; - @Schema(description = "默认false,") - private Boolean isIgnore_HolingModeling; @Schema(description = "默认true,开料机加工超小板") private Boolean isForceHoling_MultiSide_Minimum; @Schema(description = "默认50,超小板(两边都小于)值") @@ -266,8 +432,6 @@ public class CuttingTemplateMachineDO extends ESDocument { private Boolean isForceHoling_UnRegularBlock; @Schema(description = "默认false,开料机加工孔-有造型的板件") private Boolean isForceHoling_HasModel; - @Schema(description = "默认false,") - private Boolean isIgnore_Modeling; @Schema(description = "默认false,开料机加工全部造型") private Boolean doModel_hasModel; @Schema(description = "默认false,开料机加工异形板件的造型") @@ -288,8 +452,6 @@ public class CuttingTemplateMachineDO extends ESDocument { private Boolean doModel_oneBig; @Schema(description = "默认2434,超长值") private Integer doModel_oneBig_Value; - @Schema(description = "默认false") - private Boolean allowChangeIgnore; @Schema(description = "默认false,开料机加工造型-所有造型") private Boolean isFoceModeling_hasModel; @Schema(description = "默认false,开料机加工造型-有孔的板件") @@ -325,106 +487,9 @@ public class CuttingTemplateMachineDO extends ESDocument { @Schema(description = "默认true,排版优先-双面有孔-孔多面") private Boolean isPriorFacing_DoubleHole_More; @Schema(description = "默认空,自定义排版面规则") - private String isPriorFacing_CustomFunction; - @Schema(description = "默认50,") - private Integer wr6_OverRun_WdthS; - @Schema(description = "默认1220,") - private Integer wr6_OverRun_WdthE; - @Schema(description = "默认120,") - private Integer wr6_OverRun_LengthS; - @Schema(description = "默认2440,") - private Integer wr6_OverRun_LengthE; - @Schema(description = "默认false,") - private Boolean wr6_OverRun_hasThroghModel; - @Schema(description = "默认50,") - private Integer wr6_OverRun_hasThroghModel_r; - @Schema(description = "默认40000,") - private Integer wr6_OverRun_hasThroghModel_size; - @Schema(description = "默认false,") - private Boolean wr6_OverRun_UnRegular; - @Schema(description = "默认50,") - private Integer wr6_OverRun_MaxChamferR; - @Schema(description = "默认100,") - private Integer wr6_OverRun_MaxInnerLength; - @Schema(description = "默认false,") - private Boolean wr6_unModel_all; - @Schema(description = "默认true,") - private Boolean wr6_unModel_isThrogh; - @Schema(description = "默认false,") - private Boolean wr6_unModel_isArc; - @Schema(description = "默认false,") - private Boolean wr6_unModel_checkRadius; - @Schema(description = "默认\\\"\\\",") - private String wr6_unModel_isRadius; - @Schema(description = "默认false,") - private Boolean wr6_unModel_checkName; - @Schema(description = "默认\\\"\\\",") - private String wr6_unModel_isName; - @Schema(description = "默认false,") - private Boolean wr6_unModel_checkDepth; - @Schema(description = "默认\\\"\\\",") - private String wr6_unModel_isDepth; - @Schema(description = "默认true,") - private Boolean wr6_unModel_isVKnifeModel; - @Schema(description = "默认true,") - private Boolean wr6_unModel_is3VModell; - @Schema(description = "默认false") - private Boolean wr6_unModel_isLaChao; - @Schema(description = "默认false,") - private Boolean wr6_unModel_notLaChao; - @Schema(description = "默认50,") - private Integer wr6_laChao_maxWidth; - @Schema(description = "默认100,") - private Integer wr6_lachao_minLength; - @Schema(description = "默认false,") - private Boolean wr6_unHole_all; - @Schema(description = "默认false,") - private Boolean wr6_unHole_checkRadius; - @Schema(description = "") - private String wr6_unHole_isRadius; - @Schema(description = "") - private Boolean wr6_unHole_checkType; - @Schema(description = "") - private String wr6_unHole_isType; - @Schema(description = "") - private Boolean wr6_unHole_checkDepth; - @Schema(description = "") - private String wr6_unHole_isDepth; - @Schema(description = "") - private Boolean wr6_unHole_isNoHoleKnife; - @Schema(description = "") - private Boolean wr6_dragUndo_m2m; - @Schema(description = "") - private Boolean wr6_dragUndo_m2m_2face; - @Schema(description = "") - private Boolean wr6_dragUndo_m2h; - @Schema(description = "") - private Boolean wr6_dragUndo_m2h_2face; - @Schema(description = "") - private Boolean wr6_dragUndo_h2m; - @Schema(description = "") - private Boolean wr6_dragUndo_h2m_2face; - @Schema(description = "") - private Boolean wr6_dragUndo_h2h; - @Schema(description = "") - private Boolean wr6_dragUndo_h2h_2face; - @Schema(description = "") - private Integer wr6_doStyle_1Face; - @Schema(description = "") - private Boolean wr6_doStyle_1Face_hole; - @Schema(description = "") - private Boolean wr6_doStyle_1Face_model; - @Schema(description = "") - private Integer wr6_doStyle_2Face; - @Schema(description = "") - private Boolean wr6_doStyle_2Face_hole; - @Schema(description = "") - private Boolean wr6_doStyle_2Face_model; - @Schema(description = "") - private String wr6_doStyle_2Face_role; - @Schema(description = "") - private String wr6_turnFace_roleSeq; - @Schema(description = "认true,上料代码放文件头前") + private String isPriorFacing_CustomFunction;*/ + + /* @Schema(description = "认true,上料代码放文件头前") private Boolean isLoadBoardBeforeFileHead; @Schema(description = "默认空,上料代码??") private String ncLoadBoard; @@ -462,12 +527,10 @@ public class CuttingTemplateMachineDO extends ESDocument { private Boolean noteOtherExport; @Schema(description = "默认空,自动贴标其他函数") private String noteOtherFun; - @Schema(description = "默认false,启用自定义板件编号") - private Boolean allowBlockNo_Note; @Schema(description = "默认return obj.BlockNo; 自定义板件编号") private String blockNo_Note; - @Schema(description = "默认{0}_{1}_{2}_{3},") - private String boardName; + *//* @Schema(description = "默认{0}_{1}_{2}_{3},") + private String boardName;*//* @Schema(description = "默认10,最小板件宽度") private Integer minBlockWidth; @Schema(description = "默认1,最小排钻孔半径") @@ -505,57 +568,71 @@ public class CuttingTemplateMachineDO extends ESDocument { @Schema(description = "默认值false,穿孔对面打") private Boolean allowOppositeDealChuanHole; @Schema(description = "默认cftech123456789,高级配置密码") - private String managerPassword; - @Schema(description = "默认空,机台备注") - private String remark; - @Schema(description = "WebQueryPageSize") - private Integer webQueryPageSize; - @Schema(description = "ExportRootPath") - private String exportRootPath; - @Schema(description = "AllowSelectExportPath") - private Boolean allowSelectExportPath; - @Schema(description = "AllowExportImage") - private Boolean allowExportImage; - @Schema(description = "ManualSortingCornerWidth") - private Integer manualSortingCornerWidth; - - @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; + private String managerPassword;*/ @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; - private boolean allowCut; - private boolean allowHole; - private boolean allowPrevRun; + @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; - private Integer vKnifAngle; + @Schema(description = "速度") private Integer speed; - private String pushDepthIncres; - private String runCode; - private String switchCode; - private String stopCode; - private boolean isAdvanceHole; - private Integer rePlaceKnifeID; - private String advanceHoleCode; - private List advanceHolePoints; - private boolean isAdvanceHoleGroup; + @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; + } } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machinetemplate/MachineTemplateDO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machinetemplate/MachineTemplateDO.java index 68e1a48ea..b78d3e711 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machinetemplate/MachineTemplateDO.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/dataobject/machinetemplate/MachineTemplateDO.java @@ -32,8 +32,9 @@ public class MachineTemplateDO extends BaseDO { * 是否默认模板 */ private Boolean isDefault; + /** * 标签id */ - private Long labelId; + /*private Long labelId;*/ } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/machine/MachineServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/machine/MachineServiceImpl.java index 785e2af6b..fedb1a053 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/machine/MachineServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/machine/MachineServiceImpl.java @@ -77,6 +77,7 @@ public class MachineServiceImpl implements MachineService { public void updateCutting(CuttingSaveReqVO updateReqVO){ // 校验存在 validateExists(updateReqVO.getId()); + updateReqVO.getMachineSettingDO().setMachineId(updateReqVO.getId()); try { esDocumentService.createByFluentDSL(CUTTING_MACHINE_SETTING, updateReqVO.getMachineSettingDO().getId(), updateReqVO.getMachineSettingDO()); } catch (Exception e) { @@ -160,6 +161,7 @@ public class MachineServiceImpl implements MachineService { public void updateDrill(DrillSaveReqVO updateReqVO) { // 校验存在 validateExists(updateReqVO.getId()); + updateReqVO.getMachineSettingDO().setMachineId(updateReqVO.getId()); try { esDocumentService.createByFluentDSL(DRILL_MACHINE_SETTING, updateReqVO.getMachineSettingDO().getId(), updateReqVO.getMachineSettingDO()); } catch (Exception e) {