package com.ruoyi.web.controller.tool; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.flowable.domain.vo.FlowTaskVo; import com.ruoyi.flowable.service.crm.CrmService; import com.ruoyi.system.domain.crm.Customer; import com.ruoyi.system.service.crm.ICustomerService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Map; /** * crm系统 */ @Api(tags = "CRM系统") @RestController @RequestMapping("/crmSystem") public class CrmController extends BaseController { @Autowired private CrmService crmService; @Autowired private ICustomerService customerService; @ApiOperation(value = "发起流程") @PostMapping("/start/{procDefId}") public AjaxResult start(@ApiParam(value = "流程定义id") @PathVariable(value = "procDefId") String procDefId, @ApiParam(value = "变量集合,json对象") @RequestBody Map variables ) { return crmService.startProcessInstanceById(procDefId,variables); } /** * 获取公司客户列表 */ @ApiOperation(value = "获取公司客户列表") @PreAuthorize("@ss.hasPermi('crmSystem:crm:list')") @GetMapping("/list") public TableDataInfo list(Customer customer) { startPage(); List list = customerService.selectCustomerList(customer); return getDataTable(list); } @ApiOperation(value = "获取待办列表", response = Customer.class) @GetMapping(value = "/myTaskList") public TableDataInfo myTaskList(@ApiParam(value = "客户实体") @RequestBody Customer customer) { startPage(); List list = customerService.myTaskList(customer); return getDataTable(list); } @ApiOperation(value = "修改客户和项目信息,进入流程") @PostMapping("/submit") public AjaxResult submit(@ApiParam(value = "流程定义id") @PathVariable(value = "procDefId") String procDefId, @ApiParam(value = "变量集合,json对象") @RequestBody Map variables ) { return AjaxResult.success("审批成功"); } @ApiOperation(value = "审批任务") @PostMapping(value = "/complete") public AjaxResult complete(@RequestBody FlowTaskVo flowTaskVo) { return AjaxResult.success("审批成功"); } }