Merge remote-tracking branch 'origin/master'

master
wanghao 1 week ago
commit 5a012a38ff

@ -0,0 +1,118 @@
package org.dromara.wms.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.wms.domain.bo.BaseMaterialCategoryBo;
import org.dromara.wms.domain.vo.BaseMaterialCategoryVo;
import org.dromara.wms.service.IBaseMaterialCategoryService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
*
* 访:/wms/baseMaterialCategory
*
* @author xins
* @date 2025-02-21
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/baseMaterialCategory")
public class BaseMaterialCategoryController extends BaseController {
private final IBaseMaterialCategoryService baseMaterialCategoryService;
/**
*
*/
@SaCheckPermission("mes:baseMaterialCategory:list")
@GetMapping("/list")
public TableDataInfo<BaseMaterialCategoryVo> list(BaseMaterialCategoryBo bo, PageQuery pageQuery) {
return baseMaterialCategoryService.queryPageList(bo, pageQuery);
}
/**
*
*/
@SaCheckPermission("mes:baseMaterialCategory:export")
@Log(title = "物料大类信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(BaseMaterialCategoryBo bo, HttpServletResponse response) {
List<BaseMaterialCategoryVo> list = baseMaterialCategoryService.queryList(bo);
ExcelUtil.exportExcel(list, "物料大类信息", BaseMaterialCategoryVo.class, response);
}
/**
*
*
* @param materialCategoryId
*/
@SaCheckPermission("mes:baseMaterialCategory:query")
@GetMapping("/{materialCategoryId}")
public R<BaseMaterialCategoryVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long materialCategoryId) {
return R.ok(baseMaterialCategoryService.queryById(materialCategoryId));
}
/**
*
*/
@SaCheckPermission("mes:baseMaterialCategory:add")
@Log(title = "物料大类信息", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody BaseMaterialCategoryBo bo) {
return toAjax(baseMaterialCategoryService.insertByBo(bo));
}
/**
*
*/
@SaCheckPermission("mes:baseMaterialCategory:edit")
@Log(title = "物料大类信息", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody BaseMaterialCategoryBo bo) {
return toAjax(baseMaterialCategoryService.updateByBo(bo));
}
/**
*
*
* @param materialCategoryIds
*/
@SaCheckPermission("mes:baseMaterialCategory:remove")
@Log(title = "物料大类信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{materialCategoryIds}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] materialCategoryIds) {
return toAjax(baseMaterialCategoryService.deleteWithValidByIds(List.of(materialCategoryIds), true));
}
/**
*
*/
@GetMapping("/getBaseMaterialCategoryList")
public R<List<BaseMaterialCategoryVo>> getBaseMaterialCategoryList(BaseMaterialCategoryBo bo) {
List<BaseMaterialCategoryVo> list = baseMaterialCategoryService.queryList(bo);
return R.ok(list);
}
}

