no message

main
暴炳林 2024-06-04 14:37:27 +08:00
parent e1af3bea78
commit 2214bdfbc5
3 changed files with 66 additions and 7 deletions

View File

@ -34,4 +34,41 @@ public interface PointRepository extends JpaRepository<Point, Long>, JpaSpecific
@Query(value = "SELECT p FROM Point p WHERE p.code=?1", nativeQuery = false)
Point findByCode(String code);
/** 库位信息化看板*/
@Query(value = " select p.`code` 'pointCode',i.`code` 'itemCode' from base_point p "
+" left join base_area a on p.area_id=a.id "
+" left join data_inventory inv on inv.point_id=p.id "
+" left join data_item_key ik on ik.id=inv.item_key_id "
+" left join base_item i on i.id=ik.item_id "
+" where a.`code`='存储区' and p.type='STORAGE' ", nativeQuery = true)
List<Point> getDataPoint();
/** 库位信息化看板 查询货位组*/
@Query(value =" select p.pos_x,p.pos_y from base_point p "
+" left join base_area a on p.area_id=a.id "
+" left join data_inventory inv on inv.point_id=p.id "
+" left join data_item_key ik on ik.id=inv.item_key_id "
+" left join base_item i on i.id=ik.item_id "
+" where a.`code`='存储区' and p.type='STORAGE' "
+" group by p.pos_x,p.pos_y " , nativeQuery = true)
List<Map<String, Object>> getDataPointTotal();
/** 库位信息化看板 查询货架信息*/
@Query(value =" select p.pos_x,p.pos_y from base_point p "
+" left join base_area a on p.area_id=a.id "
+" left join data_inventory inv on inv.point_id=p.id "
+" left join data_item_key ik on ik.id=inv.item_key_id "
+" left join base_item i on i.id=ik.item_id "
+" where a.`code`='存储区' and p.type='STORAGE' "
+" group by p.pos_x,p.pos_y "
+" order by p.pos_x,p.pos_y asc "
+" LIMIT ?1,?2 ", nativeQuery = true)
List<Map<String, Object>> getDataPointLimit(int currentPage, int pageSize);
@Query(value =" select p.`code` 'pointCode',i.`code` 'itemCode' from base_point p "
+" left join base_area a on p.area_id=a.id "
+" left join data_inventory inv on inv.point_id=p.id "
+" left join data_item_key ik on ik.id=inv.item_key_id "
+" left join base_item i on i.id=ik.item_id "
+" where a.`code`='存储区' and p.type='STORAGE' "
+" and p.pos_x=?1 and p.pos_y=?2 ", nativeQuery = true)
List<Map<String, Object>> getDataPointList(double x, double y);
}

View File

@ -18,12 +18,14 @@ package com.youchain.basicdata.rest;
import cn.hutool.poi.excel.ExcelReader;
import cn.hutool.poi.excel.ExcelUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.youchain.annotation.AnonymousAccess;
import com.youchain.annotation.Log;
import com.youchain.appupdate.inputJson.CurrentPage;
import com.youchain.basicdata.domain.Area;
import com.youchain.basicdata.domain.Point;
import com.youchain.basicdata.repository.PointRepository;
import com.youchain.basicdata.service.AreaService;
import com.youchain.basicdata.service.PointService;
import com.youchain.basicdata.service.dto.AreaDto;
@ -68,6 +70,7 @@ import static org.springframework.http.HttpStatus.BAD_REQUEST;
public class PointController {
private final PointService pointService;
private final PointRepository pointRepository;
private final AreaService areaService;
@ -110,6 +113,7 @@ public class PointController {
String enabled = readAll.get(i).get("是否启用").toString().trim();
Double x = readAll.get(i).get("坐标X") == null ? 0 : Double.parseDouble(readAll.get(i).get("坐标X").toString());
Double y = readAll.get(i).get("坐标Y") == null ? 0 : Double.parseDouble(readAll.get(i).get("坐标Y").toString());
Double z = readAll.get(i).get("坐标Z") == null ? 0 : Double.parseDouble(readAll.get(i).get("坐标Z").toString());
Area area = areaService.findByCode(areaCode);
if (area == null) {
ApiError apiError = ApiError.errorJosn(BAD_REQUEST.value(), "找不到库区" + areaCode);
@ -132,6 +136,7 @@ public class PointController {
point.setDept(dept);
point.setPosX(x);
point.setPosY(y);
point.setPosZ(z);
point.setEnabled(true);
point.setStatus(BaseStatus.FREE);
pointService.create(point);
@ -140,7 +145,7 @@ public class PointController {
point.setCode(code);
point.setName(code);
String lx = "";
if (types.equals("存点")) {
if (types.equals("点")) {
lx = BaseStatus.STORAGE;
} else if (types.equals("线边点位")) {
@ -154,6 +159,7 @@ public class PointController {
point.setEnabled(Boolean.valueOf(enabled));
}
point.setPosY(y);
point.setPosZ(z);
pointService.update(point);
edit_len++;
}
@ -295,11 +301,27 @@ public class PointController {
@PostMapping("/queryPointInfo")
@AnonymousAccess
public ResponseEntity<Object> queryPointInfo(@RequestBody CurrentPage currentPage) {
List<Point> pointList= pointService.getPoint(BaseStatus.STORAGE,"存储区",currentPage.getCurrentPage(),currentPage.getPageSize());
int total=pointService.getPoint(BaseStatus.STORAGE,"存储区").size();
// List<Point> pointList= pointService.getPoint(BaseStatus.STORAGE,"存储区",currentPage.getCurrentPage(),currentPage.getPageSize());
int total=pointRepository.getDataPointTotal().size();
JSONArray dataArray=new JSONArray();
List<Map<String,Object>> pointList= pointRepository.getDataPointLimit((currentPage.getCurrentPage()-1)*currentPage.getPageSize(),currentPage.getPageSize());
for (int i = 0; i < pointList.size(); i++) {
double x=Double.valueOf(pointList.get(i).get("pos_x")+"");
double y=Double.valueOf(pointList.get(i).get("pos_y")+"");
dataArray.add(pointRepository.getDataPointList(x,y));
}
/*
JSONArray pointArray=new JSONArray();
JSONArray jsonArray=new JSONArray();
for (int i = 0; i < 5; i++) {
jsonArray.add(pointList.get(i));
}
pointArray.add(jsonArray);*/
JSONObject object=new JSONObject();
object.put("total",total);
object.put("data",pointList);
object.put("pageSize",12);
object.put("data",dataArray);
return new ResponseEntity<>(ApiResult.success(HttpStatus.OK.value(), "", object), HttpStatus.OK);
}

View File

@ -181,12 +181,12 @@ public class PointServiceImpl implements PointService {
@Override
public List<Point> getPoint(String type, String areaCode) {
String hql = " from Point p where p.enabled=true and p.status='FREE' and p.type='" + type + "' ";
/*String hql = " from Point p where p.enabled=true and p.status='FREE' and p.type='" + type + "' ";
if (areaCode != null) {
hql += " and p.area.code='" + areaCode + "'";
}
Query query = entityMapper.createQuery(hql);
List<Point> pointList = query.getResultList();
Query query = entityMapper.createQuery(hql);*/
List<Point> pointList = pointRepository.getDataPoint();
return pointList;
}