UsersFreeController.java 4.55 KB
package com.cnlive.shenhe.controller;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.cnlive.shenhe.bean.ErrorEnum;
import com.cnlive.shenhe.bean.ResponseBean;
import com.cnlive.shenhe.bean.SessionUser;
import com.cnlive.shenhe.dto.UsersFreeDTO;
import com.cnlive.shenhe.entity.ShySites;
import com.cnlive.shenhe.entity.ShyUsersfree;
import com.cnlive.shenhe.serviceImpl.SitesServiceImpl;
import com.cnlive.shenhe.serviceImpl.UsersfreeServiceImpl;
import com.cnlive.shenhe.utils.CommonConst;
import com.cnlive.shenhe.utils.CommonUtils;
import com.github.pagehelper.PageInfo;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.servlet.http.HttpSession;
import java.util.List;

/**
 * @author Administrator
 * @Auther: liwei
 * @Date: 2019/08/20 14:22
 * @Description:
 */
@Controller
@RequestMapping("/usersFree")
public class UsersFreeController extends BaseController {

	private static Logger logger = LoggerFactory.getLogger(UsersFreeController.class);


    @Autowired
    UsersfreeServiceImpl usersfreeService;
    @Autowired
    SitesServiceImpl sitesService;

    @GetMapping(value = "/page")
    public String wangjiajiaPage(Model model, UsersFreeDTO usersFreeDTO, HttpSession session) {
		logger.info("列表请求参数:{}", JSON.toJSONString(usersFreeDTO));
    	SessionUser sessionUser = (SessionUser) session.getAttribute(SessionUser.getSessionKey());
    	if(CommonUtils.isNull(sessionUser)){
    		return "redirect:/users/login";
    	}
    	Integer spid = sessionUser.getSpid();
    	usersFreeDTO.setSpid(spid);
    	if (!sessionUser.isMaster() && usersFreeDTO.getSpid() != 0) {
    		return "page/error.html";
    	}
    	if (spid == 0) {
			usersFreeDTO.setSpid(null);
		}
    	PageInfo<ShyUsersfree> usersPage = usersfreeService.getpage(usersFreeDTO);
    	List<ShyUsersfree> list = usersPage.getList();
    	JSONObject category = CommonConst.CATEGORY;
    	if (!list.isEmpty()) {
    		for (ShyUsersfree users : list) {
    			//显示spid简称
    			ShySites shySites = sitesService.findspidDescByspid(users.getSp_id());
    			if (CommonUtils.isNotNull(shySites)) {
    				users.setSp_desc(shySites.getName());
    			}
    			
    			//获取栏目名称
    			String category_name=users.getCategory();
    			if(CommonUtils.isNotEmpty(category_name)){
    				for (String bkey : category.keySet()) {
    					category_name = category_name.replace(bkey, category.getString(bkey));
                    }
    			}else{
    				category_name="无";
    			}
    			users.setCategory_name(category_name);
    			
    		}
    	}
    	model.addAttribute("usersPage", usersPage);
    	model.addAttribute("pageSize", usersFreeDTO.getPageSize());
    	model.addAttribute("category", category);
    	return "page/usersFree.html";
    }

    @PostMapping("/updateState")
    @ResponseBody
    public ResponseBean updateState(Integer id, Boolean isEnable, HttpSession session) {
        Integer n = usersfreeService.updateState(id, isEnable);
        if(n>0){
        	 return new ResponseBean(ErrorEnum.SUCCESS.getErrorCode(), "当前用户"+(isEnable==true?"启用":"禁用")+"成功");
        }
        return new ResponseBean(ErrorEnum.ERROR.getErrorCode(), "操作失败,请重试");
    }
    
    

    @PostMapping(value = "/write")
    public String write(Model model,String userId,String userMobile,Integer spId, String[] write_business, HttpSession session, String redirect_url) {
    	if(CommonUtils.isEmpty(userId)&&CommonUtils.isEmpty(userMobile)){
    		setmodelParam(model,"userId,userMobile不能为空!");
    		return "error.html";
    	}
    	SessionUser sessionUser = (SessionUser) session.getAttribute(SessionUser.getSessionKey());
        String write = "";
        if (CommonUtils.isNotNull(write_business) && write_business.length > 0) {
            for (String w : write_business) {
                write = write + "," + w;
            }
            write = write.substring(1);
        }
        boolean success = usersfreeService.update(userId,userMobile,write,spId,sessionUser.getUserId());
        if (success) {
            return "redirect:" + redirect_url;
        } else {
        	setmodelResult(model);
            return "error.html";
        }
    }

}