feat: sku erpCode builder

pull/8040/head
Gauthier LO 2024-09-06 10:04:07 +02:00
parent e6b548cf83
commit 214552dbb3
42 changed files with 1837 additions and 0 deletions

View File

@ -0,0 +1,163 @@
package org.jeecg.modules.business.controller.admin;
import java.util.Arrays;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.modules.business.entity.SkuCategory;
import org.jeecg.modules.business.service.ISkuCategoryService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: sku category
* @Author: jeecg-boot
* @Date: 2024-08-26
* @Version: V1.0
*/
@Api(tags="sku category")
@RestController
@RequestMapping("/skuCategory")
@Slf4j
public class SkuCategoryController extends JeecgController<SkuCategory, ISkuCategoryService> {
@Autowired
private ISkuCategoryService skuCategoryService;
/**
*
*
* @param skuCategory
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "sku category-分页列表查询")
@ApiOperation(value="sku category-分页列表查询", notes="sku category-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<SkuCategory>> queryPageList(SkuCategory skuCategory,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<SkuCategory> queryWrapper = QueryGenerator.initQueryWrapper(skuCategory, req.getParameterMap());
Page<SkuCategory> page = new Page<SkuCategory>(pageNo, pageSize);
IPage<SkuCategory> pageList = skuCategoryService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
*
*
* @param skuCategory
* @return
*/
@AutoLog(value = "sku category-添加")
@ApiOperation(value="sku category-添加", notes="sku category-添加")
@RequiresPermissions("business:sku_category:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody SkuCategory skuCategory) {
skuCategoryService.save(skuCategory);
return Result.OK("添加成功!");
}
/**
*
*
* @param skuCategory
* @return
*/
@AutoLog(value = "sku category-编辑")
@ApiOperation(value="sku category-编辑", notes="sku category-编辑")
@RequiresPermissions("business:sku_category:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody SkuCategory skuCategory) {
skuCategoryService.updateById(skuCategory);
return Result.OK("编辑成功!");
}
/**
* id
*
* @param id
* @return
*/
@AutoLog(value = "sku category-通过id删除")
@ApiOperation(value="sku category-通过id删除", notes="sku category-通过id删除")
@RequiresPermissions("business:sku_category:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
skuCategoryService.removeById(id);
return Result.OK("删除成功!");
}
/**
*
*
* @param ids
* @return
*/
@AutoLog(value = "sku category-批量删除")
@ApiOperation(value="sku category-批量删除", notes="sku category-批量删除")
@RequiresPermissions("business:sku_category:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.skuCategoryService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* id
*
* @param id
* @return
*/
//@AutoLog(value = "sku category-通过id查询")
@ApiOperation(value="sku category-通过id查询", notes="sku category-通过id查询")
@GetMapping(value = "/queryById")
public Result<SkuCategory> queryById(@RequestParam(name="id",required=true) String id) {
SkuCategory skuCategory = skuCategoryService.getById(id);
if(skuCategory==null) {
return Result.error("未找到对应数据");
}
return Result.OK(skuCategory);
}
/**
* excel
*
* @param request
* @param skuCategory
*/
@RequiresPermissions("business:sku_category:exportXls")
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, SkuCategory skuCategory) {
return super.exportXls(request, skuCategory, SkuCategory.class, "sku category");
}
/**
* excel
*
* @param request
* @param response
* @return
*/
@RequiresPermissions("business:sku_category:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, SkuCategory.class);
}
}

View File

