From 9282e10873cb96ae64f4ebc864f3827db4408c53 Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Fri, 26 Apr 2024 18:11:13 +0800 Subject: [PATCH 1/3] =?UTF-8?q?refactor:=20=E4=BB=A3=E7=A0=81=E7=94=9F?= =?UTF-8?q?=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/nl/common/utils/ColUtil.java | 8 ++++ .../java/org/nl/common/utils/GenUtil.java | 6 +-- .../org/nl/modules/common/utils/FileUtil.java | 8 ++-- .../generator/CodeGenConfigController.java | 10 +++-- .../generator/CodeGeneratorController.java | 29 ++++++------- .../generator/ICodeGenConfigService.java | 4 +- .../generator/ICodeGeneratorService.java | 26 +++++------- .../generator/dao/CodeColumnConfig.java | 24 ++++++----- .../service/generator/dao/CodeGenConfig.java | 3 +- .../dao/mapper/CodeColumnConfigMapper.java | 21 +++++----- .../service/generator/dto/ColumnInfo.java | 1 + .../impl/CodeGenConfigServiceImpl.java | 4 +- .../impl/CodeGeneratorServiceImpl.java | 6 +-- .../template/generator/admin/Controller.ftl | 11 +++-- .../template/generator/admin/Dto.ftl | 42 +++++++++++++------ .../template/generator/admin/Entity.ftl | 19 ++++----- .../template/generator/admin/ServiceImpl.ftl | 5 ++- .../template/generator/front/index.ftl | 18 ++++---- 18 files changed, 127 insertions(+), 118 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/common/utils/ColUtil.java b/lms/nladmin-system/src/main/java/org/nl/common/utils/ColUtil.java index ad0aa1d1a..50b19c005 100644 --- a/lms/nladmin-system/src/main/java/org/nl/common/utils/ColUtil.java +++ b/lms/nladmin-system/src/main/java/org/nl/common/utils/ColUtil.java @@ -6,6 +6,14 @@ import org.apache.commons.configuration.PropertiesConfiguration; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +/** + *
+ * 工具类 + *
@@ -15,7 +15,6 @@ public interface ICodeGenConfigService extends IService { /** * 根据表名查找 - * * @param tableName * @return */ @@ -23,7 +22,6 @@ public interface ICodeGenConfigService extends IService { /** * 根据表名更新 - * * @param tableName * @param genConfig * @return diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeGeneratorService.java b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeGeneratorService.java index 7ada3d817..2b10b25df 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeGeneratorService.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/ICodeGeneratorService.java @@ -1,11 +1,12 @@ package org.nl.system.service.generator; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.service.IService; import org.nl.common.domain.query.PageQuery; import org.nl.system.service.generator.dao.CodeColumnConfig; +import com.baomidou.mybatisplus.extension.service.IService; import org.nl.system.service.generator.dao.CodeGenConfig; import org.nl.system.service.generator.dto.TablesInfo; +import org.springframework.data.domain.Pageable; import org.springframework.http.ResponseEntity; import org.springframework.scheduling.annotation.Async; @@ -25,16 +26,14 @@ public interface ICodeGeneratorService extends IService { /** * 获得所有的表格信息 - * * @param name * @param pageQuery - * @return + * @return IPage */ IPage getTables(String name, PageQuery pageQuery); /** * 得到数据表的元数据 - * * @param tableName 表名 * @return / */ @@ -42,7 +41,6 @@ public interface ICodeGeneratorService extends IService { /** * 根据表名查询表字段 - * * @param tableName * @return */ @@ -50,36 +48,32 @@ public interface ICodeGeneratorService extends IService { /** * 同步表数据 - * - * @param columnInfos / + * @param columnInfos / * @param columnInfoList / */ @Async void sync(IPage columnInfos, List columnInfoList); /** - * 预览代码 - * + * 视图 * @param byTableName * @param columns - * @return + * @return ResponseEntity */ ResponseEntity preview(CodeGenConfig byTableName, IPage columns); /** * 打包下载 - * - * @param genConfig 配置信息 + * @param genConfig 配置信息 * @param columnsPage 字段信息分页数据 - * @param request / - * @param response / + * @param request / + * @param response / */ void download(CodeGenConfig genConfig, IPage columnsPage, HttpServletRequest request, HttpServletResponse response); /** * 代码生成 - * - * @param genConfig 配置信息 + * @param genConfig 配置信息 * @param columnsPage 字段信息分页数据 */ void generator(CodeGenConfig genConfig, IPage columnsPage); diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeColumnConfig.java b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeColumnConfig.java index 845e6d330..3041172b7 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeColumnConfig.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeColumnConfig.java @@ -5,12 +5,15 @@ import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; + + +import lombok.Builder; import lombok.Data; +import lombok.EqualsAndHashCode; import org.nl.common.utils.GenUtil; import org.nl.system.service.generator.dto.ColumnInfo; -import java.io.Serializable; - /** * * 列的数据信息表 @@ -72,25 +75,24 @@ public class CodeColumnConfig implements Serializable { /** * 创建默认的实体 - * - * @param tableName - * @param config - * @return + * @param tableName / + * @param config / + * @return CodeColumnConfig */ public static CodeColumnConfig createDefault(String tableName, ColumnInfo config) { CodeColumnConfig columnConfig = new CodeColumnConfig(); - columnConfig.setColumn_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + columnConfig.setColumn_id(IdUtil.getSnowflake(1,1).nextIdStr()); columnConfig.setTable_name(tableName); columnConfig.setColumn_name(config.getColumn_name()); columnConfig.setColumn_type(config.getColumn_type()); columnConfig.setKey_type(config.getKey_type()); columnConfig.setExtra(config.getExtra()); columnConfig.setNot_null((ObjectUtil.isNotEmpty(config.getKey_type()) - && ObjectUtil.isNotEmpty(config.getExtra()) + &&ObjectUtil.isNotEmpty(config.getExtra()) && GenUtil.PK.equalsIgnoreCase(config.getKey_type()) - && GenUtil.EXTRA.equalsIgnoreCase(config.getExtra())) - ? false : ObjectUtil.isNotEmpty(config.getNot_null()) ? config.getNot_null() : false); - columnConfig.setRemark(ObjectUtil.isNotEmpty(config.getRemark()) ? config.getRemark() : null); + &&GenUtil.EXTRA.equalsIgnoreCase(config.getExtra())) + ?false:ObjectUtil.isNotEmpty(config.getNot_null())?config.getNot_null():false); + columnConfig.setRemark(ObjectUtil.isNotEmpty(config.getRemark())?config.getRemark():null); columnConfig.setList_show(true); columnConfig.setForm_show(true); return columnConfig; diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java index 69ea26efb..3d438c1a8 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java @@ -2,12 +2,11 @@ package org.nl.system.service.generator.dao; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; -import java.io.Serializable; - /** * * 代码生成配置表 diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java index 2008a91fb..ace02fd9b 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java @@ -1,7 +1,7 @@ package org.nl.system.service.generator.dao.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.nl.system.service.generator.dao.CodeColumnConfig; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.nl.system.service.generator.dto.ColumnInfo; import org.nl.system.service.generator.dto.TablesInfo; @@ -19,25 +19,24 @@ public interface CodeColumnConfigMapper extends BaseMapper { /** * 分页查找 - * - * @param name 表名 - * @return 表信息 + * @param name / + * @param pageSize / + * @param offset / + * @return List */ List getTables(String name, int pageSize, int offset); /** * 分页查询的总数 - * - * @param name 表名 - * @return 表信息 + * @param name + * @return long */ long getTablesTotal(String name); /** - * 获取 - * - * @param tableName 表名 - * @return 列数据 + * 获取字段名称 + * @param tableName + * @return List */ List getTablesByTableName(String tableName); } diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dto/ColumnInfo.java b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dto/ColumnInfo.java index 093ee5b54..055378a93 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dto/ColumnInfo.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dto/ColumnInfo.java @@ -1,5 +1,6 @@ package org.nl.system.service.generator.dto; + import lombok.Data; /** diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java index 42e89a226..7d0f5af1a 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java @@ -40,7 +40,7 @@ public class CodeGenConfigServiceImpl extends ServiceImpl create(@Validated @RequestBody ${className} entity){ + public ResponseEntity create(@Validated @RequestBody ${className} entity){ ${changeClassName}Service.create(entity); return new ResponseEntity<>(HttpStatus.CREATED); } @@ -54,7 +53,7 @@ public class ${className}Controller { //@SaCheckPermission("@el.check('${changeClassName}:del')") @DeleteMapping public ResponseEntity delete(@RequestBody Set ids) { - ${changeClassName}Service.deleteAll(ids); - return new ResponseEntity<>(HttpStatus.OK); + ${changeClassName}Service.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); } } diff --git a/lms/nladmin-system/src/main/resources/template/generator/admin/Dto.ftl b/lms/nladmin-system/src/main/resources/template/generator/admin/Dto.ftl index a17898bdc..6d8e3d288 100644 --- a/lms/nladmin-system/src/main/resources/template/generator/admin/Dto.ftl +++ b/lms/nladmin-system/src/main/resources/template/generator/admin/Dto.ftl @@ -1,16 +1,23 @@ package ${package}.service.dto; +import lombok.Data; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; <#if hasTimestamp> -import java.sql.Timestamp; + import java.sql.Timestamp; + import java.sql.Timestamp; #if> <#if hasBigDecimal> -import java.math.BigDecimal; + import java.math.BigDecimal; + import java.math.BigDecimal; #if> import lombok.Data; import lombok.Builder; import java.io.Serializable; +<#if !auto && pkColumnType = 'Long'> + import com.fasterxml.jackson.databind.annotation.JsonSerialize; + import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +#if> /** * @description / @@ -23,16 +30,27 @@ public class ${className}Dto implements Serializable { <#if columns??> <#list columns as column> - <#if column.remark != ''> - /** ${column.remark} */ - #if> - <#if column.columnKey = 'PRI'> - <#if !auto && pkColumnType = 'Long'> - /** 防止精度丢失 */ - @JsonSerialize(using= ToStringSerializer.class) - #if> - #if> - private ${column.columnType} ${column.changeColumnName}; + <#if column.remark != ''> + /** ${column.remark} */ + #if> + <#if column.columnKey = 'PRI'> + <#if !auto && pkColumnType = 'Long'> + /** 防止精度丢失 */ + @JsonSerialize(using= ToStringSerializer.class) + #if> + #if> + private ${column.columnType} ${column.changeColumnName}; + <#if column.remark != ''> + /** ${column.remark} */ + #if> + <#if column.columnKey = 'PRI'> + <#if !auto && pkColumnType = 'Long'> + /** 防止精度丢失 */ + @JsonSerialize(using= ToStringSerializer.class) + #if> + #if> + private ${column.columnType} ${column.changeColumnName}; #list> #if> } + diff --git a/lms/nladmin-system/src/main/resources/template/generator/admin/Entity.ftl b/lms/nladmin-system/src/main/resources/template/generator/admin/Entity.ftl index bcd8cb208..dfd549a68 100644 --- a/lms/nladmin-system/src/main/resources/template/generator/admin/Entity.ftl +++ b/lms/nladmin-system/src/main/resources/template/generator/admin/Entity.ftl @@ -1,41 +1,40 @@ package ${package}.service.dao; <#if hasPk> -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; + import com.baomidou.mybatisplus.annotation.IdType; + import com.baomidou.mybatisplus.annotation.TableId; + import com.baomidou.mybatisplus.annotation.TableName; #if> -import lombok.Builder; + import lombok.Data; import lombok.EqualsAndHashCode; <#if hasTimestamp> -import java.sql.Timestamp; + import java.sql.Timestamp; #if> <#if hasBigDecimal> -import java.math.BigDecimal; + import java.math.BigDecimal; #if> import java.io.Serializable; /** -* @description 添加'@Builder'注解最好不好添加'@NoArgsConstructor' +* @description / * @author ${author} * @date ${date} **/ @Data -@Builder @EqualsAndHashCode(callSuper = false) @TableName("${tableName}") public class ${className} implements Serializable { - private static final long serialVersionUID = 1L; +private static final long serialVersionUID = 1L; <#if columns??> <#list columns as column> <#if column.columnKey = 'PRI'> @TableId(value = "${column.columnName}", type = <#if auto>IdType.AUTO<#else>IdType.NONE#if>) #if> -<#if column.remark != ''> +<#if column.remark?has_content> /** ${column.remark} */ <#else> /** ${column.changeColumnName} */ diff --git a/lms/nladmin-system/src/main/resources/template/generator/admin/ServiceImpl.ftl b/lms/nladmin-system/src/main/resources/template/generator/admin/ServiceImpl.ftl index 5e504d265..a364dd189 100644 --- a/lms/nladmin-system/src/main/resources/template/generator/admin/ServiceImpl.ftl +++ b/lms/nladmin-system/src/main/resources/template/generator/admin/ServiceImpl.ftl @@ -8,8 +8,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.nl.modules.common.exception.BadRequestException; +import org.nl.config.language.LangProcess; import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; import org.nl.common.utils.SecurityUtils; import ${package}.service.I${className}Service; import ${package}.service.dao.mapper.${className}Mapper; @@ -59,7 +60,7 @@ public class ${className}ServiceImpl extends ServiceImpl<${className}Mapper, ${c @Override public void update(${className} entity) { ${className} dto = ${changeClassName}Mapper.selectById(entity.get${pkChangeColName ? cap_first }()); - if (dto == null) throw new BadRequestException("被删除或无权限,操作失败!"); + if (dto == null) throw new BadRequestException(LangProcess.msg("error_SystemAuthError")); String currentUserId = SecurityUtils.getCurrentUserId(); String nickName = SecurityUtils.getCurrentNickName(); diff --git a/lms/nladmin-system/src/main/resources/template/generator/front/index.ftl b/lms/nladmin-system/src/main/resources/template/generator/front/index.ftl index d793e3022..25600a473 100644 --- a/lms/nladmin-system/src/main/resources/template/generator/front/index.ftl +++ b/lms/nladmin-system/src/main/resources/template/generator/front/index.ftl @@ -9,8 +9,8 @@ <#if queryColumns??> <#list queryColumns as column> <#if column.queryType != 'BetWeen'> - <#if column.remark != ''>${column.remark}<#else>${column.changeColumnName}#if> - + <#if column.remark?has_content>${column.remark}<#else>${column.changeColumnName}#if> + #if> #list> #if> @@ -37,7 +37,7 @@ <#if columns??> <#list columns as column> <#if column.formShow> - prop="${column.changeColumnName}"#if>> + prop="${column.changeColumnName}"#if>> <#if column.formType = 'Input'> <#elseif column.formType = 'Textarea'> @@ -80,15 +80,15 @@ <#list columns as column> <#if column.columnShow> <#if (column.dictName)?? && (column.dictName)!=""> - + {{ dict.label.${column.dictName}[scope.row.${column.changeColumnName}] }} - <#elseif column.columnType != 'Timestamp'> - + <#elseif column.columnType != 'Date'> + <#else> - + {{ parseTime(scope.row.${column.changeColumnName}) }} @@ -152,7 +152,7 @@ export default { <#list isNotNullColumns as column> <#if column.istNotNull> ${column.changeColumnName}: [ - { required: true, message: '<#if column.remark != ''>${column.remark}#if>不能为空', trigger: 'blur' } + { required: true, message: '<#if column.remark?has_content>${column.remark}#if>不能为空', trigger: 'blur' } ]<#if column_has_next>,#if> #if> #list> @@ -162,7 +162,7 @@ export default { <#if queryColumns??> <#list queryColumns as column> <#if column.queryType != 'BetWeen'> - { key: '${column.changeColumnName}', display_name: '<#if column.remark != ''>${column.remark}<#else>${column.changeColumnName}#if>' }<#if column_has_next>,#if> + { key: '${column.changeColumnName}', display_name: '<#if column.remark?has_content>${column.remark}<#else>${column.changeColumnName}#if>' }<#if column_has_next>,#if> #if> #list> #if> From 537295a272225365fd71bd3fa37d19756074a102 Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Sun, 28 Apr 2024 08:53:01 +0800 Subject: [PATCH 2/3] =?UTF-8?q?fix:=20=E5=8F=AA=E5=81=9A=E6=8B=94=E8=BD=B4?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E7=9A=84=E7=BA=B8=E7=AE=A1=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java index db4dd7d88..d9faaa19e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java @@ -296,6 +296,12 @@ public class AutoCallAirShaftTask { param.put("point_code2", empty.getPoint_code()); param.put("vehicle_code", qzzNo); param.put("qzz_no", qzzNo); + // 当前纸管信息 + SlitterTaskUtil.putCurrentPaperSpec(param, list); + // 套管数量 + param.put("casingCount", 0); + // 拔管数量 + param.put("pullCount", list.size()); // hint: 当前分切计划的气涨轴尺寸 param.put("qzz_size", plan.getQzz_size()); param.put("task_type", SlitterEnum.TASK_TYPE.code("穿拔轴缓存<>穿拔轴位")); From 819e8948a05633b32ea6d9b96ed5d773794dae4d Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Mon, 29 Apr 2024 08:43:43 +0800 Subject: [PATCH 3/3] =?UTF-8?q?rev:=20=E5=88=86=E5=88=87=E5=91=BC=E5=8F=AB?= =?UTF-8?q?=E5=A5=97=E8=BD=B4=E4=B8=8D=E5=8C=BA=E5=88=86=E9=94=82=E7=94=B5?= =?UTF-8?q?=E6=A0=87=E7=AE=94=EF=BC=8C=E5=8F=AA=E5=8C=BA=E5=88=86=E6=B0=94?= =?UTF-8?q?=E8=83=80=E8=BD=B4=E5=B0=BA=E5=AF=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/IBstIvtCutpointivtService.java | 7 +- .../service/dao/BstIvtCutpointivt.java | 6 ++ .../dao/mapper/BstIvtCutpointivtMapper.java | 4 +- .../dao/mapper/BstIvtCutpointivtMapper.xml | 13 ++- .../impl/BstIvtCutpointivtServiceImpl.java | 8 +- .../service/IBstIvtShafttubeivtService.java | 4 +- .../service/dao/BstIvtShafttubeivt.java | 3 + .../dao/mapper/BstIvtShafttubeivtMapper.java | 14 ++- .../dao/mapper/BstIvtShafttubeivtMapper.xml | 13 +-- .../impl/BstIvtShafttubeivtServiceImpl.java | 4 +- .../IPdmBiSlittingproductionplanService.java | 3 +- .../PdmBiSlittingproductionplanMapper.java | 2 +- .../PdmBiSlittingproductionplanMapper.xml | 7 +- ...dmBiSlittingproductionplanServiceImpl.java | 4 +- .../slitter/auto/AutoCallAirShaftTask.java | 97 ++++++++++--------- .../mapper/dto/SlitterPlanDistinctDto.java | 8 ++ .../service/impl/SlitterServiceImpl.java | 1 + .../tasks/slitter/util/SlitterTaskUtil.java | 4 +- .../b_lms/bst/ivt/shafttubeivt/index.vue | 2 +- 19 files changed, 121 insertions(+), 83 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/IBstIvtCutpointivtService.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/IBstIvtCutpointivtService.java index 627ee5158..baf9cb4fb 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/IBstIvtCutpointivtService.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/IBstIvtCutpointivtService.java @@ -57,10 +57,10 @@ public interface IBstIvtCutpointivtService extends IService { * 获取同尺寸的气涨轴 * @param type 点位类型:1套轴对接位,2分切缓存位,3分切对接位 * @param size 气涨轴尺寸 - * @param area 区域(0上1下) + * @param generation 代数(4:小,5:大) * @return / */ - List getPointByTypeAndShaftSize(String type, String size, String area); + List getPointByTypeAndShaftSize(String type, String size, String generation); /** * 根据桁架对应的点位编码获取点位实体 @@ -80,8 +80,7 @@ public interface IBstIvtCutpointivtService extends IService { /** * 获取类型1状态3,没任务的点位 * @param location 区域:0上1下 - * @param area:区域:B1 B2 B3 B4 * @return */ - List getAreaNotTaskPointByLocationAreaAndStatus(String location, String area); + List getAreaNotTaskPointByLocationAreaAndStatus(String location); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/BstIvtCutpointivt.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/BstIvtCutpointivt.java index d7eee30a1..68beb862a 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/BstIvtCutpointivt.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/BstIvtCutpointivt.java @@ -1,6 +1,7 @@ package org.nl.b_lms.bst.ivt.cutpointivt.service.dao; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; @@ -84,4 +85,9 @@ public class BstIvtCutpointivt implements Serializable { private String point_status; + @TableField(exist = false) + private String qzz_generation; + @TableField(exist = false) + private String qzz_size; + } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.java index 4f4fa50aa..f1c122218 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.java @@ -13,7 +13,7 @@ public interface BstIvtCutpointivtMapper extends BaseMapper { List getAreaNotTaskPointByStatus(String type, String pointStatus, String area, String sort); - List getPointByTypeAndShaftSize(String type, String size, String area); + List getPointByTypeAndShaftSize(String type, String size, String generation); - List getAreaNotTaskPointByLocationAreaAndStatus(String location, String area); + List getAreaNotTaskPointByLocationAreaAndStatus(String location); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.xml b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.xml index 850de5f8c..e6be015bf 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.xml +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.xml @@ -29,11 +29,14 @@ resultType="org.nl.b_lms.bst.ivt.cutpointivt.service.dao.BstIvtCutpointivt"> SELECT bc.* FROM `bst_ivt_cutpointivt` bc - LEFT JOIN pdm_bi_slittingproductionplan pp ON pp.qzzno = bc.qzz_no1 - OR pp.qzzno = bc.qzz_no2 + LEFT JOIN pdm_bi_slittingproductionplan pp ON pp.qzzno = bc.qzz_no1 + OR pp.qzzno = bc.qzz_no2 + LEFT JOIN st_ivt_cutpointivt sc ON sc.ext_code = pp.resource_name WHERE bc.point_type = #{type} AND pp.qzz_size = #{size} - AND LEFT(pp.resource_name, 2) = #{area} + + AND sc.qzz_generation = #{generation} + AND bc.is_used = '1' AND bc.point_status = '3' AND 0 = (SELECT COUNT(*) @@ -43,9 +46,10 @@ - SELECT DISTINCT bic.* + SELECT DISTINCT bic.*, sc.qzz_generation, p.qzz_size FROM bst_ivt_cutpointivt bic LEFT JOIN pdm_bi_slittingproductionplan p ON p.qzzno = bic.qzz_no1 OR p.qzzno = bic.qzz_no2 + LEFT JOIN st_ivt_cutpointivt sc ON sc.ext_code = p.resource_name WHERE bic.point_type = '1' AND bic.is_used = '1' AND bic.point_status = '3' @@ -57,6 +61,5 @@ OR t.point_code1 = bic.truss_point_code1 oR t.point_code2 = bic.truss_point_code1 OR t.point_code1 = bic.truss_point_code2 oR t.point_code2 = bic.truss_point_code2) ) - AND LEFT(p.resource_name,2) = #{area} diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/impl/BstIvtCutpointivtServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/impl/BstIvtCutpointivtServiceImpl.java index 357c4bdf2..b774b79c8 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/impl/BstIvtCutpointivtServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/impl/BstIvtCutpointivtServiceImpl.java @@ -94,8 +94,8 @@ public class BstIvtCutpointivtServiceImpl extends ServiceImpl getPointByTypeAndShaftSize(String type, String size, String area) { - return bstIvtCutpointivtMapper.getPointByTypeAndShaftSize(type, size, area); + public List getPointByTypeAndShaftSize(String type, String size, String generation) { + return bstIvtCutpointivtMapper.getPointByTypeAndShaftSize(type, size, generation); } @Override @@ -115,7 +115,7 @@ public class BstIvtCutpointivtServiceImpl extends ServiceImpl getAreaNotTaskPointByLocationAreaAndStatus(String location, String area) { - return bstIvtCutpointivtMapper.getAreaNotTaskPointByLocationAreaAndStatus(location, area); + public List getAreaNotTaskPointByLocationAreaAndStatus(String location) { + return bstIvtCutpointivtMapper.getAreaNotTaskPointByLocationAreaAndStatus(location); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/IBstIvtShafttubeivtService.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/IBstIvtShafttubeivtService.java index 27cc5651d..f0ab9b2b9 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/IBstIvtShafttubeivtService.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/IBstIvtShafttubeivtService.java @@ -63,11 +63,11 @@ public interface IBstIvtShafttubeivtService extends IService /** * 获得气胀轴库对应的气涨轴位置 * @param qzzSize 气涨轴尺寸 - * @param specification 标箔、锂电 + * @param pointCode 对应的穿拔轴机 * @param location 位置:上半部分还是下半部分 * @return */ - List getByQzzSize(String qzzSize, String specification, String location); + List getByQzzSize(String qzzSize, String pointCode, String location); /** * 获取没任务的气涨轴缓存位 diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/BstIvtShafttubeivt.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/BstIvtShafttubeivt.java index cbc76de73..cf8c8f38f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/BstIvtShafttubeivt.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/BstIvtShafttubeivt.java @@ -92,4 +92,7 @@ public class BstIvtShafttubeivt implements Serializable { /** 规划 */ private String plan; + /** 关联点位 */ + private String parent_code; + } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.java index 5880ecb9b..b81ce3553 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.java @@ -13,9 +13,21 @@ public interface BstIvtShafttubeivtMapper extends BaseMapper List getAllShaftPointsByConditions(String type, String location, String have); - List getByQzzSize(String qzzSize, String specification, String location); + List getByQzzSize(String qzzSize, String pointCode, String location); + /** + * 获取含有气胀轴的气胀轴暂存位 + * @param qzzSize 气胀轴尺寸 + * @param specification 标箔/锂电 + * @param location 位置(上下) + * @return / + */ List getNotTaskShaftCache(String qzzSize, String specification, String location); + /** + * 获取空气胀轴的气胀轴暂存位 + * @param startPoint 点位信息(包含:尺寸、类型、位置) + * @return / + */ List getNotTaskShaftCacheEmpty(BstIvtShafttubeivt startPoint); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml index 13d272a00..e24dfa711 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml @@ -14,12 +14,13 @@ ) - SELECT - * - FROM - `bst_ivt_shafttubeivt` bsf - WHERE bsf.is_used = '1' AND bsf.qzz_size = #{qzzSize} AND bsf.point_type = '1' - AND bsf.qzz_generation = #{specification} AND bsf.point_location = #{location} + SELECT * + FROM `bst_ivt_shafttubeivt` bsf + WHERE bsf.is_used = '1' + AND bsf.qzz_size = #{qzzSize} + AND bsf.point_type = '1' + AND bsf.point_location = #{location} + AND bsf.parent_code = #{pointCode} diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/impl/BstIvtShafttubeivtServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/impl/BstIvtShafttubeivtServiceImpl.java index fe3a37313..cd42f7a2e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/impl/BstIvtShafttubeivtServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/impl/BstIvtShafttubeivtServiceImpl.java @@ -102,8 +102,8 @@ public class BstIvtShafttubeivtServiceImpl extends ServiceImpl getByQzzSize(String qzzSize, String specification, String location) { - return bstIvtShafttubeivtMapper.getByQzzSize(qzzSize, specification, location); + public List getByQzzSize(String qzzSize, String pointCode, String location) { + return bstIvtShafttubeivtMapper.getByQzzSize(qzzSize, pointCode, location); } @Override diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/IPdmBiSlittingproductionplanService.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/IPdmBiSlittingproductionplanService.java index e8a9c81ea..9ac7a2cfd 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/IPdmBiSlittingproductionplanService.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/IPdmBiSlittingproductionplanService.java @@ -45,10 +45,9 @@ public interface IPdmBiSlittingproductionplanService extends IService getAllCutPlan(String area); + List getAllCutPlan(); /** * 通过气涨轴编码获取分切计划 diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.java index 12689becf..3d00a379c 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.java @@ -12,5 +12,5 @@ import java.util.List; **/ public interface PdmBiSlittingproductionplanMapper extends BaseMapper { - List getAllCutPlan(String area); + List getAllCutPlan(); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.xml b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.xml index 4a55756dd..38b92bc50 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.xml +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.xml @@ -9,6 +9,8 @@ p.parent_container_name, p.split_group, p.up_or_down, + p.qzz_size, + sc.qzz_generation, COALESCE ( count_table.num, 0 ) num, COALESCE ( ct1.cn, 0 ) AS cn, COALESCE ( ct2.cnn, 0 ) AS cnn @@ -58,12 +60,13 @@ AND p.parent_container_name = ct2.parent_container_name AND p.split_group = ct2.split_group AND p.up_or_down ]]> ct2.up_or_down + LEFT JOIN st_ivt_cutpointivt sc + ON sc.ext_code = p.resource_name WHERE p.`status` = '01' AND p.is_child_tz_ok = '0' AND p.is_paper_ok = '1' AND p.is_delete = '0' - AND LEFT ( p.resource_name, 2 ) = #{area} AND p.up_or_down IS NOT NULL AND p.left_or_right IS NOT NULL GROUP BY @@ -71,6 +74,8 @@ p.parent_container_name, p.split_group, p.up_or_down, + p.qzz_size, + sc.qzz_generation, num, cn, cnn diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/impl/PdmBiSlittingproductionplanServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/impl/PdmBiSlittingproductionplanServiceImpl.java index 4da1d8cd7..62baec6cf 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/impl/PdmBiSlittingproductionplanServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/impl/PdmBiSlittingproductionplanServiceImpl.java @@ -77,8 +77,8 @@ public class PdmBiSlittingproductionplanServiceImpl extends ServiceImpl getAllCutPlan(String area) { - return pdmBiSlittingproductionplanMapper.getAllCutPlan(area); + public List getAllCutPlan() { + return pdmBiSlittingproductionplanMapper.getAllCutPlan(); } @Override diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java index d9faaa19e..cfc30eb96 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java @@ -30,9 +30,10 @@ import java.util.List; /** * @Author: lyd - * @Description: 自动任务 呼叫套轴 根据分切计划来呼叫套轴任务 桁架任务 * @Date: 2024/2/1 * @see TrussCallAirShaftTask#createTask(JSONObject) + * @Description: 自动任务 呼叫套轴 根据分切计划来呼叫套轴任务 桁架任务 + * 注:内包间只是区分气胀轴大小(即代数),不需要区分锂电/标箔 */ @Slf4j @Component @@ -57,34 +58,21 @@ public class AutoCallAirShaftTask { * 并根据计划来决定是进行套轴还是拔轴操作。如果需要套轴,它会寻找合适的套轴位置,并且在没有合适位置时会触发滚条气涨轴的操作。 * 同时,该方法也会更新相关的分切计划状态。 * 套拔轴缓存位满了、没有分切计划,则触发自动创建套拔轴任务 + * update: 24/04/28 内包间只是区分气胀轴大小(即代数),不需要区分锂电/标箔 */ @Transactional(rollbackFor = Exception.class) public void run() { // 1、获取空的插拔轴位(无任务) List emptyPoints = bstIvtShafttubeivtService.getAllShaftPointsByConditions("2","0","0"); emptyPoints.forEach(empty -> { - // 标箔:1,锂电:2 + // 标箔:1,锂电:2 改:大小:4代5代 String specification = empty.getQzz_generation(); String location = empty.getPoint_location(); - String area; - if (SlitterConstant.SLITTER_STANDARD_FOIL.equals(specification)) { - if (SlitterConstant.SLITTER_AREA_UP.equals(location)) { - area = "B2"; - } else { - area = "B4"; - } - } else { - if (SlitterConstant.SLITTER_AREA_UP.equals(location)) { - area = "B1"; - } else { - area = "B3"; - } - } - // 2、获取分切计划数据,hint: 根据标箔锂电区分区域 - List plans = slittingproductionplanService.getAllCutPlan(area); + // 2、获取分切计划数据 + List plans = slittingproductionplanService.getAllCutPlan(); if (plans.size() == 0) { // 如果不需要套轴,就只做拔轴 - makePullShaft(empty, area); + makePullShaft(empty, specification); return; } // 查看套轴对接位是否满了 @@ -92,26 +80,35 @@ public class AutoCallAirShaftTask { // 如果满了就只做拔轴 if (emptyShaftPoint.size() == 0) { // 如果不需要套轴,就只做拔轴 - makePullShaft(empty, area); + makePullShaft(empty, specification); + return; + } + // 获取一个分切计划的Dto。如果是6寸,可以直接使用、如果是3寸,需要判断当前位置是否满足 + SlitterPlanDistinctDto planDto = plans.stream() + .filter(planD -> "6".equals(planD.getQzz_size()) || + ("3".equals(planD.getQzz_size()) && specification.equals(planD.getQzz_generation()))) + .findFirst() + .orElse(null); + if (planDto == null) { return; } - // 获取一个分切计划的Dto。一根轴可能有两个分切计划 - SlitterPlanDistinctDto planDto = plans.get(0); // 获取分切计划dto中对应的需要套轴的分切计划 最多两个计划 List needPlans = slittingproductionplanService.list(new LambdaQueryWrapper() .eq(PdmBiSlittingproductionplan::getResource_name, planDto.getResource_name()) .eq(PdmBiSlittingproductionplan::getParent_container_name, planDto.getParent_container_name()) .eq(PdmBiSlittingproductionplan::getUp_or_down, planDto.getUp_or_down()) + .eq(PdmBiSlittingproductionplan::getSplit_group, planDto.getSplit_group()) .eq(PdmBiSlittingproductionplan::getIs_delete, SlitterConstant.SLITTER_NO) .eq(PdmBiSlittingproductionplan::getIs_paper_ok, SlitterConstant.SLITTER_YES)); // 获取其中一条 PdmBiSlittingproductionplan needPlan = needPlans.get(0); String qzzSize = needPlan.getQzz_size(); - // 从套轴对接位获取相同气涨轴大小 (同标箔或者锂电分开) - List qzzPoint = bcutpointivtService.getPointByTypeAndShaftSize("1", qzzSize, area); + // 从套轴对接位获取相同气涨轴大小 + // update: 不需要(同标箔或者锂电分开) + List qzzPoint = bcutpointivtService.getPointByTypeAndShaftSize("1", qzzSize, specification); if (qzzPoint.size() == 0) { // 调用ACS滚条气涨轴下来 - toAcsOutShaft(qzzSize, specification, location, empty); + toAcsOutShaft(qzzSize, location, empty); // 保存所需要的分切计划数据到点位上(套轴对接位)更新分切计划 saveCutPlanMessage(empty, needPlans, qzzSize); return; @@ -121,7 +118,7 @@ public class AutoCallAirShaftTask { if (ObjectUtil.isEmpty(startPoint)) { // 如果不存在,则发起信号滚气涨轴 // 调用ACS滚条气涨轴下来 - toAcsOutShaft(qzzSize, specification, location, empty); + toAcsOutShaft(qzzSize, location, empty); // 保存所需要的分切计划数据到点位上(套轴对接位)更新分切计划 saveCutPlanMessage(empty, needPlans, qzzSize); return; @@ -172,41 +169,36 @@ public class AutoCallAirShaftTask { /** * 获取对应的气胀轴库1 * @param qzzSize 气涨轴尺寸 - * @param specification 标箔、锂电(1,2) * @param location 位置:上半部分还是下半部分 * @param empty 套拔轴点位 */ - private void toAcsOutShaft(String qzzSize, String specification, String location, BstIvtShafttubeivt empty) { + private void toAcsOutShaft(String qzzSize, String location, BstIvtShafttubeivt empty) { // 需要区分上下 - List shafttubeivts = bstIvtShafttubeivtService.getByQzzSize(qzzSize, specification, location); + List shafttubeivts = bstIvtShafttubeivtService.getByQzzSize(qzzSize, empty.getPoint_code(), location); if (shafttubeivts.size() == 0) { throw new BadRequestException("气胀轴库找不到[" + qzzSize + "]规格的气涨轴"); } BstIvtShafttubeivt shafttubeivt = shafttubeivts.get(0); // todo: 访问acs判断有无气涨轴 - boolean flag = true; - if (!flag) { - // 气涨轴库没有对应的气涨轴,就到气涨轴暂存区获取 - toCreatShaftCacheTask(qzzSize, specification, location, empty); - } else { - JSONArray acsParam = new JSONArray(); - JSONObject acsQzz = new JSONObject(); - acsQzz.put("device_code", shafttubeivt.getPoint_code()); - acsQzz.put("code", "to_command"); - acsQzz.put("value", "1"); - acsQzz.put("product_area", SlitterConstant.SLITTER_TASK_AREA); - acsParam.add(acsQzz); - wmsToAcsService.action(acsParam); - } + JSONArray acsParam = new JSONArray(); + JSONObject acsQzz = new JSONObject(); + acsQzz.put("device_code", shafttubeivt.getPoint_code()); + acsQzz.put("code", "to_command"); + acsQzz.put("value", "1"); + acsQzz.put("product_area", SlitterConstant.SLITTER_TASK_AREA); + acsParam.add(acsQzz); + wmsToAcsService.action(acsParam); } /** + * todo: 预留 * 创建气涨轴缓存的桁架任务 * @param qzzSize 气涨轴尺寸 * @param specification 标箔、锂电(1,2) * @param location 位置:上半部分还是下半部分 * @param empty 套拔轴点位 */ + @Deprecated private void toCreatShaftCacheTask(String qzzSize, String specification, String location, BstIvtShafttubeivt empty) { // 获取气涨轴缓存没有任务的点位 List shafttubeivts = bstIvtShafttubeivtService.getNotTaskShaftCache(qzzSize, specification, location); @@ -270,16 +262,25 @@ public class AutoCallAirShaftTask { } /** - * 不需要套轴,就只做拔轴(区分标箔、锂电) + * 不需要套轴,就只做拔轴 + * update: 不需要(区分标箔、锂电) * @param empty 空的插拔轴点位 - * @param area 区域 + * @param specification 代数(4、5) */ - private void makePullShaft(BstIvtShafttubeivt empty, String area) { - List notTaskPoints = bcutpointivtService.getAreaNotTaskPointByLocationAreaAndStatus(empty.getPoint_location(), area); + private void makePullShaft(BstIvtShafttubeivt empty, String specification) { + List notTaskPoints = bcutpointivtService.getAreaNotTaskPointByLocationAreaAndStatus(empty.getPoint_location()); if (notTaskPoints.size() == 0) { return; } - BstIvtCutpointivt cutpointivt = notTaskPoints.get(0); + // 筛选一个满足的位置:3寸:看代数4/5;6寸直接 + BstIvtCutpointivt cutpointivt = notTaskPoints.stream() + .filter(cut -> "6".equals(cut.getQzz_size()) || + ("3".equals(cut.getQzz_size()) && specification.equals(cut.getQzz_generation()))) + .findFirst() + .orElse(null); + if (cutpointivt == null) { + return; + } String pointCode1 = ObjectUtil.isNotEmpty(cutpointivt.getQzz_no1()) ? cutpointivt.getTruss_point_code1() : cutpointivt.getTruss_point_code2(); String qzzNo = ObjectUtil.isNotEmpty(cutpointivt.getQzz_no1()) ? cutpointivt.getQzz_no1() : cutpointivt.getQzz_no2(); // 获取对应的分切计划 diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/mapper/dto/SlitterPlanDistinctDto.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/mapper/dto/SlitterPlanDistinctDto.java index 3ee6a5e12..4d112329c 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/mapper/dto/SlitterPlanDistinctDto.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/mapper/dto/SlitterPlanDistinctDto.java @@ -29,4 +29,12 @@ public class SlitterPlanDistinctDto { * 数量 */ private String num; + /** + * 气胀轴尺寸 + */ + private String qzz_size; + /** + * 气胀轴代数 + */ + private String qzz_generation; } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java index 95fb37714..9ad2d433f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java @@ -132,6 +132,7 @@ public class SlitterServiceImpl implements SlitterService { if (ObjectUtil.isEmpty(CBJ.getTube_code1()) && ObjectUtil.isEmpty(CBJ.getTube_code2())) { // 清空 CBJ.setHave_qzz(SlitterConstant.SLITTER_NO); + CBJ.setQzz_size(""); TaskUtils.updateOptMessageByBShaftPoint(CBJ); shafttubeivtService.updateById(CBJ); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java index 550d3e2fb..2b59ae5c2 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java @@ -139,10 +139,10 @@ public class SlitterTaskUtil { param.put("currentLeftSpec", SlitterTaskUtil.getPaperTubeInformation(plan)); } else { if (SlitterConstant.SLITTER_TYPE_PAPER.equals(plan.getPaper_tube_or_FRP())) { - param.put("currentRight", plan.getPaper_tube_model()); + param.put("currentRight", plan.getPaper_tube_material()); param.put("currentRightSize", plan.getPaper_tube_model().split("\\|")[2].charAt(0)); } else { - param.put("currentRight", plan.getFRP_model()); + param.put("currentRight", plan.getFRP_material()); param.put("currentRightSize", plan.getFRP_model().split("\\|")[2].charAt(0)); } param.put("currentLeftSpec", SlitterTaskUtil.getPaperTubeInformation(plan)); diff --git a/lms/nladmin-ui/src/views/b_lms/bst/ivt/shafttubeivt/index.vue b/lms/nladmin-ui/src/views/b_lms/bst/ivt/shafttubeivt/index.vue index a2ad1fdd9..db4e41101 100644 --- a/lms/nladmin-ui/src/views/b_lms/bst/ivt/shafttubeivt/index.vue +++ b/lms/nladmin-ui/src/views/b_lms/bst/ivt/shafttubeivt/index.vue @@ -147,7 +147,7 @@ - +
* 列的数据信息表 @@ -72,25 +75,24 @@ public class CodeColumnConfig implements Serializable { /** * 创建默认的实体 - * - * @param tableName - * @param config - * @return + * @param tableName / + * @param config / + * @return CodeColumnConfig */ public static CodeColumnConfig createDefault(String tableName, ColumnInfo config) { CodeColumnConfig columnConfig = new CodeColumnConfig(); - columnConfig.setColumn_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + columnConfig.setColumn_id(IdUtil.getSnowflake(1,1).nextIdStr()); columnConfig.setTable_name(tableName); columnConfig.setColumn_name(config.getColumn_name()); columnConfig.setColumn_type(config.getColumn_type()); columnConfig.setKey_type(config.getKey_type()); columnConfig.setExtra(config.getExtra()); columnConfig.setNot_null((ObjectUtil.isNotEmpty(config.getKey_type()) - && ObjectUtil.isNotEmpty(config.getExtra()) + &&ObjectUtil.isNotEmpty(config.getExtra()) && GenUtil.PK.equalsIgnoreCase(config.getKey_type()) - && GenUtil.EXTRA.equalsIgnoreCase(config.getExtra())) - ? false : ObjectUtil.isNotEmpty(config.getNot_null()) ? config.getNot_null() : false); - columnConfig.setRemark(ObjectUtil.isNotEmpty(config.getRemark()) ? config.getRemark() : null); + &&GenUtil.EXTRA.equalsIgnoreCase(config.getExtra())) + ?false:ObjectUtil.isNotEmpty(config.getNot_null())?config.getNot_null():false); + columnConfig.setRemark(ObjectUtil.isNotEmpty(config.getRemark())?config.getRemark():null); columnConfig.setList_show(true); columnConfig.setForm_show(true); return columnConfig; diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java index 69ea26efb..3d438c1a8 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/CodeGenConfig.java @@ -2,12 +2,11 @@ package org.nl.system.service.generator.dao; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; -import java.io.Serializable; - /** *
* 代码生成配置表 diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java index 2008a91fb..ace02fd9b 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dao/mapper/CodeColumnConfigMapper.java @@ -1,7 +1,7 @@ package org.nl.system.service.generator.dao.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.nl.system.service.generator.dao.CodeColumnConfig; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.nl.system.service.generator.dto.ColumnInfo; import org.nl.system.service.generator.dto.TablesInfo; @@ -19,25 +19,24 @@ public interface CodeColumnConfigMapper extends BaseMapper { /** * 分页查找 - * - * @param name 表名 - * @return 表信息 + * @param name / + * @param pageSize / + * @param offset / + * @return List */ List getTables(String name, int pageSize, int offset); /** * 分页查询的总数 - * - * @param name 表名 - * @return 表信息 + * @param name + * @return long */ long getTablesTotal(String name); /** - * 获取 - * - * @param tableName 表名 - * @return 列数据 + * 获取字段名称 + * @param tableName + * @return List */ List getTablesByTableName(String tableName); } diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dto/ColumnInfo.java b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dto/ColumnInfo.java index 093ee5b54..055378a93 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dto/ColumnInfo.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/dto/ColumnInfo.java @@ -1,5 +1,6 @@ package org.nl.system.service.generator.dto; + import lombok.Data; /** diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java index 42e89a226..7d0f5af1a 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/generator/impl/CodeGenConfigServiceImpl.java @@ -40,7 +40,7 @@ public class CodeGenConfigServiceImpl extends ServiceImpl create(@Validated @RequestBody ${className} entity){ + public ResponseEntity create(@Validated @RequestBody ${className} entity){ ${changeClassName}Service.create(entity); return new ResponseEntity<>(HttpStatus.CREATED); } @@ -54,7 +53,7 @@ public class ${className}Controller { //@SaCheckPermission("@el.check('${changeClassName}:del')") @DeleteMapping public ResponseEntity delete(@RequestBody Set ids) { - ${changeClassName}Service.deleteAll(ids); - return new ResponseEntity<>(HttpStatus.OK); + ${changeClassName}Service.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); } } diff --git a/lms/nladmin-system/src/main/resources/template/generator/admin/Dto.ftl b/lms/nladmin-system/src/main/resources/template/generator/admin/Dto.ftl index a17898bdc..6d8e3d288 100644 --- a/lms/nladmin-system/src/main/resources/template/generator/admin/Dto.ftl +++ b/lms/nladmin-system/src/main/resources/template/generator/admin/Dto.ftl @@ -1,16 +1,23 @@ package ${package}.service.dto; +import lombok.Data; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; <#if hasTimestamp> -import java.sql.Timestamp; + import java.sql.Timestamp; + import java.sql.Timestamp; #if> <#if hasBigDecimal> -import java.math.BigDecimal; + import java.math.BigDecimal; + import java.math.BigDecimal; #if> import lombok.Data; import lombok.Builder; import java.io.Serializable; +<#if !auto && pkColumnType = 'Long'> + import com.fasterxml.jackson.databind.annotation.JsonSerialize; + import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +#if> /** * @description / @@ -23,16 +30,27 @@ public class ${className}Dto implements Serializable { <#if columns??> <#list columns as column> - <#if column.remark != ''> - /** ${column.remark} */ - #if> - <#if column.columnKey = 'PRI'> - <#if !auto && pkColumnType = 'Long'> - /** 防止精度丢失 */ - @JsonSerialize(using= ToStringSerializer.class) - #if> - #if> - private ${column.columnType} ${column.changeColumnName}; + <#if column.remark != ''> + /** ${column.remark} */ + #if> + <#if column.columnKey = 'PRI'> + <#if !auto && pkColumnType = 'Long'> + /** 防止精度丢失 */ + @JsonSerialize(using= ToStringSerializer.class) + #if> + #if> + private ${column.columnType} ${column.changeColumnName}; + <#if column.remark != ''> + /** ${column.remark} */ + #if> + <#if column.columnKey = 'PRI'> + <#if !auto && pkColumnType = 'Long'> + /** 防止精度丢失 */ + @JsonSerialize(using= ToStringSerializer.class) + #if> + #if> + private ${column.columnType} ${column.changeColumnName}; #list> #if> } + diff --git a/lms/nladmin-system/src/main/resources/template/generator/admin/Entity.ftl b/lms/nladmin-system/src/main/resources/template/generator/admin/Entity.ftl index bcd8cb208..dfd549a68 100644 --- a/lms/nladmin-system/src/main/resources/template/generator/admin/Entity.ftl +++ b/lms/nladmin-system/src/main/resources/template/generator/admin/Entity.ftl @@ -1,41 +1,40 @@ package ${package}.service.dao; <#if hasPk> -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; + import com.baomidou.mybatisplus.annotation.IdType; + import com.baomidou.mybatisplus.annotation.TableId; + import com.baomidou.mybatisplus.annotation.TableName; #if> -import lombok.Builder; + import lombok.Data; import lombok.EqualsAndHashCode; <#if hasTimestamp> -import java.sql.Timestamp; + import java.sql.Timestamp; #if> <#if hasBigDecimal> -import java.math.BigDecimal; + import java.math.BigDecimal; #if> import java.io.Serializable; /** -* @description 添加'@Builder'注解最好不好添加'@NoArgsConstructor' +* @description / * @author ${author} * @date ${date} **/ @Data -@Builder @EqualsAndHashCode(callSuper = false) @TableName("${tableName}") public class ${className} implements Serializable { - private static final long serialVersionUID = 1L; +private static final long serialVersionUID = 1L; <#if columns??> <#list columns as column> <#if column.columnKey = 'PRI'> @TableId(value = "${column.columnName}", type = <#if auto>IdType.AUTO<#else>IdType.NONE#if>) #if> -<#if column.remark != ''> +<#if column.remark?has_content> /** ${column.remark} */ <#else> /** ${column.changeColumnName} */ diff --git a/lms/nladmin-system/src/main/resources/template/generator/admin/ServiceImpl.ftl b/lms/nladmin-system/src/main/resources/template/generator/admin/ServiceImpl.ftl index 5e504d265..a364dd189 100644 --- a/lms/nladmin-system/src/main/resources/template/generator/admin/ServiceImpl.ftl +++ b/lms/nladmin-system/src/main/resources/template/generator/admin/ServiceImpl.ftl @@ -8,8 +8,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.nl.modules.common.exception.BadRequestException; +import org.nl.config.language.LangProcess; import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; import org.nl.common.utils.SecurityUtils; import ${package}.service.I${className}Service; import ${package}.service.dao.mapper.${className}Mapper; @@ -59,7 +60,7 @@ public class ${className}ServiceImpl extends ServiceImpl<${className}Mapper, ${c @Override public void update(${className} entity) { ${className} dto = ${changeClassName}Mapper.selectById(entity.get${pkChangeColName ? cap_first }()); - if (dto == null) throw new BadRequestException("被删除或无权限,操作失败!"); + if (dto == null) throw new BadRequestException(LangProcess.msg("error_SystemAuthError")); String currentUserId = SecurityUtils.getCurrentUserId(); String nickName = SecurityUtils.getCurrentNickName(); diff --git a/lms/nladmin-system/src/main/resources/template/generator/front/index.ftl b/lms/nladmin-system/src/main/resources/template/generator/front/index.ftl index d793e3022..25600a473 100644 --- a/lms/nladmin-system/src/main/resources/template/generator/front/index.ftl +++ b/lms/nladmin-system/src/main/resources/template/generator/front/index.ftl @@ -9,8 +9,8 @@ <#if queryColumns??> <#list queryColumns as column> <#if column.queryType != 'BetWeen'> - <#if column.remark != ''>${column.remark}<#else>${column.changeColumnName}#if> - + <#if column.remark?has_content>${column.remark}<#else>${column.changeColumnName}#if> + #if> #list> #if> @@ -37,7 +37,7 @@ <#if columns??> <#list columns as column> <#if column.formShow> - prop="${column.changeColumnName}"#if>> + prop="${column.changeColumnName}"#if>> <#if column.formType = 'Input'> <#elseif column.formType = 'Textarea'> @@ -80,15 +80,15 @@ <#list columns as column> <#if column.columnShow> <#if (column.dictName)?? && (column.dictName)!=""> - + {{ dict.label.${column.dictName}[scope.row.${column.changeColumnName}] }} - <#elseif column.columnType != 'Timestamp'> - + <#elseif column.columnType != 'Date'> + <#else> - + {{ parseTime(scope.row.${column.changeColumnName}) }} @@ -152,7 +152,7 @@ export default { <#list isNotNullColumns as column> <#if column.istNotNull> ${column.changeColumnName}: [ - { required: true, message: '<#if column.remark != ''>${column.remark}#if>不能为空', trigger: 'blur' } + { required: true, message: '<#if column.remark?has_content>${column.remark}#if>不能为空', trigger: 'blur' } ]<#if column_has_next>,#if> #if> #list> @@ -162,7 +162,7 @@ export default { <#if queryColumns??> <#list queryColumns as column> <#if column.queryType != 'BetWeen'> - { key: '${column.changeColumnName}', display_name: '<#if column.remark != ''>${column.remark}<#else>${column.changeColumnName}#if>' }<#if column_has_next>,#if> + { key: '${column.changeColumnName}', display_name: '<#if column.remark?has_content>${column.remark}<#else>${column.changeColumnName}#if>' }<#if column_has_next>,#if> #if> #list> #if> From 537295a272225365fd71bd3fa37d19756074a102 Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Sun, 28 Apr 2024 08:53:01 +0800 Subject: [PATCH 2/3] =?UTF-8?q?fix:=20=E5=8F=AA=E5=81=9A=E6=8B=94=E8=BD=B4?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E7=9A=84=E7=BA=B8=E7=AE=A1=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java index db4dd7d88..d9faaa19e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java @@ -296,6 +296,12 @@ public class AutoCallAirShaftTask { param.put("point_code2", empty.getPoint_code()); param.put("vehicle_code", qzzNo); param.put("qzz_no", qzzNo); + // 当前纸管信息 + SlitterTaskUtil.putCurrentPaperSpec(param, list); + // 套管数量 + param.put("casingCount", 0); + // 拔管数量 + param.put("pullCount", list.size()); // hint: 当前分切计划的气涨轴尺寸 param.put("qzz_size", plan.getQzz_size()); param.put("task_type", SlitterEnum.TASK_TYPE.code("穿拔轴缓存<>穿拔轴位")); From 819e8948a05633b32ea6d9b96ed5d773794dae4d Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Mon, 29 Apr 2024 08:43:43 +0800 Subject: [PATCH 3/3] =?UTF-8?q?rev:=20=E5=88=86=E5=88=87=E5=91=BC=E5=8F=AB?= =?UTF-8?q?=E5=A5=97=E8=BD=B4=E4=B8=8D=E5=8C=BA=E5=88=86=E9=94=82=E7=94=B5?= =?UTF-8?q?=E6=A0=87=E7=AE=94=EF=BC=8C=E5=8F=AA=E5=8C=BA=E5=88=86=E6=B0=94?= =?UTF-8?q?=E8=83=80=E8=BD=B4=E5=B0=BA=E5=AF=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/IBstIvtCutpointivtService.java | 7 +- .../service/dao/BstIvtCutpointivt.java | 6 ++ .../dao/mapper/BstIvtCutpointivtMapper.java | 4 +- .../dao/mapper/BstIvtCutpointivtMapper.xml | 13 ++- .../impl/BstIvtCutpointivtServiceImpl.java | 8 +- .../service/IBstIvtShafttubeivtService.java | 4 +- .../service/dao/BstIvtShafttubeivt.java | 3 + .../dao/mapper/BstIvtShafttubeivtMapper.java | 14 ++- .../dao/mapper/BstIvtShafttubeivtMapper.xml | 13 +-- .../impl/BstIvtShafttubeivtServiceImpl.java | 4 +- .../IPdmBiSlittingproductionplanService.java | 3 +- .../PdmBiSlittingproductionplanMapper.java | 2 +- .../PdmBiSlittingproductionplanMapper.xml | 7 +- ...dmBiSlittingproductionplanServiceImpl.java | 4 +- .../slitter/auto/AutoCallAirShaftTask.java | 97 ++++++++++--------- .../mapper/dto/SlitterPlanDistinctDto.java | 8 ++ .../service/impl/SlitterServiceImpl.java | 1 + .../tasks/slitter/util/SlitterTaskUtil.java | 4 +- .../b_lms/bst/ivt/shafttubeivt/index.vue | 2 +- 19 files changed, 121 insertions(+), 83 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/IBstIvtCutpointivtService.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/IBstIvtCutpointivtService.java index 627ee5158..baf9cb4fb 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/IBstIvtCutpointivtService.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/IBstIvtCutpointivtService.java @@ -57,10 +57,10 @@ public interface IBstIvtCutpointivtService extends IService { * 获取同尺寸的气涨轴 * @param type 点位类型:1套轴对接位,2分切缓存位,3分切对接位 * @param size 气涨轴尺寸 - * @param area 区域(0上1下) + * @param generation 代数(4:小,5:大) * @return / */ - List getPointByTypeAndShaftSize(String type, String size, String area); + List getPointByTypeAndShaftSize(String type, String size, String generation); /** * 根据桁架对应的点位编码获取点位实体 @@ -80,8 +80,7 @@ public interface IBstIvtCutpointivtService extends IService { /** * 获取类型1状态3,没任务的点位 * @param location 区域:0上1下 - * @param area:区域:B1 B2 B3 B4 * @return */ - List getAreaNotTaskPointByLocationAreaAndStatus(String location, String area); + List getAreaNotTaskPointByLocationAreaAndStatus(String location); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/BstIvtCutpointivt.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/BstIvtCutpointivt.java index d7eee30a1..68beb862a 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/BstIvtCutpointivt.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/BstIvtCutpointivt.java @@ -1,6 +1,7 @@ package org.nl.b_lms.bst.ivt.cutpointivt.service.dao; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; @@ -84,4 +85,9 @@ public class BstIvtCutpointivt implements Serializable { private String point_status; + @TableField(exist = false) + private String qzz_generation; + @TableField(exist = false) + private String qzz_size; + } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.java index 4f4fa50aa..f1c122218 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.java @@ -13,7 +13,7 @@ public interface BstIvtCutpointivtMapper extends BaseMapper { List getAreaNotTaskPointByStatus(String type, String pointStatus, String area, String sort); - List getPointByTypeAndShaftSize(String type, String size, String area); + List getPointByTypeAndShaftSize(String type, String size, String generation); - List getAreaNotTaskPointByLocationAreaAndStatus(String location, String area); + List getAreaNotTaskPointByLocationAreaAndStatus(String location); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.xml b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.xml index 850de5f8c..e6be015bf 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.xml +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/dao/mapper/BstIvtCutpointivtMapper.xml @@ -29,11 +29,14 @@ resultType="org.nl.b_lms.bst.ivt.cutpointivt.service.dao.BstIvtCutpointivt"> SELECT bc.* FROM `bst_ivt_cutpointivt` bc - LEFT JOIN pdm_bi_slittingproductionplan pp ON pp.qzzno = bc.qzz_no1 - OR pp.qzzno = bc.qzz_no2 + LEFT JOIN pdm_bi_slittingproductionplan pp ON pp.qzzno = bc.qzz_no1 + OR pp.qzzno = bc.qzz_no2 + LEFT JOIN st_ivt_cutpointivt sc ON sc.ext_code = pp.resource_name WHERE bc.point_type = #{type} AND pp.qzz_size = #{size} - AND LEFT(pp.resource_name, 2) = #{area} + + AND sc.qzz_generation = #{generation} + AND bc.is_used = '1' AND bc.point_status = '3' AND 0 = (SELECT COUNT(*) @@ -43,9 +46,10 @@ - SELECT DISTINCT bic.* + SELECT DISTINCT bic.*, sc.qzz_generation, p.qzz_size FROM bst_ivt_cutpointivt bic LEFT JOIN pdm_bi_slittingproductionplan p ON p.qzzno = bic.qzz_no1 OR p.qzzno = bic.qzz_no2 + LEFT JOIN st_ivt_cutpointivt sc ON sc.ext_code = p.resource_name WHERE bic.point_type = '1' AND bic.is_used = '1' AND bic.point_status = '3' @@ -57,6 +61,5 @@ OR t.point_code1 = bic.truss_point_code1 oR t.point_code2 = bic.truss_point_code1 OR t.point_code1 = bic.truss_point_code2 oR t.point_code2 = bic.truss_point_code2) ) - AND LEFT(p.resource_name,2) = #{area} diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/impl/BstIvtCutpointivtServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/impl/BstIvtCutpointivtServiceImpl.java index 357c4bdf2..b774b79c8 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/impl/BstIvtCutpointivtServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/cutpointivt/service/impl/BstIvtCutpointivtServiceImpl.java @@ -94,8 +94,8 @@ public class BstIvtCutpointivtServiceImpl extends ServiceImpl getPointByTypeAndShaftSize(String type, String size, String area) { - return bstIvtCutpointivtMapper.getPointByTypeAndShaftSize(type, size, area); + public List getPointByTypeAndShaftSize(String type, String size, String generation) { + return bstIvtCutpointivtMapper.getPointByTypeAndShaftSize(type, size, generation); } @Override @@ -115,7 +115,7 @@ public class BstIvtCutpointivtServiceImpl extends ServiceImpl getAreaNotTaskPointByLocationAreaAndStatus(String location, String area) { - return bstIvtCutpointivtMapper.getAreaNotTaskPointByLocationAreaAndStatus(location, area); + public List getAreaNotTaskPointByLocationAreaAndStatus(String location) { + return bstIvtCutpointivtMapper.getAreaNotTaskPointByLocationAreaAndStatus(location); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/IBstIvtShafttubeivtService.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/IBstIvtShafttubeivtService.java index 27cc5651d..f0ab9b2b9 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/IBstIvtShafttubeivtService.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/IBstIvtShafttubeivtService.java @@ -63,11 +63,11 @@ public interface IBstIvtShafttubeivtService extends IService /** * 获得气胀轴库对应的气涨轴位置 * @param qzzSize 气涨轴尺寸 - * @param specification 标箔、锂电 + * @param pointCode 对应的穿拔轴机 * @param location 位置:上半部分还是下半部分 * @return */ - List getByQzzSize(String qzzSize, String specification, String location); + List getByQzzSize(String qzzSize, String pointCode, String location); /** * 获取没任务的气涨轴缓存位 diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/BstIvtShafttubeivt.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/BstIvtShafttubeivt.java index cbc76de73..cf8c8f38f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/BstIvtShafttubeivt.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/BstIvtShafttubeivt.java @@ -92,4 +92,7 @@ public class BstIvtShafttubeivt implements Serializable { /** 规划 */ private String plan; + /** 关联点位 */ + private String parent_code; + } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.java index 5880ecb9b..b81ce3553 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.java @@ -13,9 +13,21 @@ public interface BstIvtShafttubeivtMapper extends BaseMapper List getAllShaftPointsByConditions(String type, String location, String have); - List getByQzzSize(String qzzSize, String specification, String location); + List getByQzzSize(String qzzSize, String pointCode, String location); + /** + * 获取含有气胀轴的气胀轴暂存位 + * @param qzzSize 气胀轴尺寸 + * @param specification 标箔/锂电 + * @param location 位置(上下) + * @return / + */ List getNotTaskShaftCache(String qzzSize, String specification, String location); + /** + * 获取空气胀轴的气胀轴暂存位 + * @param startPoint 点位信息(包含:尺寸、类型、位置) + * @return / + */ List getNotTaskShaftCacheEmpty(BstIvtShafttubeivt startPoint); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml index 13d272a00..e24dfa711 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml @@ -14,12 +14,13 @@ ) - SELECT - * - FROM - `bst_ivt_shafttubeivt` bsf - WHERE bsf.is_used = '1' AND bsf.qzz_size = #{qzzSize} AND bsf.point_type = '1' - AND bsf.qzz_generation = #{specification} AND bsf.point_location = #{location} + SELECT * + FROM `bst_ivt_shafttubeivt` bsf + WHERE bsf.is_used = '1' + AND bsf.qzz_size = #{qzzSize} + AND bsf.point_type = '1' + AND bsf.point_location = #{location} + AND bsf.parent_code = #{pointCode} diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/impl/BstIvtShafttubeivtServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/impl/BstIvtShafttubeivtServiceImpl.java index fe3a37313..cd42f7a2e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/impl/BstIvtShafttubeivtServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/impl/BstIvtShafttubeivtServiceImpl.java @@ -102,8 +102,8 @@ public class BstIvtShafttubeivtServiceImpl extends ServiceImpl getByQzzSize(String qzzSize, String specification, String location) { - return bstIvtShafttubeivtMapper.getByQzzSize(qzzSize, specification, location); + public List getByQzzSize(String qzzSize, String pointCode, String location) { + return bstIvtShafttubeivtMapper.getByQzzSize(qzzSize, pointCode, location); } @Override diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/IPdmBiSlittingproductionplanService.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/IPdmBiSlittingproductionplanService.java index e8a9c81ea..9ac7a2cfd 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/IPdmBiSlittingproductionplanService.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/IPdmBiSlittingproductionplanService.java @@ -45,10 +45,9 @@ public interface IPdmBiSlittingproductionplanService extends IService getAllCutPlan(String area); + List getAllCutPlan(); /** * 通过气涨轴编码获取分切计划 diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.java index 12689becf..3d00a379c 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.java @@ -12,5 +12,5 @@ import java.util.List; **/ public interface PdmBiSlittingproductionplanMapper extends BaseMapper { - List getAllCutPlan(String area); + List getAllCutPlan(); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.xml b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.xml index 4a55756dd..38b92bc50 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.xml +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/mapper/PdmBiSlittingproductionplanMapper.xml @@ -9,6 +9,8 @@ p.parent_container_name, p.split_group, p.up_or_down, + p.qzz_size, + sc.qzz_generation, COALESCE ( count_table.num, 0 ) num, COALESCE ( ct1.cn, 0 ) AS cn, COALESCE ( ct2.cnn, 0 ) AS cnn @@ -58,12 +60,13 @@ AND p.parent_container_name = ct2.parent_container_name AND p.split_group = ct2.split_group AND p.up_or_down ]]> ct2.up_or_down + LEFT JOIN st_ivt_cutpointivt sc + ON sc.ext_code = p.resource_name WHERE p.`status` = '01' AND p.is_child_tz_ok = '0' AND p.is_paper_ok = '1' AND p.is_delete = '0' - AND LEFT ( p.resource_name, 2 ) = #{area} AND p.up_or_down IS NOT NULL AND p.left_or_right IS NOT NULL GROUP BY @@ -71,6 +74,8 @@ p.parent_container_name, p.split_group, p.up_or_down, + p.qzz_size, + sc.qzz_generation, num, cn, cnn diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/impl/PdmBiSlittingproductionplanServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/impl/PdmBiSlittingproductionplanServiceImpl.java index 4da1d8cd7..62baec6cf 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/impl/PdmBiSlittingproductionplanServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/impl/PdmBiSlittingproductionplanServiceImpl.java @@ -77,8 +77,8 @@ public class PdmBiSlittingproductionplanServiceImpl extends ServiceImpl getAllCutPlan(String area) { - return pdmBiSlittingproductionplanMapper.getAllCutPlan(area); + public List getAllCutPlan() { + return pdmBiSlittingproductionplanMapper.getAllCutPlan(); } @Override diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java index d9faaa19e..cfc30eb96 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java @@ -30,9 +30,10 @@ import java.util.List; /** * @Author: lyd - * @Description: 自动任务 呼叫套轴 根据分切计划来呼叫套轴任务 桁架任务 * @Date: 2024/2/1 * @see TrussCallAirShaftTask#createTask(JSONObject) + * @Description: 自动任务 呼叫套轴 根据分切计划来呼叫套轴任务 桁架任务 + * 注:内包间只是区分气胀轴大小(即代数),不需要区分锂电/标箔 */ @Slf4j @Component @@ -57,34 +58,21 @@ public class AutoCallAirShaftTask { * 并根据计划来决定是进行套轴还是拔轴操作。如果需要套轴,它会寻找合适的套轴位置,并且在没有合适位置时会触发滚条气涨轴的操作。 * 同时,该方法也会更新相关的分切计划状态。 * 套拔轴缓存位满了、没有分切计划,则触发自动创建套拔轴任务 + * update: 24/04/28 内包间只是区分气胀轴大小(即代数),不需要区分锂电/标箔 */ @Transactional(rollbackFor = Exception.class) public void run() { // 1、获取空的插拔轴位(无任务) List emptyPoints = bstIvtShafttubeivtService.getAllShaftPointsByConditions("2","0","0"); emptyPoints.forEach(empty -> { - // 标箔:1,锂电:2 + // 标箔:1,锂电:2 改:大小:4代5代 String specification = empty.getQzz_generation(); String location = empty.getPoint_location(); - String area; - if (SlitterConstant.SLITTER_STANDARD_FOIL.equals(specification)) { - if (SlitterConstant.SLITTER_AREA_UP.equals(location)) { - area = "B2"; - } else { - area = "B4"; - } - } else { - if (SlitterConstant.SLITTER_AREA_UP.equals(location)) { - area = "B1"; - } else { - area = "B3"; - } - } - // 2、获取分切计划数据,hint: 根据标箔锂电区分区域 - List plans = slittingproductionplanService.getAllCutPlan(area); + // 2、获取分切计划数据 + List plans = slittingproductionplanService.getAllCutPlan(); if (plans.size() == 0) { // 如果不需要套轴,就只做拔轴 - makePullShaft(empty, area); + makePullShaft(empty, specification); return; } // 查看套轴对接位是否满了 @@ -92,26 +80,35 @@ public class AutoCallAirShaftTask { // 如果满了就只做拔轴 if (emptyShaftPoint.size() == 0) { // 如果不需要套轴,就只做拔轴 - makePullShaft(empty, area); + makePullShaft(empty, specification); + return; + } + // 获取一个分切计划的Dto。如果是6寸,可以直接使用、如果是3寸,需要判断当前位置是否满足 + SlitterPlanDistinctDto planDto = plans.stream() + .filter(planD -> "6".equals(planD.getQzz_size()) || + ("3".equals(planD.getQzz_size()) && specification.equals(planD.getQzz_generation()))) + .findFirst() + .orElse(null); + if (planDto == null) { return; } - // 获取一个分切计划的Dto。一根轴可能有两个分切计划 - SlitterPlanDistinctDto planDto = plans.get(0); // 获取分切计划dto中对应的需要套轴的分切计划 最多两个计划 List needPlans = slittingproductionplanService.list(new LambdaQueryWrapper() .eq(PdmBiSlittingproductionplan::getResource_name, planDto.getResource_name()) .eq(PdmBiSlittingproductionplan::getParent_container_name, planDto.getParent_container_name()) .eq(PdmBiSlittingproductionplan::getUp_or_down, planDto.getUp_or_down()) + .eq(PdmBiSlittingproductionplan::getSplit_group, planDto.getSplit_group()) .eq(PdmBiSlittingproductionplan::getIs_delete, SlitterConstant.SLITTER_NO) .eq(PdmBiSlittingproductionplan::getIs_paper_ok, SlitterConstant.SLITTER_YES)); // 获取其中一条 PdmBiSlittingproductionplan needPlan = needPlans.get(0); String qzzSize = needPlan.getQzz_size(); - // 从套轴对接位获取相同气涨轴大小 (同标箔或者锂电分开) - List qzzPoint = bcutpointivtService.getPointByTypeAndShaftSize("1", qzzSize, area); + // 从套轴对接位获取相同气涨轴大小 + // update: 不需要(同标箔或者锂电分开) + List qzzPoint = bcutpointivtService.getPointByTypeAndShaftSize("1", qzzSize, specification); if (qzzPoint.size() == 0) { // 调用ACS滚条气涨轴下来 - toAcsOutShaft(qzzSize, specification, location, empty); + toAcsOutShaft(qzzSize, location, empty); // 保存所需要的分切计划数据到点位上(套轴对接位)更新分切计划 saveCutPlanMessage(empty, needPlans, qzzSize); return; @@ -121,7 +118,7 @@ public class AutoCallAirShaftTask { if (ObjectUtil.isEmpty(startPoint)) { // 如果不存在,则发起信号滚气涨轴 // 调用ACS滚条气涨轴下来 - toAcsOutShaft(qzzSize, specification, location, empty); + toAcsOutShaft(qzzSize, location, empty); // 保存所需要的分切计划数据到点位上(套轴对接位)更新分切计划 saveCutPlanMessage(empty, needPlans, qzzSize); return; @@ -172,41 +169,36 @@ public class AutoCallAirShaftTask { /** * 获取对应的气胀轴库1 * @param qzzSize 气涨轴尺寸 - * @param specification 标箔、锂电(1,2) * @param location 位置:上半部分还是下半部分 * @param empty 套拔轴点位 */ - private void toAcsOutShaft(String qzzSize, String specification, String location, BstIvtShafttubeivt empty) { + private void toAcsOutShaft(String qzzSize, String location, BstIvtShafttubeivt empty) { // 需要区分上下 - List shafttubeivts = bstIvtShafttubeivtService.getByQzzSize(qzzSize, specification, location); + List shafttubeivts = bstIvtShafttubeivtService.getByQzzSize(qzzSize, empty.getPoint_code(), location); if (shafttubeivts.size() == 0) { throw new BadRequestException("气胀轴库找不到[" + qzzSize + "]规格的气涨轴"); } BstIvtShafttubeivt shafttubeivt = shafttubeivts.get(0); // todo: 访问acs判断有无气涨轴 - boolean flag = true; - if (!flag) { - // 气涨轴库没有对应的气涨轴,就到气涨轴暂存区获取 - toCreatShaftCacheTask(qzzSize, specification, location, empty); - } else { - JSONArray acsParam = new JSONArray(); - JSONObject acsQzz = new JSONObject(); - acsQzz.put("device_code", shafttubeivt.getPoint_code()); - acsQzz.put("code", "to_command"); - acsQzz.put("value", "1"); - acsQzz.put("product_area", SlitterConstant.SLITTER_TASK_AREA); - acsParam.add(acsQzz); - wmsToAcsService.action(acsParam); - } + JSONArray acsParam = new JSONArray(); + JSONObject acsQzz = new JSONObject(); + acsQzz.put("device_code", shafttubeivt.getPoint_code()); + acsQzz.put("code", "to_command"); + acsQzz.put("value", "1"); + acsQzz.put("product_area", SlitterConstant.SLITTER_TASK_AREA); + acsParam.add(acsQzz); + wmsToAcsService.action(acsParam); } /** + * todo: 预留 * 创建气涨轴缓存的桁架任务 * @param qzzSize 气涨轴尺寸 * @param specification 标箔、锂电(1,2) * @param location 位置:上半部分还是下半部分 * @param empty 套拔轴点位 */ + @Deprecated private void toCreatShaftCacheTask(String qzzSize, String specification, String location, BstIvtShafttubeivt empty) { // 获取气涨轴缓存没有任务的点位 List shafttubeivts = bstIvtShafttubeivtService.getNotTaskShaftCache(qzzSize, specification, location); @@ -270,16 +262,25 @@ public class AutoCallAirShaftTask { } /** - * 不需要套轴,就只做拔轴(区分标箔、锂电) + * 不需要套轴,就只做拔轴 + * update: 不需要(区分标箔、锂电) * @param empty 空的插拔轴点位 - * @param area 区域 + * @param specification 代数(4、5) */ - private void makePullShaft(BstIvtShafttubeivt empty, String area) { - List notTaskPoints = bcutpointivtService.getAreaNotTaskPointByLocationAreaAndStatus(empty.getPoint_location(), area); + private void makePullShaft(BstIvtShafttubeivt empty, String specification) { + List notTaskPoints = bcutpointivtService.getAreaNotTaskPointByLocationAreaAndStatus(empty.getPoint_location()); if (notTaskPoints.size() == 0) { return; } - BstIvtCutpointivt cutpointivt = notTaskPoints.get(0); + // 筛选一个满足的位置:3寸:看代数4/5;6寸直接 + BstIvtCutpointivt cutpointivt = notTaskPoints.stream() + .filter(cut -> "6".equals(cut.getQzz_size()) || + ("3".equals(cut.getQzz_size()) && specification.equals(cut.getQzz_generation()))) + .findFirst() + .orElse(null); + if (cutpointivt == null) { + return; + } String pointCode1 = ObjectUtil.isNotEmpty(cutpointivt.getQzz_no1()) ? cutpointivt.getTruss_point_code1() : cutpointivt.getTruss_point_code2(); String qzzNo = ObjectUtil.isNotEmpty(cutpointivt.getQzz_no1()) ? cutpointivt.getQzz_no1() : cutpointivt.getQzz_no2(); // 获取对应的分切计划 diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/mapper/dto/SlitterPlanDistinctDto.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/mapper/dto/SlitterPlanDistinctDto.java index 3ee6a5e12..4d112329c 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/mapper/dto/SlitterPlanDistinctDto.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/mapper/dto/SlitterPlanDistinctDto.java @@ -29,4 +29,12 @@ public class SlitterPlanDistinctDto { * 数量 */ private String num; + /** + * 气胀轴尺寸 + */ + private String qzz_size; + /** + * 气胀轴代数 + */ + private String qzz_generation; } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java index 95fb37714..9ad2d433f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java @@ -132,6 +132,7 @@ public class SlitterServiceImpl implements SlitterService { if (ObjectUtil.isEmpty(CBJ.getTube_code1()) && ObjectUtil.isEmpty(CBJ.getTube_code2())) { // 清空 CBJ.setHave_qzz(SlitterConstant.SLITTER_NO); + CBJ.setQzz_size(""); TaskUtils.updateOptMessageByBShaftPoint(CBJ); shafttubeivtService.updateById(CBJ); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java index 550d3e2fb..2b59ae5c2 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java @@ -139,10 +139,10 @@ public class SlitterTaskUtil { param.put("currentLeftSpec", SlitterTaskUtil.getPaperTubeInformation(plan)); } else { if (SlitterConstant.SLITTER_TYPE_PAPER.equals(plan.getPaper_tube_or_FRP())) { - param.put("currentRight", plan.getPaper_tube_model()); + param.put("currentRight", plan.getPaper_tube_material()); param.put("currentRightSize", plan.getPaper_tube_model().split("\\|")[2].charAt(0)); } else { - param.put("currentRight", plan.getFRP_model()); + param.put("currentRight", plan.getFRP_material()); param.put("currentRightSize", plan.getFRP_model().split("\\|")[2].charAt(0)); } param.put("currentLeftSpec", SlitterTaskUtil.getPaperTubeInformation(plan)); diff --git a/lms/nladmin-ui/src/views/b_lms/bst/ivt/shafttubeivt/index.vue b/lms/nladmin-ui/src/views/b_lms/bst/ivt/shafttubeivt/index.vue index a2ad1fdd9..db4e41101 100644 --- a/lms/nladmin-ui/src/views/b_lms/bst/ivt/shafttubeivt/index.vue +++ b/lms/nladmin-ui/src/views/b_lms/bst/ivt/shafttubeivt/index.vue @@ -147,7 +147,7 @@ - +
注:内包间只是区分气胀轴大小(即代数),不需要区分锂电/标箔