StStateJiluForAdmin
package org.jeecg.modules.demo.st.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
@Data
public class StStateJiluForAdmin implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "学生姓名")
@Excel(name = "学生姓名", width = 15)
private String stuIds;
@ApiModelProperty(value = "原因")
@Excel(name = "原因", width = 15)
private String theReason;
@ApiModelProperty(value = "离校时间")
@Excel(name = "离校时间", width = 20, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date departureTime;
@ApiModelProperty(value = "审批人")
@Excel(name = "审批人", width = 15)
private String approver;
@ApiModelProperty(value = "归校时间")
@Excel(name = "归校时间", width = 20, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date backTime;
@ApiModelProperty(value = "确认人")
@Excel(name = "确认人", width = 15)
private String confirmor;
@ApiModelProperty(value = "确认时间")
@Excel(name = "确认时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date confirmTime;
@Excel(name = "额外字段1", width = 15)
private String fieldOne;
}
@AutoLog(value = "更新学生状态")
@ApiOperation(value="更新学生状态", notes="更新学生状态")
@PostMapping(value = "/updateStatus")
public Result<?> updateStatus(@RequestBody StStateJiluForAdmin stStateJiluForAdmin) {
String ids=stStateJiluForAdmin.getStuIds();
List<StStateJiluForAdmin> getStStateIf = stStudentService.getStatus(ids);
boolean ok=false;
if(getStStateIf.size()>0){
System.out.println("你选择的里面有离校状态,请注意筛选");
}else {
QueryWrapper<StStudent> stStudentWrapper = new QueryWrapper<>();
StStudent stStudent = new StStudent();
stStudentWrapper.in("id", ids.split(","));
String[] split = ids.split(",");
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
for (int i = 0; i < split.length; i++) {
StStateJilu stStateJilu1 = new StStateJilu();
stStudent.setStatus(stStateJiluForAdmin.getTheReason());
stStateJilu1.setTheReason(stStateJiluForAdmin.getTheReason());
stStateJilu1.setStName(split[i]);
stStateJilu1.setCollege(iSysBaseAPI.getDepartIdsByOrgCode(sysUser.getOrgCode()));
stStateJilu1.setDepartureTime(stStateJiluForAdmin.getDepartureTime());
stStateJilu1.setApprover(stStateJiluForAdmin.getApprover());
stStateJilu1.setBackTime(stStateJiluForAdmin.getBackTime());
stStateJilu1.setConfirmor(stStateJiluForAdmin.getConfirmor());
stStateJilu1.setConfirmTime(stStateJiluForAdmin.getConfirmTime());
stStateJilu1.setFieldOne(stStateJiluForAdmin.getFieldOne());
stStateJiluService.save(stStateJilu1);
}
ok = stStudentService.update(stStudent, stStudentWrapper);
}
Result result = new Result();
result.setResult(ok);
result.setSuccess(ok);
result.setMessage(ok ? "操作成功" : "操作失败!请检查您的参数!");
return result;
}
拿到不在校的人
List<StStateJiluForAdmin> getStatus(String ids);
@Override
public List<StStateJiluForAdmin> getStatus(String ids) {
List<StStateJiluForAdmin> getStatuss= stStudentMapper.getStatus(ids.split(","));
return getStatuss;
}
List<StStateJiluForAdmin> getStatus(@Param("ids") String[] ids);
<select id="getStatus" parameterType="String" resultType="org.jeecg.modules.demo.st.vo.StStateJiluForAdmin">
SELECT
id
FROM
st_student
WHERE
`status` > '1'
AND
id in
<foreach item="key" collection="ids" open="(" separator="," close=")">
#{key}
</foreach>
</select>