@ -0,0 +1,162 @@
package org.jeecg.modules.business.controller.admin;
import java.util.Arrays;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.modules.business.entity.SkuCategoryCriteria;
import org.jeecg.modules.business.service.ISkuCategoryCriteriaService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: sku erpCode category criteria joint table
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Api(tags="sku erpCode category criteria joint table")
@RestController
@RequestMapping("/skuCategoryCriteria")
@Slf4j
public class SkuCategoryCriteriaController extends JeecgController<SkuCategoryCriteria, ISkuCategoryCriteriaService> {
@Autowired
private ISkuCategoryCriteriaService skuCategoryCriteriaService;
/**
*
*
* @param skuCategoryCriteria
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "sku erpCode category criteria joint table-分页列表查询")
@ApiOperation(value="sku erpCode category criteria joint table-分页列表查询", notes="sku erpCode category criteria joint table-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<SkuCategoryCriteria>> queryPageList(SkuCategoryCriteria skuCategoryCriteria,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<SkuCategoryCriteria> queryWrapper = QueryGenerator.initQueryWrapper(skuCategoryCriteria, req.getParameterMap());
Page<SkuCategoryCriteria> page = new Page<SkuCategoryCriteria>(pageNo, pageSize);
IPage<SkuCategoryCriteria> pageList = skuCategoryCriteriaService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
*
*
* @param skuCategoryCriteria
* @return
*/
@AutoLog(value = "sku erpCode category criteria joint table-添加")
@ApiOperation(value="sku erpCode category criteria joint table-添加", notes="sku erpCode category criteria joint table-添加")
@RequiresPermissions("business:sku_category_criteria:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody SkuCategoryCriteria skuCategoryCriteria) {
skuCategoryCriteriaService.save(skuCategoryCriteria);
return Result.OK("添加成功!");
}
/**
*
*
* @param skuCategoryCriteria
* @return
*/
@AutoLog(value = "sku erpCode category criteria joint table-编辑")
@ApiOperation(value="sku erpCode category criteria joint table-编辑", notes="sku erpCode category criteria joint table-编辑")
@RequiresPermissions("business:sku_category_criteria:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody SkuCategoryCriteria skuCategoryCriteria) {
skuCategoryCriteriaService.updateById(skuCategoryCriteria);
return Result.OK("编辑成功!");
}
/**
* id
*
* @param id
* @return
*/
@AutoLog(value = "sku erpCode category criteria joint table-通过id删除")
@ApiOperation(value="sku erpCode category criteria joint table-通过id删除", notes="sku erpCode category criteria joint table-通过id删除")
@RequiresPermissions("business:sku_category_criteria:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
skuCategoryCriteriaService.removeById(id);
return Result.OK("删除成功!");
}
/**
*
*
* @param ids
* @return
*/
@AutoLog(value = "sku erpCode category criteria joint table-批量删除")
@ApiOperation(value="sku erpCode category criteria joint table-批量删除", notes="sku erpCode category criteria joint table-批量删除")
@RequiresPermissions("business:sku_category_criteria:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.skuCategoryCriteriaService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* id
*
* @param id
* @return
*/
//@AutoLog(value = "sku erpCode category criteria joint table-通过id查询")
@ApiOperation(value="sku erpCode category criteria joint table-通过id查询", notes="sku erpCode category criteria joint table-通过id查询")
@GetMapping(value = "/queryById")
public Result<SkuCategoryCriteria> queryById(@RequestParam(name="id",required=true) String id) {
SkuCategoryCriteria skuCategoryCriteria = skuCategoryCriteriaService.getById(id);
if(skuCategoryCriteria==null) {
return Result.error("未找到对应数据");
}
return Result.OK(skuCategoryCriteria);
}
/**
* excel
*
* @param request
* @param skuCategoryCriteria
*/
@RequiresPermissions("business:sku_category_criteria:exportXls")
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, SkuCategoryCriteria skuCategoryCriteria) {
return super.exportXls(request, skuCategoryCriteria, SkuCategoryCriteria.class, "sku erpCode category criteria joint table");
}
/**
* excel
*
* @param request
* @param response
* @return
*/
@RequiresPermissions("business:sku_category_criteria:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, SkuCategoryCriteria.class);
}
}

View File

@ -403,4 +403,9 @@ public class SkuController {
page.setTotal(total);
return Result.OK(page);
}
@GetMapping("/searchExistingSkuByKeywords")
public Result<?> searchExistingSkuByKeywords(@RequestParam("keywords[]") List<String> keywords) {
System.out.println("keywords : " + keywords);
return Result.OK(skuService.searchExistingSkuByKeywords(keywords));
}
}

View File

@ -0,0 +1,176 @@
package org.jeecg.modules.business.controller.admin;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.modules.business.entity.SkuCategory;
import org.jeecg.modules.business.entity.SkuCategoryCriteria;
import org.jeecg.modules.business.entity.SkuCriteria;
import org.jeecg.modules.business.service.ISkuCategoryCriteriaService;
import org.jeecg.modules.business.service.ISkuCategoryService;
import org.jeecg.modules.business.service.ISkuCriteriaService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: SKU erpCode criteria
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Api(tags="SKU erpCode criteria")
@RestController
@RequestMapping("/skuCriteria")
@Slf4j
public class SkuCriteriaController extends JeecgController<SkuCriteria, ISkuCriteriaService> {
@Autowired
private ISkuCriteriaService skuCriteriaService;
@Autowired
private ISkuCategoryService skuCategoryService;
@Autowired
private ISkuCategoryCriteriaService skuCategoryCriteriaService;
/**
*
*
* @param skuCriteria
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "SKU erpCode criteria-分页列表查询")
@ApiOperation(value="SKU erpCode criteria-分页列表查询", notes="SKU erpCode criteria-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<SkuCriteria>> queryPageList(SkuCriteria skuCriteria,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<SkuCriteria> queryWrapper = QueryGenerator.initQueryWrapper(skuCriteria, req.getParameterMap());
Page<SkuCriteria> page = new Page<SkuCriteria>(pageNo, pageSize);
IPage<SkuCriteria> pageList = skuCriteriaService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
*
*
* @param skuCriteria
* @return
*/
@AutoLog(value = "SKU erpCode criteria-添加")
@ApiOperation(value="SKU erpCode criteria-添加", notes="SKU erpCode criteria-添加")
@RequiresPermissions("business:sku_criteria:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody SkuCriteria skuCriteria) {
skuCriteriaService.save(skuCriteria);
return Result.OK("添加成功!");
}
/**
*
*
* @param skuCriteria
* @return
*/
@AutoLog(value = "SKU erpCode criteria-编辑")
@ApiOperation(value="SKU erpCode criteria-编辑", notes="SKU erpCode criteria-编辑")
@RequiresPermissions("business:sku_criteria:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody SkuCriteria skuCriteria) {
skuCriteriaService.updateById(skuCriteria);
return Result.OK("编辑成功!");
}
/**
* id
*
* @param id
* @return
*/
@AutoLog(value = "SKU erpCode criteria-通过id删除")
@ApiOperation(value="SKU erpCode criteria-通过id删除", notes="SKU erpCode criteria-通过id删除")
@RequiresPermissions("business:sku_criteria:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
skuCriteriaService.removeById(id);
return Result.OK("删除成功!");
}
/**
*
*
* @param ids
* @return
*/
@AutoLog(value = "SKU erpCode criteria-批量删除")
@ApiOperation(value="SKU erpCode criteria-批量删除", notes="SKU erpCode criteria-批量删除")
@RequiresPermissions("business:sku_criteria:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.skuCriteriaService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* id
*
* @param id
* @return
*/
//@AutoLog(value = "SKU erpCode criteria-通过id查询")
@ApiOperation(value="SKU erpCode criteria-通过id查询", notes="SKU erpCode criteria-通过id查询")
@GetMapping(value = "/queryById")
public Result<SkuCriteria> queryById(@RequestParam(name="id",required=true) String id) {
SkuCriteria skuCriteria = skuCriteriaService.getById(id);
if(skuCriteria==null) {
return Result.error("未找到对应数据");
}
return Result.OK(skuCriteria);
}
/**
* excel
*
* @param request
* @param skuCriteria
*/
@RequiresPermissions("business:sku_criteria:exportXls")
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, SkuCriteria skuCriteria) {
return super.exportXls(request, skuCriteria, SkuCriteria.class, "SKU erpCode criteria");
}
/**
* excel
*
* @param request
* @param response
* @return
*/
@RequiresPermissions("business:sku_criteria:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, SkuCriteria.class);
}
@GetMapping(value = "/listByCategory")
public Result<?> listByCategory(@RequestParam(name = "categoryCode") String categoryCode) {
return Result.OK(skuCriteriaService.listByCategoryCode(categoryCode));
}
}