@ -84,8 +84,8 @@ public class WmsInstockOrderServiceImpl implements IWmsInstockOrderService {
@Override
public TableDataInfo<WmsInstockOrderVo> queryPageList(WmsInstockOrderBo bo, PageQuery pageQuery) {
// LambdaQueryWrapper<WmsInstockOrder> lqw = buildQueryWrapper(bo);
MPJLambdaWrapper<WmsInstockOrder> lqw = buildJoinQueryWrapper(bo);
lqw.orderByDesc(WmsInstockOrder::getCreateTime);
MPJLambdaWrapper<WmsInstockOrder> lqw = buildQueryWrapper(bo);
/* lqw.orderByDesc(WmsInstockOrder::getCreateTime);*/
Page<WmsInstockOrderVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
@ -98,23 +98,47 @@ public class WmsInstockOrderServiceImpl implements IWmsInstockOrderService {
*/
@Override
public List<WmsInstockOrderVo> queryList(WmsInstockOrderBo bo) {
LambdaQueryWrapper<WmsInstockOrder> lqw = buildQueryWrapper(bo);
MPJLambdaWrapper<WmsInstockOrder> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private MPJLambdaWrapper<WmsInstockOrder> buildJoinQueryWrapper(WmsInstockOrderBo bo) {
private MPJLambdaWrapper<WmsInstockOrder> buildQueryWrapper(WmsInstockOrderBo bo) {
Map<String, Object> params = bo.getParams();
MPJLambdaWrapper<WmsInstockOrder> lqw = JoinWrappers.lambda(WmsInstockOrder.class)
.selectAll(WmsInstockOrder.class)
// 关联表查询物料大类名称
.select(BaseMaterialCategory::getMaterialCategoryName)
.leftJoin(BaseMaterialCategory.class, BaseMaterialCategory::getMaterialCategoryId, WmsInstockOrder::getMaterialCategoryId)
.select(WmsBaseWarehouse::getWarehouseCode)
.leftJoin(WmsBaseWarehouse.class, WmsBaseWarehouse::getWarehouseId, WmsInstockOrder::getWarehouseId)
.eq(bo.getInstockId() != null, WmsInstockOrder::getInstockId, bo.getInstockId())
.eq(StringUtils.isNotBlank(bo.getInstockCode()), WmsInstockOrder::getInstockCode, bo.getInstockCode())
.eq(StringUtils.isNotBlank(bo.getMaterialCategoryId()), WmsInstockOrder::getMaterialCategoryId, bo.getMaterialCategoryId())
.eq(StringUtils.isNotBlank(bo.getInstockType()), WmsInstockOrder::getInstockType, bo.getInstockType())
.eq(StringUtils.isNotBlank(bo.getOrderNo()), WmsInstockOrder::getOrderNo, bo.getOrderNo())
.eq(StringUtils.isNotBlank(bo.getAuditBy()), WmsInstockOrder::getAuditBy, bo.getAuditBy())
.eq(bo.getAuditTime() != null, WmsInstockOrder::getAuditTime, bo.getAuditTime())
.eq(StringUtils.isNotBlank(bo.getAuditStatus()), WmsInstockOrder::getAuditStatus, bo.getAuditStatus())
.eq(StringUtils.isNotBlank(bo.getAuditComments()), WmsInstockOrder::getAuditComments, bo.getAuditComments())
.eq(bo.getWarehouseId() != null, WmsInstockOrder::getWarehouseId, bo.getWarehouseId())
.orderByDesc(WmsInstockOrder::getCreateTime);
return lqw;
}
private MPJLambdaWrapper<WmsInstockOrder> buildJoinQueryWrapper(WmsInstockOrderBo bo) {
Map<String, Object> params = bo.getParams();
MPJLambdaWrapper<WmsInstockOrder> lqw = JoinWrappers.lambda(WmsInstockOrder.class)
.selectAll(WmsInstockOrder.class)
.select(WmsBaseWarehouse::getWarehouseCode)
.leftJoin(WmsBaseWarehouse.class, WmsBaseWarehouse::getWarehouseId, WmsInstockOrder::getWarehouseId);
lqw.eq(bo.getInstockId() != null, WmsInstockOrder::getInstockId, bo.getInstockId());
lqw.eq(StringUtils.isNotBlank(bo.getInstockCode()), WmsInstockOrder::getInstockCode, bo.getInstockCode());
lqw.eq(StringUtils.isNotBlank(bo.getMaterialCategoryId()), WmsInstockOrder::getMaterialCategoryId, bo.getMaterialCategoryId());
lqw.eq(bo.getMaterialCategoryId() != null, WmsInstockOrder::getMaterialCategoryId, bo.getMaterialCategoryId());
lqw.eq(StringUtils.isNotBlank(bo.getInstockType()), WmsInstockOrder::getInstockType, bo.getInstockType());
lqw.eq(StringUtils.isNotBlank(bo.getOrderNo()), WmsInstockOrder::getOrderNo, bo.getOrderNo());
lqw.eq(StringUtils.isNotBlank(bo.getAuditBy()), WmsInstockOrder::getAuditBy, bo.getAuditBy());
@ -124,7 +148,9 @@ public class WmsInstockOrderServiceImpl implements IWmsInstockOrderService {
lqw.eq(bo.getWarehouseId() != null, WmsInstockOrder::getWarehouseId, bo.getWarehouseId());
return lqw;
}
private LambdaQueryWrapper<WmsInstockOrder> buildQueryWrapper(WmsInstockOrderBo bo) {
/* private LambdaQueryWrapper<WmsInstockOrder> buildQueryWrapper(WmsInstockOrderBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<WmsInstockOrder> lqw = Wrappers.lambdaQuery();
lqw.eq(bo.getInstockId() != null, WmsInstockOrder::getInstockId, bo.getInstockId());
@ -138,7 +164,7 @@ public class WmsInstockOrderServiceImpl implements IWmsInstockOrderService {
lqw.eq(StringUtils.isNotBlank(bo.getAuditComments()), WmsInstockOrder::getAuditComments, bo.getAuditComments());
lqw.eq(bo.getWarehouseId() != null, WmsInstockOrder::getWarehouseId, bo.getWarehouseId());
return lqw;
}
}*/
/**
*

@ -61,7 +61,7 @@ public class WmsInstockPrintServiceImpl implements IWmsInstockPrintService {
public TableDataInfo<WmsInstockPrintVo> queryPageList(WmsInstockPrintBo bo, PageQuery pageQuery) {
/* LambdaQueryWrapper<WmsInstockPrint> lqw = buildQueryWrapper(bo);*/
MPJLambdaWrapper<WmsInstockPrint> lqw = buildQueryWrapper(bo);
lqw.orderByDesc(WmsInstockPrint::getCreateTime);
/* lqw.orderByDesc(WmsInstockPrint::getCreateTime);*/
Page<WmsInstockPrintVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}

@ -103,6 +103,11 @@ public class WmsInventoryServiceImpl implements IWmsInventoryService {
Map<String, Object> params = bo.getParams();
MPJLambdaWrapper<WmsInventory> lqw = JoinWrappers.lambda(WmsInventory.class)
.selectAll(WmsInventory.class)
// 关联表查询物料大类名称
.select(BaseMaterialCategory::getMaterialCategoryName)
.leftJoin(BaseMaterialCategory.class, BaseMaterialCategory::getMaterialCategoryId, WmsInventory::getMaterialCategoryId)
.select(WmsBaseWarehouse::getWarehouseCode)
.leftJoin(WmsBaseWarehouse.class, WmsBaseWarehouse::getWarehouseId, WmsInventory::getStoreId);
lqw.eq(bo.getInventoryId() != null, WmsInventory::getInventoryId, bo.getInventoryId());

@ -29,13 +29,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
MAX(x.lock_state) lock_state,
MAX(x.material_categories) material_categories,
MAX(x.location_code) locationCode,
MAX(x.batch_code) batchCode
MAX(x.batch_code) batchCode,
MAX(bmc.material_category_name) material_category_name
FROM
hwmom.dbo.wms_inventory x
left join base_material_info b on
x.material_id = b.material_id
left join wms_base_warehouse c on
x.warehouse_id = c.warehouse_id
left join base_material_category bmc on
x.material_categories = bmc.material_category_id
<where>
<!-- <if test="entity.materialId != null ">and x.material_id = #{entity.materialId}</if>-->
<if test="entity.warehouseId != null and entity.warehouseId != ''">and x.warehouse_id = #{entity.warehouseId}</if>

Loading…
Cancel
Save