71101d8b695d1441d9fd753beab8c51a697ec56e
[epayment/food_payapi.git] /
1 package com.supwisdom.dlpay.citizencard.service.impl;
2
3 import com.supwisdom.dlpay.api.dao.CardDao;
4 import com.supwisdom.dlpay.api.domain.TCard;
5 import com.supwisdom.dlpay.citizencard.dao.CitizencardLossApplyDao;
6 import com.supwisdom.dlpay.citizencard.domain.TCitizencardLossApply;
7 import com.supwisdom.dlpay.citizencard.service.CitizencardManagerService;
8 import com.supwisdom.dlpay.framework.service.SystemUtilService;
9 import com.supwisdom.dlpay.framework.util.StringUtil;
10 import com.supwisdom.dlpay.framework.util.TradeDict;
11 import com.supwisdom.dlpay.util.ConstantUtil;
12 import org.springframework.beans.factory.annotation.Autowired;
13 import org.springframework.stereotype.Service;
14
15 import java.util.ArrayList;
16 import java.util.List;
17
18 @Service
19 public class CitizencardManagerServiceImpl implements CitizencardManagerService {
20   @Autowired
21   private CitizencardLossApplyDao citizencardLossApplyDao;
22   @Autowired
23   private CardDao cardDao;
24   @Autowired
25   private SystemUtilService systemUtilService;
26
27   @Override
28   public List<TCitizencardLossApply> getNewApplyCitizencardLossRecords() {
29     List<TCitizencardLossApply> list = citizencardLossApplyDao.findCardlossApplyRecordsByStatus(ConstantUtil.CITIZENCARD_LOSSAPPLY_STATUS_APPLY);
30     if (null != list) {
31       return list;
32     }
33     return new ArrayList<>(0);
34   }
35
36   @Override
37   public TCitizencardLossApply getCitizencardLossApply(String refno) {
38     if(!StringUtil.isEmpty(refno)){
39       return citizencardLossApplyDao.getByRefno(refno.trim());
40     }
41     return null;
42   }
43
44   @Override
45   public TCitizencardLossApply saveOrUpdateCitizencardLossApply(TCitizencardLossApply lossApply) {
46     return citizencardLossApplyDao.save(lossApply);
47   }
48
49   @Override
50   public TCitizencardLossApply doFinishCitizencardLoss(TCitizencardLossApply lossApply) {
51     if (ConstantUtil.CITIZENCARD_LOSSAPPLY_STATUS_SUCCESS.equals(lossApply)) {
52       TCard cityCard = cardDao.findCardByCardnoAndCardtype(lossApply.getCardno(), ConstantUtil.CARDTYPE_CITIZENCARD);
53       if (null != cityCard && !TradeDict.STATUS_LOST.equals(cityCard.getTransStatus())) {
54         cityCard.setTransStatus(TradeDict.STATUS_LOST);
55         cityCard.setLastsaved(systemUtilService.getSysdatetime().getHostdatetime());
56         cardDao.save(cityCard);
57       }
58     }
59     return citizencardLossApplyDao.save(lossApply);
60   }
61 }