View File

@ -0,0 +1,163 @@
package org.jeecg.modules.business.controller.admin;
import java.util.Arrays;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.modules.business.entity.SkuCriteriaValueCategory;
import org.jeecg.modules.business.service.ISkuCriteriaValueCategoryService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: SKU erpCode criteria value category
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Api(tags="SKU erpCode criteria value category")
@RestController
@RequestMapping("/skuCriteriaValueCategory")
@Slf4j
public class SkuCriteriaValueCategoryController extends JeecgController<SkuCriteriaValueCategory, ISkuCriteriaValueCategoryService> {
@Autowired
private ISkuCriteriaValueCategoryService skuCriteriaValueCategoryService;
/**
*
*
* @param skuCriteriaValueCategory
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "SKU erpCode criteria value category-分页列表查询")
@ApiOperation(value="SKU erpCode criteria value category-分页列表查询", notes="SKU erpCode criteria value category-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<SkuCriteriaValueCategory>> queryPageList(SkuCriteriaValueCategory skuCriteriaValueCategory,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<SkuCriteriaValueCategory> queryWrapper = QueryGenerator.initQueryWrapper(skuCriteriaValueCategory, req.getParameterMap());
Page<SkuCriteriaValueCategory> page = new Page<SkuCriteriaValueCategory>(pageNo, pageSize);
IPage<SkuCriteriaValueCategory> pageList = skuCriteriaValueCategoryService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
*
*
* @param skuCriteriaValueCategory
* @return
*/
@AutoLog(value = "SKU erpCode criteria value category-添加")
@ApiOperation(value="SKU erpCode criteria value category-添加", notes="SKU erpCode criteria value category-添加")
@RequiresPermissions("business:sku_criteria_value_category:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody SkuCriteriaValueCategory skuCriteriaValueCategory) {
skuCriteriaValueCategoryService.save(skuCriteriaValueCategory);
return Result.OK("添加成功!");
}
/**
*
*
* @param skuCriteriaValueCategory
* @return
*/
@AutoLog(value = "SKU erpCode criteria value category-编辑")
@ApiOperation(value="SKU erpCode criteria value category-编辑", notes="SKU erpCode criteria value category-编辑")
@RequiresPermissions("business:sku_criteria_value_category:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody SkuCriteriaValueCategory skuCriteriaValueCategory) {
skuCriteriaValueCategoryService.updateById(skuCriteriaValueCategory);
return Result.OK("编辑成功!");
}
/**
* id
*
* @param id
* @return
*/
@AutoLog(value = "SKU erpCode criteria value category-通过id删除")
@ApiOperation(value="SKU erpCode criteria value category-通过id删除", notes="SKU erpCode criteria value category-通过id删除")
@RequiresPermissions("business:sku_criteria_value_category:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
skuCriteriaValueCategoryService.removeById(id);
return Result.OK("删除成功!");
}
/**
*
*
* @param ids
* @return
*/
@AutoLog(value = "SKU erpCode criteria value category-批量删除")
@ApiOperation(value="SKU erpCode criteria value category-批量删除", notes="SKU erpCode criteria value category-批量删除")
@RequiresPermissions("business:sku_criteria_value_category:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.skuCriteriaValueCategoryService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* id
*
* @param id
* @return
*/
//@AutoLog(value = "SKU erpCode criteria value category-通过id查询")
@ApiOperation(value="SKU erpCode criteria value category-通过id查询", notes="SKU erpCode criteria value category-通过id查询")
@GetMapping(value = "/queryById")
public Result<SkuCriteriaValueCategory> queryById(@RequestParam(name="id",required=true) String id) {
SkuCriteriaValueCategory skuCriteriaValueCategory = skuCriteriaValueCategoryService.getById(id);
if(skuCriteriaValueCategory==null) {
return Result.error("未找到对应数据");
}
return Result.OK(skuCriteriaValueCategory);
}
/**
* excel
*
* @param request
* @param skuCriteriaValueCategory
*/
@RequiresPermissions("business:sku_criteria_value_category:exportXls")
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, SkuCriteriaValueCategory skuCriteriaValueCategory) {
return super.exportXls(request, skuCriteriaValueCategory, SkuCriteriaValueCategory.class, "SKU erpCode criteria value category");
}
/**
* excel
*
* @param request
* @param response
* @return
*/
@RequiresPermissions("business:sku_criteria_value_category:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, SkuCriteriaValueCategory.class);
}
}

