自动化立体仓库 - WMS系统
zhang
2025-05-23 2e0d98030100f7c201c50a94073f33c22082f24c
接口编写
6个文件已修改
1个文件已删除
130 ■■■■ 已修改文件
src/main/java/com/zy/common/config/ds/PrimaryDataSourceConfig.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/config/ds/SecondaryDataSourceConfig.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/nc/task/PlanOrderTask.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java 102 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/nc/NccCkPddWmsMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/nc/NccScZkmxbWmsMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/spring.factories 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/config/ds/PrimaryDataSourceConfig.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean;
import org.apache.ibatis.plugin.Interceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
@@ -18,12 +19,14 @@
    @Bean(name = "primarySqlSessionFactory")
    @Primary
    public MybatisSqlSessionFactoryBean primarySqlSessionFactory(@Qualifier("dataSource") DataSource dataSource) throws Exception {
    public MybatisSqlSessionFactoryBean primarySqlSessionFactory(@Qualifier("dataSource") DataSource dataSource, PaginationInterceptor paginationInterceptor) throws Exception {
        MybatisSqlSessionFactoryBean sessionFactory = new MybatisSqlSessionFactoryBean();
        sessionFactory.setDataSource(dataSource);
        // 设置MyBatis的Mapper XML文件路径
        sessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver()
                .getResources("classpath:mapper/asrs/*.xml"));
        Interceptor[] interceptors = new Interceptor[]{paginationInterceptor};
        sessionFactory.setPlugins(interceptors);
        return sessionFactory;
    }
src/main/java/com/zy/common/config/ds/SecondaryDataSourceConfig.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean;
import org.apache.ibatis.plugin.Interceptor;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.annotation.MapperScan;
@@ -18,12 +19,15 @@
public class SecondaryDataSourceConfig {
    @Bean(name = "secondarySqlSessionFactory")
    public MybatisSqlSessionFactoryBean secondarySqlSessionFactory(@Qualifier("slaveDataSource") DataSource dataSource) throws Exception {
    public MybatisSqlSessionFactoryBean secondarySqlSessionFactory(@Qualifier("slaveDataSource") DataSource dataSource, PaginationInterceptor paginationInterceptor) throws Exception {
        MybatisSqlSessionFactoryBean  sessionFactory = new MybatisSqlSessionFactoryBean();
        sessionFactory.setDataSource(dataSource);
        // 设置MyBatis的Mapper XML文件路径
        sessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver()
                .getResources("classpath:mapper/nc/*.xml"));
        Interceptor[] interceptors = new Interceptor[] { paginationInterceptor };
        sessionFactory.setPlugins(interceptors);
        return sessionFactory;
    }
src/main/java/com/zy/nc/task/PlanOrderTask.java
@@ -48,7 +48,7 @@
    public void execute1() {
        List<String> Ids = nccSaleXsfhmxWmsService.selectXsfh();
        for (String id : Ids) {
            List<NccSaleXsfhmxWms> wmsFlag = nccSaleXsfhmxWmsService.selectList(new EntityWrapper<NccSaleXsfhmxWms>().eq("vbillcode", id).ne("wms_flag", 1).eq("fstatusflag", 2));
            List<NccSaleXsfhmxWms> wmsFlag = nccSaleXsfhmxWmsService.selectList(new EntityWrapper<NccSaleXsfhmxWms>().eq("vbillcode", id).ne("wms_flag", 1).eq("fstatusflag", 2).eq("hdr", 0).eq("bdr", 0).eq("fstatusflag", 2));
            if (wmsFlag == null || wmsFlag.isEmpty()) {
                return;
            }
@@ -76,7 +76,7 @@
        //String s = "一期成品库-内贸(立体库)、一期成品库-福莱国际外贸(立体库)、一期成品库-外购(立体库)、一期成品库-福达/工厂外贸(立体库)、一期辅料库-包材(立体库)";
        List<String> strings = nccScZkmxbWmsService.selectZkIn(ids);
        for (String string : strings) {
            List<NccScZkmxbWms> wmsFlag = nccScZkmxbWmsService.selectList(new EntityWrapper<NccScZkmxbWms>().eq("vbillcode", string).ne("wms_flag", 1));
            List<NccScZkmxbWms> wmsFlag = nccScZkmxbWmsService.selectList(new EntityWrapper<NccScZkmxbWms>().eq("vbillcode", string).ne("wms_flag", 1).eq("dr", 0).eq("bdr", 0));
            if (wmsFlag == null || wmsFlag.isEmpty()) {
                return;
            }
@@ -101,7 +101,7 @@
        List<Integer> ids = Arrays.asList(6101, 6102, 6106, 6110);
        List<String> strings = nccScZkmxbWmsService.selectZkOut(ids);
        for (String string : strings) {
            List<NccScZkmxbWms> wmsFlag = nccScZkmxbWmsService.selectList(new EntityWrapper<NccScZkmxbWms>().eq("vbillcode", string).ne("wms_flag", 1));
            List<NccScZkmxbWms> wmsFlag = nccScZkmxbWmsService.selectList(new EntityWrapper<NccScZkmxbWms>().eq("vbillcode", string).ne("wms_flag", 1).eq("hdr", 0).eq("bdr", 0));
            if (wmsFlag == null || wmsFlag.isEmpty()) {
                return;
            }
@@ -125,7 +125,7 @@
    public void execute3() {
        List<String> strings = nccCgCgdhdWmsService.selectCg();
        for (String string : strings) {
            List<NccCgCgdhdWms> wmsFlag = nccCgCgdhdWmsService.selectList(new EntityWrapper<NccCgCgdhdWms>().eq("vbillcode", string).ne("wms_flag", 1));
            List<NccCgCgdhdWms> wmsFlag = nccCgCgdhdWmsService.selectList(new EntityWrapper<NccCgCgdhdWms>().eq("vbillcode", string).ne("wms_flag", 1).eq("hdr", 0).eq("bdr", 0));
            if (wmsFlag == null || wmsFlag.isEmpty()) {
                return;
            }
@@ -151,7 +151,7 @@
        List<Integer> ids = Arrays.asList(6101, 6102, 6106, 6110);
        List<String> strings = nccSaleDbddWmsService.selectDbdd(ids);
        for (String string : strings) {
            List<NccSaleDbddWms> wmsFlag = nccSaleDbddWmsService.selectList(new EntityWrapper<NccSaleDbddWms>().eq("vbillcode", string).ne("wms_flag", 1));
            List<NccSaleDbddWms> wmsFlag = nccSaleDbddWmsService.selectList(new EntityWrapper<NccSaleDbddWms>().eq("vbillcode", string).ne("wms_flag", 1).eq("dr", 0).eq("bdr", 0));
            if (wmsFlag == null || wmsFlag.isEmpty()) {
                return;
            }
src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
@@ -70,16 +70,14 @@
            List<DetlDto> orderDetails = new ArrayList<>();
            long i = 1;
            for (NccSaleXsfhmxWms nccSaleXsfhmxWms : wmsFlag) {
                if (nccSaleXsfhmxWms.getFstatusflag() == 2 && nccSaleXsfhmxWms.getBdr() == 0 && nccSaleXsfhmxWms.getHdr() == 0) {
                    detlDto = new DetlDto();
                    detlDto.setMatnr(nccSaleXsfhmxWms.getWlbm());
                    detlDto.setAnfme(nccSaleXsfhmxWms.getNastnum().doubleValue());
                    detlDto.setLineNumber(i);
                    detlDto.setRemark(JSONObject.toJSONString(nccSaleXsfhmxWms));
                    orderDetails.add(detlDto);
                    log.info("NccSaleXsfhmxWms数据:{}", JSONObject.toJSON(nccSaleXsfhmxWms));
                    i++;
                }
                detlDto = new DetlDto();
                detlDto.setMatnr(nccSaleXsfhmxWms.getWlbm());
                detlDto.setAnfme(nccSaleXsfhmxWms.getNastnum().doubleValue());
                detlDto.setLineNumber(i);
                detlDto.setRemark(JSONObject.toJSONString(nccSaleXsfhmxWms));
                orderDetails.add(detlDto);
                log.info("NccSaleXsfhmxWms数据:{}", JSONObject.toJSON(nccSaleXsfhmxWms));
                i++;
                nccSaleXsfhmxWms.setWmsFlag(1);
                param.setOrderNo(nccSaleXsfhmxWms.getVbillcode());
            }
@@ -108,16 +106,14 @@
            long i = 1;
            for (NccScZkmxbWms nccScZkmxbWms : wmsFlag) {
                log.info("NccScZkmxbWms数据:{}", JSONObject.toJSON(nccScZkmxbWms));
                if (nccScZkmxbWms.getBdr() == 0 && nccScZkmxbWms.getDr() == 0) {
                    detlDto = new DetlDto();
                    detlDto.setMatnr(nccScZkmxbWms.getWlbm());
                    detlDto.setAnfme(nccScZkmxbWms.getYingzzsl().doubleValue());
                    detlDto.setBatch(nccScZkmxbWms.getVbatchcode());
                    detlDto.setLineNumber(i);
                    detlDto.setRemark(JSONObject.toJSONString(nccScZkmxbWms));
                    orderDetails.add(detlDto);
                    i++;
                }
                detlDto = new DetlDto();
                detlDto.setMatnr(nccScZkmxbWms.getWlbm());
                detlDto.setAnfme(nccScZkmxbWms.getYingzzsl().doubleValue());
                detlDto.setBatch(nccScZkmxbWms.getVbatchcode());
                detlDto.setLineNumber(i);
                detlDto.setRemark(JSONObject.toJSONString(nccScZkmxbWms));
                orderDetails.add(detlDto);
                i++;
                nccScZkmxbWms.setWmsFlag(1);
                param.setOrderNo(nccScZkmxbWms.getVbillcode());
            }
@@ -146,16 +142,14 @@
            long i = 1;
            for (NccScZkmxbWms nccScZkmxbWms : wmsFlag) {
                log.info("NccScZkmxbWms数据:{}", JSONObject.toJSON(nccScZkmxbWms));
                if (nccScZkmxbWms.getBdr() == 0 && nccScZkmxbWms.getDr() == 0) {
                    detlDto = new DetlDto();
                    detlDto.setMatnr(nccScZkmxbWms.getWlbm());
                    detlDto.setAnfme(nccScZkmxbWms.getYingzzsl().doubleValue());
                    detlDto.setBatch(nccScZkmxbWms.getVbatchcode());
                    detlDto.setLineNumber(i);
                    detlDto.setRemark(JSONObject.toJSONString(nccScZkmxbWms));
                    orderDetails.add(detlDto);
                    i++;
                }
                detlDto = new DetlDto();
                detlDto.setMatnr(nccScZkmxbWms.getWlbm());
                detlDto.setAnfme(nccScZkmxbWms.getYingzzsl().doubleValue());
                detlDto.setBatch(nccScZkmxbWms.getVbatchcode());
                detlDto.setLineNumber(i);
                detlDto.setRemark(JSONObject.toJSONString(nccScZkmxbWms));
                orderDetails.add(detlDto);
                i++;
                nccScZkmxbWms.setWmsFlag(1);
                param.setOrderNo(nccScZkmxbWms.getVbillcode());
            }
@@ -184,16 +178,14 @@
            long i = 1;
            for (NccCgCgdhdWms nccCgCgdhdWms : wmsFlag) {
                log.info("nccCgCgdhdWms数据:{}", JSONObject.toJSON(nccCgCgdhdWms));
                if (nccCgCgdhdWms.getBdr() == 0 && nccCgCgdhdWms.getHdr() == 0) {
                    detlDto = new DetlDto();
                    detlDto.setMatnr(nccCgCgdhdWms.getWlbm());
                    detlDto.setAnfme(nccCgCgdhdWms.getYdzsl().doubleValue());
                    detlDto.setBatch(nccCgCgdhdWms.getVbatchcode());
                    detlDto.setLineNumber(i);
                    detlDto.setRemark(JSONObject.toJSONString(nccCgCgdhdWms));
                    orderDetails.add(detlDto);
                    i++;
                }
                detlDto = new DetlDto();
                detlDto.setMatnr(nccCgCgdhdWms.getWlbm());
                detlDto.setAnfme(nccCgCgdhdWms.getYdzsl().doubleValue());
                detlDto.setBatch(nccCgCgdhdWms.getVbatchcode());
                detlDto.setLineNumber(i);
                detlDto.setRemark(JSONObject.toJSONString(nccCgCgdhdWms));
                orderDetails.add(detlDto);
                i++;
                nccCgCgdhdWms.setWmsFlag(1);
                param.setOrderNo(nccCgCgdhdWms.getVbillcode());
            }
@@ -220,23 +212,21 @@
            InventoryCheckOrderDetl checkOrderDetl = null;
            for (NccCkPddWms nccScZkmxbWms : wmsFlag) {
                log.info("NccCkPddWms数据:{}", JSONObject.toJSON(nccScZkmxbWms));
                if (nccScZkmxbWms.getBdr() == 0 && nccScZkmxbWms.getHdr() == 0) {
                    Mat mat = matService.selectByMatnr(nccScZkmxbWms.getWlbm());
                    if (Cools.isEmpty(mat)) {
                        throw new CoolException(nccScZkmxbWms.getWlbm() + "编号商品检索失败,请先添加商品");
                    }
                    List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("order_no", nccScZkmxbWms.getVbillcode()).eq("matnr", mat.getMatnr()).eq("batch", nccScZkmxbWms.getVbatchcode()));
                    if (checkOrderDetls != null && !checkOrderDetls.isEmpty()) {
                        //throw new CoolException(nccScZkmxbWms.getWlbm() + "盘点单的明细重复了");
                    }
                    checkOrderDetl = new InventoryCheckOrderDetl();
                    checkOrderDetl.setMatnr(nccScZkmxbWms.getWlbm());
                    checkOrderDetl.setMaktx(mat.getMaktx());
                    checkOrderDetl.setOrderNo(nccScZkmxbWms.getVbillcode());
                    checkOrderDetl.setAnfme(nccScZkmxbWms.getZmzsl().doubleValue());
                    checkOrderDetl.setBatch(nccScZkmxbWms.getVbatchcode());
                    inventoryCheckOrderDetlService.insert(checkOrderDetl);
                Mat mat = matService.selectByMatnr(nccScZkmxbWms.getWlbm());
                if (Cools.isEmpty(mat)) {
                    throw new CoolException(nccScZkmxbWms.getWlbm() + "编号商品检索失败,请先添加商品");
                }
                List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("order_no", nccScZkmxbWms.getVbillcode()).eq("matnr", mat.getMatnr()).eq("batch", nccScZkmxbWms.getVbatchcode()));
                if (checkOrderDetls != null && !checkOrderDetls.isEmpty()) {
                    //throw new CoolException(nccScZkmxbWms.getWlbm() + "盘点单的明细重复了");
                }
                checkOrderDetl = new InventoryCheckOrderDetl();
                checkOrderDetl.setMatnr(nccScZkmxbWms.getWlbm());
                checkOrderDetl.setMaktx(mat.getMaktx());
                checkOrderDetl.setOrderNo(nccScZkmxbWms.getVbillcode());
                checkOrderDetl.setAnfme(nccScZkmxbWms.getZmzsl().doubleValue());
                checkOrderDetl.setBatch(nccScZkmxbWms.getVbatchcode());
                inventoryCheckOrderDetlService.insert(checkOrderDetl);
                nccScZkmxbWms.setWmsFlag(1);
                param.setOrderNo(nccScZkmxbWms.getVbillcode());
            }
src/main/resources/mapper/nc/NccCkPddWmsMapper.xml
@@ -50,6 +50,6 @@
    <select id="selectPdd" resultType="java.lang.String">
        select distinct VBILLCODE
        from ncc_ck_pdd_wms
        where wms_flag != 1 and FBILLFLAG = 2 limit 100
        where wms_flag != 1 and FBILLFLAG = 2  and hdr =0 and bdr =0 limit 100
    </select>
</mapper>
src/main/resources/mapper/nc/NccScZkmxbWmsMapper.xml
@@ -79,7 +79,7 @@
    <select id="selectZkIn" resultType="java.lang.String">
        select distinct VBILLCODE
        from ncc_sc_zkmxb_wms
        where wms_flag != 1 and DJZT = 4
        where wms_flag != 1 and DJZT = 4 and dr =0 and bdr =0
        <if test="ids != null">
            and RKCKBM in
            <foreach item="id" collection="ids" separator="," open="(" close=")" index="">
@@ -92,7 +92,7 @@
    <select id="selectZkOut" resultType="java.lang.String">
        select distinct VBILLCODE
        from ncc_sc_zkmxb_wms
        where wms_flag != 1 and DJZT = 4
        where wms_flag != 1 and DJZT = 4  and dr =0 and bdr =0
        <if test="ids != null">
            and CKCKBM in
            <foreach item="id" collection="ids" separator="," open="(" close=")" index="">
src/main/resources/spring.factories
File was deleted