package com.fzzy.igds.app.v1.service.impl;
|
|
import com.alibaba.fastjson.JSONObject;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.fzzy.common.constant.RespCodeEnum;
|
import com.fzzy.igds.app.v1.constant.PhoneConstant;
|
import com.fzzy.igds.app.v1.data.AuthUser;
|
import com.fzzy.igds.app.v1.data.ParamPatrol;
|
import com.fzzy.igds.app.v1.data.PhoneRequest;
|
import com.fzzy.igds.app.v1.data.PhoneResponse;
|
import com.fzzy.igds.app.v1.dto.PSnapDto;
|
import com.fzzy.igds.app.v1.service.PhoneService;
|
import com.fzzy.igds.app.v1.util.PhoneRespUtil;
|
import com.fzzy.igds.domain.*;
|
import com.fzzy.igds.mapper.SnapRecordMapper;
|
import com.fzzy.igds.mapper.WeighbridgeSnapMapper;
|
import com.fzzy.igds.service.CoreDeptService;
|
import com.fzzy.igds.service.FileService;
|
import com.fzzy.igds.service.InoutConfService;
|
import com.fzzy.igds.service.SecCameraService;
|
import com.fzzy.igds.utils.ContextUtil;
|
import com.fzzy.igds.utils.DateUtil;
|
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.time.DateFormatUtils;
|
import org.apache.commons.lang3.time.DateUtils;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.ArrayList;
|
import java.util.Date;
|
import java.util.List;
|
import java.util.stream.Collectors;
|
|
/**
|
* @Author: YYC
|
* @Description: 抓拍管理-抓拍记录列表
|
* @DateTime: 2026-1-12 14:43
|
**/
|
@Service
|
public class ServiceImpl5108 implements PhoneService {
|
|
@Resource
|
private WeighbridgeSnapMapper weighbridgeSnapMapper;
|
@Resource
|
private CoreDeptService deptService;
|
@Resource
|
private InoutConfService inoutConfService;
|
|
|
@Override
|
public String getInterfaceId() {
|
return PhoneConstant.API_PHONE_5108;
|
}
|
|
@Override
|
public PhoneResponse<Object> execute(PhoneRequest<JSONObject> req, AuthUser authUser) throws Exception {
|
//转化对象
|
ParamPatrol param = JSONObject.parseObject(req.getData().toString(), ParamPatrol.class);
|
if (null == param) {
|
return PhoneRespUtil.error(RespCodeEnum.CODE_1111, "参数有误,请重试!!");
|
}
|
//参数验证
|
if (StringUtils.isEmpty(param.getDeptId())) {
|
return PhoneRespUtil.error(RespCodeEnum.CODE_1111, "参数有误,请重试!!");
|
}
|
//参数验证
|
if (null == param.getDateTime()) {
|
return PhoneRespUtil.error(RespCodeEnum.CODE_1111, "参数有误,请重试!!");
|
}
|
QueryWrapper<WeighbridgeSnap> queryWrapper = new QueryWrapper<>();
|
|
param.setCompanyId(ContextUtil.getCompanyId());
|
queryWrapper.eq("company_id", param.getCompanyId());
|
queryWrapper.likeRight("dept_id", param.getDeptId());
|
queryWrapper.ge("time", DateUtil.getCurZero(param.getDateTime()));
|
queryWrapper.le("time", DateUtil.getNextZero(param.getDateTime()));
|
|
List<WeighbridgeSnap> list = weighbridgeSnapMapper.selectList(queryWrapper);
|
PSnapDto snapDto;
|
Dept dept;
|
List<PSnapDto> snapDtoList = new ArrayList<>();
|
List<InoutConf> collect;
|
//获取监控设备
|
List<InoutConf> inoutConfs = inoutConfService.getInoutConfList(ContextUtil.getCompanyId(), param.getDeptId());
|
for (WeighbridgeSnap weighbridgeSnap : list) {
|
snapDto = new PSnapDto();
|
BeanUtils.copyProperties(weighbridgeSnap, snapDto);
|
|
//映射监控设备名称
|
collect = inoutConfs.stream().filter(camera -> camera.getId().equals(weighbridgeSnap.getSerId())).collect(Collectors.toList());
|
if (!collect.isEmpty()) {
|
snapDto.setCameraId(collect.get(0).getName());
|
}
|
dept = deptService.getDeptById(weighbridgeSnap.getDeptId());
|
snapDto.setDeptName(dept.getKqmc());
|
snapDtoList.add(snapDto);
|
}
|
return PhoneRespUtil.success(snapDtoList, req);
|
}
|
}
|