自动化立体仓库 - WMS系统
whycq
2024-07-06 b6a5504ce64f508391a460dc81f8fd288d9f3722
# 换板绑定
16个文件已修改
199 ■■■■■ 已修改文件
.idea/zy-asrs.iml 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/MobileController.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/LocDetlMapper.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/LocMastMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/LocDetlService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/LocMastService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/WrkDetlService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/WrkMastService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/LocDetlMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/LocMastMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/WrkDetlMapper.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.idea/zy-asrs.iml
@@ -22,6 +22,43 @@
    </content>
    <orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
    <orderEntry type="sourceFolder" forTests="false" />
    <orderEntry type="library" name="Maven: cn.cool:framework:2.2.0" level="project" />
    <orderEntry type="library" scope="PROVIDED" name="Maven: org.projectlombok:lombok:1.18.14" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web-services:2.1.3.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: com.sun.xml.messaging.saaj:saaj-impl:1.5.0" level="project" />
    <orderEntry type="library" name="Maven: javax.xml.soap:javax.xml.soap-api:1.4.0" level="project" />
    <orderEntry type="library" name="Maven: org.jvnet.mimepull:mimepull:1.9.11" level="project" />
    <orderEntry type="library" name="Maven: org.jvnet.staxex:stax-ex:1.8" level="project" />
    <orderEntry type="library" name="Maven: javax.xml.ws:jaxws-api:2.3.1" level="project" />
    <orderEntry type="library" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
    <orderEntry type="library" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.ws:spring-ws-core:3.0.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.ws:spring-xml:3.0.6.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: commons-io:commons-io:2.5" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-spring-boot-starter-jaxws:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-spring-boot-autoconfigure:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-core:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: org.glassfish.jaxb:jaxb-runtime:2.3.1" level="project" />
    <orderEntry type="library" name="Maven: org.glassfish.jaxb:txw2:2.3.1" level="project" />
    <orderEntry type="library" name="Maven: com.sun.istack:istack-commons-runtime:3.0.7" level="project" />
    <orderEntry type="library" name="Maven: com.sun.xml.fastinfoset:FastInfoset:1.2.15" level="project" />
    <orderEntry type="library" name="Maven: com.fasterxml.woodstox:woodstox-core:5.0.3" level="project" />
    <orderEntry type="library" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.2.4" level="project" />
    <orderEntry type="library" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.2" level="project" />
    <orderEntry type="library" name="Maven: jakarta.activation:jakarta.activation-api:1.2.1" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: xml-resolver:xml-resolver:1.2" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: wsdl4j:wsdl4j:1.6.3" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.neethi:neethi:3.1.1" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.1.3.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.1.3.RELEASE" level="project" />
    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.1.3.RELEASE" level="project" />
@@ -158,5 +195,10 @@
    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.3.4" level="project" />
    <orderEntry type="library" name="Maven: org.apache.neethi:neethi:3.1.1" level="project" />
    <orderEntry type="library" name="Maven: javax.validation:validation-api:2.0.1.Final" level="project" />
    <orderEntry type="library" name="Maven: com.sun.activation:javax.activation:1.2.0" level="project" />
    <orderEntry type="library" name="Maven: org.apache.geronimo.specs:geronimo-ws-metadata_2.0_spec:1.1.3" level="project" />
    <orderEntry type="library" name="Maven: org.jacorb:jacorb-omgapi:3.7" level="project" />
    <orderEntry type="library" name="Maven: org.apache.geronimo.specs:geronimo-jta_1.1_spec:1.1.1" level="project" />
    <orderEntry type="library" name="Maven: org.jboss.spec.javax.rmi:jboss-rmi-api_1.0_spec:1.0.6.Final" level="project" />
  </component>
</module>
src/main/java/com/zy/asrs/controller/MobileController.java
@@ -51,6 +51,8 @@
    private WaitMatchkService waitMatchkService;
    @Autowired
    private MatCodeService matCodeService;
    @Autowired
    private WrkMastService wrkMastService;
    /**
     * 组托
@@ -130,6 +132,20 @@
        return R.parse(BaseRes.PARAM);
    }
    // 拣料检索托盘信息
    @RequestMapping("/piking/auth")
    @ManagerAuth
    public R pikingAuth(String barcode) {
        WrkMast wrkMast = wrkMastService.selectByBarcode(barcode);
        if (Cools.isEmpty(wrkMast)) {
            throw new CoolException(barcode + "暂无工作档");
        }
        if (wrkMast.getIoType() != 103 && wrkMast.getIoType() != 107){
            throw new CoolException(barcode + "不为拣料/盘点出库");
        }
        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
        return R.ok().add(wrkDetls);
    }
    /**
     *  根据库位号查找库存明细
     */
