Browse Source

feat:[试验管理][饲养间]

master
HanLong 5 days ago
parent
commit
e2dad5e69a
19 changed files with 706 additions and 162 deletions
  1. +11
    -3
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/PublicController.java
  2. +49
    -9
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/StudyRoomController.java
  3. +0
    -45
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/domain/Species.java
  4. +15
    -15
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/domain/StudyRoom.java
  5. +84
    -0
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/domain/StudyRoomHistory.java
  6. +52
    -0
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/enums/study/StudyRoomStatusEnum.java
  7. +128
    -0
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/form/study/StudyRoomForm.java
  8. +49
    -0
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/form/study/StudyRoomHistorySearchForm.java
  9. +82
    -0
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/form/study/StudyRoomSearchForm.java
  10. +0
    -14
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/mapper/SpeciesMapper.java
  11. +14
    -0
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/mapper/StudyRoomHistoryMapper.java
  12. +0
    -23
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/ISpeciesService.java
  13. +33
    -0
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudyRoomHistoryService.java
  14. +21
    -2
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudyRoomService.java
  15. +0
    -34
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/SpeciesServiceImpl.java
  16. +66
    -0
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/StudyRoomHistoryServiceImpl.java
  17. +96
    -11
      hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/StudyRoomServiceImpl.java
  18. +1
    -1
      hxhq-modules/hxhq-system/src/main/resources/mapper/business/StudyRoomHistoryMapper.xml

+ 11
- 3
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/PublicController.java View File

@ -67,9 +67,17 @@ public class PublicController extends BaseController
* @return
*/
@GetMapping("/animalSpeciesList")
public AjaxResult getAnimalSpeciesList() {
List<AnimalSpecies> list = animalSpeciesService.list();
return success(list);
public AjaxResult getAnimalSpeciesList(String animalSpecies) {
if(StringUtils.isNotEmpty(animalSpecies)) {
LambdaQueryWrapper<AnimalSpecies> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(AnimalSpecies::getAnimalSpecies, animalSpecies);
List<AnimalSpecies> list = animalSpeciesService.list(queryWrapper);
return success(list);
} else {
List<AnimalSpecies> list = animalSpeciesService.list();
return success(list);
}
}
/**

+ 49
- 9
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/StudyRoomController.java View File

@ -3,8 +3,16 @@ package com.hxhq.business.controller;
import java.util.Arrays;
import java.util.List;
import com.hxhq.business.domain.StudyRoomHistory;
import com.hxhq.business.form.study.StudyRoomForm;
import com.hxhq.business.form.study.StudyRoomHistorySearchForm;
import com.hxhq.business.form.study.StudyRoomSearchForm;
import com.hxhq.business.service.IStudyRoomHistoryService;
import com.hxhq.common.core.utils.StringUtils;
import com.hxhq.common.security.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.hxhq.business.domain.StudyRoom;
import com.hxhq.business.service.IStudyRoomService;
@ -26,17 +34,29 @@ public class StudyRoomController extends BaseController
@Autowired
private IStudyRoomService studyRoomService;
@Autowired
private IStudyRoomHistoryService studyRoomHistoryService;
/**
* 查询试验-饲养间列表
*/
@GetMapping("/list")
public TableDataInfo list(StudyRoom studyRoom)
public TableDataInfo list(StudyRoomSearchForm form)
{
startPage();
List<StudyRoom> list = studyRoomService.queryList(form);
return getDataTable(list);
}
@GetMapping("/historyList")
public TableDataInfo historyList(StudyRoomHistorySearchForm form)
{
startPage();
List<StudyRoom> list = studyRoomService.queryList(studyRoom);
List<StudyRoomHistory> list = studyRoomHistoryService.queryList(form);
return getDataTable(list);
}
/**
* 获取试验-饲养间详细信息
*/
@ -50,17 +70,37 @@ public class StudyRoomController extends BaseController
* 新增试验-饲养间信息
*/
@PostMapping("/save")
public AjaxResult save(@RequestBody StudyRoom studyRoom)
public AjaxResult save(@RequestBody @Validated StudyRoomForm form)
{
return toAjax(studyRoomService.saveOrUpdate(studyRoom));
form.setQmrId(SecurityUtils.getUserId());
studyRoomService.add(form);
return AjaxResult.success("操作成功");
}
/**
* 删除试验-饲养间信息
* 更新笼具
* @return
*/
@PostMapping("/delete")
public AjaxResult delete(@RequestBody Long[] ids)
{
return toAjax(studyRoomService.removeByIds(Arrays.asList(ids)));
@PostMapping("/update")
public AjaxResult updateLj(@RequestBody StudyRoomForm form) {
form.setQmrId(SecurityUtils.getUserId());
studyRoomService.updateLj(form);
return AjaxResult.success("操作成功");
}
/**
* 结束
* @param form
* @return
*/
@PostMapping("/js")
public AjaxResult js(@RequestBody StudyRoomForm form) {
if(StringUtils.isEmpty(form.getJssyyl())) {
return error("请输入结束使用原因");
}
form.setQmrId(SecurityUtils.getUserId());
studyRoomService.js(form);
return AjaxResult.success("操作成功");
}
}

+ 0
- 45
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/domain/Species.java View File

@ -1,45 +0,0 @@
package com.hxhq.business.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import com.hxhq.common.core.domain.MpBaseEntity;
/**
* 动物种属对象 t_species
*
* @author hxhq
* @date 2025-12-29
*/
@TableName("t_species")
public class Species extends MpBaseEntity
{
private static final long serialVersionUID = 1L;
/** 笼具 */
private String lj;
/** 动物种属 */
private String ddzs;
public void setLj(String lj)
{
this.lj = lj;
}
public String getLj()
{
return lj;
}
public void setDdzs(String ddzs)
{
this.ddzs = ddzs;
}
public String getDdzs()
{
return ddzs;
}
}

+ 15
- 15
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/domain/StudyRoom.java View File

@ -30,14 +30,14 @@ public class StudyRoom extends MpBaseEntity
private String lj;
/** 动物种属 */
private String ddzs;
private String dwzs;
/** 开始使用时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date kssj;
/** 开始使用原因 */
private String kssyyy;
private String kssyyl;
/** 启用人id */
private Long qyrId;
@ -46,7 +46,7 @@ public class StudyRoom extends MpBaseEntity
private String qyrMc;
/** 结束使用原因 */
private String jssyyy;
private String jssyyl;
/** 结束人id */
private Long jsrId;
@ -102,14 +102,14 @@ public class StudyRoom extends MpBaseEntity
return lj;
}
public void setDdzs(String ddzs)
public void setDwzs(String dwzs)
{
this.ddzs = ddzs;
this.dwzs = dwzs;
}
public String getDdzs()
public String getDwzs()
{
return ddzs;
return dwzs;
}
public void setKssj(Date kssj)
@ -122,14 +122,14 @@ public class StudyRoom extends MpBaseEntity
return kssj;
}
public void setKssyyy(String kssyyy)
public void setKssyyl(String kssyyl)
{
this.kssyyy = kssyyy;
this.kssyyl = kssyyl;
}
public String getKssyyy()
public String getKssyyl()
{
return kssyyy;
return kssyyl;
}
public void setQyrId(Long qyrId)
@ -152,14 +152,14 @@ public class StudyRoom extends MpBaseEntity
return qyrMc;
}
public void setJssyyy(String jssyyy)
public void setJssyyl(String jssyyl)
{
this.jssyyy = jssyyy;
this.jssyyl = jssyyl;
}
public String getJssyyy()
public String getJssyyl()
{
return jssyyy;
return jssyyl;
}
public void setJsrId(Long jsrId)

+ 84
- 0
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/domain/StudyRoomHistory.java View File

@ -0,0 +1,84 @@
package com.hxhq.business.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import com.hxhq.common.core.domain.MpBaseEntity;
/**
* 试验-饲养间更换笼具记录对象 t_study_room_history
*
* @author HanLong
* @date 2026-01-07
*/
@TableName("t_study_room_history")
public class StudyRoomHistory extends MpBaseEntity
{
private static final long serialVersionUID = 1L;
/** 饲养间id */
private Long studyRoomId;
/** 更换前笼具 */
private String ljOld;
/** 更换后笼具 */
private String lj;
/** 启用人id */
private Long qyrId;
/** 启用人名称 */
private String qyrMc;
public void setStudyRoomId(Long studyRoomId)
{
this.studyRoomId = studyRoomId;
}
public Long getStudyRoomId()
{
return studyRoomId;
}
public void setLjOld(String ljOld)
{
this.ljOld = ljOld;
}
public String getLjOld()
{
return ljOld;
}
public void setLj(String lj)
{
this.lj = lj;
}
public String getLj()
{
return lj;
}
public void setQyrId(Long qyrId)
{
this.qyrId = qyrId;
}
public Long getQyrId()
{
return qyrId;
}
public void setQyrMc(String qyrMc)
{
this.qyrMc = qyrMc;
}
public String getQyrMc()
{
return qyrMc;
}
}

