|
@ -5,16 +5,20 @@ import com.yihu.iot.dao.device.IotDeviceDao;
|
|
|
import com.yihu.iot.dao.device.IotDeviceOrderDao;
|
|
|
import com.yihu.iot.dao.device.IotDeviceQualityInspectionPlanDao;
|
|
|
import com.yihu.iot.dao.device.IotOrderPurchaseDao;
|
|
|
import com.yihu.iot.dao.dict.IotSystemDictDao;
|
|
|
import com.yihu.iot.dao.message.IotMessageDao;
|
|
|
import com.yihu.iot.service.dict.IotSystemDictService;
|
|
|
import com.yihu.jw.entity.iot.device.IotDeviceQualityInspectionPlanDO;
|
|
|
import com.yihu.jw.entity.iot.device.IotOrderPurchaseDO;
|
|
|
import com.yihu.jw.entity.iot.dict.IotSystemDictDO;
|
|
|
import com.yihu.jw.entity.iot.message.IotMessageDO;
|
|
|
import com.yihu.jw.restmodel.web.MixEnvelop;
|
|
|
import com.yihu.jw.restmodel.iot.device.IotDeviceQualityInspectionPlanVO;
|
|
|
import com.yihu.jw.rm.iot.IotRequestMapping;
|
|
|
import com.yihu.jw.util.date.DateUtil;
|
|
|
import com.yihu.jw.util.http.HttpClientUtil;
|
|
|
import com.yihu.mysql.query.BaseJpaService;
|
|
|
import com.yihu.utils.network.HttpUtils;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.jdbc.core.BeanPropertyRowMapper;
|
|
@ -48,6 +52,11 @@ public class IotDeviceQualityInspectionPlanService extends BaseJpaService<IotDev
|
|
|
@Autowired
|
|
|
private IotDeviceDao iotDeviceDao;
|
|
|
|
|
|
@Autowired
|
|
|
private IotSystemDictDao iotSystemDictDao;
|
|
|
|
|
|
|
|
|
private final static String jobUrl = "http://localhost:10031/job/reStartById?taskId=data_device_quality_plan_job";
|
|
|
/**
|
|
|
* 新增
|
|
|
* @param iotDeviceQualityInspectionPlan
|
|
@ -56,7 +65,10 @@ public class IotDeviceQualityInspectionPlanService extends BaseJpaService<IotDev
|
|
|
@Transactional
|
|
|
public IotDeviceQualityInspectionPlanDO create(IotDeviceQualityInspectionPlanDO iotDeviceQualityInspectionPlan) {
|
|
|
|
|
|
IotOrderPurchaseDO purchaseDO = iotOrderPurchaseDao.findById(iotDeviceQualityInspectionPlan.getPurchaseId());
|
|
|
IotOrderPurchaseDO purchaseDO = iotOrderPurchaseDao.findByOrderNo(iotDeviceQualityInspectionPlan.getOrderNo());
|
|
|
|
|
|
iotDeviceQualityInspectionPlan.setPurchaseId(purchaseDO.getId());
|
|
|
iotDeviceQualityInspectionPlan.setDeviceId(purchaseDO.getProductId());
|
|
|
|
|
|
iotDeviceQualityInspectionPlan.setOrderNo(purchaseDO.getOrderNo());
|
|
|
iotDeviceQualityInspectionPlan.setDeviceId(purchaseDO.getProductId());
|
|
@ -225,39 +237,32 @@ public class IotDeviceQualityInspectionPlanService extends BaseJpaService<IotDev
|
|
|
* 分页查找
|
|
|
* @param page
|
|
|
* @param size
|
|
|
* @param purcharseId
|
|
|
* @param status
|
|
|
* @return
|
|
|
*/
|
|
|
public MixEnvelop<IotDeviceQualityInspectionPlanVO, IotDeviceQualityInspectionPlanVO> queryPage(String purcharseId, String orderNo, String startTime, String endTime, Integer page, Integer size){
|
|
|
StringBuffer sql = new StringBuffer("SELECT c.* from iot_device_quality_inspection_plan c WHERE c.del=1 ");
|
|
|
StringBuffer sqlCount = new StringBuffer("SELECT COUNT(c.id) count from iot_device_quality_inspection_plan c WHERE c.del=1 ");
|
|
|
public MixEnvelop<IotDeviceQualityInspectionPlanVO, IotDeviceQualityInspectionPlanVO> queryPage(String status, String orderNo, String startTime, String endTime, Integer page, Integer size){
|
|
|
StringBuffer sql = new StringBuffer("SELECT c.* from iot_device_quality_inspection_plan c WHERE c.del=1 ");
|
|
|
List<Object> args = new ArrayList<>();
|
|
|
|
|
|
if(StringUtils.isNotBlank(purcharseId)){
|
|
|
sql.append(" and c.purchase_id=? ");
|
|
|
sqlCount.append(" and c.purchase_id='").append(purcharseId).append("' ");
|
|
|
args.add(purcharseId);
|
|
|
if(StringUtils.isNotBlank(status)){
|
|
|
sql.append(" and c.status=? ");
|
|
|
args.add(status);
|
|
|
}
|
|
|
if(StringUtils.isNotBlank(orderNo)){
|
|
|
sql.append(" and c.order_no=? ");
|
|
|
sqlCount.append(" and c.order_no='").append(orderNo).append("' ");
|
|
|
args.add(orderNo);
|
|
|
sql.append("and c.order_no like'%").append(orderNo).append("%' ");
|
|
|
|
|
|
}
|
|
|
if(StringUtils.isNotBlank(startTime)){
|
|
|
sql.append(" and c.plan_time>=? ");
|
|
|
sqlCount.append(" and c.plan_time>='").append(startTime).append("' ");
|
|
|
args.add(startTime);
|
|
|
}
|
|
|
if(StringUtils.isNotBlank(endTime)){
|
|
|
sql.append(" and c.plan_time<=? ");
|
|
|
sqlCount.append(" and c.plan_time<='").append(endTime).append("' ");
|
|
|
args.add(endTime);
|
|
|
}
|
|
|
sql.append("order by c.update_time desc limit ").append((page-1)*size).append(",").append(size);
|
|
|
|
|
|
sql.append(" GROUP BY c.order_no ORDER BY c.plan_time DESC limit ").append((page-1)*size).append(",").append(size);
|
|
|
List<IotDeviceQualityInspectionPlanDO> list = jdbcTempalte.query(sql.toString(),args.toArray(),new BeanPropertyRowMapper(IotDeviceQualityInspectionPlanDO.class));
|
|
|
List<Map<String,Object>> countList = jdbcTempalte.queryForList(sqlCount.toString());
|
|
|
long count = Long.valueOf(countList.get(0).get("count").toString());
|
|
|
long count = list.size();
|
|
|
|
|
|
//DO转VO
|
|
|
List<IotDeviceQualityInspectionPlanVO> qualityInspectionPlanVOList = transforList(list);
|
|
@ -271,16 +276,47 @@ public class IotDeviceQualityInspectionPlanService extends BaseJpaService<IotDev
|
|
|
*/
|
|
|
public void remindTimePlan(String time) {
|
|
|
|
|
|
int remindTime = Integer.valueOf(time);
|
|
|
|
|
|
List<IotDeviceQualityInspectionPlanDO> list = iotDeviceQualityInspectionPlanDao.findListAll();
|
|
|
list.forEach(one->{
|
|
|
|
|
|
Date remind = DateUtil.getPreDays(one.getPlanTime(), -remindTime);
|
|
|
one.setRemindTime(remind);
|
|
|
iotDeviceQualityInspectionPlanDao.save(one);
|
|
|
|
|
|
});
|
|
|
IotSystemDictDO qualityRemind= iotSystemDictDao.findByDictName("DEVICE_QUALITY_REMIND").get(0);
|
|
|
qualityRemind.setTime(time);
|
|
|
qualityRemind.setDel(1);
|
|
|
iotSystemDictDao.save(qualityRemind);
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 查询所有需要提醒的质检信息
|
|
|
* @param time
|
|
|
* @return
|
|
|
*/
|
|
|
public List<IotDeviceQualityInspectionPlanDO> findListAll(String time){
|
|
|
|
|
|
StringBuffer sql = new StringBuffer("SELECT c.* FROM iot_device_quality_inspection_plan c WHERE del=1");
|
|
|
|
|
|
List<Object> args = new ArrayList<>();
|
|
|
if (StringUtils.isNotBlank(time)){
|
|
|
sql.append(" and DATEDIFF(c.plan_time,CURRENT_TIMESTAMP)=?");
|
|
|
args.add(time);
|
|
|
}
|
|
|
|
|
|
List<IotDeviceQualityInspectionPlanDO> list = jdbcTempalte.query(sql.toString(),args.toArray(),new BeanPropertyRowMapper(IotDeviceQualityInspectionPlanDO.class));
|
|
|
|
|
|
return list;
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 根据订单编号查找所有计划时间
|
|
|
* @param orderNo
|
|
|
* @return
|
|
|
*/
|
|
|
public MixEnvelop<IotDeviceQualityInspectionPlanVO, IotDeviceQualityInspectionPlanVO> findPlanTimeByOrderNo(String orderNo,Integer page,Integer size) {
|
|
|
|
|
|
List<IotDeviceQualityInspectionPlanDO> listOrderNo = iotDeviceQualityInspectionPlanDao.findByOrderNo(orderNo);
|
|
|
List<IotDeviceQualityInspectionPlanVO> list = transforList(listOrderNo);
|
|
|
long count = list.size();
|
|
|
return MixEnvelop.getSuccessListWithPage(IotRequestMapping.Common.message_success_find_functions,list,page,size,count);
|
|
|
}
|
|
|
}
|