skyouc
昨天 55331431565cffc4328bbbe83533e1e11da3ffd6
基础物料同步接口
3个文件已修改
54 ■■■■■ 已修改文件
rsf-server/src/main/java/com/vincent/rsf/server/api/controller/ReceiveMsgController.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/service/ReceiveMsgService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/controller/ReceiveMsgController.java
@@ -5,12 +5,15 @@
import com.vincent.rsf.server.api.controller.params.OrderParams;
import com.vincent.rsf.server.api.service.ReceiveMsgService;
import com.vincent.rsf.server.common.utils.ExcelUtil;
import com.vincent.rsf.server.manager.entity.Matnr;
import com.vincent.rsf.server.manager.entity.excel.AsnOrderTemplate;
import com.vincent.rsf.server.manager.entity.excel.MatnrsTemplate;
import com.vincent.rsf.server.manager.service.MatnrGroupService;
import com.vincent.rsf.server.manager.service.MatnrService;
import com.vincent.rsf.server.system.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -21,6 +24,7 @@
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
/**
 * @author Ryan
@@ -38,6 +42,7 @@
    private ReceiveMsgService receiveMsgService;
    @Autowired
    private MatnrService matnrService;
    /**
     * @author Ryan
@@ -72,7 +77,7 @@
        AsnOrderTemplate template = ExcelUtil.mockData(AsnOrderTemplate.class);
        List<AsnOrderTemplate> list = new ArrayList<>();
        list.add(template);
         ExcelUtil.build(ExcelUtil.create(list, AsnOrderTemplate.class), response);
        ExcelUtil.build(ExcelUtil.create(list, AsnOrderTemplate.class), response);
        System.out.println(template);
//        return R.ok();
    }
@@ -80,8 +85,13 @@
    @ApiOperation("基础物料信息同步")
    @PostMapping("/sync/base/matnrs")
    public R syncMatnrs(@RequestBody List<BaseMatParms> matnrs) {
        if (Objects.isNull(matnrs)) {
            return R.error("参数不能为空!1");
        }
        receiveMsgService.syncMatnrs(matnrs);
        return R.ok();
    }
    public R syc
}
rsf-server/src/main/java/com/vincent/rsf/server/api/service/ReceiveMsgService.java
@@ -1,6 +1,7 @@
package com.vincent.rsf.server.api.service;
import com.vincent.rsf.server.api.controller.params.BaseMatParms;
import com.vincent.rsf.server.api.controller.params.OrderParams;
import com.vincent.rsf.server.api.entity.dto.PoItemsDto;
@@ -22,4 +23,5 @@
     */
    boolean syncPurchasee(List<OrderParams> orders);
    void syncMatnrs(List<BaseMatParms> matnrs);
}
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java
@@ -3,10 +3,15 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.controller.params.BaseMatParms;
import com.vincent.rsf.server.manager.entity.Matnr;
import com.vincent.rsf.server.manager.entity.MatnrGroup;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.entity.PurchaseItem;
import com.vincent.rsf.server.manager.service.MatnrGroupService;
import com.vincent.rsf.server.manager.service.PurchaseItemService;
import com.vincent.rsf.server.manager.service.PurchaseService;
import com.vincent.rsf.server.manager.service.impl.MatnrServiceImpl;
import com.vincent.rsf.server.system.constant.SerialRuleCode;
import com.vincent.rsf.server.api.controller.params.OrderParams;
import com.vincent.rsf.server.system.entity.Fields;
@@ -42,6 +47,10 @@
    private FieldsService fieldsService;
    @Autowired
    private FieldsItemService fieldsItemService;
    @Autowired
    private MatnrGroupService matnrGroupService;
    @Autowired
    private MatnrServiceImpl matnrService;
    @Override
    @Transactional(rollbackFor = Exception.class)
@@ -86,6 +95,35 @@
        return true;
    }
    /**
     * 物料信息同步
     * @param matnrs
     */
    @Override
    public void syncMatnrs(List<BaseMatParms> matnrs) {
        List<Matnr> syncMatnrs = new ArrayList<>();
        if (!matnrs.isEmpty()) {
            matnrs.forEach(matnr -> {
                Matnr mat = new Matnr();
                if (Objects.isNull(matnr.getMatnr())) {
                    throw new RuntimeException("物料编码不能为空!!");
                }
                BeanUtils.copyProperties(matnr, mat);
                mat.setCode(matnr.getMatnr()).setName(matnr.getMaktx());
                if (!Objects.isNull(matnr.getGroupName())) {
                    MatnrGroup matnrGroup = matnrGroupService.getOne(new LambdaQueryWrapper<MatnrGroup>().eq(MatnrGroup::getName, matnr.getGroupName()), false);
                    if (Objects.isNull(matnrGroup)) {
                        mat.setGroupCode(matnrGroup.getCode()).setGroupId(matnrGroup.getId());
                    }
                }
                syncMatnrs.add(mat);
            });
            if (!matnrService.saveOrUpdateBatch(syncMatnrs)) {
                throw new CoolException("物料信息保存成功!!");
            }
        }
    }
}