Commit 732cec16 by huangtao

签名

parent a72240d7
Showing with 1404 additions and 62 deletions
...@@ -13,9 +13,9 @@ infynova: ...@@ -13,9 +13,9 @@ infynova:
# 本地存储 # 本地存储
local: local:
# 本地存储路径 # 本地存储路径
basePath: /data/infyos/file basePath: /data/jmai/file
# 后端下载地址 # 后端下载地址
downloadUrl: http://${serverAddress}:37098/api/oss/downloadFile downloadUrl: http://${serverAddress}:38098/api/oss/downloadFile
# # ######################## # # ########################
# # IVS # # IVS
......
...@@ -4,7 +4,10 @@ package com.jmai.physic.controller; ...@@ -4,7 +4,10 @@ package com.jmai.physic.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicAmpouleCreateReq; import com.jmai.physic.dto.PhysicAmpouleCreateReq;
import com.jmai.physic.dto.PhysicAmpouleQueryReq; import com.jmai.physic.dto.PhysicAmpouleQueryReq;
import com.jmai.physic.dto.PhysicAmpouleSignReq;
import com.jmai.physic.dto.PhysicStorageAmpouleSignReq;
import com.jmai.physic.entity.PhysicAmpoule; import com.jmai.physic.entity.PhysicAmpoule;
import com.jmai.physic.entity.PhysicStorageAmpoule;
import com.jmai.physic.service.PhysicAmpouleService; import com.jmai.physic.service.PhysicAmpouleService;
import com.jmai.physic.vo.PhysicAmpouleUseVO; import com.jmai.physic.vo.PhysicAmpouleUseVO;
import com.jmai.sys.aop.Auth; import com.jmai.sys.aop.Auth;
...@@ -25,7 +28,7 @@ import java.util.List; ...@@ -25,7 +28,7 @@ import java.util.List;
@Auth @Auth
@RestController @RestController
@RequestMapping("/physicAmpoule") @RequestMapping("/physicAmpoule")
@Api(tags = "药品专用登记-药室") @Api(tags = "药品空安瓿登记-药室")
@ApiImplicitParams({@ApiImplicitParam(paramType = "header", name = "Access-Token", value = "凭证", required = true, dataType = "string")}) @ApiImplicitParams({@ApiImplicitParam(paramType = "header", name = "Access-Token", value = "凭证", required = true, dataType = "string")})
public class PhysicAmpouleController { public class PhysicAmpouleController {
...@@ -39,6 +42,7 @@ public class PhysicAmpouleController { ...@@ -39,6 +42,7 @@ public class PhysicAmpouleController {
physicAmpouleService.create(req); physicAmpouleService.create(req);
return ResponseData.ok(); return ResponseData.ok();
} }
@PostMapping("/listPage") @PostMapping("/listPage")
@ApiOperation(value = "查询") @ApiOperation(value = "查询")
public Page<PhysicAmpoule> listPage(@RequestBody PhysicAmpouleQueryReq req) { public Page<PhysicAmpoule> listPage(@RequestBody PhysicAmpouleQueryReq req) {
...@@ -53,4 +57,11 @@ public class PhysicAmpouleController { ...@@ -53,4 +57,11 @@ public class PhysicAmpouleController {
return ResponseData.ok(physicAmpouleUseVOS); return ResponseData.ok(physicAmpouleUseVOS);
} }
@PostMapping("/sign")
@ApiOperation(value = "签名")
public ResponseData<PhysicAmpoule> sign(@RequestBody PhysicAmpouleSignReq physicAmpouleSignReq) {
PhysicAmpoule ampoule = physicAmpouleService.sign(physicAmpouleSignReq);
return ResponseData.ok(ampoule);
}
} }
...@@ -2,14 +2,12 @@ package com.jmai.physic.controller; ...@@ -2,14 +2,12 @@ package com.jmai.physic.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicCheckQueryReq; import com.jmai.physic.dto.*;
import com.jmai.physic.dto.PhysicDestroyCheckCreateReq;
import com.jmai.physic.dto.PhysicDestroyCreateReq;
import com.jmai.physic.dto.PhysicRecordQueryReq;
import com.jmai.physic.entity.PhysicDestroy; import com.jmai.physic.entity.PhysicDestroy;
import com.jmai.physic.entity.PhysicRecord; import com.jmai.physic.entity.PhysicRecord;
import com.jmai.physic.service.PhysicDestroyCheckService; import com.jmai.physic.service.PhysicDestroyCheckService;
import com.jmai.physic.service.PhysicDestroyService; import com.jmai.physic.service.PhysicDestroyService;
import com.jmai.physic.vo.PhysicApplyVO;
import com.jmai.sys.aop.Auth; import com.jmai.sys.aop.Auth;
import com.jmai.sys.dto.ResponseData; import com.jmai.sys.dto.ResponseData;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -47,5 +45,12 @@ public class PhysicDestroyController { ...@@ -47,5 +45,12 @@ public class PhysicDestroyController {
public Page<PhysicDestroy> listPage(@RequestBody PhysicCheckQueryReq req) { public Page<PhysicDestroy> listPage(@RequestBody PhysicCheckQueryReq req) {
return physicDestroyService.listPage(req); return physicDestroyService.listPage(req);
} }
@PostMapping("/sign")
@ApiOperation(value = "签名")
public ResponseData<PhysicDestroy> sign(@RequestBody PhysicDestroySignReq physicDestroySignReq) {
PhysicDestroy physicDestroy = physicDestroyService.sign(physicDestroySignReq);
return ResponseData.ok(physicDestroy);
}
} }
...@@ -4,8 +4,10 @@ package com.jmai.physic.controller; ...@@ -4,8 +4,10 @@ package com.jmai.physic.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicRecordCreateReq; import com.jmai.physic.dto.PhysicRecordCreateReq;
import com.jmai.physic.dto.PhysicRecordQueryReq; import com.jmai.physic.dto.PhysicRecordQueryReq;
import com.jmai.physic.dto.PhysicRecordSignReq;
import com.jmai.physic.entity.PhysicRecord; import com.jmai.physic.entity.PhysicRecord;
import com.jmai.physic.service.PhysicRecordService; import com.jmai.physic.service.PhysicRecordService;
import com.jmai.physic.vo.PhysicApplyVO;
import com.jmai.sys.aop.Auth; import com.jmai.sys.aop.Auth;
import com.jmai.sys.dto.ResponseData; import com.jmai.sys.dto.ResponseData;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -36,8 +38,8 @@ public class PhysicRecordController { ...@@ -36,8 +38,8 @@ public class PhysicRecordController {
@PostMapping("/create") @PostMapping("/create")
@ApiOperation(value = "创建") @ApiOperation(value = "创建")
public ResponseData createPhysicRecord(@RequestBody @Valid PhysicRecordCreateReq req) { public ResponseData createPhysicRecord(@RequestBody @Valid PhysicRecordCreateReq req) {
physicRecordService.PhysicRecordCreate(req); List<PhysicRecord> records = physicRecordService.physicRecordCreate(req);
return ResponseData.ok(); return ResponseData.ok(records);
} }
@PostMapping("/listPage") @PostMapping("/listPage")
...@@ -46,4 +48,11 @@ public class PhysicRecordController { ...@@ -46,4 +48,11 @@ public class PhysicRecordController {
return physicRecordService.listPage(req); return physicRecordService.listPage(req);
} }
@PostMapping("/sign")
@ApiOperation(value = "签名")
public ResponseData<PhysicRecord> sign(@RequestBody PhysicRecordSignReq physicApplySignReq) {
PhysicRecord record = physicRecordService.sign(physicApplySignReq);
return ResponseData.ok(record);
}
} }
...@@ -2,9 +2,7 @@ package com.jmai.physic.controller; ...@@ -2,9 +2,7 @@ package com.jmai.physic.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicAmpouleQueryReq; import com.jmai.physic.dto.*;
import com.jmai.physic.dto.PhysicRecordQueryReq;
import com.jmai.physic.dto.PhysicStorageAmpouleCreateReq;
import com.jmai.physic.entity.PhysicRecord; import com.jmai.physic.entity.PhysicRecord;
import com.jmai.physic.entity.PhysicStorageAmpoule; import com.jmai.physic.entity.PhysicStorageAmpoule;
import com.jmai.physic.service.PhysicStorageAmpouleService; import com.jmai.physic.service.PhysicStorageAmpouleService;
...@@ -27,7 +25,7 @@ import javax.validation.Valid; ...@@ -27,7 +25,7 @@ import javax.validation.Valid;
@Auth @Auth
@RestController @RestController
@RequestMapping("/physicStorageAmpoule") @RequestMapping("/physicStorageAmpoule")
@Api(tags = "药品专用登记-药库") @Api(tags = "药品空安瓿登记-药库")
@ApiImplicitParams({@ApiImplicitParam(paramType = "header", name = "Access-Token", value = "凭证", required = true, dataType = "string")}) @ApiImplicitParams({@ApiImplicitParam(paramType = "header", name = "Access-Token", value = "凭证", required = true, dataType = "string")})
public class PhysicStorageAmpouleController { public class PhysicStorageAmpouleController {
...@@ -42,11 +40,16 @@ public class PhysicStorageAmpouleController { ...@@ -42,11 +40,16 @@ public class PhysicStorageAmpouleController {
return ResponseData.ok(); return ResponseData.ok();
} }
@PostMapping("/listPage") @PostMapping("/listPage")
@ApiOperation(value = "查询") @ApiOperation(value = "查询")
public Page<PhysicStorageAmpoule> listPage(@RequestBody PhysicAmpouleQueryReq req) { public Page<PhysicStorageAmpoule> listPage(@RequestBody PhysicAmpouleQueryReq req) {
return physicStorageAmpouleService.listPage(req); return physicStorageAmpouleService.listPage(req);
} }
@PostMapping("/sign")
@ApiOperation(value = "签名")
public ResponseData<PhysicStorageAmpoule> sign(@RequestBody PhysicStorageAmpouleSignReq physicStorageAmpouleSignReq) {
PhysicStorageAmpoule ampoule = physicStorageAmpouleService.sign(physicStorageAmpouleSignReq);
return ResponseData.ok(ampoule);
}
} }
...@@ -23,7 +23,7 @@ public class BillDTO { ...@@ -23,7 +23,7 @@ public class BillDTO {
@ApiModelProperty(value = "数量") @ApiModelProperty(value = "数量")
private Integer physicNum; private Integer physicNum;
@ApiModelProperty(value = "1-采购入库 2-申领入库 3-申领出库") @ApiModelProperty(value = " 1-采购入库 2-申领入库 3-申领出库 4-使用出库 5-回收空安瓿 6-退回空安瓿 7-销毁空安瓿")
private Integer type; private Integer type;
@ApiModelProperty(value = "厂家名称") @ApiModelProperty(value = "厂家名称")
......
...@@ -15,7 +15,7 @@ public class PhysicAmpouleQueryReq extends PageReq { ...@@ -15,7 +15,7 @@ public class PhysicAmpouleQueryReq extends PageReq {
private String physicName; private String physicName;
private LocalDate dateTime; private String dateTime;
@ApiModelProperty(value = "部门") @ApiModelProperty(value = "部门")
private Integer deptId; private Integer deptId;
......
package com.jmai.physic.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class PhysicAmpouleSignReq {
@ApiModelProperty(value = "签名token")
private String encryptedToken;
@ApiModelProperty(value = "签名账号")
private String relBizNo;
@ApiModelProperty(value = "签名base64图片")
private String base64SourceData;
@ApiModelProperty(value = "药库空安瓿id")
private Long physicAmpouleId;
}
...@@ -53,6 +53,8 @@ public class PhysicApplyCreateReq { ...@@ -53,6 +53,8 @@ public class PhysicApplyCreateReq {
@ApiModelProperty(value = "厂家名称") @ApiModelProperty(value = "厂家名称")
private String factoryName; private String factoryName;
@ApiModelProperty(value = "失效时间")
private String expireDate;
} }
package com.jmai.physic.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class PhysicDestroySignReq {
@ApiModelProperty(value = "签名token")
private String encryptedToken;
@ApiModelProperty(value = "签名账号")
private String relBizNo;
@ApiModelProperty(value = "签名base64图片")
private String base64SourceData;
@ApiModelProperty(value = "药品销毁id")
private Long physicDestroyId;
}
package com.jmai.physic.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class PhysicRecordSignReq {
@ApiModelProperty(value = "签名token")
private String encryptedToken;
@ApiModelProperty(value = "签名账号")
private String relBizNo;
@ApiModelProperty(value = "签名base64图片")
private String base64SourceData;
@ApiModelProperty(value = "药品登记id")
private Long physicRecordId;
}
package com.jmai.physic.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class PhysicStorageAmpouleSignReq {
@ApiModelProperty(value = "签名token")
private String encryptedToken;
@ApiModelProperty(value = "签名账号")
private String relBizNo;
@ApiModelProperty(value = "签名base64图片")
private String base64SourceData;
@ApiModelProperty(value = "药库空安瓿id")
private Long physicStorageAmpouleId;
}
...@@ -35,7 +35,7 @@ public class PhysicAmpoule extends BaseVersionEntity { ...@@ -35,7 +35,7 @@ public class PhysicAmpoule extends BaseVersionEntity {
private String orderNo; private String orderNo;
private Integer deptId; private Long deptId;
private Integer batchBalance; private Integer batchBalance;
...@@ -46,6 +46,9 @@ public class PhysicAmpoule extends BaseVersionEntity { ...@@ -46,6 +46,9 @@ public class PhysicAmpoule extends BaseVersionEntity {
private String fhUser; private String fhUser;
@ApiModelProperty(value = "0-待处理 1-接受退回处理 2-复核人处理")
private Integer status;
private String remark; private String remark;
} }
...@@ -36,6 +36,10 @@ public class PhysicApply extends BaseVersionEntity{ ...@@ -36,6 +36,10 @@ public class PhysicApply extends BaseVersionEntity{
private String factoryName; private String factoryName;
@ApiModelProperty(value = "失效时间")
private String expireDate;
@ApiModelProperty(value = "发药部门") @ApiModelProperty(value = "发药部门")
private Long fyDeptId; private Long fyDeptId;
......
...@@ -12,6 +12,8 @@ import lombok.Data; ...@@ -12,6 +12,8 @@ import lombok.Data;
public class PhysicRecord extends BaseVersionEntity { public class PhysicRecord extends BaseVersionEntity {
private Long deptId;
@ApiModelProperty(value = "药品名称") @ApiModelProperty(value = "药品名称")
private String physicName; private String physicName;
...@@ -19,7 +21,7 @@ public class PhysicRecord extends BaseVersionEntity { ...@@ -19,7 +21,7 @@ public class PhysicRecord extends BaseVersionEntity {
private Integer physicNum; private Integer physicNum;
@ApiModelProperty(value = "规格") @ApiModelProperty(value = "规格")
private String physiSpec; private String physicSpec;
@ApiModelProperty(value = "批号") @ApiModelProperty(value = "批号")
private String batchNo; private String batchNo;
......
...@@ -20,7 +20,7 @@ public class PhysicStorageAmpoule extends BaseVersionEntity { ...@@ -20,7 +20,7 @@ public class PhysicStorageAmpoule extends BaseVersionEntity {
private Integer physicNum; private Integer physicNum;
@ApiModelProperty(value = "规格") @ApiModelProperty(value = "规格")
private String physiSpec; private String physicSpec;
@ApiModelProperty(value = "批号") @ApiModelProperty(value = "批号")
private String batchNo; private String batchNo;
...@@ -31,11 +31,13 @@ public class PhysicStorageAmpoule extends BaseVersionEntity { ...@@ -31,11 +31,13 @@ public class PhysicStorageAmpoule extends BaseVersionEntity {
private String physicType; private String physicType;
@ApiModelProperty(value = "1-接收 2-销毁")
private Integer type; private Integer type;
private String orderNo; private String orderNo;
private Integer deptId; private Long deptId;
private Integer recycleReceiptNum; private Integer recycleReceiptNum;
......
...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jmai.physic.entity.PhysicDestroyCheckDetail; import com.jmai.physic.entity.PhysicDestroyCheckDetail;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@Mapper @Mapper
public interface PhysicDestroyCheckDetailMapper extends BaseMapper<PhysicDestroyCheckDetail> { public interface PhysicDestroyCheckDetailMapper extends BaseMapper<PhysicDestroyCheckDetail> {
} }
...@@ -3,7 +3,9 @@ package com.jmai.physic.service; ...@@ -3,7 +3,9 @@ package com.jmai.physic.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicAmpouleCreateReq; import com.jmai.physic.dto.PhysicAmpouleCreateReq;
import com.jmai.physic.dto.PhysicAmpouleQueryReq; import com.jmai.physic.dto.PhysicAmpouleQueryReq;
import com.jmai.physic.dto.PhysicAmpouleSignReq;
import com.jmai.physic.entity.PhysicAmpoule; import com.jmai.physic.entity.PhysicAmpoule;
import com.jmai.physic.entity.PhysicStorageAmpoule;
import com.jmai.physic.vo.PhysicAmpouleUseVO; import com.jmai.physic.vo.PhysicAmpouleUseVO;
import java.util.List; import java.util.List;
...@@ -15,4 +17,7 @@ public interface PhysicAmpouleService { ...@@ -15,4 +17,7 @@ public interface PhysicAmpouleService {
List<PhysicAmpouleUseVO> analysis(); List<PhysicAmpouleUseVO> analysis();
PhysicAmpoule sign(PhysicAmpouleSignReq physicAmpouleSignReq);
PhysicAmpoule getInfo(Long id);
} }
...@@ -4,10 +4,17 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -4,10 +4,17 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicAmpouleCreateReq; import com.jmai.physic.dto.PhysicAmpouleCreateReq;
import com.jmai.physic.dto.PhysicCheckQueryReq; import com.jmai.physic.dto.PhysicCheckQueryReq;
import com.jmai.physic.dto.PhysicDestroyCreateReq; import com.jmai.physic.dto.PhysicDestroyCreateReq;
import com.jmai.physic.dto.PhysicDestroySignReq;
import com.jmai.physic.entity.PhysicDestroy; import com.jmai.physic.entity.PhysicDestroy;
import com.jmai.physic.entity.PhysicRecord;
public interface PhysicDestroyService { public interface PhysicDestroyService {
void create(PhysicDestroyCreateReq req); void create(PhysicDestroyCreateReq req);
Page<PhysicDestroy> listPage(PhysicCheckQueryReq req); Page<PhysicDestroy> listPage(PhysicCheckQueryReq req);
PhysicDestroy sign(PhysicDestroySignReq physicDestroySignReq);
PhysicDestroy getInfo(Long id);
} }
...@@ -3,14 +3,19 @@ package com.jmai.physic.service; ...@@ -3,14 +3,19 @@ package com.jmai.physic.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicRecordCreateReq; import com.jmai.physic.dto.PhysicRecordCreateReq;
import com.jmai.physic.dto.PhysicRecordQueryReq; import com.jmai.physic.dto.PhysicRecordQueryReq;
import com.jmai.physic.dto.PhysicRecordSignReq;
import com.jmai.physic.entity.PhysicRecord; import com.jmai.physic.entity.PhysicRecord;
import java.util.List; import java.util.List;
public interface PhysicRecordService { public interface PhysicRecordService {
void PhysicRecordCreate(PhysicRecordCreateReq req); List<PhysicRecord> physicRecordCreate(PhysicRecordCreateReq req);
Page<PhysicRecord> listPage(PhysicRecordQueryReq req); Page<PhysicRecord> listPage(PhysicRecordQueryReq req);
PhysicRecord sign(PhysicRecordSignReq physicRecordSignReq);
PhysicRecord getInfo(Long id);
} }
...@@ -3,10 +3,17 @@ package com.jmai.physic.service; ...@@ -3,10 +3,17 @@ package com.jmai.physic.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicAmpouleQueryReq; import com.jmai.physic.dto.PhysicAmpouleQueryReq;
import com.jmai.physic.dto.PhysicStorageAmpouleCreateReq; import com.jmai.physic.dto.PhysicStorageAmpouleCreateReq;
import com.jmai.physic.dto.PhysicStorageAmpouleSignReq;
import com.jmai.physic.entity.PhysicRecord;
import com.jmai.physic.entity.PhysicStorageAmpoule; import com.jmai.physic.entity.PhysicStorageAmpoule;
public interface PhysicStorageAmpouleService { public interface PhysicStorageAmpouleService {
void create(PhysicStorageAmpouleCreateReq req); void create(PhysicStorageAmpouleCreateReq req);
Page<PhysicStorageAmpoule> listPage(PhysicAmpouleQueryReq req); Page<PhysicStorageAmpoule> listPage(PhysicAmpouleQueryReq req);
PhysicStorageAmpoule sign(PhysicStorageAmpouleSignReq physicStorageAmpouleSignReq);
PhysicStorageAmpoule getInfo(Long id);
} }
...@@ -2,21 +2,29 @@ package com.jmai.physic.service.impl; ...@@ -2,21 +2,29 @@ package com.jmai.physic.service.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicAmpouleCreateReq; import com.jmai.api.exception.ServiceException;
import com.jmai.physic.dto.PhysicAmpouleQueryReq; import com.jmai.physic.cloudsign.CloudsignService;
import com.jmai.physic.dto.*;
import com.jmai.physic.entity.PhysicAmpoule; import com.jmai.physic.entity.PhysicAmpoule;
import com.jmai.physic.entity.PhysicStorageAmpoule; import com.jmai.physic.entity.PhysicStorageAmpoule;
import com.jmai.physic.mapper.PhysicAmpouleMapper; import com.jmai.physic.mapper.PhysicAmpouleMapper;
import com.jmai.physic.service.PhysicAmpouleService; import com.jmai.physic.service.PhysicAmpouleService;
import com.jmai.physic.service.PhysicBillService;
import com.jmai.physic.vo.PhysicAmpouleUseVO; import com.jmai.physic.vo.PhysicAmpouleUseVO;
import com.jmai.sys.AbstractService; import com.jmai.sys.AbstractService;
import com.jmai.sys.consts.enums.RoleTypeEum;
import com.jmai.sys.ctx.SpringContextUtils;
import com.jmai.sys.entity.SysUser;
import com.jmai.sys.mapper.SysUserMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
@Service @Service
...@@ -25,6 +33,15 @@ public class PhysicAmpouleServiceImpl extends AbstractService implements PhysicA ...@@ -25,6 +33,15 @@ public class PhysicAmpouleServiceImpl extends AbstractService implements PhysicA
@Resource @Resource
private PhysicAmpouleMapper physicAmpouleMapper; private PhysicAmpouleMapper physicAmpouleMapper;
@Resource
private CloudsignService cloudsignService;
@Resource
private SysUserMapper sysUserMapper;
@Resource
private PhysicBillService physicBillService;
@Transactional @Transactional
@Override @Override
...@@ -59,6 +76,46 @@ public class PhysicAmpouleServiceImpl extends AbstractService implements PhysicA ...@@ -59,6 +76,46 @@ public class PhysicAmpouleServiceImpl extends AbstractService implements PhysicA
return physicAmpouleUseVOS; return physicAmpouleUseVOS;
} }
@Override
public PhysicAmpoule sign(PhysicAmpouleSignReq physicAmpouleSignReq) {
Boolean f = false;
Long userId = SpringContextUtils.getUserId();
String getstamp = cloudsignService.sign(physicAmpouleSignReq.getEncryptedToken(), physicAmpouleSignReq.getRelBizNo(), physicAmpouleSignReq.getBase64SourceData());
PhysicAmpoule ampoule = getInfo(physicAmpouleSignReq.getPhysicAmpouleId());
SysUser sysUser = sysUserMapper.selectById(userId);
if(ampoule.getStatus().equals(0)){
if(!(RoleTypeEum.isPass(sysUser.getRoleAsList(),RoleTypeEum.JS)|| RoleTypeEum.isPass(sysUser.getRoleAsList(),RoleTypeEum.TH))){
throw new ServiceException("需要接受或退回人权限才可进行签名");
}
ampoule.setStatus(1);
SignInfoDTO signInfoDTO = new SignInfoDTO(getstamp, LocalDateTime.now(),userId);
ampoule.setChUser(JSONUtil.toJsonStr(signInfoDTO));
}else if(ampoule.getStatus().equals(1)) {
if (!RoleTypeEum.isPass(sysUser.getRoleAsList(), RoleTypeEum.FH)) {
throw new ServiceException("需要复核人权限才可进行签名");
}
ampoule.setStatus(2);
SignInfoDTO signInfoDTO = new SignInfoDTO(getstamp, LocalDateTime.now(), userId);
ampoule.setFhUser(JSONUtil.toJsonStr(signInfoDTO));
f=true;
}
if(f){
BillDTO billDTO = new BillDTO();
BeanUtil.copyProperties(ampoule,billDTO);
billDTO.setType(ampoule.getType().equals("1")?5:6);
billDTO.setDeptId(ampoule.getDeptId());
billDTO.setRefId(ampoule.getId());
physicBillService.createBill(billDTO);
}
physicAmpouleMapper.updateById(ampoule);
return getInfo(ampoule.getId());
}
@Override
public PhysicAmpoule getInfo(Long id) {
PhysicAmpoule ampoule = physicAmpouleMapper.selectById(id);
return ampoule;
}
private String getRate(BigDecimal num1,BigDecimal num2){ private String getRate(BigDecimal num1,BigDecimal num2){
return num1.divide(num2, 4, RoundingMode.HALF_UP) return num1.divide(num2, 4, RoundingMode.HALF_UP)
.multiply(new BigDecimal(100)) .multiply(new BigDecimal(100))
......
...@@ -46,7 +46,7 @@ public class PhysicBillServiceImpl extends AbstractService implements PhysicBill ...@@ -46,7 +46,7 @@ public class PhysicBillServiceImpl extends AbstractService implements PhysicBill
bill.setAcquireNum(billDTO.getPhysicNum()); bill.setAcquireNum(billDTO.getPhysicNum());
bill.setBalance(batchNoSum+billDTO.getPhysicNum()); bill.setBalance(batchNoSum+billDTO.getPhysicNum());
bill.setBalanceAll(sum+billDTO.getPhysicNum()); bill.setBalanceAll(sum+billDTO.getPhysicNum());
}else if(billDTO.getType()==3){ }else if(billDTO.getType()==3 || billDTO.getType()==4){
bill.setExpendNum(billDTO.getPhysicNum()); bill.setExpendNum(billDTO.getPhysicNum());
bill.setBalance(batchNoSum-billDTO.getPhysicNum()); bill.setBalance(batchNoSum-billDTO.getPhysicNum());
bill.setBalanceAll(sum-billDTO.getPhysicNum()); bill.setBalanceAll(sum-billDTO.getPhysicNum());
......
package com.jmai.physic.service.impl; package com.jmai.physic.service.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicCheckQueryReq; import com.jmai.api.exception.ServiceException;
import com.jmai.physic.dto.PhysicDestroyCreateReq; import com.jmai.physic.cloudsign.CloudsignService;
import com.jmai.physic.dto.*;
import com.jmai.physic.entity.PhysicDestroy; import com.jmai.physic.entity.PhysicDestroy;
import com.jmai.physic.entity.PhysicRecord; import com.jmai.physic.entity.PhysicRecord;
import com.jmai.physic.entity.PhysicWarehouse;
import com.jmai.physic.mapper.PhysicDestroyMapper; import com.jmai.physic.mapper.PhysicDestroyMapper;
import com.jmai.physic.service.PhysicBillService; import com.jmai.physic.service.PhysicBillService;
import com.jmai.physic.service.PhysicDestroyService; import com.jmai.physic.service.PhysicDestroyService;
import com.jmai.sys.AbstractService; import com.jmai.sys.AbstractService;
import com.jmai.sys.consts.enums.RoleTypeEum;
import com.jmai.sys.ctx.SpringContextUtils; import com.jmai.sys.ctx.SpringContextUtils;
import com.jmai.sys.entity.SysUser; import com.jmai.sys.entity.SysUser;
import com.jmai.sys.mapper.SysUserMapper; import com.jmai.sys.mapper.SysUserMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.time.LocalDateTime;
@Service @Service
public class PhysicDestroyServiceImpl extends AbstractService implements PhysicDestroyService { public class PhysicDestroyServiceImpl extends AbstractService implements PhysicDestroyService {
...@@ -25,6 +30,13 @@ public class PhysicDestroyServiceImpl extends AbstractService implements PhysicD ...@@ -25,6 +30,13 @@ public class PhysicDestroyServiceImpl extends AbstractService implements PhysicD
@Resource @Resource
private PhysicDestroyMapper physicDestroyMapper; private PhysicDestroyMapper physicDestroyMapper;
@Resource
private CloudsignService cloudsignService;
@Resource
private PhysicBillService physicBillService;
@Override @Override
public void create(PhysicDestroyCreateReq req) { public void create(PhysicDestroyCreateReq req) {
Long userId = SpringContextUtils.getUserId(); Long userId = SpringContextUtils.getUserId();
...@@ -43,4 +55,48 @@ public class PhysicDestroyServiceImpl extends AbstractService implements PhysicD ...@@ -43,4 +55,48 @@ public class PhysicDestroyServiceImpl extends AbstractService implements PhysicD
Page<PhysicDestroy> destroyPage = physicDestroyMapper.selectDestroyPage(page, req); Page<PhysicDestroy> destroyPage = physicDestroyMapper.selectDestroyPage(page, req);
return destroyPage; return destroyPage;
} }
@Override
public PhysicDestroy sign(PhysicDestroySignReq physicDestroySignReq) {
Boolean f = false;
Long userId = SpringContextUtils.getUserId();
String getstamp = cloudsignService.sign(physicDestroySignReq.getEncryptedToken(), physicDestroySignReq.getRelBizNo(), physicDestroySignReq.getBase64SourceData());
PhysicDestroy physicDestroy = physicDestroyMapper.selectById(physicDestroySignReq.getPhysicDestroyId());
SysUser sysUser = sysUserMapper.selectById(userId);
if(physicDestroy.getStatus().equals(0)){
if(!RoleTypeEum.isPass(sysUser.getRoleAsList(),RoleTypeEum.CZ)){
throw new ServiceException("需要操作人权限才可进行签名");
}
physicDestroy.setStatus(1);
SignInfoDTO signInfoDTO = new SignInfoDTO(getstamp, LocalDateTime.now(),userId);
physicDestroy.setCzUser(JSONUtil.toJsonStr(signInfoDTO));
}else if(physicDestroy.getStatus().equals(1)){
if(!RoleTypeEum.isPass(sysUser.getRoleAsList(),RoleTypeEum.XH)){
throw new ServiceException("需要验收人权限才可进行签名");
}
physicDestroy.setStatus(2);
SignInfoDTO signInfoDTO = new SignInfoDTO(getstamp, LocalDateTime.now(),userId);;
physicDestroy.setXhUser(JSONUtil.toJsonStr(signInfoDTO));
f = true;
}
if(f){
BillDTO billDTO = new BillDTO();
BeanUtil.copyProperties(physicDestroy,billDTO);
billDTO.setType(7);
billDTO.setDeptId(physicDestroy.getDeptId());
billDTO.setRefId(physicDestroy.getId());
physicBillService.createBill(billDTO);
}
physicDestroyMapper.updateById(physicDestroy);
return getInfo(physicDestroy.getId());
}
@Override
public PhysicDestroy getInfo(Long id) {
PhysicDestroy physicDestroy = physicDestroyMapper.selectById(id);
return physicDestroy;
}
} }
...@@ -3,20 +3,30 @@ package com.jmai.physic.service.impl; ...@@ -3,20 +3,30 @@ package com.jmai.physic.service.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicRecordCreateReq; import com.jmai.api.exception.ServiceException;
import com.jmai.physic.dto.PhysicRecordQueryReq; import com.jmai.physic.cloudsign.CloudsignService;
import com.jmai.physic.dto.*;
import com.jmai.physic.entity.PhysicRecord; import com.jmai.physic.entity.PhysicRecord;
import com.jmai.physic.entity.PhysicWarehouse;
import com.jmai.physic.mapper.PhysicRecordMapper; import com.jmai.physic.mapper.PhysicRecordMapper;
import com.jmai.physic.service.PhysicBillService;
import com.jmai.physic.service.PhysicRecordService; import com.jmai.physic.service.PhysicRecordService;
import com.jmai.sys.AbstractService; import com.jmai.sys.AbstractService;
import com.jmai.sys.consts.BizFileTypes; import com.jmai.sys.consts.BizFileTypes;
import com.jmai.sys.consts.enums.RoleTypeEum;
import com.jmai.sys.ctx.SpringContextUtils;
import com.jmai.sys.entity.SysUser;
import com.jmai.sys.mapper.SysUserMapper;
import com.jmai.sys.service.BizFileService; import com.jmai.sys.service.BizFileService;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List; import java.util.List;
@Service @Service
...@@ -28,29 +38,40 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe ...@@ -28,29 +38,40 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe
@Resource @Resource
private BizFileService bizFileService; private BizFileService bizFileService;
@Resource
private CloudsignService cloudsignService;
@Resource
private SysUserMapper sysUserMapper;
@Resource
private PhysicBillService physicBillService;
@Transactional @Transactional
@Override @Override
public void PhysicRecordCreate(PhysicRecordCreateReq req) { public List<PhysicRecord> physicRecordCreate(PhysicRecordCreateReq req) {
List<PhysicRecord> records = new ArrayList<>();
Long userId = SpringContextUtils.getUserId();
SysUser sysUser = sysUserMapper.selectById(userId);
for (PhysicRecordCreateReq.Physic physic : req.getPhysicList()) { for (PhysicRecordCreateReq.Physic physic : req.getPhysicList()) {
PhysicRecord record = new PhysicRecord(); PhysicRecord record = new PhysicRecord();
BeanUtil.copyProperties(req,record); BeanUtil.copyProperties(req,record);
record.setPhysicName(physic.getPhysicName()); record.setPhysicName(physic.getPhysicName());
record.setBatchNo(physic.getBatchNo()); record.setBatchNo(physic.getBatchNo());
record.setPhysicNum(physic.getPhysicNum()); record.setPhysicNum(physic.getPhysicNum());
record.setPhysiSpec(physic.getPhysicSpec()); record.setPhysicSpec(physic.getPhysicSpec());
record.setDeptId(sysUser.getDeptId());
physicRecordMapper.insert(record); physicRecordMapper.insert(record);
if(ObjectUtil.isNotEmpty(req.getPrescriptionImages())){ if(ObjectUtil.isNotEmpty(req.getPrescriptionImages())){
if (CollectionUtils.isNotEmpty(req.getPrescriptionImages())) { if (CollectionUtils.isNotEmpty(req.getPrescriptionImages())) {
bizFileService.addBizFilesIfAbsent(BizFileTypes.PHYSIC_RECORD_IMAGE,record.getId().toString(), req.getPrescriptionImages()); bizFileService.addBizFilesIfAbsent(BizFileTypes.PHYSIC_RECORD_IMAGE,record.getId().toString(), req.getPrescriptionImages());
} }
} }
records.add(record);
} }
return records;
} }
@Override @Override
...@@ -60,4 +81,45 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe ...@@ -60,4 +81,45 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe
return recordPage; return recordPage;
} }
@Override
public PhysicRecord sign(PhysicRecordSignReq physicRecordSignReq) {
Boolean f = false;
Long userId = SpringContextUtils.getUserId();
String getstamp = cloudsignService.sign(physicRecordSignReq.getEncryptedToken(), physicRecordSignReq.getRelBizNo(), physicRecordSignReq.getBase64SourceData());
PhysicRecord physicRecord = getInfo(physicRecordSignReq.getPhysicRecordId());
SysUser sysUser = sysUserMapper.selectById(userId);
if(physicRecord.getStatus().equals(0)){
if(!RoleTypeEum.isPass(sysUser.getRoleAsList(),RoleTypeEum.DP)){
throw new ServiceException("需要调配人权限才可进行签名");
}
physicRecord.setStatus(1);
SignInfoDTO signInfoDTO = new SignInfoDTO(getstamp, LocalDateTime.now(),userId);
physicRecord.setDpUser(JSONUtil.toJsonStr(signInfoDTO));
}else if(physicRecord.getStatus().equals(1)) {
if (!RoleTypeEum.isPass(sysUser.getRoleAsList(), RoleTypeEum.FY)) {
throw new ServiceException("需要发药人权限才可进行签名");
}
physicRecord.setStatus(2);
SignInfoDTO signInfoDTO = new SignInfoDTO(getstamp, LocalDateTime.now(), userId);
physicRecord.setFyUser(JSONUtil.toJsonStr(signInfoDTO));
f=true;
}
if(f){
BillDTO billDTO = new BillDTO();
BeanUtil.copyProperties(physicRecord,billDTO);
billDTO.setType(4);
billDTO.setDeptId(physicRecord.getDeptId());
billDTO.setRefId(physicRecord.getId());
physicBillService.createBill(billDTO);
}
physicRecordMapper.updateById(physicRecord);
return getInfo(physicRecord.getId());
}
@Override
public PhysicRecord getInfo(Long id) {
PhysicRecord physicRecord = physicRecordMapper.selectById(id);
return physicRecord;
}
} }
...@@ -2,18 +2,26 @@ package com.jmai.physic.service.impl; ...@@ -2,18 +2,26 @@ package com.jmai.physic.service.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jmai.physic.dto.PhysicAmpouleQueryReq; import com.jmai.api.exception.ServiceException;
import com.jmai.physic.dto.PhysicStorageAmpouleCreateReq; import com.jmai.physic.cloudsign.CloudsignService;
import com.jmai.physic.dto.*;
import com.jmai.physic.entity.PhysicRecord; import com.jmai.physic.entity.PhysicRecord;
import com.jmai.physic.entity.PhysicStorageAmpoule; import com.jmai.physic.entity.PhysicStorageAmpoule;
import com.jmai.physic.mapper.PhysicStorageAmpouleMapper; import com.jmai.physic.mapper.PhysicStorageAmpouleMapper;
import com.jmai.physic.service.PhysicBillService;
import com.jmai.physic.service.PhysicStorageAmpouleService; import com.jmai.physic.service.PhysicStorageAmpouleService;
import com.jmai.sys.AbstractService; import com.jmai.sys.AbstractService;
import com.jmai.sys.consts.enums.RoleTypeEum;
import com.jmai.sys.ctx.SpringContextUtils;
import com.jmai.sys.entity.SysUser;
import com.jmai.sys.mapper.SysUserMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.time.LocalDateTime;
@Service @Service
public class PhysicStorageAmpouleServiceImpl extends AbstractService implements PhysicStorageAmpouleService { public class PhysicStorageAmpouleServiceImpl extends AbstractService implements PhysicStorageAmpouleService {
...@@ -21,6 +29,15 @@ public class PhysicStorageAmpouleServiceImpl extends AbstractService implements ...@@ -21,6 +29,15 @@ public class PhysicStorageAmpouleServiceImpl extends AbstractService implements
@Resource @Resource
private PhysicStorageAmpouleMapper physicStorageAmpouleMapper; private PhysicStorageAmpouleMapper physicStorageAmpouleMapper;
@Resource
private CloudsignService cloudsignService;
@Resource
private SysUserMapper sysUserMapper;
@Resource
private PhysicBillService physicBillService;
@Transactional @Transactional
@Override @Override
...@@ -32,7 +49,7 @@ public class PhysicStorageAmpouleServiceImpl extends AbstractService implements ...@@ -32,7 +49,7 @@ public class PhysicStorageAmpouleServiceImpl extends AbstractService implements
ampoule.setPhysicName(physic.getPhysicName()); ampoule.setPhysicName(physic.getPhysicName());
ampoule.setBatchNo(physic.getBatchNo()); ampoule.setBatchNo(physic.getBatchNo());
ampoule.setPhysicNum(physic.getPhysicNum()); ampoule.setPhysicNum(physic.getPhysicNum());
ampoule.setPhysiSpec(physic.getPhysicSpec()); ampoule.setPhysicSpec(physic.getPhysicSpec());
ampoule.setPhysicType(physic.getPhysicType()); ampoule.setPhysicType(physic.getPhysicType());
physicStorageAmpouleMapper.insert(ampoule); physicStorageAmpouleMapper.insert(ampoule);
} }
...@@ -46,4 +63,46 @@ public class PhysicStorageAmpouleServiceImpl extends AbstractService implements ...@@ -46,4 +63,46 @@ public class PhysicStorageAmpouleServiceImpl extends AbstractService implements
Page<PhysicStorageAmpoule> ampoulePage= physicStorageAmpouleMapper.selectAmpoulePage(page, req); Page<PhysicStorageAmpoule> ampoulePage= physicStorageAmpouleMapper.selectAmpoulePage(page, req);
return ampoulePage; return ampoulePage;
} }
@Override
public PhysicStorageAmpoule sign(PhysicStorageAmpouleSignReq physicStorageAmpouleSignReq) {
Boolean f = false;
Long userId = SpringContextUtils.getUserId();
String getstamp = cloudsignService.sign(physicStorageAmpouleSignReq.getEncryptedToken(), physicStorageAmpouleSignReq.getRelBizNo(), physicStorageAmpouleSignReq.getBase64SourceData());
PhysicStorageAmpoule ampoule = getInfo(physicStorageAmpouleSignReq.getPhysicStorageAmpouleId());
SysUser sysUser = sysUserMapper.selectById(userId);
if(ampoule.getStatus().equals(0)){
if(!RoleTypeEum.isPass(sysUser.getRoleAsList(),RoleTypeEum.JS)){
throw new ServiceException("需要接收人权限才可进行签名");
}
ampoule.setStatus(1);
SignInfoDTO signInfoDTO = new SignInfoDTO(getstamp, LocalDateTime.now(),userId);
ampoule.setJsUser(JSONUtil.toJsonStr(signInfoDTO));
}else if(ampoule.getStatus().equals(1)) {
if (!RoleTypeEum.isPass(sysUser.getRoleAsList(), RoleTypeEum.TH)) {
throw new ServiceException("需要退回人权限才可进行签名");
}
ampoule.setStatus(2);
SignInfoDTO signInfoDTO = new SignInfoDTO(getstamp, LocalDateTime.now(), userId);
ampoule.setThUser(JSONUtil.toJsonStr(signInfoDTO));
f=true;
}
if(f){
BillDTO billDTO = new BillDTO();
BeanUtil.copyProperties(ampoule,billDTO);
billDTO.setType(ampoule.getType().equals("1")?5:7);
billDTO.setDeptId(ampoule.getDeptId());
billDTO.setRefId(ampoule.getId());
physicBillService.createBill(billDTO);
}
physicStorageAmpouleMapper.updateById(ampoule);
return getInfo(ampoule.getId());
}
@Override
public PhysicStorageAmpoule getInfo(Long id) {
PhysicStorageAmpoule ampoule = physicStorageAmpouleMapper.selectById(id);
return ampoule;
}
} }
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<select id="selectAmpoulePage" resultType="com.jmai.physic.entity.PhysicAmpoule"> <select id="selectAmpoulePage" resultType="com.jmai.physic.entity.PhysicAmpoule">
select * from physic_ampoule select * from physic_ampoule
where where
del_flag 0 del_flag = 0
<if test="req.dateTime != null "> <if test="req.dateTime != null ">
and DATE_FORMAT(create_time, '%Y-%m-%d') = DATE_FORMAT(#{req.dateTime}, '%Y-%m-%d') and DATE_FORMAT(create_time, '%Y-%m-%d') = DATE_FORMAT(#{req.dateTime}, '%Y-%m-%d')
</if> </if>
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<select id="selectAmpoulePage" resultType="com.jmai.physic.entity.PhysicStorageAmpoule"> <select id="selectAmpoulePage" resultType="com.jmai.physic.entity.PhysicStorageAmpoule">
select * from physic_storage_ampoule select * from physic_storage_ampoule
where where
del_flag 0 del_flag = 0
<if test="req.dateTime != null "> <if test="req.dateTime != null ">
and DATE_FORMAT(create_time, '%Y-%m-%d') = DATE_FORMAT(#{req.dateTime}, '%Y-%m-%d') and DATE_FORMAT(create_time, '%Y-%m-%d') = DATE_FORMAT(#{req.dateTime}, '%Y-%m-%d')
</if> </if>
......
...@@ -29,6 +29,12 @@ public class UserCreateReq { ...@@ -29,6 +29,12 @@ public class UserCreateReq {
@ApiModelProperty(value = "盐",hidden = true) @ApiModelProperty(value = "盐",hidden = true)
private String salt; private String salt;
@ApiModelProperty(value = "组织(ID)")
private Long deptId;
@ApiModelProperty(value = "用户角色(ID)列表(逗号隔开)")
private String roleList;
@ApiModelProperty(value = "状态:0 - 禁用,1 - 启用") @ApiModelProperty(value = "状态:0 - 禁用,1 - 启用")
private Integer status; private Integer status;
......
...@@ -27,7 +27,7 @@ public class UserDto extends BaseDto implements IStatus { ...@@ -27,7 +27,7 @@ public class UserDto extends BaseDto implements IStatus {
@ApiModelProperty(value = "手机号") @ApiModelProperty(value = "手机号")
private String mobile; private String mobile;
@ApiModelProperty(value = "组织") @ApiModelProperty(value = "权限范围")
private String authDeptList; private String authDeptList;
@ApiModelProperty(value = "状态:0 - 禁用,1 - 启用") @ApiModelProperty(value = "状态:0 - 禁用,1 - 启用")
......
...@@ -8,20 +8,9 @@ import lombok.Data; ...@@ -8,20 +8,9 @@ import lombok.Data;
@Data @Data
@ApiModel(value = "UserQueryReq", description = "用户查询") @ApiModel(value = "UserQueryReq", description = "用户查询")
public class UserQueryReq extends PageReq { public class UserQueryReq extends PageReq {
@ApiModelProperty(value = "用户ID")
private Long userId;
@ApiModelProperty(value = "用户名称")
private String userName;
@ApiModelProperty(value = "用户类型")
private Long userType;
@ApiModelProperty(value = "手机号")
private String mobile;
@ApiModelProperty(value = "工号")
private String workNo;
@ApiModelProperty(value = "授权仓库/站点(ID)列表(逗号隔开)")
private String warehouse;
@ApiModelProperty(value = "用户名称")
private String keyword;
@ApiModelProperty(value = "状态:0 - 禁用,1 - 启用") @ApiModelProperty(value = "状态:0 - 禁用,1 - 启用")
private Integer status; private Integer status;
} }
...@@ -279,12 +279,10 @@ public class UserServiceImpl extends AbstractService implements UserService { ...@@ -279,12 +279,10 @@ public class UserServiceImpl extends AbstractService implements UserService {
private Wrapper<SysUser> buildQuery(UserQueryReq req) { private Wrapper<SysUser> buildQuery(UserQueryReq req) {
return Wrappers.lambdaQuery(SysUser.class) return Wrappers.lambdaQuery(SysUser.class)
.eq(ObjectUtil.isNotEmpty(req.getUserId()), SysUser::getId, req.getUserId()) .like(ObjectUtil.isNotEmpty(req.getKeyword()), SysUser::getName, req.getKeyword()).or()
.like(ObjectUtil.isNotEmpty(req.getUserName()), SysUser::getName, req.getUserName()) .eq(ObjectUtil.isNotEmpty(req.getKeyword()), SysUser::getMobile, req.getKeyword())
.eq(ObjectUtil.isNotEmpty(req.getUserType()), SysUser::getType, req.getUserType())
// 过滤非系统管理员 // 过滤非系统管理员
.ne(!SpringContextUtils.isPlatformAdmin(), SysUser::getType, PLATFORM_ADMIN.getCode()) .ne(!SpringContextUtils.isPlatformAdmin(), SysUser::getType, PLATFORM_ADMIN.getCode())
.like(ObjectUtil.isNotEmpty(req.getMobile()), SysUser::getMobile, req.getMobile())
.eq(ObjectUtil.isNotEmpty(req.getStatus()), SysUser::getStatus, req.getStatus()); .eq(ObjectUtil.isNotEmpty(req.getStatus()), SysUser::getStatus, req.getStatus());
} }
...@@ -347,9 +345,10 @@ public class UserServiceImpl extends AbstractService implements UserService { ...@@ -347,9 +345,10 @@ public class UserServiceImpl extends AbstractService implements UserService {
}); });
// 处理密码 // 处理密码
String salt = PasswordUtil.newSalt(); String salt = PasswordUtil.newSalt();
String password = req.getPassword(); String password = SecureUtil.md5("123456");
String hash = PasswordUtil.hash(salt, password); String hash = PasswordUtil.hash(salt, password);
String md5Password = isMD5(password) ? SecureUtil.md5(hash) : ""; String md5Password = SecureUtil.md5(hash);
// 不能新建超管 // 不能新建超管
Long userType = Optional.ofNullable(req.getUserType()) Long userType = Optional.ofNullable(req.getUserType())
...@@ -364,7 +363,8 @@ public class UserServiceImpl extends AbstractService implements UserService { ...@@ -364,7 +363,8 @@ public class UserServiceImpl extends AbstractService implements UserService {
user.setSalt(salt); user.setSalt(salt);
user.setPassword(md5Password); user.setPassword(md5Password);
user.setStatus(Optional.ofNullable(req.getStatus()).orElse(StatusEnum.ACTIVE.getCode())); user.setStatus(Optional.ofNullable(req.getStatus()).orElse(StatusEnum.ACTIVE.getCode()));
user.setRoleList(req.getRoleList());
user.setDeptId(req.getDeptId());
userMapper.insert(user); userMapper.insert(user);
return convertTo(user); return convertTo(user);
......
...@@ -5167,3 +5167,916 @@ com.jmai.api.exception.ServiceException: 401,token失效,请重新登录。 ...@@ -5167,3 +5167,916 @@ com.jmai.api.exception.ServiceException: 401,token失效,请重新登录。
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750) at java.lang.Thread.run(Thread.java:750)
[jmai:38098::] 2025-11-26 18:02:53.101[ERROR] 23320 [849f5bd307404b95a9ab34de7ff81599] [http-nio-38098-exec-9:270359] [com.jmai.sys.exception.ServiceExceptionHandler.handleException:129] Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1087)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:665)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at com.jmai.sys.config.web.filter.TraceFilter.doFilter(TraceFilter.java:33)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750)
Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._fromEmptyString(JSR310DeserializerBase.java:112)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer._fromString(LocalDateDeserializer.java:147)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:90)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:36)
at com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:288)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4218)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3267)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.readJavaType(AbstractJackson2HttpMessageConverter.java:380)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.read(AbstractJackson2HttpMessageConverter.java:343)
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:185)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:160)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:133)
at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:122)
at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:179)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:146)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)
... 46 common frames omitted
[jmai:38098::] 2025-11-26 18:03:38.399[ERROR] 23320 [b4a5165e410047f1b0d30bd50546291d] [http-nio-38098-exec-10:315657] [com.jmai.sys.exception.ServiceExceptionHandler.handleException:129] Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1087)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:665)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at com.jmai.sys.config.web.filter.TraceFilter.doFilter(TraceFilter.java:33)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750)
Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._fromEmptyString(JSR310DeserializerBase.java:112)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer._fromString(LocalDateDeserializer.java:147)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:90)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:36)
at com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:288)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4218)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3267)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.readJavaType(AbstractJackson2HttpMessageConverter.java:380)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.read(AbstractJackson2HttpMessageConverter.java:343)
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:185)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:160)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:133)
at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:122)
at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:179)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:146)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)
... 46 common frames omitted
[jmai:38098::] 2025-11-26 18:03:43.917[ERROR] 23320 [936e528f5c2249478408c1ea57b22300] [http-nio-38098-exec-2:321175] [com.jmai.sys.exception.ServiceExceptionHandler.handleException:129] Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1087)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:665)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at com.jmai.sys.config.web.filter.TraceFilter.doFilter(TraceFilter.java:33)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750)
Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._fromEmptyString(JSR310DeserializerBase.java:112)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer._fromString(LocalDateDeserializer.java:147)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:90)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:36)
at com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:288)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4218)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3267)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.readJavaType(AbstractJackson2HttpMessageConverter.java:380)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.read(AbstractJackson2HttpMessageConverter.java:343)
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:185)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:160)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:133)
at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:122)
at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:179)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:146)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)
... 46 common frames omitted
[jmai:38098::] 2025-11-26 18:04:05.742[ERROR] 23320 [0429a64ccbbf4a3087bc191505d18eb9] [http-nio-38098-exec-5:343000] [com.jmai.sys.exception.ServiceExceptionHandler.handleException:129] Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1087)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:665)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at com.jmai.sys.config.web.filter.TraceFilter.doFilter(TraceFilter.java:33)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750)
Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._fromEmptyString(JSR310DeserializerBase.java:112)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer._fromString(LocalDateDeserializer.java:147)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:90)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:36)
at com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:288)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4218)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3267)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.readJavaType(AbstractJackson2HttpMessageConverter.java:380)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.read(AbstractJackson2HttpMessageConverter.java:343)
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:185)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:160)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:133)
at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:122)
at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:179)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:146)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)
... 46 common frames omitted
[jmai:38098::] 2025-11-26 18:04:51.364[ERROR] 23320 [8202188e054c4a53a806d94083d2e35b] [http-nio-38098-exec-4:388622] [com.jmai.sys.exception.ServiceExceptionHandler.handleException:129] Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1087)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:665)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at com.jmai.sys.config.web.filter.TraceFilter.doFilter(TraceFilter.java:33)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750)
Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._fromEmptyString(JSR310DeserializerBase.java:112)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer._fromString(LocalDateDeserializer.java:147)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:90)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:36)
at com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:288)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4218)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3267)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.readJavaType(AbstractJackson2HttpMessageConverter.java:380)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.read(AbstractJackson2HttpMessageConverter.java:343)
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:185)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:160)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:133)
at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:122)
at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:179)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:146)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)
... 46 common frames omitted
[jmai:38098::] 2025-11-26 18:05:09.690[ERROR] 23320 [9c0427512fd2415692128aa6c44045d8] [http-nio-38098-exec-6:406948] [com.jmai.sys.exception.ServiceExceptionHandler.handleException:129]
### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '0
order by create_time desc) TOTAL' at line 3
### The error may exist in file [D:\infy\jmai-platform\jmai-physic\target\classes\mapper\PhysicAmpouleMapper.xml]
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT COUNT(1) FROM (select * from physic_ampoule where del_flag 0 order by create_time desc) TOTAL
### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '0
order by create_time desc) TOTAL' at line 3
; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '0
order by create_time desc) TOTAL' at line 3
org.springframework.jdbc.BadSqlGrammarException:
### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '0
order by create_time desc) TOTAL' at line 3
### The error may exist in file [D:\infy\jmai-platform\jmai-physic\target\classes\mapper\PhysicAmpouleMapper.xml]
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT COUNT(1) FROM (select * from physic_ampoule where del_flag 0 order by create_time desc) TOTAL
### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '0
order by create_time desc) TOTAL' at line 3
; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '0
order by create_time desc) TOTAL' at line 3
at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:236)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:73)
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440)
at com.sun.proxy.$Proxy121.selectList(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:223)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForIPage(MybatisMapperMethod.java:122)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:87)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
at com.sun.proxy.$Proxy122.selectAmpoulePage(Unknown Source)
at com.jmai.physic.service.impl.PhysicAmpouleServiceImpl.listPage(PhysicAmpouleServiceImpl.java:48)
at com.jmai.physic.service.impl.PhysicAmpouleServiceImpl$$FastClassBySpringCGLIB$$4d8468c7.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)
at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703)
at com.jmai.physic.service.impl.PhysicAmpouleServiceImpl$$EnhancerBySpringCGLIB$$dfd4ecdd.listPage(<generated>)
at com.jmai.physic.controller.PhysicAmpouleController.listPage(PhysicAmpouleController.java:47)
at com.jmai.physic.controller.PhysicAmpouleController$$FastClassBySpringCGLIB$$9cf4e2ed.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)
at org.springframework.aop.framework.adapter.MethodBeforeAdviceInterceptor.invoke(MethodBeforeAdviceInterceptor.java:58)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)
at com.jmai.physic.controller.PhysicAmpouleController$$EnhancerBySpringCGLIB$$c9c0ca6c.listPage(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:665)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at com.jmai.sys.config.web.filter.TraceFilter.doFilter(TraceFilter.java:33)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750)
Caused by: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '0
order by create_time desc) TOTAL' at line 3
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:121)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:916)
at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:354)
at com.p6spy.engine.wrapper.PreparedStatementWrapper.execute(PreparedStatementWrapper.java:362)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59)
at com.sun.proxy.$Proxy215.execute(Unknown Source)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:63)
at com.sun.proxy.$Proxy213.query(Unknown Source)
at com.baomidou.mybatisplus.core.executor.MybatisSimpleExecutor.doQuery(MybatisSimpleExecutor.java:69)
at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325)
at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
at com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor.willDoQuery(PaginationInnerInterceptor.java:137)
at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:58)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:61)
at com.sun.proxy.$Proxy212.query(Unknown Source)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426)
... 85 common frames omitted
[jmai:38098::] 2025-11-26 18:06:50.546[ERROR] 6096 [de560cd57c1242459e91bff04c9c1ac1] [http-nio-38098-exec-2:46328] [com.jmai.sys.exception.ServiceExceptionHandler.handleException:129] Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1087)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:665)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at com.jmai.sys.config.web.filter.TraceFilter.doFilter(TraceFilter.java:33)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750)
Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._fromEmptyString(JSR310DeserializerBase.java:112)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer._fromString(LocalDateDeserializer.java:147)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:90)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:36)
at com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:288)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4218)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3267)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.readJavaType(AbstractJackson2HttpMessageConverter.java:380)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.read(AbstractJackson2HttpMessageConverter.java:343)
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:185)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:160)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:133)
at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:122)
at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:179)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:146)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)
... 46 common frames omitted
[jmai:38098::] 2025-11-26 18:06:56.752[ERROR] 6096 [7a81cd986d8f4a3ca6c29e99f4e6598d] [http-nio-38098-exec-3:52534] [com.jmai.sys.exception.ServiceExceptionHandler.handleException:129] Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1087)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:665)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at com.jmai.sys.config.web.filter.TraceFilter.doFilter(TraceFilter.java:33)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750)
Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._checkFromStringCoercion(Lcom/fasterxml/jackson/databind/DeserializationContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/cfg/CoercionAction;
at com.fasterxml.jackson.datatype.jsr310.deser.JSR310DeserializerBase._fromEmptyString(JSR310DeserializerBase.java:112)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer._fromString(LocalDateDeserializer.java:147)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:90)
at com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer.deserialize(LocalDateDeserializer.java:36)
at com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:288)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4218)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3267)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.readJavaType(AbstractJackson2HttpMessageConverter.java:380)
at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.read(AbstractJackson2HttpMessageConverter.java:343)
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:185)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:160)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:133)
at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:122)
at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:179)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:146)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)
... 46 common frames omitted
[jmai:38098::] 2025-11-27 16:11:39.352[ERROR] 19900 [840e24ff0ebc4fdcb766b040ffbd944c] [http-nio-38098-exec-1:35610] [com.jmai.sys.exception.ServiceExceptionHandler.handleException:91] ServiceException:500 -- 用户名已存在 -- {}
com.jmai.api.exception.ServiceException: 500,用户名已存在
at com.jmai.sys.service.impl.UserServiceImpl.lambda$createUser$6(UserServiceImpl.java:342)
at java.util.Optional.ifPresent(Optional.java:159)
at com.jmai.sys.service.impl.UserServiceImpl.createUser(UserServiceImpl.java:341)
at com.jmai.sys.service.impl.UserServiceImpl$$FastClassBySpringCGLIB$$237a6d0c.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)
at com.jmai.sys.service.impl.UserServiceImpl$$EnhancerBySpringCGLIB$$7ee3e79d.createUser(<generated>)
at com.jmai.sys.controller.UserController.createUser(UserController.java:58)
at com.jmai.sys.controller.UserController$$FastClassBySpringCGLIB$$42254022.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)
at org.springframework.aop.framework.adapter.MethodBeforeAdviceInterceptor.invoke(MethodBeforeAdviceInterceptor.java:58)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707)
at com.jmai.sys.controller.UserController$$EnhancerBySpringCGLIB$$e8fcc195.createUser(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:665)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at com.jmai.sys.config.web.filter.TraceFilter.doFilter(TraceFilter.java:33)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750)
[jmai:38098::] 2025-11-27 16:13:09.992[ERROR] 25960 [] [main:7512] [s.d.s.web.plugins.DocumentationPluginsBootstrapper.scanDocumentation:98] Unable to scan documentation context 0-all
java.lang.TypeNotPresentException: Type com.jmai.sys.dto.RoleTypeDTO not present
at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:117)
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:125)
at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
at sun.reflect.generics.visitor.Reifier.reifyTypeArguments(Reifier.java:68)
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:138)
at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
at sun.reflect.generics.visitor.Reifier.reifyTypeArguments(Reifier.java:68)
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:138)
at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
at sun.reflect.generics.repository.MethodRepository.getReturnType(MethodRepository.java:68)
at java.lang.reflect.Method.getGenericReturnType(Method.java:255)
at com.fasterxml.classmate.ResolvedTypeWithMembers.resolveMethod(ResolvedTypeWithMembers.java:570)
at com.fasterxml.classmate.ResolvedTypeWithMembers.resolveMemberMethods(ResolvedTypeWithMembers.java:388)
at com.fasterxml.classmate.ResolvedTypeWithMembers.getMemberMethods(ResolvedTypeWithMembers.java:201)
at springfox.documentation.spring.web.readers.operation.HandlerMethodResolver.getMemberMethods(HandlerMethodResolver.java:151)
at springfox.documentation.spring.web.readers.operation.HandlerMethodResolver.resolvedMethod(HandlerMethodResolver.java:136)
at springfox.documentation.spring.web.readers.operation.HandlerMethodResolver.methodReturnType(HandlerMethodResolver.java:65)
at springfox.documentation.spring.web.WebMvcRequestHandler.getReturnType(WebMvcRequestHandler.java:147)
at springfox.documentation.spi.service.contexts.RequestMappingContext.getReturnType(RequestMappingContext.java:216)
at springfox.documentation.spi.service.contexts.Orderings.qualifiedMethodName(Orderings.java:76)
at java.util.Comparator.lambda$comparing$77a9974f$1(Comparator.java:469)
at java.util.TimSort.countRunAndMakeAscending(TimSort.java:355)
at java.util.TimSort.sort(TimSort.java:220)
at java.util.Arrays.sort(Arrays.java:1512)
at java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.java:348)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:483)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
at springfox.documentation.spring.web.scanners.ApiListingScanner.sortedByMethods(ApiListingScanner.java:229)
at springfox.documentation.spring.web.scanners.ApiListingScanner.scan(ApiListingScanner.java:152)
at springfox.documentation.spring.web.scanners.ApiDocumentationScanner.scan(ApiDocumentationScanner.java:67)
at springfox.documentation.spring.web.plugins.AbstractDocumentationPluginsBootstrapper.scanDocumentation(AbstractDocumentationPluginsBootstrapper.java:96)
at springfox.documentation.spring.web.plugins.AbstractDocumentationPluginsBootstrapper.bootstrapDocumentationPlugins(AbstractDocumentationPluginsBootstrapper.java:82)
at springfox.documentation.spring.web.plugins.DocumentationPluginsBootstrapper.start(DocumentationPluginsBootstrapper.java:100)
at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:179)
at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54)
at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:357)
at java.lang.Iterable.forEach(Iterable.java:75)
at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:156)
at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:124)
at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:946)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:594)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:732)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:409)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:164)
at com.jmai.Application.main(Application.java:22)
Caused by: java.lang.ClassNotFoundException: com.jmai.sys.dto.RoleTypeDTO
at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:359)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:114)
... 49 common frames omitted
[jmai:38098::] 2025-11-27 16:13:10.073[ERROR] 25960 [] [main:7593] [s.d.s.web.plugins.DocumentationPluginsBootstrapper.scanDocumentation:98] Unable to scan documentation context 1-sys
java.lang.TypeNotPresentException: Type com.jmai.sys.dto.RoleTypeDTO not present
at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:117)
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:125)
at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
at sun.reflect.generics.visitor.Reifier.reifyTypeArguments(Reifier.java:68)
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:138)
at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
at sun.reflect.generics.visitor.Reifier.reifyTypeArguments(Reifier.java:68)
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:138)
at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
at sun.reflect.generics.repository.MethodRepository.getReturnType(MethodRepository.java:68)
at java.lang.reflect.Method.getGenericReturnType(Method.java:255)
at com.fasterxml.classmate.ResolvedTypeWithMembers.resolveMethod(ResolvedTypeWithMembers.java:570)
at com.fasterxml.classmate.ResolvedTypeWithMembers.resolveMemberMethods(ResolvedTypeWithMembers.java:388)
at com.fasterxml.classmate.ResolvedTypeWithMembers.getMemberMethods(ResolvedTypeWithMembers.java:201)
at springfox.documentation.spring.web.readers.operation.HandlerMethodResolver.getMemberMethods(HandlerMethodResolver.java:151)
at springfox.documentation.spring.web.readers.operation.HandlerMethodResolver.resolvedMethod(HandlerMethodResolver.java:136)
at springfox.documentation.spring.web.readers.operation.HandlerMethodResolver.methodReturnType(HandlerMethodResolver.java:65)
at springfox.documentation.spring.web.WebMvcRequestHandler.getReturnType(WebMvcRequestHandler.java:147)
at springfox.documentation.spi.service.contexts.RequestMappingContext.getReturnType(RequestMappingContext.java:216)
at springfox.documentation.spi.service.contexts.Orderings.qualifiedMethodName(Orderings.java:76)
at java.util.Comparator.lambda$comparing$77a9974f$1(Comparator.java:469)
at java.util.TimSort.countRunAndMakeAscending(TimSort.java:355)
at java.util.TimSort.sort(TimSort.java:220)
at java.util.Arrays.sort(Arrays.java:1512)
at java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.java:348)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:483)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
at springfox.documentation.spring.web.scanners.ApiListingScanner.sortedByMethods(ApiListingScanner.java:229)
at springfox.documentation.spring.web.scanners.ApiListingScanner.scan(ApiListingScanner.java:152)
at springfox.documentation.spring.web.scanners.ApiDocumentationScanner.scan(ApiDocumentationScanner.java:67)
at springfox.documentation.spring.web.plugins.AbstractDocumentationPluginsBootstrapper.scanDocumentation(AbstractDocumentationPluginsBootstrapper.java:96)
at springfox.documentation.spring.web.plugins.AbstractDocumentationPluginsBootstrapper.bootstrapDocumentationPlugins(AbstractDocumentationPluginsBootstrapper.java:82)
at springfox.documentation.spring.web.plugins.DocumentationPluginsBootstrapper.start(DocumentationPluginsBootstrapper.java:100)
at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:179)
at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54)
at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:357)
at java.lang.Iterable.forEach(Iterable.java:75)
at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:156)
at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:124)
at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:946)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:594)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:732)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:409)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:164)
at com.jmai.Application.main(Application.java:22)
Caused by: java.lang.ClassNotFoundException: com.jmai.sys.dto.RoleTypeDTO
at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:359)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:114)
... 49 common frames omitted
...@@ -934,3 +934,57 @@ ...@@ -934,3 +934,57 @@
1763971838616|35|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0 1763971838616|35|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1763971838677|35|statement|connection 0|SELECT COUNT(1) FROM physic_apply a WHERE a.del_flag = 0|SELECT COUNT(1) FROM physic_apply a WHERE a.del_flag = 0 1763971838677|35|statement|connection 0|SELECT COUNT(1) FROM physic_apply a WHERE a.del_flag = 0|SELECT COUNT(1) FROM physic_apply a WHERE a.del_flag = 0
1763971838861|182|statement|connection 0|select a.id as physicApplyId, a.*, (select dept_name from sys_dept d where d.id = a.ly_dept_id) as lyDeptName ,(select dept_name from sys_dept d where d.id = a.fy_dept_id) as fyDeptName from physic_apply a where a.del_flag =0 order by a.create_time desc LIMIT ?|select a.id as physicApplyId, a.*, (select dept_name from sys_dept d where d.id = a.ly_dept_id) as lyDeptName ,(select dept_name from sys_dept d where d.id = a.fy_dept_id) as fyDeptName from physic_apply a where a.del_flag =0 order by a.create_time desc LIMIT 10 1763971838861|182|statement|connection 0|select a.id as physicApplyId, a.*, (select dept_name from sys_dept d where d.id = a.ly_dept_id) as lyDeptName ,(select dept_name from sys_dept d where d.id = a.fy_dept_id) as fyDeptName from physic_apply a where a.del_flag =0 order by a.create_time desc LIMIT ?|select a.id as physicApplyId, a.*, (select dept_name from sys_dept d where d.id = a.ly_dept_id) as lyDeptName ,(select dept_name from sys_dept d where d.id = a.fy_dept_id) as fyDeptName from physic_apply a where a.del_flag =0 order by a.create_time desc LIMIT 10
1764125654950|76|statement|connection 0|INSERT INTO sys_file ( id, file_name, file_type, file_type_name, original_file_name, original_mime_type, bucket, platform, del_flag, create_by, create_time, update_by, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )|INSERT INTO sys_file ( id, file_name, file_type, file_type_name, original_file_name, original_mime_type, bucket, platform, del_flag, create_by, create_time, update_by, update_time ) VALUES ( 1993513600714805248, '1993513600714805248', 9999, '其他', '无镜.txt', '.txt', '', 'local', 0, NULL, '2025-11-26T10:54:14.794', NULL, '2025-11-26T10:54:14.795' )
1764125655001|45|statement|connection 0|SELECT id,file_name,file_type,file_type_name,e_tag,original_file_name,original_mime_type,bucket,platform,del_flag,create_by,create_time,update_by,update_time FROM sys_file WHERE id=? AND del_flag=0|SELECT id,file_name,file_type,file_type_name,e_tag,original_file_name,original_mime_type,bucket,platform,del_flag,create_by,create_time,update_by,update_time FROM sys_file WHERE id=1993513600714805248 AND del_flag=0
1764125679104|36|statement|connection 0|SELECT id,file_name,file_type,file_type_name,e_tag,original_file_name,original_mime_type,bucket,platform,del_flag,create_by,create_time,update_by,update_time FROM sys_file WHERE id=? AND del_flag=0|SELECT id,file_name,file_type,file_type_name,e_tag,original_file_name,original_mime_type,bucket,platform,del_flag,create_by,create_time,update_by,update_time FROM sys_file WHERE id=1993513600714805248 AND del_flag=0
1764125679143|36|statement|connection 0|SELECT id,file_name,file_type,file_type_name,e_tag,original_file_name,original_mime_type,bucket,platform,del_flag,create_by,create_time,update_by,update_time FROM sys_file WHERE id=? AND del_flag=0|SELECT id,file_name,file_type,file_type_name,e_tag,original_file_name,original_mime_type,bucket,platform,del_flag,create_by,create_time,update_by,update_time FROM sys_file WHERE id=1993513600714805248 AND del_flag=0
1764151504677|48|statement|connection 0|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = ?)|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = '70a945e9-e965-44c5-9c3d-3cfa1950d53a')
1764151504740|40|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1764151509658|49|statement|connection 0|SELECT COUNT(1) FROM (select * from physic_ampoule where del_flag 0 order by create_time desc) TOTAL|SELECT COUNT(1) FROM (select * from physic_ampoule where del_flag 0 order by create_time desc) TOTAL
1764151580227|47|statement|connection 0|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = ?)|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = '70a945e9-e965-44c5-9c3d-3cfa1950d53a')
1764151580290|39|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1764151585419|37|statement|connection 0|SELECT COUNT(1) FROM physic_ampoule WHERE del_flag = 0|SELECT COUNT(1) FROM physic_ampoule WHERE del_flag = 0
1764151676744|44|statement|connection 0|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = ?)|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = '70a945e9-e965-44c5-9c3d-3cfa1950d53a')
1764151676805|38|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1764151683711|40|statement|connection 0|SELECT COUNT(1) FROM physic_ampoule WHERE del_flag = 0 AND DATE_FORMAT(create_time, '%Y-%m-%d') = DATE_FORMAT(?, '%Y-%m-%d') AND dept_id = ?|SELECT COUNT(1) FROM physic_ampoule WHERE del_flag = 0 AND DATE_FORMAT(create_time, '%Y-%m-%d') = DATE_FORMAT('', '%Y-%m-%d') AND dept_id = 0
1764151707234|36|statement|connection 0|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = ?)|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = '70a945e9-e965-44c5-9c3d-3cfa1950d53a')
1764151707273|36|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1764151711148|40|statement|connection 0|SELECT COUNT(1) FROM physic_storage_ampoule WHERE del_flag = 0 AND DATE_FORMAT(create_time, '%Y-%m-%d') = DATE_FORMAT(?, '%Y-%m-%d') AND dept_id = ?|SELECT COUNT(1) FROM physic_storage_ampoule WHERE del_flag = 0 AND DATE_FORMAT(create_time, '%Y-%m-%d') = DATE_FORMAT('', '%Y-%m-%d') AND dept_id = 0
1764230632140|44|statement|connection 0|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = ?)|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = 'fa1c936f-48fb-4d25-8d4e-8c93df87794d')
1764230632198|37|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1764230632311|36|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name = ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name = 'qiu2')
1764230632350|36|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (mobile = ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (mobile = '13694217593')
1764230632438|74|statement|connection 0|INSERT INTO sys_user ( id, name, mobile, salt, password, type, status, del_flag, create_by, create_time, update_by, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )|INSERT INTO sys_user ( id, name, mobile, salt, password, type, status, del_flag, create_by, create_time, update_by, update_time ) VALUES ( 1993953908686954497, 'qiu2', '13694217593', '0qKAmDg9OT', 'ced4a54de4f8dcc98ec174ba254effa4', 2, 1, 0, 1000, '2025-11-27T16:03:52.363', 1000, '2025-11-27T16:03:52.363' )
1764230632475|35|commit|connection 0||
1764230653579|35|statement|connection 0|SELECT id,biz_type,biz_type_name,biz_type_alias,biz_key,biz_key_name,biz_key_alias,biz_key_desc,biz_value,biz_value_ext,status,version,del_flag,create_by,create_time,update_by,update_time FROM sys_config WHERE del_flag=0 AND (biz_type = ? AND biz_key = ?)|SELECT id,biz_type,biz_type_name,biz_type_alias,biz_key,biz_key_name,biz_key_alias,biz_key_desc,biz_value,biz_value_ext,status,version,del_flag,create_by,create_time,update_by,update_time FROM sys_config WHERE del_flag=0 AND (biz_type = 'sys.user.setting' AND biz_key = 'userAuth')
1764230653630|35|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (mobile = ? AND status = ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (mobile = '13694217593' AND status = 1)
1764230653670|36|statement|connection 0|SELECT id,biz_type,biz_type_name,biz_type_alias,biz_key,biz_key_name,biz_key_alias,biz_key_desc,biz_value,biz_value_ext,status,version,del_flag,create_by,create_time,update_by,update_time FROM sys_config WHERE del_flag=0 AND (biz_type = ? AND biz_key = ?)|SELECT id,biz_type,biz_type_name,biz_type_alias,biz_key,biz_key_name,biz_key_alias,biz_key_desc,biz_value,biz_value_ext,status,version,del_flag,create_by,create_time,update_by,update_time FROM sys_config WHERE del_flag=0 AND (biz_type = 'sys.user.setting' AND biz_key = 'userAuth')
1764230653754|72|statement|connection 0|INSERT INTO sys_user_token ( id, token, refresh_token, user_id, expiry_time, version, del_flag, create_by, create_time, update_by, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )|INSERT INTO sys_user_token ( id, token, refresh_token, user_id, expiry_time, version, del_flag, create_by, create_time, update_by, update_time ) VALUES ( 1993953998092738562, 'e07a5c39-7d61-4d26-b1a3-f62c5c046ece', '5cdc4bce-ace4-445c-93a9-4c3fb13a2cd9', 1993953908686954497, '2025-12-03T16:04:14.674', 1, 0, NULL, '2025-11-27T16:04:13.677', NULL, '2025-11-27T16:04:13.677' )
1764230959137|43|statement|connection 0|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = ?)|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = 'fa1c936f-48fb-4d25-8d4e-8c93df87794d')
1764230959195|36|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1764231010545|35|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name = ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name = 'qiu4')
1764231010586|35|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (mobile = ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (mobile = '13694217595')
1764231012883|79|statement|connection 0|INSERT INTO sys_user ( id, name, mobile, salt, password, type, status, del_flag, create_by, create_time, update_by, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )|INSERT INTO sys_user ( id, name, mobile, salt, password, type, status, del_flag, create_by, create_time, update_by, update_time ) VALUES ( 1993955504279781378, 'qiu4', '13694217595', '0SOKtbJK1y', '371c598ba2a523bc37bff8d988d9fdbb', 2, 1, 0, 1000, '2025-11-27T16:10:12.790', 1000, '2025-11-27T16:10:12.792' )
1764231059915|35|commit|connection 0||
1764231084888|47|statement|connection 0|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = ?)|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = 'fa1c936f-48fb-4d25-8d4e-8c93df87794d')
1764231084954|43|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1764231089163|39|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name = ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name = 'qiu4')
1764231099310|38|rollback|connection 0||
1764231112841|39|statement|connection 0|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = ?)|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = 'fa1c936f-48fb-4d25-8d4e-8c93df87794d')
1764231112884|39|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1764231117964|39|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name = ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name = 'qiu6')
1764231118007|38|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (mobile = ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (mobile = '13694217596')
1764231144060|81|statement|connection 0|INSERT INTO sys_user ( id, name, mobile, salt, password, type, status, del_flag, create_by, create_time, update_by, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )|INSERT INTO sys_user ( id, name, mobile, salt, password, type, status, del_flag, create_by, create_time, update_by, update_time ) VALUES ( 1993956054543224834, 'qiu6', '13694217596', '0FIUBXrO26', 'db06c2352e1bdb53c0812f440abf1a2b', 2, 1, 0, 1000, '2025-11-27T16:12:23.976', 1000, '2025-11-27T16:12:23.976' )
1764231145862|39|commit|connection 0||
1764231277621|45|statement|connection 0|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = ?)|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = 'fa1c936f-48fb-4d25-8d4e-8c93df87794d')
1764231277678|36|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1764231280506|35|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name = ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name = 'qiu7')
1764231280545|35|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (mobile = ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (mobile = '13694217597')
1764231280643|71|statement|connection 0|INSERT INTO sys_user ( id, name, mobile, salt, password, type, dept_id, role_list, status, del_flag, create_by, create_time, update_by, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )|INSERT INTO sys_user ( id, name, mobile, salt, password, type, dept_id, role_list, status, del_flag, create_by, create_time, update_by, update_time ) VALUES ( 1993956627447398401, 'qiu7', '13694217597', '0H8cxOsbrt', 'ee3d2bca00524e06d376ac3be8a72f6d', 2, 3, '1,5', 1, 0, 1000, '2025-11-27T16:14:40.567', 1000, '2025-11-27T16:14:40.568' )
1764231281761|42|commit|connection 0||
1764231961934|45|statement|connection 0|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = ?)|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = 'fa1c936f-48fb-4d25-8d4e-8c93df87794d')
1764231961993|39|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1764231993775|39|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name LIKE ? AND mobile = ? AND type <> ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name LIKE '%qiu%' AND mobile = 'qiu' AND type <> 0)
1764232049503|48|statement|connection 0|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = ?)|SELECT id,token,refresh_token,user_id,expiry_time,version,del_flag,create_by,create_time,update_by,update_time FROM sys_user_token WHERE del_flag=0 AND (token = 'fa1c936f-48fb-4d25-8d4e-8c93df87794d')
1764232049568|41|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=? AND del_flag=0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE id=1000 AND del_flag=0
1764232056416|42|statement|connection 0|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name LIKE ? OR mobile = ? AND type <> ?)|SELECT id,name,mobile,salt,password,type,auth_dept_list,dept_id,role_list,status,ext,del_flag,create_by,create_time,update_by,update_time FROM sys_user WHERE del_flag=0 AND (name LIKE '%qiu%' OR mobile = 'qiu' AND type <> 0)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment