luxiaotao1123
2021-06-21 9538400404d7a6a1acb036aa0ce8463400e8f497
src/main/java/zy/cloud/wms/manager/controller/WorkController.java
@@ -1,16 +1,21 @@
package zy.cloud.wms.manager.controller;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.annotations.ManagerAuth;
import com.core.common.BaseRes;
import com.core.common.Cools;
import com.core.common.R;
import com.core.common.SnowflakeIdWorker;
import com.core.exception.CoolException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import zy.cloud.wms.common.model.BillDto;
import zy.cloud.wms.common.service.erp.ErpService;
import zy.cloud.wms.common.web.BaseController;
import zy.cloud.wms.manager.entity.*;
import zy.cloud.wms.manager.entity.param.*;
@@ -23,6 +28,7 @@
/**
 * Created by vincent on 2021/2/25
 */
@Slf4j
@RestController
@RequestMapping("/work")
public class WorkController extends BaseController {
@@ -37,6 +43,9 @@
    private SnowflakeIdWorker snowflakeIdWorker;
    @Autowired
    private OrderService orderService;
    @Autowired
    private ErpService erpService;
    @RequestMapping("/stock/pakin")
    @ManagerAuth(memo = "入库")
@@ -184,6 +193,42 @@
        return R.ok("审核成功数量:" + success);
    }
    // 盘点上传
    @RequestMapping("/check/upload")
    @ManagerAuth(memo = "盘点上传")
    public R checkUpload(@RequestBody CheckUploadParam params) {
        List<BillDto> dtos = new ArrayList<>();
        if (params.getMats().size() > 0) {
            for (Mat matList : params.getMats()) {
                BillDto dto = new BillDto();
                dto.setMatnr(matList.getMatnr());
                dto.setQty(matList.getCount().doubleValue());
                dtos.add(dto);
            }
        } else {
            throw new CoolException("数据异常");
        }
        int docId;
        String docNum;
        if (params.getType().equals("1")) { // 盘盈
            docNum = "CS-" + String.valueOf(snowflakeIdWorker.nextId()).substring(0, 15);
            docId = 14; // 报溢单
        } else if (params.getType().equals("2")) { // 盘亏
            docNum = "CD-" + String.valueOf(snowflakeIdWorker.nextId()).substring(0, 15);
            docId = 9;  // 报损单
        } else {
            throw new CoolException("数据异常");
        }
        // erp上传盘盈盘亏
        if (!erpService.uploadBill(dtos, docId, docNum)) {
            throw new CoolException("无法上报至erp");
        }
        String dotsStr = JSON.toJSONString(dtos);
        log.info("盘点上传,类型:" + (docId == 14 ? "盘盈" : "盘亏") + ",单号:" + docNum + ",上传物料清单:" + dotsStr);
        log.info("===============================================================================================");
        return R.ok().add("上报至erp成功");
    }
    /******************************************************************************************************/
    @Autowired
@@ -231,6 +276,7 @@
        List<Item> items = itemService.selectList(new EntityWrapper<Item>().eq("status", 1).orderBy("create_time", false));
        return R.ok().add(items);
    }
    // 获取所有项目
    @RequestMapping("/item/all/get/kv")
    @ManagerAuth