|
|
|
@ -3,8 +3,10 @@ package com.zhehekeji.web.service;
|
|
|
|
import com.github.pagehelper.PageHelper;
|
|
|
|
import com.github.pagehelper.PageHelper;
|
|
|
|
import com.github.pagehelper.PageInfo;
|
|
|
|
import com.github.pagehelper.PageInfo;
|
|
|
|
import com.zhehekeji.core.util.Assert;
|
|
|
|
import com.zhehekeji.core.util.Assert;
|
|
|
|
|
|
|
|
import com.zhehekeji.web.entity.Stock;
|
|
|
|
import com.zhehekeji.web.entity.Street;
|
|
|
|
import com.zhehekeji.web.entity.Street;
|
|
|
|
import com.zhehekeji.web.mapper.OrderLastMediaMapper;
|
|
|
|
import com.zhehekeji.web.mapper.OrderLastMediaMapper;
|
|
|
|
|
|
|
|
import com.zhehekeji.web.mapper.StockMapper;
|
|
|
|
import com.zhehekeji.web.mapper.StreetMapper;
|
|
|
|
import com.zhehekeji.web.mapper.StreetMapper;
|
|
|
|
import com.zhehekeji.web.pojo.street.StreetSearch;
|
|
|
|
import com.zhehekeji.web.pojo.street.StreetSearch;
|
|
|
|
import com.zhehekeji.web.pojo.street.StreetType;
|
|
|
|
import com.zhehekeji.web.pojo.street.StreetType;
|
|
|
|
@ -25,71 +27,67 @@ public class StreetService {
|
|
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
@Resource
|
|
|
|
private StreetMapper streetMapper;
|
|
|
|
private StreetMapper streetMapper;
|
|
|
|
// @Resource
|
|
|
|
// @Resource
|
|
|
|
// private StreetShelveMapper streetShelveMapper;
|
|
|
|
// private StreetShelveMapper streetShelveMapper;
|
|
|
|
@Resource
|
|
|
|
@Resource
|
|
|
|
private NettyClient nettyClient;
|
|
|
|
private NettyClient nettyClient;
|
|
|
|
@Resource
|
|
|
|
@Resource
|
|
|
|
private OrderLastMediaMapper lastMediaMapper;
|
|
|
|
private StockMapper stockMapper;
|
|
|
|
|
|
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
public Integer add(Street street){
|
|
|
|
public Integer add(Street street) {
|
|
|
|
List<String> shelves = check(street);
|
|
|
|
List<String> shelves = check(street);
|
|
|
|
street.setCreateTime(LocalDateTime.now());
|
|
|
|
street.setCreateTime(LocalDateTime.now());
|
|
|
|
street.setUpdateTime(LocalDateTime.now());
|
|
|
|
street.setUpdateTime(LocalDateTime.now());
|
|
|
|
try {
|
|
|
|
try {
|
|
|
|
streetMapper.insert(street);
|
|
|
|
streetMapper.insert(street);
|
|
|
|
}catch (DuplicateKeyException e){
|
|
|
|
} catch (DuplicateKeyException e) {
|
|
|
|
Assert.isTrue(false,"PLC ID已存在");
|
|
|
|
Assert.isTrue(false, "PLC ID已存在");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
StreetConn.init(street.getId(),street.getPlcId());
|
|
|
|
StreetConn.init(street.getId(), street.getPlcId());
|
|
|
|
//连接
|
|
|
|
//连接
|
|
|
|
try {
|
|
|
|
try {
|
|
|
|
nettyClient.createClient(street);
|
|
|
|
nettyClient.createClient(street);
|
|
|
|
} catch (InterruptedException e) {
|
|
|
|
} catch (InterruptedException e) {
|
|
|
|
log.error("新增巷道,连接异常");
|
|
|
|
log.error("新增巷道,连接异常");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return street.getId();
|
|
|
|
return street.getId();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public Street getStreetByPlcId(String plcId){
|
|
|
|
public Street getStreetByPlcId(String plcId) {
|
|
|
|
Street street = streetMapper.getStreetByPlcId(plcId);
|
|
|
|
Street street = streetMapper.getStreetByPlcId(plcId);
|
|
|
|
if(street == null){
|
|
|
|
if (street == null) {
|
|
|
|
log.error("巷道不存在plcId:{}",plcId);
|
|
|
|
log.error("巷道不存在plcId:{}", plcId);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return street;
|
|
|
|
return street;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
public void del(Integer id){
|
|
|
|
public void del(Integer id) {
|
|
|
|
streetMapper.deleteById(id);
|
|
|
|
streetMapper.deleteById(id);
|
|
|
|
|
|
|
|
|
|
|
|
// List<String> sheleves = shelvesByStreetId(id);
|
|
|
|
|
|
|
|
// if(!CollectionUtils.isEmpty(sheleves)){
|
|
|
|
|
|
|
|
// lastMediaMapper.deleteBatchIds(sheleves);
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
StreetConn.del(id);
|
|
|
|
StreetConn.del(id);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private List<String> check(Street street){
|
|
|
|
public List<String> check(Street street) {
|
|
|
|
List<String> shelves = new ArrayList<>();
|
|
|
|
List<String> shelves = new ArrayList<>();
|
|
|
|
if(StreetType.SINGLE.getType().equals(street.getLeftType())){
|
|
|
|
if (StreetType.SINGLE.getType().equals(street.getLeftType())) {
|
|
|
|
street.setLeftInsideShelveId(null);
|
|
|
|
street.setLeftInsideShelveId(null);
|
|
|
|
street.setLeftOutsideShelveId(null);
|
|
|
|
street.setLeftOutsideShelveId(null);
|
|
|
|
shelves.add(street.getLeftShelveId());
|
|
|
|
shelves.add(street.getLeftShelveId());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(StreetType.SINGLE.getType().equals(street.getRightType())){
|
|
|
|
if (StreetType.SINGLE.getType().equals(street.getRightType())) {
|
|
|
|
street.setRightInsideShelveId(null);
|
|
|
|
street.setRightInsideShelveId(null);
|
|
|
|
street.setRightOutsideShelveId(null);
|
|
|
|
street.setRightOutsideShelveId(null);
|
|
|
|
shelves.add(street.getRightShelveId());
|
|
|
|
shelves.add(street.getRightShelveId());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(StreetType.DOUBLE.getType().equals(street.getLeftType())){
|
|
|
|
if (StreetType.DOUBLE.getType().equals(street.getLeftType())) {
|
|
|
|
street.setLeftShelveId(null);
|
|
|
|
street.setLeftShelveId(null);
|
|
|
|
shelves.add(street.getLeftInsideShelveId());
|
|
|
|
shelves.add(street.getLeftInsideShelveId());
|
|
|
|
shelves.add(street.getLeftOutsideShelveId());
|
|
|
|
shelves.add(street.getLeftOutsideShelveId());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(StreetType.DOUBLE.getType().equals(street.getRightType())){
|
|
|
|
if (StreetType.DOUBLE.getType().equals(street.getRightType())) {
|
|
|
|
street.setRightShelveId(null);
|
|
|
|
street.setRightShelveId(null);
|
|
|
|
shelves.add(street.getRightInsideShelveId());
|
|
|
|
shelves.add(street.getRightInsideShelveId());
|
|
|
|
shelves.add(street.getRightOutsideShelveId());
|
|
|
|
shelves.add(street.getRightOutsideShelveId());
|
|
|
|
@ -98,24 +96,47 @@ public class StreetService {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
public void edit(Street street){
|
|
|
|
public void edit(Street street) {
|
|
|
|
check(street);
|
|
|
|
check(street);
|
|
|
|
try {
|
|
|
|
try {
|
|
|
|
streetMapper.updateById(street);
|
|
|
|
streetMapper.updateById(street);
|
|
|
|
}catch (DuplicateKeyException e){
|
|
|
|
} catch (DuplicateKeyException e) {
|
|
|
|
Assert.isTrue(false,"PLC ID已存在");
|
|
|
|
Assert.isTrue(false, "PLC ID已存在");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public Street streetById(Integer id){
|
|
|
|
public Street streetById(Integer id) {
|
|
|
|
return streetMapper.selectById(id);
|
|
|
|
return streetMapper.selectById(id);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public PageInfo<StreetVO> page(StreetSearch search){
|
|
|
|
public PageInfo<StreetVO> page(StreetSearch search) {
|
|
|
|
PageHelper.startPage(search.getPageNum(),search.getPageSize());
|
|
|
|
PageHelper.startPage(search.getPageNum(), search.getPageSize());
|
|
|
|
List<StreetVO> streetVOS = streetMapper.list();
|
|
|
|
List<StreetVO> streetVOS = streetMapper.list();
|
|
|
|
return new PageInfo<>(streetVOS);
|
|
|
|
return new PageInfo<>(streetVOS);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public List<String> shelvesByStreetId(Integer streetId) {
|
|
|
|
|
|
|
|
Street street = streetMapper.selectById(streetId);
|
|
|
|
|
|
|
|
if (street != null) {
|
|
|
|
|
|
|
|
return check(street);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void stockGenerate(String sheveId, Integer row, Integer column) {
|
|
|
|
|
|
|
|
List<Stock> stocks = new ArrayList<>(row * column);
|
|
|
|
|
|
|
|
for (int i = 1; i <= row; i++) {
|
|
|
|
|
|
|
|
for (int j = 1; j <= column; i++) {
|
|
|
|
|
|
|
|
Stock stock = new Stock();
|
|
|
|
|
|
|
|
stock.setStatus(0);
|
|
|
|
|
|
|
|
stock.setRow(i);
|
|
|
|
|
|
|
|
stock.setColumn(j);
|
|
|
|
|
|
|
|
stock.setShelveId(sheveId);
|
|
|
|
|
|
|
|
stocks.add(stock);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
stockMapper.batchInsert(stocks);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|