From f131c141bafa2a060050fa85799fb9d1eb617b69 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期二, 09 九月 2025 18:05:00 +0800 Subject: [PATCH] 小程序接口 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java | 119 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 111 insertions(+), 8 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java index a009823..fe94611 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java @@ -1,27 +1,47 @@ package com.ruoyi.web.controller.api; +import cn.afterturn.easypoi.excel.ExcelExportUtil; +import cn.afterturn.easypoi.excel.ExcelImportUtil; +import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.afterturn.easypoi.excel.entity.ImportParams; +import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.ruoyi.common.basic.PageInfo; +import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.common.core.exception.ServiceException; +import com.ruoyi.common.utils.WebUtils; import com.ruoyi.framework.web.service.TokenService; import com.ruoyi.system.dto.TErpGoodsAddDto; -import com.ruoyi.system.dto.TErpGoodsUpdateStatus; +import com.ruoyi.system.dto.TErpGoodsInfoSaveDto; import com.ruoyi.system.dto.TErpGoodsUpdateStatusDto; +import com.ruoyi.system.importExcel.TErpGoodsExcel; import com.ruoyi.system.model.TErpGoods; import com.ruoyi.system.query.TErpGoodsQuery; -import com.ruoyi.system.query.TErpIssueReportingQuery; -import com.ruoyi.system.service.TCrmClinicService; -import com.ruoyi.system.service.TCrmSupplierService; import com.ruoyi.system.service.TErpGoodsService; -import com.ruoyi.system.service.TErpIssueReportingService; import com.ruoyi.system.vo.TErpGoodsVO; -import com.ruoyi.system.vo.TErpIssueReportingVO; +import com.ruoyi.web.controller.tool.ImportExcelUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.apache.poi.ss.usermodel.Workbook; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.StringUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; +import javax.validation.Valid; +import java.io.IOException; +import java.io.InputStream; +import java.net.URLEncoder; +import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.util.*; /** * <p> @@ -63,11 +83,13 @@ @ApiOperation(value = "供应商添加商品") @PostMapping(value = "/add") public R<Boolean> add(@Validated @RequestBody TErpGoodsAddDto dto) { - if (erpGoodsService.isExit(dto.getGoodsIdCode())) { + SysUser user = tokenService.getLoginUser().getUser(); + if (erpGoodsService.isExit(dto.getGoodsIdCode(), dto.getQuasiNumber())) { return R.fail("erp商品已存在"); } TErpGoods goods = new TErpGoods(); - goods.setSupplierId(user.getClinicId()); + goods.setSupplierClinicId(user.getUserId().toString()); + goods.setCreateId(user.getUserId().toString()); goods.setGoodsIdCode(dto.getGoodsIdCode()); goods.setQuasiNumber(dto.getQuasiNumber()); goods.setManufacturer(dto.getManufacturer()); @@ -101,5 +123,86 @@ boolean b = erpGoodsService.updateById(goods); return R.ok(b); } + + @ApiOperation(value = "供应商完善商品") + @PostMapping(value = "/saveDataInfo") + public R<Boolean> saveDataInfo(@RequestBody @Valid TErpGoodsInfoSaveDto dto) { + TErpGoods goods = erpGoodsService.getById(dto.getId()); + BeanUtils.copyProperties(dto,goods); + return R.ok(erpGoodsService.updateById(goods)); + } + + @ApiOperation(value = "供应商商品详情") + @GetMapping(value = "/detail/{id}") + public R<TErpGoods> detail( @PathVariable String id) { + TErpGoods goods = erpGoodsService.getById(id); + return R.ok(goods); + } + + @ApiOperation(value = "商品管理信息导出--导出") + @PostMapping("/export") + public void listExport(@RequestBody TErpGoodsQuery query) + { + SysUser user = tokenService.getLoginUser().getUser(); + List<TErpGoodsVO> pageList = erpGoodsService.listExport(query,user); + Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TErpGoodsVO.class, pageList); + HttpServletResponse response = WebUtils.response(); + assert response != null; + response.setContentType("application/vnd.ms-excel"); + response.setCharacterEncoding("utf-8"); + ServletOutputStream outputStream = null; + try { + String fileName = URLEncoder.encode("商品管理信息导出.xls", "utf-8"); + response.setHeader("Content-Disposition", "attachment;filename=" + fileName); + response.setContentType("application/vnd.ms-excel;charset=UTF-8"); + response.setHeader("Pragma", "no-cache"); + response.setHeader("Cache-Control", "no-cache"); + outputStream = response.getOutputStream(); + workbook.write(outputStream); + } catch (IOException e) { + e.printStackTrace(); + } finally { + try { + outputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + + @ApiOperation(value = "商品管理信息导入") + @PostMapping("/importFile") + public AjaxResult importFile(@RequestParam(value = "file") MultipartFile file ) { + + SysUser user = tokenService.getLoginUser().getUser(); + JSONObject jsonObject = new JSONObject(); + ImportParams params = new ImportParams(); + params.setHeadRows(1); //表头行数 + String msg = null; + InputStream inputStream = null; + TErpGoods goods = new TErpGoods(); + try { + inputStream = file.getInputStream(); + List<TErpGoodsExcel> carAnnuallyImportExcels = ExcelImportUtil.importExcel(inputStream, TErpGoodsExcel.class, params); + // 处理车辆数据 + for (TErpGoodsExcel erpGoodsExcel : carAnnuallyImportExcels) { + System.out.println(erpGoodsExcel); + } + } catch (Exception e) { + e.printStackTrace(); + return AjaxResult.error("车辆年检记录导入失败!"); + }finally { + try { + inputStream.close(); + } catch (IOException e) { + throw new ServiceException(e.getMessage()); + } + } + return AjaxResult.success(jsonObject); + + } + + } -- Gitblit v1.7.1