package cn.gistack.sm.sjztods.service.impl;
|
|
import cn.gistack.sm.sjztods.entity.XsfsQktj;
|
import cn.gistack.sm.sjztods.excel.XsfsQktjExcel;
|
import cn.gistack.sm.sjztods.mapper.XsfsQktjMapper;
|
import cn.gistack.sm.sjztods.service.IXsfsQktjService;
|
import cn.gistack.sm.sjztods.vo.XsfsQktjVO;
|
import com.baomidou.dynamic.datasource.annotation.DS;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import org.springblade.core.secure.utils.AuthUtil;
|
import org.springblade.core.tool.utils.BeanUtil;
|
import org.springframework.stereotype.Service;
|
|
import java.util.Date;
|
import java.util.List;
|
import java.util.Objects;
|
|
/**
|
* @ClassName XsfsQktjServiceImpl
|
* @author zhongrj
|
* @date 2023-10-19
|
*/
|
@Service
|
@DS("ztznwh")
|
public class XsfsQktjServiceImpl extends ServiceImpl<XsfsQktjMapper, XsfsQktj> implements IXsfsQktjService {
|
|
/**
|
* 上报
|
* @param xsfsQktj
|
* @return
|
*/
|
@Override
|
@DS("ztznwh")
|
public boolean exportXsfsQktj(XsfsQktj xsfsQktj) {
|
// 查询库中是否包含当前日期,当前行政区的数据,如果有,则更新,没有则新增
|
QueryWrapper<XsfsQktj> wrapper = new QueryWrapper<>();
|
wrapper.eq("\"statistic_time\"",xsfsQktj.getStatisticTime())
|
.eq("\"ad_code\"",xsfsQktj.getAdCode());
|
XsfsQktj qkTj = baseMapper.selectOne(wrapper);
|
// 设置更新人员,更新时间,来源信息
|
xsfsQktj.setUpdateTime(new Date());
|
xsfsQktj.setUpdateUser(AuthUtil.getUserId());
|
xsfsQktj.setSysResource("sb");
|
if (null!= qkTj){
|
xsfsQktj.setGuid(qkTj.getGuid());
|
// 更新并返回
|
return updateById(xsfsQktj);
|
}
|
// 设置创建人员,时间信息
|
xsfsQktj.setCreateUser(AuthUtil.getUserId());
|
xsfsQktj.setCreateTime(new Date());
|
// 保存并返回
|
return save(xsfsQktj);
|
}
|
|
/**
|
* 分页列表数据查询
|
* @param xsfsQktj
|
* @param page
|
* @return
|
*/
|
@Override
|
public Object selectXsfsQktjPage(IPage<XsfsQktjVO> page, XsfsQktjVO xsfsQktj) {
|
if (null!=xsfsQktj.getIsExport()){
|
// 导出,查询所有数据
|
return baseMapper.selectXsfsQktjPage(null,xsfsQktj);
|
}
|
return page.setRecords(baseMapper.selectXsfsQktjPage(page,xsfsQktj));
|
}
|
|
/**
|
* 按行政区统计
|
* @param xsfsQktj
|
* @return
|
*/
|
@Override
|
public Object getStatisticList(XsfsQktjVO xsfsQktj) {
|
return baseMapper.getStatisticList(xsfsQktj);
|
}
|
|
/**
|
* 导入统计上报数据
|
* @param data
|
*/
|
@Override
|
public void importXsfsQktjData(List<XsfsQktjExcel> data) {
|
if (data.size()>0){
|
// 遍历
|
data.forEach(xsfsQktjExcel -> {
|
XsfsQktj xsfsQktj = Objects.requireNonNull(BeanUtil.copy(xsfsQktjExcel, XsfsQktj.class));
|
// 查询库中是否包含当前日期,当前行政区的数据,如果有,则更新,没有则新增
|
QueryWrapper<XsfsQktj> wrapper = new QueryWrapper<>();
|
wrapper.eq("\"statistic_time\"",xsfsQktj.getStatisticTime())
|
.eq("\"ad_code\"",xsfsQktj.getAdCode());
|
XsfsQktj qkTj = baseMapper.selectXsfsQktj(xsfsQktjExcel);
|
// 设置更新人员,更新时间,来源信息
|
xsfsQktj.setUpdateTime(new Date());
|
xsfsQktj.setUpdateUser(AuthUtil.getUserId());
|
xsfsQktj.setSysResource("sb");
|
if (null!= qkTj){
|
xsfsQktj.setGuid(qkTj.getGuid());
|
// 更新并返回
|
updateById(xsfsQktj);
|
return;
|
}
|
// 设置创建人员,时间信息
|
xsfsQktj.setCreateUser(AuthUtil.getUserId());
|
xsfsQktj.setCreateTime(new Date());
|
// 保存并返回
|
save(xsfsQktj);
|
return;
|
});
|
}
|
}
|
|
/**
|
* 查询导出数据
|
* @param xsfsQktj
|
* @return
|
*/
|
@Override
|
public List<XsfsQktjExcel> exportXsfsQktjList(XsfsQktjVO xsfsQktj) {
|
return baseMapper.exportXsfsQktjList(xsfsQktj);
|
}
|
}
|