|
@@ -18,6 +18,7 @@ import org.jeecg.common.system.vo.LoginUser;
|
|
|
import org.jeecg.common.util.TokenUtils;
|
|
import org.jeecg.common.util.TokenUtils;
|
|
|
import org.jeecg.common.util.oConvertUtils;
|
|
import org.jeecg.common.util.oConvertUtils;
|
|
|
import org.jeecg.modules.kc.entity.*;
|
|
import org.jeecg.modules.kc.entity.*;
|
|
|
|
|
+import org.jeecg.modules.kc.enums.OutBoundEnum;
|
|
|
import org.jeecg.modules.kc.enums.StorageEnum;
|
|
import org.jeecg.modules.kc.enums.StorageEnum;
|
|
|
import org.jeecg.modules.kc.service.*;
|
|
import org.jeecg.modules.kc.service.*;
|
|
|
|
|
|
|
@@ -122,6 +123,16 @@ private IKcDepositoryInGoodsService kcDepositoryInGoodsService;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
|
|
+ * 出库类型列表
|
|
|
|
|
+ * @return
|
|
|
|
|
+ */
|
|
|
|
|
+ @ApiOperation(value="出库类型列表", notes="出库类型列表")
|
|
|
|
|
+ @GetMapping(value = "/outBoundTypeList")
|
|
|
|
|
+ public Result<List<DictModel>> outBoundTypeList() {
|
|
|
|
|
+ return Result.OK(OutBoundEnum.getDictList());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
* 生成16位数字+prefix
|
|
* 生成16位数字+prefix
|
|
|
* @param prefix
|
|
* @param prefix
|
|
|
* @return
|
|
* @return
|
|
@@ -237,23 +248,30 @@ private IKcDepositoryInGoodsService kcDepositoryInGoodsService;
|
|
|
List<KcStockDetail> stockDetailList = kcStockDetailService.list(lambdaQueryWrapper);
|
|
List<KcStockDetail> stockDetailList = kcStockDetailService.list(lambdaQueryWrapper);
|
|
|
if (ObjectUtils.isNotEmpty(stockDetailList)) {
|
|
if (ObjectUtils.isNotEmpty(stockDetailList)) {
|
|
|
for (KcStockDetail kcStockDetail : stockDetailList) {
|
|
for (KcStockDetail kcStockDetail : stockDetailList) {
|
|
|
- KcSupplierInGoods kcSupplierInGoods = kcSupplierInGoodsService.getById(kcStockDetail.getSupplierInGoodsId());
|
|
|
|
|
- if (kcSupplierInGoods != null) {
|
|
|
|
|
- KcGoods kcGoods = kcGoodsService.getById(kcSupplierInGoods.getGoodsId());
|
|
|
|
|
- if (kcGoods != null) {
|
|
|
|
|
- kcStockDetail.setKcGoods(kcGoods);
|
|
|
|
|
|
|
+ KcDepositoryInGoods depositoryInGoods = kcDepositoryInGoodsService.getById(kcStockDetail.getSupplierInGoodsId());
|
|
|
|
|
+ if (depositoryInGoods != null) {
|
|
|
|
|
+ if (depositoryInGoods != null) {
|
|
|
|
|
+ Integer num = depositoryInGoods.getNum() - kcStockDetail.getNum();
|
|
|
|
|
+ if (num < 0) num = 0;
|
|
|
|
|
+ depositoryInGoods.setNum(num);
|
|
|
|
|
+ kcDepositoryInGoodsService.updateById(depositoryInGoods);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- if (ObjectUtils.isNotEmpty(kcStockDetail.getKcGoods())) {
|
|
|
|
|
- LambdaQueryWrapper<KcDepositoryInGoods> lambdaQueryWrapper2 = new LambdaQueryWrapper<>();
|
|
|
|
|
- lambdaQueryWrapper2.eq(KcDepositoryInGoods::getDepositoryId, kcStock.getDepositoryId());
|
|
|
|
|
- lambdaQueryWrapper2.eq(KcDepositoryInGoods::getGoodsId, kcStockDetail.getKcGoods().getId());
|
|
|
|
|
- KcDepositoryInGoods kcDepositoryInGoods = kcDepositoryInGoodsService.getOne(lambdaQueryWrapper2);
|
|
|
|
|
- if (kcDepositoryInGoods != null) {
|
|
|
|
|
- Integer num = kcDepositoryInGoods.getNum() - kcStockDetail.getNum();
|
|
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ } else if (kcStock.getType().equals(3)) {
|
|
|
|
|
+ LambdaQueryWrapper<KcStockDetail> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
|
|
+ lambdaQueryWrapper.eq(KcStockDetail::getStockId, kcStock.getCode());
|
|
|
|
|
+ List<KcStockDetail> stockDetailList = kcStockDetailService.list(lambdaQueryWrapper);
|
|
|
|
|
+ if (ObjectUtils.isNotEmpty(stockDetailList)) {
|
|
|
|
|
+ for (KcStockDetail kcStockDetail : stockDetailList) {
|
|
|
|
|
+ KcDepositoryInGoods depositoryInGoods = kcDepositoryInGoodsService.getById(kcStockDetail.getSupplierInGoodsId());
|
|
|
|
|
+ if (depositoryInGoods != null) {
|
|
|
|
|
+ if (depositoryInGoods != null) {
|
|
|
|
|
+ Integer num = kcStockDetail.getNum();
|
|
|
if (num < 0) num = 0;
|
|
if (num < 0) num = 0;
|
|
|
- kcDepositoryInGoods.setNum(num);
|
|
|
|
|
- kcDepositoryInGoodsService.updateById(kcDepositoryInGoods);
|
|
|
|
|
|
|
+ depositoryInGoods.setNum(num);
|
|
|
|
|
+ kcDepositoryInGoodsService.updateById(depositoryInGoods);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|