This commit is contained in:
LiJianZhao 2025-04-21 17:02:23 +08:00
parent b4fdc67811
commit 3889e5bcbc
107 changed files with 1765 additions and 270 deletions

View File

@ -1,4 +1,5 @@
package com.syjiaer.clinic.server.common.api.input;
import com.syjiaer.clinic.server.common.api.annotations.IMField;
import lombok.Getter;
import lombok.Setter;
@ -6,9 +7,6 @@ import lombok.ToString;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
@Getter
@Setter

View File

@ -6,9 +6,6 @@ import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.time.LocalDate;
@Getter
@Setter
@ToString

View File

@ -7,7 +7,6 @@ import lombok.ToString;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;

View File

@ -6,11 +6,6 @@ import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
@Getter
@Setter
@ToString

View File

@ -6,8 +6,6 @@ import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.time.LocalDate;
@Getter
@Setter
@ToString

View File

@ -42,9 +42,9 @@ public class MvcInterceptor implements HandlerInterceptor {
setHeaders(request);
// 排除 /user/login 接口的校验
if (!request.getRequestURI().endsWith("/manager/user/login")) {
return checkManage(response);
}
// if (!request.getRequestURI().endsWith("/manager/user/login")) {
// return checkManage(response);
// }
return true;
}

View File