+ 52
- 0
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/enums/study/StudyRoomStatusEnum.java View File

@ -0,0 +1,52 @@
package com.hxhq.business.enums.study;
/**
* 饲养间状态 1使用中 3已结束
* @author tanfei
*/
public enum StudyRoomStatusEnum {
/**
* 1使用中
*/
syz(1, "使用中"),
/**
* 3已结束
*/
yjs(3, "已结束");
private int value;
private String text;
StudyRoomStatusEnum(int value, String text) {
this.value = value;
this.text = text;
}
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public static StudyRoomStatusEnum getEnumByValue(int type) {
for (StudyRoomStatusEnum bt : values()) {
if (bt.value == type) {
return bt;
}
}
return null;
}
}

+ 128
- 0
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/form/study/StudyRoomForm.java View File

@ -0,0 +1,128 @@
package com.hxhq.business.form.study;
import javax.validation.constraints.NotEmpty;
/**
* 饲养间
*/
public class StudyRoomForm {
/** 饲养间id */
private Long id;
/** 所属试验 */
private Long studyId;
/** 饲养间号 */
@NotEmpty(message = "请选择饲养间号")
private String syjh;
/** 试验区域 */
@NotEmpty(message = "请选择试验区域")
private String syqy;
/** 笼具 */
@NotEmpty(message = "请选择笼具")
private String lj;
/** 动物种属 */
@NotEmpty(message = "请选择动物种属")
private String dwzs;
/** 开始使用原因 */
@NotEmpty(message = "请输入开始使用原因")
private String kssyyl;
/**
* 签名人id
*/
private Long qmrId;
/**
* 签名密码
*/
private String qmrmm;
/** 结束使用原因 */
private String jssyyl;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Long getStudyId() {
return studyId;
}
public void setStudyId(Long studyId) {
this.studyId = studyId;
}
public String getSyjh() {
return syjh;
}
public void setSyjh(String syjh) {
this.syjh = syjh;
}
public String getSyqy() {
return syqy;
}
public void setSyqy(String syqy) {
this.syqy = syqy;
}
public String getLj() {
return lj;
}
public void setLj(String lj) {
this.lj = lj;
}
public String getDwzs() {
return dwzs;
}
public void setDwzs(String dwzs) {
this.dwzs = dwzs;
}
public String getKssyyl() {
return kssyyl;
}
public void setKssyyl(String kssyyl) {
this.kssyyl = kssyyl;
}
public Long getQmrId() {
return qmrId;
}
public void setQmrId(Long qmrId) {
this.qmrId = qmrId;
}
public String getQmrmm() {
return qmrmm;
}
public void setQmrmm(String qmrmm) {
this.qmrmm = qmrmm;
}
public String getJssyyl() {
return jssyyl;
}
public void setJssyyl(String jssyyl) {
this.jssyyl = jssyyl;
}
}

+ 49
- 0
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/form/study/StudyRoomHistorySearchForm.java View File

@ -0,0 +1,49 @@
package com.hxhq.business.form.study;
/**
* 饲养间更换笼具记录列表搜索参数
*/
public class StudyRoomHistorySearchForm {
/** 饲养间id */
private Long studyRoomId;
/** 更换人名称 */
private String qyrMc;
private String startDate;
private String endDate;
public Long getStudyRoomId() {
return studyRoomId;
}
public void setStudyRoomId(Long studyRoomId) {
this.studyRoomId = studyRoomId;
}
public String getQyrMc() {
return qyrMc;
}
public void setQyrMc(String qyrMc) {
this.qyrMc = qyrMc;
}
public String getStartDate() {
return startDate;
}
public void setStartDate(String startDate) {
this.startDate = startDate;
}
public String getEndDate() {
return endDate;
}
public void setEndDate(String endDate) {
this.endDate = endDate;
}
}

+ 82
- 0
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/form/study/StudyRoomSearchForm.java View File

@ -0,0 +1,82 @@
package com.hxhq.business.form.study;
/**
* 饲养间列表搜索参数
*/
public class StudyRoomSearchForm {
/** 所属试验 */
private Long studyId;
/** 饲养间号 */
private String syjh;
/** 试验区域 */
private String syqy;
/** 启用人名称 */
private String qyrMc;
/** 结束人名称 */
private String jsrMc;
private String startDate;
private String endDate;
public String getStartDate() {
return startDate;
}
public void setStartDate(String startDate) {
this.startDate = startDate;
}
public String getEndDate() {
return endDate;
}
public void setEndDate(String endDate) {
this.endDate = endDate;
}
public Long getStudyId() {
return studyId;
}
public void setStudyId(Long studyId) {
this.studyId = studyId;
}
public String getSyjh() {
return syjh;
}
public void setSyjh(String syjh) {
this.syjh = syjh;
}
public String getSyqy() {
return syqy;
}
public void setSyqy(String syqy) {
this.syqy = syqy;
}
public String getQyrMc() {
return qyrMc;
}
public void setQyrMc(String qyrMc) {
this.qyrMc = qyrMc;
}
public String getJsrMc() {
return jsrMc;
}
public void setJsrMc(String jsrMc) {
this.jsrMc = jsrMc;
}
}

+ 0
- 14
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/mapper/SpeciesMapper.java View File

@ -1,14 +0,0 @@
package com.hxhq.business.mapper;
import com.hxhq.business.domain.Species;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* 动物种属Mapper接口
*
* @author hxhq
* @date 2025-12-29
*/
public interface SpeciesMapper extends BaseMapper<Species>
{
}

+ 14
- 0
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/mapper/StudyRoomHistoryMapper.java View File

@ -0,0 +1,14 @@
package com.hxhq.business.mapper;
import com.hxhq.business.domain.StudyRoomHistory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* 试验-饲养间更换笼具记录Mapper接口
*
* @author HanLong
* @date 2026-01-07
*/
public interface StudyRoomHistoryMapper extends BaseMapper<StudyRoomHistory>
{
}

+ 0
- 23
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/ISpeciesService.java View File

@ -1,23 +0,0 @@
package com.hxhq.business.service;
import java.util.List;
import com.hxhq.business.domain.Species;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* 动物种属Service接口
*
* @author hxhq
* @date 2025-12-29
*/
public interface ISpeciesService extends IService<Species>
{
/**
* 查询动物种属列表
*
* @param species 动物种属
* @return 动物种属集合
*/
public List<Species> queryList(Species species);
}

+ 33
- 0
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudyRoomHistoryService.java View File

@ -0,0 +1,33 @@
package com.hxhq.business.service;
import java.util.List;
import com.hxhq.business.domain.StudyRoom;
import com.hxhq.business.domain.StudyRoomHistory;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hxhq.business.form.study.StudyRoomHistorySearchForm;
import com.hxhq.business.form.study.StudyRoomSearchForm;
import com.hxhq.system.api.domain.SysUser;
/**
* 试验-饲养间更换笼具记录Service接口
*
* @author HanLong
* @date 2026-01-07
*/
public interface IStudyRoomHistoryService extends IService<StudyRoomHistory>
{
/**
* 查询试验-饲养间更换笼具记录列表
*
* @param form 试验-饲养间更换笼具记录
* @return 试验-饲养间更换笼具记录集合
*/
public List<StudyRoomHistory> queryList(StudyRoomHistorySearchForm form);
/**
* 添加饲养间更换记录
* @param studyRoom
*/
void addStudyRoomHistory(StudyRoom studyRoom, String oldLj, SysUser ghr);
}

+ 21
- 2
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudyRoomService.java View File

@ -3,6 +3,8 @@ package com.hxhq.business.service;
import java.util.List;
import com.hxhq.business.domain.StudyRoom;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hxhq.business.form.study.StudyRoomForm;
import com.hxhq.business.form.study.StudyRoomSearchForm;
/**
* 试验-饲养间Service接口
@ -15,9 +17,26 @@ public interface IStudyRoomService extends IService
/**
* 查询试验-饲养间列表
*
* @param studyRoom 试验-饲养间
* @param form 试验-饲养间
* @return 试验-饲养间集合
*/
public List<StudyRoom> queryList(StudyRoom studyRoom);
public List<StudyRoom> queryList(StudyRoomSearchForm form);
/**
* 启用饲养间
* @param form
*/
public void add(StudyRoomForm form);
/**
* 更换笼具
* @param form
*/
void updateLj(StudyRoomForm form);
/**
* 结束使用
* @param form
*/
void js(StudyRoomForm form);
}

