From 333c63bb62c293523ad35a0da4151204de53f958 Mon Sep 17 00:00:00 2001
From: zhanyunjiu <787952492@qq.com>
Date: Tue, 12 Jul 2022 16:16:17 +0800
Subject: [PATCH] =?UTF-8?q?=E9=87=87=E6=94=B6=20=E4=BD=9C=E7=89=A9=20?=
=?UTF-8?q?=E5=90=8C=E6=AD=A5=E5=88=B0ERP?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/main/resources/application-local.yaml | 11 +++++
zsw-erp/pom.xml | 2 +-
.../src/main/java/dubbo/config/OutFilter.java | 8 ++--
.../java/dubbo/dto/IntoStockMaterialDTO.java | 24 ++++++++++
.../java/dubbo/service/OpenErpService.java | 19 ++++++--
.../farm/controller/admin/TestController.java | 24 +++++++++-
.../controller/admin/crop/CropController.java | 44 +++++++++++--------
.../admin/crop/dto/ErpMaterialDTO.java | 14 ++++++
.../controller/admin/crop/vo/CropBaseVO.java | 11 +++--
.../controller/admin/crop/vo/CropExcelVO.java | 10 +++--
.../admin/crop/vo/CropExportReqVO.java | 12 +++--
.../admin/crop/vo/CropPageReqVO.java | 3 ++
.../farm/dal/dataobject/crop/CropDO.java | 10 +++--
.../module/farm/service/crop/CropService.java | 8 ++++
.../farm/service/crop/CropServiceImpl.java | 37 ++++++++++++----
.../service/discuss/DiscussServiceImpl.java | 19 +++++++-
16 files changed, 202 insertions(+), 54 deletions(-)
create mode 100644 zsw-farm/zsw-farm-api/src/main/java/dubbo/dto/IntoStockMaterialDTO.java
create mode 100644 zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/dto/ErpMaterialDTO.java
diff --git a/yudao-server/src/main/resources/application-local.yaml b/yudao-server/src/main/resources/application-local.yaml
index d0958be4..b4f719ae 100644
--- a/yudao-server/src/main/resources/application-local.yaml
+++ b/yudao-server/src/main/resources/application-local.yaml
@@ -227,3 +227,14 @@ justauth:
prefix: 'social_auth_state:' # 缓存前缀,目前只对 Redis 缓存生效,默认 JUSTAUTH::STATE::
timeout: 24h # 超时时长,目前只对 Redis 缓存生效,默认 3 分钟
+
+dubbo:
+ registry:
+ id: zsw-farm
+ address: 192.168.10.250:8848
+ protocol: nacos
+ username: nacos
+ password: nacos
+ register: false
+ application:
+ name: zsw-farm
\ No newline at end of file
diff --git a/zsw-erp/pom.xml b/zsw-erp/pom.xml
index f822bb76..bc8542e7 100644
--- a/zsw-erp/pom.xml
+++ b/zsw-erp/pom.xml
@@ -17,7 +17,7 @@
UTF-8
UTF-8
1.8
- 3.0.5
+ 3.0.9
diff --git a/zsw-farm/zsw-farm-api/src/main/java/dubbo/config/OutFilter.java b/zsw-farm/zsw-farm-api/src/main/java/dubbo/config/OutFilter.java
index a8a62b3a..c39d4e59 100644
--- a/zsw-farm/zsw-farm-api/src/main/java/dubbo/config/OutFilter.java
+++ b/zsw-farm/zsw-farm-api/src/main/java/dubbo/config/OutFilter.java
@@ -1,6 +1,6 @@
package dubbo.config;
-import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder;
+import cn.hutool.core.util.ObjectUtil;
import org.apache.dubbo.common.constants.CommonConstants;
import org.apache.dubbo.common.extension.Activate;
import org.apache.dubbo.rpc.*;
@@ -9,8 +9,10 @@ import org.apache.dubbo.rpc.*;
public class OutFilter implements Filter {
@Override
public Result invoke(Invoker> invoker, Invocation invocation) throws RpcException {
- Long tenantId = TenantContextHolder.getTenantId();
- invocation.setAttachment("tenantId",tenantId.toString());
+ Long tenantId = 11L;
+ if(ObjectUtil.isNotEmpty(tenantId)){
+ invocation.setAttachment("tenantId",tenantId.toString());
+ }
return invoker.invoke(invocation);
}
}
diff --git a/zsw-farm/zsw-farm-api/src/main/java/dubbo/dto/IntoStockMaterialDTO.java b/zsw-farm/zsw-farm-api/src/main/java/dubbo/dto/IntoStockMaterialDTO.java
new file mode 100644
index 00000000..1ff26f09
--- /dev/null
+++ b/zsw-farm/zsw-farm-api/src/main/java/dubbo/dto/IntoStockMaterialDTO.java
@@ -0,0 +1,24 @@
+package dubbo.dto;
+
+import lombok.Builder;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+@Data
+@Builder
+public class IntoStockMaterialDTO implements Serializable {
+
+ // 仓库ID
+ private String wareHouseId;
+
+ // 物料id
+ private String materialId;
+
+ // 入库数量
+ private BigDecimal num;
+
+ // 价格传0
+ private BigDecimal price;
+}
diff --git a/zsw-farm/zsw-farm-api/src/main/java/dubbo/service/OpenErpService.java b/zsw-farm/zsw-farm-api/src/main/java/dubbo/service/OpenErpService.java
index eb864bb1..c5d83821 100644
--- a/zsw-farm/zsw-farm-api/src/main/java/dubbo/service/OpenErpService.java
+++ b/zsw-farm/zsw-farm-api/src/main/java/dubbo/service/OpenErpService.java
@@ -1,13 +1,24 @@
package dubbo.service;
-import dubbo.dto.BasMaterial;
+import com.alibaba.fastjson.JSONObject;
+import dubbo.dto.IntoStockMaterialDTO;
import java.util.List;
public interface OpenErpService {
- // 把实现方法写在这里
- String hello();
+ //租户列表
+ List getTenantList();
- List list();
+ //材料列表
+ List getMaterialList();
+
+ //仓库列表
+ List getWareHouse();
+
+ //入库
+ Boolean intoStock(List stkInventoryList);
+
+ //出库
+ Boolean outStock(List stkInventoryList);
}
diff --git a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/TestController.java b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/TestController.java
index 51d8e8fc..2ccd567e 100644
--- a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/TestController.java
+++ b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/TestController.java
@@ -5,23 +5,32 @@ import cn.iocoder.yudao.module.system.controller.admin.CpUser.dto.CpMessageDto;
import cn.iocoder.yudao.module.system.dal.dataobject.CpUser.CpUserDO;
import cn.iocoder.yudao.module.system.enums.wxcp.WxCpMsgTypeEnum;
import cn.iocoder.yudao.module.system.service.CpUser.CpUserService;
-import cn.iocoder.yudao.module.system.service.user.AdminUserService;
import com.google.common.collect.Maps;
+import dubbo.dto.IntoStockMaterialDTO;
+import dubbo.service.OpenErpService;
+import lombok.extern.slf4j.Slf4j;
import me.chanjar.weixin.common.error.WxErrorException;
+import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
+import java.math.BigDecimal;
+import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
@RestController
+@Slf4j
public class TestController {
@Autowired
private CpUserService cpUserService;
+ @DubboReference
+ private OpenErpService openErpService;
+
@GetMapping("/zyh")
public CommonResult test() throws WxErrorException {
@@ -41,4 +50,17 @@ public class TestController {
cpUserService.sendMessage(dto);
return CommonResult.success("okk");
}
+
+ @GetMapping("/toErpMaterial")
+ public void toErpMaterial(){
+ IntoStockMaterialDTO intoStock = IntoStockMaterialDTO.builder()
+ .wareHouseId("1546738475384201217")
+ .materialId("1544629335014780930")
+ .num(new BigDecimal(100))
+ .price(BigDecimal.ZERO)
+ .build();
+ log.info("同步到ERP,,,{}", intoStock );
+ log.info("{}", Arrays.asList(intoStock));
+ openErpService.intoStock(Arrays.asList(intoStock) );
+ }
}
diff --git a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/CropController.java b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/CropController.java
index 8eaf367b..8a4b2066 100644
--- a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/CropController.java
+++ b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/CropController.java
@@ -1,30 +1,30 @@
package cn.iocoder.yudao.module.farm.controller.admin.crop;
-import org.springframework.web.bind.annotation.*;
-import javax.annotation.Resource;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.security.access.prepost.PreAuthorize;
-import io.swagger.annotations.*;
-
-import javax.validation.constraints.*;
-import javax.validation.*;
-import javax.servlet.http.*;
-import java.util.*;
-import java.io.IOException;
-
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
-import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
-
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
-
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
-import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.*;
-
+import cn.iocoder.yudao.module.farm.controller.admin.crop.dto.ErpMaterialDTO;
import cn.iocoder.yudao.module.farm.controller.admin.crop.vo.*;
-import cn.iocoder.yudao.module.farm.dal.dataobject.crop.CropDO;
import cn.iocoder.yudao.module.farm.convert.crop.CropConvert;
+import cn.iocoder.yudao.module.farm.dal.dataobject.crop.CropDO;
import cn.iocoder.yudao.module.farm.service.crop.CropService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
+import java.io.IOException;
+import java.util.Collection;
+import java.util.List;
+
+import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
+import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
@Api(tags = "管理后台 - ")
@RestController
@@ -97,4 +97,10 @@ public class CropController {
ExcelUtils.write(response, ".xls", "数据", CropExcelVO.class, datas);
}
+ @GetMapping("/getMaterialList")
+ @ApiOperation("获取ERP Material列表")
+ public List getMaterialList(){
+ return cropService.getMaterialList();
+ }
+
}
diff --git a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/dto/ErpMaterialDTO.java b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/dto/ErpMaterialDTO.java
new file mode 100644
index 00000000..c1079d86
--- /dev/null
+++ b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/dto/ErpMaterialDTO.java
@@ -0,0 +1,14 @@
+package cn.iocoder.yudao.module.farm.controller.admin.crop.dto;
+
+import lombok.Data;
+
+/*
+ * Erp的MaterialDTO
+ */
+@Data
+public class ErpMaterialDTO {
+
+ private Long id;
+
+ private String name ;
+}
diff --git a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropBaseVO.java b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropBaseVO.java
index 9c57d4b7..eca8af77 100644
--- a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropBaseVO.java
+++ b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropBaseVO.java
@@ -1,10 +1,10 @@
package cn.iocoder.yudao.module.farm.controller.admin.crop.vo;
import com.alibaba.fastjson.JSONArray;
-import lombok.*;
-import java.util.*;
-import io.swagger.annotations.*;
-import javax.validation.constraints.*;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
/**
* Base VO,提供给添加、修改、详细的子 VO 使用
@@ -26,4 +26,7 @@ public class CropBaseVO {
private Boolean pretendDelete;
+ @ApiModelProperty("ERP Material Id")
+ private Long materialId;
+
}
diff --git a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropExcelVO.java b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropExcelVO.java
index 8f699ac2..39cb4767 100644
--- a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropExcelVO.java
+++ b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropExcelVO.java
@@ -1,11 +1,10 @@
package cn.iocoder.yudao.module.farm.controller.admin.crop.vo;
+import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.fastjson.JSONArray;
-import lombok.*;
-import java.util.*;
-import io.swagger.annotations.*;
+import lombok.Data;
-import com.alibaba.excel.annotation.ExcelProperty;
+import java.util.Date;
/**
* Excel VO
@@ -32,4 +31,7 @@ public class CropExcelVO {
private Boolean pretendDelete;
+ @ExcelProperty("ERP Material Id")
+ private Long materialId;
+
}
diff --git a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropExportReqVO.java b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropExportReqVO.java
index dcad465f..b47c7871 100644
--- a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropExportReqVO.java
+++ b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropExportReqVO.java
@@ -1,12 +1,13 @@
package cn.iocoder.yudao.module.farm.controller.admin.crop.vo;
import com.alibaba.fastjson.JSONArray;
-import lombok.*;
-import java.util.*;
-import io.swagger.annotations.*;
-import cn.iocoder.yudao.framework.common.pojo.PageParam;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
+import java.util.Date;
+
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@ApiModel(value = "管理后台 - Excel 导出 Request VO", description = "参数和 CropPageReqVO 是一致的")
@@ -32,4 +33,7 @@ public class CropExportReqVO {
private Boolean pretendDelete;
+ @ApiModelProperty("ERP Material Id")
+ private Long materialId;
+
}
diff --git a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropPageReqVO.java b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropPageReqVO.java
index 49e802c0..3497a63d 100644
--- a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropPageReqVO.java
+++ b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/crop/vo/CropPageReqVO.java
@@ -34,4 +34,7 @@ public class CropPageReqVO extends PageParam {
private Boolean pretendDelete = false;
+ @ApiModelProperty("ERP Material Id")
+ private Long materialId;
+
}
diff --git a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/crop/CropDO.java b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/crop/CropDO.java
index 983fec03..f2f7bc3f 100644
--- a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/crop/CropDO.java
+++ b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/crop/CropDO.java
@@ -1,12 +1,13 @@
package cn.iocoder.yudao.module.farm.dal.dataobject.crop;
+import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.alibaba.fastjson.JSONArray;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
-import java.util.*;
-import com.baomidou.mybatisplus.annotation.*;
-import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/**
* DO
@@ -44,4 +45,7 @@ public class CropDO extends BaseDO {
@ApiModelProperty("假装删除")
private Boolean pretendDelete;
+ @ApiModelProperty("ERP Material Id")
+ private Long materialId;
+
}
diff --git a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/crop/CropService.java b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/crop/CropService.java
index 00242b78..71d4f246 100644
--- a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/crop/CropService.java
+++ b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/crop/CropService.java
@@ -2,6 +2,8 @@ package cn.iocoder.yudao.module.farm.service.crop;
import java.util.*;
import javax.validation.*;
+
+import cn.iocoder.yudao.module.farm.controller.admin.crop.dto.ErpMaterialDTO;
import cn.iocoder.yudao.module.farm.controller.admin.crop.vo.*;
import cn.iocoder.yudao.module.farm.dal.dataobject.crop.CropDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
@@ -67,4 +69,10 @@ public interface CropService {
*/
List getCropList(CropExportReqVO exportReqVO);
+
+ /**
+ * 获取ERP Material列表
+ */
+ List getMaterialList();
+
}
diff --git a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/crop/CropServiceImpl.java b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/crop/CropServiceImpl.java
index 2fd09fcd..c7ddc055 100644
--- a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/crop/CropServiceImpl.java
+++ b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/crop/CropServiceImpl.java
@@ -1,19 +1,27 @@
package cn.iocoder.yudao.module.farm.service.crop;
-import org.springframework.stereotype.Service;
-import javax.annotation.Resource;
-import org.springframework.validation.annotation.Validated;
-
-import java.util.*;
-import cn.iocoder.yudao.module.farm.controller.admin.crop.vo.*;
-import cn.iocoder.yudao.module.farm.dal.dataobject.crop.CropDO;
+import cn.hutool.core.bean.BeanUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
-
+import cn.iocoder.yudao.module.farm.controller.admin.crop.dto.ErpMaterialDTO;
+import cn.iocoder.yudao.module.farm.controller.admin.crop.vo.CropCreateReqVO;
+import cn.iocoder.yudao.module.farm.controller.admin.crop.vo.CropExportReqVO;
+import cn.iocoder.yudao.module.farm.controller.admin.crop.vo.CropPageReqVO;
+import cn.iocoder.yudao.module.farm.controller.admin.crop.vo.CropUpdateReqVO;
import cn.iocoder.yudao.module.farm.convert.crop.CropConvert;
+import cn.iocoder.yudao.module.farm.dal.dataobject.crop.CropDO;
import cn.iocoder.yudao.module.farm.dal.mysql.crop.CropMapper;
+import com.alibaba.fastjson.JSONObject;
+import dubbo.service.OpenErpService;
+import org.apache.dubbo.config.annotation.DubboReference;
+import org.springframework.stereotype.Service;
+import org.springframework.validation.annotation.Validated;
+
+import javax.annotation.Resource;
+import java.util.Collection;
+import java.util.List;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
-import static cn.iocoder.yudao.module.farm.enums.ErrorCodeConstants.*;
+import static cn.iocoder.yudao.module.farm.enums.ErrorCodeConstants.CROP_NOT_EXISTS;
/**
* Service 实现类
@@ -27,6 +35,10 @@ public class CropServiceImpl implements CropService {
@Resource
private CropMapper cropMapper;
+
+ @DubboReference
+ OpenErpService openErpService;
+
@Override
public Long createCrop(CropCreateReqVO createReqVO) {
// 插入
@@ -82,4 +94,11 @@ public class CropServiceImpl implements CropService {
return cropMapper.selectList(exportReqVO);
}
+ public List getMaterialList(){
+ List list = openErpService.getMaterialList();
+ List materialList = BeanUtil.copyToList( list, ErpMaterialDTO.class);
+
+ return materialList;
+ }
+
}
diff --git a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/discuss/DiscussServiceImpl.java b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/discuss/DiscussServiceImpl.java
index 7945927a..7b7c2d1c 100644
--- a/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/discuss/DiscussServiceImpl.java
+++ b/zsw-farm/zsw-farm-impl/src/main/java/cn/iocoder/yudao/module/farm/service/discuss/DiscussServiceImpl.java
@@ -18,12 +18,14 @@ import cn.iocoder.yudao.module.farm.controller.admin.workHour.dto.WorkUserMsgDTO
import cn.iocoder.yudao.module.farm.controller.admin.workHour.vo.WorkHourBaseVO;
import cn.iocoder.yudao.module.farm.convert.discuss.DiscussConvert;
import cn.iocoder.yudao.module.farm.dal.dataobject.area.AreaDO;
+import cn.iocoder.yudao.module.farm.dal.dataobject.crop.CropDO;
import cn.iocoder.yudao.module.farm.dal.dataobject.cropRecord.CropRecordDO;
import cn.iocoder.yudao.module.farm.dal.dataobject.discuss.DiscussDO;
import cn.iocoder.yudao.module.farm.dal.dataobject.task.TaskDO;
import cn.iocoder.yudao.module.farm.dal.dataobject.taskCate.TaskCateDO;
import cn.iocoder.yudao.module.farm.dal.dataobject.workHour.WorkHourDO;
import cn.iocoder.yudao.module.farm.dal.mysql.area.AreaMapper;
+import cn.iocoder.yudao.module.farm.dal.mysql.crop.CropMapper;
import cn.iocoder.yudao.module.farm.dal.mysql.cropRecord.CropRecordMapper;
import cn.iocoder.yudao.module.farm.dal.mysql.discuss.DiscussMapper;
import cn.iocoder.yudao.module.farm.dal.mysql.task.TaskMapper;
@@ -38,6 +40,7 @@ import cn.iocoder.yudao.module.system.dal.mysql.user.AdminUserMapper;
import cn.iocoder.yudao.module.system.service.CpUser.CpUserService;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.zsw.base.R;
+import dubbo.dto.IntoStockMaterialDTO;
import dubbo.service.OpenErpService;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference;
@@ -45,6 +48,7 @@ import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
+import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
@@ -81,6 +85,8 @@ public class DiscussServiceImpl implements DiscussService {
private CropRecordMapper cropRecordMapper;
@Resource
private TaskCateMapper taskCateMapper;
+ @Resource
+ private CropMapper cropMapper;
@DubboReference
private OpenErpService openErpService;
@@ -286,8 +292,17 @@ public class DiscussServiceImpl implements DiscussService {
cropRecordMapper.insert(cropRecordDO);
//todo 调用ERP出入库接口
- String hello = openErpService.hello();
- log.error("hello:{}",hello);
+ CropDO cropDO = cropMapper.selectById(taskDO.getCropId());
+ IntoStockMaterialDTO intoStock = IntoStockMaterialDTO.builder()
+ .wareHouseId("1546738475384201217")
+ .price(BigDecimal.ZERO)
+ .materialId(cropDO.getMaterialId().toString())
+ .num(new BigDecimal(reqVO.getCropNum()))
+ .build();
+ log.info("同步到ERP,,{}", intoStock);
+ openErpService.intoStock(Arrays.asList(intoStock) );
+
+
}
}