@ -11,7 +11,6 @@ import java.util.ArrayList;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
import java.util.zip.ZipOutputStream;
@Component
public class FileUtil {

View File

@ -17,11 +17,11 @@ import java.nio.file.Files;
import java.nio.file.Paths;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.HashMap;
import java.util.Map;
import java.util.Random;
import java.util.UUID;
import java.util.logging.Logger;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import java.util.zip.ZipInputStream;
@Slf4j
@Component

View File

@ -0,0 +1,41 @@
package com.syjiaer.clinic.server.controller.common;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.service.common.FileService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.Resource;
import org.springframework.core.io.UrlResource;
import org.springframework.http.HttpHeaders;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.UUID;
@RestController
@RequestMapping("file")
public class FileController extends BaseController {
@Autowired
private FileService fileService;
@RequestMapping("/upload")
public Result<?> handleFileUpload(@RequestParam("file") MultipartFile file) {
return success(fileService.uploadFile(file));
}
@GetMapping("/getImage/{fileName}")
public ResponseEntity<Resource> getImage(@PathVariable String fileName) {
return fileService.getImage(fileName);
}
}

View File

@ -0,0 +1,50 @@
package com.syjiaer.clinic.server.controller.common;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
import com.syjiaer.clinic.server.service.common.ManagerUserService;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.security.Keys;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.crypto.SecretKey;
import java.util.Date;
import java.util.Map;
/**
* <p>
* 前端控制器
* </p>
*
* @author NiuZiYuan
* @since 2025-02-28
*/
@RestController
@RequestMapping("/manager/user")
public class ManagerUserController extends BaseController {
@Autowired
private ManagerUserService managerUserService;
@PostMapping("login")
public Result<String> login() {
Map<String, Object> parms = getParms();
String username = (String) parms.get("username");
String password = (String) parms.get("password");
return success(managerUserService.login(username, password));
}
//验证token
@PostMapping("verify")
public Result<ManagerUser> verify() {
return success(managerUserService.verify());
}
}

View File

@ -1,6 +1,5 @@
package com.syjiaer.clinic.server.controller.goods;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.entity.goods.GoodsCate;
@ -13,7 +12,6 @@ import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* <p>

View File

@ -2,7 +2,6 @@ package com.syjiaer.clinic.server.controller.goods;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.constants.Constants;
import com.syjiaer.clinic.server.common.enums.GoodsPricingModelEnum;
import com.syjiaer.clinic.server.common.util.ParmsUtil;
import com.syjiaer.clinic.server.common.vo.Page;
@ -13,14 +12,11 @@ import com.syjiaer.clinic.server.entity.goods.GoodsView;
import com.syjiaer.clinic.server.entity.goods.dto.GoodsQuery;
import com.syjiaer.clinic.server.entity.goods.vo.GoodsDetailVo;
import com.syjiaer.clinic.server.service.goods.GoodsService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;

View File

@ -1,11 +1,7 @@
package com.syjiaer.clinic.server.controller.inventory;
import com.alibaba.fastjson2.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.constants.Constants;
import com.syjiaer.clinic.server.common.enums.InventorySocialTypeEnum;
import com.syjiaer.clinic.server.common.enums.InventoryTypeEnum;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
@ -18,9 +14,6 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
import java.util.Map;

View File

@ -1,10 +1,5 @@
package com.syjiaer.clinic.server.controller.inventory;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.constants.Constants;
import com.syjiaer.clinic.server.common.enums.InventorySocialTypeEnum;
import com.syjiaer.clinic.server.common.enums.InventoryTypeEnum;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
@ -16,9 +11,6 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
import java.util.Map;

View File

@ -1,17 +1,11 @@
package com.syjiaer.clinic.server.controller.inventory;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.syjiaer.clinic.server.common.enums.InventorySocialTypeEnum;
import com.syjiaer.clinic.server.common.enums.InventoryTypeEnum;
import com.syjiaer.clinic.server.common.enums.UploadStatusEnum;
import com.syjiaer.clinic.server.common.util.DateUtil;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.entity.goods.Goods;
import com.syjiaer.clinic.server.entity.inventory.Inventory;
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
import com.syjiaer.clinic.server.service.goods.GoodsService;
import com.syjiaer.clinic.server.service.inventory.InventoryPurchaseService;
import com.syjiaer.clinic.server.service.inventory.InventoryService;
@ -21,7 +15,6 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.HashMap;

View File

@ -1,13 +1,6 @@
package com.syjiaer.clinic.server.controller.inventory;
import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.syjiaer.clinic.server.common.constants.Constants;
import com.syjiaer.clinic.server.common.enums.InventorySocialTypeEnum;
import com.syjiaer.clinic.server.common.enums.InventoryTypeEnum;
import com.syjiaer.clinic.server.common.enums.UploadStatusEnum;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
@ -21,8 +14,6 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

View File

@ -1,6 +1,5 @@
package com.syjiaer.clinic.server.controller.inventory;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.constants.Constants;
import com.syjiaer.clinic.server.common.vo.Page;
@ -13,9 +12,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@RestController
@RequestMapping("/inventory/supplier")
public class InventorySupplierController extends BaseController {

View File

@ -1,6 +1,5 @@
package com.syjiaer.clinic.server.controller.item;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
@ -11,7 +10,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;

View File

@ -1,6 +1,5 @@
package com.syjiaer.clinic.server.controller.item;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
@ -12,8 +11,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
@RequestMapping("/item/group")
public class ItemGroupController extends BaseController {

View File

@ -1,18 +1,14 @@
package com.syjiaer.clinic.server.controller.medical;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.enums.MedicalRecordDetailTypeEnum;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.entity.medical.dto.MedicalRecordSaveDto;
import com.syjiaer.clinic.server.entity.medical.dto.MedicalRecordVo;
import com.syjiaer.clinic.server.service.medical.MedicalRecordService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.List;
@RestController

View File

@ -1,6 +1,5 @@
package com.syjiaer.clinic.server.controller.organization;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;

View File

@ -1,9 +1,7 @@
package com.syjiaer.clinic.server.controller.organization;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.util.StringUtil;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;

View File

@ -1,24 +1,18 @@
package com.syjiaer.clinic.server.controller.patient;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.constants.Constants;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.util.DateUtil;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.entity.patient.PatientInfo;
import com.syjiaer.clinic.server.entity.patient.PatientRegistration;
import com.syjiaer.clinic.server.entity.patient.dto.RegistrationQuery;
import com.syjiaer.clinic.server.entity.patient.vo.PatientAndRegistrationInfoVo;
import com.syjiaer.clinic.server.service.patient.PatientInfoService;
import com.syjiaer.clinic.server.service.patient.PatientRegistrationService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.time.LocalDate;
import java.util.List;
@RestController
@ -49,8 +43,9 @@ public class RegistrationController extends BaseController {
public Result<Page<PatientRegistration>> list() {
int page = parmsUtil.getInteger("page", "页码不能为空");
int size = parmsUtil.getInteger("size", "页容量不能为空");
String date = parmsUtil.getString("date");
Page<PatientRegistration> pageResult = patientRegistrationService.listPage(page, size, date);
String startDate = parmsUtil.getString("startDate");
String endDate = parmsUtil.getString("endDate");
Page<PatientRegistration> pageResult = patientRegistrationService.listPage(page, size, startDate,endDate);
return success(pageResult);
}

View File

@ -1,8 +0,0 @@
package com.syjiaer.clinic.server.controller.social;
import com.syjiaer.clinic.server.controller.BaseController;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class SocialController extends BaseController {
}

View File

@ -0,0 +1,103 @@
package com.syjiaer.clinic.server.controller.social;
import com.syjiaer.clinic.server.common.util.DictoryUtil;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.entity.social.SocialDirectory;
import com.syjiaer.clinic.server.entity.social.vo.SocialDirectoryView;
import com.syjiaer.clinic.server.service.social.SocialDirectoryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* <p>
* 前端控制器
* </p>
*
* @author NiuZiYuan
* @since 2025-02-19
*/
@RestController
@RequestMapping("/social/directory")
public class SocialDirectoryController extends BaseController {
@Autowired
private SocialDirectoryService socialDirectoryService;
@Autowired
private DictoryUtil dictoryUtil;
@RequestMapping("search")
public Result<Object> search() {
Map<String, Object> parms = getParms();
String keyword = parmsUtil.getString("keyword","请输入搜索关键词");
String produce= parmsUtil.getString("produce");
int page = (Integer) parms.getOrDefault("page", 1);
int size = (Integer) parms.getOrDefault("size", 10);
return success(socialDirectoryService.search(keyword, Arrays.asList(1305, 1321), page, size));
}
@RequestMapping("getByCode")
public Result<SocialDirectoryView> getByCode() {
String code = parmsUtil.getString("code");
return success(socialDirectoryService.getByCode(code));
}
@PostMapping("download")
public Result<Object> download() {
Map<String, Object> parms = getParms();
String ver = (String) parms.get("ver");
int type = (Integer) parms.get("type");
if (ver == null || ver.trim().isEmpty()) {
// 处理参数为空的情况这里假设返回一个错误结果
return error("参数 ver 不能为空");
}
return success(socialDirectoryService.download(ver, type));
}
@PostMapping("download2")
public Result<Object> download2() {
Map<String, Object> parms = getParms();
String ver = (String) parms.get("ver");
int type = (Integer) parms.get("type");
if (ver == null || ver.trim().isEmpty()) {
// 处理参数为空的情况这里假设返回一个错误结果
return error("参数 ver 不能为空");
}
return success(socialDirectoryService.download2(ver, type));
}
@RequestMapping("column_list")
public Result<Object> get_column_list() {
Map<String,Object> parms= parmsUtil.getMap();
int type = (Integer) parms.get("type");
List<Map<String, Object>> columnList = socialDirectoryService.getColumnList(type);
return success(columnList);
}
@RequestMapping("get_doc_list")
public Result<Page<SocialDirectoryView>> get_doc_list() {
Map<String,Object> parms= parmsUtil.getMap();
int type = (Integer) parms.get("type");
int page = (Integer) parms.getOrDefault("page", 1);
int size = (Integer) parms.getOrDefault("size", 10);
String keyword = (String) parms.getOrDefault("search_keyword", "");
return success(socialDirectoryService.getDocList(type,page,size,keyword));
}
@RequestMapping("getDiagnosis")
public Result<List<SocialDirectory>> getDiagnosis() {
String keyword = parmsUtil.getString("keyword");
List<SocialDirectory> diagnosis = socialDirectoryService.getDiagnosis(keyword);
return success(diagnosis);
}
}

View File

@ -0,0 +1,38 @@
package com.syjiaer.clinic.server.controller.social;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.service.social.SocialDirectoryUpinfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
/**
* <p>
* 更新信息 前端控制器
* </p>
*
* @author NiuZiYuan
* @since 2025-02-20
*/
@RestController
@RequestMapping("/social/directory_upinfo")
public class SocialDirectoryUpinfoController extends BaseController {
@Autowired
private SocialDirectoryUpinfoService socialDirectoryUpinfoService;
@RequestMapping("get_page")
public Result get_page() {
Map<String, Object> parms = getParms();
String updt_time = (String) parms.get("updt_time");
int page = (Integer) parms.getOrDefault("page", 1);
if (updt_time == null || updt_time.trim().isEmpty()) {
// 处理参数为空的情况这里假设返回一个错误结果
return error("参数 updt_time 不能为空");
}
Map<String, Object> result = socialDirectoryUpinfoService.getPage(updt_time, page);
return success(result);
}
}

View File

@ -0,0 +1,44 @@
package com.syjiaer.clinic.server.controller.social;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.entity.social.SocialDirectoryVersion;
import com.syjiaer.clinic.server.service.social.SocialDirectoryVersionService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 医保目录版本列表 前端控制器
* </p>
*
* @author NiuZiYuan
* @since 2025-02-19
*/
@RestController
@RequestMapping("/social/directory_version")
public class SocialDirectoryVersionController extends BaseController {
@Autowired
private SocialDirectoryVersionService socialDirectoryVersionService;
@RequestMapping("get_current")
public Result<Object> get_current() {
Integer type = parmsUtil.getInteger("type","type不能为空");
SocialDirectoryVersion current = socialDirectoryVersionService.getCurrent(type);
return success(current);
}
@RequestMapping("list")
public Result<Page<SocialDirectoryVersion>> list() {
int page = parmsUtil.getInteger("page","page不能为空");
int size = parmsUtil.getInteger("size","size不能为空");
int type = parmsUtil.getInteger("type","type不能为空");
Page<SocialDirectoryVersion> pageResult = socialDirectoryVersionService.list(page, size, type);
return success(pageResult);
}
}

View File

@ -0,0 +1,30 @@
package com.syjiaer.clinic.server.controller.social;
import com.syjiaer.clinic.server.common.api.input.IM1101;
import com.syjiaer.clinic.server.common.api.output.OM1101;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.service.social.SocialUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/social/person")
public class SocialPersonController extends BaseController {
@Autowired
private SocialUserService socialUserService;
@RequestMapping("getCustomSocialInfo")
@Transactional(rollbackFor = Exception.class)
public Result<OM1101> getCustomSocialInfo() {
IM1101 im1101 = parmsUtil.getObject("data", IM1101.class);
if (im1101 == null) {
return error("没有带数据");
}
OM1101 om1101 = socialUserService.getSocialInfo(im1101);
return success(om1101);
}
}

View File

@ -0,0 +1,138 @@
package com.syjiaer.clinic.server.controller.social;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.enums.InventorySocialTypeEnum;
import com.syjiaer.clinic.server.common.enums.UploadStatusEnum;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.entity.inventory.InventoryInit;
import com.syjiaer.clinic.server.entity.social.dto.InventoryInitQuery;
import com.syjiaer.clinic.server.entity.social.dto.InventoryLogQuery;
import com.syjiaer.clinic.server.entity.social.dto.InventoryPurchaseLogQuery;
import com.syjiaer.clinic.server.entity.social.dto.RetailInventoryQuery;
import com.syjiaer.clinic.server.entity.social.vo.NotDoNumberVo;
import com.syjiaer.clinic.server.entity.social.vo.SocialInventoryInitVo;
import com.syjiaer.clinic.server.entity.social.vo.SocialInventoryLogVo;
import com.syjiaer.clinic.server.entity.social.vo.SocialInventoryPurchaseLogVo;
import com.syjiaer.clinic.server.service.social.SocialInventoryUploadService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
@Slf4j
@RestController
@RequestMapping("/social/upload")
public class SocialUploadController extends BaseController {
@Autowired
private SocialInventoryUploadService socialInventoryUploadService;
/**
* 分页查询 商品初始化数据
*/
@RequestMapping("get3501List")
public Result<Page<SocialInventoryInitVo>> get3501List() {
InventoryInitQuery initQuery = parmsUtil.getObject("query", InventoryInitQuery.class);
Page<SocialInventoryInitVo> page =socialInventoryUploadService.get3501List(initQuery);
return success(page);
}
/**
* 分页查询 商品库存变更记录
*/
@RequestMapping("get3502List")
public Result<Page<SocialInventoryLogVo>> get3502List() {
InventoryLogQuery logQuery = parmsUtil.getObject("query", InventoryLogQuery.class);
Page<SocialInventoryLogVo> page =socialInventoryUploadService.get3502List(logQuery);
return success(page);
}
/**
* 分页查询 库存采购数据
*/
@RequestMapping("get3503List")
public Result<Page> get3503List() {
InventoryPurchaseLogQuery pLogQuery = parmsUtil.getObject("query", InventoryPurchaseLogQuery.class);
Page<SocialInventoryPurchaseLogVo> page =socialInventoryUploadService.get3503List(pLogQuery);
return success(page);
}
/**
* 获取3505列表
*
* @return
*/
@RequestMapping("get3505List")
public Result<Page> get3505List() {
// RetailInventoryQuery rlQuery = parmsUtil.getObject("query", RetailInventoryQuery.class);
// Page<SocialInventoryPurchaseLogVo> page =socialInventoryUploadService.get3505List(rlQuery);
// return success(page);
return success();
}
/**
* 单独上报3501
*/
@RequestMapping("upload3501Data")
public Result<Boolean> upload3501Data() {
return success(socialInventoryUploadService.upload3501());
}
/**
* 单独上报3502
*/
@RequestMapping("upload3502Data")
public Result<Boolean> upload3502Data() {
return success(socialInventoryUploadService.upload3502());
}
/**
* 单独上报3503
*/
@RequestMapping("upload3503Data")
public Result<Boolean> upload3503Data() {
return success(socialInventoryUploadService.upload3503());
}
/**
* 获取进销存 3501-3506 未上报数量
*/
@RequestMapping("getNotDoNumber")
public Result<NotDoNumberVo> getNotDoNumber() {
return success(socialInventoryUploadService.getNotDoNumberDo());
}
/**
* 进销存一键上报接口
*
* @return
*/
@RequestMapping("quickUpload")
public Result<NotDoNumberVo> quickUpload() {
Boolean uploadResult = socialInventoryUploadService.upload3501();
if (!uploadResult) {
uploadResult = socialInventoryUploadService.upload3503();
}
// if (!uploadResult){
// uploadResult = socialInventoryUploadService.upload3505();
// }
if (!uploadResult) {
uploadResult = socialInventoryUploadService.upload3502();
}
NotDoNumberVo notDoNumberVo = socialInventoryUploadService.getNotDoNumberDo();
return success(notDoNumberVo);
}
}

View File

@ -4,11 +4,12 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
* 配置表

View File

@ -5,12 +5,13 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 操作日志

View File

@ -4,14 +4,15 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
* <p>
* 库存主表

View File

@ -5,12 +5,13 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 库存领用表

View File

@ -5,11 +5,12 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
* 领用日志

View File

@ -5,12 +5,13 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 盘点主表

View File

@ -5,11 +5,12 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
* 盘点日志

View File

@ -5,13 +5,14 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
* <p>
* 库存初始化

View File

@ -5,12 +5,13 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 库存日志表

View File

@ -4,13 +4,14 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* <p>
* 采购单

View File

@ -5,12 +5,13 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 采购日志

View File

@ -5,11 +5,12 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
* 供应商表

View File

@ -4,13 +4,14 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* <p>
* 诊疗项目

View File

@ -5,11 +5,12 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
* 用户表

View File

@ -5,12 +5,13 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 成员表

View File

@ -3,12 +3,13 @@ package com.syjiaer.clinic.server.entity.social;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 医保目录

View File

@ -4,14 +4,14 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.math.BigInteger;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.math.BigInteger;
/**
* <p>
* 医保限价

View File

@ -4,14 +4,14 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.math.BigInteger;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.math.BigInteger;
/**
* <p>
* 医保自付比例 1319

View File

@ -3,14 +3,14 @@ package com.syjiaer.clinic.server.entity.social;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigInteger;
import java.time.LocalDateTime;
/**
* <p>
* 医保有效期 1312

View File

@ -3,12 +3,13 @@ package com.syjiaer.clinic.server.entity.social;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 医保目录版本列表

View File

@ -0,0 +1,18 @@
package com.syjiaer.clinic.server.entity.social.dto;
import lombok.Getter;
import lombok.Setter;
import java.time.LocalDateTime;
@Getter
@Setter
public class InventoryInitQuery {
private Integer pageNum;
private Integer pageSize;
private Integer uploadStatus;
private Integer type;
private String code;
private LocalDateTime createTimeBefore;
private LocalDateTime createTimeAfter;
}

View File

@ -0,0 +1,17 @@
package com.syjiaer.clinic.server.entity.social.dto;
import lombok.Getter;
import lombok.Setter;
import java.time.LocalDateTime;
@Getter
@Setter
public class InventoryLogQuery {
private Integer pageNum;
private Integer pageSize;
private Integer uploadStatus;
private Integer type;
private LocalDateTime createTimeBefore;
private LocalDateTime createTimeAfter;
}

View File

@ -0,0 +1,13 @@
package com.syjiaer.clinic.server.entity.social.dto;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class InventoryPurchaseLogQuery {
private Integer pageNum;
private Integer pageSize;
private Integer uploadStatus;
private Integer type;
}

View File

@ -0,0 +1,33 @@
package com.syjiaer.clinic.server.entity.social.dto;
import lombok.Getter;
import lombok.Setter;
import java.math.BigDecimal;
import java.time.LocalDate;
@Getter
@Setter
public class ReconciliationItemDto {
// 清算类别
private String reconciliationType;
// 险种类型
private String insuranceType;
// 经办机构
private String handlingInstitution;
// 医疗费用总额
private BigDecimal totalMedicalCost = BigDecimal.ZERO;
// 基金支付总额
private BigDecimal totalFundPayment = BigDecimal.ZERO;
// 个账支付总额
private BigDecimal totalPersonalAccountPayment = BigDecimal.ZERO;
// 结算笔数
private Integer settlementCount;
// 对账结果
private String reconciliationResult;
//对账开始时间
private LocalDate beginTime;
//对账结束时间
private LocalDate endTime;
}

View File

@ -0,0 +1,13 @@
package com.syjiaer.clinic.server.entity.social.dto;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class RetailInventoryQuery {
private Integer pageNum;
private Integer pageSize;
private Integer uploadStatus;
private Integer type;
}

View File

@ -0,0 +1,15 @@
package com.syjiaer.clinic.server.entity.social.vo;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class NotDoNumberVo {
private long totalNumber;
private long number3501;
private long number3502;
private long number3503;
private long number3505;
}

View File

@ -0,0 +1,21 @@
package com.syjiaer.clinic.server.entity.social.vo;
import lombok.Getter;
import lombok.Setter;
import java.math.BigDecimal;
@Getter
@Setter
public class ReconciliationDetailVo {
private String psnNo;
private String mdtrtId;
private String setlId;
private String msgid;
private String stmtRslt;
private String refdSetlFlag;
private String memo;
private BigDecimal medfeeSumamt;
private BigDecimal fundPaySumamt;
private BigDecimal acctPay;
}

View File

@ -0,0 +1,28 @@
package com.syjiaer.clinic.server.entity.social.vo;
import lombok.Getter;
import lombok.Setter;
import java.math.BigDecimal;
@Getter
@Setter
public class ReconciliationItemVo {
// 清算类别
private String reconciliationType;
// 险种类型
private String insuranceType;
// 经办机构
private String handlingInstitution;
// 医疗费用总额
private BigDecimal totalMedicalCost = BigDecimal.ZERO;
// 基金支付总额
private BigDecimal totalFundPayment = BigDecimal.ZERO;
// 个账支付总额
private BigDecimal totalPersonalAccountPayment = BigDecimal.ZERO;
// 结算笔数
private Integer settlementCount;
// 对账结果
private String reconciliationResult;
}

View File

@ -1,15 +1,15 @@
package com.syjiaer.clinic.server.entity.social.dto;
package com.syjiaer.clinic.server.entity.social.vo;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* <p>
*

View File

@ -0,0 +1,60 @@
package com.syjiaer.clinic.server.entity.social.vo;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
/**
* <p>
*
* </p>
*
* @author NiuZiYuan
* @since 2025-03-21
*/
@Getter
@Setter
@ToString
@Accessors(chain = true)
@TableName("social_inventory_init_view")
@ApiModel(value = "SocialInventoryInitView对象", description = "")
public class SocialInventoryInitVo implements Serializable {
private static final long serialVersionUID = 1L;
private Integer id;
private String code;
private Integer wholeNumber;
private Date createDate;
private Integer uploadStatus;
private String uploadMessage;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime uploadDatetime;
private Integer goodsId;
private Integer inventoryId;
private Integer fragmentNumber;
private String name;
private String packagingUnit;
private String minPackagingUnit;
private String hilistCode;
}

View File

@ -0,0 +1,68 @@
package com.syjiaer.clinic.server.entity.social.vo;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author NiuZiYuan
* @since 2025-04-16
*/
@Getter
@Setter
@ToString
@Accessors(chain = true)
@TableName("social_inventory_log_view")
@ApiModel(value = "SocialInventoryLogView对象", description = "")
public class SocialInventoryLogVo implements Serializable {
private static final long serialVersionUID = 1L;
private Integer id;
private Integer goodsId;
private Integer inventoryId;
private Integer socialType;
private Integer changeWholeNumber;
private Integer changeFragmentNumber;
private Integer beforeWholeNumber;
private Integer beforeFragmentNumber;
private Integer afterWholeNumber;
private Integer afterFragmentNumber;
private String remark;
private LocalDateTime createTime;
private Integer uploadStatus;
private String uploadMessage;
private LocalDateTime uploadDatetime;
private String name;
private String packagingUnit;
private String minPackagingUnit;
private String hilistCode;
}

View File

@ -0,0 +1,54 @@
package com.syjiaer.clinic.server.entity.social.vo;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author NiuZiYuan
* @since 2025-04-16
*/
@Getter
@Setter
@ToString
@Accessors(chain = true)
@TableName("social_inventory_purchase_log_view")
@ApiModel(value = "SocialInventoryPurchaseLogView对象", description = "")
public class SocialInventoryPurchaseLogVo implements Serializable {
private static final long serialVersionUID = 1L;
private Integer id;
private String inventoryPurchaseCode;
private Integer number;
private Integer uploadStatus;
private String uploadMessage;
private LocalDateTime uploadDatetime;
private Integer inventoryId;
private Integer socialType;
private String name;
private String packagingUnit;
private String minPackagingUnit;
private String hilistCode;
}

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.common;
import com.syjiaer.clinic.server.entity.common.CommonConfig;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.common.CommonConfig;
/**

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.common;
import com.syjiaer.clinic.server.entity.common.CommonLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.common.CommonLog;
/**

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.inventory;
import com.syjiaer.clinic.server.entity.inventory.InventoryApplyLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.inventory.InventoryApplyLog;
/**

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.inventory;
import com.syjiaer.clinic.server.entity.inventory.InventoryApply;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.inventory.InventoryApply;
/**

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.inventory;
import com.syjiaer.clinic.server.entity.inventory.InventoryCheckLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.inventory.InventoryCheckLog;
/**

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.inventory;
import com.syjiaer.clinic.server.entity.inventory.InventoryCheck;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.inventory.InventoryCheck;
/**

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.inventory;
import com.syjiaer.clinic.server.entity.inventory.InventoryInit;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.inventory.InventoryInit;
/**

View File

@ -1,12 +1,7 @@
package com.syjiaer.clinic.server.mapper.inventory;
import com.syjiaer.clinic.server.entity.inventory.InventoryLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
import com.syjiaer.clinic.server.entity.inventory.InventoryLog;
/**

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.inventory;
import com.syjiaer.clinic.server.entity.inventory.Inventory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.inventory.Inventory;
/**

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.inventory;
import com.syjiaer.clinic.server.entity.inventory.InventoryPurchaseLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.inventory.InventoryPurchaseLog;
/**

View File

@ -1,7 +1,9 @@
package com.syjiaer.clinic.server.mapper.inventory;
import com.syjiaer.clinic.server.entity.inventory.InventoryPurchase;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.inventory.InventoryPurchase;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
/**
@ -13,6 +15,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @since 2025-04-17
*/
public interface InventoryPurchaseMapper extends BaseMapper<InventoryPurchase> {
@Select("select * from inventory_purchase where code = #{code}")
InventoryPurchase getByCode(@Param("code") String inventoryPurchaseCode);
}

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.inventory;
import com.syjiaer.clinic.server.entity.inventory.InventorySupplier;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.inventory.InventorySupplier;
/**

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.item;
import com.syjiaer.clinic.server.entity.item.Item;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.item.Item;
/**

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.manager;
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
/**

View File

@ -2,7 +2,6 @@ package com.syjiaer.clinic.server.mapper.patient;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.patient.PatientRegistration;
import org.mapstruct.Mapper;
/**

View File

@ -1,8 +1,9 @@
package com.syjiaer.clinic.server.mapper.social;
import com.syjiaer.clinic.server.entity.social.SocialDirectoryLimit;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.social.SocialDirectoryLimit;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.Map;
@ -17,6 +18,7 @@ import java.util.Map;
*/
public interface SocialDirectoryLimitMapper extends BaseMapper<SocialDirectoryLimit> {
Map<String, Object> getByCode(@Param("code") String hilistCode);
@Select("select * from social_directory_limit where code = #{code}")
SocialDirectoryLimit selectByCode(@Param("code") String code);
}

View File

@ -1,9 +1,10 @@
package com.syjiaer.clinic.server.mapper.social;
import com.syjiaer.clinic.server.entity.social.SocialDirectory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.social.dto.SocialDirectoryView;
import com.syjiaer.clinic.server.entity.social.SocialDirectory;
import com.syjiaer.clinic.server.entity.social.vo.SocialDirectoryView;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@ -19,5 +20,7 @@ import java.util.List;
public interface SocialDirectoryMapper extends BaseMapper<SocialDirectory> {
List<SocialDirectoryView> selectSocialDirectoryView(@Param("codeList") List<String> codeList);
@Select("select * from social_directory where code = #{code}")
SocialDirectory getByCode(@Param("code") String code);
}

View File

@ -1,7 +1,9 @@
package com.syjiaer.clinic.server.mapper.social;
import com.syjiaer.clinic.server.entity.social.SocialDirectorySelf;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.social.SocialDirectorySelf;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
/**
@ -13,6 +15,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @since 2025-04-17
*/
public interface SocialDirectorySelfMapper extends BaseMapper<SocialDirectorySelf> {
@Select("select * from social_directory_self where code = #{code}")
SocialDirectorySelf selectByCode(@Param("code") String code);
}

View File

@ -1,7 +1,9 @@
package com.syjiaer.clinic.server.mapper.social;
import com.syjiaer.clinic.server.entity.social.SocialDirectoryUpinfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.social.SocialDirectoryUpinfo;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
/**
@ -13,6 +15,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @since 2025-04-17
*/
public interface SocialDirectoryUpinfoMapper extends BaseMapper<SocialDirectoryUpinfo> {
@Select("select * from social_directory_upinfo where code = #{code}")
SocialDirectoryUpinfo selectByCode(@Param("code") String code);
}

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.social;
import com.syjiaer.clinic.server.entity.social.SocialDirectoryVersion;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.social.SocialDirectoryVersion;
/**

View File

@ -1,7 +1,7 @@
package com.syjiaer.clinic.server.mapper.social;
import com.syjiaer.clinic.server.entity.social.dto.SocialDirectoryView;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.syjiaer.clinic.server.entity.social.vo.SocialDirectoryView;
/**

View File

@ -1,9 +1,8 @@
package com.syjiaer.clinic.server.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.syjiaer.clinic.server.common.exception.VerifyException;
import com.syjiaer.clinic.server.common.util.HeadersUtil;
import com.syjiaer.clinic.server.common.util.InfoUtil;
import com.syjiaer.clinic.server.common.util.ParmsUtil;
@ -11,18 +10,15 @@ import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.entity.common.CommonLog;
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
import com.syjiaer.clinic.server.mapper.common.CommonLogMapper;
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jws;
import io.jsonwebtoken.JwtException;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.security.Keys;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.util.unit.DataUnit;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.function.Function;
import java.util.stream.Collectors;
public abstract class BaseService {
@Autowired
@ -33,7 +29,8 @@ public abstract class BaseService {
private HeadersUtil headersUtil;
@Autowired
private CommonLogMapper commonLogMapper;
@Value("${jwt.expiration}")
protected long jwtExpiration;
@Value("${jwt.secret}")
protected String jwtSecret;
/*
@ -56,7 +53,7 @@ public abstract class BaseService {
Map<String, Object> map = infoUtil.getMap();
if (map == null || map.get("manager_id") == null) {
ManagerUser managerUser = new ManagerUser();
managerUser.setId(0);
managerUser.setId(1);
managerUser.setName("test");
managerUser.setUsername("test");
return managerUser;
@ -77,7 +74,7 @@ public abstract class BaseService {
if (orderByStr == null || orderByStr.isEmpty()){
queryWrapper.orderBy(true,isAsc,orderByStr);
}
queryWrapper.last("LIMIT " + (pageNum - 1) * pageSize + ", " + pageSize);
queryWrapper.last("LIMIT " + pageSize + " OFFSET " + (pageNum - 1) * pageSize);
List<T> list = mapper.selectList(queryWrapper);
Page<T> page = new Page<>();
page.setList(list);
@ -100,4 +97,8 @@ public abstract class BaseService {
protected Map<String, Object> getInfos() {
return infoUtil.getMap();
}
protected <T, V> List<V> listObjs(Wrapper<T> queryWrapper, BaseMapper<T> mapper,Function<? super Object, V> function) {
return (List)mapper.selectObjs(queryWrapper).stream().filter(Objects::nonNull).map(function).collect(Collectors.toList());
}
}

View File

@ -0,0 +1,94 @@
package com.syjiaer.clinic.server.service.common;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.service.BaseService;
import org.springframework.core.io.Resource;
import org.springframework.core.io.UrlResource;
import org.springframework.http.HttpHeaders;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.UUID;
@Service
public class FileService extends BaseService {
public String uploadFile(MultipartFile file) {
String fileName = generateTempFileName(file);
if (file.isEmpty()) {
throw new MessageException("文件为空");
}
try {
// 保存文件到指定路径
String uploadPath = "D:/uploads/";
Path dir = Path.of(uploadPath);
// 如果目录不存在则创建目录
if (!Files.exists(dir)) {
Files.createDirectories(dir);
}
String filePath = uploadPath +fileName;
file.transferTo(new File(filePath));
return fileName;
} catch (IOException e) {
e.printStackTrace();
throw new MessageException("文件上传失败:"+e.getMessage());
}
}
private String generateTempFileName(MultipartFile file) {
// 获取文件的后缀名
String originalFilename = file.getOriginalFilename();
String fileExtension = null;
if (originalFilename != null) {
fileExtension = originalFilename.substring(originalFilename.lastIndexOf("."));
}
// 生成唯一的临时文件名并返回
return UUID.randomUUID() + fileExtension;
}
public ResponseEntity<Resource> getImage(String fileName) {
if (fileName == null) {
throw new MessageException("文件名不能为空");
}
try {
// 指定文件保存的目录
Path uploadPath = Paths.get("D:/uploads/");
// 构建完整的文件路径
Path filePath = uploadPath.resolve(fileName);
// 检查文件是否存在
if (!Files.exists(filePath)) {
throw new MessageException("文件不存在");
}
String contentType = Files.probeContentType(filePath);
if (contentType == null) {
contentType = "application/octet-stream"; // 默认类型
}
// 返回文件资源
Resource resource = new UrlResource(filePath.toUri());
if (!resource.exists()) {
throw new MessageException("无法读取文件");
}
HttpHeaders headers = new HttpHeaders();
headers.add(HttpHeaders.CONTENT_TYPE, contentType);
return ResponseEntity.ok()
.headers(headers)
.body(resource);
} catch (MalformedURLException e) {
throw new MessageException("文件路径无效"+e.getMessage());
} catch (IOException e) {
throw new MessageException("未知文件类型");
}
}
}

View File

@ -0,0 +1,51 @@
package com.syjiaer.clinic.server.service.common;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.controller.BaseController;
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
import com.syjiaer.clinic.server.mapper.manager.ManagerUserMapper;
import com.syjiaer.clinic.server.service.BaseService;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.security.Keys;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import javax.crypto.SecretKey;
import java.util.Date;
@Service
public class ManagerUserService extends BaseService {
@Autowired
private ManagerUserMapper managerUserMapper;
public String login(String username, String password) {
if (username == null || username.isEmpty()) {
throw new MessageException("请输入用户名");
}
if (password == null || password.isEmpty()) {
throw new MessageException("请输入密码");
}
ManagerUser managerUser = managerUserMapper.selectOne(new QueryWrapper<ManagerUser>().eq("username", username).eq("password", password));
if (managerUser == null) {
throw new MessageException("用户名或密码错误");
}
Date exdata = new Date(System.currentTimeMillis() + jwtExpiration * 1000);
System.out.println(exdata);
SecretKey key = Keys.hmacShaKeyFor(jwtSecret.getBytes());
String token = Jwts.builder()
.subject(managerUser.getId().toString()) // 用户ID作为主题
.expiration(exdata)
.claim("username", managerUser.getUsername()) // 添加自定义声明
.claim("name", managerUser.getName()) // 添加自定义声明
.claim("userId", managerUser.getId())
.signWith(key)
.compact();
return token;
}
public ManagerUser verify() {
return getManagerUser();
}
}

View File

@ -2,13 +2,13 @@ package com.syjiaer.clinic.server.service.goods;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.entity.goods.Goods;
import com.syjiaer.clinic.server.entity.goods.GoodsCate;
import com.syjiaer.clinic.server.mapper.goods.GoodsCateMapper;
import com.syjiaer.clinic.server.mapper.goods.GoodsMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
@ -42,6 +42,7 @@ public class GoodsCateService {
* 删除分类
* 参数 id 分类id
*/
@Transactional(rollbackFor = Exception.class)
public void del(int id){
GoodsCate goodsCate = goodsCateMapper.selectById(id);
goodsCateMapper.deleteById(id);

View File

@ -15,15 +15,13 @@ import com.syjiaer.clinic.server.entity.goods.Goods;
import com.syjiaer.clinic.server.entity.goods.dto.GoodsQuery;
import com.syjiaer.clinic.server.entity.goods.vo.GoodsDetailVo;
import com.syjiaer.clinic.server.entity.inventory.Inventory;
import com.syjiaer.clinic.server.entity.social.SocialDirectory;
import com.syjiaer.clinic.server.entity.social.dto.SocialDirectoryView;
import com.syjiaer.clinic.server.entity.social.vo.SocialDirectoryView;
import com.syjiaer.clinic.server.mapper.goods.GoodsMapper;
import com.syjiaer.clinic.server.mapper.inventory.InventoryMapper;
import com.syjiaer.clinic.server.service.social.SocialDirectoryService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestMapping;
import java.math.BigDecimal;
import java.math.RoundingMode;
@ -111,7 +109,7 @@ public class GoodsService {
}
Inventory latestInventory = inventories.get(0);
SocialDirectory socialDirectory = socialDirectoryService.getByCode(goods.getHilistCode());
SocialDirectoryView socialDirectory = socialDirectoryService.fullInfo(goods.getHilistCode());
IM3501 im3501 = new IM3501();
BigDecimal number = new BigDecimal(goods.getInventoryWholeNumber());
BigDecimal price =goods.getUnitPrice();

View File

@ -8,7 +8,6 @@ import com.syjiaer.clinic.server.common.enums.InventoryTypeEnum;
import com.syjiaer.clinic.server.common.enums.Type;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.entity.inventory.InventoryApply;
import com.syjiaer.clinic.server.entity.inventory.InventoryApplyLog;
import com.syjiaer.clinic.server.entity.inventory.InventoryLog;
@ -21,7 +20,6 @@ import com.syjiaer.clinic.server.service.BaseService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;

View File

@ -39,7 +39,7 @@ public class InventoryCheckService extends BaseService {
return pageHelper(query.getPageNum(), query.getPageSize(),
queryWrapper, inventoryCheckMapper, "create_datetime", false);
}
@Transactional
@Transactional(rollbackFor = Exception.class)
public void save(List<Map> list, String remark) {
ManagerUser user = getManagerUser();
System.out.println(remark);

View File

@ -6,7 +6,6 @@ import com.syjiaer.clinic.server.common.constants.Constants;
import com.syjiaer.clinic.server.common.enums.*;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.entity.goods.Goods;
import com.syjiaer.clinic.server.entity.inventory.*;
import com.syjiaer.clinic.server.entity.inventory.dto.PurchaseOrderQuery;
@ -21,6 +20,7 @@ import com.syjiaer.clinic.server.service.goods.GoodsService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.math.RoundingMode;
@ -55,6 +55,7 @@ public class InventoryPurchaseService extends BaseService {
* @param inventoryPurchase 采购订单
* @param list 采购项
*/
@Transactional(rollbackFor = Exception.class)
public void create(InventoryPurchase inventoryPurchase, List<Inventory> list) {
if (inventoryPurchase.getInvoiceCode() == null || inventoryPurchase.getInvoiceCode().isEmpty()) {
inventoryPurchase.setInvoiceCode("");
@ -67,27 +68,19 @@ public class InventoryPurchaseService extends BaseService {
throw new MessageException("[" + inventory_goods.getName() + "]采购单价不能小于等于0");
}
}
createOrder(inventoryPurchase, list);
}
/*
* 创建采购订单
* @param inventoryOrder 采购订单
* @param list 采购项
*/
public void createOrder(InventoryPurchase inventoryOrder, List<Inventory> list) {
//构造订单
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
String datePart = sdf.format(new Date());
String code = Constants.IPurchaseCodePrefix + datePart;
inventoryOrder.setCode(code);
inventoryOrder.setCreateDatetime(LocalDateTime.now());
inventoryOrder.setKindCount(list.size());
inventoryPurchase.setCode(code);
inventoryPurchase.setCreateDatetime(LocalDateTime.now());
inventoryPurchase.setKindCount(list.size());
BigDecimal total_price = new BigDecimal(0);
for (Inventory inventory : list) {
total_price = total_price.add(inventory.getPurchaseUnitPrice().multiply(new BigDecimal(inventory.getWholeNumber())));
}
inventoryOrder.setTotalPrice(total_price);
inventoryPurchaseMapper.insert(inventoryOrder);
inventoryPurchase.setTotalPrice(total_price);
inventoryPurchaseMapper.insert(inventoryPurchase);
for (Inventory inventory : list) {
//更新库存信息
@ -179,6 +172,7 @@ public class InventoryPurchaseService extends BaseService {
* 已有采购单添加新商品
* @param inventory 采购的商品
*/
@Transactional(rollbackFor = Exception.class)
public void addOneGoods(Inventory inventory) {
QueryWrapper<InventoryPurchase> orderWrapper = new QueryWrapper();
orderWrapper.eq("code", inventory.getInventoryPurchaseCode());
@ -337,6 +331,7 @@ public class InventoryPurchaseService extends BaseService {
* 采购单中商品退货
* @param list inventory表idList
*/
@Transactional(rollbackFor = Exception.class)
public void returnable(List<Integer> list) {
ManagerUser user = getManagerUser();

View File

@ -8,10 +8,11 @@ import com.syjiaer.clinic.server.common.enums.InventoryTypeEnum;
import com.syjiaer.clinic.server.common.enums.Type;
import com.syjiaer.clinic.server.common.enums.UploadStatusEnum;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.util.DateUtil;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.entity.goods.Goods;
import com.syjiaer.clinic.server.entity.inventory.*;
import com.syjiaer.clinic.server.entity.inventory.Inventory;
import com.syjiaer.clinic.server.entity.inventory.InventoryLog;
import com.syjiaer.clinic.server.entity.inventory.InventoryPurchase;
import com.syjiaer.clinic.server.entity.inventory.InventoryPurchaseLog;
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
import com.syjiaer.clinic.server.mapper.goods.GoodsMapper;
import com.syjiaer.clinic.server.mapper.inventory.InventoryLogMapper;
@ -24,9 +25,9 @@ import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import java.math.BigDecimal;
import java.time.LocalDateTime;
@ -49,6 +50,9 @@ public class InventoryService extends BaseService {
private InventoryPurchaseMapper inventoryPurchaseMapper;
@Autowired
private InventoryPurchaseLogMapper inventoryPurchaseLogMapper;
@Autowired
@Lazy
private InventoryService inventoryService;
public List<Inventory> listByOrderCode(String orderCode) {
QueryWrapper<Inventory> queryWrapper = new QueryWrapper<>();
@ -487,11 +491,11 @@ public class InventoryService extends BaseService {
.eq("good_id", goodsId)
.orderByDesc("create_datetime").last("limit 1"));
list.add(this.changeNumber(inventory.getId(), Type.IN, changeWhole, changeFragment, remark));
list.add(inventoryService.changeNumber(inventory.getId(), Type.IN, changeWhole, changeFragment, remark));
} else {
changeFragment = -changeFragment;
changeWhole = -changeWhole;
list = this.outByGoodsId(goodsId, changeWhole, changeFragment, remark);
list = inventoryService.outByGoodsId(goodsId, changeWhole, changeFragment, remark);
}
return list;
}
@ -531,7 +535,7 @@ public class InventoryService extends BaseService {
int deductFragment = deduct % goods.getMinPackagingNumber();
// 调用现有方法执行出库
result.add(this.changeNumber(inv.getId(), Type.OUT, deductWhole, deductFragment, remark));
result.add(inventoryService.changeNumber(inv.getId(), Type.OUT, deductWhole, deductFragment, remark));
// 更新剩余需要扣除量
requiredTotalFragment -= deduct;

View File

@ -5,7 +5,6 @@ import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.entity.item.Item;
import com.syjiaer.clinic.server.entity.item.ItemGroup;
import com.syjiaer.clinic.server.entity.item.param.ItemGroupParam;
@ -14,6 +13,7 @@ import com.syjiaer.clinic.server.mapper.item.ItemMapper;
import com.syjiaer.clinic.server.service.BaseService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.util.List;
@ -52,6 +52,7 @@ public class ItemGroupService extends BaseService {
* 保存/修改项目组
* @param itemGroupParam 项目组参数
*/
@Transactional(rollbackFor = Exception.class)
public void saveItemGroup(ItemGroupParam itemGroupParam) {
if (itemGroupParam.getId() != null) {
QueryWrapper<ItemGroup> queryWrapper = new QueryWrapper<>();

View File

@ -3,16 +3,15 @@ package com.syjiaer.clinic.server.service.item;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.entity.item.Item;
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
import com.syjiaer.clinic.server.mapper.item.ItemMapper;
import com.syjiaer.clinic.server.service.BaseService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
@Service
@ -69,7 +68,7 @@ public class ItemService extends BaseService {
item.setUpdateDatetime(LocalDateTime.now());
itemMapper.updateById(item);
}
@Transactional(rollbackFor = Exception.class)
public void del(Integer id) {
if (id == null) {
throw new MessageException("id参数为空");

View File

@ -15,15 +15,13 @@ import com.syjiaer.clinic.server.mapper.item.ItemMapper;
import com.syjiaer.clinic.server.mapper.medical.MedicalRecordDetailMapper;
import com.syjiaer.clinic.server.mapper.medical.MedicalRecordMapper;
import com.syjiaer.clinic.server.service.BaseService;
import com.syjiaer.clinic.server.service.goods.GoodsService;
import com.syjiaer.clinic.server.service.item.ItemService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Service
public class MedicalRecordService extends BaseService {
@ -40,6 +38,7 @@ public class MedicalRecordService extends BaseService {
* 保存
* @param saveDto 病历信息
*/
@Transactional(rollbackFor = Exception.class)
public void save(MedicalRecordSaveDto saveDto) {
ManagerUser managerUser = getManagerUser();
MedicalRecord medicalRecord = new MedicalRecord();
@ -85,6 +84,7 @@ public class MedicalRecordService extends BaseService {
* @param patientId
* @return
*/
public List<MedicalRecordVo> listByPatientId(Integer patientId) {
QueryWrapper<MedicalRecord> query = new QueryWrapper<>();
query.eq("patient_id", patientId);

View File

@ -4,12 +4,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.util.FileUtil;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.entity.organization.OrganizationMember;
import com.syjiaer.clinic.server.mapper.organization.OrganizationMemberMapper;
import com.syjiaer.clinic.server.service.BaseService;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

View File

@ -6,14 +6,12 @@ import com.syjiaer.clinic.server.common.config.Config;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.util.StringUtil;
import com.syjiaer.clinic.server.common.vo.Page;
import com.syjiaer.clinic.server.common.vo.Result;
import com.syjiaer.clinic.server.entity.organization.OrganizationSection;
import com.syjiaer.clinic.server.mapper.organization.OrganizationSectionMapper;
import com.syjiaer.clinic.server.service.BaseService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import java.time.LocalDateTime;
import java.util.List;
@ -63,6 +61,7 @@ public class OrganizationSectionService extends BaseService {
* 添加科室
* @param organizationSection
*/
@Transactional(rollbackFor = Exception.class)
public void add(OrganizationSection organizationSection) {
String socialInsuplcAdmdvs = config.get("social", "insuplcAdmdvs");
long count = organizationSectionMapper.selectCount(new QueryWrapper<OrganizationSection>().eq("code", organizationSection.getCode()));
@ -100,7 +99,7 @@ public class OrganizationSectionService extends BaseService {
// }
}
@Transactional
@Transactional(rollbackFor = Exception.class)
public void edit(OrganizationSection organizationSection) {
String caty = organizationSection.getCaty();
String processing = getString(caty);
@ -134,7 +133,7 @@ public class OrganizationSectionService extends BaseService {
@Transactional(rollbackFor = Exception.class)
public void delete(Integer id) {
OrganizationSection organizationSection = organizationSectionMapper.selectById(id);
if (organizationSection == null){
@ -156,8 +155,7 @@ public class OrganizationSectionService extends BaseService {
public OrganizationSection get(int id) {
QueryWrapper<OrganizationSection> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("del_flag", 0).eq("id", id);
OrganizationSection organizationSection = organizationSectionMapper.selectOne(queryWrapper);
return organizationSection;
return organizationSectionMapper.selectOne(queryWrapper);
}
public List<JSONObject> allList() {
QueryWrapper<OrganizationSection> organizationSectionQueryWrapper = new QueryWrapper<>();

View File

@ -1,19 +1,7 @@
package com.syjiaer.clinic.server.service.patient;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.entity.patient.PatientInfo;
import com.syjiaer.clinic.server.entity.patient.PatientRegistration;
import com.syjiaer.clinic.server.mapper.patient.PatientInfoMapper;
import com.syjiaer.clinic.server.mapper.patient.PatientRegistrationMapper;
import com.syjiaer.clinic.server.service.BaseService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
@Service
public class PatientInfoService extends BaseService {

View File

@ -19,6 +19,7 @@ import com.syjiaer.clinic.server.service.BaseService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.time.LocalDate;
@ -44,6 +45,7 @@ public class PatientRegistrationService extends BaseService {
* 挂号
* @param patientRegistrationParam 挂号信息
*/
@Transactional(rollbackFor = Exception.class)
public void registration(PatientRegistration registrationParam) {
//TODO 挂号和患者 记录身份证号非必填
if (registrationParam == null) {
@ -131,7 +133,6 @@ public class PatientRegistrationService extends BaseService {
public Page<PatientRegistration> getPageByType(RegistrationQuery query) {
QueryWrapper<PatientRegistration> regisQuery = new QueryWrapper<>();
regisQuery.eq("del_flag", 0);
regisQuery.orderByAsc("create_datetime");
if (query.getStatus() != null) {
regisQuery.eq("status", query.getStatus());
}
@ -153,16 +154,13 @@ public class PatientRegistrationService extends BaseService {
* 按时间范围分页查询挂号信息
* @param page
* @param size
* @param date
* @param startDate
* @param endDate
* @return
*/
public Page<PatientRegistration> listPage(int page, int size, String date) {
if (date == null || date.isEmpty()) {
date = LocalDate.now().toString();
}
String startDate = date + " 00:00:00";
String endDate = date + " 23:59:59";
public Page<PatientRegistration> listPage(int page, int size, String startDate,String endDate) {
QueryWrapper<PatientRegistration> queryWrapper = new QueryWrapper<>();
//查询条件
queryWrapper.between("create_datetime", DateUtil.getDateTime(startDate), DateUtil.getDateTime(endDate));

View File

@ -8,6 +8,7 @@ import com.syjiaer.clinic.server.entity.social.SocialDirectoryLimit;
import com.syjiaer.clinic.server.mapper.social.SocialDirectoryLimitMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.math.BigInteger;
@ -30,6 +31,7 @@ public class SocialDirectoryLimitService {
* @param updtTime 更新时间
* @param pageNum 页码
*/
@Transactional(rollbackFor = Exception.class)
public Map<String, Object> updateSocial(String updtTime, int pageNum) {
if (updtTime == null || updtTime.trim().isEmpty()) {
// 处理参数为空的情况这里假设返回一个错误结果

View File

@ -8,13 +8,13 @@ import com.syjiaer.clinic.server.entity.social.SocialDirectorySelf;
import com.syjiaer.clinic.server.mapper.social.SocialDirectorySelfMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/*
* 自付比例
@ -30,6 +30,7 @@ public class SocialDirectorySelfService {
* @param updtTime 更新时间
* @param pageNum 页码
*/
@Transactional(rollbackFor = Exception.class)
public Map<String, Object> updateSocial(String updtTime, int pageNum) {
if (updtTime == null) {
throw new MessageException("updtTime不能为空");

Some files were not shown because too many files have changed in this diff Show More