105 lines
3.2 KiB
Java
105 lines
3.2 KiB
Java
package com.yutou.tools.services;
|
|
|
|
import com.alibaba.fastjson2.JSONObject;
|
|
import com.yutou.tools.mybatis.dao.BangumiItemDao;
|
|
import com.yutou.tools.mybatis.dao.BangumiListDao;
|
|
import com.yutou.tools.mybatis.model.BangumiItem;
|
|
import com.yutou.tools.mybatis.model.BangumiItemExample;
|
|
import com.yutou.tools.mybatis.model.BangumiList;
|
|
import com.yutou.tools.mybatis.model.BangumiListExample;
|
|
import com.yutou.tools.services.interfaces.BangumiService;
|
|
import com.yutou.tools.utils.BangumiTools;
|
|
import com.yutou.tools.utils.RedisTools;
|
|
import com.yutou.tools.utils.Tools;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
import javax.annotation.Resource;
|
|
import java.util.List;
|
|
|
|
@Service("BangumiService")
|
|
public class BangumiServiceImpl implements BangumiService {
|
|
@Resource
|
|
BangumiListDao listDao;
|
|
@Resource
|
|
BangumiItemDao itemDao;
|
|
|
|
@Override
|
|
public int addBangumiList(BangumiList... list) {
|
|
for (BangumiList bangumiList : list) {
|
|
if (listDao.insert(bangumiList) <= 0) {
|
|
return 0;
|
|
}
|
|
}
|
|
return 1;
|
|
}
|
|
|
|
@Override
|
|
public int addBangumiItem(BangumiItem... list) {
|
|
for (BangumiItem item : list) {
|
|
if (itemDao.insert(item) <= 0) {
|
|
return 0;
|
|
}
|
|
}
|
|
return 1;
|
|
}
|
|
|
|
@Override
|
|
public int updateBangumiItem(BangumiItem item) {
|
|
return itemDao.updateByPrimaryKey(item);
|
|
}
|
|
|
|
@Override
|
|
public int removeBangumiItem(int id) {
|
|
return itemDao.deleteByPrimaryKey(id);
|
|
}
|
|
|
|
@Override
|
|
public int removeBangumiType(int id) {
|
|
BangumiItemExample example = new BangumiItemExample();
|
|
example.createCriteria().andBidEqualTo(id + "");
|
|
itemDao.deleteByExample(example);
|
|
return listDao.deleteByPrimaryKey(id);
|
|
}
|
|
|
|
@Override
|
|
public BangumiItem getBangumiItem(int id) {
|
|
return itemDao.selectByPrimaryKey(id);
|
|
}
|
|
|
|
@Override
|
|
public List<BangumiItem> getBangumiItemList(String type) {
|
|
BangumiItemExample example = new BangumiItemExample();
|
|
example.createCriteria().andBidEqualTo(type);
|
|
List<BangumiItem> items = itemDao.selectByExample(example);
|
|
for (BangumiItem item : items) {
|
|
if(item.getEnable()==0||item.getBgmid()==0){
|
|
continue;
|
|
}
|
|
String tmp=RedisTools.get(item.getBgmid()+"",1);
|
|
JSONObject bangumi= tmp==null?BangumiTools.getBangumiInfoSmall(item.getBgmid()):JSONObject.parseObject(tmp);
|
|
RedisTools.set(1,2592000,item.getBgmid()+"",bangumi.toJSONString());
|
|
if(bangumi.containsKey("code")&&bangumi.getInteger("code")==404){
|
|
continue;
|
|
}
|
|
int day=Tools.getWeekDay();
|
|
if (day == 0) {
|
|
day = 7;
|
|
}
|
|
if(bangumi.getInteger("air_weekday")==day) {
|
|
item.setUpdate(true);
|
|
}
|
|
}
|
|
return items;
|
|
}
|
|
|
|
@Override
|
|
public List<BangumiItem> getAllBangumiItemList() {
|
|
return itemDao.selectByExample(new BangumiItemExample());
|
|
}
|
|
|
|
@Override
|
|
public List<BangumiList> getAllBangumiList() {
|
|
return listDao.selectByExample(new BangumiListExample());
|
|
}
|
|
}
|