+ 0
- 34
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/SpeciesServiceImpl.java View File

@ -1,34 +0,0 @@
package com.hxhq.business.service.impl;
import java.util.List;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.springframework.stereotype.Service;
import com.hxhq.business.mapper.SpeciesMapper;
import com.hxhq.business.domain.Species;
import com.hxhq.business.service.ISpeciesService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* 动物种属Service业务层处理
*
* @author hxhq
* @date 2025-12-29
*/
@Service
public class SpeciesServiceImpl extends ServiceImpl<SpeciesMapper, Species> implements ISpeciesService
{
/**
* 查询动物种属列表
*
* @param species 动物种属
* @return 动物种属
*/
@Override
public List<Species> queryList(Species species)
{
QueryWrapper<Species> queryWrapper = Wrappers.query();
return this.list(queryWrapper);
}
}

+ 66
- 0
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/StudyRoomHistoryServiceImpl.java View File

@ -0,0 +1,66 @@
package com.hxhq.business.service.impl;
import java.util.List;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.hxhq.business.domain.StudyRoom;
import com.hxhq.business.form.study.StudyRoomHistorySearchForm;
import com.hxhq.business.form.study.StudyRoomSearchForm;
import com.hxhq.common.core.domain.MpBaseEntity;
import com.hxhq.system.api.domain.SysUser;
import org.springframework.stereotype.Service;
import com.hxhq.business.mapper.StudyRoomHistoryMapper;
import com.hxhq.business.domain.StudyRoomHistory;
import com.hxhq.business.service.IStudyRoomHistoryService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* 试验-饲养间更换笼具记录Service业务层处理
*
* @author HanLong
* @date 2026-01-07
*/
@Service
public class StudyRoomHistoryServiceImpl extends ServiceImpl<StudyRoomHistoryMapper, StudyRoomHistory> implements IStudyRoomHistoryService
{
/**
* 查询试验-饲养间更换笼具记录列表
*
* @param form 试验-饲养间更换笼具记录
* @return 试验-饲养间更换笼具记录
*/
@Override
public List<StudyRoomHistory> queryList(StudyRoomHistorySearchForm form)
{
LambdaQueryWrapper<StudyRoomHistory> queryWrapper = new LambdaQueryWrapper<>();
if(StringUtils.isNotEmpty(form.getQyrMc())) {
queryWrapper.like(StudyRoomHistory::getQyrMc, form.getQyrMc());
}
if(form.getStudyRoomId() != null) {
queryWrapper.eq(StudyRoomHistory::getStudyRoomId, form.getStudyRoomId());
}
if(StringUtils.isNotEmpty(form.getStartDate())) {
queryWrapper.ge(MpBaseEntity::getCreateTime, form.getStartDate());
}
if(StringUtils.isNotEmpty(form.getEndDate())) {
queryWrapper.le(MpBaseEntity::getCreateTime, form.getEndDate());
}
queryWrapper.orderByDesc(MpBaseEntity::getId);
return this.list(queryWrapper);
}
@Override
public void addStudyRoomHistory(StudyRoom studyRoom, String oldLj, SysUser ghr) {
StudyRoomHistory studyRoomHistory = new StudyRoomHistory();
studyRoomHistory.setStudyRoomId(studyRoom.getId());
studyRoomHistory.setLj(studyRoom.getLj());
studyRoomHistory.setLjOld(oldLj);
studyRoomHistory.setQyrId(ghr.getUserId());
studyRoomHistory.setQyrMc(ghr.getNickName());
this.save(studyRoomHistory);
}
}

+ 96
- 11
hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/StudyRoomServiceImpl.java View File

