XiaoRuby
2023-08-11 7b09f233bde70508f6db7e08e983e9a2c4bb3e99
inventory-server/src/main/java/com/yuanchu/mom/controller/ConsignmentController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,98 @@
package com.yuanchu.mom.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.mom.pojo.dto.ConsignmentDto;
import com.yuanchu.mom.service.SaleService;
import com.yuanchu.mom.utils.JackSonUtil;
import com.yuanchu.mom.utils.Jwt;
import com.yuanchu.mom.vo.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.yuanchu.mom.service.ConsignmentService;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * æˆå“å‘货表(Consignment)表控制层
 *
 * @author zss
 * @since 2023-08-10 15:08:02
 */
@Api(tags = "WMS管理-->成品发货")
@RestController
@RequestMapping("/consignment")
public class ConsignmentController {
    @Autowired
    private ConsignmentService consignmentService;
    @Resource
    SaleService saleService;
    @Resource
    Jwt jwt;
    @ApiOperation(value = "新增成品发货-->根据订单号查询销售信息")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "orderNumber", value = "订单编号", dataTypeClass = String.class, required = true)
    })
    @GetMapping("/selSale")
    public Result selSale(String orderNumber) {
        return Result.success(saleService.selSale(orderNumber));
    }
    @ApiOperation(value = "新增成品发货")
    @PostMapping("/addCon")
    public Result addCon(@RequestHeader("token") String token, @RequestBody ConsignmentDto consignmentDto) throws Exception {
        Map<String, String> data = JackSonUtil.unmarshal(jwt.readJWT(token).get("data"), Map.class);
        return Result.success(consignmentService.addCon(data.get("name").replaceAll("\"", ""), consignmentDto));
    }
    @ApiOperation(value = "查询发货记录列表")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "pageSize", value = "页数", dataTypeClass = Integer.class, required = true),
            @ApiImplicitParam(name = "countSize", value = "条数/页", dataTypeClass = Integer.class, required = true),
            @ApiImplicitParam(name = "name", value = "产品名称", dataTypeClass = String.class),
            @ApiImplicitParam(name = "specifications", value = "产品型号", dataTypeClass = String.class),
            @ApiImplicitParam(name = "time", value = "发货日期", dataTypeClass = String.class)
    })
    @GetMapping("/selectAllCon")
    public Result selectAllCon(int pageSize, int countSize, String name, String specifications, String time) {
        IPage<Map<String, Object>> consignmentPage = consignmentService.selectAllCon(new Page<Object>(pageSize, countSize), name, specifications, time);
        Map<String, Object> map = new HashMap<>();
        map.put("total", consignmentPage.getTotal());
        map.put("row", consignmentPage.getRecords());
        return Result.success(map);
    }
    @ApiOperation(value = "根据发货id删除")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "id", value = "发货id", dataTypeClass = Integer.class, required = true)
    })
    @PostMapping("/delCon")
    public Result delCon(Integer id) {
        consignmentService.delCon(id);
        return Result.success();
    }
    @ApiOperation(value = "批量删除")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "ids", value = "ids", dataTypeClass = Integer.class, dataType = "List", required = true)
    })
    @PostMapping("/delAllCon")
    public Result delAllCon(@RequestParam("ids") List<Integer> ids) {
        consignmentService.delAllCon(ids);
        return Result.success();
    }
}