#
luxiaotao1123
2021-03-20 b650e00a5e5ecdad78014452c8bfa60b3ffbfca7
#
3个文件已添加
7个文件已修改
165 ■■■■■ 已修改文件
src/main/java/zy/cloud/wms/common/service/asrs/AsrsService.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/common/service/asrs/entity/Result.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/controller/WorkController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/entity/param/StockTransferParam.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/service/LocDetlService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/service/WorkService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/service/impl/LocDetlServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/custOrder/custOrder.js 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/common/service/asrs/AsrsService.java
New file
@@ -0,0 +1,42 @@
package zy.cloud.wms.common.service.asrs;
import com.alibaba.fastjson.JSON;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import zy.cloud.wms.common.service.asrs.entity.Result;
import zy.cloud.wms.manager.entity.param.StockTransferParam;
import zy.cloud.wms.manager.utils.HttpHandler;
import java.io.IOException;
import java.util.List;
/**
 * Created by vincent on 2021/3/20
 */
@Service("asrsService")
public class AsrsService {
    @Value("${asrs.baseUrl}")
    private String asrsBaseUrl;
    public Boolean stockTransfer(List<StockTransferParam> params) {
        try {
            String response = new HttpHandler.Builder()
                    .setUri(asrsBaseUrl)
                    .setPath("/open/api/stockOut")
                    .setJson(JSON.toJSONString(params))
                    .build()
                    .doPost();
            Result result = JSON.parseObject(response, Result.class);
            if (result.getCode() == 200) {
                return true;
            } else {
                return false;
            }
        } catch (IOException e) {
            e.printStackTrace();
            return false;
        }
    }
}
src/main/java/zy/cloud/wms/common/service/asrs/entity/Result.java
New file
@@ -0,0 +1,17 @@
package zy.cloud.wms.common.service.asrs.entity;
import lombok.Data;
/**
 * Created by vincent on 2021/3/20
 */
@Data
public class Result {
    private Integer code;
    private String msg;
    private Object data;
}
src/main/java/zy/cloud/wms/manager/controller/WorkController.java
@@ -137,4 +137,10 @@
        return workService.initOrder(param, getUserId());
    }
    @RequestMapping("/stock/transfer")
    @ManagerAuth(memo = "库存调拨")
    public R stockTransfer(@RequestParam String number) {
        return workService.stockTransfer(number, getUserId());
    }
}
src/main/java/zy/cloud/wms/manager/entity/param/StockTransferParam.java
New file
@@ -0,0 +1,16 @@
package zy.cloud.wms.manager.entity.param;
import lombok.Data;
/**
 * Created by vincent on 2021/3/20
 */
@Data
public class StockTransferParam {
    private String matnr;
    private Double anfme;
}
src/main/java/zy/cloud/wms/manager/service/LocDetlService.java
@@ -52,4 +52,11 @@
     */
    List<LocDetl> getLocDetlStatis();
    /**
     * 数量 sum函数
     * @param matnr
     * @return
     */
    Double selectCountByMatnr(String matnr);
}
src/main/java/zy/cloud/wms/manager/service/WorkService.java
@@ -27,4 +27,6 @@
    R initOrder(InitOrderParam param, Long userId);
    R stockTransfer(String number, Long userId);
}
src/main/java/zy/cloud/wms/manager/service/impl/LocDetlServiceImpl.java
@@ -108,5 +108,10 @@
        return this.baseMapper.getLocDetlStatis();
    }
    @Override
    public Double selectCountByMatnr(String matnr) {
        return this.baseMapper.selectCountByMatnr(matnr);
    }
}
src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java
@@ -11,12 +11,14 @@
import org.springframework.transaction.annotation.Transactional;
import zy.cloud.wms.common.model.OrderStoDto;
import zy.cloud.wms.common.service.MainService;
import zy.cloud.wms.common.service.asrs.AsrsService;
import zy.cloud.wms.common.utils.VersionUtils;
import zy.cloud.wms.manager.entity.*;
import zy.cloud.wms.manager.entity.param.*;
import zy.cloud.wms.manager.entity.result.StoPrintVo;
import zy.cloud.wms.manager.service.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -42,6 +44,8 @@
    private SnowflakeIdWorker snowflakeIdWorker;
    @Autowired
    private MatService matService;
    @Autowired
    private AsrsService asrsService;
    @Override
    @Transactional
@@ -327,4 +331,34 @@
        return R.ok("生成销售订单" + param.getNumber() + "成功");
    }
    @Override
    public R stockTransfer(String number, Long userId) {
        List<CustOrder> custOrders = custOrderService.selectList(new EntityWrapper<CustOrder>().eq("number", number).eq("status", 1));
        boolean error = false;
        List<StockTransferParam> params = new ArrayList<>();
        for (CustOrder custOrder : custOrders) {
            Double count = locDetlService.selectCountByMatnr(custOrder.getUserCode());
            if (count == null) {
                count = 0.0D;
            }
            if (count < custOrder.getQty()) {
                if (!error) {
                    error = true;
                }
                StockTransferParam param = new StockTransferParam();
                param.setMatnr(custOrder.getUserCode());
                param.setAnfme(custOrder.getQty() - count);
                params.add(param);
            }
        }
        if (error) {
            if (asrsService.stockTransfer(params)) {
                return R.ok("库存调拨成功");
            } else {
                return R.error("立库调拨失败,请联系管理员");
            }
        }
        return R.error("暂不缺货,不需要立库调拨");
    }
}
src/main/resources/application.yml
@@ -14,7 +14,7 @@
#    password: xltys1995
    # sql-server
    driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
    url: jdbc:sqlserver://192.168.110.56:1433;databasename=htasrs
    url: jdbc:sqlserver://192.168.2.250:1433;databasename=htasrs
    username: sa
    password: sa@123
  mvc:
@@ -50,4 +50,7 @@
    id: LTAI4GDzr6ioSHuRw2mk22ug
    secret: 84CHL7tF21LbU1qpaP0jn9mIAZP9bv
    bucket: tjdt
    endpoint: http://oss-cn-hangzhou.aliyuncs.com
    endpoint: http://oss-cn-hangzhou.aliyuncs.com
asrs:
  baseUrl: http://localhost:8081/htwms
src/main/webapp/static/js/custOrder/custOrder.js
@@ -254,7 +254,8 @@
                                    , area: ['400px']
                                    , btn: ['库存调拨', '取消']
                                }, function() {
                                    // todo 库存调拨
                                    // 库存调拨
                                    stockTransfer(data.number);
                                    layer.closeAll();
                                }, function() {
                                    // printPakouts(data.number);
@@ -309,10 +310,10 @@
                                shadeClose: true
                                , btn: ['库存调拨', '取消']
                            }, function() {
                                // todo 库存调拨
                                // 库存调拨
                                layer.closeAll();
                            }, function() {
                                // printPakouts(data.number);
                            alert(number)
                                layer.closeAll();
                            }
                        )
@@ -327,6 +328,28 @@
        // });
    }
    // 库存调拨
    function stockTransfer(number) {
        $.ajax({
            url: baseUrl + "/work/stock/transfer",
            headers: {'token': localStorage.getItem('token')},
            data: {
                number: number
            },
            method: 'POST',
            success: function (res) {
                if (res.code === 200) {
                    layer.msg(res.msg, {icon: 1})
                } else if (res.code === 403) {
                    top.location.href = baseUrl + "/";
                } else {
                    layer.msg(res.msg, {icon: 2})
                }
            }
        });
    }
    // 打印拣货单
    function printPakouts(docNumber) {
        $.ajax({