View File

@ -0,0 +1,168 @@
package org.jeecg.modules.business.controller.admin;
import java.util.Arrays;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.modules.business.entity.SkuCriteriaValue;
import org.jeecg.modules.business.service.ISkuCriteriaValueService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: SKU criteria value
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Api(tags="SKU criteria value")
@RestController
@RequestMapping("/skuCriteriaValue")
@Slf4j
public class SkuCriteriaValueController extends JeecgController<SkuCriteriaValue, ISkuCriteriaValueService> {
@Autowired
private ISkuCriteriaValueService skuCriteriaValueService;
/**
*
*
* @param skuCriteriaValue
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "SKU criteria value-分页列表查询")
@ApiOperation(value="SKU criteria value-分页列表查询", notes="SKU criteria value-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<SkuCriteriaValue>> queryPageList(SkuCriteriaValue skuCriteriaValue,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<SkuCriteriaValue> queryWrapper = QueryGenerator.initQueryWrapper(skuCriteriaValue, req.getParameterMap());
Page<SkuCriteriaValue> page = new Page<SkuCriteriaValue>(pageNo, pageSize);
IPage<SkuCriteriaValue> pageList = skuCriteriaValueService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
*
*
* @param skuCriteriaValue
* @return
*/
@AutoLog(value = "SKU criteria value-添加")
@ApiOperation(value="SKU criteria value-添加", notes="SKU criteria value-添加")
@RequiresPermissions("business:sku_criteria_value:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody SkuCriteriaValue skuCriteriaValue) {
skuCriteriaValueService.save(skuCriteriaValue);
return Result.OK("添加成功!");
}
/**
*
*
* @param skuCriteriaValue
* @return
*/
@AutoLog(value = "SKU criteria value-编辑")
@ApiOperation(value="SKU criteria value-编辑", notes="SKU criteria value-编辑")
@RequiresPermissions("business:sku_criteria_value:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody SkuCriteriaValue skuCriteriaValue) {
skuCriteriaValueService.updateById(skuCriteriaValue);
return Result.OK("编辑成功!");
}
/**
* id
*
* @param id
* @return
*/
@AutoLog(value = "SKU criteria value-通过id删除")
@ApiOperation(value="SKU criteria value-通过id删除", notes="SKU criteria value-通过id删除")
@RequiresPermissions("business:sku_criteria_value:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
skuCriteriaValueService.removeById(id);
return Result.OK("删除成功!");
}
/**
*
*
* @param ids
* @return
*/
@AutoLog(value = "SKU criteria value-批量删除")
@ApiOperation(value="SKU criteria value-批量删除", notes="SKU criteria value-批量删除")
@RequiresPermissions("business:sku_criteria_value:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.skuCriteriaValueService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* id
*
* @param id
* @return
*/
//@AutoLog(value = "SKU criteria value-通过id查询")
@ApiOperation(value="SKU criteria value-通过id查询", notes="SKU criteria value-通过id查询")
@GetMapping(value = "/queryById")
public Result<SkuCriteriaValue> queryById(@RequestParam(name="id",required=true) String id) {
SkuCriteriaValue skuCriteriaValue = skuCriteriaValueService.getById(id);
if(skuCriteriaValue==null) {
return Result.error("未找到对应数据");
}
return Result.OK(skuCriteriaValue);
}
/**
* excel
*
* @param request
* @param skuCriteriaValue
*/
@RequiresPermissions("business:sku_criteria_value:exportXls")
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, SkuCriteriaValue skuCriteriaValue) {
return super.exportXls(request, skuCriteriaValue, SkuCriteriaValue.class, "SKU criteria value");
}
/**
* excel
*
* @param request
* @param response
* @return
*/
@RequiresPermissions("business:sku_criteria_value:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, SkuCriteriaValue.class);
}
@GetMapping(value = "/listByCriteria")
public Result<?> listByCriteria(@RequestParam(name="criteriaId") String criteriaId) {
List<SkuCriteriaValue> list = skuCriteriaValueService.listByCriteria(criteriaId);
return Result.OK(list);
}
}

View File

