AudioController.java 5.12 KB
package com.cnlive.shenhe.controller;

import com.cnlive.shenhe.bean.SessionUser;
import com.cnlive.shenhe.entity.ShyAudio;
import com.cnlive.shenhe.entity.ShySites;
import com.cnlive.shenhe.entity.ShyUsers;
import com.cnlive.shenhe.serviceImpl.AudioServiceImpl;
import com.cnlive.shenhe.serviceImpl.SitesServiceImpl;
import com.cnlive.shenhe.serviceImpl.UsersServiceImpl;
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.RequestMapping;

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

/**
 * @Author: xujincheng
 * @Date: 2020/6/9 9:35
 */
@Controller
@RequestMapping("/audio")
public class AudioController extends BaseController {

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

    @Autowired
    SitesServiceImpl sitesService;

    @Autowired
    AudioServiceImpl audioService;

    @Autowired
    UsersServiceImpl usersService;

    /**
     * 音频数据分页获取
     *
     * @param model
     * @param video_title
     * @param start_date
     * @param end_date
     * @param state
     * @param receive
     * @param page
     * @param pageSize
     * @param video_priority
     * @param orderByClause
     * @param sp_desc
     * @param sp_Id
     * @param session
     * @return
     */
    @GetMapping("/page")
    public Object getListVideos(Model model, String video_title, String start_date, String end_date, Integer state, Integer receive, Integer page, Integer pageSize, String video_priority, String orderByClause, String sp_desc, String sp_Id, HttpSession session) {
        SessionUser sessionUser = (SessionUser) session.getAttribute(SessionUser.getSessionKey());
        if (CommonUtils.isNull(sessionUser)) {
            return "redirect:/users/login";
        }
        Integer spid = sessionUser.getSpid();
        logger.info("sp_Id:{},spid:{}", sp_Id, spid);
        String userId = sessionUser.getUserId();
        if (CommonUtils.isNull(page)) page = 1;
        if (CommonUtils.isNull(pageSize)) pageSize = 10;
        if (CommonUtils.isNotEmpty(sp_desc) && spid == 0) {
            ShySites shySite = sitesService.findspidBySpdesc(sp_desc);
            if (CommonUtils.isNotNull(shySite)) {
                spid = shySite.getSpid();
            } else {
                setmodel_site(model);
                return "error.html";
            }
        } else if (CommonUtils.isEmpty(sp_desc) && spid == 0) {
            spid = null;
        }

        PageInfo<ShyAudio> audioPage = audioService.getListContent(video_title, start_date, end_date, state, receive, page, pageSize, video_priority, orderByClause, spid, userId, sp_Id);
        if (audioPage != null && audioPage.getSize() > 0) {
            List<ShyAudio> list = audioPage.getList();
            if (list != null && list.size() > 0) {
                for (ShyAudio shyAudio : list) {
                    //审核状态 0-未审核 1-已审核 2-拒绝
                    //已审+已拒绝
                    if (CommonConst.AUDIT_INTT.equals(shyAudio.getState())) {
                        String updater = CommonUtils.isEmpty(shyAudio.getUploader()) ? "白名单" : shyAudio.getUploader();
                        String audioId = shyAudio.getAudioId();
                        if (CommonUtils.isNotEmpty(audioId)) {
                            ShyUsers user = new ShyUsers();
                            user.setUser_id(audioId);
                            user = usersService.select(user);
                            if (CommonUtils.isNotNull(user)) {
                                String email = CommonUtils.isEmpty(user.getEmail()) ? "" : user.getEmail();
                                String userName = CommonUtils.isEmpty(user.getUsername()) ? email : user.getUsername();
                                updater = userName;
                            }
                        }
                        shyAudio.setUploader(updater);
                    }
                    //显示spid简称
                    ShySites shySites = sitesService.findspidDescByspid(shyAudio.getSpId());
                    if (CommonUtils.isNotNull(shySites)) {
                        shyAudio.setSpid_desc(shySites.getName());
                    }
                }
            }
        }

        //获取参数值给前台 用来判断是否需要把查看显示出来 state recive
        String state1 = state == null ? "" : state.toString();
        String receive1 = "";
        if (CommonUtils.isNotNull(receive)) {
            receive1 = receive == CommonConst.RECEIVE_AFTER ? "true" : "false";
        } else {
            receive1 = "";
        }
        model.addAttribute("state1", state1);
        model.addAttribute("receive1", receive1);
        model.addAttribute("pageSize", pageSize);
        model.addAttribute("audioPage", audioPage);
        return "page/audio.html";
    }

}