yujian
2019-01-22 88b54772dbcf5ecab1e2316e4e4626ac901b8908
fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java
@@ -10,6 +10,7 @@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.UUID;
@@ -67,6 +68,7 @@
import com.yeshi.fanli.exception.taobao.TaoKeApiException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.exception.user.UserCustomSettingsException;
import com.yeshi.fanli.exception.user.UserInfoExtraException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.AdminUserService;
import com.yeshi.fanli.service.inter.config.ConfigService;
@@ -92,6 +94,7 @@
import com.yeshi.fanli.service.inter.user.UserAccountService;
import com.yeshi.fanli.service.inter.user.UserActiveLogService;
import com.yeshi.fanli.service.inter.user.UserCustomSettingsService;
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.service.inter.user.UserMoneyDetailService;
import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService;
@@ -113,6 +116,7 @@
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.util.wx.WXLoginUtil;
import com.yeshi.fanli.vo.user.UserInfoExtraVO;
import com.yeshi.fanli.vo.user.UserSettingsVO;
import net.sf.json.JSONArray;
@@ -208,6 +212,9 @@
   
   @Resource
   private UserCustomSettingsService userCustomSettingsService;
   @Resource
   private UserInfoExtraService userInfoExtraService;
   
   private static final String PASSWORD_MAX_ERROR = "password_max_error";
@@ -1982,12 +1989,11 @@
    *  设置界面开关状态
    * @param acceptData
    * @param uid
    * @param type  1-通知免打扰(20:00-8:00)  2-不看消息红点提醒  3-不看奖金统计 不看邀请拿奖金 4-不看分享记录和选品库  不看消息红点提醒
    * @param state   0关闭  1开启
    * @param params
    * @param out
    */
   @RequestMapping(value = "setModuleState", method = RequestMethod.POST)
   public void setModuleState(AcceptData acceptData, Long uid, Integer type, Integer state, PrintWriter out) {
   public void setModuleState(AcceptData acceptData, Long uid, String params, PrintWriter out) {
      if (uid == null) {
         out.print(JsonUtil.loadFalseResult("用户未登录"));
@@ -1995,8 +2001,20 @@
      }
      
      try {
         userCustomSettingsService.saveModuleState(uid, type, state);
         if (params == null || params.trim().length() == 0) {
            out.print(JsonUtil.loadFalseResult("传递参数为空"));
            return;
         }
         JSONObject json = JSONObject.fromObject(params);
           Iterator<String> iterator = json.keys();
         while(iterator.hasNext()){
               String type = (String) iterator.next();
               int state = json.getInt(type);
               userCustomSettingsService.saveModuleState(uid, type, state);
         }
         out.print(JsonUtil.loadTrueResult("设置成功"));
      } catch (UserCustomSettingsException e) {
         out.print(JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
@@ -2005,5 +2023,82 @@
      }
   }
   /**
    *  获取等级信息
    * @param acceptData
    * @param uid
    * @param out
    */
   @RequestMapping(value = "getRankInfo", method = RequestMethod.POST)
   public void getRankInfo(AcceptData acceptData, Long uid, PrintWriter out) {
      if (uid == null) {
         out.print(JsonUtil.loadFalseResult("用户未登录"));
         return;
      }
      try {
         UserInfoExtraVO rankInfo = userInfoExtraService.getRankInfo(uid);
         GsonBuilder gsonBuilder = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder());
         gsonBuilder.excludeFieldsWithoutExposeAnnotation();
         Gson gson = gsonBuilder.setDateFormat("yyyy.MM.dd").create();
         JSONObject resultData = new JSONObject();
         resultData.put("rankInfo", gson.toJson(rankInfo));
         out.print(JsonUtil.loadTrueResult(resultData));
      } catch (UserInfoExtraException e) {
         out.print(JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         out.print(JsonUtil.loadFalseResult("获取失败"));
         e.printStackTrace();
      }
   }
   /**
    *  获取等级信息
    * @param acceptData
    * @param uid
    * @param out
    */
   @RequestMapping(value = "getUserConfig", method = RequestMethod.POST)
   public void getUserConfig(AcceptData acceptData, Long uid, PrintWriter out) {
      if (uid == null) {
         out.print(JsonUtil.loadFalseResult("用户未登录"));
         return;
      }
      try {
         String inviteCode = userInfoExtraService.getUserInviteCode(uid);
         JSONObject inviteData = new JSONObject();
         if (inviteCode == null || inviteCode.trim().length() == 0) {
            // 无邀请码
            inviteData.put("content", "邀请激活");
            inviteData.put("link", configService.get("invite_activation_url"));
         } else {
            // 已有邀请码
            inviteData.put("content", "邀请码");
            inviteData.put("link", configService.get("invite_activation_success_url"));
         }
         JSONObject data = new JSONObject();
         data.put("invite", inviteData);
         out.print(JsonUtil.loadTrueResult(data));
      } catch (UserInfoExtraException e) {
         out.print(JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         out.print(JsonUtil.loadFalseResult("获取失败"));
         e.printStackTrace();
      }
   }
}