package com.xinyilu.system.service.apploginfo.impl;


import com.xinyilu.common.utils.SecurityUtils;
import com.xinyilu.system.domain.apploginfo.AppLogInfo;
import com.xinyilu.system.mapper.apploginfo.AppLogInfoMapper;
import com.xinyilu.system.service.apploginfo.IAppLogInfoService;
import org.springframework.stereotype.Service;

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

/**
 * 幼儿体测小程序登录记录信息Service业务层处理
 *
 * @author xinyilu
 * @date 2023-04-14
 */
@Service
public class AppLogInfoServiceImpl implements IAppLogInfoService {
    @Resource
    private AppLogInfoMapper appLogInfoMapper;

    /**
     * 查询幼儿体测小程序登录记录信息
     *
     * @param id 幼儿体测小程序登录记录信息主键
     * @return 幼儿体测小程序登录记录信息
     */
    @Override
    public AppLogInfo selectAppLogInfoById(Long id) {
        return appLogInfoMapper.selectAppLogInfoById(id);
    }

    /**
     * 查询幼儿体测小程序登录记录信息列表
     *
     * @param appLogInfo 幼儿体测小程序登录记录信息
     * @return 幼儿体测小程序登录记录信息
     */
    @Override
    public List<AppLogInfo> selectAppLogInfoList(AppLogInfo appLogInfo) {
        return appLogInfoMapper.selectAppLogInfoList(appLogInfo);
    }

    /**
     * 新增幼儿体测小程序登录记录信息
     *
     * @param appLogInfo 幼儿体测小程序登录记录信息
     * @return 结果
     */
    @Override
    public int insertAppLogInfo(AppLogInfo appLogInfo) {
        appLogInfo.setCreateTime(LocalDateTime.now());
        appLogInfo.setCreateBy(SecurityUtils.getUsername());
        return appLogInfoMapper.insertAppLogInfo(appLogInfo);
    }

    /**
     * 修改幼儿体测小程序登录记录信息
     *
     * @param appLogInfo 幼儿体测小程序登录记录信息
     * @return 结果
     */
    @Override
    public int updateAppLogInfo(AppLogInfo appLogInfo) {
        appLogInfo.setUpdateTime(LocalDateTime.now());
        appLogInfo.setUpdateBy(SecurityUtils.getUsername());
        return appLogInfoMapper.updateAppLogInfo(appLogInfo);
    }

    /**
     * 批量删除幼儿体测小程序登录记录信息
     *
     * @param ids 需要删除的幼儿体测小程序登录记录信息主键
     * @return 结果
     */
    @Override
    public int deleteAppLogInfoByIds(Long[] ids) {
        return appLogInfoMapper.deleteAppLogInfoByIds(ids);
    }

    /**
     * 删除幼儿体测小程序登录记录信息信息
     *
     * @param id 幼儿体测小程序登录记录信息主键
     * @return 结果
     */
    @Override
    public int deleteAppLogInfoById(Long id) {
        return appLogInfoMapper.deleteAppLogInfoById(id);
    }
}
