Commit 1189d67e authored by Fuzy's avatar Fuzy

修正

parent 09fcce65
package com.ruoyi.system.mapper; package com.ruoyi.system.mapper;
import com.ruoyi.system.domain.ActHistoryData; import com.ruoyi.system.domain.ActHistoryData;
import com.ruoyi.system.domain.ActHistoryDataDAO;
import com.ruoyi.system.dto.Pagination;
import org.apache.ibatis.annotations.Param;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/** /**
* @author haiwe * @author haiwe
* @date 2024/7/24 * @date 2024/7/24
*/ */
public interface ActHistoryDataMapper { public interface ActHistoryDataMapper {
void insert(ActHistoryData actHistoryData); void insert(@Param("act") ActHistoryDataDAO actHistoryData);
ActHistoryData getById(Integer id); ActHistoryData getById(Integer id);
void removeDuplicates(@Param("type") Long type, @Param("mId") String mineId, @Param("date") String dateColumn);
List<ActHistoryData> paginatedQueries(@Param("mId") String mineId, @Param("pag") int pag, @Param("type") String type, @Param("date") String wageMonth, @Param("size") int pageSize);
} }
package com.ruoyi.system.service.impl; package com.ruoyi.system.service.impl;
import com.alibaba.excel.EasyExcel; import com.ruoyi.common.core.domain.entity.SysRole;
import com.alibaba.fastjson.JSON; import com.ruoyi.common.core.domain.entity.SysUser;
import com.fasterxml.jackson.databind.JsonNode; import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.system.domain.ActHistoryData; import com.ruoyi.system.domain.ActHistoryData;
import com.ruoyi.system.domain.ActHistoryDataDAO;
import com.ruoyi.system.dto.Pagination;
import com.ruoyi.system.mapper.ActHistoryDataMapper; import com.ruoyi.system.mapper.ActHistoryDataMapper;
import com.ruoyi.system.service.IActHistoryDataService; import com.ruoyi.system.service.IActHistoryDataService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.core.io.Resource;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import javax.sql.rowset.serial.SerialBlob; import java.util.HashMap;
import java.io.*;
import java.nio.file.Files;
import java.sql.Blob;
import java.util.ArrayList;
import java.util.Base64;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -33,44 +26,40 @@ import java.util.Map; ...@@ -33,44 +26,40 @@ import java.util.Map;
public class ActHistoryDataServiceImpl implements IActHistoryDataService { public class ActHistoryDataServiceImpl implements IActHistoryDataService {
private static final Logger log = LoggerFactory.getLogger(ActHistoryDataServiceImpl.class); private static final Logger log = LoggerFactory.getLogger(ActHistoryDataServiceImpl.class);
private final ActHistoryDataMapper actHistoryDataMapper; private final ActHistoryDataMapper actHistoryDataMapper;
private static Map<String, String> roleIdMap = new HashMap<>();
@Override
public void insert(MultipartFile file, String mineId, String date) { static {
roleIdMap.put("10", "010101");
roleIdMap.put("11", "011704");
try { roleIdMap.put("12", "011204");
//处理历史数据 roleIdMap.put("13", "011702");
ActHistoryData actHistoryData = new ActHistoryData(); roleIdMap.put("14", "011701");
InputStream fileInputStream = file.getInputStream(); roleIdMap.put("15", "011502");
roleIdMap.put("16", "010102");
ByteArrayOutputStream baos = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = fileInputStream.read(buffer)) != -1) {
baos.write(buffer, 0, bytesRead);
} }
byte[] fileData = baos.toByteArray();
log.error("------:{}", fileData); @Override
actHistoryData.setMineId(mineId); public ActHistoryData getById(Integer id) {
actHistoryData.setContent(fileData); return actHistoryDataMapper.getById(id);
actHistoryData.setDateColumn(date);
actHistoryData.setType(3L);
actHistoryDataMapper.insert(actHistoryData);
} catch (IOException e) {
throw new RuntimeException(e);
} }
@Override
public void insert(ActHistoryDataDAO actHistoryDataDAO) {
actHistoryDataMapper.removeDuplicates(actHistoryDataDAO.getType(), actHistoryDataDAO.getMineId(), actHistoryDataDAO.getDateColumn());
actHistoryDataMapper.insert(actHistoryDataDAO);
} }
@Override @Override
public ActHistoryData getById(Integer id) { public List<ActHistoryData> getData(Pagination pagination) {
return actHistoryDataMapper.getById(id); SysUser user = SecurityUtils.getLoginUser().getUser();
if (user.getRoles().size() != 0) {
SysRole sysRole = user.getRoles().get(0);
String roleSort = sysRole.getRoleSort();
pagination.setMineId(roleIdMap.getOrDefault(roleSort, "0"));
}
int pag = (Integer.parseInt(pagination.getPageNum()) - 1) * Integer.parseInt(pagination.getPageSize());
return actHistoryDataMapper.paginatedQueries(pagination.getMineId(), pag, pagination.getType(), pagination.getWageMonth(), Integer.parseInt(pagination.getPageSize()));
} }
......
...@@ -5,22 +5,43 @@ ...@@ -5,22 +5,43 @@
<mapper namespace="com.ruoyi.system.mapper.ActHistoryDataMapper"> <mapper namespace="com.ruoyi.system.mapper.ActHistoryDataMapper">
<resultMap type="com.ruoyi.system.domain.ActHistoryData" id="ActHistoryDataResult"> <resultMap type="com.ruoyi.system.domain.ActHistoryData" id="ActHistoryDataResult">
<result property="id" column="id" /> <result property="id" column="id"/>
<result property="dateColumn" column="date_column" /> <result property="dateColumn" column="date_column"/>
<result property="type" column="type" /> <result property="type" column="type"/>
<result property="mineId" column="mine_id" /> <result property="mineId" column="mine_id"/>
<result property="content" column="content" /> <result property="content" column="content"/>
</resultMap> </resultMap>
<insert id="insert"> <insert id="insert">
insert into act_history_data insert into act_history_data
(date_column, type, mine_id, content) (date_column, type, mine_id, content)
VALUES (#{dateColumn},#{type},#{mineId},#{content}) VALUES (#{act.dateColumn}, #{act.type}, #{act.mineId}, #{act.content})
</insert> </insert>
<delete id="removeDuplicates">
delete
from act_history_data
where type = #{type}
and date_column = #{date}
and mine_id = #{mId}
</delete>
<select id="getById" resultMap="ActHistoryDataResult"> <select id="getById" resultMap="ActHistoryDataResult">
select mine_id,date_column,type,content select mine_id, date_column, type, content
from act_history_data from act_history_data
where id = #{id}; where id = #{id};
</select> </select>
<select id="paginatedQueries" resultType="com.ruoyi.system.domain.ActHistoryData">
select `ry-vue`.act_history_data.id, date_column as dateColumn, type, mine_id mineId from act_history_data
where 1 = 1
<if test="mId != null and mId != ''">
and mine_id = #{mId}
</if>
<if test="type != null and type != ''">
and type = #{type}
</if>
<if test="date != null and date != ''">
and date_column = #{date}
</if>
limit #{pag}, #{size}
</select>
</mapper> </mapper>
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment