|
|
@@ -697,5 +697,67 @@ public class DataCollectController {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ @RequestMapping("/getSaleOrderData")
|
|
|
+ public List<SaleOrderMain> getSaleOrderData(@RequestBody PageBO pageBO) {
|
|
|
+// select ID,AutoID,cSOCode,cItemCode ,cItemName from SO_SODetails
|
|
|
+ //获取销售主表单信息数据
|
|
|
+// String sqlQueryMain = "select id,cSOCode,iStatus ,dverifysystime,dcreatesystime,dverifydate,iverifystate,dDate " +
|
|
|
+// "from SO_SOMAIN ssm where ssm.dverifydate >= DATEADD(day, -30, GETDATE()) order by ID OFFSET ? ROWS FETCH NEXT ? ROWS ONLY ";
|
|
|
+ String sqlQueryMain = "select id,cSOCode,iStatus ,dverifysystime,dcreatesystime,dverifydate,iverifystate,dDate " +
|
|
|
+ "from SO_SOMAIN ssm where ssm.iStatus = 1 ssm.cdefine1 = '设备' and cstcode = 10 and ssm.dverifydate >= DATEADD(day, -30, GETDATE()) order by ID";
|
|
|
+ //获取销售主表单信息数据
|
|
|
+ String sqlQueryDetail = "select id,autoId,cSOCode,cItemCode ,cItemName from SO_SODetails ssd where ssd.cSOCode in (?)";
|
|
|
+
|
|
|
+ SimpleDateFormat sdfYmd = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
+ DateTimeFormatter df=DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
+ DateTimeFormatter df1=DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
|
|
+ List<SaleOrderMain> resList = new ArrayList<>();
|
|
|
+ try (Connection connection = sqlServerDataSource.getConnection()) {
|
|
|
+ PreparedStatement queryMain = connection.prepareStatement(sqlQueryMain);
|
|
|
+// int pageSize = pageBO.getPageSize();
|
|
|
+// int offset = pageBO.getPageNo();
|
|
|
+// queryMain.setInt(1, offset);
|
|
|
+// queryMain.setInt(2, pageSize);
|
|
|
+ try (ResultSet resultSet = queryMain.executeQuery()) {
|
|
|
+ while (resultSet.next()) {
|
|
|
+ SaleOrderMain saleOrderMain = new SaleOrderMain();
|
|
|
+ saleOrderMain.setId(resultSet.getString("id"));
|
|
|
+ saleOrderMain.setOrderApproveDateTime(LocalDateTime.parse(resultSet.getString("dverifysystime"),df));
|
|
|
+ saleOrderMain.setOrderCreateDateTime(LocalDateTime.parse(resultSet.getString("dcreatesystime "),df));
|
|
|
+ saleOrderMain.setOrderApproveDate(LocalDate.parse(resultSet.getString("dverifydate"),df1));
|
|
|
+ saleOrderMain.setOrderNo(resultSet.getString("cSOCode"));
|
|
|
+ saleOrderMain.setOrderStatus(resultSet.getInt("iStatus"));
|
|
|
+ saleOrderMain.setSyncTime(LocalDateTime.now());
|
|
|
+ resList.add(saleOrderMain);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ List<String> mainIds = resList.stream().map(i -> i.getId()).distinct().collect(Collectors.toList());
|
|
|
+ PreparedStatement queryDetail = connection.prepareStatement(sqlQueryDetail);
|
|
|
+ String join = String.join(",", mainIds);
|
|
|
+ queryMain.setString(1, join);
|
|
|
+ List<SaleOrderDetail> saleOrderDetails=new ArrayList<>();
|
|
|
+ try (ResultSet resultSet = queryDetail.executeQuery()) {
|
|
|
+ while (resultSet.next()) {
|
|
|
+ SaleOrderDetail saleOrderDetail = new SaleOrderDetail();
|
|
|
+ saleOrderDetail.setId(resultSet.getInt("autoId"));
|
|
|
+ saleOrderDetail.setMainId(resultSet.getString("id"));
|
|
|
+ saleOrderDetail.setProjectName(resultSet.getString("cItemName"));
|
|
|
+ saleOrderDetail.setProjectCode(resultSet.getString("cItemCode"));
|
|
|
+ saleOrderDetail.setOrderNo(resultSet.getString("cSOCode"));
|
|
|
+ saleOrderDetail.setSyncTime(LocalDateTime.now());
|
|
|
+ saleOrderDetails.add(saleOrderDetail);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for (SaleOrderMain saleOrderMain : resList) {
|
|
|
+ List<SaleOrderDetail> detailList = saleOrderDetails.stream().filter(i -> i.getMainId().equals(saleOrderMain.getId())).collect(Collectors.toList());
|
|
|
+ saleOrderMain.setSaleOrderDetails(detailList);
|
|
|
+ }
|
|
|
+ } catch (SQLException e) {
|
|
|
+ System.err.println("数据库操作错误: " + e.getMessage());
|
|
|
+ }
|
|
|
+ return resList;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
|
|
|
}
|