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.service.PhoneService;
|
import com.fzzy.igds.app.v1.util.PhoneRespUtil;
|
import com.fzzy.igds.domain.Patrol;
|
import com.fzzy.igds.domain.PatrolConf;
|
import com.fzzy.igds.domain.PatrolRecord;
|
import com.fzzy.igds.mapper.PatrolConfMapper;
|
import com.fzzy.igds.mapper.PatrolMapper;
|
import com.fzzy.igds.mapper.PatrolRecordMapper;
|
import com.fzzy.igds.service.FileService;
|
import com.fzzy.igds.service.PatrolService;
|
import com.fzzy.igds.utils.ContextUtil;
|
import com.ruoyi.common.config.FrameworkConfig;
|
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.time.DateFormatUtils;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* @Author: YYC
|
* @Description: 巡检监管-电子巡更打卡
|
* @DateTime: 2026-1-12 14:43
|
**/
|
@Service
|
public class ServiceImpl5106 implements PhoneService {
|
|
@Resource
|
private PatrolConfMapper patrolConfMapper;
|
@Resource
|
private PatrolMapper patrolMapper;
|
@Resource
|
private PatrolRecordMapper patrolRecordMapper;
|
@Resource
|
private FileService fileService;
|
|
|
@Override
|
public String getInterfaceId() {
|
return PhoneConstant.API_PHONE_5106;
|
}
|
|
@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 (StringUtils.isEmpty(param.getLongitude())) {
|
return PhoneRespUtil.error(RespCodeEnum.CODE_1111, "参数有误,请重试!!");
|
}
|
//参数验证
|
if (StringUtils.isEmpty(param.getLatitude())) {
|
return PhoneRespUtil.error(RespCodeEnum.CODE_1111, "参数有误,请重试!!");
|
}
|
//参数验证
|
if (StringUtils.isEmpty(param.getUserName())) {
|
return PhoneRespUtil.error(RespCodeEnum.CODE_1111, "参数有误,请重试!!");
|
}
|
PatrolRecord patrolRecord = new PatrolRecord();
|
String longitude = param.getLongitude();
|
String latitude = param.getLatitude();
|
patrolRecord.setLongitude(longitude.substring(0, (longitude.indexOf(".") + 6)));
|
patrolRecord.setLatitude(latitude.substring(0, (latitude.indexOf(".") + 6)));
|
patrolRecord.setCreateTime(new Date());
|
patrolRecord.setPatrolId(DateFormatUtils.format(patrolRecord.getCreateTime(), "yyyyMMdd"));
|
patrolRecord.setId(ContextUtil.generateId());
|
patrolRecord.setCompanyId(authUser.getCompanyId());
|
patrolRecord.setCreateBy(authUser.getCname());
|
patrolRecord.setUpdateTime(new Date());
|
patrolRecord.setUpdateBy(authUser.getCname());
|
String path = fileService.getFileSavePath("PATROL") + param.getImgName();
|
patrolRecord.setImgName(path.replace(FrameworkConfig.getProfile(), "/profile/"));
|
QueryWrapper<PatrolConf> queryConfWrapper = new QueryWrapper<>();
|
String format = DateFormatUtils.format(new Date(), "HH:mm:ss");
|
queryConfWrapper.le("start", format);
|
queryConfWrapper.ge("end", format);
|
queryConfWrapper.eq("company_id", authUser.getCompanyId());
|
// queryConfWrapper.eq("dept_id", authUser.getDeptId());
|
List<PatrolConf> confList = patrolConfMapper.selectList(queryConfWrapper);
|
if (null == confList||confList.isEmpty()) {
|
return PhoneRespUtil.error(RespCodeEnum.CODE_1007, "请填写相关的班次信息!!");
|
}
|
PatrolConf patrolConf = confList.get(0);
|
|
QueryWrapper<Patrol> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("id", patrolRecord.getPatrolId());
|
queryWrapper.eq("user_id",authUser.getUsername());
|
queryWrapper.eq("conf_id",patrolConf.getId());
|
List<Patrol> patrolList = patrolMapper.selectList(queryWrapper);
|
if (null == patrolList||patrolList.isEmpty()) {
|
Patrol patrol = new Patrol();
|
patrol.setId(patrolRecord.getPatrolId());
|
|
patrol.setDeptId(authUser.getDeptId());
|
patrol.setUserId(authUser.getUsername());
|
patrol.setUserName(authUser.getCname());
|
patrol.setCompanyId(authUser.getCompanyId());
|
patrol.setCreateBy(authUser.getCname());
|
patrol.setCreateTime(new Date());
|
patrol.setUpdateBy(authUser.getCname());
|
patrol.setUpdateTime(new Date());
|
patrol.setDeptId(param.getDeptId());
|
patrol.setConfId(patrolConf.getId());
|
patrol.setConfName(patrolConf.getName());
|
|
int insert = patrolMapper.insert(patrol);
|
if (insert <= 0) {
|
return PhoneRespUtil.error(RespCodeEnum.CODE_1007, "保存失败!!");
|
}
|
}
|
int insert = patrolRecordMapper.insert(patrolRecord);
|
if (insert > 0) {
|
return PhoneRespUtil.success(RespCodeEnum.CODE_0000, req);
|
}
|
return PhoneRespUtil.error(RespCodeEnum.CODE_1007, "保存失败!!");
|
|
}
|
}
|