| | |
| | | package com.zy.common.service; |
| | | |
| | | import com.core.common.Cools; |
| | | import com.core.exception.CoolException; |
| | | import com.zy.asrs.entity.RowLastno; |
| | | import com.zy.asrs.entity.WrkLastno; |
| | | import com.zy.asrs.entity.WrkMast; |
| | | import com.zy.asrs.service.RowLastnoService; |
| | | import com.zy.asrs.service.WrkLastnoService; |
| | | import com.zy.asrs.service.WrkMastService; |
| | | import com.zy.common.model.Shelves; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | |
| | | private WrkMastService wrkMastService; |
| | | @Autowired |
| | | private WrkLastnoService wrkLastnoService; |
| | | @Autowired |
| | | private RowLastnoService rowLastnoService; |
| | | |
| | | /** |
| | | * 生成工作号 |
| | | * @param wrkMk 0:入出库 ; 1:其他 |
| | | * @return |
| | | * @return workNo(工作号) |
| | | */ |
| | | public int getWorkNo(Integer wrkMk) { |
| | | WrkLastno wrkLastno = wrkLastnoService.selectById(wrkMk); |
| | | if (Cools.isEmpty(wrkLastno)) { |
| | | throw new CoolException("数据异常,请联系管理员"); |
| | | } |
| | | int workNo = 0; |
| | | // 入出库类型 |
| | | if (wrkLastno.getWrkMk() == 0) { |
| | | if (!Cools.isEmpty(wrkLastno)){ |
| | | workNo = wrkLastno.getWrkNo(); |
| | | int sNo = wrkLastno.getSNo(); |
| | | int eNo = wrkLastno.getENo(); |
| | | workNo = wrkLastno.getWrkNo(); |
| | | int sNo = wrkLastno.getSNo(); |
| | | int eNo = wrkLastno.getENo(); |
| | | |
| | | workNo = workNo>=eNo ? sNo : workNo+1; |
| | | workNo = workNo>=eNo ? sNo : workNo+1; |
| | | |
| | | while (true) { |
| | | WrkMast wrkMast = wrkMastService.selectById(workNo); |
| | | if (null != wrkMast) { |
| | | workNo = workNo>=eNo ? sNo : workNo+1; |
| | | } else { |
| | | break; |
| | | } |
| | | } |
| | | |
| | | if (workNo > 0){ |
| | | // todo |
| | | wrkLastno.setWrkNo(workNo); |
| | | wrkLastnoService.updateById(wrkLastno); |
| | | while (true) { |
| | | WrkMast wrkMast = wrkMastService.selectById(workNo); |
| | | if (null != wrkMast) { |
| | | workNo = workNo>=eNo ? sNo : workNo+1; |
| | | } else { |
| | | break; |
| | | } |
| | | } |
| | | |
| | | if (workNo > 0){ |
| | | // todo |
| | | wrkLastno.setWrkNo(workNo); |
| | | wrkLastnoService.updateById(wrkLastno); |
| | | } |
| | | } |
| | | return workNo; |
| | | } |
| | | |
| | | /** |
| | | * 检索库位号 |
| | | * @param whsType 类型 1:双深式货架 |
| | | * @return locNo 检索到的库位号 |
| | | */ |
| | | public String getLocNo(Integer whsType) { |
| | | RowLastno rowLastno = rowLastnoService.selectById(whsType); |
| | | if (Cools.isEmpty(rowLastno)) { |
| | | throw new CoolException("数据异常,请联系管理员"); |
| | | } |
| | | String locNo = null; |
| | | if (rowLastno.getWhsType() == 1){ |
| | | int curRow = rowLastno.getCurrentRow(); |
| | | int sRow = rowLastno.getsRow(); |
| | | int eRow = rowLastno.geteRow(); |
| | | int crn_qty = rowLastno.getCrnQty(); |
| | | |
| | | } |
| | | Shelves shelves = new Shelves(8, crn_qty); |
| | | curRow = shelves.start(curRow); |
| | | |
| | | if (curRow != 0) { |
| | | |
| | | |
| | | rowLastno.setCurrentRow(curRow); |
| | | rowLastnoService.updateById(rowLastno); |
| | | } |
| | | |
| | | } |
| | | |
| | | return locNo; |
| | | } |
| | | |
| | | |
| | | } |