外校老师功能完善
This commit is contained in:
parent
8d45499e7b
commit
90fbda5e29
|
@ -1,18 +1,14 @@
|
||||||
package org.jeecg.modules.contoller;
|
package org.jeecg.modules.contoller;
|
||||||
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.jeecg.common.api.vo.Result;
|
import org.jeecg.common.api.vo.Result;
|
||||||
import org.jeecg.common.aspect.annotation.AutoLog;
|
import org.jeecg.common.aspect.annotation.AutoLog;
|
||||||
import org.jeecg.common.system.base.controller.JeecgController;
|
import org.jeecg.common.system.base.controller.JeecgController;
|
||||||
import org.jeecg.common.system.query.QueryGenerator;
|
|
||||||
import org.jeecg.modules.entity.CeesWaiTeacher;
|
import org.jeecg.modules.entity.CeesWaiTeacher;
|
||||||
import org.jeecg.modules.enums.MajorEnum;
|
|
||||||
import org.jeecg.modules.service.ICeesWaiTeacherService;
|
import org.jeecg.modules.service.ICeesWaiTeacherService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
@ -37,11 +33,37 @@ public class CeesWaiTeacherController extends JeecgController<CeesWaiTeacher, IC
|
||||||
private ICeesWaiTeacherService ceesWaiTeacherService;
|
private ICeesWaiTeacherService ceesWaiTeacherService;
|
||||||
|
|
||||||
|
|
||||||
@GetMapping("updataDormitory")
|
/**
|
||||||
public Result updataDormitory(@RequestParam String id, @RequestParam String dormitory){
|
* 分配宿舍
|
||||||
return ceesWaiTeacherService.updataDormitory(id,dormitory);
|
* @param id
|
||||||
|
* @param dormitory
|
||||||
|
* @return {@link Result }
|
||||||
|
*/
|
||||||
|
@GetMapping("updateDormitory")
|
||||||
|
public Result<?> updateDormitory(@RequestParam String id, @RequestParam String dormitory){
|
||||||
|
return ceesWaiTeacherService.updateDormitory(id,dormitory);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 取消确认报到
|
||||||
|
* @param id
|
||||||
|
* @return {@link Result }
|
||||||
|
*/
|
||||||
|
@GetMapping("/cancelCheckIn")
|
||||||
|
public Result<?> cancelCheckIn(@RequestParam String id){
|
||||||
|
return ceesWaiTeacherService.cancelCheckIn(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 确认报到
|
||||||
|
* @param id
|
||||||
|
* @return {@link Result }
|
||||||
|
*/
|
||||||
|
@GetMapping("/confirmCheckIn")
|
||||||
|
public Result<?> confirmCheckIn(@RequestParam String id){
|
||||||
|
return ceesWaiTeacherService.confirmCheckIn(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -60,11 +82,7 @@ public class CeesWaiTeacherController extends JeecgController<CeesWaiTeacher, IC
|
||||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||||
HttpServletRequest req) {
|
HttpServletRequest req) {
|
||||||
QueryWrapper<CeesWaiTeacher> queryWrapper = QueryGenerator.initQueryWrapper(ceesWaiTeacher, req.getParameterMap());
|
return Result.OK(ceesWaiTeacherService.queryPageList(ceesWaiTeacher,pageNo,pageSize,req));
|
||||||
Page<CeesWaiTeacher> page = new Page<CeesWaiTeacher>(pageNo, pageSize);
|
|
||||||
IPage<CeesWaiTeacher> pageList = ceesWaiTeacherService.page(page, queryWrapper);
|
|
||||||
pageList.convert(e->e.setMajorIdDescription(MajorEnum.describe(e.getMajorId())));
|
|
||||||
return Result.OK(pageList);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -125,7 +125,10 @@ public class CeesWaiTeacher implements Serializable {
|
||||||
/**宿舍信息*/
|
/**宿舍信息*/
|
||||||
@Excel(name = "宿舍信息", width = 15)
|
@Excel(name = "宿舍信息", width = 15)
|
||||||
@ApiModelProperty(value = "宿舍信息")
|
@ApiModelProperty(value = "宿舍信息")
|
||||||
private String dormitory;
|
private String dormitoryId;
|
||||||
|
@ApiModelProperty(value = "宿舍信息")
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String dormitoryName;
|
||||||
/**是否住宿*/
|
/**是否住宿*/
|
||||||
@Excel(name = "是否住宿", width = 15)
|
@Excel(name = "是否住宿", width = 15)
|
||||||
@ApiModelProperty(value = "是否住宿")
|
@ApiModelProperty(value = "是否住宿")
|
||||||
|
|
|
@ -1,9 +1,13 @@
|
||||||
package org.jeecg.modules.service;
|
package org.jeecg.modules.service;
|
||||||
|
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import org.jeecg.common.api.vo.Result;
|
import org.jeecg.common.api.vo.Result;
|
||||||
import org.jeecg.modules.entity.CeesWaiTeacher;
|
import org.jeecg.modules.entity.CeesWaiTeacher;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 外校老师管理
|
* @Description: 外校老师管理
|
||||||
|
@ -13,5 +17,14 @@ import org.jeecg.modules.entity.CeesWaiTeacher;
|
||||||
*/
|
*/
|
||||||
public interface ICeesWaiTeacherService extends IService<CeesWaiTeacher> {
|
public interface ICeesWaiTeacherService extends IService<CeesWaiTeacher> {
|
||||||
|
|
||||||
Result updataDormitory(String id, String dormitory);
|
Result updateDormitory(String id, String dormitory);
|
||||||
|
|
||||||
|
IPage<CeesWaiTeacher> queryPageList(CeesWaiTeacher ceesWaiTeacher,
|
||||||
|
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||||
|
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||||
|
HttpServletRequest req);
|
||||||
|
|
||||||
|
Result<?> cancelCheckIn(String id);
|
||||||
|
|
||||||
|
Result<?> confirmCheckIn(String id);
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,11 +9,9 @@ import org.jeecg.common.api.vo.Result;
|
||||||
import org.jeecg.modules.entity.CeesDormitoryInfo;
|
import org.jeecg.modules.entity.CeesDormitoryInfo;
|
||||||
import org.jeecg.modules.mapper.CeesDormitoryInfoMapper;
|
import org.jeecg.modules.mapper.CeesDormitoryInfoMapper;
|
||||||
import org.jeecg.modules.service.ICeesDormitoryInfoService;
|
import org.jeecg.modules.service.ICeesDormitoryInfoService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.lang.reflect.Array;
|
import javax.annotation.Resource;
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -25,7 +23,7 @@ import java.util.List;
|
||||||
@Service
|
@Service
|
||||||
public class CeesDormitoryInfoServiceImpl extends ServiceImpl<CeesDormitoryInfoMapper, CeesDormitoryInfo> implements ICeesDormitoryInfoService {
|
public class CeesDormitoryInfoServiceImpl extends ServiceImpl<CeesDormitoryInfoMapper, CeesDormitoryInfo> implements ICeesDormitoryInfoService {
|
||||||
|
|
||||||
@Autowired
|
@Resource
|
||||||
private CeesDormitoryInfoMapper ceesDormitoryInfoMapper;
|
private CeesDormitoryInfoMapper ceesDormitoryInfoMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -33,6 +31,7 @@ public class CeesDormitoryInfoServiceImpl extends ServiceImpl<CeesDormitoryInfoM
|
||||||
//todo: 未添加宿舍满员的情况和宿舍是否正常使用
|
//todo: 未添加宿舍满员的情况和宿舍是否正常使用
|
||||||
Integer type = Integer.parseInt(sex);
|
Integer type = Integer.parseInt(sex);
|
||||||
LambdaQueryWrapper<CeesDormitoryInfo> wrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<CeesDormitoryInfo> wrapper = new LambdaQueryWrapper<>();
|
||||||
|
wrapper.gt(CeesDormitoryInfo::getDormitoryNum, 0);
|
||||||
if (sex != null) {
|
if (sex != null) {
|
||||||
wrapper.eq(CeesDormitoryInfo::getDormitoryType, type);
|
wrapper.eq(CeesDormitoryInfo::getDormitoryType, type);
|
||||||
}
|
}
|
||||||
|
@ -40,6 +39,7 @@ public class CeesDormitoryInfoServiceImpl extends ServiceImpl<CeesDormitoryInfoM
|
||||||
JSONArray resultArray = new JSONArray();
|
JSONArray resultArray = new JSONArray();
|
||||||
for(CeesDormitoryInfo dorm :list){
|
for(CeesDormitoryInfo dorm :list){
|
||||||
JSONObject resultData = new JSONObject();
|
JSONObject resultData = new JSONObject();
|
||||||
|
resultData.put("id", dorm.getId());
|
||||||
resultData.put("sysOrgCode", dorm.getSysOrgCode());
|
resultData.put("sysOrgCode", dorm.getSysOrgCode());
|
||||||
resultData.put("dormitory", dorm.getDormitory());
|
resultData.put("dormitory", dorm.getDormitory());
|
||||||
resultData.put("dormitoryType", dorm.getDormitoryType());
|
resultData.put("dormitoryType", dorm.getDormitoryType());
|
||||||
|
|
|
@ -2,31 +2,117 @@ package org.jeecg.modules.service.impl;
|
||||||
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.jeecg.common.api.vo.Result;
|
import org.jeecg.common.api.vo.Result;
|
||||||
|
import org.jeecg.common.system.query.QueryGenerator;
|
||||||
|
import org.jeecg.modules.entity.CeesDormitoryInfo;
|
||||||
import org.jeecg.modules.entity.CeesWaiTeacher;
|
import org.jeecg.modules.entity.CeesWaiTeacher;
|
||||||
|
import org.jeecg.modules.enums.MajorEnum;
|
||||||
|
import org.jeecg.modules.mapper.CeesDormitoryInfoMapper;
|
||||||
import org.jeecg.modules.mapper.CeesWaiTeacherMapper;
|
import org.jeecg.modules.mapper.CeesWaiTeacherMapper;
|
||||||
import org.jeecg.modules.service.ICeesWaiTeacherService;
|
import org.jeecg.modules.service.ICeesWaiTeacherService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 外校老师管理
|
* @Description: 外校老师管理
|
||||||
* @Author: jeecg-boot
|
* @Author: jeecg-boot
|
||||||
* @Date: 2025-03-03
|
* @Date: 2025-03-03
|
||||||
* @Version: V1.0
|
* @Version: V1.0
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
|
@RequiredArgsConstructor
|
||||||
public class CeesWaiTeacherServiceImpl extends ServiceImpl<CeesWaiTeacherMapper, CeesWaiTeacher> implements ICeesWaiTeacherService {
|
public class CeesWaiTeacherServiceImpl extends ServiceImpl<CeesWaiTeacherMapper, CeesWaiTeacher> implements ICeesWaiTeacherService {
|
||||||
@Autowired
|
private final CeesWaiTeacherMapper ceesWaiTeacherMapper;
|
||||||
private CeesWaiTeacherMapper ceesWaiTeacherMapper;
|
private final CeesDormitoryInfoMapper ceesDormitoryInfoMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Result updataDormitory(String id, String dormitory) {
|
public Result updateDormitory(String id, String dormitoryId) {
|
||||||
LambdaQueryWrapper<CeesWaiTeacher> wrapper = new LambdaQueryWrapper();
|
LambdaQueryWrapper<CeesWaiTeacher> wrapper = new LambdaQueryWrapper();
|
||||||
wrapper.eq(CeesWaiTeacher::getUserId,id);
|
wrapper.eq(CeesWaiTeacher::getUserId, id);
|
||||||
CeesWaiTeacher ceesWaiTeacher = ceesWaiTeacherMapper.selectOne(wrapper);
|
CeesWaiTeacher ceesWaiTeacher = ceesWaiTeacherMapper.selectOne(wrapper);
|
||||||
ceesWaiTeacher.setDormitory(dormitory);
|
ceesWaiTeacher.setDormitoryId(dormitoryId);
|
||||||
int result = ceesWaiTeacherMapper.updateById(ceesWaiTeacher);
|
// 外校数据更新
|
||||||
|
int result = ceesWaiTeacherMapper.updateById(ceesWaiTeacher);
|
||||||
|
CeesDormitoryInfo ceesDormitoryInfo = null;
|
||||||
|
// 宿舍信息数据更新
|
||||||
|
if (result == 1 ) {
|
||||||
|
ceesDormitoryInfo = ceesDormitoryInfoMapper.selectById(dormitoryId);
|
||||||
|
if (ceesDormitoryInfo.getDormitoryNum() > 0) {
|
||||||
|
ceesDormitoryInfo.setDormitoryNum(ceesDormitoryInfo.getDormitoryNum() - 1);
|
||||||
|
ceesDormitoryInfoMapper.updateById(ceesDormitoryInfo);
|
||||||
|
} else {
|
||||||
|
return Result.error("宿舍人数已满");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 当宿舍人数为0,修改宿舍状态
|
||||||
|
if (ceesDormitoryInfo != null) {
|
||||||
|
if (ceesDormitoryInfo.getDormitoryNum() == 0) {
|
||||||
|
ceesDormitoryInfo.setDormitoryStatus(1);
|
||||||
|
ceesDormitoryInfoMapper.updateById(ceesDormitoryInfo);
|
||||||
|
}
|
||||||
|
}
|
||||||
return Result.ok("更新成功");
|
return Result.ok("更新成功");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param ceesWaiTeacher
|
||||||
|
* @param pageNo
|
||||||
|
* @param pageSize
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public IPage<CeesWaiTeacher> queryPageList(CeesWaiTeacher ceesWaiTeacher, Integer pageNo, Integer pageSize, HttpServletRequest req) {
|
||||||
|
QueryWrapper<CeesWaiTeacher> queryWrapper = QueryGenerator.initQueryWrapper(ceesWaiTeacher, req.getParameterMap());
|
||||||
|
Page<CeesWaiTeacher> page = new Page<>(pageNo, pageSize);
|
||||||
|
IPage<CeesWaiTeacher> pageList = page(page, queryWrapper);
|
||||||
|
Set<String> dormitoryIdList = pageList.getRecords().stream().map(CeesWaiTeacher::getDormitoryId).collect(Collectors.toSet());
|
||||||
|
LambdaQueryWrapper<CeesDormitoryInfo> dormitoryWrapper = Wrappers.lambdaQuery(CeesDormitoryInfo.class).in(CeesDormitoryInfo::getId, dormitoryIdList);
|
||||||
|
List<CeesDormitoryInfo> ceesDormitoryInfos = ceesDormitoryInfoMapper.selectList(dormitoryWrapper);
|
||||||
|
pageList.convert(e->{
|
||||||
|
e.setDormitoryName(ceesDormitoryInfos
|
||||||
|
.stream()
|
||||||
|
.filter(dormitoryInfo -> dormitoryInfo.getId().equals(e.getDormitoryId()))
|
||||||
|
.findFirst()
|
||||||
|
.orElse(new CeesDormitoryInfo())
|
||||||
|
.getDormitory());
|
||||||
|
e.setMajorIdDescription(MajorEnum.describe(e.getMajorId()));
|
||||||
|
return e;
|
||||||
|
});;
|
||||||
|
return pageList;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param id
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Result cancelCheckIn(String id) {
|
||||||
|
CeesWaiTeacher ceesWaiTeacher = ceesWaiTeacherMapper.selectById(id);
|
||||||
|
ceesWaiTeacher.setStatus(1);
|
||||||
|
ceesWaiTeacherMapper.updateById(ceesWaiTeacher);
|
||||||
|
return Result.ok("撤销成功");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param id
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Result<?> confirmCheckIn(String id) {
|
||||||
|
CeesWaiTeacher ceesWaiTeacher = ceesWaiTeacherMapper.selectById(id);
|
||||||
|
ceesWaiTeacher.setStatus(0);
|
||||||
|
ceesWaiTeacherMapper.updateById(ceesWaiTeacher);
|
||||||
|
return Result.ok("确认成功");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue