diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/SupplierController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/SupplierController.java index 3e3236f..8df7fa4 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/SupplierController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/SupplierController.java @@ -77,7 +77,6 @@ public class SupplierController extends BaseController { * 获取供应商信息详细信息 */ @ApiOperation(value = "获取供应商信息详细信息") - //@RequiresPermissions("ims:supplier:query") @GetMapping(value = "/{supplierId}") public AjaxResult getInfo(@PathVariable("supplierId") Long supplierId) { return success(supplierService.selectSupplierBySupplierId(supplierId)); @@ -87,8 +86,6 @@ public class SupplierController extends BaseController { * 新增供应商信息 */ @ApiOperation(value = "新增供应商信息") - //@PreventRepeatSubmit - //@RequiresPermissions("ims:supplier:add") @SysLog(title = "供应商信息", businessType = OperaType.INSERT, logType = 1,module = "仓储管理->新增供应商信息") @PostMapping("/add") public AjaxResult add(@RequestBody SupplierAddDTO supplier) { @@ -103,8 +100,6 @@ public class SupplierController extends BaseController { * 修改供应商信息 */ @ApiOperation(value = "修改供应商信息") - //@PreventRepeatSubmit - //@RequiresPermissions("ims:supplier:edit") @SysLog(title = "供应商信息", businessType = OperaType.UPDATE, logType = 1,module = "仓储管理->修改供应商信息") @PostMapping("/edit") public AjaxResult edit(@RequestBody SupplierEditDTO supplierEditDTO) { @@ -119,8 +114,6 @@ public class SupplierController extends BaseController { * 删除供应商信息 */ @ApiOperation(value = "删除供应商信息") - //@PreventRepeatSubmit - //@RequiresPermissions("ims:supplier:remove") @SysLog(title = "供应商信息", businessType = OperaType.DELETE, logType = 1,module = "仓储管理->删除供应商信息") @PostMapping("/remove") public AjaxResult remove(@RequestBody SupplierDeleteDTO supplierDeleteDTO) { @@ -133,4 +126,13 @@ public class SupplierController extends BaseController { this.supplierService.editSupplierStatus(content); return success(); } + + @GetMapping({"/supply_statistics"}) + @ApiOperation("供应商供货情况统计") + public TableDataInfo supplyStatistics(SupplyStatisticsPageDTO content) { + startPage(); + return getDataTable(supplierService.supplyStatistics(content)); + } + + } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/dto/SupplyStatisticsPageDTO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/dto/SupplyStatisticsPageDTO.java new file mode 100644 index 0000000..43a8178 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/dto/SupplyStatisticsPageDTO.java @@ -0,0 +1,28 @@ +package com.bonus.canteen.core.ims.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDate; +import java.util.List; + +@ApiModel +@Data +public class SupplyStatisticsPageDTO { + + @ApiModelProperty("开始日期") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate startTime; + + @DateTimeFormat(pattern = "yyyy-MM-dd") + @ApiModelProperty("结束日期") + private LocalDate endTime; + + @ApiModelProperty("供应商id") + private Long supplierId; + + @ApiModelProperty("区域id列表") + private List areaIdList; +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/SupplierMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/SupplierMapper.java index 8fb55a9..d3ce346 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/SupplierMapper.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/SupplierMapper.java @@ -5,7 +5,9 @@ import java.util.List; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.bonus.canteen.core.ims.domain.Supplier; import com.bonus.canteen.core.ims.dto.SupplierPageDTO; +import com.bonus.canteen.core.ims.dto.SupplyStatisticsPageDTO; import com.bonus.canteen.core.ims.vo.SupplierPageVO; +import com.bonus.canteen.core.ims.vo.SupplyStatisticsPageVO; import org.apache.ibatis.annotations.Param; /** @@ -66,4 +68,6 @@ public interface SupplierMapper extends BaseMapper { String getMaxSupplierCode(); List selectAllList(@Param("content") SupplierPageDTO content, @Param("delFlag") Integer delFlag); + + List supplyStatistics(@Param("content")SupplyStatisticsPageDTO supplyStatisticsPageDTO, @Param("delFlag") Integer key); } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/ISupplierService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/ISupplierService.java index 1115750..00ea6c4 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/ISupplierService.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/ISupplierService.java @@ -4,11 +4,9 @@ import java.util.List; import com.baomidou.mybatisplus.extension.service.IService; import com.bonus.canteen.core.ims.domain.Supplier; -import com.bonus.canteen.core.ims.dto.SupplierAddDTO; -import com.bonus.canteen.core.ims.dto.SupplierEditDTO; -import com.bonus.canteen.core.ims.dto.SupplierEditStatusDTO; -import com.bonus.canteen.core.ims.dto.SupplierPageDTO; +import com.bonus.canteen.core.ims.dto.*; import com.bonus.canteen.core.ims.vo.SupplierPageVO; +import com.bonus.canteen.core.ims.vo.SupplyStatisticsPageVO; /** * 供应商信息Service接口 @@ -66,4 +64,6 @@ public interface ISupplierService extends IService { public int deleteSupplierBySupplierId(Long supplierId); void editSupplierStatus(SupplierEditStatusDTO content); + + List supplyStatistics(SupplyStatisticsPageDTO content); } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/SupplierServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/SupplierServiceImpl.java index 2a2bbde..52729d8 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/SupplierServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/SupplierServiceImpl.java @@ -21,6 +21,7 @@ import com.bonus.canteen.core.ims.service.*; import com.bonus.canteen.core.ims.vo.SupplierDeliverVO; import com.bonus.canteen.core.ims.vo.SupplierPageVO; import com.bonus.canteen.core.ims.vo.SupplierQualificationDetailPageVO; +import com.bonus.canteen.core.ims.vo.SupplyStatisticsPageVO; import com.bonus.canteen.core.kitchen.domain.KitchenDeviceInfo; import com.bonus.common.core.exception.ServiceException; import com.bonus.common.core.utils.DateUtils; @@ -259,4 +260,13 @@ public class SupplierServiceImpl extends ServiceImpl String username = SecurityUtils.getLoginUser().getUserid()+""; this.baseMapper.update(null,Wrappers.lambdaUpdate(Supplier.class).eq(Supplier::getSupplierId, content.getSupplierId()).set(Supplier::getStatus, content.getStatus()).set(Supplier::getUpdateBy, username)); } + + @Override + public List supplyStatistics(SupplyStatisticsPageDTO supplyStatisticsPageDTO) { + List pageVOList = supplierMapper.supplyStatistics(supplyStatisticsPageDTO, DelFlagEnum.DEL_FALSE.key()); + //TODO 合格率 + //TODO 订单数量 + + return pageVOList; + } } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/vo/SupplyStatisticsPageVO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/vo/SupplyStatisticsPageVO.java new file mode 100644 index 0000000..c602aa5 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/vo/SupplyStatisticsPageVO.java @@ -0,0 +1,38 @@ +package com.bonus.canteen.core.ims.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.time.LocalDate; + +@ApiModel +@Data +public class SupplyStatisticsPageVO { + @ApiModelProperty("供应商编号") + private String supplierCode; + @ApiModelProperty("供应商id") + private Long supplierId; + @ApiModelProperty("供应商名称") + private String supplierName; + @ApiModelProperty("所属区域id") + private Long areaId; + @ApiModelProperty("所属区域") + private String areaName; + @ApiModelProperty("中标次数") + private Integer bidNumbers; + @ApiModelProperty("累计中标金额") + private Long cumulativeBidAmount; + @ApiModelProperty("交货合格率(%)") + private BigDecimal deliveryPassRate; + @ApiModelProperty("上次中标日期") + private LocalDate lastBidDate; + @ApiModelProperty("上次中标金额") + private Long lastBidAmount; + @ApiModelProperty("订单数量") + private Integer orderNum; + @ApiModelProperty("订单金额") + private Long orderAmount; + +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/SupplierMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/SupplierMapper.xml index bba8bf4..7bfc79f 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/SupplierMapper.xml +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/SupplierMapper.xml @@ -380,4 +380,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + +