From e685b58fd40cf28a20844643d70cc5f5b46ca037 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期五, 10 四月 2026 11:08:17 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/gtzxinglijicun
---
server/admin/src/main/java/com/doumee/api/business/PricingRuleController.java | 184 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 184 insertions(+), 0 deletions(-)
diff --git a/server/admin/src/main/java/com/doumee/api/business/PricingRuleController.java b/server/admin/src/main/java/com/doumee/api/business/PricingRuleController.java
new file mode 100644
index 0000000..452168f
--- /dev/null
+++ b/server/admin/src/main/java/com/doumee/api/business/PricingRuleController.java
@@ -0,0 +1,184 @@
+package com.doumee.api.business;
+
+import com.doumee.api.BaseController;
+import com.doumee.core.annotation.excel.ExcelExporter;
+import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.PricingRule;
+import com.doumee.dao.dto.LocalStoragePricingSaveDTO;
+import com.doumee.dao.dto.RemoteDeliveryPricingSaveDTO;
+import com.doumee.dao.dto.EstimatedDeliverySaveDTO;
+import com.doumee.dao.dto.StoreDepositSaveDTO;
+import com.doumee.dao.dto.RevenueShareSaveDTO;
+import com.doumee.dao.vo.LocalStoragePricingVO;
+import com.doumee.dao.vo.RemoteDeliveryPricingVO;
+import com.doumee.dao.vo.EstimatedDeliveryVO;
+import com.doumee.dao.vo.StoreDepositVO;
+import com.doumee.dao.vo.RevenueShareVO;
+import com.doumee.service.business.PricingRuleService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 璁′环瑙勫垯閰嶇疆
+ * @author rk
+ * @date 2026/04/08
+ */
+@Api(tags = "璁′环瑙勫垯閰嶇疆")
+@RestController
+@RequestMapping("/business/pricingRule")
+public class PricingRuleController extends BaseController {
+
+ @Autowired
+ private PricingRuleService pricingRuleService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @RequiresPermissions("business:pricingRule:create")
+ public ApiResponse create(@RequestBody PricingRule pricingRule) {
+ return ApiResponse.success(pricingRuleService.create(pricingRule));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @RequiresPermissions("business:pricingRule:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ pricingRuleService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @RequiresPermissions("business:pricingRule:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+ String[] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ pricingRuleService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @RequiresPermissions("business:pricingRule:update")
+ public ApiResponse updateById(@RequestBody PricingRule pricingRule) {
+ pricingRuleService.updateById(pricingRule);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @RequiresPermissions("business:pricingRule:query")
+ public ApiResponse<PageData<PricingRule>> findPage(@RequestBody PageWrap<PricingRule> pageWrap) {
+ return ApiResponse.success(pricingRuleService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @RequiresPermissions("business:pricingRule:exportExcel")
+ public void exportExcel(@RequestBody PageWrap<PricingRule> pageWrap, HttpServletResponse response) {
+ List<PricingRule> pricingRuleList = pricingRuleService.findPage(pageWrap).getRecords();
+ ExcelExporter.build(PricingRule.class).export(pricingRuleList, "璁′环瑙勫垯閰嶇疆", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @RequiresPermissions("business:pricingRule:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(pricingRuleService.findById(id));
+ }
+
+ @PreventRepeat
+ @ApiOperation("鎵归噺淇濆瓨灏卞湴瀛樺彇瑙勫垯")
+ @PostMapping("/localStorage/batchSave")
+ @RequiresPermissions("business:pricingRule:create")
+ public ApiResponse batchSaveLocalStoragePricing(@RequestBody @Validated LocalStoragePricingSaveDTO request) {
+ pricingRuleService.batchSaveLocalStoragePricing(request);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏌ヨ灏卞湴瀛樺彇瑙勫垯鍒楄〃")
+ @GetMapping("/localStorage/list")
+ @RequiresPermissions("business:pricingRule:query")
+ public ApiResponse<List<LocalStoragePricingVO>> listLocalStoragePricing(@RequestParam Integer cityId) {
+ return ApiResponse.success(pricingRuleService.listLocalStoragePricing(cityId));
+ }
+
+ @PreventRepeat
+ @ApiOperation("鎵归噺淇濆瓨寮傚湴瀵勯�佽鍒�")
+ @PostMapping("/remoteDelivery/batchSave")
+ @RequiresPermissions("business:pricingRule:create")
+ public ApiResponse batchSaveRemoteDeliveryPricing(@RequestBody @Validated RemoteDeliveryPricingSaveDTO request) {
+ pricingRuleService.batchSaveRemoteDeliveryPricing(request);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏌ヨ寮傚湴瀵勯�佽鍒欏垪琛�")
+ @GetMapping("/remoteDelivery/list")
+ @RequiresPermissions("business:pricingRule:query")
+ public ApiResponse<List<RemoteDeliveryPricingVO>> listRemoteDeliveryPricing(@RequestParam Integer cityId) {
+ return ApiResponse.success(pricingRuleService.listRemoteDeliveryPricing(cityId));
+ }
+
+ @PreventRepeat
+ @ApiOperation("淇濆瓨棰勮鏃舵晥閰嶇疆")
+ @PostMapping("/estimatedDelivery/save")
+ @RequiresPermissions("business:pricingRule:create")
+ public ApiResponse saveEstimatedDelivery(@RequestBody @Validated EstimatedDeliverySaveDTO request) {
+ pricingRuleService.saveEstimatedDelivery(request);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏌ヨ棰勮鏃舵晥閰嶇疆")
+ @GetMapping("/estimatedDelivery/list")
+ @RequiresPermissions("business:pricingRule:query")
+ public ApiResponse<EstimatedDeliveryVO> listEstimatedDelivery(@RequestParam Integer cityId) {
+ return ApiResponse.success(pricingRuleService.getEstimatedDelivery(cityId));
+ }
+
+ @PreventRepeat
+ @ApiOperation("鎵归噺淇濆瓨闂ㄥ簵娉ㄥ唽鎶奸噾")
+ @PostMapping("/storeDeposit/batchSave")
+ @RequiresPermissions("business:pricingRule:create")
+ public ApiResponse batchSaveStoreDeposit(@RequestBody @Validated StoreDepositSaveDTO request) {
+ pricingRuleService.batchSaveStoreDeposit(request);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏌ヨ闂ㄥ簵娉ㄥ唽鎶奸噾鍒楄〃")
+ @GetMapping("/storeDeposit/list")
+ @RequiresPermissions("business:pricingRule:query")
+ public ApiResponse<List<StoreDepositVO>> listStoreDeposit(@RequestParam Integer cityId) {
+ return ApiResponse.success(pricingRuleService.listStoreDeposit(cityId));
+ }
+
+ @PreventRepeat
+ @ApiOperation("鎵归噺淇濆瓨鍒嗘垚姣斾緥")
+ @PostMapping("/revenueShare/batchSave")
+ @RequiresPermissions("business:pricingRule:create")
+ public ApiResponse batchSaveRevenueShare(@RequestBody @Validated RevenueShareSaveDTO request) {
+ pricingRuleService.batchSaveRevenueShare(request);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏌ヨ鍒嗘垚姣斾緥鍒楄〃")
+ @GetMapping("/revenueShare/list")
+ @RequiresPermissions("business:pricingRule:query")
+ public ApiResponse<List<RevenueShareVO>> listRevenueShare(@RequestParam Integer cityId) {
+ return ApiResponse.success(pricingRuleService.listRevenueShare(cityId));
+ }
+
+}
--
Gitblit v1.9.3