@ -0,0 +1,176 @@
package org.jeecg.modules.business.controller.admin;
import java.util.Arrays;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.modules.business.entity.SkuCategory;
import org.jeecg.modules.business.entity.SkuSubcategory;
import org.jeecg.modules.business.service.ISkuCategoryService;
import org.jeecg.modules.business.service.ISkuSubcategoryService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: sku erpCode sub category
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Api(tags="sku erpCode sub category")
@RestController
@RequestMapping("/skuSubcategory")
@Slf4j
public class SkuSubcategoryController extends JeecgController<SkuSubcategory, ISkuSubcategoryService> {
@Autowired
private ISkuSubcategoryService skuSubcategoryService;
@Autowired
private ISkuCategoryService skuCategoryService;
/**
*
*
* @param skuSubcategory
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "sku erpCode sub category-分页列表查询")
@ApiOperation(value="sku erpCode sub category-分页列表查询", notes="sku erpCode sub category-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<SkuSubcategory>> queryPageList(SkuSubcategory skuSubcategory,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<SkuSubcategory> queryWrapper = QueryGenerator.initQueryWrapper(skuSubcategory, req.getParameterMap());
Page<SkuSubcategory> page = new Page<SkuSubcategory>(pageNo, pageSize);
IPage<SkuSubcategory> pageList = skuSubcategoryService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
*
*
* @param skuSubcategory
* @return
*/
@AutoLog(value = "sku erpCode sub category-添加")
@ApiOperation(value="sku erpCode sub category-添加", notes="sku erpCode sub category-添加")
@RequiresPermissions("business:sku_subcategory:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody SkuSubcategory skuSubcategory) {
skuSubcategoryService.save(skuSubcategory);
return Result.OK("添加成功!");
}
/**
*
*
* @param skuSubcategory
* @return
*/
@AutoLog(value = "sku erpCode sub category-编辑")
@ApiOperation(value="sku erpCode sub category-编辑", notes="sku erpCode sub category-编辑")
@RequiresPermissions("business:sku_subcategory:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody SkuSubcategory skuSubcategory) {
skuSubcategoryService.updateById(skuSubcategory);
return Result.OK("编辑成功!");
}
/**
* id
*
* @param id
* @return
*/
@AutoLog(value = "sku erpCode sub category-通过id删除")
@ApiOperation(value="sku erpCode sub category-通过id删除", notes="sku erpCode sub category-通过id删除")
@RequiresPermissions("business:sku_subcategory:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
skuSubcategoryService.removeById(id);
return Result.OK("删除成功!");
}
/**
*
*
* @param ids
* @return
*/
@AutoLog(value = "sku erpCode sub category-批量删除")
@ApiOperation(value="sku erpCode sub category-批量删除", notes="sku erpCode sub category-批量删除")
@RequiresPermissions("business:sku_subcategory:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.skuSubcategoryService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* id
*
* @param id
* @return
*/
//@AutoLog(value = "sku erpCode sub category-通过id查询")
@ApiOperation(value="sku erpCode sub category-通过id查询", notes="sku erpCode sub category-通过id查询")
@GetMapping(value = "/queryById")
public Result<SkuSubcategory> queryById(@RequestParam(name="id",required=true) String id) {
SkuSubcategory skuSubcategory = skuSubcategoryService.getById(id);
if(skuSubcategory==null) {
return Result.error("未找到对应数据");
}
return Result.OK(skuSubcategory);
}
/**
* excel
*
* @param request
* @param skuSubcategory
*/
@RequiresPermissions("business:sku_subcategory:exportXls")
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, SkuSubcategory skuSubcategory) {
return super.exportXls(request, skuSubcategory, SkuSubcategory.class, "sku erpCode sub category");
}
/**
* excel
*
* @param request
* @param response
* @return
*/
@RequiresPermissions("business:sku_subcategory:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, SkuSubcategory.class);
}
@GetMapping(value="/listByCategory")
public Result<?> listByCategory(@RequestParam(name="categoryCode") String categoryCode) {
QueryWrapper<SkuCategory> categoryQuery = new QueryWrapper<>();
categoryQuery.eq("code", categoryCode);
QueryWrapper<SkuSubcategory> queryWrapper = new QueryWrapper<>();
queryWrapper.in("sku_category_id", skuCategoryService.list(categoryQuery).stream().map(SkuCategory::getId).toArray());
List<SkuSubcategory> list = skuSubcategoryService.list(queryWrapper);
return Result.OK(list);
}
}

View File

@ -0,0 +1,63 @@
package org.jeecg.modules.business.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: sku erpCode category
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Data
@TableName("sku_category")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="sku_category对象", description="sku erpCode category")
public class SkuCategory implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**name*/
@Excel(name = "name", width = 15)
@ApiModelProperty(value = "name")
private java.lang.String name;
/**code*/
@Excel(name = "code", width = 15)
@ApiModelProperty(value = "code")
private java.lang.String code;
}

View File

@ -0,0 +1,66 @@
package org.jeecg.modules.business.entity;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: sku erpCode category criteria joint table
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Data
@TableName("sku_category_criteria")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="sku_category_criteria对象", description="sku erpCode category criteria joint table")
public class SkuCategoryCriteria implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**SKU catergory id (fk)*/
@Excel(name = "SKU catergory id (fk)", width = 15, dictTable = "sku_category", dicText = "code", dicCode = "id")
@Dict(dictTable = "sku_category", dicText = "code", dicCode = "id")
@ApiModelProperty(value = "SKU catergory id (fk)")
private java.lang.String skuCategoryId;
/**SKU criteria id (fk)*/
@Excel(name = "SKU criteria id (fk)", width = 15, dictTable = "sku_criteria", dicText = "name_en", dicCode = "id")
@Dict(dictTable = "sku_criteria", dicText = "name_en", dicCode = "id")
@ApiModelProperty(value = "SKU criteria id (fk)")
private java.lang.String skuCriteriaId;
/**Order or place in the erpCode*/
@Excel(name = "Order or place in the erpCode", width = 15)
@ApiModelProperty(value = "Order or place in the erpCode")
private java.lang.Integer ranking;
}

View File

@ -0,0 +1,59 @@
package org.jeecg.modules.business.entity;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: SKU erpCode criteria
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Data
@TableName("sku_criteria")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="sku_criteria对象", description="SKU erpCode criteria")
public class SkuCriteria implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**criteria name*/
@Excel(name = "criteria name", width = 15)
@ApiModelProperty(value = "criteria name")
private java.lang.String nameZh;
/**english name*/
@Excel(name = "english name", width = 15)
@ApiModelProperty(value = "english name")
private java.lang.String nameEn;
}

View File

@ -0,0 +1,74 @@
package org.jeecg.modules.business.entity;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: SKU criteria value
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Data
@TableName("sku_criteria_value")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="sku_criteria_value对象", description="SKU criteria value")
public class SkuCriteriaValue implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**value zh name*/
@Excel(name = "value zh name", width = 15)
@ApiModelProperty(value = "value zh name")
private java.lang.String nameZh;
/**value en name*/
@Excel(name = "value en name", width = 15)
@ApiModelProperty(value = "value en name")
private java.lang.String nameEn;
/**value in code form*/
@Excel(name = "value in code form", width = 15)
@ApiModelProperty(value = "value in code form")
private java.lang.String code;
/**sku criteria id (#fk)*/
@Excel(name = "sku criteria id (#fk)", width = 15, dictTable = "sku_criteria", dicText = "name_en", dicCode = "id")
@Dict(dictTable = "sku_criteria", dicText = "name_en", dicCode = "id")
@ApiModelProperty(value = "sku criteria id (#fk)")
private java.lang.String skuCriteriaId;
/**sku criteria value category*/
@Excel(name = "sku criteria value category", width = 15, dictTable = "sku_criteria_value_category", dicText = "name", dicCode = "id")
@Dict(dictTable = "sku_criteria_value_category", dicText = "name", dicCode = "id")
@ApiModelProperty(value = "sku criteria value category")
private java.lang.String category;
}

View File

@ -0,0 +1,55 @@
package org.jeecg.modules.business.entity;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: SKU erpCode criteria value category
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Data
@TableName("sku_criteria_value_category")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="sku_criteria_value_category对象", description="SKU erpCode criteria value category")
public class SkuCriteriaValueCategory implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**name*/
@Excel(name = "name", width = 15)
@ApiModelProperty(value = "name")
private java.lang.String name;
}

View File

@ -0,0 +1,69 @@
package org.jeecg.modules.business.entity;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: sku erpCode sub category
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Data
@TableName("sku_subcategory")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="sku_subcategory对象", description="sku erpCode sub category")
public class SkuSubcategory implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**zh name*/
@Excel(name = "zh name", width = 15)
@ApiModelProperty(value = "zh name")
private java.lang.String nameZh;
/**english name*/
@Excel(name = "english name", width = 15)
@ApiModelProperty(value = "english name")
private java.lang.String nameEn;
/**code*/
@Excel(name = "code", width = 15)
@ApiModelProperty(value = "code")
private java.lang.String code;
/**sku category id*/
@Excel(name = "sku category id", width = 15, dictTable = "sku_category", dicText = "code", dicCode = "id")
@Dict(dictTable = "sku_category", dicText = "code", dicCode = "id")
@ApiModelProperty(value = "sku category id")
private java.lang.String skuCategoryId;
}

View File

@ -0,0 +1,16 @@
package org.jeecg.modules.business.mapper;
import org.jeecg.modules.business.entity.SkuCategoryCriteria;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* @Description: sku erpCode category criteria joint table
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Repository
public interface SkuCategoryCriteriaMapper extends BaseMapper<SkuCategoryCriteria> {
}

View File

@ -0,0 +1,16 @@
package org.jeecg.modules.business.mapper;
import org.jeecg.modules.business.entity.SkuCategory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* @Description: sku category
* @Author: jeecg-boot
* @Date: 2024-08-26
* @Version: V1.0
*/
@Repository
public interface SkuCategoryMapper extends BaseMapper<SkuCategory> {
}

View File

@ -0,0 +1,20 @@
package org.jeecg.modules.business.mapper;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.business.entity.SkuCriteria;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @Description: SKU erpCode criteria
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Repository
public interface SkuCriteriaMapper extends BaseMapper<SkuCriteria> {
List<SkuCriteria> listByCategoryCode(@Param("category")String categoryCode);
}

View File

@ -0,0 +1,14 @@
package org.jeecg.modules.business.mapper;
import org.jeecg.modules.business.entity.SkuCriteriaValueCategory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: SKU erpCode criteria value category
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
public interface SkuCriteriaValueCategoryMapper extends BaseMapper<SkuCriteriaValueCategory> {
}

View File

@ -0,0 +1,20 @@
package org.jeecg.modules.business.mapper;
import io.lettuce.core.dynamic.annotation.Param;
import org.jeecg.modules.business.entity.SkuCriteriaValue;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @Description: SKU criteria value
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Repository
public interface SkuCriteriaValueMapper extends BaseMapper<SkuCriteriaValue> {
List<SkuCriteriaValue> listByCriteria(@Param("criteriaId") String criteriaId);
}

View File

@ -72,4 +72,6 @@ public interface SkuMapper extends BaseMapper<Sku> {
List<Sku> listByClientId(@Param("clientId") String clientId);
List<org.jeecg.modules.business.model.Sku> listAsMongoCollection();
List<SkuOrderPage> searchExistingSkuByKeywords(@Param("keywords") List<String> keywords);
}

View File

@ -0,0 +1,16 @@
package org.jeecg.modules.business.mapper;
import org.jeecg.modules.business.entity.SkuSubcategory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* @Description: sku erpCode sub category
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Repository
public interface SkuSubcategoryMapper extends BaseMapper<SkuSubcategory> {
}

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.business.mapper.SkuCategoryCriteriaMapper">
</mapper>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.business.mapper.SkuCategoryMapper">
</mapper>

View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.business.mapper.SkuCriteriaMapper">
<select id="listByCategoryCode" resultType="org.jeecg.modules.business.vo.SkuCriteriaData">
SELECT
sc.id,
sc.name_zh,
sc.name_en,
scc.ranking
FROM sku_criteria sc
JOIN sku_category_criteria scc ON sc.id = scc.sku_criteria_id
JOIN sku_category scg ON scc.sku_category_id = scg.id
WHERE scg.code = #{category}
</select>
</mapper>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.business.mapper.SkuCriteriaValueCategoryMapper">
</mapper>

View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.business.mapper.SkuCriteriaValueMapper">
<select id="listByCriteria" resultType="org.jeecg.modules.business.entity.SkuCriteriaValue">
SELECT
scv.id,
scv.name_zh,
scv.name_en,
scv.code,
scvc.name as category
FROM sku_criteria_value scv
LEFT JOIN sku_criteria_value_category scvc ON scv.category = scvc.id
WHERE sku_criteria_id = #{criteriaId};
</select>
</mapper>

View File

