dev
parent
4b565e841f
commit
051be87f3c
|
|
@ -129,4 +129,39 @@ public class ReportExcelStyle {
|
||||||
sheet.getLastRowNum() //end row
|
sheet.getLastRowNum() //end row
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void setCommonCellStyle(
|
||||||
|
Workbook wb,
|
||||||
|
Sheet sheet,
|
||||||
|
int datalen,
|
||||||
|
int end_col
|
||||||
|
){
|
||||||
|
// 通用单元格格式
|
||||||
|
Font font = wb.createFont();
|
||||||
|
CellStyle cellStyle = wb.createCellStyle();
|
||||||
|
font.setFontHeight((short) (10 * 20));
|
||||||
|
font.setFontName("宋体");
|
||||||
|
cellStyle.setAlignment(HorizontalAlignment.CENTER);//水平居中
|
||||||
|
cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);//垂直居中
|
||||||
|
cellStyle.setFont(font);
|
||||||
|
|
||||||
|
Row row;
|
||||||
|
|
||||||
|
// 设置通用单元格格式
|
||||||
|
for (int r = 0; r < datalen + 1; r++) {
|
||||||
|
row = sheet.getRow(r);
|
||||||
|
if (row == null) {
|
||||||
|
row = sheet.createRow(r);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int c = 0; c < end_col + 1; c++) {
|
||||||
|
Cell cell = row.getCell(c);
|
||||||
|
|
||||||
|
if (cell == null) {
|
||||||
|
cell = row.createCell(c);
|
||||||
|
}
|
||||||
|
cell.setCellStyle(cellStyle);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -26,11 +26,33 @@ import java.util.List;
|
||||||
public class OrderclusterTruckService extends BaseService {
|
public class OrderclusterTruckService extends BaseService {
|
||||||
public static final OrderclusterTruckService me = new OrderclusterTruckService();
|
public static final OrderclusterTruckService me = new OrderclusterTruckService();
|
||||||
|
|
||||||
public Page<Record> find(PageParam pp) {
|
public Page<Record> find(PageParam pp, String stm, String etm, String customer_name, String truck_license) {
|
||||||
String selectsql = "select * ";
|
String selectsql = "select * ";
|
||||||
String fromsql = "from ordercluster_truck t where 1=1 ";
|
String fromsql = "from ordercluster_truck t \n" +
|
||||||
|
" left join ordercluster c on c.id = t.ordercluster_id \n" +
|
||||||
|
" where 1=1 ";
|
||||||
List<Object> paraList = new ArrayList<>();
|
List<Object> paraList = new ArrayList<>();
|
||||||
|
|
||||||
|
if (StrKit.notBlank(stm)) {
|
||||||
|
fromsql += " and c.cutoff_time >= ? \n";
|
||||||
|
paraList.add(stm);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (StrKit.notBlank(etm)) {
|
||||||
|
fromsql += " and c.cutoff_time <= ? \n";
|
||||||
|
paraList.add(etm);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (StrKit.notBlank(customer_name)) {
|
||||||
|
fromsql += " and c.customer_name like ? \n";
|
||||||
|
paraList.add("%" + customer_name.trim() + "%");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (StrKit.notBlank(truck_license)) {
|
||||||
|
fromsql += " and t.truck_license like ? \n";
|
||||||
|
paraList.add("%" + truck_license.trim() + "%");
|
||||||
|
}
|
||||||
|
|
||||||
String totalRowSql = "select count(*) " + fromsql;
|
String totalRowSql = "select count(*) " + fromsql;
|
||||||
String findSql = selectsql + fromsql;
|
String findSql = selectsql + fromsql;
|
||||||
|
|
||||||
|
|
@ -43,6 +65,8 @@ public class OrderclusterTruckService extends BaseService {
|
||||||
} else {
|
} else {
|
||||||
findSql += " " + Const.ORDER_BY_DESC;
|
findSql += " " + Const.ORDER_BY_DESC;
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
findSql += " order by c.cutoff_time desc";
|
||||||
}
|
}
|
||||||
|
|
||||||
return Db.paginateByFullSql(pp.getPage(), pp.getSize(), totalRowSql, findSql, paraList.toArray());
|
return Db.paginateByFullSql(pp.getPage(), pp.getSize(), totalRowSql, findSql, paraList.toArray());
|
||||||
|
|
@ -54,6 +78,7 @@ public class OrderclusterTruckService extends BaseService {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 验证车牌号是不是再当天有运输任务
|
* 验证车牌号是不是再当天有运输任务
|
||||||
|
*
|
||||||
* @param supermarket_id
|
* @param supermarket_id
|
||||||
* @param truck_license
|
* @param truck_license
|
||||||
* @return
|
* @return
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import com.cowr.common.utils.DateTimeUtil;
|
||||||
import com.jfinal.plugin.activerecord.Db;
|
import com.jfinal.plugin.activerecord.Db;
|
||||||
import com.jfinal.plugin.activerecord.Record;
|
import com.jfinal.plugin.activerecord.Record;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Calendar;
|
import java.util.Calendar;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
|
||||||
|
|
@ -12,8 +12,10 @@ import com.jfinal.log.Log;
|
||||||
import com.jfinal.plugin.activerecord.Db;
|
import com.jfinal.plugin.activerecord.Db;
|
||||||
import com.jfinal.plugin.activerecord.Record;
|
import com.jfinal.plugin.activerecord.Record;
|
||||||
import org.apache.poi.ss.usermodel.*;
|
import org.apache.poi.ss.usermodel.*;
|
||||||
|
import org.apache.poi.ss.util.CellRangeAddress;
|
||||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
public class OrderStatService {
|
public class OrderStatService {
|
||||||
|
|
@ -285,8 +287,6 @@ public class OrderStatService {
|
||||||
|
|
||||||
double sum_weight = 0.0;
|
double sum_weight = 0.0;
|
||||||
double sum_price = 0.0;
|
double sum_price = 0.0;
|
||||||
double sum_distance = 0.0;
|
|
||||||
double sum_trans_price = 0.0;
|
|
||||||
double isprepaid_sum_price = 0.0;
|
double isprepaid_sum_price = 0.0;
|
||||||
int datalen = list.size();
|
int datalen = list.size();
|
||||||
int end_col = sup_name == null ? 11 : 10;
|
int end_col = sup_name == null ? 11 : 10;
|
||||||
|
|
@ -296,8 +296,6 @@ public class OrderStatService {
|
||||||
|
|
||||||
sum_weight += DataUtil.getDefaultByRecord(order, "weight");
|
sum_weight += DataUtil.getDefaultByRecord(order, "weight");
|
||||||
sum_price += DataUtil.getDefaultByRecord(order, "total_price");
|
sum_price += DataUtil.getDefaultByRecord(order, "total_price");
|
||||||
sum_distance += DataUtil.getDefaultByRecord(order, "trans_distance");
|
|
||||||
sum_trans_price += DataUtil.getDefaultByRecord(order, "trans_price");
|
|
||||||
|
|
||||||
if (order.getInt("isprepaid") == 1) {
|
if (order.getInt("isprepaid") == 1) {
|
||||||
isprepaid_sum_price += DataUtil.getDefaultByRecord(order, "total_price");
|
isprepaid_sum_price += DataUtil.getDefaultByRecord(order, "total_price");
|
||||||
|
|
@ -306,6 +304,11 @@ public class OrderStatService {
|
||||||
row = sheet.createRow(i + 3);
|
row = sheet.createRow(i + 3);
|
||||||
a = 0;
|
a = 0;
|
||||||
row.createCell(a++).setCellValue(i + 1);
|
row.createCell(a++).setCellValue(i + 1);
|
||||||
|
|
||||||
|
if (order.get("in_time") == null) {
|
||||||
|
log.error("有 transport 未同步成功 %s", order.toJson());
|
||||||
|
}
|
||||||
|
|
||||||
row.createCell(a++).setCellValue(DateTimeUtil.sdfhms.get().format(order.getDate("in_time")));
|
row.createCell(a++).setCellValue(DateTimeUtil.sdfhms.get().format(order.getDate("in_time")));
|
||||||
row.createCell(a++).setCellValue(order.getStr("sn"));
|
row.createCell(a++).setCellValue(order.getStr("sn"));
|
||||||
row.createCell(a++).setCellValue(order.getStr("product_name"));
|
row.createCell(a++).setCellValue(order.getStr("product_name"));
|
||||||
|
|
@ -1441,4 +1444,186 @@ public class OrderStatService {
|
||||||
|
|
||||||
return wb;
|
return wb;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<Record> yearStatBySup(String year) {
|
||||||
|
List<Record> list;
|
||||||
|
if (StrKit.notBlank(year)) {
|
||||||
|
list = Db.find("select s.name, a.* from supermarket s\n" +
|
||||||
|
"left join (\n" +
|
||||||
|
" select t.supermarket_id id, count(t.sn) cnt, sum(t.total_price) total_price, sum(weight) total_weight from order_temp t\n" +
|
||||||
|
" where t.state = 5\n" +
|
||||||
|
" and t.create_time like ? \n" +
|
||||||
|
" group by t.supermarket_id\n" +
|
||||||
|
") a on s.id = a.id", year + "%");
|
||||||
|
} else {
|
||||||
|
list = Db.find("select s.name, a.* from supermarket s\n" +
|
||||||
|
"left join (\n" +
|
||||||
|
" select t.supermarket_id id, count(t.sn) cnt, sum(t.total_price) total_price, sum(weight) total_weight from order_temp t\n" +
|
||||||
|
" where t.state = 5\n" +
|
||||||
|
" group by t.supermarket_id\n" +
|
||||||
|
") a on s.id = a.id");
|
||||||
|
}
|
||||||
|
|
||||||
|
Record hj = new Record();
|
||||||
|
hj.set("id", 0);
|
||||||
|
hj.set("name", "合计");
|
||||||
|
hj.set("cnt", 0);
|
||||||
|
hj.set("total_price", new BigDecimal(0));
|
||||||
|
hj.set("total_weight", new BigDecimal(0));
|
||||||
|
|
||||||
|
for (Record record : list) {
|
||||||
|
hj.set("cnt", hj.getInt("cnt") + record.getInt("cnt"));
|
||||||
|
hj.set("total_price", hj.getBigDecimal("total_price").add(record.getBigDecimal("total_price")));
|
||||||
|
hj.set("total_weight", hj.getBigDecimal("total_weight").add(record.getBigDecimal("total_weight")));
|
||||||
|
}
|
||||||
|
|
||||||
|
list.add(hj);
|
||||||
|
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Workbook yearStatBySupExport(String year) {
|
||||||
|
List<Record> list = yearStatBySup(year);
|
||||||
|
Workbook wb = new XSSFWorkbook();
|
||||||
|
Sheet sheet;
|
||||||
|
|
||||||
|
if (StrKit.notBlank(year)) {
|
||||||
|
sheet = wb.createSheet(year + "年销售汇总");
|
||||||
|
} else {
|
||||||
|
sheet = wb.createSheet("销售汇总");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 表头 start
|
||||||
|
Row row = sheet.createRow(0);
|
||||||
|
int a = 0;
|
||||||
|
row.createCell(a++).setCellValue("名称");
|
||||||
|
row.createCell(a++).setCellValue("订单量");
|
||||||
|
row.createCell(a++).setCellValue("总销售吨数");
|
||||||
|
row.createCell(a++).setCellValue("总销售额");
|
||||||
|
|
||||||
|
int end_col = 4;
|
||||||
|
int datalen = list.size();
|
||||||
|
for (int i = 0; i < datalen; i++) {
|
||||||
|
Record order = list.get(i);
|
||||||
|
|
||||||
|
row = sheet.createRow(i + 1);
|
||||||
|
a = 0;
|
||||||
|
row.createCell(a++).setCellValue(order.getStr("name"));
|
||||||
|
row.createCell(a++).setCellValue(order.getInt("cnt"));
|
||||||
|
row.createCell(a++).setCellValue(DataUtil.getDefaultByRecord(order, "total_weight"));
|
||||||
|
row.createCell(a++).setCellValue(DataUtil.getDefaultByRecord(order, "total_price"));
|
||||||
|
}
|
||||||
|
|
||||||
|
ReportExcelStyle.setCommonCellStyle(wb, sheet, datalen, end_col);
|
||||||
|
|
||||||
|
return wb;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Record> yearStatByCustomer(String year) {
|
||||||
|
List<Record> list;
|
||||||
|
if (StrKit.notBlank(year)) {
|
||||||
|
list = Db.find("select ifnull(c.name, '零散') name, a.*, p.surplus total_surplus from (\n" +
|
||||||
|
" select ifnull(t.customer_id, -1) id, count(t.sn) cnt, sum(t.total_price) total_price, sum(weight) total_weight from order_temp t\n" +
|
||||||
|
" where t.state = 5\n" +
|
||||||
|
" and t.create_time like ? \n" +
|
||||||
|
" group by t.customer_id\n" +
|
||||||
|
" ) a\n" +
|
||||||
|
" left join customer c on c.id = a.id\n" +
|
||||||
|
" left join prepay_customer p on p.customer_id = a.id", year + "%");
|
||||||
|
} else {
|
||||||
|
list = Db.find("select ifnull(c.name, '零散') name, a.*, p.surplus total_surplus from (\n" +
|
||||||
|
" select ifnull(t.customer_id, -1) id, count(t.sn) cnt, sum(t.total_price) total_price, sum(weight) total_weight from order_temp t\n" +
|
||||||
|
" where t.state = 5\n" +
|
||||||
|
" group by t.customer_id\n" +
|
||||||
|
" ) a\n" +
|
||||||
|
" left join customer c on c.id = a.id\n" +
|
||||||
|
" left join prepay_customer p on p.customer_id = a.id");
|
||||||
|
}
|
||||||
|
|
||||||
|
Record hj = new Record();
|
||||||
|
hj.set("id", 0);
|
||||||
|
hj.set("name", "合计");
|
||||||
|
hj.set("cnt", 0);
|
||||||
|
hj.set("total_price", new BigDecimal(0));
|
||||||
|
hj.set("total_weight", new BigDecimal(0));
|
||||||
|
hj.set("total_weight", new BigDecimal(0));
|
||||||
|
hj.set("total_surplus", new BigDecimal(0));
|
||||||
|
|
||||||
|
for (Record record : list) {
|
||||||
|
hj.set("cnt", hj.getInt("cnt") + record.getInt("cnt"));
|
||||||
|
hj.set("total_price", hj.getBigDecimal("total_price").add(record.getBigDecimal("total_price")));
|
||||||
|
hj.set("total_weight", hj.getBigDecimal("total_weight").add(record.getBigDecimal("total_weight")));
|
||||||
|
|
||||||
|
if (record.get("total_surplus") != null) {
|
||||||
|
hj.set("total_surplus", hj.getBigDecimal("total_surplus").add(record.getBigDecimal("total_surplus")));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
hj.set("total_account_surplus", hj.getBigDecimal("total_surplus").add(hj.getBigDecimal("total_price")));
|
||||||
|
|
||||||
|
list.add(hj);
|
||||||
|
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public Workbook yearStatByCustomerExport(String year) {
|
||||||
|
List<Record> list = yearStatByCustomer(year);
|
||||||
|
Workbook wb = new XSSFWorkbook();
|
||||||
|
Sheet sheet;
|
||||||
|
|
||||||
|
if (StrKit.notBlank(year)) {
|
||||||
|
sheet = wb.createSheet(year + "年销售汇总");
|
||||||
|
} else {
|
||||||
|
sheet = wb.createSheet("销售汇总");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 表头 start
|
||||||
|
Row row = sheet.createRow(0);
|
||||||
|
int a = 0;
|
||||||
|
row.createCell(a++).setCellValue("名称");
|
||||||
|
row.createCell(a++).setCellValue("订单量");
|
||||||
|
row.createCell(a++).setCellValue("总销售吨数");
|
||||||
|
row.createCell(a++).setCellValue("总销售额");
|
||||||
|
row.createCell(a++).setCellValue("客户总余额");
|
||||||
|
|
||||||
|
int end_col = 5;
|
||||||
|
int datalen = list.size();
|
||||||
|
Record hj = null;
|
||||||
|
|
||||||
|
for (int i = 0; i < datalen; i++) {
|
||||||
|
Record order = list.get(i);
|
||||||
|
|
||||||
|
row = sheet.createRow(i + 1);
|
||||||
|
a = 0;
|
||||||
|
|
||||||
|
if (order.getInt("id") == 0) {
|
||||||
|
hj = order;
|
||||||
|
}
|
||||||
|
|
||||||
|
row.createCell(a++).setCellValue(order.getStr("name"));
|
||||||
|
row.createCell(a++).setCellValue(order.getInt("cnt"));
|
||||||
|
row.createCell(a++).setCellValue(DataUtil.getDefaultByRecord(order, "total_weight"));
|
||||||
|
row.createCell(a++).setCellValue(DataUtil.getDefaultByRecord(order, "total_price"));
|
||||||
|
row.createCell(a++).setCellValue(DataUtil.getDefaultByRecord(order, "total_surplus"));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hj != null) {
|
||||||
|
row = sheet.createRow(datalen + 1);
|
||||||
|
a = 0;
|
||||||
|
|
||||||
|
row.createCell(a++).setCellValue("账户总余额");
|
||||||
|
row.createCell(a++).setCellValue("");
|
||||||
|
row.createCell(a++).setCellValue("");
|
||||||
|
row.createCell(a++).setCellValue(DataUtil.getDefaultByRecord(hj, "total_account_surplus"));
|
||||||
|
row.createCell(a++).setCellValue("");
|
||||||
|
}
|
||||||
|
|
||||||
|
sheet.addMergedRegion(new CellRangeAddress(datalen + 1, datalen + 1, 3, 4));// 下标从0开始 起始行号,终止行号, 起始列号,终止列号
|
||||||
|
ReportExcelStyle.setCommonCellStyle(wb, sheet, datalen + 1, end_col);
|
||||||
|
|
||||||
|
return wb;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,11 @@ public class OrderclusterTruckController extends Controller {
|
||||||
*/
|
*/
|
||||||
public void find() {
|
public void find() {
|
||||||
PageParam pp = getBean(PageParam.class, "", true);
|
PageParam pp = getBean(PageParam.class, "", true);
|
||||||
renderJson(Result.object(OrderclusterTruckService.me.find(pp)));
|
String stm = get("stm");
|
||||||
|
String etm = get("etm");
|
||||||
|
String customer_name = get("customer_name");
|
||||||
|
String truck_license = get("truck_license");
|
||||||
|
renderJson(Result.object(OrderclusterTruckService.me.find(pp, stm, etm, customer_name, truck_license)));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import com.cowr.common.base.BaseController;
|
||||||
import com.cowr.common.validator.DayValidator;
|
import com.cowr.common.validator.DayValidator;
|
||||||
import com.cowr.common.validator.MonthValidator;
|
import com.cowr.common.validator.MonthValidator;
|
||||||
import com.cowr.common.validator.StartAndEndIntervalValidator;
|
import com.cowr.common.validator.StartAndEndIntervalValidator;
|
||||||
|
import com.cowr.common.validator.YearValidator;
|
||||||
import com.cowr.common.view.ExcelRender;
|
import com.cowr.common.view.ExcelRender;
|
||||||
import com.cowr.common.view.Result;
|
import com.cowr.common.view.Result;
|
||||||
import com.cowr.ssjygl.stat.sale.OrderStatService;
|
import com.cowr.ssjygl.stat.sale.OrderStatService;
|
||||||
|
|
@ -279,4 +280,26 @@ public class OrderStatController extends BaseController {
|
||||||
render(new ExcelRender(stm + "_" + etm + "_砂站" + (isprepaid != null && isprepaid == 1 ? "预付费" : "") + "销售汇总表_" + System.currentTimeMillis() + ".xlsx", wb));
|
render(new ExcelRender(stm + "_" + etm + "_砂站" + (isprepaid != null && isprepaid == 1 ? "预付费" : "") + "销售汇总表_" + System.currentTimeMillis() + ".xlsx", wb));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void statYearCustomer() {
|
||||||
|
String tm = get("tm");
|
||||||
|
int export = getInt("export", 0); // 是否导出为exce 0 不导出,1 导出
|
||||||
|
if (export == 0) {
|
||||||
|
renderJson(Result.object(OrderStatService.me.yearStatByCustomer(tm)));
|
||||||
|
} else {
|
||||||
|
Workbook wb = OrderStatService.me.yearStatByCustomerExport(tm);
|
||||||
|
render(new ExcelRender("按客户统计总销售汇总表_" + System.currentTimeMillis() + ".xlsx", wb));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void statYearBySup() {
|
||||||
|
String tm = get("tm");
|
||||||
|
int export = getInt("export", 0); // 是否导出为exce 0 不导出,1 导出
|
||||||
|
if (export == 0) {
|
||||||
|
renderJson(Result.object(OrderStatService.me.yearStatBySup(tm)));
|
||||||
|
} else {
|
||||||
|
Workbook wb = OrderStatService.me.yearStatBySupExport(tm);
|
||||||
|
render(new ExcelRender("按砂站总销售汇总表_" + System.currentTimeMillis() + ".xlsx", wb));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -174,6 +174,13 @@ public class SyncTaskService {
|
||||||
if (ret.length != list.size()) {
|
if (ret.length != list.size()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (int i : ret) {
|
||||||
|
// 必须是每条 sql 修改一条记录
|
||||||
|
if (i != 1) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -196,6 +203,13 @@ public class SyncTaskService {
|
||||||
if (ret.length != list.size()) {
|
if (ret.length != list.size()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (int i : ret) {
|
||||||
|
// 必须是每条 sql 修改一条记录
|
||||||
|
if (i != 1) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -221,6 +221,8 @@ public class NettyServer {
|
||||||
.fluentPut("target", Enums.MsgTarget.SYNCRECV)
|
.fluentPut("target", Enums.MsgTarget.SYNCRECV)
|
||||||
.fluentPut("id", data.get("id"))
|
.fluentPut("id", data.get("id"))
|
||||||
.toJSONString());
|
.toJSONString());
|
||||||
|
} else {
|
||||||
|
log.debug("数据接收后,入库失败:", msg);
|
||||||
}
|
}
|
||||||
} else if (Enums.MsgTarget.SYNCRECV.name().equals(target)) {
|
} else if (Enums.MsgTarget.SYNCRECV.name().equals(target)) {
|
||||||
SyncTaskService.me.syncComplete(json.getString("id"));
|
SyncTaskService.me.syncComplete(json.getString("id"));
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
package com.cowr.service.ssjygl.order.ordercluster;
|
||||||
|
|
||||||
|
import com.cowr.common.validator.CrudParamValidator;
|
||||||
|
import com.cowr.common.view.Result;
|
||||||
|
import com.jfinal.core.Controller;
|
||||||
|
import com.jfinal.kit.StrKit;
|
||||||
|
|
||||||
|
public class EditTempClusterValidator extends CrudParamValidator {
|
||||||
|
@Override
|
||||||
|
protected void validate(Controller c) {
|
||||||
|
validateRequired("id", "id", "id 必填");
|
||||||
|
validateInteger("id", 1, 2147483647, "id", "id 范围 1~2147483647");
|
||||||
|
validateBigDecimal("total_weight", new java.math.BigDecimal("0.01"), new java.math.BigDecimal(9.9999999999E10), "total_weight", "total_weight 范围 0.01~9.9999999999E10");
|
||||||
|
validateString("trucks", 1, 2000, "trucks", "trucks 长度 1~2000");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void handleError(Controller c) {
|
||||||
|
c.renderJson(Result.failed(getErrmsg()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -94,6 +94,21 @@ public class OrderclusterController extends BaseController {
|
||||||
renderJson(OrderclusterSyncService.me.update(model, tokenuser));
|
renderJson(OrderclusterSyncService.me.update(model, tokenuser));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Before(EditTempClusterValidator.class)
|
||||||
|
public void editTemp() {
|
||||||
|
Sysuser tokenuser = SysuserSyncService.me.getSysuserByToken(get("token"));
|
||||||
|
|
||||||
|
if (tokenuser == null) {
|
||||||
|
renderJson(Result.noauth());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Ordercluster model = getModel(Ordercluster.class, "", true); // 忽略不在model中的字段
|
||||||
|
String trucks = get("trucks");
|
||||||
|
|
||||||
|
renderJson(OrderclusterSyncService.me.updateTemp(model, trucks, tokenuser));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页查找 ordercluster 订单簇 - 集团客户订单
|
* 分页查找 ordercluster 订单簇 - 集团客户订单
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -315,16 +315,20 @@ public class OrderclusterSyncService extends BaseSyncService {
|
||||||
" and t.truck_license in (" + StrKit.join(tsql, ",") + ")", ts.toArray());
|
" and t.truck_license in (" + StrKit.join(tsql, ",") + ")", ts.toArray());
|
||||||
|
|
||||||
if (chkduk != null && !chkduk.isEmpty()) {
|
if (chkduk != null && !chkduk.isEmpty()) {
|
||||||
ts = new ArrayList<>();
|
List<String> outerr = new ArrayList<>();
|
||||||
|
|
||||||
for (Record bl : chkduk) {
|
for (Record bl : chkduk) {
|
||||||
ts.add(bl.get("truck_license"));
|
outerr.add(String.format(
|
||||||
|
"[%s]已经在[%s]分配给了[%s]",
|
||||||
|
bl.get("truck_license"),
|
||||||
|
DateTimeUtil.sdfymd.get().format(bl.get("cutoff_time")),
|
||||||
|
bl.get("customer_name")
|
||||||
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
return Result.failed(StrKit.join(ts, ",") + " 车牌号已经分配给其他客户");
|
return Result.failed(StrKit.join(outerr, "。"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
SyncTask synctask = new SyncTask();
|
SyncTask synctask = new SyncTask();
|
||||||
Ordercluster model = new Ordercluster();
|
Ordercluster model = new Ordercluster();
|
||||||
model.setCustomerName(customer_name);
|
model.setCustomerName(customer_name);
|
||||||
|
|
@ -511,6 +515,202 @@ public class OrderclusterSyncService extends BaseSyncService {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public Result updateTemp(Ordercluster model, String trucks, Sysuser sysuser) {
|
||||||
|
Ordercluster oldobj = model.findByPk();
|
||||||
|
|
||||||
|
if (oldobj == null) {
|
||||||
|
return Result.failed(false, "按主键未找到对应记录");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (oldobj.getState() >= OrderStateEnum.RECEIVED.getStateid()) {
|
||||||
|
return Result.failed(false, "订单已完成,不能修改");
|
||||||
|
}
|
||||||
|
|
||||||
|
BigDecimal overweight = OrderclusterService.me.getOverWeight(model.getId()); // 集团订单已完成量
|
||||||
|
|
||||||
|
if (model.getTotalWeight().compareTo(overweight) < 0) {
|
||||||
|
return Result.failedstr("总量不能低于已运输量(%.2f)", overweight);
|
||||||
|
} else {
|
||||||
|
oldobj.setTotalWeight(model.getTotalWeight());
|
||||||
|
}
|
||||||
|
|
||||||
|
String query_cutoff_time = DateTimeUtil.sdf.get().format(oldobj.getCutoffTime());
|
||||||
|
List<String> chk = new ArrayList<>();
|
||||||
|
String[] truckarr = trucks.split(",");
|
||||||
|
List<Object> ts = new ArrayList<>();
|
||||||
|
List<String> tsql = new ArrayList<>();
|
||||||
|
|
||||||
|
// 检查提交上来的车辆字符串是否用重复的
|
||||||
|
for (String truck_license : truckarr) {
|
||||||
|
if (chk.contains(truck_license)) {
|
||||||
|
return Result.failedstr("车牌号 %s 重复", truck_license);
|
||||||
|
}
|
||||||
|
|
||||||
|
chk.add(truck_license);
|
||||||
|
|
||||||
|
ts.add(truck_license);
|
||||||
|
tsql.add("?");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 检查是否还在黑名单中,未被移除
|
||||||
|
List<Blacklist> list = Blacklist.dao.find(
|
||||||
|
"select * from blacklist \n" +
|
||||||
|
" where remove_user_id is null \n" +
|
||||||
|
" and truck_license in (" + StrKit.join(tsql, ",") + ")", ts.toArray());
|
||||||
|
|
||||||
|
if (list != null && !list.isEmpty()) {
|
||||||
|
List<String> retts = new ArrayList<>();
|
||||||
|
|
||||||
|
for (Blacklist bl : list) {
|
||||||
|
retts.add(bl.getTruckLicense());
|
||||||
|
}
|
||||||
|
|
||||||
|
return Result.failed(StrKit.join(retts, ",") + " 车牌号在黑名单中");
|
||||||
|
}
|
||||||
|
|
||||||
|
ts.add(0, query_cutoff_time + "%");
|
||||||
|
List<Record> chkduk = Db.find(
|
||||||
|
"select * from ordercluster_truck t \n" +
|
||||||
|
" left join ordercluster c on c.id = t.ordercluster_id\n" +
|
||||||
|
" where c.state < 5 \n" + // OrderStateEnum.RECEIVED.getStateid()
|
||||||
|
" and t.ordercluster_id <> " + oldobj.getId() +
|
||||||
|
" and c.cutoff_time like ? \n" +
|
||||||
|
" and t.truck_license in (" + StrKit.join(tsql, ",") + ")", ts.toArray());
|
||||||
|
|
||||||
|
if (chkduk != null && !chkduk.isEmpty()) {
|
||||||
|
List<String> outerr = new ArrayList<>();
|
||||||
|
|
||||||
|
for (Record bl : chkduk) {
|
||||||
|
outerr.add(String.format(
|
||||||
|
"[%s]已经在[%s]分配给了[%s]",
|
||||||
|
bl.get("truck_license"),
|
||||||
|
DateTimeUtil.sdfymd.get().format(bl.get("cutoff_time")),
|
||||||
|
bl.get("customer_name")
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
return Result.failed(StrKit.join(outerr, "。"));
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询已有的集团订单分配的车辆
|
||||||
|
List<OrderclusterTruck> otlist = OrderclusterTruck.dao.find(
|
||||||
|
"select * from ordercluster_truck \n" +
|
||||||
|
" where ordercluster_id = ? \n", oldobj.getId());
|
||||||
|
|
||||||
|
List<String> dellist = new ArrayList<>();
|
||||||
|
List<String> chktpsql = new ArrayList<>();
|
||||||
|
List<String> chkold = new ArrayList<>();
|
||||||
|
SyncTask synctask = new SyncTask();
|
||||||
|
|
||||||
|
// 数据库中,提交上的数据中没有的,要删掉
|
||||||
|
for (OrderclusterTruck ot : otlist) {
|
||||||
|
if (!chk.contains(ot.getTruckLicense())) {
|
||||||
|
dellist.add(ot.getTruckLicense());
|
||||||
|
chktpsql.add("?");
|
||||||
|
synctask.addDeleteData(ot);
|
||||||
|
} else {
|
||||||
|
chkold.add(ot.getTruckLicense());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 要删除的车辆没有结算,不能删除
|
||||||
|
if (!dellist.isEmpty()) {
|
||||||
|
List<String> querydel = new ArrayList<>();
|
||||||
|
querydel.add(oldobj.getSupermarketId().toString());
|
||||||
|
querydel.add(DateTimeUtil.sdf.get().format(oldobj.getCutoffTime()) + "%");
|
||||||
|
querydel.addAll(dellist);
|
||||||
|
|
||||||
|
List<Transport> chktp = Transport.dao.find("select * from transport t \n" +
|
||||||
|
" where t.state < 5 \n" +
|
||||||
|
" and t.supermarket_id = ? \n" +
|
||||||
|
" and t.in_time like ? \n" +
|
||||||
|
" and t.truck_license in(" + StrKit.join(chktpsql, ",") + ")", querydel.toArray());
|
||||||
|
|
||||||
|
if (!chktp.isEmpty()) {
|
||||||
|
List<String> outerr = new ArrayList<>();
|
||||||
|
|
||||||
|
for (Transport tp : chktp) {
|
||||||
|
outerr.add(String.format("[%s]已进入[%s]砂站,删除后不能结算", tp.getTruckLicense(), SvrCacheData.SUP_CACHE.get(tp.getSupermarketId()).getName()));
|
||||||
|
}
|
||||||
|
|
||||||
|
return Result.failed(StrKit.join(outerr, "\r\n"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
List<OrderclusterTruck> savelist = new ArrayList<>();
|
||||||
|
|
||||||
|
for (String truck_license : truckarr) {
|
||||||
|
// 已经在数据库中的,不再重复添加
|
||||||
|
if (chkold.contains(truck_license)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
OrderclusterTruck oct = new OrderclusterTruck();
|
||||||
|
oct.setId(StrKit.getRandomUUID());
|
||||||
|
oct.setOrderclusterId(oldobj.getId());
|
||||||
|
oct.setTruckLicense(truck_license);
|
||||||
|
|
||||||
|
synctask.addSaveData(oct);
|
||||||
|
savelist.add(oct);
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
boolean ret = Db.tx(new IAtom() {
|
||||||
|
@Override
|
||||||
|
public boolean run() throws SQLException {
|
||||||
|
try {
|
||||||
|
if (!dellist.isEmpty()) {
|
||||||
|
int delret = Db.delete("delete from ordercluster_truck where ordercluster_id = " + oldobj.getId() +
|
||||||
|
" and truck_license in ('" + StrKit.join(dellist, "','") + "')");
|
||||||
|
|
||||||
|
log.debug("删除 ordercluster_truck %d", delret);
|
||||||
|
|
||||||
|
if(delret != dellist.size()){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!savelist.isEmpty()) {
|
||||||
|
int[] ret = Db.batchSave(savelist, savelist.size());
|
||||||
|
|
||||||
|
for (int i : ret) {
|
||||||
|
// 必须是每条 sql 修改一条记录
|
||||||
|
if (i != 1) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
boolean ret = oldobj.update();
|
||||||
|
|
||||||
|
if (!ret) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
synctask.addUpdateData(oldobj);
|
||||||
|
|
||||||
|
return SyncTaskService.me.save(synctask, oldobj.getSupermarketId())
|
||||||
|
&& ModifyLogService.me.save(model, null, Enums.DataOpType.UPDATE.getId(), sysuser);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error(e.getMessage(), e);
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if (ret) {
|
||||||
|
SyncTaskService.me.send(synctask);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret ? Result.success(oldobj) : Result.failed("修改失败");
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error(e.getMessage(), e);
|
||||||
|
return Result.failed("修改失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public Result update(Ordercluster model, Sysuser sysuser) {
|
public Result update(Ordercluster model, Sysuser sysuser) {
|
||||||
Ordercluster oldobj = model.findByPk();
|
Ordercluster oldobj = model.findByPk();
|
||||||
|
|
||||||
|
|
@ -593,6 +793,10 @@ public class OrderclusterSyncService extends BaseSyncService {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if (ret) {
|
||||||
|
SyncTaskService.me.send(synctask);
|
||||||
|
}
|
||||||
|
|
||||||
return ret ? Result.success(oldobj) : Result.failed("修改失败");
|
return ret ? Result.success(oldobj) : Result.failed("修改失败");
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error(e.getMessage(), e);
|
log.error(e.getMessage(), e);
|
||||||
|
|
|
||||||
|
|
@ -71,7 +71,11 @@ public class OrderclusterTruckController extends Controller {
|
||||||
*/
|
*/
|
||||||
public void find() {
|
public void find() {
|
||||||
PageParam pp = getBean(PageParam.class, "", true);
|
PageParam pp = getBean(PageParam.class, "", true);
|
||||||
renderJson(Result.object(OrderclusterTruckService.me.find(pp)));
|
String stm = get("stm");
|
||||||
|
String etm = get("etm");
|
||||||
|
String customer_name = get("customer_name");
|
||||||
|
String truck_license = get("truck_license");
|
||||||
|
renderJson(Result.object(OrderclusterTruckService.me.find(pp, stm, etm, customer_name, truck_license)));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@ import com.cowr.common.utils.DateTimeUtil;
|
||||||
import com.cowr.common.view.Result;
|
import com.cowr.common.view.Result;
|
||||||
import com.cowr.model.*;
|
import com.cowr.model.*;
|
||||||
import com.cowr.service.ssjygl.base.BaseSyncService;
|
import com.cowr.service.ssjygl.base.BaseSyncService;
|
||||||
|
import com.cowr.service.ssjygl.main.SvrCacheData;
|
||||||
import com.cowr.service.ssjygl.synctask.SyncTaskService;
|
import com.cowr.service.ssjygl.synctask.SyncTaskService;
|
||||||
import com.cowr.ssjygl.modifylog.ModifyLogService;
|
import com.cowr.ssjygl.modifylog.ModifyLogService;
|
||||||
import com.jfinal.kit.StrKit;
|
import com.jfinal.kit.StrKit;
|
||||||
|
|
@ -91,15 +92,20 @@ public class OrderclusterTruckSyncService extends BaseSyncService {
|
||||||
retts.add(bl.get("truck_license"));
|
retts.add(bl.get("truck_license"));
|
||||||
}
|
}
|
||||||
|
|
||||||
return Result.failedstr("%s 已在[%s]分配", StrKit.join(retts, ","), DateTimeUtil.sdfymd.get().format(ordercluster.getCutoffTime()));
|
return Result.failedstr(
|
||||||
|
"%s 已在[%s]分配",
|
||||||
|
StrKit.join(retts, ","),
|
||||||
|
DateTimeUtil.sdfymd.get().format(ordercluster.getCutoffTime())
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询已有的集团订单
|
// 查询已有的集团订单分配的车辆
|
||||||
List<OrderclusterTruck> otlist = OrderclusterTruck.dao.find(
|
List<OrderclusterTruck> otlist = OrderclusterTruck.dao.find(
|
||||||
"select * from ordercluster_truck \n" +
|
"select * from ordercluster_truck \n" +
|
||||||
" where ordercluster_id = ? \n", ordercluster_id);
|
" where ordercluster_id = ? \n", ordercluster_id);
|
||||||
|
|
||||||
List<String> dellist = new ArrayList<>();
|
List<String> dellist = new ArrayList<>();
|
||||||
|
List<String> chktpsql = new ArrayList<>();
|
||||||
List<String> chkold = new ArrayList<>();
|
List<String> chkold = new ArrayList<>();
|
||||||
SyncTask synctask = new SyncTask();
|
SyncTask synctask = new SyncTask();
|
||||||
|
|
||||||
|
|
@ -107,12 +113,36 @@ public class OrderclusterTruckSyncService extends BaseSyncService {
|
||||||
for (OrderclusterTruck ot : otlist) {
|
for (OrderclusterTruck ot : otlist) {
|
||||||
if (!chk.contains(ot.getTruckLicense())) {
|
if (!chk.contains(ot.getTruckLicense())) {
|
||||||
dellist.add(ot.getTruckLicense());
|
dellist.add(ot.getTruckLicense());
|
||||||
|
chktpsql.add("?");
|
||||||
synctask.addDeleteData(ot);
|
synctask.addDeleteData(ot);
|
||||||
} else {
|
} else {
|
||||||
chkold.add(ot.getTruckLicense());
|
chkold.add(ot.getTruckLicense());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 要删除的车辆没有结算,不能删除
|
||||||
|
if(!dellist.isEmpty()){
|
||||||
|
List<String> querydel = new ArrayList<>();
|
||||||
|
querydel.add(ordercluster.getSupermarketId().toString());
|
||||||
|
querydel.add(DateTimeUtil.sdf.get().format(ordercluster.getCutoffTime()) + "%");
|
||||||
|
querydel.addAll(dellist);
|
||||||
|
List<Transport> chktp = Transport.dao.find("select * from transport t \n" +
|
||||||
|
" where t.state < 5 \n" +
|
||||||
|
" and t.supermarket_id = ? \n" +
|
||||||
|
" and t.in_time like ? \n" +
|
||||||
|
" and t.truck_license in(" + StrKit.join(chktpsql, ",") + ")", querydel.toArray());
|
||||||
|
|
||||||
|
if(!chktp.isEmpty()){
|
||||||
|
List<String> outerr = new ArrayList<>();
|
||||||
|
|
||||||
|
for(Transport tp : chktp){
|
||||||
|
outerr.add(String.format("[%s]已进入[%s]砂站,删除后不能结算", tp.getTruckLicense(), SvrCacheData.SUP_CACHE.get(tp.getSupermarketId()).getName()));
|
||||||
|
}
|
||||||
|
|
||||||
|
return Result.failed(StrKit.join(outerr, "\r\n"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
List<OrderclusterTruck> savelist = new ArrayList<>();
|
List<OrderclusterTruck> savelist = new ArrayList<>();
|
||||||
|
|
||||||
for (String truck_license : truckarr) {
|
for (String truck_license : truckarr) {
|
||||||
|
|
@ -151,6 +181,10 @@ public class OrderclusterTruckSyncService extends BaseSyncService {
|
||||||
" and truck_license in ('" + StrKit.join(dellist, "','") + "')");
|
" and truck_license in ('" + StrKit.join(dellist, "','") + "')");
|
||||||
|
|
||||||
log.debug("删除 ordercluster_truck %d", delret);
|
log.debug("删除 ordercluster_truck %d", delret);
|
||||||
|
|
||||||
|
if(delret != dellist.size()){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!savelist.isEmpty()) {
|
if (!savelist.isEmpty()) {
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import com.cowr.common.enums.UserTypeEnum;
|
||||||
import com.cowr.common.validator.DayValidator;
|
import com.cowr.common.validator.DayValidator;
|
||||||
import com.cowr.common.validator.MonthValidator;
|
import com.cowr.common.validator.MonthValidator;
|
||||||
import com.cowr.common.validator.StartAndEndIntervalValidator;
|
import com.cowr.common.validator.StartAndEndIntervalValidator;
|
||||||
|
import com.cowr.common.validator.YearValidator;
|
||||||
import com.cowr.common.view.ExcelRender;
|
import com.cowr.common.view.ExcelRender;
|
||||||
import com.cowr.common.view.Result;
|
import com.cowr.common.view.Result;
|
||||||
import com.cowr.model.Sysuser;
|
import com.cowr.model.Sysuser;
|
||||||
|
|
@ -340,4 +341,20 @@ public class OrderStatController extends BaseController {
|
||||||
render(new ExcelRender(stm + "_" + etm + "_砂站" + (isprepaid != null && isprepaid == 1 ? "预付费" : "") + "销售汇总表_" + System.currentTimeMillis() + ".xlsx", wb));
|
render(new ExcelRender(stm + "_" + etm + "_砂站" + (isprepaid != null && isprepaid == 1 ? "预付费" : "") + "销售汇总表_" + System.currentTimeMillis() + ".xlsx", wb));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void statYearCustomer() {
|
||||||
|
String tm = get("tm");
|
||||||
|
int export = getInt("export", 0); // 是否导出为exce 0 不导出,1 导出
|
||||||
|
if (export == 0) {
|
||||||
|
renderJson(Result.object(OrderStatService.me.yearStatByCustomer(tm)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void statYearBySup() {
|
||||||
|
String tm = get("tm");
|
||||||
|
int export = getInt("export", 0); // 是否导出为exce 0 不导出,1 导出
|
||||||
|
if (export == 0) {
|
||||||
|
renderJson(Result.object(OrderStatService.me.yearStatBySup(tm)));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -161,6 +161,7 @@ public class SyncTaskService {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 按砂站ID去找未完成的,避免一个砂站有过多的未完成堆积,导致其他的不能下发
|
* 按砂站ID去找未完成的,避免一个砂站有过多的未完成堆积,导致其他的不能下发
|
||||||
|
*
|
||||||
* @param supermarket_id
|
* @param supermarket_id
|
||||||
*/
|
*/
|
||||||
public void task(int supermarket_id) {
|
public void task(int supermarket_id) {
|
||||||
|
|
@ -246,6 +247,13 @@ public class SyncTaskService {
|
||||||
if (ret.length != list.size()) {
|
if (ret.length != list.size()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (int i : ret) {
|
||||||
|
// 必须是每条 sql 修改一条记录
|
||||||
|
if (i != 1) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -267,6 +275,13 @@ public class SyncTaskService {
|
||||||
if (ret.length != list.size()) {
|
if (ret.length != list.size()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (int i : ret) {
|
||||||
|
// 必须是每条 sql 修改一条记录
|
||||||
|
if (i != 1) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -368,6 +383,13 @@ public class SyncTaskService {
|
||||||
if (ret.length != sts.size()) {
|
if (ret.length != sts.size()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (int i : ret) {
|
||||||
|
// 必须是每条 sql 修改一条记录
|
||||||
|
if (i != 1) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue