@@ -29,6 +29,7 @@ import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.concurrent.ConcurrentLinkedDeque;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
@@ -45,7 +46,6 @@ public class OutBillQueryServiceImpl implements OutBillQueryService {
|
||||
|
||||
@Autowired
|
||||
private IpdmBiSubpackagerelationService ipdmBiSubpackagerelationService;
|
||||
|
||||
@Override
|
||||
public Map<String, Object> queryAll(Map whereJson, Pageable page, String[] bill_types) {
|
||||
String stor_id = MapUtil.getStr(whereJson, "stor_id");
|
||||
@@ -285,7 +285,6 @@ public class OutBillQueryServiceImpl implements OutBillQueryService {
|
||||
String end_time = MapUtil.getStr(map, "end_time");
|
||||
String pcsn = MapUtil.getStr(map, "pcsn");
|
||||
String customer_name = MapUtil.getStr(map, "customer_name");
|
||||
|
||||
map.put("flag", "22");
|
||||
map.put("stor_id", stor_id);
|
||||
if (ObjectUtil.isNotEmpty(bill_types)) {
|
||||
@@ -300,11 +299,9 @@ public class OutBillQueryServiceImpl implements OutBillQueryService {
|
||||
if (StrUtil.isNotEmpty(pcsn)){
|
||||
// 判断是否有空格
|
||||
boolean matches = pcsn.matches(".*\\s.*");
|
||||
|
||||
if (matches) {
|
||||
String[] s = pcsn.split(" ");
|
||||
String pcsn_in = String.join("','", Arrays.asList(s));
|
||||
|
||||
map.put("pcsn_in", "('"+pcsn_in+"')");
|
||||
map.put("pcsn", "");
|
||||
} else {
|
||||
@@ -314,7 +311,6 @@ public class OutBillQueryServiceImpl implements OutBillQueryService {
|
||||
if (ObjectUtil.isNotEmpty(customer_name)) {
|
||||
map.put("customer_name", "%" + customer_name + "%");
|
||||
}
|
||||
|
||||
// 处理时间
|
||||
if (ObjectUtil.isNotEmpty(begin_time) && ObjectUtil.isNotEmpty(end_time)) {
|
||||
String begin_time_today = begin_time.substring(0, 10);
|
||||
@@ -346,11 +342,9 @@ public class OutBillQueryServiceImpl implements OutBillQueryService {
|
||||
for (List<JSONObject> jsonObjects : deque) {
|
||||
datas.addAll(jsonObjects);
|
||||
}
|
||||
ConcurrentLinkedDeque<List<Map<String,String>>> listDeque = new ConcurrentLinkedDeque<>();
|
||||
Lists.partition(resultJSONArray,1000).stream().map((Function<List, CompletableFuture>) o->CompletableFuture.runAsync(() -> {
|
||||
List<Map<String, String>> items = new ArrayList<>();
|
||||
for (Object item : o) {
|
||||
JSONObject json = (JSONObject) item;
|
||||
List<Map<String, String>> list = new ArrayList<>();
|
||||
for (int i = 0; i < resultJSONArray.size(); i++) {
|
||||
JSONObject json = resultJSONArray.getJSONObject(i);
|
||||
Map<String, String> mp = new LinkedHashMap<>();
|
||||
// 查询第一次入库的源销售订单
|
||||
JSONObject jsonSub = datas.stream()
|
||||
@@ -407,8 +401,6 @@ public class OutBillQueryServiceImpl implements OutBillQueryService {
|
||||
mp.put("物流公司", json.getString("cust_name"));
|
||||
mp.put("运费", json.getString("estimated_freight"));
|
||||
mp.put("木箱号", json.getString("box_no"));
|
||||
mp.put("木箱编码", json.getString("box_material_code"));
|
||||
mp.put("木箱描述", json.getString("box_material_name"));
|
||||
mp.put("物料编码", json.getString("material_code"));
|
||||
mp.put("物料名称", json.getString("material_name"));
|
||||
mp.put("子卷号", json.getString("pcsn"));
|
||||
@@ -456,7 +448,6 @@ public class OutBillQueryServiceImpl implements OutBillQueryService {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
mp.put("业务员", json.getString("sales_owner"));
|
||||
mp.put("出库日期", json.getString("input_time"));
|
||||
mp.put("产品规格", String.format("%.0f", json.getDoubleValue("width")));
|
||||
@@ -464,15 +455,9 @@ public class OutBillQueryServiceImpl implements OutBillQueryService {
|
||||
mp.put("单位面积", json.getString("mass_per_unit_area"));
|
||||
mp.put("制单人", json.getString("input_optname"));
|
||||
mp.put("备注", json.getString("remark"));
|
||||
items.add(mp);
|
||||
list.add(mp);
|
||||
}
|
||||
listDeque.add(items);
|
||||
})).parallel().forEach(CompletableFuture::join);
|
||||
List<Map<String, String>> list = new ArrayList<>();
|
||||
for (List<Map<String, String>> maps : listDeque) {
|
||||
list.addAll(maps);
|
||||
}
|
||||
Set<String> set = listDeque.getFirst().get(0).keySet();
|
||||
Set<String> set = list.get(0).keySet();
|
||||
int colIndex = 0;
|
||||
String[] col = new String[set.size()];
|
||||
for (String s : set) {
|
||||
@@ -480,5 +465,6 @@ public class OutBillQueryServiceImpl implements OutBillQueryService {
|
||||
colIndex++;
|
||||
}
|
||||
new FileUtil().downloadExcelIO(list,col,response);
|
||||
// FileUtil.downloadExcel(list, response);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -266,8 +266,6 @@
|
||||
base.cust_name,
|
||||
dis.sect_name,
|
||||
dis.box_no,
|
||||
bib.material_code box_material_code,
|
||||
bib.material_name box_material_name,
|
||||
dis.qty_unit_name,
|
||||
mater.material_code,
|
||||
mater.material_name,
|
||||
@@ -319,7 +317,6 @@
|
||||
a.pcsn
|
||||
) AS c
|
||||
inner JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = c.iostorinvdis_id
|
||||
inner JOIN bst_ivt_boxinfo bib ON dis.box_no = bib.box_no
|
||||
inner JOIN st_ivt_iostorinv mst ON mst.iostorinv_id = dis.iostorinv_id
|
||||
inner JOIN st_ivt_iostorinvdtl dtl ON dtl.iostorinvdtl_id = dis.iostorinvdtl_id
|
||||
LEFT JOIN md_cs_transportationbase base ON base.cust_code = mst.trans_code
|
||||
@@ -388,8 +385,6 @@
|
||||
base.cust_name,
|
||||
dis.sect_name,
|
||||
dis.box_no,
|
||||
bib.material_code box_material_code,
|
||||
bib.material_name box_material_name,
|
||||
dis.qty_unit_name,
|
||||
mater.material_code,
|
||||
mater.material_name,
|
||||
@@ -441,7 +436,6 @@
|
||||
a.pcsn
|
||||
) AS c
|
||||
inner JOIN st_ivt_iostorinvdis dis ON dis.iostorinvdis_id = c.iostorinvdis_id
|
||||
inner JOIN bst_ivt_boxinfo bib ON dis.box_no = bib.box_no
|
||||
inner JOIN st_ivt_iostorinv mst ON mst.iostorinv_id = dis.iostorinv_id
|
||||
inner JOIN st_ivt_iostorinvdtl dtl ON dtl.iostorinvdtl_id = dis.iostorinvdtl_id
|
||||
LEFT JOIN md_cs_transportationbase base ON base.cust_code = mst.trans_code
|
||||
|
||||
Reference in New Issue
Block a user