package com.ruoyi.station.service.impl;
|
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
import com.ruoyi.common.utils.DateUtils;
|
import com.ruoyi.common.utils.StringUtils;
|
import com.ruoyi.station.mapper.MjWorkUserMapper;
|
import org.apache.commons.collections.CollectionUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import com.ruoyi.station.mapper.MjDataPushLogMapper;
|
import com.ruoyi.station.domain.MjDataPushLog;
|
import com.ruoyi.station.service.IMjDataPushLogService;
|
import com.ruoyi.common.core.text.Convert;
|
|
/**
|
* 数据推送日志Service业务层处理
|
*
|
* @author ruoyi
|
* @date 2020-08-10
|
*/
|
@Service
|
public class MjDataPushLogServiceImpl implements IMjDataPushLogService
|
{
|
@Autowired
|
private MjDataPushLogMapper mjDataPushLogMapper;
|
|
@Autowired
|
private MjWorkUserServiceImpl mjWorkUserService;
|
|
@Autowired
|
private MjWorkUserMapper MjWorkUserMapper;
|
|
/**
|
* 查询数据推送日志
|
*
|
* @param id 数据推送日志ID
|
* @return 数据推送日志
|
*/
|
@Override
|
public MjDataPushLog selectMjDataPushLogById(String id)
|
{
|
return mjDataPushLogMapper.selectMjDataPushLogById(id);
|
}
|
|
/**
|
* 查询数据推送日志列表
|
*
|
* @param mjDataPushLog 数据推送日志
|
* @return 数据推送日志
|
*/
|
@Override
|
public List<MjDataPushLog> selectMjDataPushLogList(MjDataPushLog mjDataPushLog)
|
{
|
return mjDataPushLogMapper.selectMjDataPushLogList(mjDataPushLog);
|
}
|
|
/**
|
* 新增数据推送日志
|
*
|
* @param mjDataPushLog 数据推送日志
|
* @return 结果
|
*/
|
@Override
|
public int insertMjDataPushLog(MjDataPushLog mjDataPushLog)
|
{
|
mjDataPushLog.setCreateTime(DateUtils.getNowDate());
|
return mjDataPushLogMapper.insertMjDataPushLog(mjDataPushLog);
|
}
|
|
/**
|
* 修改数据推送日志
|
*
|
* @param mjDataPushLog 数据推送日志
|
* @return 结果
|
*/
|
@Override
|
public int updateMjDataPushLog(MjDataPushLog mjDataPushLog)
|
{
|
mjDataPushLog.setUpdateTime(DateUtils.getNowDate());
|
return mjDataPushLogMapper.updateMjDataPushLog(mjDataPushLog);
|
}
|
|
/**
|
* 删除数据推送日志对象
|
*
|
* @param ids 需要删除的数据ID
|
* @return 结果
|
*/
|
@Override
|
public int deleteMjDataPushLogByIds(String ids)
|
{
|
return mjDataPushLogMapper.deleteMjDataPushLogByIds(Convert.toStrArray(ids));
|
}
|
|
/**
|
* 删除数据推送日志信息
|
*
|
* @param id 数据推送日志ID
|
* @return 结果
|
*/
|
@Override
|
public int deleteMjDataPushLogById(String id)
|
{
|
return mjDataPushLogMapper.deleteMjDataPushLogById(id);
|
}
|
|
/**
|
* 获取授权总次数
|
* @return
|
*/
|
@Override
|
public Integer getAuthCount() {
|
List<MjDataPushLog> mjDataPushLogList = mjDataPushLogMapper.selectAuthLog();
|
int count = 0;
|
if(mjDataPushLogList != null) {
|
count = mjDataPushLogList.size();
|
}
|
return count;
|
}
|
|
/**
|
* 授权数据统计-》授权方式
|
* @return
|
*/
|
@Override
|
public Map<String, Object> getAuthDataType() {
|
Integer monthCount = null;
|
int longAuth = 0; //长期授权
|
int shortAuth = 0; //短期授权
|
int ERPAuth = 0; //ERP授权
|
|
List<MjDataPushLog> mjDataPushLogList = mjDataPushLogMapper.selectAuthLog();
|
if(mjDataPushLogList != null && mjDataPushLogList.size() > 0) {
|
for(MjDataPushLog mjDataPushLog : mjDataPushLogList) {
|
if(mjDataPushLog != null) {
|
try {
|
monthCount = mjWorkUserService.monthsBetween(mjDataPushLog.getStartTime(), mjDataPushLog.getEndTime());
|
if(monthCount != null) {
|
shortAuth++;
|
/*if(monthCount >= 12) { //判断有效年份是否超过一年,超过则为长期授权否则短期授权
|
longAuth++;
|
}else {
|
shortAuth++;
|
}*/
|
}
|
}catch (Exception e) {
|
e.printStackTrace();
|
return null;
|
}
|
}
|
}
|
}
|
Map<String, Object> map = new HashMap<>();
|
map.put("longAuth", longAuth);
|
map.put("shortAuth", shortAuth);
|
map.put("ERPAuth", ERPAuth);
|
return map;
|
}
|
|
@Override
|
public List<MjDataPushLog> selectDataPushLogList(MjDataPushLog mjDataPushLog) {
|
List<MjDataPushLog> mjDataPushLogList = mjDataPushLogMapper.selectDataPushLogList(mjDataPushLog);
|
if(CollectionUtils.isNotEmpty(mjDataPushLogList)) {
|
for(MjDataPushLog dataPushLog : mjDataPushLogList) {
|
if(StringUtils.isEmpty(dataPushLog.getTogetherUserIds())){
|
continue;
|
}
|
List<String> userNames = MjWorkUserMapper.selectUserNamesByTogetherUserIds(Convert.toStrArray(dataPushLog.getTogetherUserIds()));
|
String names = String.join(",", userNames);
|
dataPushLog.setTogetherUserNames(names);
|
}
|
}
|
return mjDataPushLogList;
|
}
|
|
@Override
|
public void deleteByWorkOrderId(String id) {
|
mjDataPushLogMapper.deleteByWorkOrderId(id);
|
}
|
}
|