package com.shlanbao.tzsc.pms.equ.sbglplan.service.impl; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.UUID; import org.apache.commons.lang.ObjectUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.shlanbao.tzsc.base.dao.EqmWheelCovelParamDaoI; import com.shlanbao.tzsc.base.dao.EqmWheelCovelPlanDaoI; import com.shlanbao.tzsc.base.dao.EqmipmentsDaoI; import com.shlanbao.tzsc.base.mapping.EqmWheelCovelParam; import com.shlanbao.tzsc.base.mapping.EqmWheelCovelPlan; import com.shlanbao.tzsc.base.mapping.MdEquipment; import com.shlanbao.tzsc.base.mapping.MdShift; import com.shlanbao.tzsc.base.mapping.SysUser; 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.equ.sbglplan.beans.EqmPlanBean; import com.shlanbao.tzsc.pms.equ.sbglplan.beans.EquipmentsBean; import com.shlanbao.tzsc.pms.equ.sbglplan.service.EqmPlanServiceI; import com.shlanbao.tzsc.pms.equ.wcplan.beans.BatchWCPlan; import com.shlanbao.tzsc.pms.md.eqptype.beans.MdEqpTypeChildBean; import com.shlanbao.tzsc.utils.tools.BeanConvertor; import com.shlanbao.tzsc.utils.tools.DateUtil; import com.shlanbao.tzsc.utils.tools.StringUtil; @Service public class EqmPlanServiceImpl extends BaseService implements EqmPlanServiceI { @Autowired private EqmWheelCovelPlanDaoI eqmWheelCovelPlanDao; @Autowired private EqmWheelCovelParamDaoI eqmWheelCovelParamDao; @Autowired private EqmipmentsDaoI equipmentsDao; @Override public DataGrid queryEqu(EquipmentsBean equBean, PageParams pageParams) throws Exception { //hql 语句拼装 String hql = "from MdEquipment o " + "left join fetch o.mdEqpType met " + "left join fetch met.mdEqpCategory mc " + "where 1=1 and o.del=0 "; StringBuffer params = new StringBuffer(); if(StringUtil.notNull(equBean.getEquipmentCode())){ params.append(" and o.equipmentCode like '%"+ equBean.getEquipmentCode() +"%'"); } if(StringUtil.notNull(equBean.getEquipmentName())){ params.append(" and o.equipmentName like '%"+ equBean.getEquipmentName() +"%'"); } //加入两个条件 if(StringUtil.notNull(equBean.getWorkShopId())){ params.append(" and o.mdWorkshop.id='"+ equBean.getWorkShopId() +"'"); } if(StringUtil.notNull(equBean.getWorkShopName())){//1卷包车间2成型车间也是对象id params.append(" and o.mdWorkshop.id='"+equBean.getWorkShopName()+"'"); } if(StringUtil.notNull(equBean.getEqpTypeName())){//传进来Id根据对象比较 params.append(" and o.mdEqpType.id='"+equBean.getEqpTypeName()+"'"); } String param = params.toString(); List rows = equipmentsDao.queryByPage(hql.concat(param), pageParams); List equBeans = new ArrayList(); for(MdEquipment me : rows){ String typeId = me.getMdEqpType().getId(); String typeName = me.getMdEqpType().getName(); EquipmentsBean eb = new EquipmentsBean(); BeanConvertor.copyProperties(me, eb); eb.setEqpTypeId(typeId); eb.setEqpTypeName(typeName); if(null!=me.getMdWorkshop()){ eb.setWorkShopId(me.getMdWorkshop().getId()); eb.setWorkShopName(me.getMdWorkshop().getName()); } if(null!=me.getMdEqpType()&&null!=me.getMdEqpType().getMdEqpCategory()){ eb.setMdEqpCategoryId(me.getMdEqpType().getMdEqpCategory().getId());//设备类型 eb.setMdEqpCategoryCode(me.getMdEqpType().getMdEqpCategory().getCode());//设备类型 eb.setMdEqpCategoryName(me.getMdEqpType().getMdEqpCategory().getName());//设备类型 } equBeans.add(eb); } hql = "select count(*) from MdEquipment o where 1=1 and o.del=0 "; long total = equipmentsDao.queryTotal(hql.concat(param)); return new DataGrid(equBeans,total); } /** * 根据设备型号ID查询对应的轮保规则 * @return */ @Override public DataGrid queryEqpTypeChild(EquipmentsBean equBean,PageParams pageParams)throws Exception{ StringBuffer sql=new StringBuffer(); sql.append("select sec.id,sec.CODE, sec.NAME,metc.SEC_PID,metc.MET_PID,metc.TYPE,metc.ID as METC_ID "); sql.append("from MD_EQP_TYPE_child metc left join SYS_EQP_CATEGORY sec on sec.id = metc.sec_pid "); sql.append("where metc.del=0 and metc.MET_PID=? "); List objs = new ArrayList(); objs.add(equBean.getQueryEqpTypeId()); if(null!=equBean.getQueryType()&&!"".equals(equBean.getQueryType())){ sql.append("and metc.TYPE=? "); objs.add(equBean.getQueryType()); } List list = eqmWheelCovelPlanDao.queryBySql(sql.toString(), objs); List lastList = new ArrayList(); if(null!=list&&list.size()>0){ MdEqpTypeChildBean childBean = null; for(int i=0;i list=eqmWheelCovelParamDao.query(hql.toString()); hql.insert(0,"select count(*) "); long total = eqmWheelCovelPlanDao.queryTotal(hql.toString()); return new DataGrid(list, total); } catch (Exception e) { // TODO: handle exception } return null; } /** * 功能说明:设备轮保-批量添加 * * */ @Override public String saveWcPlanf(EqmWheelCovelPlan ep) { String id="";//eqmWheelCovelPlanDao.saveBackKey(ep); return id; } /** * type lb -轮保 * * met_pid -md_eqp_type表ID * sec_pid - * * */ @Override public List queryEqpTypeChild(BatchWCPlan b) { String sql="select * from MD_EQP_TYPE_CHILD where sec_pid='"+b.getRuleId()+"' and type='lb' and met_pid='"+b.getEqp_typeId()+"'"; List list=equipmentsDao.queryBySql(sql); return list; } /** * 查询SYS_EQP_TYPE * * */ @Override public Map querySysEqpType(BatchWCPlan b) { String sql="select id,cid from SYS_EQP_TYPE "; List list=equipmentsDao.queryBySql(sql); Map map=new HashMap(); for(Object o:list){ Object[] temp=(Object[]) o; map.put(temp[0].toString(), temp[1].toString()); } return map; } @Override public void saveWcParam(EqmWheelCovelParam ecpb) { eqmWheelCovelParamDao.save(ecpb); } @Override public void deleteWCPlan(String id){ /*EqmWheelCovelPlan bean=eqmWheelCovelPlanDao.findById(EqmWheelCovelPlan.class, id); if(bean.getWheelCoverType().equals("0")){ bean.setWheelCoverType("9"); }*/ } @Override public void edit(String id){ /*EqmWheelCovelPlan bean=eqmWheelCovelPlanDao.findById(EqmWheelCovelPlan.class, id); if(bean.getWheelCoverType().equals("0")){ bean.setWheelCoverType("11"); }*/ } /** * 根据当前维保小项目查询当前对象 */ @Override public EqmWheelCovelParam queryDetailById(String id) { EqmWheelCovelParam bean=null; try { bean=eqmWheelCovelParamDao.findById(EqmWheelCovelParam.class, id); if(bean==null){ bean=new EqmWheelCovelParam(); } } catch (Exception e) { e.printStackTrace(); } return bean; } }