This commit is contained in:
LiJianZhao 2025-05-14 16:04:45 +08:00
parent 5fab6978bd
commit fc01b80f7b
5 changed files with 88 additions and 29 deletions

View File

@ -16,6 +16,7 @@ import org.springframework.web.bind.annotation.RestController;
import javax.crypto.SecretKey; import javax.crypto.SecretKey;
import java.util.Date; import java.util.Date;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
@ -49,5 +50,13 @@ public class ManagerUserController extends BaseController {
return success(managerUserService.verify()); return success(managerUserService.verify());
} }
/**
* 所有人员信息
* @return
*/
@RequestMapping("list")
public Result<List<ManagerUser>> list(){
return success(managerUserService.list());
}
} }

View File

@ -52,15 +52,7 @@ public class InventoryPurchaseController extends BaseController {
@RequestMapping("/list") @RequestMapping("/list")
public Result<Page<InventoryPurchaseVo>> list() { public Result<Page<InventoryPurchaseVo>> list() {
PurchaseOrderQuery query = parmsUtil.getObject("query", PurchaseOrderQuery.class); PurchaseOrderQuery query = parmsUtil.getObject("query", PurchaseOrderQuery.class);
if (query == null) {
return error("没有带查询条件");
}
if (query.getPageNum() == null || query.getPageNum() == 0) {
query.setPageNum(1);
}
if (query.getPageSize() == null || query.getPageSize() == 0) {
query.setPageSize(Constants.DetailPageSize);
}
return success(inventoryPurchaseService.listPage(query)); return success(inventoryPurchaseService.listPage(query));
} }

View File

@ -3,10 +3,20 @@ package com.syjiaer.clinic.server.entity.inventory.dto;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import java.util.List;
@Getter @Getter
@Setter @Setter
public class PurchaseOrderQuery { public class PurchaseOrderQuery {
private Integer pageNum; private Integer pageNum;
private Integer pageSize; private Integer pageSize;
private String code;
private List<Integer> supplierIds;
private List<Integer> managerUserIds;
private String beginTime;
private String endTime;
} }

View File

@ -22,6 +22,7 @@ import javax.crypto.SecretKey;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
@Service @Service
@ -59,5 +60,14 @@ public class ManagerUserService extends BaseService {
return getManagerUser(); return getManagerUser();
} }
/**
* 所有管理员
* @return
*/
public List<ManagerUser> list() {
QueryWrapper<ManagerUser> queryWrapper = new QueryWrapper<>();
queryWrapper.select("id,name");
return managerUserMapper.selectList(queryWrapper);
}
} }

