查询道具

jieling
PC-202302260912\Administrator 2023-09-21 21:06:40 +08:00
parent 87a7116f59
commit e9dce9e0d6
4 changed files with 35 additions and 25 deletions

View File

@ -116,6 +116,11 @@ public class GmController {
return 0;
}
if (cmd.contains("queryitem")){
createExcelToItem(cmd);
return 0;
}
//根据excel删除道具
if (cmd.equals("deleteItem0210")){
deleteItem0210();
@ -135,39 +140,32 @@ public class GmController {
/**
* excel
* @param content
* @param serverIds
* @param response
* @throws Exception
*/
private void createExcelToItem(String content, String serverIds, HttpServletResponse response) throws Exception {
LOGGER.info("删除道具0209============开始");
// type#reason#start#end
private void createExcelToItem(String content) throws Exception {
LOGGER.info("查询道具0921============开始");
// type#reason#start(yyyyMMddHHmmss)#end(yyyyMMddHHmmss)
String[] strings = content.split("#");
// 服务器列表
String[] serverList = serverIds.split(",");
Map<String, ServerInfo> serverMap = serverInfoDao.getAllServerMap();
HSSFWorkbook wb = new HSSFWorkbook();
for (String serverId : serverList) {
ServerInfo info = serverMap.get(serverId);
if (info == null){
continue;
}
HashSet<Integer> set = new HashSet<>(HeFuManager.getHefuMap().values());
LOGGER.info("查询道具,主服数量:{},主服列表:{}",set.size(), set);
for (Integer serverId : set) {
CItemParam param = new CItemParam();
param.setServerId(Integer.parseInt(serverId));
param.setServerId(serverId);
param.setType(Integer.parseInt(strings[1]));
param.setReason(Integer.parseInt(strings[2]));
param.setStartTime(strings[3]);
param.setEndTime(strings[4]);
param.setItemId(Integer.parseInt(strings[5]));
List<CItemInfo> item2 = itemDao.getItem2(param);
List<ItemLogVo> logVoList = ItemInfoToV(item2, serverId);
LOGGER.info("删除道具0209查询道具,区服:{},数量:{}============",info.getName(),logVoList.size());
List<ItemLogVo> logVoList = ItemInfoToV(item2, String.valueOf(serverId));
LOGGER.info("查询道具,区服:{},数量:{}============",serverId,logVoList.size());
// 添加sheet
createExcelToSheet(wb, logVoList, info.getName());
LOGGER.info("删除道具0209创建区服{}============",info.getName());
createExcelToSheet(wb, logVoList, String.valueOf(serverId));
}
//第六步将生成excel文件保存到指定路径下
@ -179,20 +177,18 @@ public class GmController {
path = "D:/Program Files (x86)/Quick/Downloads/玩家道具信息"+DateUtil.nowInt()+".xls";
}
LOGGER.info("删除道具0209,文件地址:{}============",path);
LOGGER.info("\"查询道具,文件地址:{}============",path);
try {
FileOutputStream fout = new FileOutputStream(path);
wb.write(fout);
fout.close();
LOGGER.info("删除道具0209,下载本地完成:{}============",path);
LOGGER.info("\"查询道具,下载本地完成:{}============",path);
} catch (IOException e) {
e.printStackTrace();
}finally {
LOGGER.info("Excel文件生成成功...");
LOGGER.error("查询道具报错:{}",e.getMessage(),e);
}
LOGGER.info("Excel文件生成成功...");
// 下载
// createExcelToDownload(path,response);
}

View File

@ -59,6 +59,7 @@ public class ItemDaoImpl implements ItemDao {
Query query = new Query();
query.addCriteria(Criteria.where("type").is(param.getType()));
query.addCriteria(Criteria.where("reason").is(param.getReason()));
query.addCriteria(Criteria.where("itemId").is(param.getItemId()));
query.addCriteria(Criteria.where("time").lte(String.valueOf(endTime)).gte(String.valueOf(startTime)));
return mongoTemplate.find(query, CItemInfo.class, collectionName);

View File

@ -40,6 +40,10 @@ public class HeFuManager {
private static final Map<Integer, Integer> hefuMap = new HashMap<>();
public static Map<Integer, Integer> getHefuMap(){
return hefuMap;
}
public static int getHefuServerId(int serverId) {
return hefuMap.getOrDefault(serverId, serverId);
}

View File

@ -8,6 +8,15 @@ public class CItemParam {
private int userId;
private int type;
private int reason;
private int itemId;
public int getItemId() {
return itemId;
}
public void setItemId(int itemId) {
this.itemId = itemId;
}
public String getStartTime() {
return startTime;