/* * Powered By zhangyunhua * Web Site: http://www.hehenian.com * Since 2008 - 2015 */ package com.hehenian.biz.service.loan.impl; import java.text.DecimalFormat; import java.util.List; import java.util.Map; import org.apache.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.hehenian.biz.common.base.dataobject.PageDo; import com.hehenian.biz.common.loan.ILoanRepaymentService; import com.hehenian.biz.common.loan.dataobject.LoanRepaymentDo; import com.hehenian.biz.common.util.CalculateUtils; import com.hehenian.biz.common.util.DateUtils; import com.hehenian.biz.component.loan.ILoanRepaymentComponent; /** * @author zhangyunhua * @version 1.0 * @since 1.0 */ @Service("loanRepaymentService") public class LoanRepaymentServiceImpl implements ILoanRepaymentService { @SuppressWarnings("unused") private final Logger logger = Logger.getLogger(this.getClass()); @Autowired private ILoanRepaymentComponent loanRepaymentComponent; /** * 根据ID 查询 * @parameter id */ public LoanRepaymentDo getById(Long repaymentId){ return loanRepaymentComponent.getById(repaymentId); } /** *根据条件查询列表 */ public List<LoanRepaymentDo> selectLoanRepayment(Map<String,Object> parameterMap){ return loanRepaymentComponent.selectLoanRepayment(parameterMap); } /** * 逾期、待还款、已还款、已还清 列表查询 * @param parameterMap * @return */ public List<Map<String,Object>> listRepayment(Map<String,Object> parameterMap){ DecimalFormat myformat = new DecimalFormat(); myformat.applyPattern("##,###.00"); List<Map<String,Object>> list =loanRepaymentComponent.listRepayment(parameterMap); if(list != null && list.size()>0){ for(Map<String,Object> map :list){ map.put("stillPrincipal", myformat.format(map.get("stillPrincipal")==null?0:map.get("stillPrincipal"))); map.put("applyAmount", myformat.format(map.get("applyAmount")==null?0:map.get("applyAmount"))); try { if(map.get("loanTime")!=null){ map.put("loanTime", DateUtils.formatDate(DateUtils.parseTime(map.get("loanTime").toString()))); } if(map.get("repayDate")!=null){ map.put("repayDate", DateUtils.formatDate(DateUtils.parseTime(map.get("repayDate").toString()))); } } catch (Exception e) { e.printStackTrace(); } } } return list; } public List<Map<String,Object>> getByLoanStatus (Map<String,Object> parameterMap){ DecimalFormat myformat = new DecimalFormat(); myformat.applyPattern("##,###.00"); List<Map<String,Object>> list =loanRepaymentComponent.getByLoanStatus(parameterMap); if(list != null && list.size()>0){ for(Map<String,Object> map :list){ map.put("applyAmount", myformat.format(map.get("applyAmount"))); try { map.put("loanTime", DateUtils.formatDate(DateUtils.parseTime(map.get("loanTime").toString()))); } catch (Exception e) { e.printStackTrace(); } } } return list; } public Map<String,Object> getRepayDetail(Map<String,Object> parameterMap){ Map<String,Object> map = loanRepaymentComponent.getRepayDetail(parameterMap); if(map != null){ DecimalFormat myformat = new DecimalFormat(); myformat.applyPattern("##,###.00"); try { Double yhbx = CalculateUtils.add(Double.valueOf(map.get("stillPrincipal").toString()), Double.valueOf(map.get("stillInterest").toString())); map.put("yhbx", myformat.format(yhbx)); Double yhzje = CalculateUtils.add(Double.valueOf(map.get("lateFI").toString()), CalculateUtils.add(Double.valueOf(map.get("stillPrincipal").toString()), Double.valueOf(map.get("stillInterest").toString()))); map.put("yhzje", myformat.format(yhzje)); map.put("repayDate", DateUtils.formatDate(DateUtils.parseTime(map.get("repayDate").toString()))); } catch (Exception e) { e.printStackTrace(); } } return map; } /** * 更新 */ public int updateLoanRepaymentById(LoanRepaymentDo newLoanRepaymentDo){ return loanRepaymentComponent.updateLoanRepaymentById(newLoanRepaymentDo); } /** * 新增 */ public int addLoanRepayment(LoanRepaymentDo newLoanRepaymentDo){ return loanRepaymentComponent.addLoanRepayment(newLoanRepaymentDo); } /** * 删除 */ public int deleteById(Long repaymentId){ return loanRepaymentComponent.deleteById(repaymentId); } @Override public List<LoanRepaymentDo> queryRepaymentByLoanId(Long loanId) { return loanRepaymentComponent.queryRepaymentByLoanId(loanId); } @Override public PageDo<Map<String, Object>> getLoanRepaymentList(Map<String, Object> searchItems, PageDo<Map<String, Object>> page) { searchItems.put("page", page); List<Map<String, Object>> list = loanRepaymentComponent.listRepaymentPage(searchItems); DecimalFormat myformat = new DecimalFormat(); myformat.applyPattern("##,###.00"); if(list != null && list.size()>0){ for(Map<String,Object> map :list){ map.put("stillPrincipal", myformat.format(map.get("stillPrincipal")==null?0:map.get("stillPrincipal"))); map.put("applyAmount", myformat.format(map.get("applyAmount")==null?0:map.get("applyAmount"))); try { if(map.get("loanTime")!=null){ map.put("loanTime", DateUtils.formatDate(DateUtils.parseTime(map.get("loanTime").toString()))); } if(map.get("repayDate")!=null){ map.put("repayDate", DateUtils.formatDate(DateUtils.parseTime(map.get("repayDate").toString()))); } } catch (Exception e) { e.printStackTrace(); } } } page.setPage(list); return page; } }