no message
parent
47deab07bc
commit
28286abf32
|
|
@ -15,14 +15,17 @@
|
|||
*/
|
||||
package com.youchain.basicdata.domain;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonBackReference;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.youchain.base.BaseEntity;
|
||||
import com.youchain.modules.system.domain.Dept;
|
||||
import lombok.Data;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import cn.hutool.core.bean.copier.CopyOptions;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.sql.Timestamp;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
|
|
@ -32,7 +35,8 @@ import java.io.Serializable;
|
|||
* @date 2023-07-26
|
||||
**/
|
||||
@Entity
|
||||
@Data
|
||||
@Getter
|
||||
@Setter
|
||||
@Table(name="base_point")
|
||||
public class Point extends BaseEntity implements Serializable {
|
||||
|
||||
|
|
@ -123,6 +127,23 @@ public class Point extends BaseEntity implements Serializable {
|
|||
@JoinColumn(name = "`stock_id`")
|
||||
@ApiModelProperty(value = "容器")
|
||||
private Stock stock;
|
||||
// @OneToOne
|
||||
// @JoinColumn(name = "point_id")
|
||||
// @ApiModelProperty(value = "暂存库位")
|
||||
// private Point point;
|
||||
/** 下料*/
|
||||
@JsonIgnore
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "work_point_down_id")
|
||||
@ApiModelProperty(value = "工作站下料口", hidden = true)
|
||||
private WorkPoint workPointDown;
|
||||
/** 上料*/
|
||||
@JsonIgnore
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "work_point_up_id")
|
||||
@ApiModelProperty(value = "工作站上料口", hidden = true)
|
||||
private WorkPoint workPointUp;
|
||||
|
||||
public void copy(Point source){
|
||||
BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,16 +15,20 @@
|
|||
*/
|
||||
package com.youchain.basicdata.domain;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.JsonManagedReference;
|
||||
import com.youchain.base.BaseEntity;
|
||||
import com.youchain.modules.system.domain.Dept;
|
||||
import lombok.Data;
|
||||
import lombok.*;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import cn.hutool.core.bean.copier.CopyOptions;
|
||||
|
||||
import javax.persistence.*;
|
||||
import javax.validation.constraints.*;
|
||||
import java.sql.Timestamp;
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @website https://eladmin.vip
|
||||
|
|
@ -33,7 +37,8 @@ import java.io.Serializable;
|
|||
* @date 2024-09-26
|
||||
**/
|
||||
@Entity
|
||||
@Data
|
||||
@Setter
|
||||
@Getter
|
||||
@Table(name="base_work_point")
|
||||
public class WorkPoint extends BaseEntity implements Serializable {
|
||||
|
||||
|
|
@ -62,21 +67,15 @@ public class WorkPoint extends BaseEntity implements Serializable {
|
|||
@ApiModelProperty(value = "上料接驳口数")
|
||||
private Integer upNumber;
|
||||
|
||||
@OneToOne
|
||||
@JoinColumn(name = "up_point_id",nullable = false)
|
||||
@ApiModelProperty(value = "上料料接驳口")
|
||||
@NotNull
|
||||
private Point upPoint;
|
||||
@OneToMany(mappedBy = "workPointUp")
|
||||
private List<Point> upPoint = new ArrayList<>();
|
||||
|
||||
@Column(name = "`down_number`")
|
||||
@ApiModelProperty(value = "下料接驳口数")
|
||||
private Integer downNumber;
|
||||
@OneToOne
|
||||
@JoinColumn(name = "down_point_id",nullable = false)
|
||||
@ApiModelProperty(value = "下料接驳口")
|
||||
@NotNull
|
||||
private Point downPoint;
|
||||
|
||||
@OneToMany(mappedBy = "workPointDown")
|
||||
private List<Point> downPoint = new ArrayList<>();;
|
||||
@Column(name = "`agv_number`")
|
||||
@ApiModelProperty(value = "接驳口车辆数")
|
||||
private Integer agvNumber;
|
||||
|
|
@ -109,4 +108,5 @@ public class WorkPoint extends BaseEntity implements Serializable {
|
|||
public void copy(WorkPoint source){
|
||||
BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,6 +35,8 @@ public interface PointRepository extends JpaRepository<Point, Long>, JpaSpecific
|
|||
public List<Point> getPointList(String type);
|
||||
@Query(value = "SELECT p.* FROM base_point p WHERE p.code=?1", nativeQuery = true)
|
||||
Point findByCode(String code);
|
||||
@Query(value = "SELECT p FROM Point p", nativeQuery = false)
|
||||
List<Point> findByAll();
|
||||
/*@Query(value = "SELECT p.* FROM base_point p WHERE p.code=?1", nativeQuery = true)
|
||||
List<Point> findByCodes(String code);*/
|
||||
}
|
||||
|
|
@ -23,11 +23,16 @@ import com.youchain.annotation.AnonymousAccess;
|
|||
import com.youchain.annotation.Log;
|
||||
import com.youchain.basicdata.domain.Item;
|
||||
import com.youchain.basicdata.domain.Point;
|
||||
import com.youchain.basicdata.domain.WorkPoint;
|
||||
import com.youchain.basicdata.repository.ItemRepository;
|
||||
import com.youchain.basicdata.repository.PointRepository;
|
||||
import com.youchain.basicdata.service.AreaService;
|
||||
import com.youchain.basicdata.service.PointService;
|
||||
import com.youchain.basicdata.service.dto.PointDto;
|
||||
import com.youchain.basicdata.service.dto.PointQueryCriteria;
|
||||
import com.youchain.basicdata.service.dto.WorkPointDto;
|
||||
import com.youchain.basicdata.service.mapstruct.PointMapper;
|
||||
import com.youchain.basicdata.service.mapstruct.WorkPointMapper;
|
||||
import com.youchain.businessdata.service.InventoryService;
|
||||
import com.youchain.businessdata.service.dto.InventoryDto;
|
||||
import com.youchain.businessdata.service.dto.InventoryQueryCriteria;
|
||||
|
|
@ -35,8 +40,11 @@ import com.youchain.config.FileProperties;
|
|||
import com.youchain.exception.handler.ApiError;
|
||||
import com.youchain.modules.system.domain.Dept;
|
||||
import com.youchain.utils.FileUtil;
|
||||
import com.youchain.utils.PageUtil;
|
||||
import com.youchain.utils.QueryHelp;
|
||||
import com.youchain.utils.UserUtils;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.http.HttpStatus;
|
||||
|
|
@ -67,8 +75,10 @@ import javax.servlet.http.HttpServletResponse;
|
|||
public class PointController {
|
||||
|
||||
private final PointService pointService;
|
||||
private final PointMapper pointMapper;
|
||||
|
||||
private final AreaService areaService;
|
||||
private final PointRepository pointRepository;
|
||||
|
||||
private final FileProperties properties;
|
||||
private final ItemRepository itemRepository;
|
||||
|
|
@ -156,8 +166,14 @@ public class PointController {
|
|||
@Log("加载point下拉框")
|
||||
@ApiOperation("加载point下拉框")
|
||||
@AnonymousAccess
|
||||
public ResponseEntity<Object> getPointList(@RequestBody(required = false) String type) {
|
||||
return new ResponseEntity<>(pointService.getPointList(type), HttpStatus.OK);
|
||||
public ResponseEntity<Object> getPointList(@RequestBody(required = false) String data) {
|
||||
System.out.println(data);
|
||||
Pageable pageable=Pageable.ofSize(10);
|
||||
PointQueryCriteria criteria=new PointQueryCriteria();
|
||||
criteria.setCode(data);
|
||||
Page<Point> page = pointRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root, criteria, criteriaBuilder), pageable);
|
||||
List<PointDto> pointDto = pointMapper.toDto(page.getContent());
|
||||
return new ResponseEntity<>(pointDto, HttpStatus.OK);
|
||||
}
|
||||
|
||||
@GetMapping(value = "/queryPointList")
|
||||
|
|
|
|||
|
|
@ -17,8 +17,10 @@ package com.youchain.basicdata.rest;
|
|||
|
||||
import com.youchain.annotation.Log;
|
||||
import com.youchain.basicdata.domain.WorkPoint;
|
||||
import com.youchain.basicdata.repository.WorkPointRepository;
|
||||
import com.youchain.basicdata.service.WorkPointService;
|
||||
import com.youchain.basicdata.service.dto.WorkPointQueryCriteria;
|
||||
import com.youchain.exception.handler.ApiResult;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.http.HttpStatus;
|
||||
|
|
@ -28,6 +30,7 @@ import org.springframework.validation.annotation.Validated;
|
|||
import org.springframework.web.bind.annotation.*;
|
||||
import io.swagger.annotations.*;
|
||||
import java.io.IOException;
|
||||
import java.util.Map;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
/**
|
||||
|
|
@ -42,6 +45,7 @@ import javax.servlet.http.HttpServletResponse;
|
|||
public class WorkPointController {
|
||||
|
||||
private final WorkPointService workPointService;
|
||||
private final WorkPointRepository workPointRepository;
|
||||
|
||||
@Log("导出数据")
|
||||
@ApiOperation("导出数据")
|
||||
|
|
@ -56,7 +60,8 @@ public class WorkPointController {
|
|||
@ApiOperation("查询workPoint")
|
||||
@PreAuthorize("@el.check('workPoint:list')")
|
||||
public ResponseEntity<Object> queryWorkPoint(WorkPointQueryCriteria criteria, Pageable pageable){
|
||||
return new ResponseEntity<>(workPointService.queryAll(criteria,pageable),HttpStatus.OK);
|
||||
Map<String,Object> map=workPointService.queryAll(criteria,pageable);
|
||||
return new ResponseEntity<>(map,HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping
|
||||
|
|
@ -64,7 +69,9 @@ public class WorkPointController {
|
|||
@ApiOperation("新增workPoint")
|
||||
@PreAuthorize("@el.check('workPoint:add')")
|
||||
public ResponseEntity<Object> createWorkPoint(@Validated @RequestBody WorkPoint resources){
|
||||
return new ResponseEntity<>(workPointService.create(resources),HttpStatus.CREATED);
|
||||
workPointService.create(resources);
|
||||
ApiResult apiResult=ApiResult.fail(200,"操作成功",null);
|
||||
return new ResponseEntity<>(apiResult,HttpStatus.CREATED);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
|
|
@ -73,6 +80,7 @@ public class WorkPointController {
|
|||
@PreAuthorize("@el.check('workPoint:edit')")
|
||||
public ResponseEntity<Object> updateWorkPoint(@Validated @RequestBody WorkPoint resources){
|
||||
workPointService.update(resources);
|
||||
// workPointRepository.save(resources);
|
||||
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -59,6 +59,8 @@ public class PointDto implements Serializable {
|
|||
|
||||
/** 仓库ID */
|
||||
private DeptSmallDto dept;
|
||||
private WorkPointSmallDto workPointDown;
|
||||
private WorkPointSmallDto workPointUp;
|
||||
|
||||
/** 容器 */
|
||||
private Stock stock;
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@ import com.youchain.modules.system.domain.Dept;
|
|||
import lombok.Data;
|
||||
import java.sql.Timestamp;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @website https://eladmin.vip
|
||||
|
|
@ -47,13 +48,13 @@ public class WorkPointDto implements Serializable {
|
|||
private Integer upNumber;
|
||||
|
||||
/** 上料接驳口 */
|
||||
private Point upPoint;
|
||||
private List<PointDto> upPoint;
|
||||
|
||||
/** 下料接驳口数 */
|
||||
private Integer downNumber;
|
||||
|
||||
/** 下料接驳口 */
|
||||
private Point downPoint;
|
||||
private List<PointDto> downPoint;
|
||||
|
||||
/** 接驳口车辆数 */
|
||||
private Integer agvNumber;
|
||||
|
|
|
|||
|
|
@ -0,0 +1,9 @@
|
|||
package com.youchain.basicdata.service.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
@Data
|
||||
public class WorkPointSmallDto implements Serializable {
|
||||
Long id;
|
||||
}
|
||||
|
|
@ -61,7 +61,7 @@ public class PointServiceImpl implements PointService {
|
|||
|
||||
@Override
|
||||
public List<PointDto> getPointList(String type) {
|
||||
List<Point> pointList = null;
|
||||
List<Point> pointList = new ArrayList<>();
|
||||
// if (type.equals(null) || type.equals("1")) {
|
||||
// pointList = pointRepository.getPointList(BaseStatus.ZCKW);
|
||||
// } else
|
||||
|
|
@ -74,7 +74,7 @@ public class PointServiceImpl implements PointService {
|
|||
} else if (type.equals("5")) {//ZZKW
|
||||
pointList = pointRepository.getPointList(BaseStatus.ZZKW);
|
||||
} else if (type.equals("0")) {
|
||||
pointList=pointRepository.findAll();
|
||||
pointList=pointRepository.findByAll();
|
||||
}
|
||||
return pointMapper.toDto(pointList);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,9 @@
|
|||
*/
|
||||
package com.youchain.basicdata.service.impl;
|
||||
|
||||
import com.youchain.basicdata.domain.Point;
|
||||
import com.youchain.basicdata.domain.WorkPoint;
|
||||
import com.youchain.basicdata.repository.PointRepository;
|
||||
import com.youchain.exception.EntityExistException;
|
||||
import com.youchain.utils.*;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
|
@ -46,12 +48,14 @@ import java.util.LinkedHashMap;
|
|||
public class WorkPointServiceImpl implements WorkPointService {
|
||||
|
||||
private final WorkPointRepository workPointRepository;
|
||||
private final PointRepository pointRepository;
|
||||
private final WorkPointMapper workPointMapper;
|
||||
|
||||
@Override
|
||||
public Map<String,Object> queryAll(WorkPointQueryCriteria criteria, Pageable pageable){
|
||||
Page<WorkPoint> page = workPointRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable);
|
||||
return PageUtil.toPage(page.map(workPointMapper::toDto));
|
||||
Map<String,Object> map=PageUtil.toPage(page.map(workPointMapper::toDto));
|
||||
return map;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -74,11 +78,22 @@ public class WorkPointServiceImpl implements WorkPointService {
|
|||
throw new EntityExistException(WorkPoint.class,"code",resources.getCode());
|
||||
}
|
||||
resources.setDept(UserUtils.getDept());
|
||||
return workPointMapper.toDto(workPointRepository.save(resources));
|
||||
WorkPoint workPoint = workPointRepository.save(resources);
|
||||
/* 写入新上料点*/
|
||||
for (Point point:workPoint.getUpPoint()){
|
||||
point.setWorkPointUp(workPoint);
|
||||
pointRepository.save(point);
|
||||
}
|
||||
/* 写入新下料点*/
|
||||
for (Point point:workPoint.getDownPoint()){
|
||||
point.setWorkPointDown(workPoint);
|
||||
pointRepository.save(point);
|
||||
}
|
||||
return workPointMapper.toDto(workPoint);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@Transactional
|
||||
public void update(WorkPoint resources) {
|
||||
WorkPoint workPoint = workPointRepository.findById(resources.getId()).orElseGet(WorkPoint::new);
|
||||
ValidationUtil.isNull( workPoint.getId(),"WorkPoint","id",resources.getId());
|
||||
|
|
@ -87,13 +102,44 @@ public class WorkPointServiceImpl implements WorkPointService {
|
|||
if(workPoint1 != null && !workPoint1.getId().equals(workPoint.getId())){
|
||||
throw new EntityExistException(WorkPoint.class,"code",resources.getCode());
|
||||
}
|
||||
/* 清空原下料点*/
|
||||
for (Point point:workPoint1.getDownPoint()){
|
||||
point.setWorkPointDown(null);
|
||||
pointRepository.save(point);
|
||||
}
|
||||
/* 清空原上料点*/
|
||||
for (Point point:workPoint1.getUpPoint()){
|
||||
point.setWorkPointUp(null);
|
||||
pointRepository.save(point);
|
||||
}
|
||||
workPoint.copy(resources);
|
||||
workPointRepository.save(workPoint);
|
||||
/* 写入新上料点*/
|
||||
for (Point point:workPoint.getUpPoint()){
|
||||
point.setWorkPointUp(workPoint);
|
||||
pointRepository.save(point);
|
||||
}
|
||||
/* 写入新下料点*/
|
||||
for (Point point:workPoint.getDownPoint()){
|
||||
point.setWorkPointDown(workPoint);
|
||||
pointRepository.save(point);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteAll(Long[] ids) {
|
||||
for (Long id : ids) {
|
||||
WorkPoint workPoint=workPointRepository.getById(id);
|
||||
/* 清空原下料点*/
|
||||
for (Point point:workPoint.getDownPoint()){
|
||||
point.setWorkPointDown(null);
|
||||
pointRepository.save(point);
|
||||
}
|
||||
/* 清空原上料点*/
|
||||
for (Point point:workPoint.getUpPoint()){
|
||||
point.setWorkPointUp(null);
|
||||
pointRepository.save(point);
|
||||
}
|
||||
workPointRepository.deleteById(id);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue