package com.xhkjedu.sapi.service.appversion;

import com.xhkjedu.sapi.listener.MessageSender;
import com.xhkjedu.sapi.mapper.appversion.AppStuliveMapper;
import com.xhkjedu.sapi.model.appversion.TAppStulive;
import com.xhkjedu.utils.N_Utils;
import com.xhkjedu.sapi.vo.appversion.AppversionVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

/**
 * @author ywx
 * @classname AppclientStuService
 * @description 
 * @date 2021/3/9 16:10
 **/
@Service
public class AppStuliveService {
    @Resource
    private AppStuliveMapper appStuliveMapper;
    @Autowired
    private MessageSender messageSender;

    //添加
    public Integer save(TAppStulive model) {
        model.setCreatetime(N_Utils.getSecondTimestamp());
        appStuliveMapper.insertUseGeneratedKeys(model);
        return model.getId();
    }

    //删除
    public Integer deleteById(Integer versionid) {
        List<String> resourceUrls = appStuliveMapper.listApppath(versionid);//获取APP文件
        Integer result = appStuliveMapper.deleteByPrimaryKey(versionid);
        if(N_Utils.isListNotEmpty(resourceUrls)){
            messageSender.resourceDel(resourceUrls);//给文件服务器发送mq删除文件
        }
        return result;
    }

    //修改
    public Integer update(TAppStulive model) {
        return appStuliveMapper.updateByPrimaryKeySelective(model);
    }

    //获取详情
    public TAppStulive findById(Integer versionid) {
        return appStuliveMapper.findById(versionid);
    }

    //获取列表
    public List <AppversionVo> listAll() {
        return appStuliveMapper.listAll();
    }

    /**
     * 获取最新app版本
     * @Param []
     * @Author ywx
     * @Date 2020/6/17 13:45
     * @return com.xhkjedu.model.appversion.TAppclientStu
     **/
    public TAppStulive getNew() {
        return appStuliveMapper.getNew();
    }
}
