自动化立体仓库 - WMS系统
pang.jiabao
2025-04-30 abb9b5c51d8a20be68b64e0c4a9620f6578d2e3a
src/main/java/com/zy/asrs/controller/LocDetlController.java
@@ -14,13 +14,16 @@
import com.core.common.R;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.Mat;
import com.zy.asrs.entity.param.ProductCalibrationExcelParam;
import com.zy.asrs.importexcle.LocMat;
import com.zy.asrs.importexcle.LocMatListener;
import com.zy.asrs.importexcle.ProductCalibrationImportListener;
import com.zy.asrs.mapper.LocDetlMapper;
import com.zy.asrs.service.LocDetlService;
import com.zy.asrs.service.LocMastService;
import com.zy.asrs.service.MatService;
import com.zy.common.web.BaseController;
import org.apache.ibatis.session.SqlSessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
@@ -46,6 +49,9 @@
    @Resource
    private LocMastService locMastService;
    @Resource
    private SqlSessionFactory sqlSessionFactory;
    @PostMapping("/importLocData")
    @ManagerAuth(memo = "导入立库已有库存")
    public R importLocData(@RequestParam("file") MultipartFile multipartFile) {
@@ -57,12 +63,40 @@
        }
        return R.ok("导入成功");
    }
    @PostMapping("/productCalibration")
    @ManagerAuth(memo = "产品校验导入excel方式")
    public R productCalibration(@RequestParam("file") MultipartFile multipartFile) {
        try {
            productCalibrationExcel(multipartFile);
        } catch (Exception e) {
            e.printStackTrace();
            return R.error(e.getMessage());
        }
        return R.ok("导入成功");
    }
    @PostMapping("/getLocDateByLocNo")
    @ManagerAuth(memo = "根据包装组号提取一整箱库存")
    public R getLocDateByLocNo(@RequestBody List<String> packageNoList) {
        List<LocDetl> locDetls = locDetlMapper.selectList(new EntityWrapper<LocDetl>().in("brand", packageNoList));
        return R.ok(locDetls);
    }
    @Transactional(rollbackFor = Exception.class)
    public void importLocData1(MultipartFile multipartFile) throws IOException {
        EasyExcel.read(multipartFile.getInputStream(), LocMat.class,
                new LocMatListener(locMastService,locDetlMapper,getUserId())).sheet().doReadSync();
    }
    @Transactional(rollbackFor = Exception.class)
    public void productCalibrationExcel(MultipartFile multipartFile) throws IOException {
        EasyExcel.read(multipartFile.getInputStream(), ProductCalibrationExcelParam.class,
                new ProductCalibrationImportListener(sqlSessionFactory)).sheet().doReadSync();
    }
    @RequestMapping(value = "/locDetl/update")
    public R update1() {
        if (!locDetlService.updateLocNo("0402805", "0402804")) {