package com.caimei.modules.supervip.service; import java.util.ArrayList; import java.util.Date; import java.util.List; import com.caimei.modules.supervip.dao.CmSvipHistoryDao; import com.caimei.modules.supervip.entity.CmSvipHistory; import com.caimei.modules.utils.DateUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.thinkgem.jeesite.common.persistence.Page; import com.thinkgem.jeesite.common.service.CrudService; /** * 超级会员Service * * @author zzj * @version 2021-09-27 */ @Service @Transactional(readOnly = true) public class CmSvipHistoryService extends CrudService { @Autowired private CmSvipHistoryDao svipDao; @Override public List findList(CmSvipHistory cmSvipHistory) { return super.findList(cmSvipHistory); } public List findHistoryform(CmSvipHistory cmSvipHistory) { Integer packageId = cmSvipHistory.getPackageId(); if (packageId != 99 && packageId !=666) { Integer aPackage = svipDao.findPackage(packageId); cmSvipHistory.setPackageId(aPackage); } else { cmSvipHistory.setPackageId(null); } List history = svipDao.findHistory(cmSvipHistory); //1生效2过期3未生效 for (CmSvipHistory svipHistory : history) { Integer packageID = svipHistory.getPackageId(); Integer duration=svipDao.findDuration(packageID); if(duration.equals(3)){ svipHistory.setPackageId(3); } if(duration.equals(1)){ svipHistory.setPackageId(1); } if(duration.equals(12)){ svipHistory.setPackageId(12); } Date beginTime = svipHistory.getBeginTime(); Date endTime = svipHistory.getEndTime(); //开始时间<现在 Date now = new Date(); if (beginTime.after(now)) { svipHistory.setStatus("3"); } if (beginTime.before(now) && endTime.after(now)) { svipHistory.setStatus("1"); } //终止时间>现在 if (endTime.before(now)) { svipHistory.setStatus("2"); } } return history; } @Override public Page findPage(Page page, CmSvipHistory vip) { Page pageReslut = super.findPage(page, vip); Integer packageId = vip.getPackageId(); if (packageId != 99 && packageId !=666) { Integer aPackage = svipDao.findPackage(packageId); vip.setPackageId(aPackage); }else { vip.setPackageId(null); } List cmSvipHistories = svipDao.superFind(vip); for (CmSvipHistory cmSvipHistory : cmSvipHistories) { CmSvipHistory vp = svipDao.findEndTime(cmSvipHistory.getUserId()); if (vp != null) { cmSvipHistory.setStatus("1"); } else { cmSvipHistory.setStatus("2"); } } pageReslut.setList(cmSvipHistories); return pageReslut; } }