admin
2018-12-25 4cb15e222cd7d099d533ccbeb7f9a8cd99bf180c
fanli/src/main/java/com/yeshi/fanli/util/factory/AccountDetailsFactory.java
@@ -1,5 +1,6 @@
package com.yeshi.fanli.util.factory;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.Map;
@@ -8,7 +9,10 @@
import com.yeshi.fanli.entity.bus.user.HongBao;
import com.yeshi.fanli.entity.bus.user.OrderItem;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.money.UserMoneyDetail;
import com.yeshi.fanli.entity.money.UserMoneyDetail.UserMoneyDetailTypeEnum;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.TimeUtil;
public class AccountDetailsFactory {
@@ -56,6 +60,7 @@
    */
   public static final int VALID_ALIPAY_ACCOUNT=10;
   
   public static final int XINREN_DEDUCT = 11;
   
   static{
      map.put(TIXIAN, "提现");
@@ -68,9 +73,11 @@
      map.put(SHARE_GOODS, "提成收入");
      map.put(SHARE_GOODS_DRAWBACK, "售后订单扣款");
      map.put(VALID_ALIPAY_ACCOUNT, "支付宝账号验证打款");
      map.put(XINREN_DEDUCT, "新人红包扣除");
   }
   
   public static AccountDetails create(String money,int type,OrderItem orderItem,Extract extract,UserInfo userInfo){
   public static AccountDetails create(String money, int type, OrderItem orderItem, Extract extract,
         UserInfo userInfo) {
      AccountDetails ad = new AccountDetails();
      ad.setCreateTime(TimeUtil.getWholeTime(System.currentTimeMillis()));
      ad.setExtract(extract);
@@ -95,5 +102,48 @@
      return null;
   }
   
   public static AccountDetails create(UserMoneyDetail userMoneyDetail) {
      AccountDetails accountDetails = new AccountDetails(userMoneyDetail.getId());
      accountDetails.setCreateTime(
            TimeUtil.getGernalTime(userMoneyDetail.getCreateTime().getTime(), "yyyy-MM-dd HH:mm:ss"));
      if (userMoneyDetail.getMoney().compareTo(new BigDecimal("0")) >= 0)
         accountDetails.setMoney("+" + MoneyBigDecimalUtil.getWithNoZera(userMoneyDetail.getMoney()));
      else
         accountDetails.setMoney( MoneyBigDecimalUtil.getWithNoZera(userMoneyDetail.getMoney()) + "");
      accountDetails.setState(userMoneyDetail.getState());
      String typeName = userMoneyDetail.getType().name();
      if (UserMoneyDetailTypeEnum.extract.name().equalsIgnoreCase(typeName))
         accountDetails.setType(TIXIAN);
      else if (UserMoneyDetailTypeEnum.extractReject.name().equalsIgnoreCase(typeName))
         accountDetails.setType(HUIKUAN);
      else if (UserMoneyDetailTypeEnum.extractVerify.name().equalsIgnoreCase(typeName))
         accountDetails.setType(VALID_ALIPAY_ACCOUNT);
      else if (UserMoneyDetailTypeEnum.fanli.name().equalsIgnoreCase(typeName))
         accountDetails.setType(AccountDetailsFactory.FANLI);
      else if (UserMoneyDetailTypeEnum.fanliWeiQuan.name().equalsIgnoreCase(typeName))
         accountDetails.setType(AccountDetailsFactory.TUIKUAN);
      else if (UserMoneyDetailTypeEnum.hongbao.name().equalsIgnoreCase(typeName))
         accountDetails.setType(AccountDetailsFactory.XINREN);
      else if (UserMoneyDetailTypeEnum.hongbaoDeduct.name().equalsIgnoreCase(typeName))
         accountDetails.setType(AccountDetailsFactory.XINREN_DEDUCT);
      else if (UserMoneyDetailTypeEnum.invite.name().equalsIgnoreCase(typeName))
         accountDetails.setType(AccountDetailsFactory.SHARE_GOODS);
      else if (UserMoneyDetailTypeEnum.inviteAndShare.name().equalsIgnoreCase(typeName))
         accountDetails.setType(AccountDetailsFactory.SHARE_GOODS);
      else if (UserMoneyDetailTypeEnum.inviteWeiQuan.name().equalsIgnoreCase(typeName))
         accountDetails.setType(AccountDetailsFactory.TUIKUAN);
      else if (UserMoneyDetailTypeEnum.share.name().equalsIgnoreCase(typeName))
         accountDetails.setType(AccountDetailsFactory.SHARE_GOODS);
      else if (UserMoneyDetailTypeEnum.shareWeiQuan.name().equalsIgnoreCase(typeName))
         accountDetails.setType(AccountDetailsFactory.TUIKUAN);
      else if (UserMoneyDetailTypeEnum.weiQuan.name().equalsIgnoreCase(typeName))
         accountDetails.setType(AccountDetailsFactory.TUIKUAN);
      else
         accountDetails.setType(AccountDetailsFactory.QITA);
      accountDetails.setTitle(map.get(accountDetails.getType()));
      accountDetails.setUserInfo(userMoneyDetail.getUserInfo());
      return accountDetails;
   }
   
}