package com.goafanti.achievement.service.impl; import java.util.Calendar; import java.util.HashMap; import java.util.Map; import java.util.UUID; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.goafanti.achievement.bo.AchievementOrderListBo; import com.goafanti.achievement.service.AchievementOrderService; import com.goafanti.common.dao.AchievementOrderLogMapper; import com.goafanti.common.dao.AchievementOrderMapper; import com.goafanti.common.enums.AchievementOrderStatus; import com.goafanti.common.enums.DeleteStatus; import com.goafanti.common.model.AchievementOrder; import com.goafanti.common.model.AchievementOrderLog; import com.goafanti.core.mybatis.BaseMybatisDao; import com.goafanti.core.mybatis.page.Pagination; import com.goafanti.core.shiro.token.TokenManager; @Service public class AchievementOrderServiceImpl extends BaseMybatisDao implements AchievementOrderService { @Autowired private AchievementOrderMapper achievementOrderMapper; @Autowired private AchievementOrderLogMapper achievementOrderLogMapper; @Override public AchievementOrder selectAchievementOrderByUidAndAchievementId(String uid, String achievementId) { return achievementOrderMapper.selectAchievementOrderByUidAndAchievementId(uid, achievementId); } @Override public void saveAchievementOrder(AchievementOrder ao, AchievementOrderLog aol) { ao.setId(UUID.randomUUID().toString()); ao.setDeletedSign(DeleteStatus.UNDELETE.getCode()); Calendar now = Calendar.getInstance(); now.set(Calendar.MILLISECOND, 0); ao.setCreateTime(now.getTime()); ao.setStatus(AchievementOrderStatus.CREATE.getCode()); ao.setUid(TokenManager.getUserId()); achievementOrderMapper.insert(ao); aol.setId(UUID.randomUUID().toString()); aol.setAchievementOrderId(ao.getId()); aol.setRecordTime(ao.getCreateTime()); aol.setStatus(ao.getStatus()); achievementOrderLogMapper.insert(aol); } @SuppressWarnings("unchecked") @Override public Pagination listOrderList(Integer status, Integer pNo, Integer pSize) { Map params = new HashMap<>(); if (null != status) { params.put("status", status); } params.put("uid", TokenManager.getUserId()); if (pNo == null || pNo < 0) { pNo = 1; } if (pSize == null || pSize < 0 || pSize > 10) { pSize = 10; } return (Pagination) findPage("findAchievementOrderListByPage", "findAchievementOrderCount", params, pNo, pSize); } }