@ -0,0 +1,23 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.enums;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发货单状态枚举
|
||||||
|
* @author chenxi
|
||||||
|
* @date 2024-01-26 12:38
|
||||||
|
*/
|
||||||
|
@Getter
|
||||||
|
public enum DeliverOrderStatusEnum {
|
||||||
|
|
||||||
|
SAVE(1, "已保存"),
|
||||||
|
DELIVER(2, "已发货");
|
||||||
|
|
||||||
|
private int code;
|
||||||
|
private String description;
|
||||||
|
|
||||||
|
DeliverOrderStatusEnum(int code, String description) {
|
||||||
|
this.code = code;
|
||||||
|
this.description = description;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,138 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.controller.admin.deliverorder;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum;
|
||||||
|
import com.chanko.yunxi.mes.framework.operatelog.core.service.OperateLogFrameworkService;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.projectorder.vo.ProjectOrderSaveReqVO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.enums.BusinesTypeEnum;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
|
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
import javax.validation.*;
|
||||||
|
import javax.servlet.http.*;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.*;
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
|
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog;
|
||||||
|
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.deliverorder.vo.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.deliverorder.DeliverOrderDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.deliverordersub.DeliverOrderSubDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.service.deliverorder.DeliverOrderService;
|
||||||
|
|
||||||
|
@Tag(name = "管理后台 - 发货订单")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/heli/deliver-order")
|
||||||
|
@Validated
|
||||||
|
public class DeliverOrderController {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private DeliverOrderService deliverOrderService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private OperateLogFrameworkService operateLogFrameworkService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private HttpServletRequest request;
|
||||||
|
|
||||||
|
@PostMapping("/create")
|
||||||
|
@Operation(summary = "创建发货订单")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:deliver-order:create')")
|
||||||
|
public CommonResult<Long> createDeliverOrder(@Valid @RequestBody DeliverOrderSaveReqVO createReqVO) {
|
||||||
|
return success(deliverOrderService.createDeliverOrder(createReqVO));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PutMapping("/update")
|
||||||
|
@Operation(summary = "更新发货订单")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:deliver-order:update')")
|
||||||
|
public CommonResult<Boolean> updateDeliverOrder(@Valid @RequestBody DeliverOrderSaveReqVO updateReqVO) {
|
||||||
|
deliverOrderService.updateDeliverOrder(updateReqVO);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/operate")
|
||||||
|
@Operation(summary = "操作项目订单")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:delivery-order:update')")
|
||||||
|
@OperateLog(enable = false)
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
public CommonResult<Long> operateProjectOrder(@Valid @RequestBody DeliverOrderSaveReqVO operateReqVO) {
|
||||||
|
LocalDateTime startTime = LocalDateTime.now();
|
||||||
|
deliverOrderService.operateProjectOrder(operateReqVO);
|
||||||
|
|
||||||
|
// 手动记录日志
|
||||||
|
operateLogFrameworkService.createOperateLog(request,
|
||||||
|
startTime,
|
||||||
|
BusinesTypeEnum.DELIVER_ORDER.name(),
|
||||||
|
operateReqVO.getId(),
|
||||||
|
OperateTypeEnum.valueOf(operateReqVO.getActive()).getType(),
|
||||||
|
operateReqVO.getActiveOpinion());
|
||||||
|
|
||||||
|
return success(operateReqVO.getId());
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/delete")
|
||||||
|
@Operation(summary = "删除发货订单")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:deliver-order:delete')")
|
||||||
|
public CommonResult<Boolean> deleteDeliverOrder(@RequestParam("id") Long id) {
|
||||||
|
deliverOrderService.deleteDeliverOrder(id);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/get")
|
||||||
|
@Operation(summary = "获得发货订单")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:deliver-order:query')")
|
||||||
|
public CommonResult<DeliverOrderRespVO> getDeliverOrder(@RequestParam("id") Long id) {
|
||||||
|
DeliverOrderDO deliverOrder = deliverOrderService.getDeliverOrder(id);
|
||||||
|
return success(BeanUtils.toBean(deliverOrder, DeliverOrderRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/page")
|
||||||
|
@Operation(summary = "获得发货订单分页")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:deliver-order:query')")
|
||||||
|
public CommonResult<PageResult<DeliverOrderRespVO>> getDeliverOrderPage(@Valid DeliverOrderPageReqVO pageReqVO) {
|
||||||
|
PageResult<DeliverOrderDO> pageResult = deliverOrderService.getDeliverOrderPage(pageReqVO);
|
||||||
|
return success(BeanUtils.toBean(pageResult, DeliverOrderRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/export-excel")
|
||||||
|
@Operation(summary = "导出发货订单 Excel")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:deliver-order:export')")
|
||||||
|
@OperateLog(type = EXPORT)
|
||||||
|
public void exportDeliverOrderExcel(@Valid DeliverOrderPageReqVO pageReqVO,
|
||||||
|
HttpServletResponse response) throws IOException {
|
||||||
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||||
|
List<DeliverOrderDO> list = deliverOrderService.getDeliverOrderPage(pageReqVO).getList();
|
||||||
|
// 导出 Excel
|
||||||
|
ExcelUtils.write(response, "发货订单.xls", "数据", DeliverOrderRespVO.class,
|
||||||
|
BeanUtils.toBean(list, DeliverOrderRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
// ==================== 子表(发货订单子项) ====================
|
||||||
|
|
||||||
|
@GetMapping("/deliver-order-sub/list-by-delivery-order-id")
|
||||||
|
@Operation(summary = "获得发货订单子项列表")
|
||||||
|
@Parameter(name = "deliveryOrderId", description = "订单id")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:deliver-order:query')")
|
||||||
|
public CommonResult<List<DeliverOrderSubDO>> getDeliverOrderSubListByDeliveryOrderId(@RequestParam("deliveryOrderId") Long deliveryOrderId) {
|
||||||
|
return success(deliverOrderService.getDeliverOrderSubListByDeliveryOrderId(deliveryOrderId));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -1,95 +1,102 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.controller.admin.pn;
|
package com.chanko.yunxi.mes.module.heli.controller.admin.pn;
|
||||||
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO;
|
||||||
import javax.annotation.Resource;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import javax.annotation.Resource;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import io.swagger.v3.oas.annotations.Parameter;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import javax.validation.constraints.*;
|
|
||||||
import javax.validation.*;
|
import javax.validation.constraints.*;
|
||||||
import javax.servlet.http.*;
|
import javax.validation.*;
|
||||||
import java.util.*;
|
import javax.servlet.http.*;
|
||||||
import java.io.IOException;
|
import java.util.*;
|
||||||
|
import java.io.IOException;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
|
||||||
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
|
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
|
||||||
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
|
|
||||||
|
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
|
||||||
import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog;
|
|
||||||
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
|
import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog;
|
||||||
|
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.pn.vo.*;
|
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.pn.PnDO;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.pn.vo.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.service.pn.PnService;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.pn.PnDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.service.pn.PnService;
|
||||||
@Tag(name = "管理后台 - 库位")
|
|
||||||
@RestController
|
@Tag(name = "管理后台 - 库位")
|
||||||
@RequestMapping("/heli/pn")
|
@RestController
|
||||||
@Validated
|
@RequestMapping("/heli/pn")
|
||||||
public class PnController {
|
@Validated
|
||||||
|
public class PnController {
|
||||||
@Resource
|
|
||||||
private PnService pnService;
|
@Resource
|
||||||
|
private PnService pnService;
|
||||||
@PostMapping("/create")
|
|
||||||
@Operation(summary = "创建库位")
|
@PostMapping("/create")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:pn:create')")
|
@Operation(summary = "创建库位")
|
||||||
public CommonResult<Long> createPn(@Valid @RequestBody PnSaveReqVO createReqVO) {
|
@PreAuthorize("@ss.hasPermission('heli:pn:create')")
|
||||||
return success(pnService.createPn(createReqVO));
|
public CommonResult<Long> createPn(@Valid @RequestBody PnSaveReqVO createReqVO) {
|
||||||
}
|
return success(pnService.createPn(createReqVO));
|
||||||
|
}
|
||||||
@PutMapping("/update")
|
|
||||||
@Operation(summary = "更新库位")
|
@PutMapping("/update")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:pn:update')")
|
@Operation(summary = "更新库位")
|
||||||
public CommonResult<Boolean> updatePn(@Valid @RequestBody PnSaveReqVO updateReqVO) {
|
@PreAuthorize("@ss.hasPermission('heli:pn:update')")
|
||||||
pnService.updatePn(updateReqVO);
|
public CommonResult<Boolean> updatePn(@Valid @RequestBody PnSaveReqVO updateReqVO) {
|
||||||
return success(true);
|
pnService.updatePn(updateReqVO);
|
||||||
}
|
return success(true);
|
||||||
|
}
|
||||||
@DeleteMapping("/delete")
|
|
||||||
@Operation(summary = "删除库位")
|
@DeleteMapping("/delete")
|
||||||
@Parameter(name = "id", description = "编号", required = true)
|
@Operation(summary = "删除库位")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:pn:delete')")
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
public CommonResult<Boolean> deletePn(@RequestParam("id") Long id) {
|
@PreAuthorize("@ss.hasPermission('heli:pn:delete')")
|
||||||
pnService.deletePn(id);
|
public CommonResult<Boolean> deletePn(@RequestParam("id") Long id) {
|
||||||
return success(true);
|
pnService.deletePn(id);
|
||||||
}
|
return success(true);
|
||||||
|
}
|
||||||
@GetMapping("/get")
|
|
||||||
@Operation(summary = "获得库位")
|
@GetMapping("/get")
|
||||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
@Operation(summary = "获得库位")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:pn:query')")
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
public CommonResult<PnRespVO> getPn(@RequestParam("id") Long id) {
|
@PreAuthorize("@ss.hasPermission('heli:pn:query')")
|
||||||
PnDO pn = pnService.getPn(id);
|
public CommonResult<PnRespVO> getPn(@RequestParam("id") Long id) {
|
||||||
return success(BeanUtils.toBean(pn, PnRespVO.class));
|
PnDO pn = pnService.getPn(id);
|
||||||
}
|
return success(BeanUtils.toBean(pn, PnRespVO.class));
|
||||||
|
}
|
||||||
@GetMapping("/page")
|
|
||||||
@Operation(summary = "获得库位分页")
|
@GetMapping("/page")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:pn:query')")
|
@Operation(summary = "获得库位分页")
|
||||||
public CommonResult<PageResult<PnRespVO>> getPnPage(@Valid PnPageReqVO pageReqVO) {
|
@PreAuthorize("@ss.hasPermission('heli:pn:query')")
|
||||||
PageResult<PnDO> pageResult = pnService.getPnPage(pageReqVO);
|
public CommonResult<PageResult<PnRespVO>> getPnPage(@Valid PnPageReqVO pageReqVO) {
|
||||||
return success(BeanUtils.toBean(pageResult, PnRespVO.class));
|
PageResult<PnDO> pageResult = pnService.getPnPage(pageReqVO);
|
||||||
}
|
return success(BeanUtils.toBean(pageResult, PnRespVO.class));
|
||||||
|
}
|
||||||
@GetMapping("/export-excel")
|
|
||||||
@Operation(summary = "导出库位 Excel")
|
@GetMapping("/export-excel")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:pn:export')")
|
@Operation(summary = "导出库位 Excel")
|
||||||
@OperateLog(type = EXPORT)
|
@PreAuthorize("@ss.hasPermission('heli:pn:export')")
|
||||||
public void exportPnExcel(@Valid PnPageReqVO pageReqVO,
|
@OperateLog(type = EXPORT)
|
||||||
HttpServletResponse response) throws IOException {
|
public void exportPnExcel(@Valid PnPageReqVO pageReqVO,
|
||||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
HttpServletResponse response) throws IOException {
|
||||||
List<PnDO> list = pnService.getPnPage(pageReqVO).getList();
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||||
// 导出 Excel
|
List<PnDO> list = pnService.getPnPage(pageReqVO).getList();
|
||||||
ExcelUtils.write(response, "库位.xls", "数据", PnRespVO.class,
|
// 导出 Excel
|
||||||
BeanUtils.toBean(list, PnRespVO.class));
|
ExcelUtils.write(response, "库位.xls", "数据", PnRespVO.class,
|
||||||
}
|
BeanUtils.toBean(list, PnRespVO.class));
|
||||||
|
}
|
||||||
}
|
@GetMapping({"/all-simples"})
|
||||||
|
@Operation(summary = "TODO:获取仓库精简信息列表", description = "只包含被开启的仓库,主要用于前端的下拉选项")
|
||||||
|
public CommonResult<List<Map<String, Object>> > getSimpleList() {
|
||||||
|
List<Map<String, Object>> list = pnService.getSimpleList();
|
||||||
|
// 拼接数据
|
||||||
|
return success(list);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -1,95 +1,103 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.controller.admin.rg;
|
package com.chanko.yunxi.mes.module.heli.controller.admin.rg;
|
||||||
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.warehouse.WarehouseDO;
|
||||||
import javax.annotation.Resource;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import javax.annotation.Resource;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import io.swagger.v3.oas.annotations.Parameter;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import javax.validation.constraints.*;
|
|
||||||
import javax.validation.*;
|
import javax.validation.constraints.*;
|
||||||
import javax.servlet.http.*;
|
import javax.validation.*;
|
||||||
import java.util.*;
|
import javax.servlet.http.*;
|
||||||
import java.io.IOException;
|
import java.util.*;
|
||||||
|
import java.io.IOException;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
|
||||||
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
|
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
|
||||||
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
|
|
||||||
|
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
|
||||||
import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog;
|
|
||||||
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
|
import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog;
|
||||||
|
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.rg.vo.*;
|
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.rg.vo.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.service.rg.RgService;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.service.rg.RgService;
|
||||||
@Tag(name = "管理后台 - 库区")
|
|
||||||
@RestController
|
@Tag(name = "管理后台 - 库区")
|
||||||
@RequestMapping("/heli/rg")
|
@RestController
|
||||||
@Validated
|
@RequestMapping("/heli/rg")
|
||||||
public class RgController {
|
@Validated
|
||||||
|
public class RgController {
|
||||||
@Resource
|
|
||||||
private RgService rgService;
|
@Resource
|
||||||
|
private RgService rgService;
|
||||||
@PostMapping("/create")
|
|
||||||
@Operation(summary = "创建库区")
|
@PostMapping("/create")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:rg:create')")
|
@Operation(summary = "创建库区")
|
||||||
public CommonResult<Long> createRg(@Valid @RequestBody RgSaveReqVO createReqVO) {
|
@PreAuthorize("@ss.hasPermission('heli:rg:create')")
|
||||||
return success(rgService.createRg(createReqVO));
|
public CommonResult<Long> createRg(@Valid @RequestBody RgSaveReqVO createReqVO) {
|
||||||
}
|
return success(rgService.createRg(createReqVO));
|
||||||
|
}
|
||||||
@PutMapping("/update")
|
|
||||||
@Operation(summary = "更新库区")
|
@PutMapping("/update")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:rg:update')")
|
@Operation(summary = "更新库区")
|
||||||
public CommonResult<Boolean> updateRg(@Valid @RequestBody RgSaveReqVO updateReqVO) {
|
@PreAuthorize("@ss.hasPermission('heli:rg:update')")
|
||||||
rgService.updateRg(updateReqVO);
|
public CommonResult<Boolean> updateRg(@Valid @RequestBody RgSaveReqVO updateReqVO) {
|
||||||
return success(true);
|
rgService.updateRg(updateReqVO);
|
||||||
}
|
return success(true);
|
||||||
|
}
|
||||||
@DeleteMapping("/delete")
|
|
||||||
@Operation(summary = "删除库区")
|
@DeleteMapping("/delete")
|
||||||
@Parameter(name = "id", description = "编号", required = true)
|
@Operation(summary = "删除库区")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:rg:delete')")
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
public CommonResult<Boolean> deleteRg(@RequestParam("id") Long id) {
|
@PreAuthorize("@ss.hasPermission('heli:rg:delete')")
|
||||||
rgService.deleteRg(id);
|
public CommonResult<Boolean> deleteRg(@RequestParam("id") Long id) {
|
||||||
return success(true);
|
rgService.deleteRg(id);
|
||||||
}
|
return success(true);
|
||||||
|
}
|
||||||
@GetMapping("/get")
|
|
||||||
@Operation(summary = "获得库区")
|
@GetMapping("/get")
|
||||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
@Operation(summary = "获得库区")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:rg:query')")
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
public CommonResult<RgRespVO> getRg(@RequestParam("id") Long id) {
|
@PreAuthorize("@ss.hasPermission('heli:rg:query')")
|
||||||
RgDO rg = rgService.getRg(id);
|
public CommonResult<RgRespVO> getRg(@RequestParam("id") Long id) {
|
||||||
return success(BeanUtils.toBean(rg, RgRespVO.class));
|
RgDO rg = rgService.getRg(id);
|
||||||
}
|
return success(BeanUtils.toBean(rg, RgRespVO.class));
|
||||||
|
}
|
||||||
@GetMapping("/page")
|
|
||||||
@Operation(summary = "获得库区分页")
|
@GetMapping("/page")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:rg:query')")
|
@Operation(summary = "获得库区分页")
|
||||||
public CommonResult<PageResult<RgRespVO>> getRgPage(@Valid RgPageReqVO pageReqVO) {
|
@PreAuthorize("@ss.hasPermission('heli:rg:query')")
|
||||||
PageResult<RgDO> pageResult = rgService.getRgPage(pageReqVO);
|
public CommonResult<PageResult<RgRespVO>> getRgPage(@Valid RgPageReqVO pageReqVO) {
|
||||||
return success(BeanUtils.toBean(pageResult, RgRespVO.class));
|
PageResult<RgDO> pageResult = rgService.getRgPage(pageReqVO);
|
||||||
}
|
return success(BeanUtils.toBean(pageResult, RgRespVO.class));
|
||||||
|
}
|
||||||
@GetMapping("/export-excel")
|
|
||||||
@Operation(summary = "导出库区 Excel")
|
@GetMapping("/export-excel")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:rg:export')")
|
@Operation(summary = "导出库区 Excel")
|
||||||
@OperateLog(type = EXPORT)
|
@PreAuthorize("@ss.hasPermission('heli:rg:export')")
|
||||||
public void exportRgExcel(@Valid RgPageReqVO pageReqVO,
|
@OperateLog(type = EXPORT)
|
||||||
HttpServletResponse response) throws IOException {
|
public void exportRgExcel(@Valid RgPageReqVO pageReqVO,
|
||||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
HttpServletResponse response) throws IOException {
|
||||||
List<RgDO> list = rgService.getRgPage(pageReqVO).getList();
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||||
// 导出 Excel
|
List<RgDO> list = rgService.getRgPage(pageReqVO).getList();
|
||||||
ExcelUtils.write(response, "库区.xls", "数据", RgRespVO.class,
|
// 导出 Excel
|
||||||
BeanUtils.toBean(list, RgRespVO.class));
|
ExcelUtils.write(response, "库区.xls", "数据", RgRespVO.class,
|
||||||
}
|
BeanUtils.toBean(list, RgRespVO.class));
|
||||||
|
}
|
||||||
}
|
|
||||||
|
@GetMapping({"/all-simples"})
|
||||||
|
@Operation(summary = "TODO:获取仓库精简信息列表", description = "只包含被开启的仓库,主要用于前端的下拉选项")
|
||||||
|
public CommonResult<List<Map<String, Object>> > getSimpleList() {
|
||||||
|
List<Map<String, Object>> list = rgService.getSimpleList();
|
||||||
|
// 拼接数据
|
||||||
|
return success(list);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -0,0 +1,128 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.controller.admin.storagecheck;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storage.vo.StorageSaveReqVO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storage.StorageDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelog.StorageLogDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagemat.StorageMatDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.service.storagecheckmat.StorageCheckMatService;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
|
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
import javax.validation.*;
|
||||||
|
import javax.servlet.http.*;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.*;
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
|
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog;
|
||||||
|
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagecheck.vo.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagecheck.StorageCheckDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.service.storagecheck.StorageCheckService;
|
||||||
|
|
||||||
|
@Tag(name = "管理后台 - 入/出库盘点")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/heli/storage-check")
|
||||||
|
@Validated
|
||||||
|
public class StorageCheckController {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private StorageCheckService storageCheckService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private StorageCheckMatService storageCheckMatService;
|
||||||
|
|
||||||
|
@PostMapping("/create")
|
||||||
|
@Operation(summary = "创建入/出库盘点")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check:create')")
|
||||||
|
public CommonResult<Long> createStorageCheck(@Valid @RequestBody StorageCheckSaveReqVO createReqVO) {
|
||||||
|
return success(storageCheckService.createStorageCheck(createReqVO));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PutMapping("/update")
|
||||||
|
@Operation(summary = "更新入/出库盘点")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check:update')")
|
||||||
|
public CommonResult<Boolean> updateStorageCheck(@Valid @RequestBody StorageCheckSaveReqVO updateReqVO) {
|
||||||
|
storageCheckService.updateStorageCheck(updateReqVO);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PutMapping("/update-status")
|
||||||
|
@Operation(summary = "更新盘点状态")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage:update')")
|
||||||
|
public CommonResult<Boolean> updateStorageCheckStatus(@Valid @RequestBody StorageCheckSaveReqVO updateReqVO) {
|
||||||
|
|
||||||
|
// 提交或者删除时记录相关操作人
|
||||||
|
LocalDateTime currTime = LocalDateTime.now();
|
||||||
|
if(updateReqVO.getStatus().equals(2)){
|
||||||
|
// 已提交时间更新
|
||||||
|
updateReqVO.setKeeperTime(currTime);
|
||||||
|
} else if(updateReqVO.getStatus().equals(3)){
|
||||||
|
// 已删除时间更新
|
||||||
|
updateReqVO.setCancelTime(currTime);
|
||||||
|
}
|
||||||
|
// 盘点信息保存
|
||||||
|
storageCheckService.updateStorageCheck(updateReqVO);
|
||||||
|
|
||||||
|
// TODO保存物料列表信息
|
||||||
|
|
||||||
|
// TODO生成入库/出库单据
|
||||||
|
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/delete")
|
||||||
|
@Operation(summary = "删除入/出库盘点")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check:delete')")
|
||||||
|
public CommonResult<Boolean> deleteStorageCheck(@RequestParam("id") Long id) {
|
||||||
|
storageCheckService.deleteStorageCheck(id);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/get")
|
||||||
|
@Operation(summary = "获得入/出库盘点")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check:query')")
|
||||||
|
public CommonResult<StorageCheckRespVO> getStorageCheck(@RequestParam("id") Long id) {
|
||||||
|
StorageCheckDO storageCheck = storageCheckService.getStorageCheck(id);
|
||||||
|
return success(BeanUtils.toBean(storageCheck, StorageCheckRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/page")
|
||||||
|
@Operation(summary = "获得入/出库盘点分页")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check:query')")
|
||||||
|
public CommonResult<PageResult<StorageCheckRespVO>> getStorageCheckPage(@Valid StorageCheckPageReqVO pageReqVO) {
|
||||||
|
PageResult<StorageCheckDO> pageResult = storageCheckService.getStorageCheckPage(pageReqVO);
|
||||||
|
return success(BeanUtils.toBean(pageResult, StorageCheckRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/export-excel")
|
||||||
|
@Operation(summary = "导出入/出库盘点 Excel")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check:export')")
|
||||||
|
@OperateLog(type = EXPORT)
|
||||||
|
public void exportStorageCheckExcel(@Valid StorageCheckPageReqVO pageReqVO,
|
||||||
|
HttpServletResponse response) throws IOException {
|
||||||
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||||
|
List<StorageCheckDO> list = storageCheckService.getStorageCheckPage(pageReqVO).getList();
|
||||||
|
// 导出 Excel
|
||||||
|
ExcelUtils.write(response, "入/出库盘点.xls", "数据", StorageCheckRespVO.class,
|
||||||
|
BeanUtils.toBean(list, StorageCheckRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,95 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.controller.admin.storagecheckmat;
|
||||||
|
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
|
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
import javax.validation.*;
|
||||||
|
import javax.servlet.http.*;
|
||||||
|
import java.util.*;
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
|
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog;
|
||||||
|
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagecheckmat.vo.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagecheckmat.StorageCheckMatDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.service.storagecheckmat.StorageCheckMatService;
|
||||||
|
|
||||||
|
@Tag(name = "管理后台 - 盘点物料")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/heli/storage-check-mat")
|
||||||
|
@Validated
|
||||||
|
public class StorageCheckMatController {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private StorageCheckMatService storageCheckMatService;
|
||||||
|
|
||||||
|
@PostMapping("/create")
|
||||||
|
@Operation(summary = "创建盘点物料")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check-mat:create')")
|
||||||
|
public CommonResult<Long> createStorageCheckMat(@Valid @RequestBody StorageCheckMatSaveReqVO createReqVO) {
|
||||||
|
return success(storageCheckMatService.createStorageCheckMat(createReqVO));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PutMapping("/update")
|
||||||
|
@Operation(summary = "更新盘点物料")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check-mat:update')")
|
||||||
|
public CommonResult<Boolean> updateStorageCheckMat(@Valid @RequestBody StorageCheckMatSaveReqVO updateReqVO) {
|
||||||
|
storageCheckMatService.updateStorageCheckMat(updateReqVO);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/delete")
|
||||||
|
@Operation(summary = "删除盘点物料")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check-mat:delete')")
|
||||||
|
public CommonResult<Boolean> deleteStorageCheckMat(@RequestParam("id") Long id) {
|
||||||
|
storageCheckMatService.deleteStorageCheckMat(id);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/get")
|
||||||
|
@Operation(summary = "获得盘点物料")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check-mat:query')")
|
||||||
|
public CommonResult<StorageCheckMatRespVO> getStorageCheckMat(@RequestParam("id") Long id) {
|
||||||
|
StorageCheckMatDO storageCheckMat = storageCheckMatService.getStorageCheckMat(id);
|
||||||
|
return success(BeanUtils.toBean(storageCheckMat, StorageCheckMatRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/page")
|
||||||
|
@Operation(summary = "获得盘点物料分页")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check-mat:query')")
|
||||||
|
public CommonResult<PageResult<StorageCheckMatRespVO>> getStorageCheckMatPage(@Valid StorageCheckMatPageReqVO pageReqVO) {
|
||||||
|
PageResult<StorageCheckMatDO> pageResult = storageCheckMatService.getStorageCheckMatPage(pageReqVO);
|
||||||
|
return success(BeanUtils.toBean(pageResult, StorageCheckMatRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/export-excel")
|
||||||
|
@Operation(summary = "导出盘点物料 Excel")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-check-mat:export')")
|
||||||
|
@OperateLog(type = EXPORT)
|
||||||
|
public void exportStorageCheckMatExcel(@Valid StorageCheckMatPageReqVO pageReqVO,
|
||||||
|
HttpServletResponse response) throws IOException {
|
||||||
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||||
|
List<StorageCheckMatDO> list = storageCheckMatService.getStorageCheckMatPage(pageReqVO).getList();
|
||||||
|
// 导出 Excel
|
||||||
|
ExcelUtils.write(response, "盘点物料.xls", "数据", StorageCheckMatRespVO.class,
|
||||||
|
BeanUtils.toBean(list, StorageCheckMatRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -1,95 +1,105 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.controller.admin.storagelog;
|
package com.chanko.yunxi.mes.module.heli.controller.admin.storagelog;
|
||||||
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogAll.StorageLogAllDO;
|
||||||
import javax.annotation.Resource;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow.StorageLogNowDO;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import javax.annotation.Resource;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import io.swagger.v3.oas.annotations.Parameter;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
import javax.validation.constraints.*;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import javax.validation.*;
|
|
||||||
import javax.servlet.http.*;
|
import javax.validation.constraints.*;
|
||||||
import java.util.*;
|
import javax.validation.*;
|
||||||
import java.io.IOException;
|
import javax.servlet.http.*;
|
||||||
|
import java.util.*;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
import java.io.IOException;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
|
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
|
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
|
||||||
|
|
||||||
import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog;
|
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
|
||||||
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
|
|
||||||
|
import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.storagelog.vo.*;
|
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelog.StorageLogDO;
|
|
||||||
import com.chanko.yunxi.mes.module.heli.service.storagelog.StorageLogService;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagelog.vo.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelog.StorageLogDO;
|
||||||
@Tag(name = "管理后台 - 入/出库日志")
|
import com.chanko.yunxi.mes.module.heli.service.storagelog.StorageLogService;
|
||||||
@RestController
|
|
||||||
@RequestMapping("/heli/storage-log")
|
@Tag(name = "管理后台 - 入/出库日志")
|
||||||
@Validated
|
@RestController
|
||||||
public class StorageLogController {
|
@RequestMapping("/heli/storage-log")
|
||||||
|
@Validated
|
||||||
@Resource
|
public class StorageLogController {
|
||||||
private StorageLogService storageLogService;
|
|
||||||
|
@Resource
|
||||||
@PostMapping("/create")
|
private StorageLogService storageLogService;
|
||||||
@Operation(summary = "创建入/出库日志")
|
|
||||||
@PreAuthorize("@ss.hasPermission('heli:storage-log:create')")
|
@PostMapping("/create")
|
||||||
public CommonResult<Long> createStorageLog(@Valid @RequestBody StorageLogSaveReqVO createReqVO) {
|
@Operation(summary = "创建入/出库日志")
|
||||||
return success(storageLogService.createStorageLog(createReqVO));
|
@PreAuthorize("@ss.hasPermission('heli:storage-log:create')")
|
||||||
}
|
public CommonResult<Long> createStorageLog(@Valid @RequestBody StorageLogSaveReqVO createReqVO) {
|
||||||
|
return success(storageLogService.createStorageLog(createReqVO));
|
||||||
@PutMapping("/update")
|
}
|
||||||
@Operation(summary = "更新入/出库日志")
|
|
||||||
@PreAuthorize("@ss.hasPermission('heli:storage-log:update')")
|
@PutMapping("/update")
|
||||||
public CommonResult<Boolean> updateStorageLog(@Valid @RequestBody StorageLogSaveReqVO updateReqVO) {
|
@Operation(summary = "更新入/出库日志")
|
||||||
storageLogService.updateStorageLog(updateReqVO);
|
@PreAuthorize("@ss.hasPermission('heli:storage-log:update')")
|
||||||
return success(true);
|
public CommonResult<Boolean> updateStorageLog(@Valid @RequestBody StorageLogSaveReqVO updateReqVO) {
|
||||||
}
|
storageLogService.updateStorageLog(updateReqVO);
|
||||||
|
return success(true);
|
||||||
@DeleteMapping("/delete")
|
}
|
||||||
@Operation(summary = "删除入/出库日志")
|
|
||||||
@Parameter(name = "id", description = "编号", required = true)
|
@DeleteMapping("/delete")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:storage-log:delete')")
|
@Operation(summary = "删除入/出库日志")
|
||||||
public CommonResult<Boolean> deleteStorageLog(@RequestParam("id") Long id) {
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
storageLogService.deleteStorageLog(id);
|
@PreAuthorize("@ss.hasPermission('heli:storage-log:delete')")
|
||||||
return success(true);
|
public CommonResult<Boolean> deleteStorageLog(@RequestParam("id") Long id) {
|
||||||
}
|
storageLogService.deleteStorageLog(id);
|
||||||
|
return success(true);
|
||||||
@GetMapping("/get")
|
}
|
||||||
@Operation(summary = "获得入/出库日志")
|
|
||||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
@GetMapping("/get")
|
||||||
@PreAuthorize("@ss.hasPermission('heli:storage-log:query')")
|
@Operation(summary = "获得入/出库日志")
|
||||||
public CommonResult<StorageLogRespVO> getStorageLog(@RequestParam("id") Long id) {
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
StorageLogDO storageLog = storageLogService.getStorageLog(id);
|
@PreAuthorize("@ss.hasPermission('heli:storage-log:query')")
|
||||||
return success(BeanUtils.toBean(storageLog, StorageLogRespVO.class));
|
public CommonResult<StorageLogRespVO> getStorageLog(@RequestParam("id") Long id) {
|
||||||
}
|
StorageLogDO storageLog = storageLogService.getStorageLog(id);
|
||||||
|
return success(BeanUtils.toBean(storageLog, StorageLogRespVO.class));
|
||||||
@GetMapping("/page")
|
}
|
||||||
@Operation(summary = "获得入/出库日志分页")
|
|
||||||
@PreAuthorize("@ss.hasPermission('heli:storage-log:query')")
|
@GetMapping("/page")
|
||||||
public CommonResult<PageResult<StorageLogRespVO>> getStorageLogPage(@Valid StorageLogPageReqVO pageReqVO) {
|
@Operation(summary = "获得入/出库日志分页")
|
||||||
PageResult<StorageLogDO> pageResult = storageLogService.getStorageLogPage(pageReqVO);
|
@PreAuthorize("@ss.hasPermission('heli:storage-log:query')")
|
||||||
return success(BeanUtils.toBean(pageResult, StorageLogRespVO.class));
|
public CommonResult<PageResult<StorageLogAllDO>> getStorageLogPage(@Valid StorageLogPageReqVO pageReqVO) {
|
||||||
}
|
PageResult<StorageLogAllDO> pageResult = storageLogService.getStorageLogPage(pageReqVO);
|
||||||
|
return success(pageResult);
|
||||||
@GetMapping("/export-excel")
|
}
|
||||||
@Operation(summary = "导出入/出库日志 Excel")
|
|
||||||
@PreAuthorize("@ss.hasPermission('heli:storage-log:export')")
|
@GetMapping("/now")
|
||||||
@OperateLog(type = EXPORT)
|
@Operation(summary = "获得入/出库实时分页")
|
||||||
public void exportStorageLogExcel(@Valid StorageLogPageReqVO pageReqVO,
|
@PreAuthorize("@ss.hasPermission('heli:storage-log:query')")
|
||||||
HttpServletResponse response) throws IOException {
|
public CommonResult<PageResult<StorageLogNowDO>> getStorageNowPage(@Valid StorageLogPageReqVO pageReqVO) {
|
||||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
PageResult<StorageLogNowDO> pageResult = storageLogService.getStorageNowPage(pageReqVO);
|
||||||
List<StorageLogDO> list = storageLogService.getStorageLogPage(pageReqVO).getList();
|
return success(pageResult);
|
||||||
// 导出 Excel
|
}
|
||||||
ExcelUtils.write(response, "入/出库日志.xls", "数据", StorageLogRespVO.class,
|
|
||||||
BeanUtils.toBean(list, StorageLogRespVO.class));
|
@GetMapping("/export-excel")
|
||||||
}
|
@Operation(summary = "导出入/出库日志 Excel")
|
||||||
|
@PreAuthorize("@ss.hasPermission('heli:storage-log:export')")
|
||||||
}
|
@OperateLog(type = EXPORT)
|
||||||
|
public void exportStorageLogExcel(@Valid StorageLogPageReqVO pageReqVO,
|
||||||
|
HttpServletResponse response) throws IOException {
|
||||||
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||||
|
List<StorageLogAllDO> list = storageLogService.getStorageLogPage(pageReqVO).getList();
|
||||||
|
// 导出 Excel
|
||||||
|
ExcelUtils.write(response, "入/出库日志.xls", "数据", StorageLogRespVO.class,
|
||||||
|
BeanUtils.toBean(list, StorageLogRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
@ -0,0 +1,66 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogAll;
|
||||||
|
|
||||||
|
import com.alibaba.excel.annotation.ExcelProperty;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.dataobject.BaseDO;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.*;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入/出库日志 DO
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
@TableName("v_storage_material_log")
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class StorageLogAllDO extends BaseDO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 主键id
|
||||||
|
*/
|
||||||
|
@TableId
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 库存良品数量
|
||||||
|
*/
|
||||||
|
private BigDecimal storageOkQty;
|
||||||
|
/**
|
||||||
|
* 批次号
|
||||||
|
*/
|
||||||
|
private String lotNo;
|
||||||
|
|
||||||
|
private String stockNo;
|
||||||
|
|
||||||
|
private Integer stockType;
|
||||||
|
|
||||||
|
private String stockTypeName;
|
||||||
|
|
||||||
|
private String headerNo;
|
||||||
|
|
||||||
|
private String matName;
|
||||||
|
|
||||||
|
private String matCode;
|
||||||
|
|
||||||
|
private String matType;
|
||||||
|
|
||||||
|
private String whName;
|
||||||
|
|
||||||
|
private String rgName;
|
||||||
|
|
||||||
|
private String pnName;
|
||||||
|
|
||||||
|
private String shortName;
|
||||||
|
|
||||||
|
private String matSpec;
|
||||||
|
private String matBrand;
|
||||||
|
private String matUnit;
|
||||||
|
}
|
@ -0,0 +1,59 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.dataobject.BaseDO;
|
||||||
|
import lombok.*;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入/出库日志 DO
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
@TableName("v_storage_material_now")
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class StorageLogNowDO extends BaseDO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 主键id
|
||||||
|
*/
|
||||||
|
@TableId
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 库存良品数量
|
||||||
|
*/
|
||||||
|
private BigDecimal storageOkQty;
|
||||||
|
/**
|
||||||
|
* 批次号
|
||||||
|
*/
|
||||||
|
private String lotNo;
|
||||||
|
|
||||||
|
private String matName;
|
||||||
|
|
||||||
|
private String matCode;
|
||||||
|
|
||||||
|
private String matType;
|
||||||
|
|
||||||
|
private Long whId;
|
||||||
|
private String whName;
|
||||||
|
|
||||||
|
private Long rgId;
|
||||||
|
private String rgName;
|
||||||
|
|
||||||
|
private Long pnId;
|
||||||
|
private String pnName;
|
||||||
|
|
||||||
|
private String shortName;
|
||||||
|
|
||||||
|
private String matSpec;
|
||||||
|
private String matBrand;
|
||||||
|
private String matUnit;
|
||||||
|
}
|
@ -0,0 +1,62 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.dal.mysql.deliverorder;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.util.collection.ArrayUtils;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.deliverorder.vo.DeliverOrderPageReqVO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.customer.CustomerDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.deliverorder.DeliverOrderDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderDO;
|
||||||
|
import com.chanko.yunxi.mes.module.system.dal.dataobject.dept.DeptDO;
|
||||||
|
import com.chanko.yunxi.mes.module.system.dal.dataobject.user.AdminUserDO;
|
||||||
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import org.springframework.util.StringUtils;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发货订单 Mapper
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface DeliverOrderMapper extends BaseMapperX<DeliverOrderDO> {
|
||||||
|
|
||||||
|
default PageResult<DeliverOrderDO> selectPage(DeliverOrderPageReqVO reqVO) {
|
||||||
|
MPJLambdaWrapper<DeliverOrderDO> query = new MPJLambdaWrapper<>();
|
||||||
|
query.selectAll(DeliverOrderDO.class)
|
||||||
|
.select("u.nickname as deliverPersonName", "e.name as customerName")
|
||||||
|
.select("GROUP_CONCAT(distinct p.code) as saleOrderCode", "GROUP_CONCAT(distinct p.mould_name) as mouldName"
|
||||||
|
, "GROUP_CONCAT(distinct p.contract_no) as contractNo", "GROUP_CONCAT(distinct p.property) as property")
|
||||||
|
.leftJoin("project_sale_order p on FIND_IN_SET(p.id, t.sale_order_ids)")
|
||||||
|
.leftJoin(AdminUserDO.class, "u", AdminUserDO::getId, DeliverOrderDO::getDeliverPerson)
|
||||||
|
.leftJoin(CustomerDO.class, "e", CustomerDO::getId, DeliverOrderDO::getCustomerId)
|
||||||
|
.groupBy(DeliverOrderDO::getId)
|
||||||
|
.orderByDesc(DeliverOrderDO::getId)
|
||||||
|
.disableSubLogicDel();
|
||||||
|
query.like(!StringUtils.isEmpty(reqVO.getCode()), DeliverOrderDO::getCode, reqVO.getCode())
|
||||||
|
.like(!StringUtils.isEmpty(reqVO.getSaleOrderCode()), "p.code", reqVO.getSaleOrderCode())
|
||||||
|
.like(!StringUtils.isEmpty(reqVO.getCustomerName()), "e.name", reqVO.getCustomerName())
|
||||||
|
.like(!StringUtils.isEmpty(reqVO.getMouldName()), "p.mould_name", reqVO.getMouldName())
|
||||||
|
.between(reqVO.getDeliverDate() != null && reqVO.getDeliverDate().length == 2,
|
||||||
|
DeliverOrderDO::getDeliverDate, ArrayUtils.get(reqVO.getDeliverDate(), 0), ArrayUtils.get(reqVO.getDeliverDate(), 1))
|
||||||
|
.eq(reqVO.getDeliverStatus() != null, DeliverOrderDO::getDeliverStatus, reqVO.getDeliverStatus());
|
||||||
|
return selectPage(reqVO, query);
|
||||||
|
}
|
||||||
|
|
||||||
|
default DeliverOrderDO selectById(Long id) {
|
||||||
|
MPJLambdaWrapper<DeliverOrderDO> query = new MPJLambdaWrapper<>();
|
||||||
|
query.selectAll(DeliverOrderDO.class)
|
||||||
|
.select("u.nickname as deliverPersonName", "e.name as customerName")
|
||||||
|
.select("GROUP_CONCAT(distinct p.code) as saleOrderCode", "GROUP_CONCAT(distinct p.mould_name) as mouldName"
|
||||||
|
, "GROUP_CONCAT(distinct p.contract_no) as contractNo", "GROUP_CONCAT(distinct p.property) as property")
|
||||||
|
.leftJoin("project_sale_order p on FIND_IN_SET(p.id, t.sale_order_ids)")
|
||||||
|
.leftJoin(CustomerDO.class, "e", CustomerDO::getId, DeliverOrderDO::getCustomerId)
|
||||||
|
.leftJoin(AdminUserDO.class, "u", AdminUserDO::getId, DeliverOrderDO::getDeliverPerson)
|
||||||
|
.eq(DeliverOrderDO::getId, id)
|
||||||
|
.groupBy(DeliverOrderDO::getId)
|
||||||
|
.last("LIMIT 1")
|
||||||
|
.disableSubLogicDel();
|
||||||
|
return selectOne(query);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.dal.mysql.deliverordersub;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.deliverordersub.DeliverOrderSubDO;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发货订单子项 Mapper
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface DeliverOrderSubMapper extends BaseMapperX<DeliverOrderSubDO> {
|
||||||
|
|
||||||
|
default List<DeliverOrderSubDO> selectListByDeliveryOrderId(Long deliveryOrderId) {
|
||||||
|
return selectList(DeliverOrderSubDO::getDeliveryOrderId, deliveryOrderId);
|
||||||
|
}
|
||||||
|
|
||||||
|
default int deleteByDeliveryOrderId(Long deliveryOrderId) {
|
||||||
|
return delete(DeliverOrderSubDO::getDeliveryOrderId, deliveryOrderId);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,42 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.dal.mysql.storagecheck;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagecheck.StorageCheckDO;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagecheck.vo.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入/出库盘点 Mapper
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface StorageCheckMapper extends BaseMapperX<StorageCheckDO> {
|
||||||
|
|
||||||
|
default PageResult<StorageCheckDO> selectPage(StorageCheckPageReqVO reqVO) {
|
||||||
|
return selectPage(reqVO, new LambdaQueryWrapperX<StorageCheckDO>()
|
||||||
|
.eqIfPresent(StorageCheckDO::getId, reqVO.getId())
|
||||||
|
.eqIfPresent(StorageCheckDO::getStockNo, reqVO.getStockNo())
|
||||||
|
.eqIfPresent(StorageCheckDO::getCheckType, reqVO.getCheckType())
|
||||||
|
.eqIfPresent(StorageCheckDO::getNoZero, reqVO.getNoZero())
|
||||||
|
.eqIfPresent(StorageCheckDO::getDescription, reqVO.getDescription())
|
||||||
|
.eqIfPresent(StorageCheckDO::getStatus, reqVO.getStatus())
|
||||||
|
.eqIfPresent(StorageCheckDO::getWhId, reqVO.getWhId())
|
||||||
|
.eqIfPresent(StorageCheckDO::getCreator, reqVO.getCreator())
|
||||||
|
.betweenIfPresent(StorageCheckDO::getCreateTime, reqVO.getCreateTime())
|
||||||
|
.eqIfPresent(StorageCheckDO::getUpdater, reqVO.getUpdater())
|
||||||
|
.betweenIfPresent(StorageCheckDO::getUpdateTime, reqVO.getUpdateTime())
|
||||||
|
.eqIfPresent(StorageCheckDO::getKeeper, reqVO.getKeeper())
|
||||||
|
.betweenIfPresent(StorageCheckDO::getKeeperTime, reqVO.getKeeperTime())
|
||||||
|
.eqIfPresent(StorageCheckDO::getOutbound, reqVO.getOutbound())
|
||||||
|
.betweenIfPresent(StorageCheckDO::getOutboundTime, reqVO.getOutboundTime())
|
||||||
|
.eqIfPresent(StorageCheckDO::getCancel, reqVO.getCancel())
|
||||||
|
.betweenIfPresent(StorageCheckDO::getCancelTime, reqVO.getCancelTime())
|
||||||
|
.orderByDesc(StorageCheckDO::getId));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,38 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.dal.mysql.storagecheckmat;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagecheckmat.StorageCheckMatDO;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagecheckmat.vo.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 盘点物料 Mapper
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface StorageCheckMatMapper extends BaseMapperX<StorageCheckMatDO> {
|
||||||
|
|
||||||
|
default PageResult<StorageCheckMatDO> selectPage(StorageCheckMatPageReqVO reqVO) {
|
||||||
|
return selectPage(reqVO, new LambdaQueryWrapperX<StorageCheckMatDO>()
|
||||||
|
.eqIfPresent(StorageCheckMatDO::getId, reqVO.getId())
|
||||||
|
.eqIfPresent(StorageCheckMatDO::getCheckId, reqVO.getCheckId())
|
||||||
|
.eqIfPresent(StorageCheckMatDO::getMatId, reqVO.getMatId())
|
||||||
|
.eqIfPresent(StorageCheckMatDO::getWhId, reqVO.getWhId())
|
||||||
|
.eqIfPresent(StorageCheckMatDO::getRgId, reqVO.getRgId())
|
||||||
|
.eqIfPresent(StorageCheckMatDO::getPnId, reqVO.getPnId())
|
||||||
|
.eqIfPresent(StorageCheckMatDO::getStorageOkQty, reqVO.getStorageOkQty())
|
||||||
|
.eqIfPresent(StorageCheckMatDO::getMatRest, reqVO.getMatRest())
|
||||||
|
.eqIfPresent(StorageCheckMatDO::getLotNo, reqVO.getLotNo())
|
||||||
|
.eqIfPresent(StorageCheckMatDO::getCreator, reqVO.getCreator())
|
||||||
|
.betweenIfPresent(StorageCheckMatDO::getCreateTime, reqVO.getCreateTime())
|
||||||
|
.eqIfPresent(StorageCheckMatDO::getUpdater, reqVO.getUpdater())
|
||||||
|
.betweenIfPresent(StorageCheckMatDO::getUpdateTime, reqVO.getUpdateTime())
|
||||||
|
.orderByDesc(StorageCheckMatDO::getId));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,42 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.dal.mysql.storagelog;
|
||||||
|
|
||||||
|
import com.alibaba.druid.util.StringUtils;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagelog.vo.StorageLogPageReqVO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.material.MaterialDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.pn.PnDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storage.StorageDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelog.StorageLogDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogAll.StorageLogAllDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.warehouse.WarehouseDO;
|
||||||
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入/出库日志 Mapper
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface StorageLogAllMapper extends BaseMapperX<StorageLogAllDO> {
|
||||||
|
|
||||||
|
default PageResult<StorageLogAllDO> selectPage(StorageLogPageReqVO reqVO) {
|
||||||
|
MPJLambdaWrapper<StorageLogAllDO> query = new MPJLambdaWrapper<>();
|
||||||
|
|
||||||
|
query.selectAll(StorageLogAllDO.class)
|
||||||
|
.orderByDesc(StorageLogAllDO::getId);
|
||||||
|
|
||||||
|
query.like(!StringUtils.isEmpty(reqVO.getMatType()),StorageLogAllDO::getMatType, reqVO.getMatType())
|
||||||
|
.eq(reqVO.getStockType()!= null,StorageLogAllDO::getStockType, reqVO.getStockType())
|
||||||
|
.like(!StringUtils.isEmpty(reqVO.getMatName()), StorageLogAllDO::getMatName, reqVO.getMatName())
|
||||||
|
.like(!StringUtils.isEmpty(reqVO.getMatCode()), StorageLogAllDO::getMatCode, reqVO.getMatCode())
|
||||||
|
.like(!StringUtils.isEmpty(reqVO.getStockNo()), StorageLogAllDO::getStockNo, reqVO.getStockNo())
|
||||||
|
.like(!StringUtils.isEmpty(reqVO.getHeaderNo()), StorageLogAllDO::getHeaderNo, reqVO.getHeaderNo())
|
||||||
|
.like(!StringUtils.isEmpty(reqVO.getLotNo()),StorageLogAllDO::getLotNo, reqVO.getLotNo());
|
||||||
|
|
||||||
|
return selectPage(reqVO,query);
|
||||||
|
}
|
||||||
|
PageResult<StorageLogAllDO> selectAllPage(StorageLogPageReqVO reqVO);
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.dal.mysql.storagelog;
|
||||||
|
|
||||||
|
import com.alibaba.druid.util.StringUtils;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagelog.vo.StorageLogPageReqVO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow.StorageLogNowDO;
|
||||||
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入/出库日志 Mapper
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface StorageLogNowMapper extends BaseMapperX<StorageLogNowDO> {
|
||||||
|
|
||||||
|
default PageResult<StorageLogNowDO> selectPage(StorageLogPageReqVO reqVO) {
|
||||||
|
MPJLambdaWrapper<StorageLogNowDO> query = new MPJLambdaWrapper<>();
|
||||||
|
|
||||||
|
query.selectAll(StorageLogNowDO.class)
|
||||||
|
.orderByDesc(StorageLogNowDO::getId);
|
||||||
|
|
||||||
|
query.like(!StringUtils.isEmpty(reqVO.getMatType()),StorageLogNowDO::getMatType, reqVO.getMatType())
|
||||||
|
.eq(reqVO.getWhId()!= null,StorageLogNowDO::getWhId, reqVO.getWhId())
|
||||||
|
.eq(reqVO.getRgId()!= null,StorageLogNowDO::getRgId, reqVO.getRgId())
|
||||||
|
.eq(reqVO.getPnId()!= null,StorageLogNowDO::getPnId, reqVO.getPnId())
|
||||||
|
.like(!StringUtils.isEmpty(reqVO.getMatName()), StorageLogNowDO::getMatName, reqVO.getMatName())
|
||||||
|
.like(!StringUtils.isEmpty(reqVO.getMatCode()), StorageLogNowDO::getMatCode, reqVO.getMatCode())
|
||||||
|
.like(!StringUtils.isEmpty(reqVO.getLotNo()),StorageLogNowDO::getLotNo, reqVO.getLotNo());
|
||||||
|
|
||||||
|
return selectPage(reqVO,query);
|
||||||
|
}
|
||||||
|
PageResult<StorageLogNowDO> selectAllPage(StorageLogPageReqVO reqVO);
|
||||||
|
}
|
@ -0,0 +1,67 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.service.deliverorder;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
import javax.validation.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.deliverorder.vo.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.deliverorder.DeliverOrderDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.deliverordersub.DeliverOrderSubDO;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发货订单 Service 接口
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
public interface DeliverOrderService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建发货订单
|
||||||
|
*
|
||||||
|
* @param createReqVO 创建信息
|
||||||
|
* @return 编号
|
||||||
|
*/
|
||||||
|
Long createDeliverOrder(@Valid DeliverOrderSaveReqVO createReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新发货订单
|
||||||
|
*
|
||||||
|
* @param updateReqVO 更新信息
|
||||||
|
*/
|
||||||
|
void updateDeliverOrder(@Valid DeliverOrderSaveReqVO updateReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除发货订单
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
*/
|
||||||
|
void deleteDeliverOrder(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得发货订单
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
* @return 发货订单
|
||||||
|
*/
|
||||||
|
DeliverOrderDO getDeliverOrder(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得发货订单分页
|
||||||
|
*
|
||||||
|
* @param pageReqVO 分页查询
|
||||||
|
* @return 发货订单分页
|
||||||
|
*/
|
||||||
|
PageResult<DeliverOrderDO> getDeliverOrderPage(DeliverOrderPageReqVO pageReqVO);
|
||||||
|
|
||||||
|
// ==================== 子表(发货订单子项) ====================
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得发货订单子项列表
|
||||||
|
*
|
||||||
|
* @param deliveryOrderId 订单id
|
||||||
|
* @return 发货订单子项列表
|
||||||
|
*/
|
||||||
|
List<DeliverOrderSubDO> getDeliverOrderSubListByDeliveryOrderId(Long deliveryOrderId);
|
||||||
|
|
||||||
|
void operateProjectOrder(DeliverOrderSaveReqVO operateReqVO);
|
||||||
|
}
|
@ -1,55 +1,58 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.service.pn;
|
package com.chanko.yunxi.mes.module.heli.service.pn;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import javax.validation.*;
|
import javax.validation.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.pn.vo.*;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.pn.vo.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.pn.PnDO;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.pn.PnDO;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO;
|
||||||
/**
|
|
||||||
* 库位 Service 接口
|
/**
|
||||||
*
|
* 库位 Service 接口
|
||||||
* @author 管理员
|
*
|
||||||
*/
|
* @author 管理员
|
||||||
public interface PnService {
|
*/
|
||||||
|
public interface PnService {
|
||||||
/**
|
|
||||||
* 创建库位
|
/**
|
||||||
*
|
* 创建库位
|
||||||
* @param createReqVO 创建信息
|
*
|
||||||
* @return 编号
|
* @param createReqVO 创建信息
|
||||||
*/
|
* @return 编号
|
||||||
Long createPn(@Valid PnSaveReqVO createReqVO);
|
*/
|
||||||
|
Long createPn(@Valid PnSaveReqVO createReqVO);
|
||||||
/**
|
|
||||||
* 更新库位
|
/**
|
||||||
*
|
* 更新库位
|
||||||
* @param updateReqVO 更新信息
|
*
|
||||||
*/
|
* @param updateReqVO 更新信息
|
||||||
void updatePn(@Valid PnSaveReqVO updateReqVO);
|
*/
|
||||||
|
void updatePn(@Valid PnSaveReqVO updateReqVO);
|
||||||
/**
|
|
||||||
* 删除库位
|
/**
|
||||||
*
|
* 删除库位
|
||||||
* @param id 编号
|
*
|
||||||
*/
|
* @param id 编号
|
||||||
void deletePn(Long id);
|
*/
|
||||||
|
void deletePn(Long id);
|
||||||
/**
|
|
||||||
* 获得库位
|
/**
|
||||||
*
|
* 获得库位
|
||||||
* @param id 编号
|
*
|
||||||
* @return 库位
|
* @param id 编号
|
||||||
*/
|
* @return 库位
|
||||||
PnDO getPn(Long id);
|
*/
|
||||||
|
PnDO getPn(Long id);
|
||||||
/**
|
|
||||||
* 获得库位分页
|
/**
|
||||||
*
|
* 获得库位分页
|
||||||
* @param pageReqVO 分页查询
|
*
|
||||||
* @return 库位分页
|
* @param pageReqVO 分页查询
|
||||||
*/
|
* @return 库位分页
|
||||||
PageResult<PnDO> getPnPage(PnPageReqVO pageReqVO);
|
*/
|
||||||
|
PageResult<PnDO> getPnPage(PnPageReqVO pageReqVO);
|
||||||
}
|
|
||||||
|
List<Map<String, Object>> getSimpleList();
|
||||||
|
|
||||||
|
}
|
||||||
|
@ -1,74 +1,79 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.service.pn;
|
package com.chanko.yunxi.mes.module.heli.service.pn;
|
||||||
|
|
||||||
import org.springframework.stereotype.Service;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO;
|
||||||
import javax.annotation.Resource;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import javax.annotation.Resource;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import java.util.*;
|
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.pn.vo.*;
|
import java.util.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.pn.PnDO;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.pn.vo.*;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.pn.PnDO;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.mysql.pn.PnMapper;
|
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.pn.PnMapper;
|
||||||
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
|
||||||
import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*;
|
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
|
import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*;
|
||||||
/**
|
|
||||||
* 库位 Service 实现类
|
/**
|
||||||
*
|
* 库位 Service 实现类
|
||||||
* @author 管理员
|
*
|
||||||
*/
|
* @author 管理员
|
||||||
@Service
|
*/
|
||||||
@Validated
|
@Service
|
||||||
public class PnServiceImpl implements PnService {
|
@Validated
|
||||||
|
public class PnServiceImpl implements PnService {
|
||||||
@Resource
|
|
||||||
private PnMapper pnMapper;
|
@Resource
|
||||||
|
private PnMapper pnMapper;
|
||||||
@Override
|
|
||||||
public Long createPn(PnSaveReqVO createReqVO) {
|
@Override
|
||||||
// 插入
|
public Long createPn(PnSaveReqVO createReqVO) {
|
||||||
PnDO pn = BeanUtils.toBean(createReqVO, PnDO.class);
|
// 插入
|
||||||
pnMapper.insert(pn);
|
PnDO pn = BeanUtils.toBean(createReqVO, PnDO.class);
|
||||||
// 返回
|
pnMapper.insert(pn);
|
||||||
return pn.getId();
|
// 返回
|
||||||
}
|
return pn.getId();
|
||||||
|
}
|
||||||
@Override
|
|
||||||
public void updatePn(PnSaveReqVO updateReqVO) {
|
@Override
|
||||||
// 校验存在
|
public void updatePn(PnSaveReqVO updateReqVO) {
|
||||||
validatePnExists(updateReqVO.getId());
|
// 校验存在
|
||||||
// 更新
|
validatePnExists(updateReqVO.getId());
|
||||||
PnDO updateObj = BeanUtils.toBean(updateReqVO, PnDO.class);
|
// 更新
|
||||||
pnMapper.updateById(updateObj);
|
PnDO updateObj = BeanUtils.toBean(updateReqVO, PnDO.class);
|
||||||
}
|
pnMapper.updateById(updateObj);
|
||||||
|
}
|
||||||
@Override
|
|
||||||
public void deletePn(Long id) {
|
@Override
|
||||||
// 校验存在
|
public void deletePn(Long id) {
|
||||||
validatePnExists(id);
|
// 校验存在
|
||||||
// 删除
|
validatePnExists(id);
|
||||||
pnMapper.deleteById(id);
|
// 删除
|
||||||
}
|
pnMapper.deleteById(id);
|
||||||
|
}
|
||||||
private void validatePnExists(Long id) {
|
|
||||||
if (pnMapper.selectById(id) == null) {
|
private void validatePnExists(Long id) {
|
||||||
throw exception(PN_NOT_EXISTS);
|
if (pnMapper.selectById(id) == null) {
|
||||||
}
|
throw exception(PN_NOT_EXISTS);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
@Override
|
|
||||||
public PnDO getPn(Long id) {
|
@Override
|
||||||
return pnMapper.selectById(id);
|
public PnDO getPn(Long id) {
|
||||||
}
|
return pnMapper.selectById(id);
|
||||||
|
}
|
||||||
@Override
|
|
||||||
public PageResult<PnDO> getPnPage(PnPageReqVO pageReqVO) {
|
@Override
|
||||||
return pnMapper.selectPage(pageReqVO);
|
public PageResult<PnDO> getPnPage(PnPageReqVO pageReqVO) {
|
||||||
}
|
return pnMapper.selectPage(pageReqVO);
|
||||||
|
}
|
||||||
}
|
|
||||||
|
@Override
|
||||||
|
public List<Map<String, Object>> getSimpleList() {
|
||||||
|
return pnMapper.selectSimpleList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -1,55 +1,57 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.service.rg;
|
package com.chanko.yunxi.mes.module.heli.service.rg;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import javax.validation.*;
|
import javax.validation.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.rg.vo.*;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.rg.vo.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.warehouse.WarehouseDO;
|
||||||
/**
|
|
||||||
* 库区 Service 接口
|
/**
|
||||||
*
|
* 库区 Service 接口
|
||||||
* @author 管理员
|
*
|
||||||
*/
|
* @author 管理员
|
||||||
public interface RgService {
|
*/
|
||||||
|
public interface RgService {
|
||||||
/**
|
|
||||||
* 创建库区
|
/**
|
||||||
*
|
* 创建库区
|
||||||
* @param createReqVO 创建信息
|
*
|
||||||
* @return 编号
|
* @param createReqVO 创建信息
|
||||||
*/
|
* @return 编号
|
||||||
Long createRg(@Valid RgSaveReqVO createReqVO);
|
*/
|
||||||
|
Long createRg(@Valid RgSaveReqVO createReqVO);
|
||||||
/**
|
|
||||||
* 更新库区
|
/**
|
||||||
*
|
* 更新库区
|
||||||
* @param updateReqVO 更新信息
|
*
|
||||||
*/
|
* @param updateReqVO 更新信息
|
||||||
void updateRg(@Valid RgSaveReqVO updateReqVO);
|
*/
|
||||||
|
void updateRg(@Valid RgSaveReqVO updateReqVO);
|
||||||
/**
|
|
||||||
* 删除库区
|
/**
|
||||||
*
|
* 删除库区
|
||||||
* @param id 编号
|
*
|
||||||
*/
|
* @param id 编号
|
||||||
void deleteRg(Long id);
|
*/
|
||||||
|
void deleteRg(Long id);
|
||||||
/**
|
|
||||||
* 获得库区
|
/**
|
||||||
*
|
* 获得库区
|
||||||
* @param id 编号
|
*
|
||||||
* @return 库区
|
* @param id 编号
|
||||||
*/
|
* @return 库区
|
||||||
RgDO getRg(Long id);
|
*/
|
||||||
|
RgDO getRg(Long id);
|
||||||
/**
|
|
||||||
* 获得库区分页
|
/**
|
||||||
*
|
* 获得库区分页
|
||||||
* @param pageReqVO 分页查询
|
*
|
||||||
* @return 库区分页
|
* @param pageReqVO 分页查询
|
||||||
*/
|
* @return 库区分页
|
||||||
PageResult<RgDO> getRgPage(RgPageReqVO pageReqVO);
|
*/
|
||||||
|
PageResult<RgDO> getRgPage(RgPageReqVO pageReqVO);
|
||||||
}
|
|
||||||
|
List<Map<String, Object>> getSimpleList();
|
||||||
|
}
|
||||||
|
@ -1,74 +1,79 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.service.rg;
|
package com.chanko.yunxi.mes.module.heli.service.rg;
|
||||||
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.rg.vo.*;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.rg.vo.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
|
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.mysql.rg.RgMapper;
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.rg.RgMapper;
|
||||||
|
|
||||||
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*;
|
import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 库区 Service 实现类
|
* 库区 Service 实现类
|
||||||
*
|
*
|
||||||
* @author 管理员
|
* @author 管理员
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
@Validated
|
@Validated
|
||||||
public class RgServiceImpl implements RgService {
|
public class RgServiceImpl implements RgService {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private RgMapper rgMapper;
|
private RgMapper rgMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Long createRg(RgSaveReqVO createReqVO) {
|
public Long createRg(RgSaveReqVO createReqVO) {
|
||||||
// 插入
|
// 插入
|
||||||
RgDO rg = BeanUtils.toBean(createReqVO, RgDO.class);
|
RgDO rg = BeanUtils.toBean(createReqVO, RgDO.class);
|
||||||
rgMapper.insert(rg);
|
rgMapper.insert(rg);
|
||||||
// 返回
|
// 返回
|
||||||
return rg.getId();
|
return rg.getId();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateRg(RgSaveReqVO updateReqVO) {
|
public void updateRg(RgSaveReqVO updateReqVO) {
|
||||||
// 校验存在
|
// 校验存在
|
||||||
validateRgExists(updateReqVO.getId());
|
validateRgExists(updateReqVO.getId());
|
||||||
// 更新
|
// 更新
|
||||||
RgDO updateObj = BeanUtils.toBean(updateReqVO, RgDO.class);
|
RgDO updateObj = BeanUtils.toBean(updateReqVO, RgDO.class);
|
||||||
rgMapper.updateById(updateObj);
|
rgMapper.updateById(updateObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void deleteRg(Long id) {
|
public void deleteRg(Long id) {
|
||||||
// 校验存在
|
// 校验存在
|
||||||
validateRgExists(id);
|
validateRgExists(id);
|
||||||
// 删除
|
// 删除
|
||||||
rgMapper.deleteById(id);
|
rgMapper.deleteById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void validateRgExists(Long id) {
|
private void validateRgExists(Long id) {
|
||||||
if (rgMapper.selectById(id) == null) {
|
if (rgMapper.selectById(id) == null) {
|
||||||
throw exception(RG_NOT_EXISTS);
|
throw exception(RG_NOT_EXISTS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public RgDO getRg(Long id) {
|
public RgDO getRg(Long id) {
|
||||||
return rgMapper.selectById(id);
|
return rgMapper.selectById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PageResult<RgDO> getRgPage(RgPageReqVO pageReqVO) {
|
public PageResult<RgDO> getRgPage(RgPageReqVO pageReqVO) {
|
||||||
return rgMapper.selectPage(pageReqVO);
|
return rgMapper.selectPage(pageReqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
@Override
|
||||||
|
public List<Map<String, Object>> getSimpleList() {
|
||||||
|
return rgMapper.selectSimpleList();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
@ -0,0 +1,55 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.service.storagecheck;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
import javax.validation.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagecheck.vo.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagecheck.StorageCheckDO;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入/出库盘点 Service 接口
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
public interface StorageCheckService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建入/出库盘点
|
||||||
|
*
|
||||||
|
* @param createReqVO 创建信息
|
||||||
|
* @return 编号
|
||||||
|
*/
|
||||||
|
Long createStorageCheck(@Valid StorageCheckSaveReqVO createReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新入/出库盘点
|
||||||
|
*
|
||||||
|
* @param updateReqVO 更新信息
|
||||||
|
*/
|
||||||
|
void updateStorageCheck(@Valid StorageCheckSaveReqVO updateReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除入/出库盘点
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
*/
|
||||||
|
void deleteStorageCheck(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得入/出库盘点
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
* @return 入/出库盘点
|
||||||
|
*/
|
||||||
|
StorageCheckDO getStorageCheck(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得入/出库盘点分页
|
||||||
|
*
|
||||||
|
* @param pageReqVO 分页查询
|
||||||
|
* @return 入/出库盘点分页
|
||||||
|
*/
|
||||||
|
PageResult<StorageCheckDO> getStorageCheckPage(StorageCheckPageReqVO pageReqVO);
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,81 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.service.storagecheck;
|
||||||
|
|
||||||
|
import cn.hutool.core.lang.UUID;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagecheck.vo.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagecheck.StorageCheckDO;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.storagecheck.StorageCheckMapper;
|
||||||
|
|
||||||
|
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
|
import static com.chanko.yunxi.mes.module.heli.enums.CodeEnum.STOCK_CHECK;
|
||||||
|
import static com.chanko.yunxi.mes.module.heli.enums.CodeEnum.STOCK_IN;
|
||||||
|
import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入/出库盘点 Service 实现类
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@Validated
|
||||||
|
public class StorageCheckServiceImpl implements StorageCheckService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private StorageCheckMapper storageCheckMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Long createStorageCheck(StorageCheckSaveReqVO createReqVO) {
|
||||||
|
// 插入
|
||||||
|
StorageCheckDO storageCheck = BeanUtils.toBean(createReqVO, StorageCheckDO.class);
|
||||||
|
storageCheck.setStockNo(UUID.fastUUID().toString(true));
|
||||||
|
storageCheckMapper.insert(storageCheck);
|
||||||
|
|
||||||
|
storageCheck.setStockNo(STOCK_CHECK.getCode(storageCheck.getId().toString()));
|
||||||
|
storageCheckMapper.updateById(storageCheck);
|
||||||
|
// 返回
|
||||||
|
return storageCheck.getId();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateStorageCheck(StorageCheckSaveReqVO updateReqVO) {
|
||||||
|
// 校验存在
|
||||||
|
validateStorageCheckExists(updateReqVO.getId());
|
||||||
|
// 更新
|
||||||
|
StorageCheckDO updateObj = BeanUtils.toBean(updateReqVO, StorageCheckDO.class);
|
||||||
|
storageCheckMapper.updateById(updateObj);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteStorageCheck(Long id) {
|
||||||
|
// 校验存在
|
||||||
|
validateStorageCheckExists(id);
|
||||||
|
// 删除
|
||||||
|
storageCheckMapper.deleteById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateStorageCheckExists(Long id) {
|
||||||
|
if (storageCheckMapper.selectById(id) == null) {
|
||||||
|
throw exception(STORAGE_CHECK_NOT_EXISTS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StorageCheckDO getStorageCheck(Long id) {
|
||||||
|
return storageCheckMapper.selectById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResult<StorageCheckDO> getStorageCheckPage(StorageCheckPageReqVO pageReqVO) {
|
||||||
|
return storageCheckMapper.selectPage(pageReqVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,55 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.service.storagecheckmat;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
import javax.validation.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagecheckmat.vo.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagecheckmat.StorageCheckMatDO;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 盘点物料 Service 接口
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
public interface StorageCheckMatService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建盘点物料
|
||||||
|
*
|
||||||
|
* @param createReqVO 创建信息
|
||||||
|
* @return 编号
|
||||||
|
*/
|
||||||
|
Long createStorageCheckMat(@Valid StorageCheckMatSaveReqVO createReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新盘点物料
|
||||||
|
*
|
||||||
|
* @param updateReqVO 更新信息
|
||||||
|
*/
|
||||||
|
void updateStorageCheckMat(@Valid StorageCheckMatSaveReqVO updateReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除盘点物料
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
*/
|
||||||
|
void deleteStorageCheckMat(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得盘点物料
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
* @return 盘点物料
|
||||||
|
*/
|
||||||
|
StorageCheckMatDO getStorageCheckMat(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得盘点物料分页
|
||||||
|
*
|
||||||
|
* @param pageReqVO 分页查询
|
||||||
|
* @return 盘点物料分页
|
||||||
|
*/
|
||||||
|
PageResult<StorageCheckMatDO> getStorageCheckMatPage(StorageCheckMatPageReqVO pageReqVO);
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,74 @@
|
|||||||
|
package com.chanko.yunxi.mes.module.heli.service.storagecheckmat;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagecheckmat.vo.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagecheckmat.StorageCheckMatDO;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
|
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.storagecheckmat.StorageCheckMatMapper;
|
||||||
|
|
||||||
|
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
|
import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 盘点物料 Service 实现类
|
||||||
|
*
|
||||||
|
* @author 管理员
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@Validated
|
||||||
|
public class StorageCheckMatServiceImpl implements StorageCheckMatService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private StorageCheckMatMapper storageCheckMatMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Long createStorageCheckMat(StorageCheckMatSaveReqVO createReqVO) {
|
||||||
|
// 插入
|
||||||
|
StorageCheckMatDO storageCheckMat = BeanUtils.toBean(createReqVO, StorageCheckMatDO.class);
|
||||||
|
storageCheckMatMapper.insert(storageCheckMat);
|
||||||
|
// 返回
|
||||||
|
return storageCheckMat.getId();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateStorageCheckMat(StorageCheckMatSaveReqVO updateReqVO) {
|
||||||
|
// 校验存在
|
||||||
|
validateStorageCheckMatExists(updateReqVO.getId());
|
||||||
|
// 更新
|
||||||
|
StorageCheckMatDO updateObj = BeanUtils.toBean(updateReqVO, StorageCheckMatDO.class);
|
||||||
|
storageCheckMatMapper.updateById(updateObj);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteStorageCheckMat(Long id) {
|
||||||
|
// 校验存在
|
||||||
|
validateStorageCheckMatExists(id);
|
||||||
|
// 删除
|
||||||
|
storageCheckMatMapper.deleteById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateStorageCheckMatExists(Long id) {
|
||||||
|
if (storageCheckMatMapper.selectById(id) == null) {
|
||||||
|
throw exception(STORAGE_CHECK_MAT_NOT_EXISTS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StorageCheckMatDO getStorageCheckMat(Long id) {
|
||||||
|
return storageCheckMatMapper.selectById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResult<StorageCheckMatDO> getStorageCheckMatPage(StorageCheckMatPageReqVO pageReqVO) {
|
||||||
|
return storageCheckMatMapper.selectPage(pageReqVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -1,55 +1,62 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.service.storagelog;
|
package com.chanko.yunxi.mes.module.heli.service.storagelog;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import javax.validation.*;
|
import javax.validation.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.storagelog.vo.*;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagelog.vo.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelog.StorageLogDO;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelog.StorageLogDO;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogAll.StorageLogAllDO;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
/**
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow.StorageLogNowDO;
|
||||||
* 入/出库日志 Service 接口
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagemat.StorageMatDO;
|
||||||
*
|
|
||||||
* @author 管理员
|
/**
|
||||||
*/
|
* 入/出库日志 Service 接口
|
||||||
public interface StorageLogService {
|
*
|
||||||
|
* @author 管理员
|
||||||
/**
|
*/
|
||||||
* 创建入/出库日志
|
public interface StorageLogService {
|
||||||
*
|
|
||||||
* @param createReqVO 创建信息
|
/**
|
||||||
* @return 编号
|
* 创建入/出库日志
|
||||||
*/
|
*
|
||||||
Long createStorageLog(@Valid StorageLogSaveReqVO createReqVO);
|
* @param createReqVO 创建信息
|
||||||
|
* @return 编号
|
||||||
/**
|
*/
|
||||||
* 更新入/出库日志
|
Long createStorageLog(@Valid StorageLogSaveReqVO createReqVO);
|
||||||
*
|
|
||||||
* @param updateReqVO 更新信息
|
/**
|
||||||
*/
|
* 更新入/出库日志
|
||||||
void updateStorageLog(@Valid StorageLogSaveReqVO updateReqVO);
|
*
|
||||||
|
* @param updateReqVO 更新信息
|
||||||
/**
|
*/
|
||||||
* 删除入/出库日志
|
void updateStorageLog(@Valid StorageLogSaveReqVO updateReqVO);
|
||||||
*
|
|
||||||
* @param id 编号
|
/**
|
||||||
*/
|
* 删除入/出库日志
|
||||||
void deleteStorageLog(Long id);
|
*
|
||||||
|
* @param id 编号
|
||||||
/**
|
*/
|
||||||
* 获得入/出库日志
|
void deleteStorageLog(Long id);
|
||||||
*
|
|
||||||
* @param id 编号
|
/**
|
||||||
* @return 入/出库日志
|
* 获得入/出库日志
|
||||||
*/
|
*
|
||||||
StorageLogDO getStorageLog(Long id);
|
* @param id 编号
|
||||||
|
* @return 入/出库日志
|
||||||
/**
|
*/
|
||||||
* 获得入/出库日志分页
|
StorageLogDO getStorageLog(Long id);
|
||||||
*
|
|
||||||
* @param pageReqVO 分页查询
|
/**
|
||||||
* @return 入/出库日志分页
|
* 获得入/出库日志分页
|
||||||
*/
|
*
|
||||||
PageResult<StorageLogDO> getStorageLogPage(StorageLogPageReqVO pageReqVO);
|
* @param pageReqVO 分页查询
|
||||||
|
* @return 入/出库日志分页
|
||||||
}
|
*/
|
||||||
|
PageResult<StorageLogAllDO> getStorageLogPage(StorageLogPageReqVO pageReqVO);
|
||||||
|
|
||||||
|
PageResult<StorageLogNowDO> getStorageNowPage(StorageLogPageReqVO pageReqVO);
|
||||||
|
|
||||||
|
void createStorageLogBatch(List<StorageLogDO> storageLogDOs);
|
||||||
|
|
||||||
|
}
|
||||||
|
@ -1,74 +1,96 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.service.storagelog;
|
package com.chanko.yunxi.mes.module.heli.service.storagelog;
|
||||||
|
|
||||||
import org.springframework.stereotype.Service;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogAll.StorageLogAllDO;
|
||||||
import javax.annotation.Resource;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow.StorageLogNowDO;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.storagelog.StorageLogAllMapper;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.storagelog.StorageLogNowMapper;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
import java.util.*;
|
import javax.annotation.Resource;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.storagelog.vo.*;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelog.StorageLogDO;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
import java.util.*;
|
||||||
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.storagelog.vo.*;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelog.StorageLogDO;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.mysql.storagelog.StorageLogMapper;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*;
|
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.storagelog.StorageLogMapper;
|
||||||
/**
|
|
||||||
* 入/出库日志 Service 实现类
|
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
*
|
import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*;
|
||||||
* @author 管理员
|
|
||||||
*/
|
/**
|
||||||
@Service
|
* 入/出库日志 Service 实现类
|
||||||
@Validated
|
*
|
||||||
public class StorageLogServiceImpl implements StorageLogService {
|
* @author 管理员
|
||||||
|
*/
|
||||||
@Resource
|
@Service
|
||||||
private StorageLogMapper storageLogMapper;
|
@Validated
|
||||||
|
public class StorageLogServiceImpl implements StorageLogService {
|
||||||
@Override
|
|
||||||
public Long createStorageLog(StorageLogSaveReqVO createReqVO) {
|
@Resource
|
||||||
// 插入
|
private StorageLogMapper storageLogMapper;
|
||||||
StorageLogDO storageLog = BeanUtils.toBean(createReqVO, StorageLogDO.class);
|
|
||||||
storageLogMapper.insert(storageLog);
|
@Resource
|
||||||
// 返回
|
private StorageLogAllMapper storageLogAllMapper;
|
||||||
return storageLog.getId();
|
|
||||||
}
|
@Resource
|
||||||
|
private StorageLogNowMapper storageLogNowMapper;
|
||||||
@Override
|
|
||||||
public void updateStorageLog(StorageLogSaveReqVO updateReqVO) {
|
@Override
|
||||||
// 校验存在
|
public Long createStorageLog(StorageLogSaveReqVO createReqVO) {
|
||||||
validateStorageLogExists(updateReqVO.getId());
|
// 插入
|
||||||
// 更新
|
StorageLogDO storageLog = BeanUtils.toBean(createReqVO, StorageLogDO.class);
|
||||||
StorageLogDO updateObj = BeanUtils.toBean(updateReqVO, StorageLogDO.class);
|
storageLogMapper.insert(storageLog);
|
||||||
storageLogMapper.updateById(updateObj);
|
// 返回
|
||||||
}
|
return storageLog.getId();
|
||||||
|
}
|
||||||
@Override
|
|
||||||
public void deleteStorageLog(Long id) {
|
@Override
|
||||||
// 校验存在
|
public void updateStorageLog(StorageLogSaveReqVO updateReqVO) {
|
||||||
validateStorageLogExists(id);
|
// 校验存在
|
||||||
// 删除
|
validateStorageLogExists(updateReqVO.getId());
|
||||||
storageLogMapper.deleteById(id);
|
// 更新
|
||||||
}
|
StorageLogDO updateObj = BeanUtils.toBean(updateReqVO, StorageLogDO.class);
|
||||||
|
storageLogMapper.updateById(updateObj);
|
||||||
private void validateStorageLogExists(Long id) {
|
}
|
||||||
if (storageLogMapper.selectById(id) == null) {
|
|
||||||
throw exception(STORAGE_LOG_NOT_EXISTS);
|
@Override
|
||||||
}
|
public void deleteStorageLog(Long id) {
|
||||||
}
|
// 校验存在
|
||||||
|
validateStorageLogExists(id);
|
||||||
@Override
|
// 删除
|
||||||
public StorageLogDO getStorageLog(Long id) {
|
storageLogMapper.deleteById(id);
|
||||||
return storageLogMapper.selectById(id);
|
}
|
||||||
}
|
|
||||||
|
private void validateStorageLogExists(Long id) {
|
||||||
@Override
|
if (storageLogMapper.selectById(id) == null) {
|
||||||
public PageResult<StorageLogDO> getStorageLogPage(StorageLogPageReqVO pageReqVO) {
|
throw exception(STORAGE_LOG_NOT_EXISTS);
|
||||||
return storageLogMapper.selectPage(pageReqVO);
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
@Override
|
||||||
|
public StorageLogDO getStorageLog(Long id) {
|
||||||
|
return storageLogMapper.selectById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResult<StorageLogAllDO> getStorageLogPage(StorageLogPageReqVO pageReqVO) {
|
||||||
|
return storageLogAllMapper.selectPage(pageReqVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResult<StorageLogNowDO> getStorageNowPage(StorageLogPageReqVO pageReqVO) {
|
||||||
|
return storageLogNowMapper.selectPage(pageReqVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void createStorageLogBatch(List<StorageLogDO> storageLogDOs) {
|
||||||
|
for (StorageLogDO storageLogDo : storageLogDOs){
|
||||||
|
storageLogMapper.insert(storageLogDo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
@ -0,0 +1,66 @@
|
|||||||
|
import request from '@/config/axios'
|
||||||
|
|
||||||
|
export interface DeliverOrderVO {
|
||||||
|
id: number
|
||||||
|
code: string
|
||||||
|
saleOrderIds: string
|
||||||
|
customerId: number
|
||||||
|
deliverDate: Date
|
||||||
|
deliverStatus: number
|
||||||
|
deliverPerson: number
|
||||||
|
deliverPersonMobile: string
|
||||||
|
deliverMode: string
|
||||||
|
receivePersonMobile: string
|
||||||
|
transportDriverName: string
|
||||||
|
transportDriverMobile: string
|
||||||
|
transportBusNumber: string
|
||||||
|
transportWeight: string
|
||||||
|
transportSize: string
|
||||||
|
remark: string
|
||||||
|
status: number
|
||||||
|
receivePersonName: string
|
||||||
|
receiveAddress: string
|
||||||
|
active: string
|
||||||
|
deliverOrderSubs: object
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询发货订单分页
|
||||||
|
export const getDeliverOrderPage = async (params) => {
|
||||||
|
return await request.get({ url: `/heli/deliver-order/page`, params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询发货订单详情
|
||||||
|
export const getDeliverOrder = async (id: number) => {
|
||||||
|
return await request.get({ url: `/heli/deliver-order/get?id=` + id })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增发货订单
|
||||||
|
export const createDeliverOrder = async (data: DeliverOrderVO) => {
|
||||||
|
return await request.post({ url: `/heli/deliver-order/create`, data })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改发货订单
|
||||||
|
export const updateDeliverOrder = async (data: DeliverOrderVO) => {
|
||||||
|
return await request.put({ url: `/heli/deliver-order/update`, data })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除发货订单
|
||||||
|
export const deleteDeliverOrder = async (id: number) => {
|
||||||
|
return await request.delete({ url: `/heli/deliver-order/delete?id=` + id })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 导出发货订单 Excel
|
||||||
|
export const exportDeliverOrder = async (params) => {
|
||||||
|
return await request.download({ url: `/heli/deliver-order/export-excel`, params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// ==================== 子表(发货订单子项) ====================
|
||||||
|
|
||||||
|
// 获得发货订单子项列表
|
||||||
|
export const getDeliverOrderSubListByDeliveryOrderId = async (deliveryOrderId) => {
|
||||||
|
return await request.get({ url: `/heli/deliver-order/deliver-order-sub/list-by-delivery-order-id?deliveryOrderId=` + deliveryOrderId })
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function operateDeliverOrder(data: DeliverOrderVO) {
|
||||||
|
return await request.post({ url: `/heli/deliver-order/operate`, data })
|
||||||
|
}
|
@ -1,41 +1,46 @@
|
|||||||
import request from '@/config/axios'
|
import request from '@/config/axios'
|
||||||
|
|
||||||
export interface PnVO {
|
export interface PnVO {
|
||||||
id: number
|
id: number
|
||||||
pnNo: string
|
pnNo: string
|
||||||
pnName: string
|
pnName: string
|
||||||
rgId: number
|
rgId: number
|
||||||
descr: string
|
descr: string
|
||||||
pnStatus: number
|
pnStatus: number
|
||||||
whId: number
|
whId: number
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询库位分页
|
// 查询库区分页
|
||||||
export const getPnPage = async (params) => {
|
export const getSimpList = async () => {
|
||||||
return await request.get({ url: `/heli/pn/page`, params })
|
return await request.get({ url: `/heli/pn/all-simples` })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询库位详情
|
// 查询库位分页
|
||||||
export const getPn = async (id: number) => {
|
export const getPnPage = async (params) => {
|
||||||
return await request.get({ url: `/heli/pn/get?id=` + id })
|
return await request.get({ url: `/heli/pn/page`, params })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 新增库位
|
// 查询库位详情
|
||||||
export const createPn = async (data: PnVO) => {
|
export const getPn = async (id: number) => {
|
||||||
return await request.post({ url: `/heli/pn/create`, data })
|
return await request.get({ url: `/heli/pn/get?id=` + id })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改库位
|
// 新增库位
|
||||||
export const updatePn = async (data: PnVO) => {
|
export const createPn = async (data: PnVO) => {
|
||||||
return await request.put({ url: `/heli/pn/update`, data })
|
return await request.post({ url: `/heli/pn/create`, data })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 删除库位
|
// 修改库位
|
||||||
export const deletePn = async (id: number) => {
|
export const updatePn = async (data: PnVO) => {
|
||||||
return await request.delete({ url: `/heli/pn/delete?id=` + id })
|
return await request.put({ url: `/heli/pn/update`, data })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 导出库位 Excel
|
// 删除库位
|
||||||
export const exportPn = async (params) => {
|
export const deletePn = async (id: number) => {
|
||||||
return await request.download({ url: `/heli/pn/export-excel`, params })
|
return await request.delete({ url: `/heli/pn/delete?id=` + id })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 导出库位 Excel
|
||||||
|
export const exportPn = async (params) => {
|
||||||
|
return await request.download({ url: `/heli/pn/export-excel`, params })
|
||||||
|
}
|
||||||
|
@ -1,40 +1,45 @@
|
|||||||
import request from '@/config/axios'
|
import request from '@/config/axios'
|
||||||
|
|
||||||
export interface RgVO {
|
export interface RgVO {
|
||||||
id: number
|
id: number
|
||||||
rgNo: string
|
rgNo: string
|
||||||
rgName: string
|
rgName: string
|
||||||
whId: number
|
whId: number
|
||||||
descr: string
|
descr: string
|
||||||
rgStatus: number
|
rgStatus: number
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询库区分页
|
// 查询库区分页
|
||||||
export const getRgPage = async (params) => {
|
export const getSimpList = async () => {
|
||||||
return await request.get({ url: `/heli/rg/page`, params })
|
return await request.get({ url: `/heli/rg/all-simples` })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询库区详情
|
// 查询库区分页
|
||||||
export const getRg = async (id: number) => {
|
export const getRgPage = async (params) => {
|
||||||
return await request.get({ url: `/heli/rg/get?id=` + id })
|
return await request.get({ url: `/heli/rg/page`, params })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 新增库区
|
// 查询库区详情
|
||||||
export const createRg = async (data: RgVO) => {
|
export const getRg = async (id: number) => {
|
||||||
return await request.post({ url: `/heli/rg/create`, data })
|
return await request.get({ url: `/heli/rg/get?id=` + id })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改库区
|
// 新增库区
|
||||||
export const updateRg = async (data: RgVO) => {
|
export const createRg = async (data: RgVO) => {
|
||||||
return await request.put({ url: `/heli/rg/update`, data })
|
return await request.post({ url: `/heli/rg/create`, data })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 删除库区
|
// 修改库区
|
||||||
export const deleteRg = async (id: number) => {
|
export const updateRg = async (data: RgVO) => {
|
||||||
return await request.delete({ url: `/heli/rg/delete?id=` + id })
|
return await request.put({ url: `/heli/rg/update`, data })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 导出库区 Excel
|
// 删除库区
|
||||||
export const exportRg = async (params) => {
|
export const deleteRg = async (id: number) => {
|
||||||
return await request.download({ url: `/heli/rg/export-excel`, params })
|
return await request.delete({ url: `/heli/rg/delete?id=` + id })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 导出库区 Excel
|
||||||
|
export const exportRg = async (params) => {
|
||||||
|
return await request.download({ url: `/heli/rg/export-excel`, params })
|
||||||
|
}
|
||||||
|
@ -0,0 +1,48 @@
|
|||||||
|
import request from '@/config/axios'
|
||||||
|
|
||||||
|
export interface StorageCheckVO {
|
||||||
|
id: number
|
||||||
|
stockNo: string
|
||||||
|
checkType: number
|
||||||
|
checkTime: Date
|
||||||
|
noZero: number
|
||||||
|
description: string
|
||||||
|
status: number
|
||||||
|
whId: number
|
||||||
|
keeper: number
|
||||||
|
keeperTime: Date
|
||||||
|
outbound: number
|
||||||
|
outboundTime: Date
|
||||||
|
cancel: number
|
||||||
|
cancelTime: Date
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询入/出库盘点分页
|
||||||
|
export const getStorageCheckPage = async (params) => {
|
||||||
|
return await request.get({ url: `/heli/storage-check/page`, params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询入/出库盘点详情
|
||||||
|
export const getStorageCheck = async (id: number) => {
|
||||||
|
return await request.get({ url: `/heli/storage-check/get?id=` + id })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增入/出库盘点
|
||||||
|
export const createStorageCheck = async (data: StorageCheckVO) => {
|
||||||
|
return await request.post({ url: `/heli/storage-check/create`, data })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改入/出库盘点
|
||||||
|
export const updateStorageCheck = async (data: StorageCheckVO) => {
|
||||||
|
return await request.put({ url: `/heli/storage-check/update`, data })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除入/出库盘点
|
||||||
|
export const deleteStorageCheck = async (id: number) => {
|
||||||
|
return await request.delete({ url: `/heli/storage-check/delete?id=` + id })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 导出入/出库盘点 Excel
|
||||||
|
export const exportStorageCheck = async (params) => {
|
||||||
|
return await request.download({ url: `/heli/storage-check/export-excel`, params })
|
||||||
|
}
|
@ -0,0 +1,43 @@
|
|||||||
|
import request from '@/config/axios'
|
||||||
|
|
||||||
|
export interface StorageCheckMatVO {
|
||||||
|
id: number
|
||||||
|
checkId: number
|
||||||
|
matId: number
|
||||||
|
whId: number
|
||||||
|
rgId: number
|
||||||
|
pnId: number
|
||||||
|
storageOkQty: number
|
||||||
|
matRest: number
|
||||||
|
lotNo: string
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询盘点物料分页
|
||||||
|
export const getStorageCheckMatPage = async (params) => {
|
||||||
|
return await request.get({ url: `/heli/storage-check-mat/page`, params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询盘点物料详情
|
||||||
|
export const getStorageCheckMat = async (id: number) => {
|
||||||
|
return await request.get({ url: `/heli/storage-check-mat/get?id=` + id })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增盘点物料
|
||||||
|
export const createStorageCheckMat = async (data: StorageCheckMatVO) => {
|
||||||
|
return await request.post({ url: `/heli/storage-check-mat/create`, data })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改盘点物料
|
||||||
|
export const updateStorageCheckMat = async (data: StorageCheckMatVO) => {
|
||||||
|
return await request.put({ url: `/heli/storage-check-mat/update`, data })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除盘点物料
|
||||||
|
export const deleteStorageCheckMat = async (id: number) => {
|
||||||
|
return await request.delete({ url: `/heli/storage-check-mat/delete?id=` + id })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 导出盘点物料 Excel
|
||||||
|
export const exportStorageCheckMat = async (params) => {
|
||||||
|
return await request.download({ url: `/heli/storage-check-mat/export-excel`, params })
|
||||||
|
}
|
@ -1,43 +1,48 @@
|
|||||||
import request from '@/config/axios'
|
import request from '@/config/axios'
|
||||||
|
|
||||||
export interface StorageLogVO {
|
export interface StorageLogVO {
|
||||||
id: number
|
id: number
|
||||||
stockId: number
|
stockId: number
|
||||||
matId: number
|
matId: number
|
||||||
whId: number
|
whId: number
|
||||||
rgId: number
|
rgId: number
|
||||||
pnId: number
|
pnId: number
|
||||||
storageOkQty: number
|
storageOkQty: number
|
||||||
lotNo: string
|
lotNo: string
|
||||||
description: string
|
description: string
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询入/出库日志分页
|
// 查询入/出库实时分页
|
||||||
export const getStorageLogPage = async (params) => {
|
export const getStorageNowPage = async (params) => {
|
||||||
return await request.get({ url: `/heli/storage-log/page`, params })
|
return await request.get({ url: `/heli/storage-log/now`, params })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询入/出库日志详情
|
// 查询入/出库日志分页
|
||||||
export const getStorageLog = async (id: number) => {
|
export const getStorageLogPage = async (params) => {
|
||||||
return await request.get({ url: `/heli/storage-log/get?id=` + id })
|
return await request.get({ url: `/heli/storage-log/page`, params })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 新增入/出库日志
|
// 查询入/出库日志详情
|
||||||
export const createStorageLog = async (data: StorageLogVO) => {
|
export const getStorageLog = async (id: number) => {
|
||||||
return await request.post({ url: `/heli/storage-log/create`, data })
|
return await request.get({ url: `/heli/storage-log/get?id=` + id })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改入/出库日志
|
// 新增入/出库日志
|
||||||
export const updateStorageLog = async (data: StorageLogVO) => {
|
export const createStorageLog = async (data: StorageLogVO) => {
|
||||||
return await request.put({ url: `/heli/storage-log/update`, data })
|
return await request.post({ url: `/heli/storage-log/create`, data })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 删除入/出库日志
|
// 修改入/出库日志
|
||||||
export const deleteStorageLog = async (id: number) => {
|
export const updateStorageLog = async (data: StorageLogVO) => {
|
||||||
return await request.delete({ url: `/heli/storage-log/delete?id=` + id })
|
return await request.put({ url: `/heli/storage-log/update`, data })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 导出入/出库日志 Excel
|
// 删除入/出库日志
|
||||||
export const exportStorageLog = async (params) => {
|
export const deleteStorageLog = async (id: number) => {
|
||||||
return await request.download({ url: `/heli/storage-log/export-excel`, params })
|
return await request.delete({ url: `/heli/storage-log/delete?id=` + id })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 导出入/出库日志 Excel
|
||||||
|
export const exportStorageLog = async (params) => {
|
||||||
|
return await request.download({ url: `/heli/storage-log/export-excel`, params })
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 16 KiB |