|
|
@@ -12,6 +12,7 @@ import com.qlm.controller.common.CommonController;
|
|
|
import com.qlm.controller.organize.ProductionLineController;
|
|
|
import com.qlm.dto.ProdTaskUploadRecordDto;
|
|
|
import com.qlm.dto.ProductionTotalVO;
|
|
|
+import com.qlm.tools.WxUtil;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
|
|
@@ -51,12 +52,11 @@ public class NewReportController extends CommonController {
|
|
|
startTime = DateUtil.formatDateTime(start);
|
|
|
endTime = DateUtil.formatDateTime(end);
|
|
|
}
|
|
|
- String selectColumns = "select distinct task_no, d.factory_name,e.workshop_name, a.sku,c.item_name, produce_date, DATE_FORMAT(guo_time, '%Y-%m-%d') AS guo_date";
|
|
|
- StringBuilder sql = new StringBuilder("from jinzai_upload_master a");
|
|
|
- sql.append(" left join t_jz_device b on a.device_no = b.device_no");
|
|
|
- sql.append(" left join t_jz_item c on a.sku = c.sku");
|
|
|
- sql.append(" left join t_factory d on b.factory_id = d.id");
|
|
|
- sql.append(" left join t_Workshop e on b.workshop_id = e.id");
|
|
|
+ String selectColumns = "select a.task_no,a.sku,d.factory_name,e.workshop_name,a.device_no,a.produce_date,COUNT(*) AS total_count,MAX(guo_time) as guo_time";
|
|
|
+ StringBuilder sql = new StringBuilder(" from jinzai_upload_master a");
|
|
|
+ sql.append(" LEFT JOIN t_jz_device b ON a.device_no = b.device_no");
|
|
|
+ sql.append(" LEFT JOIN t_factory d ON b.factory_id = d.id");
|
|
|
+ sql.append(" LEFT JOIN t_Workshop e ON b.workshop_id = e.id");
|
|
|
sql.append(" where a.produce_date between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
List<Object> params = new ArrayList<>();
|
|
|
if(factoryId != null){
|
|
|
@@ -67,7 +67,7 @@ public class NewReportController extends CommonController {
|
|
|
sql.append(" and b.workshop_id = ?");
|
|
|
params.add(workshopId);
|
|
|
}
|
|
|
- sql.append(" order by a.produce_date desc");
|
|
|
+ sql.append(" GROUP BY a.task_no, d.factory_name, e.workshop_name,a.sku, a.device_no, a.produce_date order by a.produce_date desc");
|
|
|
Page<Record> paginate = Db.paginate(pageNumber, pageSize, selectColumns, sql.toString(), params.toArray());
|
|
|
if(paginate == null){
|
|
|
renderJson(new PageResult<>(0, pageNumber, pageSize, new ArrayList<>()));
|
|
|
@@ -174,18 +174,32 @@ public class NewReportController extends CommonController {
|
|
|
productionTotalVO.setBatchNo(record.getStr("task_no"));
|
|
|
productionTotalVO.setSku(record.getStr("sku"));
|
|
|
productionTotalVO.setFactoryName(record.getStr("factory_name"));
|
|
|
- productionTotalVO.setItemName(record.getStr("item_name"));
|
|
|
productionTotalVO.setProduceDate(DateUtil.format(record.getDate("produce_date"), "yyyy-MM-dd"));
|
|
|
- productionTotalVO.setGuoDate(record.getStr("guo_date"));
|
|
|
+ productionTotalVO.setGuoDate(DateUtil.format(record.getDate("guo_time"),"yyyy-MM-dd HH:mm:ss"));
|
|
|
productionTotalVO.setWorkshopName(record.getStr("workshop_name"));
|
|
|
- //根据taskNo 和 Sku 查询数量
|
|
|
- Long quantity = Db.queryLong("select count(id) quantity from jinzai_upload_master where task_no = ? and sku = ?", record.getStr("task_no"), record.getStr("sku"));
|
|
|
- if(quantity == null){
|
|
|
- quantity = 0L;
|
|
|
+ productionTotalVO.setQuantity(WxUtil.getInt("total_count", record));
|
|
|
+ try {
|
|
|
+ StringBuilder itemNameSql = new StringBuilder("select c.* from t_jz_device a");
|
|
|
+ itemNameSql.append(" inner join t_line_product b on a.id = b.line_id");
|
|
|
+ itemNameSql.append(" inner join t_jz_item c on b.product_id = c.product_id");
|
|
|
+ itemNameSql.append(" where a.device_no = ? and c.sku = ?");
|
|
|
+ Record first = Db.findFirst(itemNameSql.toString(), record.getStr("device_no"), record.getStr("sku"));
|
|
|
+ String itemName = "";
|
|
|
+ if(first != null){
|
|
|
+ itemName = first.getStr("item_name");
|
|
|
+ }
|
|
|
+ productionTotalVO.setItemName(itemName);
|
|
|
+ }catch (Exception e){
|
|
|
+ logger.error("查询品相名称异常:", e);
|
|
|
}
|
|
|
- productionTotalVO.setQuantity(quantity.intValue());
|
|
|
- productionTotalVO.setCreateTime(DateUtil.format(record.getDate("create_time"), "yyyy-MM-dd HH:mm:ss"));
|
|
|
- productionTotalVO.setUpdateTime(DateUtil.format(record.getDate("update_time"), "yyyy-MM-dd HH:mm:ss"));
|
|
|
+ //根据taskNo 和 Sku 查询数量
|
|
|
+// Long quantity = Db.queryLong("select count(id) quantity from jinzai_upload_master where task_no = ? and sku = ?", record.getStr("task_no"), record.getStr("sku"));
|
|
|
+// if(quantity == null){
|
|
|
+// quantity = 0L;
|
|
|
+// }
|
|
|
+// productionTotalVO.setQuantity(quantity.intValue());
|
|
|
+// productionTotalVO.setCreateTime(DateUtil.format(record.getDate("create_time"), "yyyy-MM-dd HH:mm:ss"));
|
|
|
+// productionTotalVO.setUpdateTime(DateUtil.format(record.getDate("update_time"), "yyyy-MM-dd HH:mm:ss"));
|
|
|
return productionTotalVO;
|
|
|
}
|
|
|
}
|