package com.shlanbao.tzsc.pms.qm.check.service.impl;
|
|
import java.util.ArrayList;
|
import java.util.Date;
|
import java.util.List;
|
|
import com.shlanbao.tzsc.base.model.SessionInfo;
|
import com.shlanbao.tzsc.utils.tools.DateUtil;
|
import com.shlanbao.tzsc.utils.tools.LogAnno;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import com.shlanbao.tzsc.base.dao.QmExcheckAddDaoI;
|
import com.shlanbao.tzsc.base.mapping.QmExcheckAdd;
|
import com.shlanbao.tzsc.base.model.DataGrid;
|
import com.shlanbao.tzsc.base.model.PageParams;
|
import com.shlanbao.tzsc.base.service.BaseService;
|
import com.shlanbao.tzsc.pms.qm.check.beans.QmExcheckAddBean;
|
import com.shlanbao.tzsc.pms.qm.check.service.QmExcheckAddService;
|
import com.shlanbao.tzsc.pms.sch.workorder.beans.WorkOrderBean;
|
import com.shlanbao.tzsc.utils.tools.StringUtil;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
@Service
|
public class QmExcheckAddServiceImpl extends BaseService implements QmExcheckAddService {
|
@Autowired
|
private QmExcheckAddDaoI qmexcheckaddimpl;
|
@Autowired
|
private HttpServletRequest request;
|
|
@Override
|
public DataGrid getAllQmExchecks(WorkOrderBean orderbean, PageParams pageParams) throws Exception {
|
List<QmExcheckAddBean> exchecks=new ArrayList<QmExcheckAddBean>();
|
try{
|
List<?> data=new ArrayList<>();
|
data=getQmExchecks(orderbean,"count",pageParams);
|
Long count=0L;
|
if(data!=null && data.size()>0){
|
count=StringUtil.converObj2Long(data.get(0));
|
if(count>0){
|
List<?> rows=getQmExchecks(orderbean,"",pageParams);
|
if(rows!=null && rows.size()>0){
|
QmExcheckAddBean qmcheckbean=null;
|
for(int i=0;i<rows.size();i++){
|
Object[] temp=(Object[])rows.get(i);
|
qmcheckbean=new QmExcheckAddBean();
|
qmcheckbean.setId(StringUtil.convertObjToString(temp[1]));
|
qmcheckbean.setMatname(StringUtil.convertObjToString(temp[2]));
|
qmcheckbean.setCheckbatch(StringUtil.convertObjToString(temp[3]));//检验批次
|
qmcheckbean.setTimestamp_(StringUtil.convertObjToString(temp[4]));//取样时间
|
qmcheckbean.setSubBatchCode(StringUtil.convertObjToString(temp[5]));//取样批次
|
qmcheckbean.setSamplenum(StringUtil.convert2Integer(temp[6]));
|
qmcheckbean.setWat(StringUtil.converObj2Double(temp[8]));
|
qmcheckbean.setQmexcheckaddid(StringUtil.convertObjToString(temp[9]));
|
String team=StringUtil.convertObjToString(temp[7]);
|
if("1".equals(team)){
|
team= "甲";
|
}else if("2".equals(team)){
|
team= "乙";
|
}else if("3".equals(team)){
|
team= "丙";
|
}else{
|
team="-";
|
}
|
String equipmentName=StringUtil.convertObjToString(temp[3]);
|
if(equipmentName.indexOf("K03")>=0){
|
equipmentName="3#成型机";
|
}else if(equipmentName.indexOf("K02")>=0){
|
equipmentName="2#成型机";
|
}else if(equipmentName.indexOf("K01")>=0){
|
equipmentName="1#成型机";
|
}
|
qmcheckbean.setTeam(team);
|
qmcheckbean.setEqpuipmentname(equipmentName);
|
qmcheckbean.setStatus(StringUtil.convertObjToString(temp[10]));
|
qmcheckbean.setCreateUserName(StringUtil.convertObjToString(temp[11]));
|
qmcheckbean.setCreateUserTime(DateUtil.formatStringToDate(StringUtil.convertObjToString(temp[12]),"yyyy-MM-dd HH:mm:ss"));
|
qmcheckbean.setUpdateUserName(StringUtil.convertObjToString(temp[13]));
|
qmcheckbean.setUpdateUserTime(DateUtil.formatStringToDate(StringUtil.convertObjToString(temp[14]),"yyyy-MM-dd HH:mm:ss"));
|
exchecks.add(qmcheckbean);
|
}
|
}
|
}
|
}
|
return new DataGrid(exchecks,count);
|
}catch(Exception e){
|
log.error("查询所有成型成品含水率记录异常");
|
}
|
return new DataGrid(exchecks,0L);
|
}
|
|
@LogAnno(operateType = "添加成型机成品含水率检测记录")
|
@Override
|
public boolean addQmExcheck(QmExcheckAddBean qmExcheckAddbean) throws Exception {
|
boolean flag=false;
|
//增加创建人与创建时间信息
|
SessionInfo sessionInfo = (SessionInfo) request.getSession().getAttribute("sessionInfo");
|
String createUserName = sessionInfo.getUser().getName();
|
String updateUserName = createUserName;
|
if(qmExcheckAddbean.getQmexcheckaddid()!=null && !"".equals(qmExcheckAddbean.getQmexcheckaddid())){
|
String sql = "update qm_cxcheck_add set wat = ?,UPDATE_USER_NAME = ?,UPDATE_USER_TIME = ? where id in(select a.id from QM_CXCHECK_ADD a join QM_ONLINECHECK b on a.qmocid = b.id join QM_ONLINECHECK c on b.team = c.team and b.materialcode = c.materialcode " +
|
" and substr(b.ordernumber,0,6) = substr(c.ordernumber,0,6) where c.id = ?) ";
|
List<Object> param = new ArrayList<>();
|
param.add(qmExcheckAddbean.getWat());
|
param.add(updateUserName);
|
param.add(new Date());
|
param.add(qmExcheckAddbean.getId());
|
qmexcheckaddimpl.updateBySql(sql, param);
|
|
flag=true;
|
}else{
|
String sql = "select b.id from QM_ONLINECHECK b join QM_ONLINECHECK c on b.team = c.team and b.materialcode = c.materialcode " +
|
" and substr(b.ordernumber,0,6) = substr(c.ordernumber,0,6) where c.id = ? ";
|
List<Object> param = new ArrayList<>();
|
param.add(qmExcheckAddbean.getId());
|
List<?> list = qmexcheckaddimpl.queryBySql(sql, param);
|
QmExcheckAdd qmCheckAdd = null;
|
if (list != null && list.size()>0) {
|
for (Object object : list) {
|
qmCheckAdd=new QmExcheckAdd();
|
qmCheckAdd.setQmocid(object.toString());
|
qmCheckAdd.setWat(qmExcheckAddbean.getWat());
|
qmCheckAdd.setChkDate(new Date());
|
qmCheckAdd.setStatus("0");
|
qmCheckAdd.setCreateUserName(createUserName);
|
qmCheckAdd.setCreateUserTime(new Date());
|
qmCheckAdd.setUpdateUserName(updateUserName);
|
qmCheckAdd.setUpdateUserTime(qmCheckAdd.getCreateUserTime());
|
qmexcheckaddimpl.save(qmCheckAdd);
|
}
|
}
|
|
flag=true;
|
}
|
return flag;
|
}
|
|
@Override
|
public QmExcheckAddBean deleteQmExcheckByid(String id) throws Exception {
|
return null;
|
}
|
|
@Override
|
public List<?> getQmExchecks(WorkOrderBean orderbean, String params, PageParams pageParams) throws Exception {
|
int sRow=(pageParams.getPage()-1)*pageParams.getRows();
|
int eRow=pageParams.getPage()*pageParams.getRows();
|
try{
|
StringBuffer sb=new StringBuffer();
|
if("count".equals(params)){
|
sb.append("select count(*) from (");
|
}else{
|
sb.append("select * from(");
|
}
|
sb.append("select ROWNUM as rnum,a.ID,(select name from MD_MAT where code=a.materialcode and TID in (1,14) and rownum=1) as matname,a.QCBATCHS,a.TIMESTAMP_,a.SUBBATCHCODE,a.SAMPLENUMBER,a.TEAM,b.WAT,b.ID as qmcheckaddid,b.status,b.CREATE_USER_NAME,b.CREATE_USER_TIME,b.UPDATE_USER_NAME,b.UPDATE_USER_TIME "
|
+ "from QM_ONLINECHECK a left join QM_CXCHECK_ADD b on a.ID=b.QMOCID where 1=1");
|
if(StringUtil.notNull(orderbean.getTeamId())){
|
sb.append(" and a.TEAM='"+orderbean.getTeamId()+"'");
|
}
|
if(StringUtil.notNull(orderbean.getDate())){
|
sb.append(" and to_char(a.TIMESTAMP_,'yyyy-MM-dd')>='"+orderbean.getDate()+"'");
|
}
|
if(StringUtil.notNull(orderbean.getEtim())){
|
sb.append(" and to_char(a.TIMESTAMP_,'yyyy-MM-dd')<='"+orderbean.getEtim()+"'");
|
}
|
if(StringUtil.notNull(orderbean.getCode())){
|
sb.append(" and a.ORDERNUMBER like '%"+orderbean.getCode()+"%'");
|
}
|
if("count".equals(params)){
|
sb.append(" and a.INSPECTIONTYPE="+orderbean.getInspectionType()+" order by a.TIMESTAMP_ desc ");
|
sb.append(" )");
|
}else{
|
sb.append(" and a.INSPECTIONTYPE="+orderbean.getInspectionType()+" order by a.TIMESTAMP_ desc");
|
sb.append(" ) t where t.rnum>"+sRow+" and t.rnum<="+eRow);
|
}
|
String sql=sb.toString();
|
List<?> list=qmexcheckaddimpl.queryBySql(sql);
|
return list;
|
}catch(Exception e){
|
e.printStackTrace();
|
}
|
return null;
|
}
|
|
}
|