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 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 mjDataPushLogList = mjDataPushLogMapper.selectAuthLog(); int count = 0; if(mjDataPushLogList != null) { count = mjDataPushLogList.size(); } return count; } /** * 授权数据统计-》授权方式 * @return */ @Override public Map getAuthDataType() { Integer monthCount = null; int longAuth = 0; //长期授权 int shortAuth = 0; //短期授权 int ERPAuth = 0; //ERP授权 List 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 map = new HashMap<>(); map.put("longAuth", longAuth); map.put("shortAuth", shortAuth); map.put("ERPAuth", ERPAuth); return map; } @Override public List selectDataPushLogList(MjDataPushLog mjDataPushLog) { List mjDataPushLogList = mjDataPushLogMapper.selectDataPushLogList(mjDataPushLog); if(CollectionUtils.isNotEmpty(mjDataPushLogList)) { for(MjDataPushLog dataPushLog : mjDataPushLogList) { if(StringUtils.isEmpty(dataPushLog.getTogetherUserIds())){ continue; } List 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); } }