开始更新新架构
This commit is contained in:
parent
625250dd9c
commit
67f329cb14
|
|
@ -0,0 +1,28 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>cn.qihangerp.services</groupId>
|
||||
<artifactId>microservices</artifactId>
|
||||
<version>1.0.6</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>goods-api</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>goods-api</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>3.8.1</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
package com.zhijian;
|
||||
|
||||
//import org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration;
|
||||
import org.springframework.boot.SpringBootConfiguration;
|
||||
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.context.annotation.ComponentScan;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
|
||||
import org.springframework.context.annotation.FilterType;
|
||||
|
||||
|
||||
//@EnableAutoConfiguration(exclude = { DataSourceAutoConfiguration.class ,MybatisAutoConfiguration.class})
|
||||
//@ComponentScan
|
||||
//@Configuration
|
||||
//@EnableAutoConfiguration
|
||||
@Configuration
|
||||
//@EnableAutoConfiguration(exclude = MybatisAutoConfiguration.class)
|
||||
@ComponentScan(basePackages = "com.zhijian",
|
||||
excludeFilters = @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, value = FrameworkAutoConfiguration.class))
|
||||
public class FrameworkAutoConfiguration {
|
||||
}
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
package cn.qihangerp.api.goods.config;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.DbType;
|
||||
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
|
||||
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
|
||||
import org.mybatis.spring.annotation.MapperScan;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
@Configuration
|
||||
@MapperScan({"cn.qihangerp.module.*.mapper"})
|
||||
public class MybatisPlusConfig {
|
||||
@Bean
|
||||
public MybatisPlusInterceptor mybatisPlusInterceptor() {
|
||||
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
|
||||
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); //注意使用哪种数据库
|
||||
return interceptor;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,72 @@
|
|||
package cn.qihangerp.oms.controller;
|
||||
|
||||
|
||||
|
||||
import cn.qihangerp.common.AjaxResult;
|
||||
import cn.qihangerp.common.PageQuery;
|
||||
|
||||
|
||||
import cn.qihangerp.common.TableDataInfo;
|
||||
import cn.qihangerp.module.goods.domain.OGoodsBrand;
|
||||
import cn.qihangerp.module.goods.service.OGoodsBrandService;
|
||||
|
||||
import cn.qihangerp.security.common.BaseController;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
|
||||
@AllArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/goods_brand")
|
||||
public class GoodsBrandController extends BaseController {
|
||||
private final OGoodsBrandService brandService;
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo skuList(OGoodsBrand bo, PageQuery pageQuery)
|
||||
{
|
||||
var pageList = brandService.queryPageList(bo,pageQuery);
|
||||
return getDataTable(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取商品品牌详细信息
|
||||
*/
|
||||
@GetMapping(value = "/{id}")
|
||||
public AjaxResult getInfo(@PathVariable("id") Long id)
|
||||
{
|
||||
return success(brandService.getById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增商品品牌
|
||||
*/
|
||||
@PostMapping
|
||||
public AjaxResult add(@RequestBody OGoodsBrand erpGoodsBrand)
|
||||
{
|
||||
erpGoodsBrand.setStatus(1);
|
||||
erpGoodsBrand.setCreateBy(getUsername());
|
||||
erpGoodsBrand.setCreateTime(new Date());
|
||||
return toAjax(brandService.save(erpGoodsBrand));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改商品品牌
|
||||
*/
|
||||
@PutMapping
|
||||
public AjaxResult edit(@RequestBody OGoodsBrand erpGoodsBrand)
|
||||
{
|
||||
erpGoodsBrand.setUpdateBy(getUsername());
|
||||
erpGoodsBrand.setUpdateTime(new Date());
|
||||
return toAjax(brandService.updateById(erpGoodsBrand));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除商品品牌
|
||||
*/
|
||||
@DeleteMapping("/{ids}")
|
||||
public AjaxResult remove(@PathVariable Long[] ids)
|
||||
{
|
||||
return toAjax(brandService.removeByIds(Arrays.stream(ids).toList()));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,142 @@
|
|||
package cn.qihangerp.oms.controller;
|
||||
|
||||
|
||||
|
||||
import cn.qihangerp.common.AjaxResult;
|
||||
import cn.qihangerp.common.TableDataInfo;
|
||||
import cn.qihangerp.module.goods.domain.OGoodsCategory;
|
||||
import cn.qihangerp.module.goods.domain.OGoodsCategoryAttribute;
|
||||
import cn.qihangerp.module.goods.domain.OGoodsCategoryAttributeValue;
|
||||
import cn.qihangerp.module.goods.service.OGoodsCategoryAttributeService;
|
||||
import cn.qihangerp.module.goods.service.OGoodsCategoryAttributeValueService;
|
||||
import cn.qihangerp.module.goods.service.OGoodsCategoryService;
|
||||
import cn.qihangerp.security.common.BaseController;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
|
||||
@AllArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/goods_category")
|
||||
public class GoodsCategoryController extends BaseController {
|
||||
private final OGoodsCategoryService categoryService;
|
||||
private final OGoodsCategoryAttributeService categoryAttributeService;
|
||||
private final OGoodsCategoryAttributeValueService categoryAttributeValueService;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo categoryList()
|
||||
{
|
||||
var pageList = categoryService.list();
|
||||
return getDataTable(pageList);
|
||||
}
|
||||
|
||||
@GetMapping(value = "/{id}")
|
||||
public AjaxResult getInfo(@PathVariable("id") Long id)
|
||||
{
|
||||
return success(categoryService.getById(id));
|
||||
}
|
||||
|
||||
@PostMapping
|
||||
public AjaxResult add(@RequestBody OGoodsCategory category)
|
||||
{
|
||||
category.setCreateBy(getUsername());
|
||||
categoryService.addCategory(category);
|
||||
return toAjax(1);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
public AjaxResult edit(@RequestBody OGoodsCategory category)
|
||||
{
|
||||
category.setUpdateBy(getUsername());
|
||||
category.setUpdateTime(new Date());
|
||||
return toAjax(categoryService.updateById(category));
|
||||
}
|
||||
/**
|
||||
* 删除分类
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@DeleteMapping("/del/{ids}")
|
||||
public AjaxResult remove(@PathVariable Long[] ids)
|
||||
{
|
||||
return toAjax(categoryService.removeByIds(Arrays.stream(ids).toList()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类属性列表
|
||||
* @param categoryId
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/attribute_list")
|
||||
public TableDataInfo attributeList(Integer categoryId)
|
||||
{
|
||||
var pageList = categoryAttributeService.list(new LambdaQueryWrapper<OGoodsCategoryAttribute>().eq(OGoodsCategoryAttribute::getCategoryId,categoryId));
|
||||
return getDataTable(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类属性添加
|
||||
* @param attribute
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/attribute_add")
|
||||
public AjaxResult attributeAdd(@RequestBody OGoodsCategoryAttribute attribute)
|
||||
{
|
||||
return toAjax(categoryAttributeService.save(attribute));
|
||||
}
|
||||
|
||||
@GetMapping(value = "/attribute/{id}")
|
||||
public AjaxResult getAttributeInfo(@PathVariable("id") Long id)
|
||||
{
|
||||
return success(categoryAttributeService.getById(id));
|
||||
}
|
||||
|
||||
@PutMapping("/attribute")
|
||||
public AjaxResult attributeEdit(@RequestBody OGoodsCategoryAttribute attribute)
|
||||
{
|
||||
return toAjax(categoryAttributeService.updateById(attribute));
|
||||
}
|
||||
@DeleteMapping("/attribute/{ids}")
|
||||
public AjaxResult attributeRemove(@PathVariable Long[] ids)
|
||||
{
|
||||
return toAjax(categoryAttributeService.removeByIds(Arrays.stream(ids).toList()));
|
||||
}
|
||||
|
||||
@GetMapping("/attribute_value_list")
|
||||
public TableDataInfo attributeValueList(Integer categoryAttributeId)
|
||||
{
|
||||
var pageList = categoryAttributeValueService.list(
|
||||
new LambdaQueryWrapper<OGoodsCategoryAttributeValue>().eq(OGoodsCategoryAttributeValue::getCategoryAttributeId,categoryAttributeId));
|
||||
return getDataTable(pageList);
|
||||
|
||||
}
|
||||
|
||||
@PostMapping("/attribute_value")
|
||||
public AjaxResult add(@RequestBody OGoodsCategoryAttributeValue attributeValue)
|
||||
{
|
||||
return toAjax(categoryAttributeValueService.save(attributeValue));
|
||||
}
|
||||
@GetMapping(value = "/attribute_value/{id}")
|
||||
public AjaxResult getAttributeValueInfo(@PathVariable("id") Long id)
|
||||
{
|
||||
return success(categoryAttributeValueService.getById(id));
|
||||
}
|
||||
|
||||
@PutMapping("/attribute_value")
|
||||
public AjaxResult attributeValueEdit(@RequestBody OGoodsCategoryAttributeValue attributeValue)
|
||||
{
|
||||
return toAjax(categoryAttributeValueService.updateById(attributeValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除商品分类属性值
|
||||
*/
|
||||
@DeleteMapping("/attribute_value/{ids}")
|
||||
public AjaxResult removeAttributeValue(@PathVariable Long[] ids)
|
||||
{
|
||||
return toAjax(categoryAttributeValueService.removeByIds(Arrays.stream(ids).toList()));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,247 @@
|
|||
package cn.qihangerp.oms.controller;
|
||||
|
||||
|
||||
|
||||
import cn.qihangerp.common.PageQuery;
|
||||
import cn.qihangerp.common.PageResult;
|
||||
import cn.qihangerp.common.ResultVo;
|
||||
import cn.qihangerp.common.AjaxResult;
|
||||
import cn.qihangerp.common.TableDataInfo;
|
||||
|
||||
|
||||
import cn.qihangerp.module.goods.domain.OGoods;
|
||||
import cn.qihangerp.module.goods.domain.OGoodsSku;
|
||||
import cn.qihangerp.module.goods.domain.bo.GoodsAddBo;
|
||||
import cn.qihangerp.module.goods.domain.vo.GoodsSpecListVo;
|
||||
import cn.qihangerp.module.goods.service.OGoodsService;
|
||||
|
||||
|
||||
import cn.qihangerp.module.goods.service.OGoodsSkuService;
|
||||
import cn.qihangerp.security.common.BaseController;
|
||||
import com.fasterxml.jackson.databind.exc.InvalidFormatException;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
||||
import org.apache.poi.ss.usermodel.*;
|
||||
import org.apache.poi.ss.util.NumberToTextConverter;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 商品管理Controller
|
||||
*
|
||||
* @author qihang
|
||||
* @date 2023-12-29
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/goods")
|
||||
public class GoodsController extends BaseController
|
||||
{
|
||||
private final OGoodsService goodsService;
|
||||
private final OGoodsSkuService skuService;
|
||||
|
||||
/**
|
||||
* 搜索商品SKU
|
||||
* 条件:商品编码、SKU、商品名称
|
||||
*/
|
||||
@GetMapping("/searchSku")
|
||||
public TableDataInfo searchSkuBy(String keyword)
|
||||
{
|
||||
List<GoodsSpecListVo> list = goodsService.searchGoodsSpec(keyword);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
@GetMapping("/sku_list")
|
||||
public TableDataInfo skuList(OGoodsSku bo, PageQuery pageQuery)
|
||||
{
|
||||
var pageList = goodsService.querySkuPageList(bo,pageQuery);
|
||||
return getDataTable(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询商品管理列表
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('goods:goods:list')")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo list(OGoods goods, PageQuery pageQuery)
|
||||
{
|
||||
PageResult<OGoods> pageList = goodsService.queryPageList(goods, pageQuery);
|
||||
return getDataTable(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取商品管理详细信息
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('goods:goods:query')")
|
||||
@GetMapping(value = "/{id}")
|
||||
public AjaxResult getInfo(@PathVariable("id") Long id)
|
||||
{
|
||||
return success(goodsService.selectGoodsById(id));
|
||||
}
|
||||
/**
|
||||
* 获取商品管理详细信息
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('goods:goods:query')")
|
||||
@GetMapping(value = "/sku/{id}")
|
||||
public AjaxResult getSkuInfo(@PathVariable("id") Long id)
|
||||
{
|
||||
return success(skuService.getById(id));
|
||||
}
|
||||
/**
|
||||
* 新增商品管理
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('goods:goods:add')")
|
||||
@PostMapping("/add")
|
||||
public AjaxResult add(@RequestBody GoodsAddBo goods)
|
||||
{
|
||||
ResultVo<Long> resultVo = goodsService.insertGoods(getUsername(), goods);
|
||||
if(resultVo.getCode()!=0) return AjaxResult.error(resultVo.getMsg());
|
||||
else return AjaxResult.success(resultVo.getData());
|
||||
// goods.setCreateBy(getUsername());
|
||||
// int result = goodsService.insertGoods(goods);
|
||||
// if(result == -1) new AjaxResult(501,"商品编码已存在");
|
||||
// return toAjax(1);
|
||||
}
|
||||
|
||||
@PreAuthorize("@ss.hasPermi('goods:goods:add')")
|
||||
@PostMapping("/goodsSku")
|
||||
public AjaxResult addSku(@RequestBody OGoodsSku goodsSku)
|
||||
{
|
||||
|
||||
int result = goodsService.insertGoodsSku(goodsSku);
|
||||
if(result == -1) new AjaxResult(501,"商品编码已存在");
|
||||
return toAjax(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改商品管理
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('goods:goods:edit')")
|
||||
@PutMapping
|
||||
public AjaxResult edit(@RequestBody OGoods goods)
|
||||
{
|
||||
return toAjax(goodsService.updateGoods(goods));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改商品基本资料
|
||||
* @param sku
|
||||
* @return
|
||||
*/
|
||||
@PutMapping("/sku")
|
||||
public AjaxResult editSku(@RequestBody OGoodsSku sku)
|
||||
{
|
||||
return toAjax(skuService.updateById(sku));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除商品管理
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('goods:goods:remove')")
|
||||
@DeleteMapping("/del/{ids}")
|
||||
public AjaxResult remove(@PathVariable Long[] ids)
|
||||
{
|
||||
int result = goodsService.deleteGoodsByIds(ids);
|
||||
if(result==0) return AjaxResult.success();
|
||||
else if (result==-100) return AjaxResult.error("有关联的订单,不能删除!");
|
||||
else return AjaxResult.error();
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/goods_sku_import", method = RequestMethod.POST)
|
||||
public AjaxResult orderSendExcel(@RequestPart("file") MultipartFile file) throws IOException, InvalidFormatException {
|
||||
|
||||
String fileName = file.getOriginalFilename();
|
||||
String dir = System.getProperty("user.dir");
|
||||
String destFileName = dir + File.separator + "/import/uploadedfiles_" + fileName;
|
||||
System.out.println(destFileName);
|
||||
File destFile = new File(destFileName);
|
||||
file.transferTo(destFile);
|
||||
InputStream fis = null;
|
||||
fis = new FileInputStream(destFileName);
|
||||
if (fis == null) return AjaxResult.error("没有文件");
|
||||
|
||||
Workbook workbook = null;
|
||||
|
||||
try {
|
||||
if (fileName.toLowerCase().endsWith("xlsx")) {
|
||||
workbook = new XSSFWorkbook(fis);
|
||||
} else if (fileName.toLowerCase().endsWith("xls")) {
|
||||
workbook = new HSSFWorkbook(fis);
|
||||
}
|
||||
// workbook = new HSSFWorkbook(fis);
|
||||
} catch (Exception ex) {
|
||||
return AjaxResult.error(ex.getMessage());
|
||||
}
|
||||
|
||||
if (workbook == null) return AjaxResult.error(502, "未读取到Excel文件");
|
||||
|
||||
/****************开始处理excel****************/
|
||||
int success = 0;
|
||||
int fail = 0;
|
||||
Sheet sheet = null;
|
||||
try {
|
||||
sheet = workbook.getSheetAt(0);
|
||||
int lastRowNum = sheet.getLastRowNum();//最后一行索引
|
||||
Row row = null;
|
||||
|
||||
for (int i = 1; i <= lastRowNum; i++) {
|
||||
row = sheet.getRow(i);
|
||||
//数据
|
||||
OGoodsSku sku = new OGoodsSku();
|
||||
for(int c=0;c<6;c++){
|
||||
Cell cell = row.getCell(c);
|
||||
String cellValue = "";
|
||||
if (cell != null) {
|
||||
if (cell.getCellType() == CellType.STRING) {
|
||||
cellValue = cell.getStringCellValue().replace("\t", "");
|
||||
} else if (cell.getCellType() == CellType.NUMERIC) {
|
||||
cellValue = NumberToTextConverter.toText(cell.getNumericCellValue()).replace("\t", "");
|
||||
}
|
||||
}
|
||||
if(c == 1) {
|
||||
if(StringUtils.hasText(cellValue) ){
|
||||
sku.setOuterErpGoodsId(cellValue);
|
||||
}else {
|
||||
sku.setOuterErpGoodsId("0");
|
||||
}
|
||||
}
|
||||
if(StringUtils.hasText(cellValue)) {
|
||||
if (c == 0) {
|
||||
sku.setOuterErpSkuId(cellValue);
|
||||
} else if (c == 2) {
|
||||
sku.setSkuCode(cellValue);
|
||||
} else if (c == 3) {
|
||||
sku.setSkuName(cellValue);
|
||||
} else if (c == 4) {
|
||||
sku.setColorImage(cellValue);
|
||||
} else if (c == 5) {
|
||||
sku.setRemark(cellValue);
|
||||
}
|
||||
}
|
||||
}
|
||||
goodsService.insertGoodsSku(sku);
|
||||
success++;
|
||||
}
|
||||
|
||||
|
||||
} catch (Exception ex) {
|
||||
fail++;
|
||||
ex.printStackTrace();
|
||||
}
|
||||
Map<String, Integer> result = new HashMap<>();
|
||||
result.put("success",success);
|
||||
result.put("fail",fail);
|
||||
return AjaxResult.success(result);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
package cn.qihangerp.oms.controller;
|
||||
|
||||
|
||||
import cn.qihangerp.common.PageQuery;
|
||||
import cn.qihangerp.common.PageResult;
|
||||
|
||||
import cn.qihangerp.common.AjaxResult;
|
||||
import cn.qihangerp.common.TableDataInfo;
|
||||
import cn.qihangerp.module.goods.domain.OGoodsInventory;
|
||||
import cn.qihangerp.module.goods.domain.OGoodsInventoryBatch;
|
||||
import cn.qihangerp.module.goods.service.OGoodsInventoryBatchService;
|
||||
import cn.qihangerp.module.goods.service.OGoodsInventoryService;
|
||||
import cn.qihangerp.security.common.BaseController;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@AllArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/goodsInventory")
|
||||
public class GoodsInventoryController extends BaseController {
|
||||
private final OGoodsInventoryService goodsInventoryService;
|
||||
private final OGoodsInventoryBatchService inventoryBatchService;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo list(OGoodsInventory bo, PageQuery pageQuery)
|
||||
{
|
||||
PageResult<OGoodsInventory> pageResult = goodsInventoryService.queryPageList(bo, pageQuery);
|
||||
return getDataTable(pageResult);
|
||||
}
|
||||
|
||||
@GetMapping(value = "/{id}")
|
||||
public AjaxResult getInfo(@PathVariable("id") Long id)
|
||||
{
|
||||
OGoodsInventory goodsInventory = goodsInventoryService.getById(id);
|
||||
if(goodsInventory!=null) {
|
||||
List<OGoodsInventoryBatch> list = inventoryBatchService.list(new LambdaQueryWrapper<OGoodsInventoryBatch>().eq(OGoodsInventoryBatch::getSkuId, goodsInventory.getSkuId()));
|
||||
return AjaxResult.success(list);
|
||||
}
|
||||
return success();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
package cn.qihangerp.oms.controller;
|
||||
|
||||
|
||||
import cn.qihangerp.common.PageQuery;
|
||||
|
||||
import cn.qihangerp.common.AjaxResult;
|
||||
import cn.qihangerp.common.TableDataInfo;
|
||||
import cn.qihangerp.module.goods.domain.OGoodsSupplier;
|
||||
import cn.qihangerp.module.goods.service.OGoodsSupplierService;
|
||||
import cn.qihangerp.security.common.BaseController;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
|
||||
@AllArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/supplier")
|
||||
public class GoodsSupplierController extends BaseController {
|
||||
private final OGoodsSupplierService supplierService;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo list(OGoodsSupplier bo, PageQuery pageQuery)
|
||||
{
|
||||
var pageList = supplierService.queryPageList(bo,pageQuery);
|
||||
return getDataTable(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取【请填写功能名称】详细信息
|
||||
*/
|
||||
@GetMapping(value = "/{id}")
|
||||
public AjaxResult getInfo(@PathVariable("id") Long id)
|
||||
{
|
||||
return success(supplierService.getById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增【请填写功能名称】
|
||||
*/
|
||||
@PostMapping
|
||||
public AjaxResult add(@RequestBody OGoodsSupplier scmSupplier)
|
||||
{
|
||||
scmSupplier.setCreatetime(new Date());
|
||||
scmSupplier.setIsdelete(0);
|
||||
return toAjax(supplierService.save(scmSupplier));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改【请填写功能名称】
|
||||
*/
|
||||
@PutMapping
|
||||
public AjaxResult edit(@RequestBody OGoodsSupplier scmSupplier)
|
||||
{
|
||||
return toAjax(supplierService.updateById(scmSupplier));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除【请填写功能名称】
|
||||
*/
|
||||
@DeleteMapping("/{ids}")
|
||||
public AjaxResult remove(@PathVariable Long[] ids)
|
||||
{
|
||||
return toAjax(supplierService.removeByIds(Arrays.stream(ids).toList()));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.zhijian.FrameworkAutoConfiguration
|
||||
|
|
@ -0,0 +1,89 @@
|
|||
server:
|
||||
port: 8083
|
||||
spring:
|
||||
application:
|
||||
name: oms-api
|
||||
cloud:
|
||||
loadbalancer:
|
||||
nacos:
|
||||
enabled: true
|
||||
nacos:
|
||||
# serverAddr: 127.0.0.1:8848
|
||||
discovery:
|
||||
server-addr: 127.0.0.1:8848
|
||||
# username: nacos
|
||||
# password: nacos
|
||||
|
||||
data:
|
||||
# redis 配置
|
||||
redis:
|
||||
# 地址
|
||||
# host: 8.130.98.215
|
||||
host: 127.0.0.1
|
||||
# 端口,默认为6379
|
||||
port: 6379
|
||||
# 数据库索引
|
||||
database: 0
|
||||
# 密码
|
||||
# password: 123321
|
||||
# 连接超时时间
|
||||
timeout: 10s
|
||||
lettuce:
|
||||
pool:
|
||||
# 连接池中的最小空闲连接
|
||||
min-idle: 0
|
||||
# 连接池中的最大空闲连接
|
||||
max-idle: 8
|
||||
# 连接池的最大数据库连接数
|
||||
max-active: 8
|
||||
# #连接池最大阻塞等待时间(使用负值表示没有限制)
|
||||
max-wait: -1ms
|
||||
datasource:
|
||||
driverClassName: com.mysql.cj.jdbc.Driver
|
||||
url: jdbc:mysql://127.0.0.1:3306/qihang-oms?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
||||
username: root
|
||||
password: Andy_123
|
||||
# kafka:
|
||||
# bootstrap-servers: localhost:9092
|
||||
# producer:
|
||||
# batch-size: 16384 #批量大小
|
||||
# acks: -1 #应答级别:多少个分区副本备份完成时向生产者发送ack确认(可选0、1、all/-1)
|
||||
# retries: 10 # 消息发送重试次数
|
||||
# # transaction-id-prefix: tx_1 #事务id前缀
|
||||
# buffer-memory: 33554432
|
||||
# key-serializer: org.apache.kafka.common.serialization.StringSerializer
|
||||
# value-serializer: org.apache.kafka.common.serialization.StringSerializer
|
||||
# properties:
|
||||
# linger:
|
||||
# ms: 2000 #提交延迟
|
||||
# # partitioner: #指定分区器
|
||||
# # class: com.example.kafkademo.config.CustomizePartitioner
|
||||
# consumer:
|
||||
# group-id: testGroup #默认的消费组ID
|
||||
# enable-auto-commit: true #是否自动提交offset
|
||||
# auto-commit-interval: 2000 #提交offset延时
|
||||
# # 当kafka中没有初始offset或offset超出范围时将自动重置offset
|
||||
# # earliest:重置为分区中最小的offset;
|
||||
# # latest:重置为分区中最新的offset(消费分区中新产生的数据);
|
||||
# # none:只要有一个分区不存在已提交的offset,就抛出异常;
|
||||
# auto-offset-reset: latest
|
||||
# max-poll-records: 500 #单次拉取消息的最大条数
|
||||
# key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
|
||||
# value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
|
||||
# properties:
|
||||
# session:
|
||||
# timeout:
|
||||
# ms: 120000 # 消费会话超时时间(超过这个时间 consumer 没有发送心跳,就会触发 rebalance 操作)
|
||||
# request:
|
||||
# timeout:
|
||||
# ms: 18000 # 消费请求的超时时间
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
mybatis-plus:
|
||||
mapper-locations: classpath*:mapper/**/*Mapper.xml
|
||||
type-aliases-package: cn.qihangerp.oms.domain;cn.qihangerp.module.domain;cn.qihangerp.security.entity;
|
||||
configuration:
|
||||
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 开启sql日志
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
Application Version: ${zhijian.version}
|
||||
Spring Boot Version: ${spring-boot.version}
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// _ooOoo_ //
|
||||
// o8888888o //
|
||||
// 88" . "88 //
|
||||
// (| ^_^ |) //
|
||||
// O\ = /O //
|
||||
// ____/`---'\____ //
|
||||
// .' \\| |// `. //
|
||||
// / \\||| : |||// \ //
|
||||
// / _||||| -:- |||||- \ //
|
||||
// | | \\\ - /// | | //
|
||||
// | \_| ''\---/'' | | //
|
||||
// \ .-\__ `-` ___/-. / //
|
||||
// ___`. .' /--.--\ `. . ___ //
|
||||
// ."" '< `.___\_<|>_/___.' >'"". //
|
||||
// | | : `- \`.;`\ _ /`;.`/ - ` : | | //
|
||||
// \ \ `-. \_ __\ /__ _/ .-` / / //
|
||||
// ========`-.____`-.___\_____/___.-`____.-'======== //
|
||||
// `=---=' //
|
||||
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ //
|
||||
// 佛祖保佑 永不宕机 永无BUG //
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>cn.qihangerp</groupId>
|
||||
<artifactId>qihangerp-cloud</artifactId>
|
||||
<version>2.0.6</version>
|
||||
</parent>
|
||||
|
||||
<groupId>cn.qihangerp.services</groupId>
|
||||
<artifactId>microservices</artifactId>
|
||||
<version>3.0.6</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>microservices</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>3.8.1</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
Loading…
Reference in New Issue