自动化立体仓库 - WMS系统
#
zhou zhou
12 小时以前 35173cda98e2be25cf30a028697e6d363f8c4f77
#
4个文件已修改
1个文件已添加
115 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/MobileController.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/param/PKInventoryAdjustment.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/MobileService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/config/ControllerResAdvice.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/MobileController.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.annotations.AppAuth;
import com.core.annotations.ManagerAuth;
import com.core.common.BaseRes;
import com.core.common.Cools;
@@ -22,6 +23,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -34,6 +36,11 @@
@RequestMapping("mobile")
@Slf4j
public class MobileController extends BaseController  {
    private static final boolean auth = true;
    public static final ArrayList<String> APP_KEY_LIST = new ArrayList<String>() {{
        add("ea1f0459efc02a79f046f982767939ae");
    }};
    @Autowired
    private MobileService mobileService;
@@ -352,6 +359,37 @@
        return R.ok();
    }
    @RequestMapping("/pingKu/getList/auth")
    @ManagerAuth(memo = "平库获取库存列表")
    @AppAuth(memo = "平库获取库存列表")
    public R pingKuGetList(@RequestBody PKInventoryAdjustment combParam){
        auth("", combParam, request);
        if (Cools.isEmpty(combParam.getLocno())) {
            throw new CoolException(BaseRes.PARAM);
        }
        List<ManLocDetl> manLocDetls = mobileService.pingKuGetList(combParam);
        return R.ok(manLocDetls);
    }
    @RequestMapping("/pingKu/inventoryAdjustment/auth")
    @ManagerAuth(memo = "库存调整")
    @AppAuth(memo = "库存调整")
    public R pingKuInventoryAdjustment(@RequestBody PKInventoryAdjustment combParam, HttpServletRequest request){
        auth("", combParam, request);
        if (Cools.isEmpty(combParam.getLocno())) {
            throw new CoolException(BaseRes.PARAM);
        }
        mobileService.pingKuInventoryAdjustment(combParam);
        return R.ok();
    }
    private void auth(String appkey, Object obj, HttpServletRequest request) {
//            log.info("{}接口被访问;appkey:{};请求数据:{}", request.getRequestURI(), appkey, JSON.toJSONString(obj));
        request.setAttribute("cache", obj);
    }
    @RequestMapping("/pack/get/auth")
    @ManagerAuth
    public R packGet(@RequestParam String barcode){
src/main/java/com/zy/asrs/entity/param/PKInventoryAdjustment.java
New file
@@ -0,0 +1,13 @@
package com.zy.asrs.entity.param;
import com.zy.asrs.entity.ManLocDetl;
import lombok.Data;
import java.util.List;
@Data
public class PKInventoryAdjustment {
    private String locno;
    private String matnr;
    private List<ManLocDetl> manLocDetls;
}
src/main/java/com/zy/asrs/service/MobileService.java
@@ -4,13 +4,12 @@
import com.core.common.R;
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.ManLocDetl;
import com.zy.asrs.entity.OrderDetl;
import com.zy.asrs.entity.param.CombParam;
import com.zy.asrs.entity.param.MobileAdjustParam;
import com.zy.asrs.entity.param.OffSaleParam;
import com.zy.asrs.entity.param.pdaAdjustParam;
import com.zy.asrs.entity.param.*;
import java.util.Date;
import java.util.List;
import java.util.Map;
public interface MobileService {
@@ -72,4 +71,8 @@
    R FinishedCall(Map<String, Object> map);
    R agv2fPack(Map<String, Object> map);
    List<ManLocDetl> pingKuGetList(PKInventoryAdjustment combParam);
    void pingKuInventoryAdjustment(PKInventoryAdjustment combParam);
}
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -179,6 +179,55 @@
    }
    @Override
    public List<ManLocDetl> pingKuGetList(PKInventoryAdjustment combParam) {
        Node node = nodeService.selectOne(new EntityWrapper<Node>().eq("name", combParam.getLocno()).eq("type", 3));
        if (Cools.isEmpty(node)){
            throw new CoolException("未找到平库库位信息");
        }
        EntityWrapper<ManLocDetl> manLocDetlEntityWrapper = new EntityWrapper<>();
        manLocDetlEntityWrapper.eq("loc_no", node.getName());
        manLocDetlEntityWrapper.eq(!Cools.isEmpty(combParam.getMatnr()),"matnr", combParam.getMatnr());
        List<ManLocDetl> manLocDetls = manLocDetlService.selectList(manLocDetlEntityWrapper);
        if (Cools.isEmpty(manLocDetls)){
            throw new CoolException("未找到库存信息");
        }
        return manLocDetls;
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void pingKuInventoryAdjustment(PKInventoryAdjustment combParam) {
        Node node = nodeService.selectOne(new EntityWrapper<Node>().eq("name", combParam.getLocno()).eq("type", 3));
        if (Cools.isEmpty(node)){
            throw new CoolException("未找到平库库位信息");
        }
        for (ManLocDetl manLocDetl :combParam.getManLocDetls()){
            EntityWrapper<ManLocDetl> manLocDetlEntityWrapper = new EntityWrapper<>();
            manLocDetlEntityWrapper.eq("loc_no", manLocDetl.getLocNo());
            manLocDetlEntityWrapper.eq("matnr", manLocDetl.getMatnr());
            manLocDetlEntityWrapper.eq("batch", manLocDetl.getBatch());
            List<ManLocDetl> manLocDetls = manLocDetlService.selectList(manLocDetlEntityWrapper);
            if (Cools.isEmpty(manLocDetls) || manLocDetls.size() > 1){
                throw new CoolException("数据错误");
            }
            ManLocDetl manLocDetl1 = manLocDetls.get(0);
            BigDecimal adjustBigDecimal = new BigDecimal(manLocDetl.getAnfme().toString());
            BigDecimal orgBigDecimal = new BigDecimal(manLocDetl1.getAnfme().toString());
            if (orgBigDecimal.compareTo(adjustBigDecimal) == 0){
                continue;
            }
            manLocDetl1.setAnfme(adjustBigDecimal.doubleValue());
            if (!manLocDetlService.update(manLocDetl1,manLocDetlEntityWrapper)){
                throw new CoolException("更新数据失败");
            }
        }
    }
    @Override
    public R inLocCallAgv(String sta, String inSta) {
        BasDevp basDevp = basDevpMapper.selectById(inSta);
src/main/java/com/zy/common/config/ControllerResAdvice.java
@@ -46,7 +46,7 @@
                if (o instanceof R) {
                    String appkey = request.getHeader("appkey");
                    Object reqCache = request.getAttribute("cache");
                    if (!Cools.isEmpty(appkey)) {
                        // 保存接口日志
                        apiLogService.save(
                                String.valueOf(appAuth),
@@ -57,7 +57,7 @@
                                JSON.toJSONString(o),
                                String.valueOf(((R) o).get("code")).equalsIgnoreCase("200")
                        );
                    }
                }
            }
        }