@@ -273,4 +289,53 @@
        }
        return R.ok().add(flag);
    }
    // 拣料转全板
    // sBarcode 原托盘码  tBarcode 转换托盘码
    @RequestMapping("/piking/to/full")
    @ManagerAuth
    @Transactional
    public R pikingToFull(String sBarcode,String tBarcode) {
        //  检查转换托盘码是否在库
        List<LocDetl> locDetls = locDetlService.selectByZpallet(tBarcode);
        if (!Cools.isEmpty(locDetls)) {
            throw new CoolException("需要转换的托盘已被使用,请更换托盘!");
        }
        WrkMast twrkMast = wrkMastService.selectByBarcode(tBarcode);
        if (!Cools.isEmpty(twrkMast)) {
            throw new CoolException("需要转换的托盘已被使用,请更换托盘!");
        }
        LocMast tlocMast = locMastService.selectByBarcode(tBarcode);
        if (!Cools.isEmpty(tlocMast)) {
            throw new CoolException("需要转换的托盘已被使用,请更换托盘!");
        }
        WrkDetl twrkDetl = wrkDetlService.selectByZpallet0(tBarcode);
        if (!Cools.isEmpty(twrkDetl)) {
            throw new CoolException("需要转换的托盘已被使用,请更换托盘!");
        }
//        修改工作档托盘码
        WrkMast wrkMast = wrkMastService.selectByBarcode(sBarcode);
        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
        for (WrkDetl wrkDetl : wrkDetls) {
            //++++
            wrkDetlService.updateBarcode(sBarcode,tBarcode,wrkDetl.getSupplier());
        }
        if (Cools.isEmpty(wrkMast)) {
            throw new CoolException("请确认托盘码!");
        }
//                修改库存明细档托盘码
        List<LocDetl> locDetls1 = locDetlService.selectByZpallet(sBarcode);
        for (LocDetl locDetl : locDetls1) {
            //++++
            locDetlService.updateZpallet(sBarcode,tBarcode,locDetl.getSupplier());
        }
//        修改工作主档条码
        wrkMast.setBarcode(tBarcode);
        wrkMastService.updateById(wrkMast);
        LocMast locMast = locMastService.selectByBarcode(sBarcode);
        locMast.setBarcode(tBarcode);
        locMastService.updateById(locMast);
        return R.ok("转换成功");
    }
}
src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
@@ -50,4 +50,9 @@
    List<LocDetlWarningDTO> selectAllWarning(LocDetlWarningDTO locDetlWarningDTO);
    int getAllWarningCount(LocDetlWarningDTO locDetlWarningDTO);
    List<LocDetl> selectByZpallet(String barcode);
    @Update("update asr_loc_detl set zpallet = #{tBarcode}, modi_time=getDate() where zpallet = #{sBarcode}")
    int updateZpallet(String sBarcode, String tBarcode,String batch);
}
src/main/java/com/zy/asrs/mapper/LocMastMapper.java
@@ -54,4 +54,6 @@
     * @return 库位
     */
    LocMast queryLocByBarCodeNew(@Param("devpNo") int devpNo, @Param("flag") int flag);
    LocMast selectByBarcode(@Param("barcode") String barcode);
}
src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java
@@ -5,6 +5,7 @@
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.springframework.stereotype.Repository;
import java.util.List;
@@ -22,4 +23,12 @@
    @Select("select b.source_loc_no as locNo, a.mat_no as matNo,a.mat_name as matName,a.qty as qty" +
            " from asr_wrk_detl a left join asr_wrk_mast b on a.wrk_no = b.wrk_no where a.wrk_no = (select wrk_no from asr_bas_devp where dev_no = #{devNo})")
    List<WrkDetl> queryMatFromDevNo(Integer devNo);
    List<WrkDetl> selectByWrkNo(Integer wrkNo);
    WrkDetl selectByZpallet0(@Param("zpallet") String zpallet);
    @Update("update asr_wrk_detl set zpallet = #{tBarcode}, modi_time=getDate() where zpallet = #{sBarcode}")
    int updateBarcode(String sBarcode, String tBarcode,String batch);
}
src/main/java/com/zy/asrs/service/LocDetlService.java
@@ -70,4 +70,8 @@
    List<LocDetlWarningDTO> selectAllWarning(LocDetlWarningDTO locDetlWarningDTO);
    int getAllWarningCount(LocDetlWarningDTO locDetlWarningDTO);
    List<LocDetl> selectByZpallet(String barcode);
    boolean updateZpallet(String sBarcode, String tBarcode,String batch);
}
src/main/java/com/zy/asrs/service/LocMastService.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.service.IService;
import com.zy.asrs.entity.LocMast;
import com.zy.asrs.entity.WrkMast;
import java.util.List;
@@ -57,4 +58,6 @@
    public LocMast queryEmptyDeepLoc();
    public List<LocMast> queryDeepLocDMast();
    LocMast selectByBarcode(String barcode);
}
src/main/java/com/zy/asrs/service/WrkDetlService.java
@@ -8,6 +8,8 @@
public interface WrkDetlService extends IService<WrkDetl> {
    List<WrkDetl> selectByWrkNo(Integer wrkNo);
    void createWorkDetail(Integer workNo, List<MatCodeCountDto> matCodeCountDtos, String barcode, Long userId);
    List<WrkDetl> queryWrkDetl(String matNo, String locNo);
@@ -16,4 +18,9 @@
     * PDA盘点根据出库口查询对应物料信息
     */
    List<WrkDetl> queryMatFromDevNo(Integer devNo);
    WrkDetl selectByZpallet0(String zpallet);
    boolean updateBarcode(String sBarcode,String tBarcode,String batch);
}
src/main/java/com/zy/asrs/service/WrkMastService.java
@@ -1,6 +1,7 @@
package com.zy.asrs.service;
import com.baomidou.mybatisplus.service.IService;
import com.zy.asrs.entity.WrkDetl;
import com.zy.asrs.entity.WrkMast;
import java.util.List;
@@ -15,4 +16,6 @@
    List<WrkMast> selectToBeHistoryData();
    WrkMast selectByBarcode(String barcode);
}
src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -95,4 +95,14 @@
    public int getAllWarningCount(LocDetlWarningDTO locDetlWarningDTO) {
        return this.baseMapper.getAllWarningCount(locDetlWarningDTO);
    }
    @Override
    public List<LocDetl> selectByZpallet(String barcode) {
        return this.baseMapper.selectByZpallet(barcode);
    }
    @Override
    public boolean updateZpallet(String sBarcode,String tBarcode,String batch) {
        return baseMapper.updateZpallet(sBarcode,tBarcode,batch)>0;
    }
}
src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java
@@ -82,4 +82,9 @@
    public List<LocMast> queryDeepLocDMast() {
        return this.baseMapper.queryDeepLocDMast();
    }
    @Override
    public LocMast selectByBarcode(String barcode) {
        return this.baseMapper.selectByBarcode(barcode);
    }
}
src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
@@ -92,4 +92,19 @@
    public List<WrkDetl> queryMatFromDevNo(Integer devNo) {
        return baseMapper.queryMatFromDevNo(devNo);
    }
    @Override
    public List<WrkDetl> selectByWrkNo(Integer wrkNo) {
        return this.baseMapper.selectByWrkNo(wrkNo);
    }
    @Override
    public WrkDetl selectByZpallet0(String zpallet) {
        return this.baseMapper.selectByZpallet0(zpallet);
    }
    @Override
    public boolean updateBarcode(String sBarcode,String tBarcode,String batch) {
        return baseMapper.updateBarcode(sBarcode,tBarcode,batch) > 0;
    }
}
src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.core.common.Cools;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.mapper.WrkMastMapper;
import com.zy.asrs.service.WrkMastService;
@@ -32,4 +33,13 @@
        return this.baseMapper.selectToBeHistoryData();
    }
    @Override
    public WrkMast selectByBarcode(String barcode) {
        List<WrkMast> wrkMasts = this.selectList(new EntityWrapper<WrkMast>().eq("barcode", barcode));
        if (Cools.isEmpty(wrkMasts)) {
            return null;
        }
        return wrkMasts.get(0);
    }
}
src/main/resources/mapper/LocDetlMapper.xml
@@ -408,6 +408,10 @@
          AND qty &lt;= num1
    </select>
    <select id="selectByZpallet" resultMap="BaseResultMap">
        SELECT * FROM [dbo].[asr_loc_detl]
        WHERE 1=1 and zpallet=#{zpallet}
    </select>
    <!--    <select id="getStockSum" resultMap="BaseResultMap">-->
src/main/resources/mapper/LocMastMapper.xml
@@ -217,4 +217,8 @@
        </if>
        ORDER BY lev1 ASC, bay1 ASC
    </select>
    <select id="selectByBarcode" resultMap="BaseResultMap">
        SELECT * FROM asr_loc_mast where 1=1 and barcode = #{barcode}
    </select>
</mapper>
src/main/resources/mapper/WrkDetlMapper.xml
@@ -40,4 +40,15 @@
        from asr_wrk_detl a left join asr_wrk_mast b on a.wrk_no = b.wrk_no
        where 1=1 and a.mat_no = #{matNo,jdbcType=VARCHAR} and (b.loc_no = #{locNo,jdbcType=VARCHAR} or b.source_loc_no = #{locNo,jdbcType=VARCHAR})
    </select>
    <select id="selectByWrkNo" resultMap="BaseResultMap">
        select * from asr_wrk_detl where 1=1 and wrk_no = #{wrkNo}
    </select>
    <select id="selectByZpallet0" resultMap="BaseResultMap">
        select top 1 *
        from asr_wrk_detl
        where 1=1
        and zpallet = #{zpallet}
    </select>
</mapper>