package com.template.services.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.template.mapper.SmartUserMapper;
import com.template.model.dto.WarningUserDto;
import com.template.model.enumModel.eIdentityStatu;
import com.template.model.pojo.SmartUser;
import com.template.model.result.PageUtils;
import com.template.model.vo.*;
import com.template.services.SmartUserService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import java.util.List;
/**
*
* 服务实现类
*
*
* @author ceshi
* @since 2023-12-04
*/
@Service
public class SmartUserServiceImpl extends ServiceImpl implements SmartUserService {
@Autowired
private SmartUserMapper smartUserMapper;
@Override
public int insertSmartUser(SmartUser sa) {
int result = smartUserMapper.insert(sa);
return result;
}
@Override
public int updateSmartUser(SmartUser sa) {
int result = smartUserMapper.updateById(sa);
return result;
}
@Override
public PageUtils queryPageSmartUsers(int currentPage, int pageCount, List departmentIds) {
Page page = new Page<>(currentPage, pageCount);
// QueryWrapper queryWrapper = new QueryWrapper<>();
// queryWrapper.eq(departmentId > 0, "department_id", departmentId);
IPage result = smartUserMapper.selectPage(page, null);
return new PageUtils<>(result);
}
@Override
public PageUtils querySmartUserPages(int currentPage, int pageCount, List departmentIds, String name) {
Page page = new Page<>();
page.setCurrent(currentPage);
page.setSize(pageCount);
IPage result = smartUserMapper.querySmartUserPages(page, departmentIds, name);
return new PageUtils(result);
}
@Override
public PageUtils querySmartSecordPage(int currentPage, int pageCount, String name) {
Page page = new Page<>();
page.setCurrent(currentPage);
page.setSize(pageCount);
IPage result = smartUserMapper.querySmartSecordPage(page, name);
return new PageUtils(result);
}
@Override
public List querySmartUsers(List departmentIds, String name) {
List result = smartUserMapper.querySmartUsers(departmentIds, name);
return result;
}
@Override
public List getSmartUserByIds(List ids) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.in("id", ids);
queryWrapper.eq("is_cancel", 0);
List result = smartUserMapper.selectList(queryWrapper);
return result;
}
@Override
public List getSmartUserIds(List ids) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.in("id", ids);
queryWrapper.eq("is_cancel", 0);
List result = smartUserMapper.selectList(queryWrapper);
return result;
}
@Override
public int getSmartUserCountByIds(List ids) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.in("id", ids);
queryWrapper.eq("is_cancel", 0);
int result = smartUserMapper.selectCount(queryWrapper);
return result;
}
@Override
public boolean updateUserBatchById(List users) {
boolean result = this.updateBatchById(users);
return result;
}
@Override
public Integer querySmartUserByCardNo(String cardNo) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("card_no", cardNo);
queryWrapper.eq("is_cancel", 0);
int existCount = smartUserMapper.selectCount(queryWrapper);
return existCount;
}
@Override
public List queryStudentBySchoolClass(Integer schoolClass) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("school_class", schoolClass);
queryWrapper.eq("identity_id", eIdentityStatu.Student.getValue());
queryWrapper.eq("is_cancel", 0);
List result = smartUserMapper.selectList(queryWrapper);
return result;
}
@Override
public int deleteSmartUserById(int id) {
int result = smartUserMapper.deleteById(id);
return result;
}
@Override
public int deleteSmartUserByIds(List ids) {
int result = smartUserMapper.deleteBatchIds(ids);
return result;
}
@Override
public SmartUser getSmartById(Integer id) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("is_cancel", 0);
queryWrapper.eq("id", id);
SmartUser result = smartUserMapper.selectOne(queryWrapper);
return result;
}
@Override
public List queryAffiliateUserById(Integer id) {
List result = smartUserMapper.queryAffiliateUserById(id);
return result;
}
@Override
public List queryStudentDatas(){
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("is_cancel", 0);
queryWrapper.eq("identity_id", eIdentityStatu.Student.getValue());
List result = smartUserMapper.selectList(queryWrapper);
return result;
}
@Override
public PageUtils warningUserList(int currentPage, int pageCount, String name) {
Page page = new Page<>();
page.setCurrent(currentPage);
page.setSize(pageCount);
IPage result = smartUserMapper.warningUserList(page, name);
return new PageUtils(result);
}
@Override
public List warningPushList() {
return smartUserMapper.warningPushList();
}
@Override
public List queryAffiliateParents(Integer userId){
return smartUserMapper.queryAffiliateParents(userId);
}
@Override
public SmartUser queryUserInfo(String name, String cardNo, String idCard) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq(StringUtils.hasText(name),"name", name);
queryWrapper.eq(StringUtils.hasText(cardNo),"card_no", cardNo);
queryWrapper.eq(StringUtils.hasText(idCard),"id_card", idCard);
queryWrapper.eq("is_cancel", 0);
SmartUser result = smartUserMapper.selectOne(queryWrapper);
return result;
}
@Override
public List getSmartUserList(List ids) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("is_cancel", 0);
queryWrapper.in("id", ids);
List result = smartUserMapper.selectList(queryWrapper);
return result;
}
}