package com.ruoyi.basic.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.basic.dto.BusinessDescriptionDto; import com.ruoyi.basic.dto.BusinessOpportunityDto; import com.ruoyi.basic.service.BusinessOpportunityService; import com.ruoyi.framework.aspectj.lang.annotation.Log; import com.ruoyi.framework.aspectj.lang.enums.BusinessType; import com.ruoyi.framework.web.domain.R; import io.jsonwebtoken.lang.Collections; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.AllArgsConstructor; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import java.util.List; /** *

* 商机管理 前端控制器 *

* * @author 芯导软件(江苏)有限公司 * @since 2026-05-07 04:46:10 */ @RestController @RequestMapping("/businessOpportunity") @AllArgsConstructor @Tag(name = "商机管理") public class BusinessOpportunityController { private final BusinessOpportunityService businessOpportunityService; @Operation(summary = "获取省级列表") @GetMapping("/getProvinceList") public R getProvinceList() { return R.ok(businessOpportunityService.getProvinceList()); } @Operation(summary = "通过省级id获取城市列表") @GetMapping("/getCityList") public R getCityList(@RequestParam("provinceId") Integer provinceId) { return R.ok(businessOpportunityService.getCityList(provinceId)); } @GetMapping("/listPage") @Operation(summary = "商机列表") public R listPage(Page page, BusinessOpportunityDto businessOpportunityDto) { IPage businessOpportunityIPage = businessOpportunityService.listPage(page, businessOpportunityDto); return R.ok(businessOpportunityIPage); } @PostMapping("/add") @Operation(summary = "添加商机") @Log(title = "商机管理-添加商机", businessType = BusinessType.INSERT) @Transactional(rollbackFor = Exception.class) public R add(@RequestBody BusinessOpportunityDto businessOpportunity) throws Exception{ return businessOpportunityService.add(businessOpportunity); } @PostMapping("/addDescription") @Operation(summary = "添加商机描述") @Log(title = "商机管理-添加商机描述", businessType = BusinessType.INSERT) @Transactional(rollbackFor = Exception.class) public R addDescription(@RequestBody BusinessDescriptionDto businessDescription) throws Exception{ return businessOpportunityService.addDescription(businessDescription); } @PutMapping("/update") @Operation( summary = "修改商机") @Log(title = "商机管理-修改商机", businessType = BusinessType.UPDATE) @Transactional(rollbackFor = Exception.class) public R update(@RequestBody BusinessOpportunityDto businessOpportunity) throws Exception{ return businessOpportunityService.updateBusinessOpportunityById(businessOpportunity) ? R.ok() : R.fail(); } @DeleteMapping("/delete") @Operation( summary = "删除商机") @Log(title = "商机管理-删除商机", businessType = BusinessType.DELETE) public R delete(@RequestBody List ids) { if(Collections.isEmpty(ids)) return R.fail("请选择要删除的商机"); return businessOpportunityService.delete(ids) ? R.ok() : R.fail(); } }