1 public Map<String, Object> queryOrderStatus(String orderNo) { // 查询到的结果与查询的条件一一对应,封装到map中!
2 String[] fields = {
3 "salesman", "no", "status", "VATInvoiceNo", "courier", "tracking", "forAR", "mark"
4 , "dunning_courier", "dunning_tracking"
5 };
6 Query query = entityManager.createNativeQuery("select " + StringUtils.join(fields, ",") +
7 "
from selleck.selleck_order o" +
8 "
left join selleck.selleck_order_extended e on e.orderId=o.id" +
9 "
where no=:orderNo"
10 );
11 query.setParameter("orderNo", orderNo);
12 List<Object[]> list = query.getResultList();
13 if (list.isEmpty()) {
14 return new HashMap<>();
15 } else {
16 Object[] values = list.get(0);
17 Map<String, Object> valueMap = new HashMap<>();
18 for (int i = 0; i < fields.length; i++) {
19 valueMap.put(fields[i], values[i]);
20 }
21 return valueMap;
22 }
23 }
24