package cn.ksource.web.facade.bpbj;
|
|
import java.util.HashMap;
|
import java.util.Map;
|
|
|
import javax.annotation.Resource;
|
|
import org.springframework.stereotype.Service;
|
|
import cn.ksource.core.dao.BaseDao;
|
import cn.ksource.core.page.PageInfo;
|
import cn.ksource.core.util.StringUtil;
|
|
|
@Service("OverageLossQueryFacade")
|
public class OverageLossQueryFacadeImpl implements OverageLossQueryFacade {
|
|
@Resource
|
private BaseDao baseDao;
|
|
/**
|
* 报损报溢列表信息
|
* @param pageInfo
|
* @param params
|
* @return
|
*/
|
@Override
|
public PageInfo getOverageLossListData(Map<String, String> params,PageInfo pageInfo){
|
StringBuilder sql = new StringBuilder();
|
Map paramMap = new HashMap();
|
sql.append("select * from OVERAGE_LOSS where state=3");
|
String order_code=params.get("order_code");
|
String order_name=params.get("order_name");
|
String start_time=params.get("start_time");
|
String end_time=params.get("end_time");
|
|
//业务类型【1报损 2报溢 】
|
String bus_types=params.get("bus_types");
|
if (StringUtil.notEmpty(bus_types)) {
|
String[] keys = bus_types.split(",");
|
if (keys.length == 1) {
|
sql.append(" AND BUS_TYPE = :bus_type");
|
paramMap.put("bus_type", keys[0]);
|
} else {
|
sql.append(" AND BUS_TYPE IN (");
|
for (int i = 0; i < keys.length; i++) {
|
sql.append(" :pri" + i);
|
sql.append(",");
|
paramMap.put("pri" + i, keys[i]);
|
}
|
sql.deleteCharAt(sql.lastIndexOf(","));
|
sql.append(")");
|
}
|
}
|
|
//工单编号
|
if (StringUtil.isNotBlank(order_code)) {
|
sql.append(" and order_code like :order_code ");
|
paramMap.put("order_code", "%"+order_code.trim()+"%");
|
}
|
//工单名称
|
if (StringUtil.isNotBlank(order_name)) {
|
sql.append(" and order_name like :order_name ");
|
paramMap.put("order_name", "%"+order_name.trim()+"%");
|
}
|
|
//开始时间
|
if(StringUtil.isNotBlank(start_time)){
|
sql.append(" AND gmt_create>=:start_time");
|
paramMap.put("start_time", start_time+"000000");
|
}
|
//结束时间
|
if(StringUtil.isNotBlank(end_time)){
|
sql.append(" and gmt_create<=:end_time");
|
paramMap.put("end_time", end_time+"235959");
|
}
|
sql.append(" order by gmt_create desc ");
|
return baseDao.queryforSplitPageInfo(pageInfo,sql.toString(), paramMap);
|
}
|
/**
|
* 报损报溢列表数量信息
|
* @param pageInfo
|
* @param params
|
* @return
|
*/
|
@Override
|
public int getOverageLossListCount(Map<String, String> params) {
|
StringBuilder sql = new StringBuilder();
|
Map paramMap = new HashMap();
|
sql.append("select count(*) from OVERAGE_LOSS where state=3");
|
String order_code=params.get("order_code");
|
String order_name=params.get("order_name");
|
String start_time=params.get("start_time");
|
String end_time=params.get("end_time");
|
|
//业务类型【1报损 2报溢 】
|
String bus_types=params.get("bus_types");
|
if (StringUtil.notEmpty(bus_types)) {
|
String[] keys = bus_types.split(",");
|
if (keys.length == 1) {
|
sql.append(" AND BUS_TYPE = :bus_type");
|
paramMap.put("bus_type", keys[0]);
|
} else {
|
sql.append(" AND BUS_TYPE IN (");
|
for (int i = 0; i < keys.length; i++) {
|
sql.append(" :pri" + i);
|
sql.append(",");
|
paramMap.put("pri" + i, keys[i]);
|
}
|
sql.deleteCharAt(sql.lastIndexOf(","));
|
sql.append(")");
|
}
|
}
|
|
//工单编号
|
if (StringUtil.isNotBlank(order_code)) {
|
sql.append(" and order_code like :order_code ");
|
paramMap.put("order_code", "%"+order_code.trim()+"%");
|
}
|
//工单名称
|
if (StringUtil.isNotBlank(order_name)) {
|
sql.append(" and order_name like :order_name ");
|
paramMap.put("order_name", "%"+order_name.trim()+"%");
|
}
|
|
//开始时间
|
if(StringUtil.isNotBlank(start_time)){
|
sql.append(" AND gmt_create>=:start_time");
|
paramMap.put("start_time", start_time+"000000");
|
}
|
//结束时间
|
if(StringUtil.isNotBlank(end_time)){
|
sql.append(" and gmt_create<=:end_time");
|
paramMap.put("end_time", end_time+"235959");
|
}
|
int count = baseDao.queryForInteger(sql.toString(), paramMap);
|
return count;
|
|
}
|
|
|
}
|