mirror of
https://github.com/weizhiqiang1995/erp-pro.git
synced 2025-03-01 01:43:45 +08:00
新增条形码管理服务,支持根据code跨服务获取数据信息
This commit is contained in:
parent
c52eed9c1a
commit
dadd828974
4 changed files with 57 additions and 1 deletions
|
@ -5,12 +5,12 @@
|
|||
package com.skyeye.eve.controller;
|
||||
|
||||
import com.skyeye.annotation.api.Api;
|
||||
import com.skyeye.annotation.api.ApiImplicitParam;
|
||||
import com.skyeye.annotation.api.ApiImplicitParams;
|
||||
import com.skyeye.annotation.api.ApiOperation;
|
||||
import com.skyeye.common.object.InputObject;
|
||||
import com.skyeye.common.object.OutputObject;
|
||||
import com.skyeye.eve.entity.barcode.BarCodeApiMation;
|
||||
import com.skyeye.eve.entity.dict.SysDictDataQueryDO;
|
||||
import com.skyeye.eve.service.BarCodeService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
@ -44,4 +44,18 @@ public class BarCodeController {
|
|||
barCodeService.writeBarCode(inputObject, outputObject);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据条形码code获取数据信息
|
||||
*
|
||||
* @param inputObject 入参以及用户信息等获取对象
|
||||
* @param outputObject 出参以及提示信息的返回值对象
|
||||
*/
|
||||
@ApiOperation(id = "getDataByBarCode", value = "根据条形码code获取数据信息", method = "GET", allUse = "2")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(id = "barCode", name = "barCode", value = "条形码code", required = "required")})
|
||||
@RequestMapping("/post/BarCodeController/getDataByBarCode")
|
||||
public void getDataByBarCode(InputObject inputObject, OutputObject outputObject) {
|
||||
barCodeService.getDataByBarCode(inputObject, outputObject);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -21,4 +21,5 @@ public interface BarCodeService extends IService<BarCodeMation> {
|
|||
|
||||
void writeBarCode(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
void getDataByBarCode(InputObject inputObject, OutputObject outputObject);
|
||||
}
|
||||
|
|
|
@ -4,18 +4,25 @@
|
|||
|
||||
package com.skyeye.eve.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.skyeye.common.object.InputObject;
|
||||
import com.skyeye.common.object.OutputObject;
|
||||
import com.skyeye.common.util.DateUtil;
|
||||
import com.skyeye.common.util.mybatisplus.MybatisPlusUtil;
|
||||
import com.skyeye.eve.dao.BarCodeDao;
|
||||
import com.skyeye.eve.entity.barcode.BarCodeApiMation;
|
||||
import com.skyeye.eve.entity.barcode.BarCodeMation;
|
||||
import com.skyeye.eve.service.BarCodeService;
|
||||
import com.skyeye.eve.service.IBarCodeService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.cloud.client.ServiceInstance;
|
||||
import org.springframework.cloud.client.discovery.DiscoveryClient;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @ClassName: BarCodeServiceImpl
|
||||
|
@ -31,6 +38,12 @@ public class BarCodeServiceImpl extends ServiceImpl<BarCodeDao, BarCodeMation> i
|
|||
@Autowired
|
||||
private BarCodeDao barCodeDao;
|
||||
|
||||
@Autowired
|
||||
private IBarCodeService iBarCodeService;
|
||||
|
||||
@Autowired
|
||||
private DiscoveryClient discoveryClient;
|
||||
|
||||
/**
|
||||
* 批量新增条形码
|
||||
*
|
||||
|
@ -49,4 +62,31 @@ public class BarCodeServiceImpl extends ServiceImpl<BarCodeDao, BarCodeMation> i
|
|||
});
|
||||
this.saveBatch(barCodeList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据条形码code获取数据信息
|
||||
*
|
||||
* @param inputObject 入参以及用户信息等获取对象
|
||||
* @param outputObject 出参以及提示信息的返回值对象
|
||||
*/
|
||||
@Override
|
||||
public void getDataByBarCode(InputObject inputObject, OutputObject outputObject) {
|
||||
String barCode = inputObject.getParams().get("barCode").toString();
|
||||
QueryWrapper<BarCodeMation> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(BarCodeMation::getCodeNum), barCode);
|
||||
BarCodeMation barCodeMation = barCodeDao.selectOne(queryWrapper);
|
||||
|
||||
// 根据服务名获取服务实例
|
||||
List<ServiceInstance> allInstances = discoveryClient.getInstances(barCodeMation.getSpringApplicationName());
|
||||
if (CollectionUtils.isEmpty(allInstances)) {
|
||||
outputObject.setreturnMessage("this service[{}] has no instance.", barCodeMation.getSpringApplicationName());
|
||||
return;
|
||||
}
|
||||
|
||||
// 调用SDK服务获取数据信息
|
||||
Map<String, Object> result = iBarCodeService.getDataSdkByObjectId(allInstances.get(0).getUri(), barCodeMation.getObjectId(),
|
||||
barCodeMation.getCodeImplClass());
|
||||
outputObject.setBean(result);
|
||||
outputObject.settotal(1);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -27,6 +27,7 @@ spring:
|
|||
logging:
|
||||
level:
|
||||
com.skyeye.eve.dao: debug
|
||||
com.skyeye.eve.rest: debug
|
||||
|
||||
webroot:
|
||||
# 工作流相关的服务
|
||||
|
|
Loading…
Reference in a new issue