Merge remote-tracking branch 'origin/master'
| | |
| | | } |
| | | function getRectColor2(state) { |
| | | switch (state) { |
| | | case 2: |
| | | case 2: |
| | | return 'lightblue'; |
| | | case 8: |
| | | return '#911005'; |
| | |
| | | closeWebSocket(socket); |
| | | } |
| | | }); |
| | | function getStatusTypeb(state) { |
| | | switch (state) { |
| | | case 0: |
| | | return 'info'; |
| | | case 1: |
| | | return 'success'; |
| | | case 1: |
| | | return 'danger'; |
| | | } |
| | | } |
| | | function getStatusTextb(state) { |
| | | switch (state) { |
| | | case 0: |
| | | return t('workOrder.nedging'); |
| | | case 1: |
| | | return t('workOrder.edging'); |
| | | case 2: |
| | | return t('workOrder.finedging'); |
| | | } |
| | | } |
| | | onBeforeUnmount(() => { |
| | | console.log("关闭了") |
| | | closeWebSocket(); |
| | |
| | | <div style="display: flex;"> |
| | | <el-select v-model="selectValuesa[0]" filterable :placeholder="$t('workOrder.cway')" clearable |
| | | style="margin-left: 20px;margin-bottom: 10px;"> |
| | | <el-option :label="$t('workOrder.edgingone')" value="2001"></el-option> |
| | | <el-option :label="$t('workOrder.edgingtwo')" value="2002"></el-option> |
| | | <el-option :label="$t('workOrder.edgingone')" value="930"></el-option> |
| | | <el-option :label="$t('workOrder.edgingtwo')" value="931"></el-option> |
| | | </el-select> |
| | | <el-select v-model="selectValuesa[1]" filterable :placeholder="$t('workOrder.cstate')" clearable |
| | | style="margin-left: 20px;margin-bottom: 10px;"> |
| | |
| | | <el-table-column prop="thickness" align="center" :label="$t('workOrder.thickness')" min-width="120" /> |
| | | <el-table-column prop="glassType" align="center" :label="$t('workOrder.glasstype')" min-width="120" /> |
| | | <el-table-column prop="line" align="center" :label="$t('workOrder.line')" min-width="120" /> |
| | | <el-table-column prop="status" :label="$t('workOrder.status')" align="center" width="200"> |
| | | <template #default="scope"> |
| | | <el-table-column prop="state" :label="$t('workOrder.status')" align="center" width="200"> |
| | | <!-- <template #default="scope"> |
| | | {{ scope.row.status==0?"未磨边":scope.row.status==1?"磨边中":"已磨边" }} |
| | | </template> |
| | | </template> --> |
| | | <template #default="scope"> |
| | | <el-tag :type="getStatusTypeb(scope.row.state)"> |
| | | {{ getStatusTextb(scope.row.state) }} |
| | | </el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column fixed="right" :label="$t('workOrder.operate')" align="center" width="200"> |
| | | <template #default="scope"> |
| | |
| | | * 大理片笼任务类型 |
| | | * 1、钢化前进片 |
| | | * 2、钢化前出片 |
| | | * 3、钢化后进片 |
| | | * 4、钢化后出片 |
| | | * 4、钢化后进片 |
| | | * 5、钢化后出片 |
| | | */ |
| | | public static final Integer BIG_STORAGE_BEFORE_IN = 1; |
| | | public static final Integer BIG_STORAGE_BEFORE_OUT = 2; |
| | |
| | | WorkAssignmentMapper workAssignmentMapper; |
| | | |
| | | |
| | | private final static String ERP_URL = "http://192.168.2.100:8086"; |
| | | private final static String ERP_URL = "http://192.168.2.100:8086"; |
| | | // private final static String ERP_URL = "http://10.153.19.174:8086"; |
| | | |
| | | |
New file |
| | |
| | | package com.mes.glassinfo.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | |
| | | import java.io.Serializable; |
| | | |
| | | /** |
| | | * <p> |
| | | * |
| | | * </p> |
| | | * |
| | | * @author wu |
| | | * @since 2024-04-29 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | public class LoadGlassInfo implements Serializable { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 玻璃信息表id |
| | | */ |
| | | // @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | |
| | | /** |
| | | * 流程卡 |
| | | */ |
| | | private String flowCardId; |
| | | |
| | | /** |
| | | * 流程卡玻璃类型 |
| | | */ |
| | | private Integer glassType; |
| | | |
| | | /** |
| | | * 宽 |
| | | */ |
| | | private double width; |
| | | |
| | | /** |
| | | * 高 |
| | | */ |
| | | private double height; |
| | | |
| | | /** |
| | | * 厚度 |
| | | */ |
| | | private double thickness; |
| | | |
| | | /** |
| | | * 膜系 |
| | | */ |
| | | private String filmsid; |
| | | |
| | | /** |
| | | * 层数 |
| | | */ |
| | | private int layer; |
| | | |
| | | /** |
| | | * 总层数 |
| | | */ |
| | | private int totalLayer; |
| | | |
| | | /** |
| | | * 磨前宽 |
| | | */ |
| | | private double edgWidth; |
| | | |
| | | /** |
| | | * 磨前高 |
| | | */ |
| | | private double edgHeight; |
| | | |
| | | /** |
| | | * 是否配片 |
| | | */ |
| | | private Integer ismultiple; |
| | | |
| | | /** |
| | | * 配片最大宽 |
| | | */ |
| | | private double maxWidth; |
| | | |
| | | /** |
| | | * 配片最大高 |
| | | */ |
| | | private double maxHeight; |
| | | |
| | | /** |
| | | * 钢化是否接受横放 |
| | | */ |
| | | private Integer ishorizontal; |
| | | |
| | | /** |
| | | * 原片顺序 |
| | | */ |
| | | private Integer patternSequence; |
| | | /** |
| | | * x坐标 |
| | | */ |
| | | private Integer xAxis; |
| | | |
| | | /** |
| | | * y坐标 |
| | | */ |
| | | private Integer yAxis; |
| | | |
| | | /** |
| | | * 钢化版图id |
| | | */ |
| | | private Integer temperingLayoutId; |
| | | |
| | | /** |
| | | * 钢化版图片序 |
| | | */ |
| | | private Integer temperingFeedSequence; |
| | | |
| | | /** |
| | | * x坐标 |
| | | */ |
| | | private Integer xCoordinate; |
| | | |
| | | /** |
| | | * y坐标 |
| | | */ |
| | | private Integer yCoordinate; |
| | | |
| | | /** |
| | | * 旋转角度(逆时针) |
| | | */ |
| | | private double angle; |
| | | |
| | | /** |
| | | * 工程号 |
| | | */ |
| | | private String engineerId; |
| | | |
| | | /** |
| | | * 生产规则id |
| | | */ |
| | | private Integer ruleId; |
| | | |
| | | /** |
| | | * 玻璃ID |
| | | */ |
| | | private String glassId; |
| | | /** |
| | | * 是否合并 |
| | | */ |
| | | private Integer combine; |
| | | /** |
| | | * 打标属性 |
| | | */ |
| | | private String markIcon; |
| | | /** |
| | | * 除膜方式 |
| | | */ |
| | | private Integer filmRemove; |
| | | /** |
| | | * 状态 |
| | | */ |
| | | @TableField(exist = false) |
| | | private Integer state; |
| | | |
| | | |
| | | } |
| | |
| | | /** |
| | | * 栅格号 |
| | | */ |
| | | private String slot; |
| | | private Integer slot; |
| | | /** |
| | | * 设备id |
| | | */ |
| | |
| | | */ |
| | | String patternWarehousing(RawGlassRequest request); |
| | | |
| | | String UpdateQuantity(RawGlassRequest request); |
| | | String updateQuantity(RawGlassRequest request); |
| | | |
| | | String deleteWarehousing(Long slotId); |
| | | |
| | |
| | | } |
| | | |
| | | @Override |
| | | public String UpdateQuantity(RawGlassRequest request) { |
| | | public String updateQuantity(RawGlassRequest request) { |
| | | RawGlassStorageDetails one = getOne(new LambdaQueryWrapper<RawGlassStorageDetails>().eq(RawGlassStorageDetails::getSlot, request.getSlot()) |
| | | .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN)); |
| | | if (null == one) { |
| | | RawGlassStorageDetails details = new RawGlassStorageDetails(); |
| | | BeanUtils.copyProperties(request, details); |
| | | details.setState(Const.RAW_GLASS_STATE_IN); |
| | | details.setShelf(request.getSlot()); |
| | | save(details); |
| | | }else{ |
| | | } else { |
| | | update( |
| | | new LambdaUpdateWrapper<RawGlassStorageDetails>() |
| | | .set(RawGlassStorageDetails::getRemainQuantity, request.getRemainQuantity()) |
| | |
| | | .set(RawGlassStorageDetails::getPatternThickness, request.getPatternThickness()) |
| | | .set(RawGlassStorageDetails::getFilmsId, request.getFilmsId()) |
| | | .eq(RawGlassStorageDetails::getSlot, request.getSlot()) |
| | | .eq(RawGlassStorageDetails::getSlot, Const.RAW_GLASS_STATE_IN)); |
| | | .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN)); |
| | | } |
| | | return "success"; |
| | | } |
| | |
| | | |
| | | import com.github.yulichang.base.MPJBaseService; |
| | | import com.mes.glassinfo.entity.GlassInfo; |
| | | import com.mes.glassinfo.entity.LoadGlassInfo; |
| | | import com.mes.temperingglass.entity.TemperingGlassInfo; |
| | | |
| | | import java.util.List; |
| | |
| | | |
| | | GlassInfo selectTempering(GlassInfo glassInfo); |
| | | |
| | | List<GlassInfo> selectTemperingGlass(GlassInfo glassInfo); |
| | | List<LoadGlassInfo> selectTemperingGlass(GlassInfo glassInfo); |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
| | | import com.github.yulichang.base.MPJBaseServiceImpl; |
| | | import com.github.yulichang.query.MPJQueryWrapper; |
| | | import com.mes.glassinfo.entity.GlassInfo; |
| | | import com.mes.glassinfo.entity.LoadGlassInfo; |
| | | import com.mes.glassinfo.mapper.GlassInfoMapper; |
| | | import com.mes.temperingglass.entity.TemperingGlassInfo; |
| | | import com.mes.temperingglass.mapper.TemperingGlassInfoMapper; |
| | |
| | | public List<TemperingGlassInfo> selectOutGlass() { |
| | | //获取出炉中的玻璃信息 |
| | | QueryWrapper<TemperingGlassInfo> wrap = new QueryWrapper<>(); |
| | | wrap.select("Top 1 *").eq("state", 3); |
| | | wrap.select("Top 1 *").eq("state", 4) |
| | | .orderByDesc("id"); |
| | | TemperingGlassInfo glass = temperingMapper.selectOne(wrap); |
| | | //根据工程号和版图获取数据 |
| | | if (glass != null) { |
| | |
| | | //获取过旋转台最大的钢化版图id |
| | | QueryWrapper<TemperingGlassInfo> wapper = new QueryWrapper<>(); |
| | | wapper.select("Top 1 *").eq("state", 4) |
| | | .orderByDesc("tempering_layout_id,engineer_id"); |
| | | .orderByDesc("id"); |
| | | //根据最大的版图id显示钢化后的版图信息 |
| | | TemperingGlassInfo glassinfo = temperingMapper.selectOne(wapper); |
| | | if (glassinfo == null) { |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<GlassInfo> selectTemperingGlass(GlassInfo glassInfo) { |
| | | QueryWrapper<GlassInfo> wrapper = new QueryWrapper<>(); |
| | | wrapper.eq("engineer_id", glassInfo.getEngineerId()) |
| | | .eq("tempering_layout_id", glassInfo.getTemperingLayoutId()) |
| | | .select("engineer_id,tempering_layout_id,width,height,tempering_feed_sequence,x_coordinate,y_coordinate,angle,glass_id"); |
| | | return glassInfoMapper.selectList(wrapper); |
| | | public List<LoadGlassInfo> selectTemperingGlass(GlassInfo glassInfo) { |
| | | List<LoadGlassInfo> glassInfos = null; |
| | | glassInfos = glassInfoMapper.selectJoinList(LoadGlassInfo.class, new MPJQueryWrapper<GlassInfo>() |
| | | .select("IFNULL(b.status, 0) AS state,engineer_id,tempering_layout_id,width,height,tempering_feed_sequence,x_coordinate,y_coordinate,angle,t.glass_id,t.flow_card_id") |
| | | .leftJoin("(SELECT glass_id, MAX(status) AS status FROM damage GROUP BY glass_id) b\n" + |
| | | "ON t.glass_id = b.glass_id") |
| | | .eq("engineer_id", glassInfo.getEngineerId()) |
| | | .eq("tempering_layout_id", glassInfo.getTemperingLayoutId())); |
| | | return glassInfos; |
| | | // QueryWrapper<GlassInfo> wrapper = new QueryWrapper<>(); |
| | | // wrapper.eq("engineer_id", glassInfo.getEngineerId()) |
| | | // .eq("tempering_layout_id", glassInfo.getTemperingLayoutId()) |
| | | // .select("engineer_id,tempering_layout_id,width,height,tempering_feed_sequence,x_coordinate,y_coordinate,angle,glass_id"); |
| | | // return glassInfoMapper.selectList(wrapper); |
| | | } |
| | | } |
| | |
| | | .eq(EdgStorageDeviceTaskHistory::getTaskState, Const.EDG_GLASS_BEFORE) |
| | | ); |
| | | jsonObject.append("edgOneTasks", edgOneTasks); |
| | | jsonObject.append("edgOneTasks", edgTwoTasks); |
| | | jsonObject.append("edgTwoTasks", edgTwoTasks); |
| | | List<Engineering> engineeringOne = engineeringService.list( |
| | | new LambdaQueryWrapper<Engineering>() |
| | | .eq(Engineering::getStationCell, 5) |
| | |
| | | |
| | | import cn.hutool.core.collection.CollectionUtil; |
| | | import cn.hutool.json.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.StringUtils; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import com.mes.common.config.Const; |
| | | import com.mes.rawglassdetails.entity.RawGlassStorageDetails; |
| | | import com.mes.rawglassdetails.service.RawGlassStorageDetailsService; |
| | | import com.mes.rawglassstation.entity.RawGlassStorageStation; |
| | | import com.mes.rawglassstation.service.RawGlassStorageStationService; |
| | | import com.mes.rawglasstask.entity.RawGlassStorageTask; |
| | | import com.mes.rawglasstask.service.RawGlassStorageTaskService; |
| | |
| | | public void largenScreen() { |
| | | log.info("发送任务信息和架子信息"); |
| | | JSONObject jsonObject = new JSONObject(); |
| | | List<RawGlassStorageDetails> rawGlassStorageDetailList = rawGlassStorageDetailsService.list( |
| | | new LambdaUpdateWrapper<RawGlassStorageDetails>() |
| | | .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN) |
| | | ); |
| | | MPJLambdaWrapper<RawGlassStorageDetails> wrapper = new MPJLambdaWrapper<>(); |
| | | wrapper.select(RawGlassStorageStation::getSlot) |
| | | .select(RawGlassStorageDetails::getRemainQuantity) |
| | | .rightJoin(RawGlassStorageStation.class, on -> on.eq(RawGlassStorageStation::getSlot, RawGlassStorageDetails::getSlot) |
| | | .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN)) |
| | | .orderByAsc(RawGlassStorageStation::getSlot); |
| | | List<RawGlassStorageDetails> rawGlassStorageDetailList = rawGlassStorageDetailsService.list(wrapper); |
| | | jsonObject.append("rawGlassStorageDetailList", rawGlassStorageDetailList); |
| | | List<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("largenScreen"); |
| | | if (CollectionUtil.isNotEmpty(sendwServer)) { |
| | |
| | | return Boolean.FALSE; |
| | | } |
| | | |
| | | |
| | | List<RawGlassStorageDetails> loadStationList = rawGlassStorageDetailsService.list(new LambdaQueryWrapper<RawGlassStorageDetails>() |
| | | .inSql(RawGlassStorageDetails::getSlot, "select slot from raw_glass_storage_station where enable_state = 1") |
| | | .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN) |
| | |
| | | 200, "入库已完成,等待任务执行", rawGlassStorageDetailsService.patternWarehousing(request)); |
| | | } |
| | | |
| | | @ApiOperation("更新剩余数量") |
| | | @PostMapping("/updateQuantity") |
| | | public Result<Object> updateQuantity(@Validated @RequestBody RawGlassRequest request) { |
| | | return Result.success(rawGlassStorageDetailsService.updateQuantity(request)); |
| | | } |
| | | |
| | | @ApiOperation("删除原片") |
| | | @PostMapping("/deleteWarehousing") |
| | | public Result<Object> deleteWarehousing(Long slotId) { |
| | | return Result.success(rawGlassStorageDetailsService.deleteWarehousing(slotId)); |
| | | } |
| | | |
| | | @ApiOperation("原片出库") |
| | | @PostMapping("/outWarehousing") |
| | |
| | | return Result.build(200, "查询成功", rawGlassStorageDetailsService.patternUsage(width, height, thickness, films)); |
| | | } |
| | | |
| | | @ApiOperation("更新剩余数量") |
| | | @PostMapping("/updateQuantity") |
| | | public Result<Object> updateQuantity(@Validated @RequestBody RawGlassRequest request) { |
| | | return Result.success(rawGlassStorageDetailsService.UpdateQuantity(request)); |
| | | } |
| | | @ApiOperation("删除原片") |
| | | @PostMapping("/deleteWarehousing") |
| | | public Result<Object> deleteWarehousing(@RequestBody Long slotId) { |
| | | return Result.success(rawGlassStorageDetailsService.deleteWarehousing(slotId)); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | ); |
| | | jsonObject.append("temperingTaskType", putGlass); |
| | | //大屏钢化信息 |
| | | Integer temperingGlass = temperingAgoService.count( |
| | | new LambdaUpdateWrapper<TemperingGlassInfo>() |
| | | List<TemperingGlassInfo> temperingGlassInfoList = temperingAgoService.list( |
| | | new LambdaQueryWrapper<TemperingGlassInfo>() |
| | | .select(TemperingGlassInfo::getEngineerId, TemperingGlassInfo::getTemperingLayoutId) // 选择要去重的字段 |
| | | .eq(TemperingGlassInfo::getState, Const.TEMPERING_START) |
| | | .groupBy(TemperingGlassInfo::getEngineerId, |
| | | TemperingGlassInfo::getTemperingLayoutId) |
| | | .groupBy(TemperingGlassInfo::getEngineerId, TemperingGlassInfo::getTemperingLayoutId) // 按 engineerId 和 temperingLayoutId 分组 |
| | | ); |
| | | jsonObject.append("temperingGlass", temperingGlass); |
| | | jsonObject.append("temperingGlassInfoList", temperingGlassInfoList.size()); |
| | | ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("largenScreen"); |
| | | if (sendwServer != null) { |
| | | for (WebSocketServer webserver : sendwServer) { |
| | |
| | | import com.mes.damage.entity.Damage; |
| | | import com.mes.damage.service.DamageService; |
| | | import com.mes.glassinfo.entity.GlassInfo; |
| | | import com.mes.glassinfo.entity.LoadGlassInfo; |
| | | import com.mes.temperingglass.entity.TemperingGlassInfo; |
| | | import com.mes.temperingglass.service.TemperingGlassInfoService; |
| | | import com.mes.utils.Result; |
| | |
| | | temperingGlassInfo.setState(damage.getStatus()); |
| | | temperingGlassInfo.setGlassId(damage.getGlassId()); |
| | | int result=temperingGlassInfoService.updateTemperingState(temperingGlassInfo); |
| | | // if(damage.getStatus()>5) { |
| | | // damage.setType(damage.getStatus()); |
| | | // damage.setStatus(1); |
| | | // damageService.insertDamage(damage); |
| | | // } |
| | | if (damage.getStatus() > 5) { |
| | | damageService.autoSubmitReport(damage.getGlassId(), damage.getLine() |
| | | , damage.getWorkingProcedure(), "钢化炉", damage.getStatus()); |
| | | } |
| | | return Result.build(200, "破损成功", result); |
| | | } |
| | | |
| | |
| | | |
| | | @ApiOperation("//查询当前工程号的钢化版图") |
| | | @PostMapping("/selectTemperingGlass") //查询当前工程号所有的炉号 |
| | | public Result<List<GlassInfo>> selectTemperingGlass(@RequestBody GlassInfo glassInfo) { |
| | | List<GlassInfo> glass = temperingGlassInfoService.selectTemperingGlass(glassInfo); |
| | | public Result<List<LoadGlassInfo>> selectTemperingGlass(@RequestBody GlassInfo glassInfo) { |
| | | List<LoadGlassInfo> glass = temperingGlassInfoService.selectTemperingGlass(glassInfo); |
| | | return Result.build(200, "查询成功", glass); |
| | | } |
| | | |
| | |
| | | log-impl: org.apache.ibatis.logging.stdout.StdOutImpl |
| | | mes: |
| | | width: 2800 |
| | | height: 5000 |
| | | height: 5000 |
| | | kangaroohy: |
| | | milo: |
| | | enabled: false |
| | | primary: default |
| | | config: |
| | | default: |
| | | endpoint: opc.tcp://10.153.19.150:49320 |
| | | security-policy: basic256sha256 |
| | | username: admin |
| | | password: 1qaz2wsx3edc4rfv |
| | |
| | | import com.mes.hollow.entity.dto.*; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * (HollowBigStorageCageDetails)表服务接口 |
| | |
| | | |
| | | List<HollowBigStorageCageDetails> queryOutGlassList(String flowCardId, int cell); |
| | | |
| | | List<BigStorageVO> queryHollowbigStorageCageDetail(); |
| | | Map<Integer, List<BigStorageVO>> queryHollowbigStorageCageDetail(); |
| | | |
| | | /** |
| | | * 取出每组玻璃占用笼子的格子并计算格子内的最大组序号 |
| | |
| | | import javax.annotation.Resource; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * (HollowBigStorageCageDetails)表服务实现类 |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<BigStorageVO> queryHollowbigStorageCageDetail() { |
| | | return baseMapper.queryHollowbigStorageCageDetail(); |
| | | public Map<Integer, List<BigStorageVO>> queryHollowbigStorageCageDetail() { |
| | | List<BigStorageVO> bigStorageCages = baseMapper.queryHollowbigStorageCageDetail(); |
| | | return bigStorageCages.stream().collect(Collectors.groupingBy(item -> item.getDeviceId())); |
| | | } |
| | | |
| | | @Override |
| | |
| | | .eq(HollowGlassOutRelationInfo::getState, Const.HOLLOW_FLOW_CARD_START) |
| | | ); |
| | | } |
| | | if (null == hollowGlassOutRelationInfo) { |
| | | cell = 930; |
| | | hollowGlassOutRelationInfo = hollowGlassOutRelationInfoService |
| | | .getOne(new LambdaQueryWrapper<HollowGlassOutRelationInfo>() |
| | | .eq(HollowGlassOutRelationInfo::getCell, cell) |
| | | .eq(HollowGlassOutRelationInfo::getState, Const.HOLLOW_FLOW_CARD_START) |
| | | ); |
| | | } |
| | | |
| | | if (null == hollowGlassOutRelationInfo) { |
| | | cell = 931; |
| | | hollowGlassOutRelationInfo = hollowGlassOutRelationInfoService |
| | | .getOne(new LambdaQueryWrapper<HollowGlassOutRelationInfo>() |
| | | .eq(HollowGlassOutRelationInfo::getCell, cell) |
| | | .eq(HollowGlassOutRelationInfo::getState, Const.HOLLOW_FLOW_CARD_START) |
| | | ); |
| | | } |
| | | |
| | | if (null != hollowGlassOutRelationInfo) { |
| | | //是否允许中空 |
| | |
| | | log.info("计算玻璃数量过程中出现错误,错误信息{}", e.getMessage()); |
| | | } |
| | | |
| | | // hollowGlassOutRelationInfoService.update |
| | | // 重置任务表数据 |
| | | bigStorageCageTaskService.updateOutTaskMessage(BIG_STORAGE_CAGE_OUT_TWO_TASK); |
| | | |
| | |
| | | t.quantity, |
| | | t1.child_width, |
| | | t1.child_height |
| | | |
| | | from pp.flow_card t |
| | | LEFT JOIN sd.order_glass_detail t1 |
| | | on t.order_id = t1.order_id |