@ -584,4 +584,48 @@
WHERE c.active = 1
AND s.status = 3
</select>
<select id="searchExistingSkuByKeywords" resultType="org.jeecg.modules.business.vo.SkuOrderPage">
SELECT
s.id,
s.erp_code,
s.en_name as productEn,
s.zh_name as product,
s.purchasing_amount,
s.available_amount,
s.image_source,
s.service_fee,
IF(sp.price_rmb IS NULL, sp.price,
(
ROUND(
sp.price_rmb /
(SELECT rate
FROM exchange_rates
WHERE original_currency = 'EUR' AND target_currency = 'RMB'
ORDER BY create_time DESC LIMIT 1)
,2)
)
) as sku_price,
sp.threshold as discount_moq,
IF(sp.price_rmb IS NULL, sp.discounted_price,
(
ROUND(
sp.discounted_price_rmb /
(SELECT rate
FROM exchange_rates
WHERE target_currency = 'EUR' AND original_currency = 'RMB'
ORDER BY create_time DESC LIMIT 1)
,2)
)
) as discounted_price,
FROM sku s
LEFT JOIN sku_current_price sp ON s.id = sp.sku_id
WHERE s.status = 3
AND (
<foreach collection="keywords" item="keyword" index="index" separator="OR">
s.erp_code LIKE CONCAT('%', #{keyword}, '%')
OR s.en_name LIKE CONCAT('%', #{keyword}, '%')
OR s.zh_name LIKE CONCAT('%', #{keyword}, '%')
</foreach>
)
</select>
</mapper>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.business.mapper.SkuSubcategoryMapper">
</mapper>

View File

@ -0,0 +1,14 @@
package org.jeecg.modules.business.service;
import org.jeecg.modules.business.entity.SkuCategoryCriteria;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: sku erpCode category criteria joint table
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
public interface ISkuCategoryCriteriaService extends IService<SkuCategoryCriteria> {
}

View File

@ -0,0 +1,14 @@
package org.jeecg.modules.business.service;
import org.jeecg.modules.business.entity.SkuCategory;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: sku category
* @Author: jeecg-boot
* @Date: 2024-08-26
* @Version: V1.0
*/
public interface ISkuCategoryService extends IService<SkuCategory> {
}

View File

@ -0,0 +1,17 @@
package org.jeecg.modules.business.service;
import org.jeecg.modules.business.entity.SkuCriteria;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* @Description: SKU erpCode criteria
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
public interface ISkuCriteriaService extends IService<SkuCriteria> {
List<SkuCriteria> listByCategoryCode(String categoryCode);
}

View File

@ -0,0 +1,14 @@
package org.jeecg.modules.business.service;
import org.jeecg.modules.business.entity.SkuCriteriaValueCategory;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: SKU erpCode criteria value category
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
public interface ISkuCriteriaValueCategoryService extends IService<SkuCriteriaValueCategory> {
}

View File

@ -0,0 +1,17 @@
package org.jeecg.modules.business.service;
import org.jeecg.modules.business.entity.SkuCriteriaValue;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* @Description: SKU criteria value
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
public interface ISkuCriteriaValueService extends IService<SkuCriteriaValue> {
List<SkuCriteriaValue> listByCriteria(String criteriaId);
}

View File

@ -115,4 +115,6 @@ public interface ISkuService extends IService<Sku> {
List<Sku> listByClientId(String clientId);
List<org.jeecg.modules.business.model.Sku> listAsMongoCollection();
List<SkuOrderPage> searchExistingSkuByKeywords(List<String> keywords);
}

View File

@ -0,0 +1,14 @@
package org.jeecg.modules.business.service;
import org.jeecg.modules.business.entity.SkuSubcategory;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: sku erpCode sub category
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
public interface ISkuSubcategoryService extends IService<SkuSubcategory> {
}

View File

@ -0,0 +1,19 @@
package org.jeecg.modules.business.service.impl;
import org.jeecg.modules.business.entity.SkuCategoryCriteria;
import org.jeecg.modules.business.mapper.SkuCategoryCriteriaMapper;
import org.jeecg.modules.business.service.ISkuCategoryCriteriaService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: sku erpCode category criteria joint table
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Service
public class SkuCategoryCriteriaServiceImpl extends ServiceImpl<SkuCategoryCriteriaMapper, SkuCategoryCriteria> implements ISkuCategoryCriteriaService {
}

View File

@ -0,0 +1,19 @@
package org.jeecg.modules.business.service.impl;
import org.jeecg.modules.business.entity.SkuCategory;
import org.jeecg.modules.business.mapper.SkuCategoryMapper;
import org.jeecg.modules.business.service.ISkuCategoryService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: sku category
* @Author: jeecg-boot
* @Date: 2024-08-26
* @Version: V1.0
*/
@Service
public class SkuCategoryServiceImpl extends ServiceImpl<SkuCategoryMapper, SkuCategory> implements ISkuCategoryService {
}

View File

@ -0,0 +1,28 @@
package org.jeecg.modules.business.service.impl;
import org.jeecg.modules.business.entity.SkuCriteria;
import org.jeecg.modules.business.mapper.SkuCriteriaMapper;
import org.jeecg.modules.business.service.ISkuCriteriaService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.List;
/**
* @Description: SKU erpCode criteria
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Service
public class SkuCriteriaServiceImpl extends ServiceImpl<SkuCriteriaMapper, SkuCriteria> implements ISkuCriteriaService {
@Autowired
private SkuCriteriaMapper skuCriteriaMapper;
@Override
public List<SkuCriteria> listByCategoryCode(String categoryCode) {
return skuCriteriaMapper.listByCategoryCode(categoryCode);
}
}

View File

@ -0,0 +1,19 @@
package org.jeecg.modules.business.service.impl;
import org.jeecg.modules.business.entity.SkuCriteriaValueCategory;
import org.jeecg.modules.business.mapper.SkuCriteriaValueCategoryMapper;
import org.jeecg.modules.business.service.ISkuCriteriaValueCategoryService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: SKU erpCode criteria value category
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Service
public class SkuCriteriaValueCategoryServiceImpl extends ServiceImpl<SkuCriteriaValueCategoryMapper, SkuCriteriaValueCategory> implements ISkuCriteriaValueCategoryService {
}

View File

@ -0,0 +1,28 @@
package org.jeecg.modules.business.service.impl;
import org.jeecg.modules.business.entity.SkuCriteriaValue;
import org.jeecg.modules.business.mapper.SkuCriteriaValueMapper;
import org.jeecg.modules.business.service.ISkuCriteriaValueService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.List;
/**
* @Description: SKU criteria value
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Service
public class SkuCriteriaValueServiceImpl extends ServiceImpl<SkuCriteriaValueMapper, SkuCriteriaValue> implements ISkuCriteriaValueService {
@Autowired
private SkuCriteriaValueMapper skuCriteriaValueMapper;
@Override
public List<SkuCriteriaValue> listByCriteria(String criteriaId) {
return skuCriteriaValueMapper.listByCriteria(criteriaId);
}
}

View File

@ -572,4 +572,9 @@ public class SkuServiceImpl extends ServiceImpl<SkuMapper, Sku> implements ISkuS
return skuMapper.listAsMongoCollection();
}
@Override
public List<SkuOrderPage> searchExistingSkuByKeywords(List<String> keywords) {
return skuMapper.searchExistingSkuByKeywords(keywords);
}
}

View File

@ -0,0 +1,19 @@
package org.jeecg.modules.business.service.impl;
import org.jeecg.modules.business.entity.SkuSubcategory;
import org.jeecg.modules.business.mapper.SkuSubcategoryMapper;
import org.jeecg.modules.business.service.ISkuSubcategoryService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: sku erpCode sub category
* @Author: jeecg-boot
* @Date: 2024-08-28
* @Version: V1.0
*/
@Service
public class SkuSubcategoryServiceImpl extends ServiceImpl<SkuSubcategoryMapper, SkuSubcategory> implements ISkuSubcategoryService {
}

View File

@ -0,0 +1,11 @@
package org.jeecg.modules.business.vo;
import lombok.Data;
@Data
public class SkuCriteriaData {
private final String id;
private final String nameZh;
private final String nameEn;
private final Integer ranking;
}