@ -1,8 +1,19 @@
package com.hxhq.business.service.impl;
import java.util.Date;
import java.util.List;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.hxhq.business.enums.study.StudyRoomStatusEnum;
import com.hxhq.business.form.study.StudyRoomForm;
import com.hxhq.business.form.study.StudyRoomSearchForm;
import com.hxhq.business.service.IStudyRoomHistoryService;
import com.hxhq.common.core.exception.ServiceException;
import com.hxhq.system.api.domain.SysUser;
import com.hxhq.system.service.ISysUserService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.hxhq.business.mapper.StudyRoomMapper;
import com.hxhq.business.domain.StudyRoom;
@ -18,17 +29,91 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@Service
public class StudyRoomServiceImpl extends ServiceImpl<StudyRoomMapper, StudyRoom> implements IStudyRoomService
{
/**
* 查询试验-饲养间列表
*
* @param studyRoom 试验-饲养间
* @return 试验-饲养间
*/
@Autowired
private IStudyRoomHistoryService studyRoomHistoryService;
@Autowired
private ISysUserService sysUserService;
@Override
public List<StudyRoom> queryList(StudyRoom studyRoom)
{
QueryWrapper<StudyRoom> queryWrapper = Wrappers.query();
public List<StudyRoom> queryList(StudyRoomSearchForm form) {
LambdaQueryWrapper<StudyRoom> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(StudyRoom::getStudyId, form.getStudyId());
if(StringUtils.isNotEmpty(form.getSyjh())) {
queryWrapper.eq(StudyRoom::getSyjh, form.getSyjh());
}
if(StringUtils.isNotEmpty(form.getSyqy())) {
queryWrapper.eq(StudyRoom::getSyqy, form.getSyqy());
}
if(StringUtils.isNotEmpty(form.getQyrMc())) {
queryWrapper.like(StudyRoom::getQyrMc, form.getQyrMc());
}
if(StringUtils.isNotEmpty(form.getJsrMc())) {
queryWrapper.like(StudyRoom::getJsrMc, form.getJsrMc());
}
if(StringUtils.isNotEmpty(form.getStartDate())) {
queryWrapper.ge(StudyRoom::getKssj, form.getStartDate());
}
if(StringUtils.isNotEmpty(form.getEndDate())) {
queryWrapper.le(StudyRoom::getKssj, form.getEndDate());
}
queryWrapper.orderByDesc(StudyRoom::getKssj);
return this.list(queryWrapper);
}
@Override
public void add(StudyRoomForm form) {
SysUser qmr = sysUserService.selectUserById(form.getQmrId());
// TODO
StudyRoom studyRoom = new StudyRoom();
BeanUtils.copyProperties(form, studyRoom);
studyRoom.setKssj(new Date());
studyRoom.setQyrId(qmr.getUserId());
studyRoom.setQyrMc(qmr.getNickName());
studyRoom.setZt(StudyRoomStatusEnum.syz.getValue());
this.save(studyRoom);
studyRoomHistoryService.addStudyRoomHistory(studyRoom, null, qmr);
}
@Override
public void updateLj(StudyRoomForm form) {
SysUser qmr = sysUserService.selectUserById(form.getQmrId());
// TODO
StudyRoom studyRoom = this.getById(form.getId());
if(studyRoom == null) {
throw new ServiceException("饲养间不存在或已删除");
}
if(studyRoom.getZt() != StudyRoomStatusEnum.syz.getValue()) {
throw new ServiceException("饲养间【" + studyRoom.getSyjh() + "】处于已结束状态,无法更换笼具");
}
String ljOld = studyRoom.getLj();
studyRoom.setLj(form.getLj());
this.updateById(studyRoom);
studyRoomHistoryService.addStudyRoomHistory(studyRoom, ljOld, qmr);
}
@Override
public void js(StudyRoomForm form) {
SysUser qmr = sysUserService.selectUserById(form.getQmrId());
// TODO
StudyRoom studyRoom = this.getById(form.getId());
if(studyRoom == null) {
throw new ServiceException("饲养间不存在或已删除");
}
if(studyRoom.getZt() != StudyRoomStatusEnum.syz.getValue()) {
throw new ServiceException("饲养间【" + studyRoom.getSyjh() + "】处于已结束状态,无法重复操作");
}
studyRoom.setZt(StudyRoomStatusEnum.yjs.getValue());
studyRoom.setJssyyl(form.getJssyyl());
studyRoom.setJsrId(qmr.getUserId());
studyRoom.setJsrMc(qmr.getNickName());
studyRoom.setJssj(new Date());
this.updateById(studyRoom);
}
}

hxhq-modules/hxhq-system/src/main/resources/mapper/business/SpeciesMapper.xml → hxhq-modules/hxhq-system/src/main/resources/mapper/business/StudyRoomHistoryMapper.xml View File

@ -2,5 +2,5 @@
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.hxhq.business.mapper.SpeciesMapper">
<mapper namespace="com.hxhq.business.mapper.StudyRoomHistoryMapper">
</mapper>

Loading…
Cancel
Save