View File

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.syjiaer.clinic.server.common.constants.Constants; import com.syjiaer.clinic.server.common.constants.Constants;
import com.syjiaer.clinic.server.common.enums.*; import com.syjiaer.clinic.server.common.enums.*;
import com.syjiaer.clinic.server.common.exception.MessageException; 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.Page;
import com.syjiaer.clinic.server.entity.goods.Goods; import com.syjiaer.clinic.server.entity.goods.Goods;
import com.syjiaer.clinic.server.entity.inventory.*; import com.syjiaer.clinic.server.entity.inventory.*;
@ -50,6 +51,7 @@ public class InventoryPurchaseService extends BaseService {
private InventoryPurchaseMapper inventoryPurchaseMapper; private InventoryPurchaseMapper inventoryPurchaseMapper;
@Autowired @Autowired
private InventoryPurchaseLogMapper inventoryPurchaseLogMapper; private InventoryPurchaseLogMapper inventoryPurchaseLogMapper;
/* /*
* 创建采购订单 * 创建采购订单
* @param inventoryPurchase 采购订单 * @param inventoryPurchase 采购订单
@ -94,10 +96,10 @@ public class InventoryPurchaseService extends BaseService {
throw new RuntimeException("商品不存在"); throw new RuntimeException("商品不存在");
} }
UploadStatusEnum uploadStatusEnum = UploadStatusEnum.NoUpload; UploadStatusEnum uploadStatusEnum = UploadStatusEnum.NoUpload;
if(goods.getType().equals(GoodsTypeEnum.otherGoods.getType())){ if (goods.getType().equals(GoodsTypeEnum.otherGoods.getType())) {
uploadStatusEnum = UploadStatusEnum.NotNeedUpload; uploadStatusEnum = UploadStatusEnum.NotNeedUpload;
} }
if (goods.getMinPackagingUnit() != null){ if (goods.getMinPackagingUnit() != null) {
BigDecimal fragmentPrice = inventory.getPurchaseUnitPrice(). BigDecimal fragmentPrice = inventory.getPurchaseUnitPrice().
divide(new BigDecimal(goods.getMinPackagingNumber()), 6, RoundingMode.HALF_DOWN); divide(new BigDecimal(goods.getMinPackagingNumber()), 6, RoundingMode.HALF_DOWN);
inventory.setFragmentPrice(fragmentPrice); inventory.setFragmentPrice(fragmentPrice);
@ -112,7 +114,7 @@ public class InventoryPurchaseService extends BaseService {
InventorySocialTypeEnum type = InventorySocialTypeEnum.OTHER_INBOUND; InventorySocialTypeEnum type = InventorySocialTypeEnum.OTHER_INBOUND;
String remark = Constants.PurchaseInventory; String remark = Constants.PurchaseInventory;
InventoryInit init = null; InventoryInit init = null;
if (InventoryList == null || InventoryList.isEmpty()){ if (InventoryList == null || InventoryList.isEmpty()) {
init = new InventoryInit(); init = new InventoryInit();
init.setGoodsId(goods.getId()); init.setGoodsId(goods.getId());
init.setCode(code); init.setCode(code);
@ -126,7 +128,7 @@ public class InventoryPurchaseService extends BaseService {
} }
inventory.setRefererType(refererTypeEnum.getType()); inventory.setRefererType(refererTypeEnum.getType());
inventoryMapper.insert(inventory); inventoryMapper.insert(inventory);
if(init != null){ if (init != null) {
init.setInventoryId(inventory.getId()); init.setInventoryId(inventory.getId());
inventoryInitMapper.insert(init); inventoryInitMapper.insert(init);
} }
@ -142,9 +144,9 @@ public class InventoryPurchaseService extends BaseService {
inventoryLog.setRemark(remark); inventoryLog.setRemark(remark);
inventoryLog.setUploadStatus(uploadStatusEnum.getStatus()); inventoryLog.setUploadStatus(uploadStatusEnum.getStatus());
inventoryLog.setSocialType(type.getType()); inventoryLog.setSocialType(type.getType());
if (init != null){ if (init != null) {
inventoryLog.setType(InventoryTypeEnum.INIT.getType()); inventoryLog.setType(InventoryTypeEnum.INIT.getType());
}else { } else {
inventoryLog.setType(InventoryTypeEnum.PURCHASE_IN.getType()); inventoryLog.setType(InventoryTypeEnum.PURCHASE_IN.getType());
} }
inventoryLogMapper.insert(inventoryLog); inventoryLogMapper.insert(inventoryLog);
@ -155,7 +157,7 @@ public class InventoryPurchaseService extends BaseService {
inventoryPurchaseLog.setSocialType(type.getType()); inventoryPurchaseLog.setSocialType(type.getType());
inventoryPurchaseLog.setNumber(inventory.getWholeNumber()); inventoryPurchaseLog.setNumber(inventory.getWholeNumber());
UploadStatusEnum pUploadStatusEnum = uploadStatusEnum; UploadStatusEnum pUploadStatusEnum = uploadStatusEnum;
if (type.equals(InventorySocialTypeEnum.INITIAL_INBOUND)){ if (type.equals(InventorySocialTypeEnum.INITIAL_INBOUND)) {
pUploadStatusEnum = UploadStatusEnum.NotNeedUpload; pUploadStatusEnum = UploadStatusEnum.NotNeedUpload;
} }
//初始化上报不走这个表上报 标记为无需上报 //初始化上报不走这个表上报 标记为无需上报
@ -170,6 +172,7 @@ public class InventoryPurchaseService extends BaseService {
/** /**
* 已有采购单添加新商品 * 已有采购单添加新商品
*
* @param inventory 采购的商品 * @param inventory 采购的商品
*/ */
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@ -193,7 +196,7 @@ public class InventoryPurchaseService extends BaseService {
//更新库存信息 //更新库存信息
Goods dbGoods = goodsMapper.selectById(inventory.getGoodId()); Goods dbGoods = goodsMapper.selectById(inventory.getGoodId());
UploadStatusEnum uploadStatusEnum = UploadStatusEnum.NoUpload; UploadStatusEnum uploadStatusEnum = UploadStatusEnum.NoUpload;
if(dbGoods.getType().equals(GoodsTypeEnum.otherGoods.getType())){ if (dbGoods.getType().equals(GoodsTypeEnum.otherGoods.getType())) {
uploadStatusEnum = UploadStatusEnum.NotNeedUpload; uploadStatusEnum = UploadStatusEnum.NotNeedUpload;
} }
BigDecimal fragmentPrice = inventory.getPurchaseUnitPrice(). BigDecimal fragmentPrice = inventory.getPurchaseUnitPrice().
@ -207,7 +210,7 @@ public class InventoryPurchaseService extends BaseService {
InventorySocialTypeEnum type = InventorySocialTypeEnum.OTHER_INBOUND; InventorySocialTypeEnum type = InventorySocialTypeEnum.OTHER_INBOUND;
String remark = Constants.PurchaseInventory; String remark = Constants.PurchaseInventory;
InventoryInit init = null; InventoryInit init = null;
if (InventoryList == null || InventoryList.isEmpty()){ if (InventoryList == null || InventoryList.isEmpty()) {
init = new InventoryInit(); init = new InventoryInit();
init.setGoodsId(inventory.getGoodId()); init.setGoodsId(inventory.getGoodId());
init.setCode(inventory.getProductionBatchCode()); init.setCode(inventory.getProductionBatchCode());
@ -221,7 +224,7 @@ public class InventoryPurchaseService extends BaseService {
} }
inventory.setRefererType(refererTypeEnum.getType()); inventory.setRefererType(refererTypeEnum.getType());
inventoryMapper.insert(inventory); inventoryMapper.insert(inventory);
if(init != null){ if (init != null) {
init.setInventoryId(inventory.getId()); init.setInventoryId(inventory.getId());
inventoryInitMapper.insert(init); inventoryInitMapper.insert(init);
} }
@ -243,7 +246,7 @@ public class InventoryPurchaseService extends BaseService {
inventoryPurchaseLog.setNumber(inventory.getWholeNumber()); inventoryPurchaseLog.setNumber(inventory.getWholeNumber());
inventoryPurchaseLog.setSocialType(type.getType()); inventoryPurchaseLog.setSocialType(type.getType());
UploadStatusEnum pUploadStatusEnum = uploadStatusEnum; UploadStatusEnum pUploadStatusEnum = uploadStatusEnum;
if (type.equals(InventorySocialTypeEnum.INITIAL_INBOUND)){ if (type.equals(InventorySocialTypeEnum.INITIAL_INBOUND)) {
pUploadStatusEnum = UploadStatusEnum.NotNeedUpload; pUploadStatusEnum = UploadStatusEnum.NotNeedUpload;
} }
//初始化上报不走这个表上报 标记为无需上报 //初始化上报不走这个表上报 标记为无需上报
@ -257,12 +260,43 @@ public class InventoryPurchaseService extends BaseService {
/** /**
* 分页查询采购单 * 分页查询采购单
*
* @param query 查询条件 * @param query 查询条件
* @return * @return
*/ */
public Page<InventoryPurchaseVo> listPage(PurchaseOrderQuery query) { public Page<InventoryPurchaseVo> listPage(PurchaseOrderQuery query) {
if (query == null) {
throw new MessageException("没有带查询条件");
}
if (query.getPageNum() == null || query.getPageNum() == 0) {
query.setPageNum(1);
}
if (query.getPageSize() == null || query.getPageSize() == 0) {
query.setPageSize(Constants.DetailPageSize);
}
QueryWrapper<InventoryPurchase> queryWrapper = new QueryWrapper<>(); QueryWrapper<InventoryPurchase> queryWrapper = new QueryWrapper<>();
if (query.getCode() != null && !query.getCode().isEmpty()) {
queryWrapper.like("code", query.getCode().trim());
}
if (query.getSupplierIds() != null && !query.getSupplierIds().isEmpty()) {
queryWrapper.in("supplier_id", query.getSupplierIds());
}
if (query.getManagerUserIds() != null && !query.getManagerUserIds().isEmpty()) {
queryWrapper.in("manager_user_id", query.getManagerUserIds());
}
if (query.getBeginTime() != null && !query.getBeginTime().isEmpty()) {
LocalDateTime beginTime = DateUtil.getDateTime(query.getBeginTime());
queryWrapper.ge("create_datetime", beginTime);
}
if (query.getEndTime() != null && !query.getEndTime().isEmpty()) {
LocalDateTime endTime = DateUtil.getDateTime(query.getEndTime());
queryWrapper.le("create_datetime", endTime);
}
Page<InventoryPurchase> page = pageHelper(query.getPageNum(), query.getPageSize(), Page<InventoryPurchase> page = pageHelper(query.getPageNum(), query.getPageSize(),
queryWrapper, inventoryPurchaseMapper, "create_datetime", false); queryWrapper, inventoryPurchaseMapper, "create_datetime", false);
List<InventoryPurchaseVo> voList = new ArrayList<>(); List<InventoryPurchaseVo> voList = new ArrayList<>();
@ -282,6 +316,7 @@ public class InventoryPurchaseService extends BaseService {
/** /**
* 获取采购单详情信息 * 获取采购单详情信息
*
* @param code 采购单号 * @param code 采购单号
* @return inventoryOrderGoodsList 商品信息 inventoryOrder 采购单信息 * @return inventoryOrderGoodsList 商品信息 inventoryOrder 采购单信息
*/ */
@ -291,7 +326,7 @@ public class InventoryPurchaseService extends BaseService {
queryWrapper.orderByAsc("id"); queryWrapper.orderByAsc("id");
List<Inventory> list = inventoryMapper.selectList(queryWrapper); List<Inventory> list = inventoryMapper.selectList(queryWrapper);
List<InventoryGoodsVo> goodsVos = new ArrayList<>(); List<InventoryGoodsVo> goodsVos = new ArrayList<>();
for (Inventory inventory : list){ for (Inventory inventory : list) {
InventoryGoodsVo goodsVo = new InventoryGoodsVo(); InventoryGoodsVo goodsVo = new InventoryGoodsVo();
BeanUtils.copyProperties(inventory, goodsVo); BeanUtils.copyProperties(inventory, goodsVo);
@ -313,8 +348,10 @@ public class InventoryPurchaseService extends BaseService {
return map; return map;
} }
/**. /**
* .
* 更新采购单基本信息 * 更新采购单基本信息
*
* @param inventoryOrder 采购单信息 * @param inventoryOrder 采购单信息
*/ */
public void updateById(InventoryPurchase inventoryOrder) { public void updateById(InventoryPurchase inventoryOrder) {
@ -331,6 +368,7 @@ public class InventoryPurchaseService extends BaseService {
/** /**
* 采购单中商品退货 * 采购单中商品退货
*
* @param list inventory表idList * @param list inventory表idList
*/ */
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@ -347,9 +385,9 @@ public class InventoryPurchaseService extends BaseService {
orderCode = inventory.getInventoryPurchaseCode(); orderCode = inventory.getInventoryPurchaseCode();
InventoryLog log = inventoryService.adjustNumber(id, InventoryLog log = inventoryService.adjustNumber(id,
0, inventory.getFragmentNumber(), "退货"); 0, inventory.getFragmentNumber(), "退货");
if (log.getChangeWholeNumber() == 0){ if (log.getChangeWholeNumber() == 0) {
return; return;
}else if (log.getChangeWholeNumber() < 0) { } else if (log.getChangeWholeNumber() < 0) {
log.setType(InventoryTypeEnum.RETURN_OUT.getType()); log.setType(InventoryTypeEnum.RETURN_OUT.getType());
log.setSocialType(InventorySocialTypeEnum.OTHER_OUTBOUND.getType()); log.setSocialType(InventorySocialTypeEnum.OTHER_OUTBOUND.getType());