From 9d60fbed01372507aeb6f15b569c63510e69c77e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=85=95=E4=B8=8B?= <484014559@qq.com> Date: Wed, 6 Mar 2024 10:57:08 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=95=86=E6=9C=BA=EF=BC=8C?= =?UTF-8?q?=E8=B7=9F=E8=BF=9B=E8=AE=B0=E5=BD=95\=E8=AE=A1=E5=88=92?= =?UTF-8?q?=EF=BC=8C=E6=9C=8D=E5=8A=A1=E5=B7=A5=E5=8D=95=EF=BC=8C=E8=81=94?= =?UTF-8?q?=E7=B3=BB=E4=BA=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 20 +- ruoyi-admin/pom.xml | 16 +- .../src/main/resources/application-druid.yml | 6 +- .../src/main/resources/application.yml | 3 +- .../system/controller/BusinessController.java | 141 ++ .../controller/ContactPersonController.java | 110 ++ .../controller/FollowUpPlanController.java | 98 ++ .../controller/FollowUpRecordController.java | 98 ++ .../controller/ServiceTicketController.java | 98 ++ .../com/ruoyi/crm/system/domain/Business.java | 357 +++++ .../crm/system/domain/ContactPerson.java | 284 ++++ .../ruoyi/crm/system/domain/FollowUpPlan.java | 187 +++ .../crm/system/domain/FollowUpRecord.java | 257 ++++ .../crm/system/domain/ServiceTicket.java | 497 ++++++ .../crm/system/mapper/BusinessMapper.java | 69 + .../system/mapper/ContactPersonMapper.java | 62 + .../crm/system/mapper/FollowUpPlanMapper.java | 63 + .../system/mapper/FollowUpRecordMapper.java | 63 + .../system/mapper/ServiceTicketMapper.java | 62 + .../crm/system/service/IBusinessService.java | 74 + .../system/service/IContactPersonService.java | 63 + .../system/service/IFollowUpPlanService.java | 63 + .../service/IFollowUpRecordService.java | 63 + .../system/service/IServiceTicketService.java | 63 + .../service/impl/BusinessServiceImpl.java | 176 +++ .../impl/ContactPersonServiceImpl.java | 97 ++ .../service/impl/FollowUpPlanServiceImpl.java | 97 ++ .../impl/FollowUpRecordServiceImpl.java | 97 ++ .../impl/ServiceTicketServiceImpl.java | 97 ++ .../mapper/crm/CrmCustomerMapper.xml | 2 +- .../main/resources/system/BusinessMapper.xml | 185 +++ .../resources/system/ContactPersonMapper.xml | 156 ++ .../resources/system/FollowUpPlanMapper.xml | 121 ++ .../resources/system/FollowUpRecordMapper.xml | 148 ++ .../resources/system/ServiceTicketMapper.xml | 227 +++ ruoyi-ui/src/api/crm/business.js | 53 + ruoyi-ui/src/api/crm/clues.js | 9 + ruoyi-ui/src/api/crm/comment.js | 10 +- ruoyi-ui/src/api/crm/person.js | 44 + ruoyi-ui/src/api/crm/plan.js | 44 + ruoyi-ui/src/api/crm/record.js | 44 + ruoyi-ui/src/api/crm/ticket.js | 44 + ruoyi-ui/src/views/crm/business/index.vue | 766 ++++++++++ .../src/views/crm/clues/AddAssociation.vue | 112 ++ ruoyi-ui/src/views/crm/clues/list.vue | 470 +++--- ruoyi-ui/src/views/crm/clues/person-list.vue | 450 +++--- ruoyi-ui/src/views/crm/customer/Comment.vue | 20 +- ruoyi-ui/src/views/crm/person/index.vue | 492 ++++++ ruoyi-ui/src/views/crm/plan/index.vue | 404 +++++ ruoyi-ui/src/views/crm/pool/list.vue | 2 +- ruoyi-ui/src/views/crm/record/index.vue | 458 ++++++ ruoyi-ui/src/views/crm/ticket/index.vue | 789 ++++++++++ ruoyi-ui/src/views/system/user/index.vue | 6 +- sql/rycrm-tenant-1-zzw-20240306.sql | 1329 +++++++++++++++++ 54 files changed, 9291 insertions(+), 475 deletions(-) create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/BusinessController.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ContactPersonController.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/FollowUpPlanController.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/FollowUpRecordController.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ServiceTicketController.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/Business.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ContactPerson.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/FollowUpPlan.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/FollowUpRecord.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ServiceTicket.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/BusinessMapper.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/ContactPersonMapper.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/FollowUpPlanMapper.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/FollowUpRecordMapper.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/ServiceTicketMapper.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IBusinessService.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IContactPersonService.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IFollowUpPlanService.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IFollowUpRecordService.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IServiceTicketService.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/BusinessServiceImpl.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ContactPersonServiceImpl.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/FollowUpPlanServiceImpl.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/FollowUpRecordServiceImpl.java create mode 100644 ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ServiceTicketServiceImpl.java create mode 100644 ruoyi-crm/src/main/resources/system/BusinessMapper.xml create mode 100644 ruoyi-crm/src/main/resources/system/ContactPersonMapper.xml create mode 100644 ruoyi-crm/src/main/resources/system/FollowUpPlanMapper.xml create mode 100644 ruoyi-crm/src/main/resources/system/FollowUpRecordMapper.xml create mode 100644 ruoyi-crm/src/main/resources/system/ServiceTicketMapper.xml create mode 100644 ruoyi-ui/src/api/crm/business.js create mode 100644 ruoyi-ui/src/api/crm/person.js create mode 100644 ruoyi-ui/src/api/crm/plan.js create mode 100644 ruoyi-ui/src/api/crm/record.js create mode 100644 ruoyi-ui/src/api/crm/ticket.js create mode 100644 ruoyi-ui/src/views/crm/business/index.vue create mode 100644 ruoyi-ui/src/views/crm/clues/AddAssociation.vue create mode 100644 ruoyi-ui/src/views/crm/person/index.vue create mode 100644 ruoyi-ui/src/views/crm/plan/index.vue create mode 100644 ruoyi-ui/src/views/crm/record/index.vue create mode 100644 ruoyi-ui/src/views/crm/ticket/index.vue create mode 100644 sql/rycrm-tenant-1-zzw-20240306.sql diff --git a/pom.xml b/pom.xml index 718de80..68ed53d 100644 --- a/pom.xml +++ b/pom.xml @@ -179,18 +179,18 @@ - - com.ruoyi - ruoyi-quartz - ${ruoyi.version} - + + + + + - - com.ruoyi - ruoyi-generator - ${ruoyi.version} - + + + + + diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml index 767a536..2ed571b 100644 --- a/ruoyi-admin/pom.xml +++ b/ruoyi-admin/pom.xml @@ -50,16 +50,16 @@ - - com.ruoyi - ruoyi-quartz - + + + + - - com.ruoyi - ruoyi-generator - + + + + diff --git a/ruoyi-admin/src/main/resources/application-druid.yml b/ruoyi-admin/src/main/resources/application-druid.yml index 41a4021..ebe7312 100644 --- a/ruoyi-admin/src/main/resources/application-druid.yml +++ b/ruoyi-admin/src/main/resources/application-druid.yml @@ -6,9 +6,11 @@ spring: druid: # 主库数据源 master: - url: jdbc:mysql://120.46.37.243:3306/rycrm-master?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8 +# url: jdbc:mysql://120.46.37.243:3306/rycrm-master?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8 + url: jdbc:mysql://127.0.0.1:3306/rycrm-master?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8 username: root - password: xpower1234 + password: root +# password: xpower1234 # 从库数据源 slave: # 从数据源开关/默认关闭 diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 75f0859..3655de2 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -96,7 +96,8 @@ mybatis: # 搜索指定包别名 typeAliasesPackage: com.ruoyi.**.domain # 配置mapper的扫描,找到所有的mapper.xml映射文件 - mapperLocations: classpath*:mapper/**/*Mapper.xml +# mapperLocations: classpath*:mapper/**/*Mapper.xml + mapperLocations: classpath*:*/**/*Mapper.xml # 加载全局的配置文件 configLocation: classpath:mybatis/mybatis-config.xml diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/BusinessController.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/BusinessController.java new file mode 100644 index 0000000..aeb50ae --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/BusinessController.java @@ -0,0 +1,141 @@ +package com.ruoyi.crm.system.controller; + +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.crm.system.domain.Business; +import com.ruoyi.crm.system.domain.FollowUpRecord; +import com.ruoyi.crm.system.service.IBusinessService; +import com.ruoyi.crm.system.service.IFollowUpRecordService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.http.HttpServletResponse; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.util.List; + +/** + * 商机Controller + * + * @author ruoyi + * @date 2024-02-29 + */ +@RestController +@RequestMapping("/system/business") +public class BusinessController extends BaseController +{ + @Autowired + private IBusinessService businessService; + + @Autowired + private IFollowUpRecordService followUpRecordService; + + /** + * 查询商机列表 + */ + @PreAuthorize("@ss.hasPermi('system:business:list')") + @GetMapping("/list") + public TableDataInfo list(Business business) + { + startPage(); + List list = businessService.selectBusinessList(business); + return getDataTable(list); + } + + /** + * 导出商机列表 + */ + @PreAuthorize("@ss.hasPermi('system:business:export')") + @Log(title = "商机", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, Business business) + { + List list = businessService.selectBusinessList(business); + ExcelUtil util = new ExcelUtil(Business.class); + util.exportExcel(response, list, "商机数据"); + } + + /** + * 获取商机详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:business:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(businessService.selectBusinessById(id)); + } + + /** + * 新增商机 + */ + @PreAuthorize("@ss.hasPermi('system:business:add')") + @Log(title = "商机", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Business business) + { + return toAjax(businessService.insertBusiness(business)); + } + + /** + * 修改商机 + */ + @PreAuthorize("@ss.hasPermi('system:business:edit')") + @Log(title = "商机", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Business business) + { + return toAjax(businessService.updateBusiness(business)); + } + + /** + * 删除商机 + */ + @PreAuthorize("@ss.hasPermi('system:business:remove')") + @Log(title = "商机", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(businessService.deleteBusinessByIds(ids)); + } + + /** + * 新增跟进记录 + */ + @PreAuthorize("@ss.hasPermi('system:business:edit')") + @Log(title = "跟进记录", businessType = BusinessType.INSERT) + @PostMapping("/addRecords") + public AjaxResult addRecords(@RequestBody FollowUpRecord followUpRecord) + { + LocalDate currentDate = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); + String formattedDate = currentDate.format(formatter); + //根据当前时间生成客户编号 + followUpRecord.setCustomerNumber("zy_"+formattedDate+followUpRecord.getCustomerNumber()); + return toAjax(followUpRecordService.insertFollowUpRecord(followUpRecord)); + } + @Log(title = "用户管理", businessType = BusinessType.IMPORT) + @PreAuthorize("@ss.hasPermi('system:business:add')") + @PostMapping("/importData") + public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception + { + ExcelUtil util = new ExcelUtil(Business.class); + List businessList = util.importExcel(file.getInputStream()); + String operName = getUsername(); + String message = businessService.importBusines(businessList, updateSupport, operName); + return AjaxResult.success(message); + } + + @PostMapping("/importTemplate") + public void importTemplate(HttpServletResponse response) + { + ExcelUtil util = new ExcelUtil(Business.class); + util.importTemplateExcel(response, "商机数据"); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ContactPersonController.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ContactPersonController.java new file mode 100644 index 0000000..5d77c79 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ContactPersonController.java @@ -0,0 +1,110 @@ +package com.ruoyi.crm.system.controller; + +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.crm.system.domain.ContactPerson; +import com.ruoyi.crm.system.service.IContactPersonService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 联系人Controller + * + * @author ruoyi + * @date 2024-02-29 + */ +@RestController +@RequestMapping("/system/person") +public class ContactPersonController extends BaseController +{ + @Autowired + private IContactPersonService contactPersonService; + + /** + * 查询联系人列表 + */ + @PreAuthorize("@ss.hasPermi('system:person:list')") + @GetMapping("/list") + public TableDataInfo list(ContactPerson contactPerson) + { + startPage(); + List list = contactPersonService.selectContactPersonList(contactPerson); + return getDataTable(list); + } + + /** + * 导出联系人列表 + */ + @PreAuthorize("@ss.hasPermi('system:person:export')") + @Log(title = "联系人", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ContactPerson contactPerson) + { + List list = contactPersonService.selectContactPersonList(contactPerson); + ExcelUtil util = new ExcelUtil(ContactPerson.class); + util.exportExcel(response, list, "联系人数据"); + } + + /** + * 获取联系人详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:person:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(contactPersonService.selectContactPersonById(id)); + } + + /** + * 新增联系人 + */ + @PreAuthorize("@ss.hasPermi('system:person:add')") + @Log(title = "联系人", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ContactPerson contactPerson) + { + return toAjax(contactPersonService.insertContactPerson(contactPerson)); + } + + /** + * 修改联系人 + */ + @PreAuthorize("@ss.hasPermi('system:person:edit')") + @Log(title = "联系人", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ContactPerson contactPerson) + { + return toAjax(contactPersonService.updateContactPerson(contactPerson)); + } + + /** + * 删除联系人 + */ + @PreAuthorize("@ss.hasPermi('system:person:remove')") + @Log(title = "联系人", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(contactPersonService.deleteContactPersonByIds(ids)); + } + + /** + * 新增联系人 + */ +// @PreAuthorize("@ss.hasPermi('system:person:add')") +// @Log(title = "联系人", businessType = BusinessType.INSERT) +// @PostMapping("/test") +// public AjaxResult test(@RequestBody Map map) +// { +// System.out.println(map.toString()); +// return AjaxResult.success("s"); +// } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/FollowUpPlanController.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/FollowUpPlanController.java new file mode 100644 index 0000000..e5eccd4 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/FollowUpPlanController.java @@ -0,0 +1,98 @@ +package com.ruoyi.crm.system.controller; + +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.crm.system.domain.FollowUpPlan; +import com.ruoyi.crm.system.service.IFollowUpPlanService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 跟进计划Controller + * + * @author ruoyi + * @date 2024-03-01 + */ +@RestController +@RequestMapping("/system/plan") +public class FollowUpPlanController extends BaseController +{ + @Autowired + private IFollowUpPlanService followUpPlanService; + + /** + * 查询跟进计划列表 + */ + @PreAuthorize("@ss.hasPermi('system:plan:list')") + @GetMapping("/list") + public TableDataInfo list(FollowUpPlan followUpPlan) + { + startPage(); + List list = followUpPlanService.selectFollowUpPlanList(followUpPlan); + return getDataTable(list); + } + + /** + * 导出跟进计划列表 + */ + @PreAuthorize("@ss.hasPermi('system:plan:export')") + @Log(title = "跟进计划", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, FollowUpPlan followUpPlan) + { + List list = followUpPlanService.selectFollowUpPlanList(followUpPlan); + ExcelUtil util = new ExcelUtil(FollowUpPlan.class); + util.exportExcel(response, list, "跟进计划数据"); + } + + /** + * 获取跟进计划详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:plan:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(followUpPlanService.selectFollowUpPlanById(id)); + } + + /** + * 新增跟进计划 + */ + @PreAuthorize("@ss.hasPermi('system:plan:add')") + @Log(title = "跟进计划", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody FollowUpPlan followUpPlan) + { + return toAjax(followUpPlanService.insertFollowUpPlan(followUpPlan)); + } + + /** + * 修改跟进计划 + */ + @PreAuthorize("@ss.hasPermi('system:plan:edit')") + @Log(title = "跟进计划", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody FollowUpPlan followUpPlan) + { + return toAjax(followUpPlanService.updateFollowUpPlan(followUpPlan)); + } + + /** + * 删除跟进计划 + */ + @PreAuthorize("@ss.hasPermi('system:plan:remove')") + @Log(title = "跟进计划", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(followUpPlanService.deleteFollowUpPlanByIds(ids)); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/FollowUpRecordController.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/FollowUpRecordController.java new file mode 100644 index 0000000..d90fc6e --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/FollowUpRecordController.java @@ -0,0 +1,98 @@ +package com.ruoyi.crm.system.controller; + +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.crm.system.domain.FollowUpRecord; +import com.ruoyi.crm.system.service.IFollowUpRecordService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 跟进记录Controller + * + * @author ruoyi + * @date 2024-03-01 + */ +@RestController +@RequestMapping("/system/record") +public class FollowUpRecordController extends BaseController +{ + @Autowired + private IFollowUpRecordService followUpRecordService; + + /** + * 查询跟进记录列表 + */ + @PreAuthorize("@ss.hasPermi('system:record:list')") + @GetMapping("/list") + public TableDataInfo list(FollowUpRecord followUpRecord) + { + startPage(); + List list = followUpRecordService.selectFollowUpRecordList(followUpRecord); + return getDataTable(list); + } + + /** + * 导出跟进记录列表 + */ + @PreAuthorize("@ss.hasPermi('system:record:export')") + @Log(title = "跟进记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, FollowUpRecord followUpRecord) + { + List list = followUpRecordService.selectFollowUpRecordList(followUpRecord); + ExcelUtil util = new ExcelUtil(FollowUpRecord.class); + util.exportExcel(response, list, "跟进记录数据"); + } + + /** + * 获取跟进记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:record:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(followUpRecordService.selectFollowUpRecordById(id)); + } + + /** + * 新增跟进记录 + */ + @PreAuthorize("@ss.hasPermi('system:record:add')") + @Log(title = "跟进记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody FollowUpRecord followUpRecord) + { + return toAjax(followUpRecordService.insertFollowUpRecord(followUpRecord)); + } + + /** + * 修改跟进记录 + */ + @PreAuthorize("@ss.hasPermi('system:record:edit')") + @Log(title = "跟进记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody FollowUpRecord followUpRecord) + { + return toAjax(followUpRecordService.updateFollowUpRecord(followUpRecord)); + } + + /** + * 删除跟进记录 + */ + @PreAuthorize("@ss.hasPermi('system:record:remove')") + @Log(title = "跟进记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(followUpRecordService.deleteFollowUpRecordByIds(ids)); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ServiceTicketController.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ServiceTicketController.java new file mode 100644 index 0000000..4c6b58a --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/controller/ServiceTicketController.java @@ -0,0 +1,98 @@ +package com.ruoyi.crm.system.controller; + +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.crm.system.domain.ServiceTicket; +import com.ruoyi.crm.system.service.IServiceTicketService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 服务工单Controller + * + * @author ruoyi + * @date 2024-03-01 + */ +@RestController +@RequestMapping("/system/ticket") +public class ServiceTicketController extends BaseController +{ + @Autowired + private IServiceTicketService serviceTicketService; + + /** + * 查询服务工单列表 + */ + @PreAuthorize("@ss.hasPermi('system:ticket:list')") + @GetMapping("/list") + public TableDataInfo list(ServiceTicket serviceTicket) + { + startPage(); + List list = serviceTicketService.selectServiceTicketList(serviceTicket); + return getDataTable(list); + } + + /** + * 导出服务工单列表 + */ + @PreAuthorize("@ss.hasPermi('system:ticket:export')") + @Log(title = "服务工单", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ServiceTicket serviceTicket) + { + List list = serviceTicketService.selectServiceTicketList(serviceTicket); + ExcelUtil util = new ExcelUtil(ServiceTicket.class); + util.exportExcel(response, list, "服务工单数据"); + } + + /** + * 获取服务工单详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:ticket:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(serviceTicketService.selectServiceTicketById(id)); + } + + /** + * 新增服务工单 + */ + @PreAuthorize("@ss.hasPermi('system:ticket:add')") + @Log(title = "服务工单", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ServiceTicket serviceTicket) + { + return toAjax(serviceTicketService.insertServiceTicket(serviceTicket)); + } + + /** + * 修改服务工单 + */ + @PreAuthorize("@ss.hasPermi('system:ticket:edit')") + @Log(title = "服务工单", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ServiceTicket serviceTicket) + { + return toAjax(serviceTicketService.updateServiceTicket(serviceTicket)); + } + + /** + * 删除服务工单 + */ + @PreAuthorize("@ss.hasPermi('system:ticket:remove')") + @Log(title = "服务工单", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(serviceTicketService.deleteServiceTicketByIds(ids)); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/Business.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/Business.java new file mode 100644 index 0000000..bd0bc9c --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/Business.java @@ -0,0 +1,357 @@ +package com.ruoyi.crm.system.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 商机对象 business + * + * @author ruoyi + * @date 2024-02-29 + */ +public class Business extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 商机id */ + private Long id; + + /** 标题 */ + @Excel(name = "标题") + private String title; + + /** 关联客户 */ + @Excel(name = "关联客户") + private Long customerId; + + /** 客户联系人 */ + @Excel(name = "客户联系人") + private Long customerLinkman; + + /** 客户名称 */ + @Excel(name = "客户名称") + private String customerName; + + /** 客户编号 */ + @Excel(name = "客户编号") + private String customerNumber; + + /** 商机名称 */ + @Excel(name = "商机名称") + private String businessName; + + /** 商机编号 */ + @Excel(name = "商机编号") + private String businessNumber; + + /** 销售阶段 */ + @Excel(name = "销售阶段") + private Integer salesStage; + + /** 赢率 */ + @Excel(name = "赢率") + private Integer probabilityOfWining; + + /** 阶段类型 */ + @Excel(name = "阶段类型") + private Integer stageType; + + /** 负责人 */ + @Excel(name = "负责人") + private String personInCharge; + + /** 归属部门 */ + @Excel(name = "归属部门") + private String belongingDepartment; + + /** 商机明细 */ + @Excel(name = "商机明细") + private String businessDetail; + + /** 预测商机金额(单位:分) */ + @Excel(name = "预测商机金额", readConverterExp = "单=位:分") + private Integer forecastBusinessPrice; + + /** 预计成交日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "预计成交日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date forecastSuccessTime; + + /** 协作人 */ + @Excel(name = "协作人") + private String collaborator; + + /** 最后跟进时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "最后跟进时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date lastFollowUpTime; + + /** 阶段变更时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "阶段变更时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date phaseChangeTime; + + /** 输单原因 */ + @Excel(name = "输单原因") + private String loseOrderCause; + + /** 提交人 */ + @Excel(name = "提交人") + private String submitter; + + /** 提交时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "提交时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date submitTime; + + /** 删除标志 */ + @Excel(name = "删除标志") + private Integer isDelete; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setTitle(String title) + { + this.title = title; + } + + public String getTitle() + { + return title; + } + public void setCustomerId(Long customerId) + { + this.customerId = customerId; + } + + public Long getCustomerId() + { + return customerId; + } + public void setCustomerLinkman(Long customerLinkman) + { + this.customerLinkman = customerLinkman; + } + + public Long getCustomerLinkman() + { + return customerLinkman; + } + public void setCustomerName(String customerName) + { + this.customerName = customerName; + } + + public String getCustomerName() + { + return customerName; + } + public void setCustomerNumber(String customerNumber) + { + this.customerNumber = customerNumber; + } + + public String getCustomerNumber() + { + return customerNumber; + } + public void setBusinessName(String businessName) + { + this.businessName = businessName; + } + + public String getBusinessName() + { + return businessName; + } + public void setBusinessNumber(String businessNumber) + { + this.businessNumber = businessNumber; + } + + public String getBusinessNumber() + { + return businessNumber; + } + public void setSalesStage(Integer salesStage) + { + this.salesStage = salesStage; + } + + public Integer getSalesStage() + { + return salesStage; + } + public void setProbabilityOfWining(Integer probabilityOfWining) + { + this.probabilityOfWining = probabilityOfWining; + } + + public Integer getProbabilityOfWining() + { + return probabilityOfWining; + } + public void setStageType(Integer stageType) + { + this.stageType = stageType; + } + + public Integer getStageType() + { + return stageType; + } + public void setPersonInCharge(String personInCharge) + { + this.personInCharge = personInCharge; + } + + public String getPersonInCharge() + { + return personInCharge; + } + public void setBelongingDepartment(String belongingDepartment) + { + this.belongingDepartment = belongingDepartment; + } + + public String getBelongingDepartment() + { + return belongingDepartment; + } + public void setBusinessDetail(String businessDetail) + { + this.businessDetail = businessDetail; + } + + public String getBusinessDetail() + { + return businessDetail; + } + public void setForecastBusinessPrice(Integer forecastBusinessPrice) + { + this.forecastBusinessPrice = forecastBusinessPrice; + } + + public Integer getForecastBusinessPrice() + { + return forecastBusinessPrice; + } + public void setForecastSuccessTime(Date forecastSuccessTime) + { + this.forecastSuccessTime = forecastSuccessTime; + } + + public Date getForecastSuccessTime() + { + return forecastSuccessTime; + } + public void setCollaborator(String collaborator) + { + this.collaborator = collaborator; + } + + public String getCollaborator() + { + return collaborator; + } + public void setLastFollowUpTime(Date lastFollowUpTime) + { + this.lastFollowUpTime = lastFollowUpTime; + } + + public Date getLastFollowUpTime() + { + return lastFollowUpTime; + } + public void setPhaseChangeTime(Date phaseChangeTime) + { + this.phaseChangeTime = phaseChangeTime; + } + + public Date getPhaseChangeTime() + { + return phaseChangeTime; + } + public void setLoseOrderCause(String loseOrderCause) + { + this.loseOrderCause = loseOrderCause; + } + + public String getLoseOrderCause() + { + return loseOrderCause; + } + public void setSubmitter(String submitter) + { + this.submitter = submitter; + } + + public String getSubmitter() + { + return submitter; + } + public void setSubmitTime(Date submitTime) + { + this.submitTime = submitTime; + } + + public Date getSubmitTime() + { + return submitTime; + } + public void setIsDelete(Integer isDelete) + { + this.isDelete = isDelete; + } + + public Integer getIsDelete() + { + return isDelete; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("title", getTitle()) + .append("customerId", getCustomerId()) + .append("customerLinkman", getCustomerLinkman()) + .append("customerName", getCustomerName()) + .append("customerNumber", getCustomerNumber()) + .append("businessName", getBusinessName()) + .append("businessNumber", getBusinessNumber()) + .append("salesStage", getSalesStage()) + .append("probabilityOfWining", getProbabilityOfWining()) + .append("stageType", getStageType()) + .append("personInCharge", getPersonInCharge()) + .append("belongingDepartment", getBelongingDepartment()) + .append("businessDetail", getBusinessDetail()) + .append("forecastBusinessPrice", getForecastBusinessPrice()) + .append("forecastSuccessTime", getForecastSuccessTime()) + .append("collaborator", getCollaborator()) + .append("lastFollowUpTime", getLastFollowUpTime()) + .append("phaseChangeTime", getPhaseChangeTime()) + .append("loseOrderCause", getLoseOrderCause()) + .append("submitter", getSubmitter()) + .append("submitTime", getSubmitTime()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .append("isDelete", getIsDelete()) + .toString(); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ContactPerson.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ContactPerson.java new file mode 100644 index 0000000..41fb5ec --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ContactPerson.java @@ -0,0 +1,284 @@ +package com.ruoyi.crm.system.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 联系人对象 contact_person + * + * @author ruoyi + * @date 2024-02-29 + */ +public class ContactPerson extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 联系人id */ + private Long id; + + /** 标题 */ + @Excel(name = "标题") + private String title; + + /** 姓名 */ + @Excel(name = "姓名") + private String name; + + /** 手机号 */ + @Excel(name = "手机号") + private String phoneNumber; + + /** 关联客户 */ + @Excel(name = "关联客户") + private Long customerId; + + /** 客户编号 */ + @Excel(name = "客户编号") + private String customerNumber; + + /** 部门 */ + @Excel(name = "部门") + private String dep; + + /** 职务 */ + @Excel(name = "职务") + private String job; + + /** 微信号 */ + @Excel(name = "微信号") + private String wxNumber; + + /** 邮箱 */ + @Excel(name = "邮箱") + private String mailNumber; + + /** 是否关键决策人 */ + @Excel(name = "是否关键决策人") + private Integer isKey; + + /** 联系人详情 */ + @Excel(name = "联系人详情") + private String contactPersonDetail; + + /** 负责人 */ + @Excel(name = "负责人") + private String personInCharge; + + /** 归属部门 */ + @Excel(name = "归属部门") + private String belongingDepartment; + + /** 协作人 */ + @Excel(name = "协作人") + private String collaborator; + + /** 提交人 */ + @Excel(name = "提交人") + private String submitter; + + /** 提交时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "提交时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date submitTime; + + /** 删除标志 */ + @Excel(name = "删除标志") + private Integer isDelete; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setTitle(String title) + { + this.title = title; + } + + public String getTitle() + { + return title; + } + public void setName(String name) + { + this.name = name; + } + + public String getName() + { + return name; + } + public void setPhoneNumber(String phoneNumber) + { + this.phoneNumber = phoneNumber; + } + + public String getPhoneNumber() + { + return phoneNumber; + } + public void setCustomerId(Long customerId) + { + this.customerId = customerId; + } + + public Long getCustomerId() + { + return customerId; + } + public void setCustomerNumber(String customerNumber) + { + this.customerNumber = customerNumber; + } + + public String getCustomerNumber() + { + return customerNumber; + } + public void setDep(String dep) + { + this.dep = dep; + } + + public String getDep() + { + return dep; + } + public void setJob(String job) + { + this.job = job; + } + + public String getJob() + { + return job; + } + public void setWxNumber(String wxNumber) + { + this.wxNumber = wxNumber; + } + + public String getWxNumber() + { + return wxNumber; + } + public void setMailNumber(String mailNumber) + { + this.mailNumber = mailNumber; + } + + public String getMailNumber() + { + return mailNumber; + } + public void setIsKey(Integer isKey) + { + this.isKey = isKey; + } + + public Integer getIsKey() + { + return isKey; + } + public void setContactPersonDetail(String contactPersonDetail) + { + this.contactPersonDetail = contactPersonDetail; + } + + public String getContactPersonDetail() + { + return contactPersonDetail; + } + public void setPersonInCharge(String personInCharge) + { + this.personInCharge = personInCharge; + } + + public String getPersonInCharge() + { + return personInCharge; + } + public void setBelongingDepartment(String belongingDepartment) + { + this.belongingDepartment = belongingDepartment; + } + + public String getBelongingDepartment() + { + return belongingDepartment; + } + public void setCollaborator(String collaborator) + { + this.collaborator = collaborator; + } + + public String getCollaborator() + { + return collaborator; + } + public void setSubmitter(String submitter) + { + this.submitter = submitter; + } + + public String getSubmitter() + { + return submitter; + } + public void setSubmitTime(Date submitTime) + { + this.submitTime = submitTime; + } + + public Date getSubmitTime() + { + return submitTime; + } + public void setIsDelete(Integer isDelete) + { + this.isDelete = isDelete; + } + + public Integer getIsDelete() + { + return isDelete; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("title", getTitle()) + .append("name", getName()) + .append("phoneNumber", getPhoneNumber()) + .append("customerId", getCustomerId()) + .append("customerNumber", getCustomerNumber()) + .append("dep", getDep()) + .append("job", getJob()) + .append("wxNumber", getWxNumber()) + .append("mailNumber", getMailNumber()) + .append("isKey", getIsKey()) + .append("contactPersonDetail", getContactPersonDetail()) + .append("personInCharge", getPersonInCharge()) + .append("belongingDepartment", getBelongingDepartment()) + .append("collaborator", getCollaborator()) + .append("submitter", getSubmitter()) + .append("submitTime", getSubmitTime()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .append("isDelete", getIsDelete()) + .toString(); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/FollowUpPlan.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/FollowUpPlan.java new file mode 100644 index 0000000..c1050d2 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/FollowUpPlan.java @@ -0,0 +1,187 @@ +package com.ruoyi.crm.system.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 跟进计划对象 follow_up_plan + * + * @author ruoyi + * @date 2024-03-01 + */ +public class FollowUpPlan extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 跟进计划id */ + private Long id; + + /** 标题 */ + @Excel(name = "标题") + private String title; + + /** 计划内容 */ + @Excel(name = "计划内容") + private String planContent; + + /** 跟进客户 */ + @Excel(name = "跟进客户") + private String customer; + + /** 跟进时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "跟进时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date planTime; + + /** 跟进执行人 */ + @Excel(name = "跟进执行人") + private String planExecutor; + + /** 归属部门 */ + @Excel(name = "归属部门") + private String belongingDepartment; + + /** 计划状态 */ + @Excel(name = "计划状态") + private Integer planStatus; + + /** 提交人 */ + @Excel(name = "提交人") + private String submitter; + + /** 提交时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "提交时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date submitTime; + + /** 是否删除 */ + @Excel(name = "是否删除") + private Integer isDelete; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setTitle(String title) + { + this.title = title; + } + + public String getTitle() + { + return title; + } + public void setPlanContent(String planContent) + { + this.planContent = planContent; + } + + public String getPlanContent() + { + return planContent; + } + public void setCustomer(String customer) + { + this.customer = customer; + } + + public String getCustomer() + { + return customer; + } + public void setPlanTime(Date planTime) + { + this.planTime = planTime; + } + + public Date getPlanTime() + { + return planTime; + } + public void setPlanExecutor(String planExecutor) + { + this.planExecutor = planExecutor; + } + + public String getPlanExecutor() + { + return planExecutor; + } + public void setBelongingDepartment(String belongingDepartment) + { + this.belongingDepartment = belongingDepartment; + } + + public String getBelongingDepartment() + { + return belongingDepartment; + } + public void setPlanStatus(Integer planStatus) + { + this.planStatus = planStatus; + } + + public Integer getPlanStatus() + { + return planStatus; + } + public void setSubmitter(String submitter) + { + this.submitter = submitter; + } + + public String getSubmitter() + { + return submitter; + } + public void setSubmitTime(Date submitTime) + { + this.submitTime = submitTime; + } + + public Date getSubmitTime() + { + return submitTime; + } + public void setIsDelete(Integer isDelete) + { + this.isDelete = isDelete; + } + + public Integer getIsDelete() + { + return isDelete; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("title", getTitle()) + .append("planContent", getPlanContent()) + .append("customer", getCustomer()) + .append("planTime", getPlanTime()) + .append("planExecutor", getPlanExecutor()) + .append("belongingDepartment", getBelongingDepartment()) + .append("planStatus", getPlanStatus()) + .append("submitter", getSubmitter()) + .append("submitTime", getSubmitTime()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .append("isDelete", getIsDelete()) + .toString(); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/FollowUpRecord.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/FollowUpRecord.java new file mode 100644 index 0000000..751027d --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/FollowUpRecord.java @@ -0,0 +1,257 @@ +package com.ruoyi.crm.system.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 跟进记录对象 follow_up_record + * + * @author ruoyi + * @date 2024-03-01 + */ +public class FollowUpRecord extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** */ + private Long id; + + /** 标题 */ + @Excel(name = "标题") + private String title; + + /** 跟进记录 */ + @Excel(name = "跟进记录") + private String followUpRecord; + + /** 跟进主体 */ + @Excel(name = "跟进主体") + private String followUpSubject; + + /** 客户编号(辅助字段) */ + @Excel(name = "客户编号", readConverterExp = "辅=助字段") + private String customerNumber; + + /** 跟进商机 */ + @Excel(name = "跟进商机") + private String followUpBusinessOpportunities; + + /** 商机编号(辅助字段) */ + @Excel(name = "商机编号", readConverterExp = "辅=助字段") + private String opportunityNumber; + + /** 联系人 */ + @Excel(name = "联系人") + private String contactPeople; + + /** 跟进方式 */ + @Excel(name = "跟进方式") + private Integer followUpType; + + /** 跟进内容 */ + @Excel(name = "跟进内容") + private String content; + + /** 跟进时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "跟进时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date followUpTime; + + /** 跟进人 */ + @Excel(name = "跟进人") + private String followUpPeople; + + /** 归属部门 */ + @Excel(name = "归属部门") + private String belongingDepartment; + + /** 提交人 */ + @Excel(name = "提交人") + private String submitter; + + /** 提交时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "提交时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date submitTime; + + /** 是否删除 */ + @Excel(name = "客户id") + private Long customerId; + + public Long getCustomerId() { + return customerId; + } + + public void setCustomerId(Long customerId) { + this.customerId = customerId; + } + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setTitle(String title) + { + this.title = title; + } + + public String getTitle() + { + return title; + } + public void setFollowUpRecord(String followUpRecord) + { + this.followUpRecord = followUpRecord; + } + + public String getFollowUpRecord() + { + return followUpRecord; + } + public void setFollowUpSubject(String followUpSubject) + { + this.followUpSubject = followUpSubject; + } + + public String getFollowUpSubject() + { + return followUpSubject; + } + public void setCustomerNumber(String customerNumber) + { + this.customerNumber = customerNumber; + } + + public String getCustomerNumber() + { + return customerNumber; + } + public void setFollowUpBusinessOpportunities(String followUpBusinessOpportunities) + { + this.followUpBusinessOpportunities = followUpBusinessOpportunities; + } + + public String getFollowUpBusinessOpportunities() + { + return followUpBusinessOpportunities; + } + public void setOpportunityNumber(String opportunityNumber) + { + this.opportunityNumber = opportunityNumber; + } + + public String getOpportunityNumber() + { + return opportunityNumber; + } + public void setContactPeople(String contactPeople) + { + this.contactPeople = contactPeople; + } + + public String getContactPeople() + { + return contactPeople; + } + public void setFollowUpType(Integer followUpType) + { + this.followUpType = followUpType; + } + + public Integer getFollowUpType() + { + return followUpType; + } + + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } + + public void setFollowUpTime(Date followUpTime) + { + this.followUpTime = followUpTime; + } + + public Date getFollowUpTime() + { + return followUpTime; + } + public void setFollowUpPeople(String followUpPeople) + { + this.followUpPeople = followUpPeople; + } + + public String getFollowUpPeople() + { + return followUpPeople; + } + public void setBelongingDepartment(String belongingDepartment) + { + this.belongingDepartment = belongingDepartment; + } + + public String getBelongingDepartment() + { + return belongingDepartment; + } + public void setSubmitter(String submitter) + { + this.submitter = submitter; + } + + public String getSubmitter() + { + return submitter; + } + public void setSubmitTime(Date submitTime) + { + this.submitTime = submitTime; + } + + public Date getSubmitTime() + { + return submitTime; + } + + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("title", getTitle()) + .append("followUpRecord", getFollowUpRecord()) + .append("followUpSubject", getFollowUpSubject()) + .append("customerNumber", getCustomerNumber()) + .append("followUpBusinessOpportunities", getFollowUpBusinessOpportunities()) + .append("opportunityNumber", getOpportunityNumber()) + .append("contactPeople", getContactPeople()) + .append("followUpType", getFollowUpType()) + .append("content", getContent()) + .append("followUpTime", getFollowUpTime()) + .append("followUpPeople", getFollowUpPeople()) + .append("belongingDepartment", getBelongingDepartment()) + .append("submitter", getSubmitter()) + .append("submitTime", getSubmitTime()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .append("customerId", getCustomerId()) + .toString(); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ServiceTicket.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ServiceTicket.java new file mode 100644 index 0000000..bd54f40 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/domain/ServiceTicket.java @@ -0,0 +1,497 @@ +package com.ruoyi.crm.system.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 服务工单对象 service_ticket + * + * @author ruoyi + * @date 2024-03-01 + */ +public class ServiceTicket extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 服务工单id */ + private Long id; + + /** 标题 */ + @Excel(name = "标题") + private String title; + + /** 客户姓名 */ + @Excel(name = "客户姓名") + private String customerName; + + /** 客户编号 */ + @Excel(name = "客户编号") + private String customerNumber; + + /** 合同标题 */ + @Excel(name = "合同标题") + private String contractTitle; + + /** 合同订单编号 */ + @Excel(name = "合同订单编号") + private String contractOrderNumber; + + /** 客户联系人 */ + @Excel(name = "客户联系人") + private String customerContact; + + /** 手机号 */ + @Excel(name = "手机号") + private String phoneNumber; + + /** 服务类型 */ + @Excel(name = "服务类型") + private Integer serviceType; + + /** 服务单号 */ + @Excel(name = "服务单号") + private String serviceOrderNumber; + + /** 第几个服务单 */ + @Excel(name = "第几个服务单") + private Integer howManyServiceOrder; + + /** 服务开始时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "服务开始时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date serviceStarTime; + + /** 服务结束时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "服务结束时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date serviceEndTime; + + /** 服务需求天数 */ + @Excel(name = "服务需求天数") + private Integer demandServiceDay; + + /** 售后技术人员 */ + @Excel(name = "售后技术人员") + private String afterSalesTechnician; + + /** 服务地址(省/自治区/直辖市) */ + @Excel(name = "服务地址(省/自治区/直辖市)") + private String serviceAddress; + + /** 服务地址(市) */ + @Excel(name = "服务地址(市)") + private String serviceAddressCity; + + /** 服务地址(区) */ + @Excel(name = "服务地址(区)") + private String serviceAddressArea; + + /** 服务地址(详细地址) */ + @Excel(name = "服务地址(详细地址)") + private String serviceAddressDetail; + + /** 签到 */ + @Excel(name = "签到") + private String signIn; + + /** 签到时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "签到时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date signInTime; + + /** 签退 */ + @Excel(name = "签退") + private String signOut; + + /** 签退时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "签退时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date signOutTime; + + /** 是否解决问题(true or false) */ + @Excel(name = "是否解决问题", readConverterExp = "是否解决问题(true or false)") + private Integer isSolveTheProblem; + + /** 现场照片 */ + @Excel(name = "现场照片") + private String scenePhoto; + + /** 客户满意度 */ + @Excel(name = "客户满意度") + private Integer customerSatisfaction; + + /** 满意度数值 */ + @Excel(name = "满意度数值") + private Integer satisfactionValue; + + /** 客户意见与诉求 */ + @Excel(name = "客户意见与诉求") + private String customerCommentsAndDemands; + + /** 提交人 */ + @Excel(name = "提交人") + private String submitter; + + /** 提交时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "提交时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date submitTime; + + /** 流程状态 */ + @Excel(name = "流程状态") + private Integer processState; + + /** 当前节点 */ + @Excel(name = "当前节点") + private Integer currentNode; + + /** 当前负责人 */ + @Excel(name = "当前负责人") + private String currentPersonInCharge; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setTitle(String title) + { + this.title = title; + } + + public String getTitle() + { + return title; + } + public void setCustomerName(String customerName) + { + this.customerName = customerName; + } + + public String getCustomerName() + { + return customerName; + } + public void setCustomerNumber(String customerNumber) + { + this.customerNumber = customerNumber; + } + + public String getCustomerNumber() + { + return customerNumber; + } + public void setContractTitle(String contractTitle) + { + this.contractTitle = contractTitle; + } + + public String getContractTitle() + { + return contractTitle; + } + public void setContractOrderNumber(String contractOrderNumber) + { + this.contractOrderNumber = contractOrderNumber; + } + + public String getContractOrderNumber() + { + return contractOrderNumber; + } + public void setCustomerContact(String customerContact) + { + this.customerContact = customerContact; + } + + public String getCustomerContact() + { + return customerContact; + } + public void setPhoneNumber(String phoneNumber) + { + this.phoneNumber = phoneNumber; + } + + public String getPhoneNumber() + { + return phoneNumber; + } + public void setServiceType(Integer serviceType) + { + this.serviceType = serviceType; + } + + public Integer getServiceType() + { + return serviceType; + } + public void setServiceOrderNumber(String serviceOrderNumber) + { + this.serviceOrderNumber = serviceOrderNumber; + } + + public String getServiceOrderNumber() + { + return serviceOrderNumber; + } + public void setHowManyServiceOrder(Integer howManyServiceOrder) + { + this.howManyServiceOrder = howManyServiceOrder; + } + + public Integer getHowManyServiceOrder() + { + return howManyServiceOrder; + } + public void setServiceStarTime(Date serviceStarTime) + { + this.serviceStarTime = serviceStarTime; + } + + public Date getServiceStarTime() + { + return serviceStarTime; + } + public void setServiceEndTime(Date serviceEndTime) + { + this.serviceEndTime = serviceEndTime; + } + + public Date getServiceEndTime() + { + return serviceEndTime; + } + public void setDemandServiceDay(Integer demandServiceDay) + { + this.demandServiceDay = demandServiceDay; + } + + public Integer getDemandServiceDay() + { + return demandServiceDay; + } + public void setAfterSalesTechnician(String afterSalesTechnician) + { + this.afterSalesTechnician = afterSalesTechnician; + } + + public String getAfterSalesTechnician() + { + return afterSalesTechnician; + } + public void setServiceAddress(String serviceAddress) + { + this.serviceAddress = serviceAddress; + } + + public String getServiceAddress() + { + return serviceAddress; + } + public void setServiceAddressCity(String serviceAddressCity) + { + this.serviceAddressCity = serviceAddressCity; + } + + public String getServiceAddressCity() + { + return serviceAddressCity; + } + public void setServiceAddressArea(String serviceAddressArea) + { + this.serviceAddressArea = serviceAddressArea; + } + + public String getServiceAddressArea() + { + return serviceAddressArea; + } + public void setServiceAddressDetail(String serviceAddressDetail) + { + this.serviceAddressDetail = serviceAddressDetail; + } + + public String getServiceAddressDetail() + { + return serviceAddressDetail; + } + public void setSignIn(String signIn) + { + this.signIn = signIn; + } + + public String getSignIn() + { + return signIn; + } + public void setSignInTime(Date signInTime) + { + this.signInTime = signInTime; + } + + public Date getSignInTime() + { + return signInTime; + } + public void setSignOut(String signOut) + { + this.signOut = signOut; + } + + public String getSignOut() + { + return signOut; + } + public void setSignOutTime(Date signOutTime) + { + this.signOutTime = signOutTime; + } + + public Date getSignOutTime() + { + return signOutTime; + } + public void setIsSolveTheProblem(Integer isSolveTheProblem) + { + this.isSolveTheProblem = isSolveTheProblem; + } + + public Integer getIsSolveTheProblem() + { + return isSolveTheProblem; + } + public void setScenePhoto(String scenePhoto) + { + this.scenePhoto = scenePhoto; + } + + public String getScenePhoto() + { + return scenePhoto; + } + public void setCustomerSatisfaction(Integer customerSatisfaction) + { + this.customerSatisfaction = customerSatisfaction; + } + + public Integer getCustomerSatisfaction() + { + return customerSatisfaction; + } + public void setSatisfactionValue(Integer satisfactionValue) + { + this.satisfactionValue = satisfactionValue; + } + + public Integer getSatisfactionValue() + { + return satisfactionValue; + } + public void setCustomerCommentsAndDemands(String customerCommentsAndDemands) + { + this.customerCommentsAndDemands = customerCommentsAndDemands; + } + + public String getCustomerCommentsAndDemands() + { + return customerCommentsAndDemands; + } + public void setSubmitter(String submitter) + { + this.submitter = submitter; + } + + public String getSubmitter() + { + return submitter; + } + public void setSubmitTime(Date submitTime) + { + this.submitTime = submitTime; + } + + public Date getSubmitTime() + { + return submitTime; + } + public void setProcessState(Integer processState) + { + this.processState = processState; + } + + public Integer getProcessState() + { + return processState; + } + public void setCurrentNode(Integer currentNode) + { + this.currentNode = currentNode; + } + + public Integer getCurrentNode() + { + return currentNode; + } + public void setCurrentPersonInCharge(String currentPersonInCharge) + { + this.currentPersonInCharge = currentPersonInCharge; + } + + public String getCurrentPersonInCharge() + { + return currentPersonInCharge; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("title", getTitle()) + .append("customerName", getCustomerName()) + .append("customerNumber", getCustomerNumber()) + .append("contractTitle", getContractTitle()) + .append("contractOrderNumber", getContractOrderNumber()) + .append("customerContact", getCustomerContact()) + .append("phoneNumber", getPhoneNumber()) + .append("serviceType", getServiceType()) + .append("serviceOrderNumber", getServiceOrderNumber()) + .append("howManyServiceOrder", getHowManyServiceOrder()) + .append("serviceStarTime", getServiceStarTime()) + .append("serviceEndTime", getServiceEndTime()) + .append("demandServiceDay", getDemandServiceDay()) + .append("afterSalesTechnician", getAfterSalesTechnician()) + .append("serviceAddress", getServiceAddress()) + .append("serviceAddressCity", getServiceAddressCity()) + .append("serviceAddressArea", getServiceAddressArea()) + .append("serviceAddressDetail", getServiceAddressDetail()) + .append("signIn", getSignIn()) + .append("signInTime", getSignInTime()) + .append("signOut", getSignOut()) + .append("signOutTime", getSignOutTime()) + .append("isSolveTheProblem", getIsSolveTheProblem()) + .append("scenePhoto", getScenePhoto()) + .append("customerSatisfaction", getCustomerSatisfaction()) + .append("satisfactionValue", getSatisfactionValue()) + .append("customerCommentsAndDemands", getCustomerCommentsAndDemands()) + .append("submitter", getSubmitter()) + .append("submitTime", getSubmitTime()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("processState", getProcessState()) + .append("currentNode", getCurrentNode()) + .append("currentPersonInCharge", getCurrentPersonInCharge()) + .toString(); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/BusinessMapper.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/BusinessMapper.java new file mode 100644 index 0000000..46307d1 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/BusinessMapper.java @@ -0,0 +1,69 @@ +package com.ruoyi.crm.system.mapper; + +import com.ruoyi.crm.system.domain.Business; + +import java.util.List; + +/** + * 商机Mapper接口 + * + * @author ruoyi + * @date 2024-02-29 + */ +public interface BusinessMapper +{ + /** + * 查询商机 + * + * @param id 商机主键 + * @return 商机 + */ + public Business selectBusinessById(Long id); + + /** + * 查询商机列表 + * + * @param business 商机 + * @return 商机集合 + */ + public List selectBusinessList(Business business); + + /** + * 新增商机 + * + * @param business 商机 + * @return 结果 + */ + public int insertBusiness(Business business); + + /** + * 修改商机 + * + * @param business 商机 + * @return 结果 + */ + public int updateBusiness(Business business); + + /** + * 删除商机 + * + * @param id 商机主键 + * @return 结果 + */ + public int deleteBusinessById(Long id); + + /** + * 批量删除商机 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBusinessByIds(Long[] ids); + + /** + * 根据商机编号查询 + * @param businessNumber + * @return + */ + public Business selectByBusinessNumber(String businessNumber); +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/ContactPersonMapper.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/ContactPersonMapper.java new file mode 100644 index 0000000..6e65285 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/ContactPersonMapper.java @@ -0,0 +1,62 @@ +package com.ruoyi.crm.system.mapper; + +import com.ruoyi.crm.system.domain.ContactPerson; + +import java.util.List; + +/** + * 联系人Mapper接口 + * + * @author ruoyi + * @date 2024-02-29 + */ +public interface ContactPersonMapper +{ + /** + * 查询联系人 + * + * @param id 联系人主键 + * @return 联系人 + */ + public ContactPerson selectContactPersonById(Long id); + + /** + * 查询联系人列表 + * + * @param contactPerson 联系人 + * @return 联系人集合 + */ + public List selectContactPersonList(ContactPerson contactPerson); + + /** + * 新增联系人 + * + * @param contactPerson 联系人 + * @return 结果 + */ + public int insertContactPerson(ContactPerson contactPerson); + + /** + * 修改联系人 + * + * @param contactPerson 联系人 + * @return 结果 + */ + public int updateContactPerson(ContactPerson contactPerson); + + /** + * 删除联系人 + * + * @param id 联系人主键 + * @return 结果 + */ + public int deleteContactPersonById(Long id); + + /** + * 批量删除联系人 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteContactPersonByIds(Long[] ids); +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/FollowUpPlanMapper.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/FollowUpPlanMapper.java new file mode 100644 index 0000000..63c2123 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/FollowUpPlanMapper.java @@ -0,0 +1,63 @@ +package com.ruoyi.crm.system.mapper; + + +import com.ruoyi.crm.system.domain.FollowUpPlan; + +import java.util.List; + +/** + * 跟进计划Mapper接口 + * + * @author ruoyi + * @date 2024-03-01 + */ +public interface FollowUpPlanMapper +{ + /** + * 查询跟进计划 + * + * @param id 跟进计划主键 + * @return 跟进计划 + */ + public FollowUpPlan selectFollowUpPlanById(Long id); + + /** + * 查询跟进计划列表 + * + * @param followUpPlan 跟进计划 + * @return 跟进计划集合 + */ + public List selectFollowUpPlanList(FollowUpPlan followUpPlan); + + /** + * 新增跟进计划 + * + * @param followUpPlan 跟进计划 + * @return 结果 + */ + public int insertFollowUpPlan(FollowUpPlan followUpPlan); + + /** + * 修改跟进计划 + * + * @param followUpPlan 跟进计划 + * @return 结果 + */ + public int updateFollowUpPlan(FollowUpPlan followUpPlan); + + /** + * 删除跟进计划 + * + * @param id 跟进计划主键 + * @return 结果 + */ + public int deleteFollowUpPlanById(Long id); + + /** + * 批量删除跟进计划 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteFollowUpPlanByIds(Long[] ids); +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/FollowUpRecordMapper.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/FollowUpRecordMapper.java new file mode 100644 index 0000000..0a54c02 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/FollowUpRecordMapper.java @@ -0,0 +1,63 @@ +package com.ruoyi.crm.system.mapper; + + +import com.ruoyi.crm.system.domain.FollowUpRecord; + +import java.util.List; + +/** + * 跟进记录Mapper接口 + * + * @author ruoyi + * @date 2024-03-01 + */ +public interface FollowUpRecordMapper +{ + /** + * 查询跟进记录 + * + * @param id 跟进记录主键 + * @return 跟进记录 + */ + public FollowUpRecord selectFollowUpRecordById(Long id); + + /** + * 查询跟进记录列表 + * + * @param followUpRecord 跟进记录 + * @return 跟进记录集合 + */ + public List selectFollowUpRecordList(FollowUpRecord followUpRecord); + + /** + * 新增跟进记录 + * + * @param followUpRecord 跟进记录 + * @return 结果 + */ + public int insertFollowUpRecord(FollowUpRecord followUpRecord); + + /** + * 修改跟进记录 + * + * @param followUpRecord 跟进记录 + * @return 结果 + */ + public int updateFollowUpRecord(FollowUpRecord followUpRecord); + + /** + * 删除跟进记录 + * + * @param id 跟进记录主键 + * @return 结果 + */ + public int deleteFollowUpRecordById(Long id); + + /** + * 批量删除跟进记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteFollowUpRecordByIds(Long[] ids); +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/ServiceTicketMapper.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/ServiceTicketMapper.java new file mode 100644 index 0000000..637de16 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/mapper/ServiceTicketMapper.java @@ -0,0 +1,62 @@ +package com.ruoyi.crm.system.mapper; + +import com.ruoyi.crm.system.domain.ServiceTicket; + +import java.util.List; + +/** + * 服务工单Mapper接口 + * + * @author ruoyi + * @date 2024-03-01 + */ +public interface ServiceTicketMapper +{ + /** + * 查询服务工单 + * + * @param id 服务工单主键 + * @return 服务工单 + */ + public ServiceTicket selectServiceTicketById(Long id); + + /** + * 查询服务工单列表 + * + * @param serviceTicket 服务工单 + * @return 服务工单集合 + */ + public List selectServiceTicketList(ServiceTicket serviceTicket); + + /** + * 新增服务工单 + * + * @param serviceTicket 服务工单 + * @return 结果 + */ + public int insertServiceTicket(ServiceTicket serviceTicket); + + /** + * 修改服务工单 + * + * @param serviceTicket 服务工单 + * @return 结果 + */ + public int updateServiceTicket(ServiceTicket serviceTicket); + + /** + * 删除服务工单 + * + * @param id 服务工单主键 + * @return 结果 + */ + public int deleteServiceTicketById(Long id); + + /** + * 批量删除服务工单 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteServiceTicketByIds(Long[] ids); +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IBusinessService.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IBusinessService.java new file mode 100644 index 0000000..4ee9c31 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IBusinessService.java @@ -0,0 +1,74 @@ +package com.ruoyi.crm.system.service; + + +import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.crm.system.domain.Business; + +import java.util.List; + +/** + * 商机Service接口 + * + * @author ruoyi + * @date 2024-02-29 + */ +public interface IBusinessService +{ + /** + * 查询商机 + * + * @param id 商机主键 + * @return 商机 + */ + public Business selectBusinessById(Long id); + + /** + * 查询商机列表 + * + * @param business 商机 + * @return 商机集合 + */ + public List selectBusinessList(Business business); + + /** + * 新增商机 + * + * @param business 商机 + * @return 结果 + */ + public int insertBusiness(Business business); + + /** + * 修改商机 + * + * @param business 商机 + * @return 结果 + */ + public int updateBusiness(Business business); + + /** + * 批量删除商机 + * + * @param ids 需要删除的商机主键集合 + * @return 结果 + */ + public int deleteBusinessByIds(Long[] ids); + + /** + * 删除商机信息 + * + * @param id 商机主键 + * @return 结果 + */ + public int deleteBusinessById(Long id); + + /** + * 导入用户数据 + * + * @param userList 用户数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + public String importBusines(List userList, Boolean isUpdateSupport, String operName); +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IContactPersonService.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IContactPersonService.java new file mode 100644 index 0000000..8b7cb37 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IContactPersonService.java @@ -0,0 +1,63 @@ +package com.ruoyi.crm.system.service; + + +import com.ruoyi.crm.system.domain.ContactPerson; + +import java.util.List; + +/** + * 联系人Service接口 + * + * @author ruoyi + * @date 2024-02-29 + */ +public interface IContactPersonService +{ + /** + * 查询联系人 + * + * @param id 联系人主键 + * @return 联系人 + */ + public ContactPerson selectContactPersonById(Long id); + + /** + * 查询联系人列表 + * + * @param contactPerson 联系人 + * @return 联系人集合 + */ + public List selectContactPersonList(ContactPerson contactPerson); + + /** + * 新增联系人 + * + * @param contactPerson 联系人 + * @return 结果 + */ + public int insertContactPerson(ContactPerson contactPerson); + + /** + * 修改联系人 + * + * @param contactPerson 联系人 + * @return 结果 + */ + public int updateContactPerson(ContactPerson contactPerson); + + /** + * 批量删除联系人 + * + * @param ids 需要删除的联系人主键集合 + * @return 结果 + */ + public int deleteContactPersonByIds(Long[] ids); + + /** + * 删除联系人信息 + * + * @param id 联系人主键 + * @return 结果 + */ + public int deleteContactPersonById(Long id); +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IFollowUpPlanService.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IFollowUpPlanService.java new file mode 100644 index 0000000..7a79f7b --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IFollowUpPlanService.java @@ -0,0 +1,63 @@ +package com.ruoyi.crm.system.service; + + +import com.ruoyi.crm.system.domain.FollowUpPlan; + +import java.util.List; + +/** + * 跟进计划Service接口 + * + * @author ruoyi + * @date 2024-03-01 + */ +public interface IFollowUpPlanService +{ + /** + * 查询跟进计划 + * + * @param id 跟进计划主键 + * @return 跟进计划 + */ + public FollowUpPlan selectFollowUpPlanById(Long id); + + /** + * 查询跟进计划列表 + * + * @param followUpPlan 跟进计划 + * @return 跟进计划集合 + */ + public List selectFollowUpPlanList(FollowUpPlan followUpPlan); + + /** + * 新增跟进计划 + * + * @param followUpPlan 跟进计划 + * @return 结果 + */ + public int insertFollowUpPlan(FollowUpPlan followUpPlan); + + /** + * 修改跟进计划 + * + * @param followUpPlan 跟进计划 + * @return 结果 + */ + public int updateFollowUpPlan(FollowUpPlan followUpPlan); + + /** + * 批量删除跟进计划 + * + * @param ids 需要删除的跟进计划主键集合 + * @return 结果 + */ + public int deleteFollowUpPlanByIds(Long[] ids); + + /** + * 删除跟进计划信息 + * + * @param id 跟进计划主键 + * @return 结果 + */ + public int deleteFollowUpPlanById(Long id); +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IFollowUpRecordService.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IFollowUpRecordService.java new file mode 100644 index 0000000..21ea55d --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IFollowUpRecordService.java @@ -0,0 +1,63 @@ +package com.ruoyi.crm.system.service; + + +import com.ruoyi.crm.system.domain.FollowUpRecord; + +import java.util.List; + +/** + * 跟进记录Service接口 + * + * @author ruoyi + * @date 2024-03-01 + */ +public interface IFollowUpRecordService +{ + /** + * 查询跟进记录 + * + * @param id 跟进记录主键 + * @return 跟进记录 + */ + public FollowUpRecord selectFollowUpRecordById(Long id); + + /** + * 查询跟进记录列表 + * + * @param followUpRecord 跟进记录 + * @return 跟进记录集合 + */ + public List selectFollowUpRecordList(FollowUpRecord followUpRecord); + + /** + * 新增跟进记录 + * + * @param followUpRecord 跟进记录 + * @return 结果 + */ + public int insertFollowUpRecord(FollowUpRecord followUpRecord); + + /** + * 修改跟进记录 + * + * @param followUpRecord 跟进记录 + * @return 结果 + */ + public int updateFollowUpRecord(FollowUpRecord followUpRecord); + + /** + * 批量删除跟进记录 + * + * @param ids 需要删除的跟进记录主键集合 + * @return 结果 + */ + public int deleteFollowUpRecordByIds(Long[] ids); + + /** + * 删除跟进记录信息 + * + * @param id 跟进记录主键 + * @return 结果 + */ + public int deleteFollowUpRecordById(Long id); +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IServiceTicketService.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IServiceTicketService.java new file mode 100644 index 0000000..afcdc85 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/IServiceTicketService.java @@ -0,0 +1,63 @@ +package com.ruoyi.crm.system.service; + + +import com.ruoyi.crm.system.domain.ServiceTicket; + +import java.util.List; + +/** + * 服务工单Service接口 + * + * @author ruoyi + * @date 2024-03-01 + */ +public interface IServiceTicketService +{ + /** + * 查询服务工单 + * + * @param id 服务工单主键 + * @return 服务工单 + */ + public ServiceTicket selectServiceTicketById(Long id); + + /** + * 查询服务工单列表 + * + * @param serviceTicket 服务工单 + * @return 服务工单集合 + */ + public List selectServiceTicketList(ServiceTicket serviceTicket); + + /** + * 新增服务工单 + * + * @param serviceTicket 服务工单 + * @return 结果 + */ + public int insertServiceTicket(ServiceTicket serviceTicket); + + /** + * 修改服务工单 + * + * @param serviceTicket 服务工单 + * @return 结果 + */ + public int updateServiceTicket(ServiceTicket serviceTicket); + + /** + * 批量删除服务工单 + * + * @param ids 需要删除的服务工单主键集合 + * @return 结果 + */ + public int deleteServiceTicketByIds(Long[] ids); + + /** + * 删除服务工单信息 + * + * @param id 服务工单主键 + * @return 结果 + */ + public int deleteServiceTicketById(Long id); +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/BusinessServiceImpl.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/BusinessServiceImpl.java new file mode 100644 index 0000000..06096bd --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/BusinessServiceImpl.java @@ -0,0 +1,176 @@ +package com.ruoyi.crm.system.service.impl; + +import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.common.exception.ServiceException; +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.common.utils.bean.BeanValidators; +import com.ruoyi.crm.system.domain.Business; +import com.ruoyi.crm.system.mapper.BusinessMapper; +import com.ruoyi.crm.system.service.IBusinessService; +import com.ruoyi.system.service.impl.SysUserServiceImpl; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.validation.Validator; +import java.util.List; + +/** + * 商机Service业务层处理 + * + * @author ruoyi + * @date 2024-02-29 + */ +@Service +public class BusinessServiceImpl implements IBusinessService +{ + private static final Logger log = LoggerFactory.getLogger(BusinessServiceImpl.class); + + @Autowired + private BusinessMapper businessMapper; + + @Autowired + protected Validator validator; + + /** + * 查询商机 + * + * @param id 商机主键 + * @return 商机 + */ + @Override + public Business selectBusinessById(Long id) + { + return businessMapper.selectBusinessById(id); + } + + /** + * 查询商机列表 + * + * @param business 商机 + * @return 商机 + */ + @Override + public List selectBusinessList(Business business) + { + return businessMapper.selectBusinessList(business); + } + + /** + * 新增商机 + * + * @param business 商机 + * @return 结果 + */ + @Override + public int insertBusiness(Business business) + { + business.setCreateTime(DateUtils.getNowDate()); + return businessMapper.insertBusiness(business); + } + + /** + * 修改商机 + * + * @param business 商机 + * @return 结果 + */ + @Override + public int updateBusiness(Business business) + { + business.setUpdateTime(DateUtils.getNowDate()); + return businessMapper.updateBusiness(business); + } + + /** + * 批量删除商机 + * + * @param ids 需要删除的商机主键 + * @return 结果 + */ + @Override + public int deleteBusinessByIds(Long[] ids) + { + return businessMapper.deleteBusinessByIds(ids); + } + + /** + * 删除商机信息 + * + * @param id 商机主键 + * @return 结果 + */ + @Override + public int deleteBusinessById(Long id) + { + return businessMapper.deleteBusinessById(id); + } + + /** + * 导入商机数据 + * @param userList 用户数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return + */ + @Override + public String importBusines(List userList, Boolean isUpdateSupport, String operName) { + if (StringUtils.isNull(userList) || userList.size() == 0) + { + throw new ServiceException("导入用户数据不能为空!"); + } + int successNum = 0; + int failureNum = 0; + StringBuilder successMsg = new StringBuilder(); + StringBuilder failureMsg = new StringBuilder(); + for (Business business : userList) { + try + { + // 验证是否存在这个商机 + Business b = businessMapper.selectByBusinessNumber(business.getBusinessNumber()+""); + System.out.println("----------------------------"+b); + if (StringUtils.isNull(b)) + { + BeanValidators.validateWithException(validator, business); + business.setCreateTime(DateUtils.getNowDate()); + businessMapper.insertBusiness(business); + successNum++; + successMsg.append("
" + successNum + "、商机编号 " + business.getBusinessNumber() + " 导入成功"); + } + else if (isUpdateSupport) + { + BeanValidators.validateWithException(validator, business); + business.setUpdateBy(operName); + this.updateBusiness(business); + successNum++; + successMsg.append("
" + successNum + "、商机编号 " + business.getBusinessNumber() + " 更新成功"); + } + else + { + failureNum++; + failureMsg.append("
" + failureNum + "、商机编号 " + business.getBusinessNumber() + " 已存在"); + } + } + catch (Exception e) + { + failureNum++; + String msg = "
" + failureNum + "、商机编号 " + business.getBusinessNumber() + " 导入失败:"; + failureMsg.append(msg + e.getMessage()); + log.error(msg, e); + } + } + if (failureNum > 0) + { + failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:"); + throw new ServiceException(failureMsg.toString()); + } + else + { + successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:"); + } + return successMsg.toString(); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ContactPersonServiceImpl.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ContactPersonServiceImpl.java new file mode 100644 index 0000000..817fe41 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ContactPersonServiceImpl.java @@ -0,0 +1,97 @@ +package com.ruoyi.crm.system.service.impl; + +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.crm.system.domain.ContactPerson; +import com.ruoyi.crm.system.mapper.ContactPersonMapper; +import com.ruoyi.crm.system.service.IContactPersonService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 联系人Service业务层处理 + * + * @author ruoyi + * @date 2024-02-29 + */ +@Service +public class ContactPersonServiceImpl implements IContactPersonService +{ + @Autowired + private ContactPersonMapper contactPersonMapper; + + /** + * 查询联系人 + * + * @param id 联系人主键 + * @return 联系人 + */ + @Override + public ContactPerson selectContactPersonById(Long id) + { + return contactPersonMapper.selectContactPersonById(id); + } + + /** + * 查询联系人列表 + * + * @param contactPerson 联系人 + * @return 联系人 + */ + @Override + public List selectContactPersonList(ContactPerson contactPerson) + { + return contactPersonMapper.selectContactPersonList(contactPerson); + } + + /** + * 新增联系人 + * + * @param contactPerson 联系人 + * @return 结果 + */ + @Override + public int insertContactPerson(ContactPerson contactPerson) + { + contactPerson.setCreateTime(DateUtils.getNowDate()); + return contactPersonMapper.insertContactPerson(contactPerson); + } + + /** + * 修改联系人 + * + * @param contactPerson 联系人 + * @return 结果 + */ + @Override + public int updateContactPerson(ContactPerson contactPerson) + { + contactPerson.setUpdateTime(DateUtils.getNowDate()); + return contactPersonMapper.updateContactPerson(contactPerson); + } + + /** + * 批量删除联系人 + * + * @param ids 需要删除的联系人主键 + * @return 结果 + */ + @Override + public int deleteContactPersonByIds(Long[] ids) + { + return contactPersonMapper.deleteContactPersonByIds(ids); + } + + /** + * 删除联系人信息 + * + * @param id 联系人主键 + * @return 结果 + */ + @Override + public int deleteContactPersonById(Long id) + { + return contactPersonMapper.deleteContactPersonById(id); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/FollowUpPlanServiceImpl.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/FollowUpPlanServiceImpl.java new file mode 100644 index 0000000..f0ad048 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/FollowUpPlanServiceImpl.java @@ -0,0 +1,97 @@ +package com.ruoyi.crm.system.service.impl; + +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.crm.system.domain.FollowUpPlan; +import com.ruoyi.crm.system.mapper.FollowUpPlanMapper; +import com.ruoyi.crm.system.service.IFollowUpPlanService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 跟进计划Service业务层处理 + * + * @author ruoyi + * @date 2024-03-01 + */ +@Service +public class FollowUpPlanServiceImpl implements IFollowUpPlanService +{ + @Autowired + private FollowUpPlanMapper followUpPlanMapper; + + /** + * 查询跟进计划 + * + * @param id 跟进计划主键 + * @return 跟进计划 + */ + @Override + public FollowUpPlan selectFollowUpPlanById(Long id) + { + return followUpPlanMapper.selectFollowUpPlanById(id); + } + + /** + * 查询跟进计划列表 + * + * @param followUpPlan 跟进计划 + * @return 跟进计划 + */ + @Override + public List selectFollowUpPlanList(FollowUpPlan followUpPlan) + { + return followUpPlanMapper.selectFollowUpPlanList(followUpPlan); + } + + /** + * 新增跟进计划 + * + * @param followUpPlan 跟进计划 + * @return 结果 + */ + @Override + public int insertFollowUpPlan(FollowUpPlan followUpPlan) + { + followUpPlan.setCreateTime(DateUtils.getNowDate()); + return followUpPlanMapper.insertFollowUpPlan(followUpPlan); + } + + /** + * 修改跟进计划 + * + * @param followUpPlan 跟进计划 + * @return 结果 + */ + @Override + public int updateFollowUpPlan(FollowUpPlan followUpPlan) + { + followUpPlan.setUpdateTime(DateUtils.getNowDate()); + return followUpPlanMapper.updateFollowUpPlan(followUpPlan); + } + + /** + * 批量删除跟进计划 + * + * @param ids 需要删除的跟进计划主键 + * @return 结果 + */ + @Override + public int deleteFollowUpPlanByIds(Long[] ids) + { + return followUpPlanMapper.deleteFollowUpPlanByIds(ids); + } + + /** + * 删除跟进计划信息 + * + * @param id 跟进计划主键 + * @return 结果 + */ + @Override + public int deleteFollowUpPlanById(Long id) + { + return followUpPlanMapper.deleteFollowUpPlanById(id); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/FollowUpRecordServiceImpl.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/FollowUpRecordServiceImpl.java new file mode 100644 index 0000000..79382fc --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/FollowUpRecordServiceImpl.java @@ -0,0 +1,97 @@ +package com.ruoyi.crm.system.service.impl; + +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.crm.system.domain.FollowUpRecord; +import com.ruoyi.crm.system.mapper.FollowUpRecordMapper; +import com.ruoyi.crm.system.service.IFollowUpRecordService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 跟进记录Service业务层处理 + * + * @author ruoyi + * @date 2024-03-01 + */ +@Service +public class FollowUpRecordServiceImpl implements IFollowUpRecordService +{ + @Autowired + private FollowUpRecordMapper followUpRecordMapper; + + /** + * 查询跟进记录 + * + * @param id 跟进记录主键 + * @return 跟进记录 + */ + @Override + public FollowUpRecord selectFollowUpRecordById(Long id) + { + return followUpRecordMapper.selectFollowUpRecordById(id); + } + + /** + * 查询跟进记录列表 + * + * @param followUpRecord 跟进记录 + * @return 跟进记录 + */ + @Override + public List selectFollowUpRecordList(FollowUpRecord followUpRecord) + { + return followUpRecordMapper.selectFollowUpRecordList(followUpRecord); + } + + /** + * 新增跟进记录 + * + * @param followUpRecord 跟进记录 + * @return 结果 + */ + @Override + public int insertFollowUpRecord(FollowUpRecord followUpRecord) + { + followUpRecord.setCreateTime(DateUtils.getNowDate()); + return followUpRecordMapper.insertFollowUpRecord(followUpRecord); + } + + /** + * 修改跟进记录 + * + * @param followUpRecord 跟进记录 + * @return 结果 + */ + @Override + public int updateFollowUpRecord(FollowUpRecord followUpRecord) + { + followUpRecord.setUpdateTime(DateUtils.getNowDate()); + return followUpRecordMapper.updateFollowUpRecord(followUpRecord); + } + + /** + * 批量删除跟进记录 + * + * @param ids 需要删除的跟进记录主键 + * @return 结果 + */ + @Override + public int deleteFollowUpRecordByIds(Long[] ids) + { + return followUpRecordMapper.deleteFollowUpRecordByIds(ids); + } + + /** + * 删除跟进记录信息 + * + * @param id 跟进记录主键 + * @return 结果 + */ + @Override + public int deleteFollowUpRecordById(Long id) + { + return followUpRecordMapper.deleteFollowUpRecordById(id); + } +} diff --git a/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ServiceTicketServiceImpl.java b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ServiceTicketServiceImpl.java new file mode 100644 index 0000000..5f54b65 --- /dev/null +++ b/ruoyi-crm/src/main/java/com/ruoyi/crm/system/service/impl/ServiceTicketServiceImpl.java @@ -0,0 +1,97 @@ +package com.ruoyi.crm.system.service.impl; + +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.crm.system.domain.ServiceTicket; +import com.ruoyi.crm.system.mapper.ServiceTicketMapper; +import com.ruoyi.crm.system.service.IServiceTicketService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 服务工单Service业务层处理 + * + * @author ruoyi + * @date 2024-03-01 + */ +@Service +public class ServiceTicketServiceImpl implements IServiceTicketService +{ + @Autowired + private ServiceTicketMapper serviceTicketMapper; + + /** + * 查询服务工单 + * + * @param id 服务工单主键 + * @return 服务工单 + */ + @Override + public ServiceTicket selectServiceTicketById(Long id) + { + return serviceTicketMapper.selectServiceTicketById(id); + } + + /** + * 查询服务工单列表 + * + * @param serviceTicket 服务工单 + * @return 服务工单 + */ + @Override + public List selectServiceTicketList(ServiceTicket serviceTicket) + { + return serviceTicketMapper.selectServiceTicketList(serviceTicket); + } + + /** + * 新增服务工单 + * + * @param serviceTicket 服务工单 + * @return 结果 + */ + @Override + public int insertServiceTicket(ServiceTicket serviceTicket) + { + serviceTicket.setCreateTime(DateUtils.getNowDate()); + return serviceTicketMapper.insertServiceTicket(serviceTicket); + } + + /** + * 修改服务工单 + * + * @param serviceTicket 服务工单 + * @return 结果 + */ + @Override + public int updateServiceTicket(ServiceTicket serviceTicket) + { + serviceTicket.setUpdateTime(DateUtils.getNowDate()); + return serviceTicketMapper.updateServiceTicket(serviceTicket); + } + + /** + * 批量删除服务工单 + * + * @param ids 需要删除的服务工单主键 + * @return 结果 + */ + @Override + public int deleteServiceTicketByIds(Long[] ids) + { + return serviceTicketMapper.deleteServiceTicketByIds(ids); + } + + /** + * 删除服务工单信息 + * + * @param id 服务工单主键 + * @return 结果 + */ + @Override + public int deleteServiceTicketById(Long id) + { + return serviceTicketMapper.deleteServiceTicketById(id); + } +} diff --git a/ruoyi-crm/src/main/resources/mapper/crm/CrmCustomerMapper.xml b/ruoyi-crm/src/main/resources/mapper/crm/CrmCustomerMapper.xml index 9af146d..ac607ed 100644 --- a/ruoyi-crm/src/main/resources/mapper/crm/CrmCustomerMapper.xml +++ b/ruoyi-crm/src/main/resources/mapper/crm/CrmCustomerMapper.xml @@ -207,7 +207,7 @@ select c.id, c.owner, c.name, m.content, m.create_time from crm_customer c - inner join crm_comment m on m.customer_id=c.id + inner join follow_up_record m on m.customer_id=c.id where c.owner= #{owner} order by m.create_time desc limit 10 diff --git a/ruoyi-crm/src/main/resources/system/BusinessMapper.xml b/ruoyi-crm/src/main/resources/system/BusinessMapper.xml new file mode 100644 index 0000000..e84d029 --- /dev/null +++ b/ruoyi-crm/src/main/resources/system/BusinessMapper.xml @@ -0,0 +1,185 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, title, customer_id, customer_linkman, customer_name, customer_number, business_name, business_number, sales_stage, probability_of_wining, stage_type, person_in_charge, belonging_department, business_detail, forecast_business_price, forecast_success_time, collaborator, last_follow_up_time, phase_change_time, lose_order_cause, submitter, submit_time, create_by, create_time, update_by, update_time, remark, is_delete from business + + + + + + + + insert into business + + title, + customer_id, + customer_linkman, + customer_name, + customer_number, + business_name, + business_number, + sales_stage, + probability_of_wining, + stage_type, + person_in_charge, + belonging_department, + business_detail, + forecast_business_price, + forecast_success_time, + collaborator, + last_follow_up_time, + phase_change_time, + lose_order_cause, + submitter, + submit_time, + create_by, + create_time, + update_by, + update_time, + remark, + is_delete, + + + #{title}, + #{customerId}, + #{customerLinkman}, + #{customerName}, + #{customerNumber}, + #{businessName}, + #{businessNumber}, + #{salesStage}, + #{probabilityOfWining}, + #{stageType}, + #{personInCharge}, + #{belongingDepartment}, + #{businessDetail}, + #{forecastBusinessPrice}, + #{forecastSuccessTime}, + #{collaborator}, + #{lastFollowUpTime}, + #{phaseChangeTime}, + #{loseOrderCause}, + #{submitter}, + #{submitTime}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{remark}, + #{isDelete}, + + + + + update business + + title = #{title}, + customer_id = #{customerId}, + customer_linkman = #{customerLinkman}, + customer_name = #{customerName}, + customer_number = #{customerNumber}, + business_name = #{businessName}, + business_number = #{businessNumber}, + sales_stage = #{salesStage}, + probability_of_wining = #{probabilityOfWining}, + stage_type = #{stageType}, + person_in_charge = #{personInCharge}, + belonging_department = #{belongingDepartment}, + business_detail = #{businessDetail}, + forecast_business_price = #{forecastBusinessPrice}, + forecast_success_time = #{forecastSuccessTime}, + collaborator = #{collaborator}, + last_follow_up_time = #{lastFollowUpTime}, + phase_change_time = #{phaseChangeTime}, + lose_order_cause = #{loseOrderCause}, + submitter = #{submitter}, + submit_time = #{submitTime}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark}, + is_delete = #{isDelete}, + + where id = #{id} + + + + delete from business where id = #{id} + + + + delete from business where id in + + #{id} + + + + \ No newline at end of file diff --git a/ruoyi-crm/src/main/resources/system/ContactPersonMapper.xml b/ruoyi-crm/src/main/resources/system/ContactPersonMapper.xml new file mode 100644 index 0000000..9e10f49 --- /dev/null +++ b/ruoyi-crm/src/main/resources/system/ContactPersonMapper.xml @@ -0,0 +1,156 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, title, name, phone_number, customer_id, customer_number, dep, job, wx_number, mail_number, is_key, contact_person_detail, person_in_charge, belonging_department, collaborator, submitter, submit_time, create_by, create_time, update_by, update_time, remark, is_delete from contact_person + + + + + + + + insert into contact_person + + title, + name, + phone_number, + customer_id, + customer_number, + dep, + job, + wx_number, + mail_number, + is_key, + contact_person_detail, + person_in_charge, + belonging_department, + collaborator, + submitter, + submit_time, + create_by, + create_time, + update_by, + update_time, + remark, + is_delete, + + + #{title}, + #{name}, + #{phoneNumber}, + #{customerId}, + #{customerNumber}, + #{dep}, + #{job}, + #{wxNumber}, + #{mailNumber}, + #{isKey}, + #{contactPersonDetail}, + #{personInCharge}, + #{belongingDepartment}, + #{collaborator}, + #{submitter}, + #{submitTime}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{remark}, + #{isDelete}, + + + + + update contact_person + + title = #{title}, + name = #{name}, + phone_number = #{phoneNumber}, + customer_id = #{customerId}, + customer_number = #{customerNumber}, + dep = #{dep}, + job = #{job}, + wx_number = #{wxNumber}, + mail_number = #{mailNumber}, + is_key = #{isKey}, + contact_person_detail = #{contactPersonDetail}, + person_in_charge = #{personInCharge}, + belonging_department = #{belongingDepartment}, + collaborator = #{collaborator}, + submitter = #{submitter}, + submit_time = #{submitTime}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark}, + is_delete = #{isDelete}, + + where id = #{id} + + + + delete from contact_person where id = #{id} + + + + delete from contact_person where id in + + #{id} + + + \ No newline at end of file diff --git a/ruoyi-crm/src/main/resources/system/FollowUpPlanMapper.xml b/ruoyi-crm/src/main/resources/system/FollowUpPlanMapper.xml new file mode 100644 index 0000000..5ac79c2 --- /dev/null +++ b/ruoyi-crm/src/main/resources/system/FollowUpPlanMapper.xml @@ -0,0 +1,121 @@ + + + + + + + + + + + + + + + + + + + + + + + + + select id, title, plan_content, customer, plan_time, plan_executor, belonging_department, plan_status, submitter, submit_time, create_by, create_time, update_by, update_time, remark, is_delete from follow_up_plan + + + + + + + + insert into follow_up_plan + + title, + plan_content, + customer, + plan_time, + plan_executor, + belonging_department, + plan_status, + submitter, + submit_time, + create_by, + create_time, + update_by, + update_time, + remark, + is_delete, + + + #{title}, + #{planContent}, + #{customer}, + #{planTime}, + #{planExecutor}, + #{belongingDepartment}, + #{planStatus}, + #{submitter}, + #{submitTime}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{remark}, + #{isDelete}, + + + + + update follow_up_plan + + title = #{title}, + plan_content = #{planContent}, + customer = #{customer}, + plan_time = #{planTime}, + plan_executor = #{planExecutor}, + belonging_department = #{belongingDepartment}, + plan_status = #{planStatus}, + submitter = #{submitter}, + submit_time = #{submitTime}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark}, + is_delete = #{isDelete}, + + where id = #{id} + + + + delete from follow_up_plan where id = #{id} + + + + delete from follow_up_plan where id in + + #{id} + + + \ No newline at end of file diff --git a/ruoyi-crm/src/main/resources/system/FollowUpRecordMapper.xml b/ruoyi-crm/src/main/resources/system/FollowUpRecordMapper.xml new file mode 100644 index 0000000..f4bf226 --- /dev/null +++ b/ruoyi-crm/src/main/resources/system/FollowUpRecordMapper.xml @@ -0,0 +1,148 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, title, follow_up_record, follow_up_subject, customer_number, follow_up_business_opportunities, opportunity_number, contact_people, follow_up_type, content, follow_up_time, follow_up_people, belonging_department, submitter, submit_time, create_by, create_time, update_by, update_time, remark, customer_id from follow_up_record + + + + + + + + insert into follow_up_record + + id, + title, + follow_up_record, + follow_up_subject, + customer_number, + follow_up_business_opportunities, + opportunity_number, + contact_people, + follow_up_type, + content, + follow_up_time, + follow_up_people, + belonging_department, + submitter, + submit_time, + create_by, + create_time, + update_by, + update_time, + remark, + customer_id, + + + #{id}, + #{title}, + #{followUpRecord}, + #{followUpSubject}, + #{customerNumber}, + #{followUpBusinessOpportunities}, + #{opportunityNumber}, + #{contactPeople}, + #{followUpType}, + #{content}, + #{followUpTime}, + #{followUpPeople}, + #{belongingDepartment}, + #{submitter}, + #{submitTime}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{remark}, + #{customerId}, + + + + + update follow_up_record + + title = #{title}, + follow_up_record = #{followUpRecord}, + follow_up_subject = #{followUpSubject}, + customer_number = #{customerNumber}, + follow_up_business_opportunities = #{followUpBusinessOpportunities}, + opportunity_number = #{opportunityNumber}, + contact_people = #{contactPeople}, + follow_up_type = #{followUpType}, + content = #{content}, + follow_up_time = #{followUpTime}, + follow_up_people = #{followUpPeople}, + belonging_department = #{belongingDepartment}, + submitter = #{submitter}, + submit_time = #{submitTime}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark}, + customer_id = #{customerId}, + + where id = #{id} + + + + delete from follow_up_record where id = #{id} + + + + delete from follow_up_record where id in + + #{id} + + + \ No newline at end of file diff --git a/ruoyi-crm/src/main/resources/system/ServiceTicketMapper.xml b/ruoyi-crm/src/main/resources/system/ServiceTicketMapper.xml new file mode 100644 index 0000000..06f6ebb --- /dev/null +++ b/ruoyi-crm/src/main/resources/system/ServiceTicketMapper.xml @@ -0,0 +1,227 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, title, customer_name, customer_number, contract_title, contract_order_number, customer_contact, phone_number, service_type, service_order_number, how_many_service_order, service_star_time, service_end_time, demand_service_day, after_sales_technician, service_address, service_address_city, service_address_area, service_address_detail, sign_in, sign_in_time, sign_out, sign_out_time, is_solve_the_problem, scene_photo, customer_satisfaction, satisfaction_value, customer_comments_and_demands, submitter, submit_time, create_by, create_time, update_by, update_time, process_state, current_node, current_person_in_charge from service_ticket + + + + + + + + insert into service_ticket + + title, + customer_name, + customer_number, + contract_title, + contract_order_number, + customer_contact, + phone_number, + service_type, + service_order_number, + how_many_service_order, + service_star_time, + service_end_time, + demand_service_day, + after_sales_technician, + service_address, + service_address_city, + service_address_area, + service_address_detail, + sign_in, + sign_in_time, + sign_out, + sign_out_time, + is_solve_the_problem, + scene_photo, + customer_satisfaction, + satisfaction_value, + customer_comments_and_demands, + submitter, + submit_time, + create_by, + create_time, + update_by, + update_time, + process_state, + current_node, + current_person_in_charge, + + + #{title}, + #{customerName}, + #{customerNumber}, + #{contractTitle}, + #{contractOrderNumber}, + #{customerContact}, + #{phoneNumber}, + #{serviceType}, + #{serviceOrderNumber}, + #{howManyServiceOrder}, + #{serviceStarTime}, + #{serviceEndTime}, + #{demandServiceDay}, + #{afterSalesTechnician}, + #{serviceAddress}, + #{serviceAddressCity}, + #{serviceAddressArea}, + #{serviceAddressDetail}, + #{signIn}, + #{signInTime}, + #{signOut}, + #{signOutTime}, + #{isSolveTheProblem}, + #{scenePhoto}, + #{customerSatisfaction}, + #{satisfactionValue}, + #{customerCommentsAndDemands}, + #{submitter}, + #{submitTime}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{processState}, + #{currentNode}, + #{currentPersonInCharge}, + + + + + update service_ticket + + title = #{title}, + customer_name = #{customerName}, + customer_number = #{customerNumber}, + contract_title = #{contractTitle}, + contract_order_number = #{contractOrderNumber}, + customer_contact = #{customerContact}, + phone_number = #{phoneNumber}, + service_type = #{serviceType}, + service_order_number = #{serviceOrderNumber}, + how_many_service_order = #{howManyServiceOrder}, + service_star_time = #{serviceStarTime}, + service_end_time = #{serviceEndTime}, + demand_service_day = #{demandServiceDay}, + after_sales_technician = #{afterSalesTechnician}, + service_address = #{serviceAddress}, + service_address_city = #{serviceAddressCity}, + service_address_area = #{serviceAddressArea}, + service_address_detail = #{serviceAddressDetail}, + sign_in = #{signIn}, + sign_in_time = #{signInTime}, + sign_out = #{signOut}, + sign_out_time = #{signOutTime}, + is_solve_the_problem = #{isSolveTheProblem}, + scene_photo = #{scenePhoto}, + customer_satisfaction = #{customerSatisfaction}, + satisfaction_value = #{satisfactionValue}, + customer_comments_and_demands = #{customerCommentsAndDemands}, + submitter = #{submitter}, + submit_time = #{submitTime}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + process_state = #{processState}, + current_node = #{currentNode}, + current_person_in_charge = #{currentPersonInCharge}, + + where id = #{id} + + + + delete from service_ticket where id = #{id} + + + + delete from service_ticket where id in + + #{id} + + + \ No newline at end of file diff --git a/ruoyi-ui/src/api/crm/business.js b/ruoyi-ui/src/api/crm/business.js new file mode 100644 index 0000000..bafd59e --- /dev/null +++ b/ruoyi-ui/src/api/crm/business.js @@ -0,0 +1,53 @@ +import request from '@/utils/request' + +// 查询商机列表 +export function listBusiness(query) { + return request({ + url: '/system/business/list', + method: 'get', + params: query + }) +} + +// 查询商机详细 +export function getBusiness(id) { + return request({ + url: '/system/business/' + id, + method: 'get' + }) +} + +// 新增商机 +export function addBusiness(data) { + return request({ + url: '/system/business', + method: 'post', + data: data + }) +} + +// 修改商机 +export function updateBusiness(data) { + return request({ + url: '/system/business', + method: 'put', + data: data + }) +} + +// 删除商机 +export function delBusiness(id) { + return request({ + url: '/system/business/' + id, + method: 'delete' + }) +} + +// 自动添加一条跟进记录 +export function addRecords(data) { + return request({ + url: '/system/business/addRecords', + method: 'post', + data: data + }) +} diff --git a/ruoyi-ui/src/api/crm/clues.js b/ruoyi-ui/src/api/crm/clues.js index 7d29b4a..560a20b 100644 --- a/ruoyi-ui/src/api/crm/clues.js +++ b/ruoyi-ui/src/api/crm/clues.js @@ -18,6 +18,15 @@ export function listClues(query) { }) } + //添加关联人 + export function addAssociation(data) { + return request({ + url: '/system/person', + method: 'post', + data: data + }) + } + // 查询线索详细 export function getClues(id) { return request({ diff --git a/ruoyi-ui/src/api/crm/comment.js b/ruoyi-ui/src/api/crm/comment.js index b2ee03a..f8507d2 100644 --- a/ruoyi-ui/src/api/crm/comment.js +++ b/ruoyi-ui/src/api/crm/comment.js @@ -3,7 +3,7 @@ import request from '@/utils/request' // 查询跟进记录列表 export function listComment(query) { return request({ - url: '/crm/comment/list', + url: '/system/record/list', method: 'get', params: query }) @@ -20,7 +20,7 @@ export function listCustomerComment(customerId) { // 查询跟进记录详细 export function getComment(id) { return request({ - url: '/crm/comment/' + id, + url: '/system/record/' + id, method: 'get' }) } @@ -28,7 +28,7 @@ export function getComment(id) { // 新增跟进记录 export function addComment(data) { return request({ - url: '/crm/comment', + url: '/system/record', method: 'post', data: data }) @@ -37,7 +37,7 @@ export function addComment(data) { // 修改跟进记录 export function updateComment(data) { return request({ - url: '/crm/comment', + url: '/system/record', method: 'put', data: data }) @@ -46,7 +46,7 @@ export function updateComment(data) { // 删除跟进记录 export function delComment(id) { return request({ - url: '/crm/comment/' + id, + url: '/system/record/' + id, method: 'delete' }) } diff --git a/ruoyi-ui/src/api/crm/person.js b/ruoyi-ui/src/api/crm/person.js new file mode 100644 index 0000000..e252561 --- /dev/null +++ b/ruoyi-ui/src/api/crm/person.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询联系人列表 +export function listPerson(query) { + return request({ + url: '/system/person/list', + method: 'get', + params: query + }) +} + +// 查询联系人详细 +export function getPerson(id) { + return request({ + url: '/system/person/' + id, + method: 'get' + }) +} + +// 新增联系人 +export function addPerson(data) { + return request({ + url: '/system/person', + method: 'post', + data: data + }) +} + +// 修改联系人 +export function updatePerson(data) { + return request({ + url: '/system/person', + method: 'put', + data: data + }) +} + +// 删除联系人 +export function delPerson(id) { + return request({ + url: '/system/person/' + id, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/api/crm/plan.js b/ruoyi-ui/src/api/crm/plan.js new file mode 100644 index 0000000..16b7adb --- /dev/null +++ b/ruoyi-ui/src/api/crm/plan.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询跟进计划列表 +export function listPlan(query) { + return request({ + url: '/system/plan/list', + method: 'get', + params: query + }) +} + +// 查询跟进计划详细 +export function getPlan(id) { + return request({ + url: '/system/plan/' + id, + method: 'get' + }) +} + +// 新增跟进计划 +export function addPlan(data) { + return request({ + url: '/system/plan', + method: 'post', + data: data + }) +} + +// 修改跟进计划 +export function updatePlan(data) { + return request({ + url: '/system/plan', + method: 'put', + data: data + }) +} + +// 删除跟进计划 +export function delPlan(id) { + return request({ + url: '/system/plan/' + id, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/api/crm/record.js b/ruoyi-ui/src/api/crm/record.js new file mode 100644 index 0000000..eabb610 --- /dev/null +++ b/ruoyi-ui/src/api/crm/record.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询跟进记录列表 +export function listRecord(query) { + return request({ + url: '/system/record/list', + method: 'get', + params: query + }) +} + +// 查询跟进记录详细 +export function getRecord(id) { + return request({ + url: '/system/record/' + id, + method: 'get' + }) +} + +// 新增跟进记录 +export function addRecord(data) { + return request({ + url: '/system/record', + method: 'post', + data: data + }) +} + +// 修改跟进记录 +export function updateRecord(data) { + return request({ + url: '/system/record', + method: 'put', + data: data + }) +} + +// 删除跟进记录 +export function delRecord(id) { + return request({ + url: '/system/record/' + id, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/api/crm/ticket.js b/ruoyi-ui/src/api/crm/ticket.js new file mode 100644 index 0000000..b44daff --- /dev/null +++ b/ruoyi-ui/src/api/crm/ticket.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询服务工单列表 +export function listTicket(query) { + return request({ + url: '/system/ticket/list', + method: 'get', + params: query + }) +} + +// 查询服务工单详细 +export function getTicket(id) { + return request({ + url: '/system/ticket/' + id, + method: 'get' + }) +} + +// 新增服务工单 +export function addTicket(data) { + return request({ + url: '/system/ticket', + method: 'post', + data: data + }) +} + +// 修改服务工单 +export function updateTicket(data) { + return request({ + url: '/system/ticket', + method: 'put', + data: data + }) +} + +// 删除服务工单 +export function delTicket(id) { + return request({ + url: '/system/ticket/' + id, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/views/crm/business/index.vue b/ruoyi-ui/src/views/crm/business/index.vue new file mode 100644 index 0000000..eaf5ae1 --- /dev/null +++ b/ruoyi-ui/src/views/crm/business/index.vue @@ -0,0 +1,766 @@ + + + diff --git a/ruoyi-ui/src/views/crm/clues/AddAssociation.vue b/ruoyi-ui/src/views/crm/clues/AddAssociation.vue new file mode 100644 index 0000000..55bcb9e --- /dev/null +++ b/ruoyi-ui/src/views/crm/clues/AddAssociation.vue @@ -0,0 +1,112 @@ + + + diff --git a/ruoyi-ui/src/views/crm/clues/list.vue b/ruoyi-ui/src/views/crm/clues/list.vue index 7765f67..9c6df12 100644 --- a/ruoyi-ui/src/views/crm/clues/list.vue +++ b/ruoyi-ui/src/views/crm/clues/list.vue @@ -59,6 +59,7 @@ @@ -97,6 +98,20 @@ + + + + + + + + + + + + + + @@ -126,236 +141,255 @@ + diff --git a/ruoyi-ui/src/views/crm/clues/person-list.vue b/ruoyi-ui/src/views/crm/clues/person-list.vue index 4b2c8ad..6b9e486 100644 --- a/ruoyi-ui/src/views/crm/clues/person-list.vue +++ b/ruoyi-ui/src/views/crm/clues/person-list.vue @@ -59,6 +59,7 @@ @@ -126,237 +127,250 @@ + diff --git a/ruoyi-ui/src/views/crm/customer/Comment.vue b/ruoyi-ui/src/views/crm/customer/Comment.vue index 1e8fa9b..64c4008 100644 --- a/ruoyi-ui/src/views/crm/customer/Comment.vue +++ b/ruoyi-ui/src/views/crm/customer/Comment.vue @@ -10,8 +10,8 @@ - - + + @@ -47,9 +47,9 @@ export default { }, // 表单参数 form: { - customerId: undefined, - content: undefined, - nextFollowupTime: undefined + customerId: '', + content: '', + followUpTime: undefined }, // 表单校验 rules: { @@ -80,9 +80,9 @@ export default { }, handleClose () { this.form = { - customerId: undefined, - content: undefined, - nextFollowupTime: undefined + customerId: '', + content: '', + followUpTime: undefined } this.openComment = false this.$emit("close-dialog"); @@ -90,7 +90,9 @@ export default { /** 提交按钮 */ submitForm () { this.$refs['form'].validate((valid) => { + console.log(this.form,'form') if (valid) { + console.log(this.form,'form') addComment(this.form).then((response) => { this.$modal.msgSuccess('保存成功') this.handleClose() @@ -106,4 +108,4 @@ export default { }, } - \ No newline at end of file + diff --git a/ruoyi-ui/src/views/crm/person/index.vue b/ruoyi-ui/src/views/crm/person/index.vue new file mode 100644 index 0000000..18bad75 --- /dev/null +++ b/ruoyi-ui/src/views/crm/person/index.vue @@ -0,0 +1,492 @@ + + + diff --git a/ruoyi-ui/src/views/crm/plan/index.vue b/ruoyi-ui/src/views/crm/plan/index.vue new file mode 100644 index 0000000..bf8aee6 --- /dev/null +++ b/ruoyi-ui/src/views/crm/plan/index.vue @@ -0,0 +1,404 @@ + + + diff --git a/ruoyi-ui/src/views/crm/pool/list.vue b/ruoyi-ui/src/views/crm/pool/list.vue index fcc0e4f..eee9305 100644 --- a/ruoyi-ui/src/views/crm/pool/list.vue +++ b/ruoyi-ui/src/views/crm/pool/list.vue @@ -18,7 +18,7 @@ - + diff --git a/ruoyi-ui/src/views/crm/record/index.vue b/ruoyi-ui/src/views/crm/record/index.vue new file mode 100644 index 0000000..5269e62 --- /dev/null +++ b/ruoyi-ui/src/views/crm/record/index.vue @@ -0,0 +1,458 @@ + + + diff --git a/ruoyi-ui/src/views/crm/ticket/index.vue b/ruoyi-ui/src/views/crm/ticket/index.vue new file mode 100644 index 0000000..b3ccee1 --- /dev/null +++ b/ruoyi-ui/src/views/crm/ticket/index.vue @@ -0,0 +1,789 @@ + + + diff --git a/ruoyi-ui/src/views/system/user/index.vue b/ruoyi-ui/src/views/system/user/index.vue index 0134a8c..1fdf276 100644 --- a/ruoyi-ui/src/views/system/user/index.vue +++ b/ruoyi-ui/src/views/system/user/index.vue @@ -502,6 +502,7 @@ import { getToken } from '@/utils/auth' import { treeselect } from '@/api/system/dept' import Treeselect from '@riophae/vue-treeselect' import '@riophae/vue-treeselect/dist/vue-treeselect.css' +import {getTenant} from "../../../utils/auth"; export default { name: 'User', @@ -556,7 +557,8 @@ export default { // 是否更新已经存在的用户数据 updateSupport: 0, // 设置上传的请求头部 - headers: { Authorization: 'Bearer ' + getToken() }, + // headers: { Authorization: 'Bearer ' + getToken() }, + headers: { tenant: getTenant() ,Authorization: 'Bearer ' + getToken() }, // 上传的地址 url: process.env.VUE_APP_BASE_API + '/system/user/importData', }, @@ -858,4 +860,4 @@ export default { }, }, } - \ No newline at end of file + diff --git a/sql/rycrm-tenant-1-zzw-20240306.sql b/sql/rycrm-tenant-1-zzw-20240306.sql new file mode 100644 index 0000000..0eabc71 --- /dev/null +++ b/sql/rycrm-tenant-1-zzw-20240306.sql @@ -0,0 +1,1329 @@ +/* + Navicat Premium Data Transfer + + Source Server : little + Source Server Type : MySQL + Source Server Version : 50703 + Source Host : localhost:3306 + Source Schema : rycrm-tenant-1 + + Target Server Type : MySQL + Target Server Version : 50703 + File Encoding : 65001 + + Date: 06/03/2024 10:42:41 +*/ + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for business +-- ---------------------------- +DROP TABLE IF EXISTS `business`; +CREATE TABLE `business` ( + `id` int(20) NOT NULL AUTO_INCREMENT COMMENT '商机id', + `title` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标题', + `customer_id` int(20) NULL DEFAULT NULL COMMENT '关联客户', + `customer_linkman` int(20) NULL DEFAULT NULL COMMENT '客户联系人', + `customer_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户名称', + `customer_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户编号', + `business_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '商机名称', + `business_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '商机编号', + `sales_stage` int(4) NULL DEFAULT NULL COMMENT '销售阶段', + `probability_of_wining` int(6) NULL DEFAULT NULL COMMENT '赢率', + `stage_type` int(4) NULL DEFAULT NULL COMMENT '阶段类型', + `person_in_charge` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '负责人', + `belonging_department` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '归属部门', + `business_detail` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '商机明细', + `forecast_business_price` int(6) NULL DEFAULT NULL COMMENT '预测商机金额(单位:分)', + `forecast_success_time` datetime NULL DEFAULT NULL COMMENT '预计成交日期', + `collaborator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '协作人', + `last_follow_up_time` datetime NULL DEFAULT NULL COMMENT '最后跟进时间', + `phase_change_time` datetime NULL DEFAULT NULL COMMENT '阶段变更时间', + `lose_order_cause` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '输单原因', + `submitter` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '提交人', + `submit_time` datetime NULL DEFAULT NULL COMMENT '提交时间', + `create_by` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `is_delete` int(4) NULL DEFAULT NULL COMMENT '删除标志', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '商机表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of business +-- ---------------------------- +INSERT INTO `business` VALUES (1, '1', 1, 1, '1', '1', '1', '1', 2, 1, 0, '1', '1', '1', 1, '2024-03-01 08:00:00', '1', '2024-03-01 08:00:00', '2024-03-01 08:00:00', '11', '1', '2024-03-01 08:00:00', NULL, '2024-03-01 09:21:40', NULL, '2024-03-05 10:05:06', '1', 1); +INSERT INTO `business` VALUES (2, NULL, NULL, NULL, NULL, NULL, NULL, 'qqq', 0, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '2024-03-05 16:58:01', NULL, NULL, NULL, NULL); +INSERT INTO `business` VALUES (3, '7', 7, NULL, '7', '7', '7', '7', 2, 7, 1, '1', '1', '', NULL, NULL, '', NULL, NULL, '', '', NULL, NULL, '2024-03-05 17:48:47', NULL, NULL, NULL, NULL); + +-- ---------------------------- +-- Table structure for contact_person +-- ---------------------------- +DROP TABLE IF EXISTS `contact_person`; +CREATE TABLE `contact_person` ( + `id` int(20) NOT NULL AUTO_INCREMENT COMMENT '联系人id', + `title` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标题', + `name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '姓名', + `phone_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '手机号', + `customer_id` int(20) NULL DEFAULT NULL COMMENT '关联客户', + `customer_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户编号', + `dep` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '部门', + `job` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '职务', + `wx_number` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '微信号', + `mail_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '邮箱', + `is_key` int(4) NULL DEFAULT NULL COMMENT '是否关键决策人', + `contact_person_detail` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人详情', + `person_in_charge` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '负责人', + `belonging_department` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '归属部门', + `collaborator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '协作人', + `submitter` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '提交人', + `submit_time` datetime NULL DEFAULT NULL COMMENT '提交时间', + `create_by` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `is_delete` int(4) NULL DEFAULT NULL COMMENT '删除标志', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '联系人表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of contact_person +-- ---------------------------- +INSERT INTO `contact_person` VALUES (2, '1', '1', '1', 1, '1', '1', '1', '1', '16545118@qq.com', 0, '1', '1', '1', '1', '1', '2024-03-01 08:00:00', NULL, '2024-03-01 09:21:04', NULL, NULL, '1', 1); +INSERT INTO `contact_person` VALUES (3, NULL, '张三', '13599599983', 3, NULL, NULL, NULL, 'sadaw123', '16545118@qq.com', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '2024-03-04 11:15:48', NULL, NULL, NULL, NULL); +INSERT INTO `contact_person` VALUES (4, NULL, '1111111', '13599599983', 3, NULL, NULL, NULL, '11111111111111111', '16545118@qq.com', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '2024-03-04 15:58:42', NULL, NULL, NULL, NULL); +INSERT INTO `contact_person` VALUES (5, NULL, '222222222', '13599599983', 3, NULL, NULL, NULL, '2222222222', '484648559@qq.com', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '2024-03-04 15:58:51', NULL, NULL, NULL, NULL); + +-- ---------------------------- +-- Table structure for crm_comment +-- ---------------------------- +DROP TABLE IF EXISTS `crm_comment`; +CREATE TABLE `crm_comment` ( + `id` bigint(20) NOT NULL AUTO_INCREMENT, + `customer_id` bigint(20) NULL DEFAULT NULL COMMENT '客户ID', + `content` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '回复内容', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '客户跟进记录表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of crm_comment +-- ---------------------------- +INSERT INTO `crm_comment` VALUES (1, 4, '111', 'admin', '2024-03-01 16:25:58', '', NULL); +INSERT INTO `crm_comment` VALUES (2, 4, '客户同意签合同', 'admin', '2024-03-01 16:30:31', '', NULL); +INSERT INTO `crm_comment` VALUES (3, 2, '1223', 'admin', '2024-03-05 11:31:11', '', NULL); + +-- ---------------------------- +-- Table structure for crm_customer +-- ---------------------------- +DROP TABLE IF EXISTS `crm_customer`; +CREATE TABLE `crm_customer` ( + `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '客户ID', + `code` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '客户编号', + `name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '客户名称', + `linkman` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '联系人', + `phone` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '联系电话', + `region` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '地区', + `customer_industry` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '客户行业', + `customer_rank` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '客户级别', + `customer_status` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '客户状态', + `clues_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '线索名称', + `clues_source` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '线索来源', + `clues_status` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '线索状态', + `deal_status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '是否成交(0未成交 1成交)', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '1' COMMENT '状态(0线索 1客户 2公海)', + `owner` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '负责人', + `del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '删除标志(0代表存在 2代表删除)', + `version` int(11) NULL DEFAULT 0 COMMENT '版本', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `last_update_record` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '最后跟进记录', + `last_followup_time` datetime NULL DEFAULT NULL COMMENT '最后跟进时间', + `next_followup_time` datetime NULL DEFAULT NULL COMMENT '下次跟进时间', + `pre_owner` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '前负责人', + `to_pool_time` datetime NULL DEFAULT NULL COMMENT '转公海时间', + `to_customer_time` datetime NULL DEFAULT NULL COMMENT '转客户时间', + `pool_type` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '公海类型', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_name`(`name`) USING BTREE, + INDEX `idx_phone`(`phone`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '客户表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of crm_customer +-- ---------------------------- +INSERT INTO `crm_customer` VALUES (1, '', '线索转客户1', '张三', '13800138000', '', '', 'A', '意向客户', '新线索1', '', '', '0', '2', 'admin', '0', 0, 'admin', '2022-01-19 17:10:47', '', '2022-01-19 17:11:41', NULL, '', '2022-01-19 17:11:41', NULL, '', NULL, '2022-01-19 17:11:41', 'normal'); +INSERT INTO `crm_customer` VALUES (2, '', '5555', '李四', '13800138001', '', '', 'B', '测试客户', '新线索2', '', '', '0', '1', 'admin', '0', 0, 'admin', '2022-01-19 17:11:04', '', '2024-03-05 11:31:11', NULL, '1', '2024-03-05 11:31:11', '2024-03-12 00:00:00', '', NULL, '2024-03-04 09:20:47', ''); +INSERT INTO `crm_customer` VALUES (3, '', '', '王五', '13800138002', '', '', '', '', '新线索3', '', '', '0', '0', 'admin', '0', 0, 'admin', '2022-01-19 17:11:21', '', NULL, NULL, '', NULL, NULL, '', NULL, NULL, ''); +INSERT INTO `crm_customer` VALUES (4, '111', '111', '111', '13599599983', '北京市', '房地产', 'A', '测试客户', '', '', '', '1', '1', 'admin', '0', 0, 'admin', '2024-03-01 16:25:46', 'admin', '2024-03-01 16:57:14', '111', '客户同意签合同', '2024-03-01 16:30:31', '2024-03-02 00:00:00', '', NULL, NULL, ''); +INSERT INTO `crm_customer` VALUES (5, '', '1', '1', '13599599983', '', '', 'A', '测试客户', '1', '电话', '有效', '0', '1', 'admin', '0', 0, 'admin', '2024-03-01 16:56:25', '', '2024-03-01 16:56:48', '1', '', NULL, NULL, '', NULL, '2024-03-01 16:56:48', ''); + +-- ---------------------------- +-- Table structure for crm_order +-- ---------------------------- +DROP TABLE IF EXISTS `crm_order`; +CREATE TABLE `crm_order` ( + `id` bigint(20) NOT NULL AUTO_INCREMENT, + `order_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '订单编号', + `customer_id` bigint(20) NOT NULL COMMENT '客户ID', + `amount` decimal(19, 2) NULL DEFAULT 0.00 COMMENT '订单金额', + `owner` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '负责人', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '1' COMMENT '状态(0待审核 1审核通过 2审核不通过)', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `idx_order_no`(`order_no`) USING BTREE, + INDEX `idx_customer_id`(`customer_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '订单表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of crm_order +-- ---------------------------- +INSERT INTO `crm_order` VALUES (1, '226as26AS', 4, 10000.00, 'admin', 'admin', '2024-03-01 16:32:01', '', NULL, '晚上五点签合同', '1'); + +-- ---------------------------- +-- Table structure for follow_up_plan +-- ---------------------------- +DROP TABLE IF EXISTS `follow_up_plan`; +CREATE TABLE `follow_up_plan` ( + `id` int(20) NOT NULL AUTO_INCREMENT COMMENT '跟进计划id', + `title` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标题', + `plan_content` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '计划内容', + `customer` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '跟进客户', + `plan_time` datetime NULL DEFAULT NULL COMMENT '跟进时间', + `plan_executor` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '跟进执行人', + `belonging_department` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '归属部门', + `plan_status` int(4) NULL DEFAULT NULL COMMENT '计划状态', + `submitter` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '提交人', + `submit_time` datetime NULL DEFAULT NULL COMMENT '提交时间', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `is_delete` int(4) NULL DEFAULT NULL COMMENT '是否删除', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '跟进计划表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of follow_up_plan +-- ---------------------------- +INSERT INTO `follow_up_plan` VALUES (1, '1', '1', '1', '2024-03-01 08:00:00', '1', '1', NULL, '1', '2024-03-01 08:00:00', NULL, '2024-03-01 14:45:21', NULL, NULL, '1', 1); + +-- ---------------------------- +-- Table structure for follow_up_record +-- ---------------------------- +DROP TABLE IF EXISTS `follow_up_record`; +CREATE TABLE `follow_up_record` ( + `id` int(20) NOT NULL AUTO_INCREMENT, + `title` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标题', + `follow_up_record` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '跟进记录', + `follow_up_subject` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '跟进主体', + `customer_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户编号(辅助字段)', + `follow_up_business_opportunities` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '跟进商机', + `opportunity_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '商机编号(辅助字段)', + `contact_people` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系人', + `follow_up_type` int(4) NULL DEFAULT NULL COMMENT '跟进方式', + `content` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '跟进内容', + `follow_up_time` datetime NULL DEFAULT NULL COMMENT '跟进时间', + `follow_up_people` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '跟进人', + `belonging_department` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '归属部门', + `submitter` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '提交人', + `submit_time` datetime NULL DEFAULT NULL COMMENT '提交时间', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + `customer_id` int(20) NULL DEFAULT NULL COMMENT '客户id', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 10 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '跟进记录表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of follow_up_record +-- ---------------------------- +INSERT INTO `follow_up_record` VALUES (1, '1', '1', '1', '1', '1', '1', '1', NULL, '1', '2024-03-01 08:00:00', '1', '1', '1', '2024-03-01 08:00:00', NULL, '2024-03-01 14:45:50', NULL, NULL, '1', 1); +INSERT INTO `follow_up_record` VALUES (2, '商机已确认', '客户已确认,即将报价', NULL, 'zy_202403051', NULL, NULL, NULL, NULL, '商机已确认,客户已确认,即将报价', NULL, NULL, NULL, NULL, NULL, NULL, '2024-03-05 10:05:06', NULL, NULL, NULL, NULL); +INSERT INTO `follow_up_record` VALUES (3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '2024-03-05 21:49:17', NULL, NULL, NULL, NULL); +INSERT INTO `follow_up_record` VALUES (4, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '2024-03-07 00:00:00', NULL, NULL, NULL, NULL, NULL, '2024-03-05 21:54:15', NULL, NULL, NULL, NULL); +INSERT INTO `follow_up_record` VALUES (5, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '2024-03-08 00:00:00', NULL, NULL, NULL, NULL, NULL, '2024-03-05 21:55:40', NULL, NULL, NULL, NULL); +INSERT INTO `follow_up_record` VALUES (6, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '2024-03-07 00:00:00', NULL, NULL, NULL, NULL, NULL, '2024-03-05 21:58:26', NULL, NULL, NULL, NULL); +INSERT INTO `follow_up_record` VALUES (7, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'ccccccc', '2024-03-08 00:00:00', NULL, NULL, NULL, NULL, NULL, '2024-03-05 21:59:54', NULL, NULL, NULL, 2); +INSERT INTO `follow_up_record` VALUES (8, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'vvvvvvvvv', '2024-03-09 00:00:00', NULL, NULL, NULL, NULL, NULL, '2024-03-05 22:01:35', NULL, NULL, NULL, 2); +INSERT INTO `follow_up_record` VALUES (9, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'wwww', '2024-03-07 00:00:00', NULL, NULL, NULL, NULL, NULL, '2024-03-06 10:30:32', NULL, NULL, NULL, 2); + +-- ---------------------------- +-- Table structure for gen_table +-- ---------------------------- +DROP TABLE IF EXISTS `gen_table`; +CREATE TABLE `gen_table` ( + `table_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号', + `table_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '表名称', + `table_comment` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '表描述', + `sub_table_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '关联子表的表名', + `sub_table_fk_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '子表关联的外键名', + `class_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '实体类名称', + `tpl_category` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'crud' COMMENT '使用的模板(crud单表操作 tree树表操作)', + `package_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '生成包路径', + `module_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '生成模块名', + `business_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '生成业务名', + `function_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '生成功能名', + `function_author` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '生成功能作者', + `gen_type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '生成代码方式(0zip压缩包 1自定义路径)', + `gen_path` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '/' COMMENT '生成路径(不填默认项目路径)', + `options` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '其它生成选项', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + PRIMARY KEY (`table_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '代码生成业务表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of gen_table +-- ---------------------------- +INSERT INTO `gen_table` VALUES (1, 'crm_customer', '客户表', NULL, NULL, 'CrmCustomer', 'crud', 'com.ruoyi.crm', 'crm', 'customer', '客户', 'ruoyi', '0', '/', '{}', 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30', NULL); +INSERT INTO `gen_table` VALUES (2, 'crm_comment', '客户跟进记录表', NULL, NULL, 'CrmComment', 'crud', 'com.ruoyi.crm', 'crm', 'comment', '跟进记录', 'ruoyi', '0', '/', '{\"parentMenuId\":\"2008\"}', 'admin', '2022-01-18 14:56:58', '', '2022-01-18 15:06:30', NULL); +INSERT INTO `gen_table` VALUES (3, 'crm_order', '订单表', NULL, NULL, 'CrmOrder', 'crud', 'com.ruoyi.crm', 'crm', 'order', '我的订单', 'ruoyi', '0', '/', '{\"parentMenuId\":\"2008\"}', 'admin', '2022-01-18 18:10:56', '', '2022-01-19 10:54:01', NULL); + +-- ---------------------------- +-- Table structure for gen_table_column +-- ---------------------------- +DROP TABLE IF EXISTS `gen_table_column`; +CREATE TABLE `gen_table_column` ( + `column_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号', + `table_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '归属表编号', + `column_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '列名称', + `column_comment` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '列描述', + `column_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '列类型', + `java_type` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'JAVA类型', + `java_field` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'JAVA字段名', + `is_pk` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '是否主键(1是)', + `is_increment` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '是否自增(1是)', + `is_required` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '是否必填(1是)', + `is_insert` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '是否为插入字段(1是)', + `is_edit` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '是否编辑字段(1是)', + `is_list` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '是否列表字段(1是)', + `is_query` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '是否查询字段(1是)', + `query_type` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'EQ' COMMENT '查询方式(等于、不等于、大于、小于、范围)', + `html_type` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '显示类型(文本框、文本域、下拉框、复选框、单选框、日期控件)', + `dict_type` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '字典类型', + `sort` int(11) NULL DEFAULT NULL COMMENT '排序', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + PRIMARY KEY (`column_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 50 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '代码生成业务表字段' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of gen_table_column +-- ---------------------------- +INSERT INTO `gen_table_column` VALUES (1, '1', 'id', '客户ID', 'bigint(20)', 'Long', 'id', '1', '1', NULL, '1', NULL, NULL, NULL, 'EQ', 'input', '', 1, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (2, '1', 'code', '客户编号', 'varchar(32)', 'String', 'code', '0', '0', NULL, '1', '1', '1', '1', 'LIKE', 'input', '', 2, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (3, '1', 'name', '客户名称', 'varchar(64)', 'String', 'name', '0', '0', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 3, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (4, '1', 'linkman', '联系人', 'varchar(64)', 'String', 'linkman', '0', '0', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 4, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (5, '1', 'phone', '联系电话', 'varchar(64)', 'String', 'phone', '0', '0', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 5, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (6, '1', 'region', '地区', 'varchar(64)', 'String', 'region', '0', '0', NULL, '1', '1', '1', '1', 'EQ', 'select', 'region_list', 6, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (7, '1', 'customer_industry', '客户行业', 'varchar(64)', 'String', 'customerIndustry', '0', '0', NULL, '1', '1', '1', '1', 'EQ', 'select', 'customer_industry', 7, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (8, '1', 'customer_rank', '客户级别', 'varchar(64)', 'String', 'customerRank', '0', '0', '1', '1', '1', '1', '1', 'EQ', 'select', 'customer_rank', 8, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (9, '1', 'customer_status', '客户状态', 'varchar(64)', 'String', 'customerStatus', '0', '0', NULL, '1', '1', '1', '1', 'EQ', 'select', 'customer_status', 9, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (10, '1', 'status', '状态(0线索 1客户 2公海)', 'char(1)', 'String', 'status', '0', '0', NULL, NULL, NULL, NULL, NULL, 'EQ', 'radio', '', 10, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (11, '1', 'clues_name', '线索名称', 'varchar(64)', 'String', 'cluesName', '0', '0', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 11, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (12, '1', 'clues_source', '线索来源', 'varchar(64)', 'String', 'cluesSource', '0', '0', NULL, '1', '1', '1', '1', 'EQ', 'select', 'clues_source', 12, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (13, '1', 'clues_status', '线索状态', 'varchar(64)', 'String', 'cluesStatus', '0', '0', NULL, '1', '1', '1', '1', 'EQ', 'select', 'clues_status', 13, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (14, '1', 'deal_status', '是否成交(0未成交 1成交)', 'char(1)', 'String', 'dealStatus', '0', '0', NULL, NULL, NULL, NULL, NULL, 'EQ', 'radio', '', 14, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (16, '1', 'del_flag', '删除标志(0代表存在 2代表删除)', 'char(1)', 'String', 'delFlag', '0', '0', NULL, NULL, NULL, NULL, NULL, 'EQ', 'input', '', 16, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (17, '1', 'version', '版本', 'int(11)', 'Long', 'version', '0', '0', NULL, NULL, NULL, NULL, NULL, 'EQ', 'input', '', 17, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (18, '1', 'create_by', '创建者', 'varchar(64)', 'String', 'createBy', '0', '0', NULL, '1', NULL, NULL, NULL, 'EQ', 'input', '', 18, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (19, '1', 'create_time', '创建时间', 'datetime', 'Date', 'createTime', '0', '0', NULL, '1', NULL, NULL, '1', 'EQ', 'datetime', '', 19, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (20, '1', 'update_by', '更新者', 'varchar(64)', 'String', 'updateBy', '0', '0', NULL, '1', '1', NULL, NULL, 'EQ', 'input', '', 20, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (21, '1', 'update_time', '更新时间', 'datetime', 'Date', 'updateTime', '0', '0', NULL, '1', '1', NULL, NULL, 'EQ', 'datetime', '', 21, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (22, '1', 'remark', '备注', 'varchar(500)', 'String', 'remark', '0', '0', NULL, '1', '1', NULL, NULL, 'EQ', 'textarea', '', 22, 'admin', '2022-01-12 18:02:20', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (23, '1', 'last_update_record', '最后跟进记录', 'varchar(255)', 'String', 'lastUpdateRecord', '0', '0', NULL, NULL, NULL, '1', NULL, 'EQ', 'input', '', 23, '', '2022-01-13 10:40:24', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (24, '1', 'last_followup_time', '最后跟进时间', 'datetime', 'Date', 'lastFollowupTime', '0', '0', NULL, NULL, NULL, '1', '1', 'BETWEEN', 'datetime', '', 24, '', '2022-01-13 10:40:24', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (25, '1', 'next_followup_time', '下次跟进时间', 'datetime', 'Date', 'nextFollowupTime', '0', '0', NULL, NULL, NULL, '1', NULL, 'EQ', 'datetime', '', 25, '', '2022-01-13 10:40:24', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (27, '1', 'to_liberum_time', '转公海时间', 'datetime', 'Date', 'toLiberumTime', '0', '0', NULL, NULL, NULL, '1', NULL, 'EQ', 'datetime', '', 27, '', '2022-01-13 10:40:24', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (28, '1', 'to_customer_time', '转客户时间', 'datetime', 'Date', 'toCustomerTime', '0', '0', NULL, NULL, NULL, '1', NULL, 'EQ', 'datetime', '', 28, '', '2022-01-13 10:40:24', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (29, '1', 'liberum_type', '公海类型', 'varchar(64)', 'String', 'liberumType', '0', '0', NULL, NULL, NULL, NULL, NULL, 'EQ', 'select', '', 29, '', '2022-01-13 10:40:24', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (30, '1', 'owner', '负责人', 'varchar(64)', 'String', 'owner', '0', '0', NULL, '1', '1', '1', '1', 'EQ', 'input', '', 15, '', '2022-01-14 10:07:17', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (31, '1', 'pre_owner', '前负责人', 'varchar(64)', 'String', 'preOwner', '0', '0', NULL, '1', '1', '1', '1', 'EQ', 'input', '', 26, '', '2022-01-14 10:07:17', '', '2022-01-19 15:18:30'); +INSERT INTO `gen_table_column` VALUES (32, '2', 'id', NULL, 'bigint(20)', 'Long', 'id', '1', '0', NULL, '1', NULL, NULL, NULL, 'EQ', 'input', '', 1, 'admin', '2022-01-18 14:56:58', '', '2022-01-18 15:06:30'); +INSERT INTO `gen_table_column` VALUES (33, '2', 'customer_id', '客户ID', 'bigint(20)', 'Long', 'customerId', '0', '0', NULL, '1', '1', '1', '1', 'EQ', 'input', '', 2, 'admin', '2022-01-18 14:56:58', '', '2022-01-18 15:06:30'); +INSERT INTO `gen_table_column` VALUES (34, '2', 'content', '回复内容', 'varchar(512)', 'String', 'content', '0', '0', '1', '1', '1', '1', NULL, 'EQ', 'editor', '', 3, 'admin', '2022-01-18 14:56:58', '', '2022-01-18 15:06:30'); +INSERT INTO `gen_table_column` VALUES (35, '2', 'create_by', '创建者', 'varchar(64)', 'String', 'createBy', '0', '0', NULL, '1', NULL, NULL, NULL, 'EQ', 'input', '', 4, 'admin', '2022-01-18 14:56:58', '', '2022-01-18 15:06:30'); +INSERT INTO `gen_table_column` VALUES (36, '2', 'create_time', '创建时间', 'datetime', 'Date', 'createTime', '0', '0', '1', '1', '1', '1', '1', 'EQ', 'datetime', '', 5, 'admin', '2022-01-18 14:56:58', '', '2022-01-18 15:06:30'); +INSERT INTO `gen_table_column` VALUES (37, '2', 'update_by', '更新者', 'varchar(64)', 'String', 'updateBy', '0', '0', NULL, '1', '1', NULL, NULL, 'EQ', 'input', '', 6, 'admin', '2022-01-18 14:56:58', '', '2022-01-18 15:06:30'); +INSERT INTO `gen_table_column` VALUES (38, '2', 'update_time', '更新时间', 'datetime', 'Date', 'updateTime', '0', '0', NULL, '1', '1', NULL, NULL, 'EQ', 'datetime', '', 7, 'admin', '2022-01-18 14:56:58', '', '2022-01-18 15:06:30'); +INSERT INTO `gen_table_column` VALUES (39, '3', 'id', NULL, 'bigint(20)', 'Long', 'id', '1', '0', NULL, '1', NULL, NULL, NULL, 'EQ', 'input', '', 1, 'admin', '2022-01-18 18:10:57', '', '2022-01-19 10:54:02'); +INSERT INTO `gen_table_column` VALUES (40, '3', 'order_no', '订单编号', 'varchar(32)', 'String', 'orderNo', '0', '0', '1', '1', '1', '1', '1', 'EQ', 'input', '', 2, 'admin', '2022-01-18 18:10:57', '', '2022-01-19 10:54:02'); +INSERT INTO `gen_table_column` VALUES (41, '3', 'customer_id', '客户ID', 'bigint(20)', 'Long', 'customerId', '0', '0', '1', '1', '1', '1', '1', 'EQ', 'input', '', 3, 'admin', '2022-01-18 18:10:57', '', '2022-01-19 10:54:02'); +INSERT INTO `gen_table_column` VALUES (42, '3', 'amount', '订单金额', 'decimal(19,2)', 'BigDecimal', 'amount', '0', '0', '1', '1', '1', '1', NULL, 'EQ', 'input', '', 4, 'admin', '2022-01-18 18:10:57', '', '2022-01-19 10:54:02'); +INSERT INTO `gen_table_column` VALUES (43, '3', 'owner', '负责人', 'varchar(64)', 'String', 'owner', '0', '0', NULL, '1', '1', '1', '1', 'EQ', 'input', '', 5, 'admin', '2022-01-18 18:10:57', '', '2022-01-19 10:54:02'); +INSERT INTO `gen_table_column` VALUES (44, '3', 'create_by', '创建者', 'varchar(64)', 'String', 'createBy', '0', '0', NULL, '1', NULL, NULL, NULL, 'EQ', 'input', '', 6, 'admin', '2022-01-18 18:10:57', '', '2022-01-19 10:54:02'); +INSERT INTO `gen_table_column` VALUES (45, '3', 'create_time', '创建时间', 'datetime', 'Date', 'createTime', '0', '0', NULL, '1', NULL, NULL, '1', 'BETWEEN', 'datetime', '', 7, 'admin', '2022-01-18 18:10:57', '', '2022-01-19 10:54:02'); +INSERT INTO `gen_table_column` VALUES (46, '3', 'update_by', '更新者', 'varchar(64)', 'String', 'updateBy', '0', '0', NULL, '1', '1', NULL, NULL, 'EQ', 'input', '', 8, 'admin', '2022-01-18 18:10:57', '', '2022-01-19 10:54:02'); +INSERT INTO `gen_table_column` VALUES (47, '3', 'update_time', '更新时间', 'datetime', 'Date', 'updateTime', '0', '0', NULL, '1', '1', NULL, NULL, 'EQ', 'datetime', '', 9, 'admin', '2022-01-18 18:10:57', '', '2022-01-19 10:54:02'); +INSERT INTO `gen_table_column` VALUES (48, '3', 'remark', '备注', 'varchar(500)', 'String', 'remark', '0', '0', NULL, '1', '1', '1', NULL, 'EQ', 'textarea', '', 10, 'admin', '2022-01-18 18:10:57', '', '2022-01-19 10:54:02'); +INSERT INTO `gen_table_column` VALUES (49, '3', 'status', '状态(0待审核 1审核通过 2审核不通过)', 'char(1)', 'String', 'status', '0', '0', NULL, '1', '1', '1', '1', 'EQ', 'radio', 'order_review_status', 11, 'admin', '2022-01-18 18:10:57', '', '2022-01-19 10:54:02'); + +-- ---------------------------- +-- Table structure for master_tenant +-- ---------------------------- +DROP TABLE IF EXISTS `master_tenant`; +CREATE TABLE `master_tenant` ( + `id` bigint(20) NOT NULL AUTO_INCREMENT, + `tenant` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '租户ID', + `url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '数据库连接URL', + `username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户名', + `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '密码', + `database_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '数据库名', + `host_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '数据库主机名', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '1' COMMENT '状态(1正常 2停止)', + `expiration_date` datetime NULL DEFAULT NULL COMMENT '到期日期', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `idx_tenant`(`tenant`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of master_tenant +-- ---------------------------- +INSERT INTO `master_tenant` VALUES (1, 'tenant1', 'jdbc:mysql://localhost:3306/rycrm-tenant-1?useSSL=false', 'root', 'root', 'rycrm-tenant-1', 'localhost', NULL, '1', NULL); +INSERT INTO `master_tenant` VALUES (2, 'tenant2', 'jdbc:mysql://localhost:3306/rycrm-tenant-2?useSSL=false', 'root', 'root', 'rycrm-tenant-2', 'localhost', NULL, '1', NULL); + +-- ---------------------------- +-- Table structure for service_ticket +-- ---------------------------- +DROP TABLE IF EXISTS `service_ticket`; +CREATE TABLE `service_ticket` ( + `id` int(20) NOT NULL AUTO_INCREMENT COMMENT '服务工单id', + `title` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标题', + `customer_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户姓名', + `customer_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户编号', + `contract_title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '合同标题', + `contract_order_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '合同订单编号', + `customer_contact` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户联系人', + `phone_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '手机号', + `service_type` int(4) NULL DEFAULT NULL COMMENT '服务类型', + `service_order_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务单号', + `how_many_service_order` int(6) NULL DEFAULT NULL COMMENT '第几个服务单', + `service_star_time` datetime NULL DEFAULT NULL COMMENT '服务开始时间', + `service_end_time` datetime NULL DEFAULT NULL COMMENT '服务结束时间', + `demand_service_day` int(6) NULL DEFAULT NULL COMMENT '服务需求天数', + `after_sales_technician` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '售后技术人员', + `service_address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务地址(省/自治区/直辖市)', + `service_address_city` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务地址(市)', + `service_address_area` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务地址(区)', + `service_address_detail` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务地址(详细地址)', + `sign_in` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '签到', + `sign_in_time` datetime NULL DEFAULT NULL COMMENT '签到时间', + `sign_out` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '签退', + `sign_out_time` datetime NULL DEFAULT NULL COMMENT '签退时间', + `is_solve_the_problem` bit(1) NULL DEFAULT NULL COMMENT '是否解决问题(true or false)', + `scene_photo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '现场照片', + `customer_satisfaction` int(4) NULL DEFAULT NULL COMMENT '客户满意度', + `satisfaction_value` int(4) NULL DEFAULT NULL COMMENT '满意度数值', + `customer_comments_and_demands` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户意见与诉求', + `submitter` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '提交人', + `submit_time` datetime NULL DEFAULT NULL COMMENT '提交时间', + `create_by` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `process_state` int(4) NULL DEFAULT NULL COMMENT '流程状态', + `current_node` int(4) NULL DEFAULT NULL COMMENT '当前节点', + `current_person_in_charge` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '当前负责人', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '服务工单表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of service_ticket +-- ---------------------------- +INSERT INTO `service_ticket` VALUES (1, '1', '1', '1', '1', '1', '1', '1', NULL, '1', 1, '2024-03-01 00:00:00', '2024-03-01 00:00:00', 1, '1', '1', '1', '1', '1', '1', '2024-03-01 00:00:00', '1', '2024-03-01 00:00:00', b'0', '', NULL, 1, '1', '1', '2024-03-01 00:00:00', NULL, '2024-03-01 13:26:11', NULL, '2024-03-01 16:22:36', NULL, NULL, '1'); + +-- ---------------------------- +-- Table structure for sys_config +-- ---------------------------- +DROP TABLE IF EXISTS `sys_config`; +CREATE TABLE `sys_config` ( + `config_id` int(5) NOT NULL AUTO_INCREMENT COMMENT '参数主键', + `config_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '参数名称', + `config_key` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '参数键名', + `config_value` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '参数键值', + `config_type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'N' COMMENT '系统内置(Y是 N否)', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + PRIMARY KEY (`config_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '参数配置表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_config +-- ---------------------------- +INSERT INTO `sys_config` VALUES (1, '主框架页-默认皮肤样式名称', 'sys.index.skinName', 'skin-blue', 'Y', 'admin', '2022-01-11 19:11:40', '', NULL, '蓝色 skin-blue、绿色 skin-green、紫色 skin-purple、红色 skin-red、黄色 skin-yellow'); +INSERT INTO `sys_config` VALUES (2, '用户管理-账号初始密码', 'sys.user.initPassword', '123456', 'Y', 'admin', '2022-01-11 19:11:40', '', NULL, '初始化密码 123456'); +INSERT INTO `sys_config` VALUES (3, '主框架页-侧边栏主题', 'sys.index.sideTheme', 'theme-dark', 'Y', 'admin', '2022-01-11 19:11:40', '', NULL, '深色主题theme-dark,浅色主题theme-light'); +INSERT INTO `sys_config` VALUES (4, '账号自助-验证码开关', 'sys.account.captchaOnOff', 'true', 'Y', 'admin', '2022-01-11 19:11:40', '', NULL, '是否开启验证码功能(true开启,false关闭)'); +INSERT INTO `sys_config` VALUES (5, '账号自助-是否开启用户注册功能', 'sys.account.registerUser', 'false', 'Y', 'admin', '2022-01-11 19:11:40', '', NULL, '是否开启注册用户功能(true开启,false关闭)'); +INSERT INTO `sys_config` VALUES (6, '公海规则', 'crm.pool.days', '10', 'Y', 'admin', '2022-01-18 17:07:48', '', NULL, '超过时间未跟进将客户移入公海,单位:天'); + +-- ---------------------------- +-- Table structure for sys_dept +-- ---------------------------- +DROP TABLE IF EXISTS `sys_dept`; +CREATE TABLE `sys_dept` ( + `dept_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '部门id', + `parent_id` bigint(20) NULL DEFAULT 0 COMMENT '父部门id', + `ancestors` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '祖级列表', + `dept_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '部门名称', + `order_num` int(4) NULL DEFAULT 0 COMMENT '显示顺序', + `leader` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '负责人', + `phone` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系电话', + `email` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '邮箱', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '部门状态(0正常 1停用)', + `del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '删除标志(0代表存在 2代表删除)', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + PRIMARY KEY (`dept_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 110 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '部门表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_dept +-- ---------------------------- +INSERT INTO `sys_dept` VALUES (100, 0, '0', 'Tenant-1', 0, '若依', '15888888888', 'ry@qq.com', '0', '0', 'admin', '2022-01-11 19:11:40', 'admin', '2022-01-11 19:15:10'); +INSERT INTO `sys_dept` VALUES (101, 100, '0,100', '深圳总公司', 1, '若依', '15888888888', 'ry@qq.com', '0', '0', 'admin', '2022-01-11 19:11:40', '', NULL); +INSERT INTO `sys_dept` VALUES (102, 100, '0,100', '长沙分公司', 2, '若依', '15888888888', 'ry@qq.com', '0', '0', 'admin', '2022-01-11 19:11:40', '', NULL); +INSERT INTO `sys_dept` VALUES (103, 101, '0,100,101', '研发部门', 1, '若依', '15888888888', 'ry@qq.com', '0', '0', 'admin', '2022-01-11 19:11:40', '', NULL); +INSERT INTO `sys_dept` VALUES (104, 101, '0,100,101', '市场部门', 2, '若依', '15888888888', 'ry@qq.com', '0', '0', 'admin', '2022-01-11 19:11:40', '', NULL); +INSERT INTO `sys_dept` VALUES (105, 101, '0,100,101', '测试部门', 3, '若依', '15888888888', 'ry@qq.com', '0', '0', 'admin', '2022-01-11 19:11:40', '', NULL); +INSERT INTO `sys_dept` VALUES (106, 101, '0,100,101', '财务部门', 4, '若依', '15888888888', 'ry@qq.com', '0', '0', 'admin', '2022-01-11 19:11:40', '', NULL); +INSERT INTO `sys_dept` VALUES (107, 101, '0,100,101', '运维部门', 5, '若依', '15888888888', 'ry@qq.com', '0', '0', 'admin', '2022-01-11 19:11:40', '', NULL); +INSERT INTO `sys_dept` VALUES (108, 102, '0,100,102', '市场部门', 1, '若依', '15888888888', 'ry@qq.com', '0', '0', 'admin', '2022-01-11 19:11:40', '', NULL); +INSERT INTO `sys_dept` VALUES (109, 102, '0,100,102', '财务部门', 2, '若依', '15888888888', 'ry@qq.com', '0', '0', 'admin', '2022-01-11 19:11:40', '', NULL); + +-- ---------------------------- +-- Table structure for sys_dict_data +-- ---------------------------- +DROP TABLE IF EXISTS `sys_dict_data`; +CREATE TABLE `sys_dict_data` ( + `dict_code` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '字典编码', + `dict_sort` int(4) NULL DEFAULT 0 COMMENT '字典排序', + `dict_label` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '字典标签', + `dict_value` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '字典键值', + `dict_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '字典类型', + `css_class` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '样式属性(其他样式扩展)', + `list_class` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '表格回显样式', + `is_default` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'N' COMMENT '是否默认(Y是 N否)', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '状态(0正常 1停用)', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + PRIMARY KEY (`dict_code`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 143 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '字典数据表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_dict_data +-- ---------------------------- +INSERT INTO `sys_dict_data` VALUES (1, 1, '男', '0', 'sys_user_sex', '', '', 'Y', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '性别男'); +INSERT INTO `sys_dict_data` VALUES (2, 2, '女', '1', 'sys_user_sex', '', '', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '性别女'); +INSERT INTO `sys_dict_data` VALUES (3, 3, '未知', '2', 'sys_user_sex', '', '', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '性别未知'); +INSERT INTO `sys_dict_data` VALUES (4, 1, '显示', '0', 'sys_show_hide', '', 'primary', 'Y', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '显示菜单'); +INSERT INTO `sys_dict_data` VALUES (5, 2, '隐藏', '1', 'sys_show_hide', '', 'danger', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '隐藏菜单'); +INSERT INTO `sys_dict_data` VALUES (6, 1, '正常', '0', 'sys_normal_disable', '', 'primary', 'Y', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '正常状态'); +INSERT INTO `sys_dict_data` VALUES (7, 2, '停用', '1', 'sys_normal_disable', '', 'danger', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '停用状态'); +INSERT INTO `sys_dict_data` VALUES (8, 1, '正常', '0', 'sys_job_status', '', 'primary', 'Y', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '正常状态'); +INSERT INTO `sys_dict_data` VALUES (9, 2, '暂停', '1', 'sys_job_status', '', 'danger', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '停用状态'); +INSERT INTO `sys_dict_data` VALUES (10, 1, '默认', 'DEFAULT', 'sys_job_group', '', '', 'Y', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '默认分组'); +INSERT INTO `sys_dict_data` VALUES (11, 2, '系统', 'SYSTEM', 'sys_job_group', '', '', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '系统分组'); +INSERT INTO `sys_dict_data` VALUES (12, 1, '是', 'Y', 'sys_yes_no', '', 'primary', 'Y', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '系统默认是'); +INSERT INTO `sys_dict_data` VALUES (13, 2, '否', 'N', 'sys_yes_no', '', 'danger', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '系统默认否'); +INSERT INTO `sys_dict_data` VALUES (14, 1, '通知', '1', 'sys_notice_type', '', 'warning', 'Y', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '通知'); +INSERT INTO `sys_dict_data` VALUES (15, 2, '公告', '2', 'sys_notice_type', '', 'success', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '公告'); +INSERT INTO `sys_dict_data` VALUES (16, 1, '正常', '0', 'sys_notice_status', '', 'primary', 'Y', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '正常状态'); +INSERT INTO `sys_dict_data` VALUES (17, 2, '关闭', '1', 'sys_notice_status', '', 'danger', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '关闭状态'); +INSERT INTO `sys_dict_data` VALUES (18, 1, '新增', '1', 'sys_oper_type', '', 'info', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '新增操作'); +INSERT INTO `sys_dict_data` VALUES (19, 2, '修改', '2', 'sys_oper_type', '', 'info', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '修改操作'); +INSERT INTO `sys_dict_data` VALUES (20, 3, '删除', '3', 'sys_oper_type', '', 'danger', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '删除操作'); +INSERT INTO `sys_dict_data` VALUES (21, 4, '授权', '4', 'sys_oper_type', '', 'primary', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '授权操作'); +INSERT INTO `sys_dict_data` VALUES (22, 5, '导出', '5', 'sys_oper_type', '', 'warning', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '导出操作'); +INSERT INTO `sys_dict_data` VALUES (23, 6, '导入', '6', 'sys_oper_type', '', 'warning', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '导入操作'); +INSERT INTO `sys_dict_data` VALUES (24, 7, '强退', '7', 'sys_oper_type', '', 'danger', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '强退操作'); +INSERT INTO `sys_dict_data` VALUES (25, 8, '生成代码', '8', 'sys_oper_type', '', 'warning', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '生成操作'); +INSERT INTO `sys_dict_data` VALUES (26, 9, '清空数据', '9', 'sys_oper_type', '', 'danger', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '清空操作'); +INSERT INTO `sys_dict_data` VALUES (27, 1, '成功', '0', 'sys_common_status', '', 'primary', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '正常状态'); +INSERT INTO `sys_dict_data` VALUES (28, 2, '失败', '1', 'sys_common_status', '', 'danger', 'N', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '停用状态'); +INSERT INTO `sys_dict_data` VALUES (100, 0, '北京市', '北京市', 'region_list', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:08:08', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (101, 0, '上海市', '上海市', 'region_list', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:08:15', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (102, 0, '广东省', '广东省', 'region_list', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:08:25', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (103, 0, '百度', '百度', 'clues_source', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:09:02', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (104, 1, '抖音', '抖音', 'clues_source', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:09:08', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (105, 2, '头条', '头条', 'clues_source', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:09:31', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (106, 3, '电话', '电话', 'clues_source', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:09:40', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (107, 0, '有效', '有效', 'clues_status', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:09:59', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (108, 1, '无效', '无效', 'clues_status', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:10:06', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (109, 0, '计算机互联网', '计算机互联网', 'customer_industry', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:10:50', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (110, 1, '加工生产', '加工生产', 'customer_industry', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:11:02', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (111, 2, '房地产', '房地产', 'customer_industry', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:11:20', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (112, 3, '金融', '金融', 'customer_industry', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:11:34', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (113, 0, 'A', 'A', 'customer_rank', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:11:55', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (114, 1, 'B', 'B', 'customer_rank', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:11:59', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (115, 2, 'C', 'C', 'customer_rank', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:12:04', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (116, 3, 'D', 'D', 'customer_rank', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:12:10', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (117, 4, 'E', 'E', 'customer_rank', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:12:18', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (118, 0, '测试客户', '测试客户', 'customer_status', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:12:56', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (119, 1, '意向客户', '意向客户', 'customer_status', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:13:07', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (120, 2, '签单客户', '签单客户', 'customer_status', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:13:17', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (121, 3, '回款客户', '回款客户', 'customer_status', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:13:31', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (122, 4, '上门客户', '上门客户', 'customer_status', NULL, 'default', 'N', '0', 'admin', '2022-01-12 18:13:42', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (123, 0, '普通', 'normal', 'pool_type', NULL, 'default', 'N', '0', 'admin', '2022-01-13 13:33:07', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (124, 1, '高级', 'high', 'pool_type', NULL, 'default', 'N', '0', 'admin', '2022-01-13 13:33:24', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (125, 0, '未成交', '0', 'deal_status', NULL, 'default', 'N', '0', 'admin', '2022-01-15 18:11:42', 'admin', '2022-01-15 18:12:15', NULL); +INSERT INTO `sys_dict_data` VALUES (126, 1, '已成交', '1', 'deal_status', NULL, 'default', 'N', '0', 'admin', '2022-01-15 18:11:58', 'admin', '2022-01-15 18:12:09', NULL); +INSERT INTO `sys_dict_data` VALUES (127, 0, '待审核', '0', 'order_review_status', NULL, 'default', 'N', '0', 'admin', '2022-01-19 10:52:06', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (128, 1, '审核通过', '1', 'order_review_status', NULL, 'default', 'N', '0', 'admin', '2022-01-19 10:52:15', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (129, 2, '审核不通过', '2', 'order_review_status', NULL, 'default', 'N', '0', 'admin', '2022-01-19 10:52:23', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (130, 0, '是', '1', 'is_key', NULL, 'primary', 'N', '0', 'admin', '2024-03-01 11:46:44', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (131, 0, '否', '0', 'is_key', NULL, 'info', 'N', '0', 'admin', '2024-03-01 11:46:54', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (132, 0, '需求发现', '0', 'sales_stage', NULL, 'primary', 'N', '0', 'admin', '2024-03-01 11:47:41', 'admin', '2024-03-04 16:50:22', NULL); +INSERT INTO `sys_dict_data` VALUES (133, 0, '需求确认', '1', 'sales_stage', NULL, 'success', 'N', '0', 'admin', '2024-03-01 11:47:50', 'admin', '2024-03-04 16:50:48', NULL); +INSERT INTO `sys_dict_data` VALUES (134, 0, '方案报价', '2', 'sales_stage', NULL, 'info', 'N', '0', 'admin', '2024-03-01 11:48:04', 'admin', '2024-03-04 16:51:09', NULL); +INSERT INTO `sys_dict_data` VALUES (135, 0, '商务谈判', '3', 'sales_stage', NULL, 'warning', 'N', '0', 'admin', '2024-03-01 11:48:24', 'admin', '2024-03-04 16:51:31', NULL); +INSERT INTO `sys_dict_data` VALUES (136, 0, 'test0', '0', 'stage_type', NULL, 'primary', 'N', '0', 'admin', '2024-03-01 11:49:28', 'admin', '2024-03-01 11:49:38', NULL); +INSERT INTO `sys_dict_data` VALUES (137, 0, 'test1', '1', 'stage_type', NULL, 'success', 'N', '0', 'admin', '2024-03-01 11:50:28', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (138, 0, 'test0', '0', 'service_type', NULL, 'primary', 'N', '0', 'admin', '2024-03-01 11:50:50', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (139, 0, 'test1', '1', 'service_type', NULL, 'success', 'N', '0', 'admin', '2024-03-01 11:51:01', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (140, 0, '交易成功', '4', 'sales_stage', NULL, 'success', 'N', '0', 'admin', '2024-03-04 16:52:15', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (141, 0, '交易失败', '5', 'sales_stage', NULL, 'danger', 'N', '0', 'admin', '2024-03-04 16:52:31', '', NULL, NULL); +INSERT INTO `sys_dict_data` VALUES (142, 0, '无效', '6', 'sales_stage', NULL, 'warning', 'N', '0', 'admin', '2024-03-04 16:52:53', '', NULL, NULL); + +-- ---------------------------- +-- Table structure for sys_dict_type +-- ---------------------------- +DROP TABLE IF EXISTS `sys_dict_type`; +CREATE TABLE `sys_dict_type` ( + `dict_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '字典主键', + `dict_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '字典名称', + `dict_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '字典类型', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '状态(0正常 1停用)', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + PRIMARY KEY (`dict_id`) USING BTREE, + UNIQUE INDEX `dict_type`(`dict_type`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 113 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '字典类型表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_dict_type +-- ---------------------------- +INSERT INTO `sys_dict_type` VALUES (1, '用户性别', 'sys_user_sex', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '用户性别列表'); +INSERT INTO `sys_dict_type` VALUES (2, '菜单状态', 'sys_show_hide', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '菜单状态列表'); +INSERT INTO `sys_dict_type` VALUES (3, '系统开关', 'sys_normal_disable', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '系统开关列表'); +INSERT INTO `sys_dict_type` VALUES (4, '任务状态', 'sys_job_status', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '任务状态列表'); +INSERT INTO `sys_dict_type` VALUES (5, '任务分组', 'sys_job_group', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '任务分组列表'); +INSERT INTO `sys_dict_type` VALUES (6, '系统是否', 'sys_yes_no', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '系统是否列表'); +INSERT INTO `sys_dict_type` VALUES (7, '通知类型', 'sys_notice_type', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '通知类型列表'); +INSERT INTO `sys_dict_type` VALUES (8, '通知状态', 'sys_notice_status', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '通知状态列表'); +INSERT INTO `sys_dict_type` VALUES (9, '操作类型', 'sys_oper_type', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '操作类型列表'); +INSERT INTO `sys_dict_type` VALUES (10, '系统状态', 'sys_common_status', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '登录状态列表'); +INSERT INTO `sys_dict_type` VALUES (100, '线索来源', 'clues_source', '0', 'admin', '2022-01-12 18:05:44', '', NULL, NULL); +INSERT INTO `sys_dict_type` VALUES (101, '线索状态', 'clues_status', '0', 'admin', '2022-01-12 18:05:59', '', NULL, NULL); +INSERT INTO `sys_dict_type` VALUES (102, '行业类别', 'customer_industry', '0', 'admin', '2022-01-12 18:06:30', '', NULL, NULL); +INSERT INTO `sys_dict_type` VALUES (103, '客户级别', 'customer_rank', '0', 'admin', '2022-01-12 18:06:42', '', NULL, NULL); +INSERT INTO `sys_dict_type` VALUES (104, '客户状态', 'customer_status', '0', 'admin', '2022-01-12 18:06:54', '', NULL, NULL); +INSERT INTO `sys_dict_type` VALUES (105, '所在地区', 'region_list', '0', 'admin', '2022-01-12 18:07:47', '', NULL, NULL); +INSERT INTO `sys_dict_type` VALUES (106, '公海类型', 'pool_type', '0', 'admin', '2022-01-13 13:28:04', '', NULL, NULL); +INSERT INTO `sys_dict_type` VALUES (107, '成交状态', 'deal_status', '0', 'admin', '2022-01-15 18:10:43', '', NULL, NULL); +INSERT INTO `sys_dict_type` VALUES (108, '订单审核状态', 'order_review_status', '0', 'admin', '2022-01-19 10:51:35', 'admin', '2022-01-19 10:53:41', NULL); +INSERT INTO `sys_dict_type` VALUES (109, '是否关键决策人', 'is_key', '0', 'admin', '2024-03-01 11:43:50', '', NULL, NULL); +INSERT INTO `sys_dict_type` VALUES (110, '销售阶段', 'sales_stage', '0', 'admin', '2024-03-01 11:45:38', '', NULL, NULL); +INSERT INTO `sys_dict_type` VALUES (111, '阶段类型', 'stage_type', '0', 'admin', '2024-03-01 11:45:57', '', NULL, NULL); +INSERT INTO `sys_dict_type` VALUES (112, '服务类型', 'service_type', '0', 'admin', '2024-03-01 11:46:11', '', NULL, NULL); + +-- ---------------------------- +-- Table structure for sys_job +-- ---------------------------- +DROP TABLE IF EXISTS `sys_job`; +CREATE TABLE `sys_job` ( + `job_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '任务ID', + `job_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '任务名称', + `job_group` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'DEFAULT' COMMENT '任务组名', + `invoke_target` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '调用目标字符串', + `cron_expression` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT 'cron执行表达式', + `misfire_policy` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '3' COMMENT '计划执行错误策略(1立即执行 2执行一次 3放弃执行)', + `concurrent` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '1' COMMENT '是否并发执行(0允许 1禁止)', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '状态(0正常 1暂停)', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '备注信息', + PRIMARY KEY (`job_id`, `job_name`, `job_group`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '定时任务调度表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_job +-- ---------------------------- +INSERT INTO `sys_job` VALUES (1, '系统默认(无参)', 'DEFAULT', 'ryTask.ryNoParams', '0/10 * * * * ?', '3', '1', '1', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_job` VALUES (2, '系统默认(有参)', 'DEFAULT', 'ryTask.ryParams(\'ry\')', '0/15 * * * * ?', '3', '1', '1', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_job` VALUES (3, '系统默认(多参)', 'DEFAULT', 'ryTask.ryMultipleParams(\'ry\', true, 2000L, 316.50D, 100)', '0/20 * * * * ?', '3', '1', '1', 'admin', '2022-01-11 19:11:40', '', NULL, ''); + +-- ---------------------------- +-- Table structure for sys_job_log +-- ---------------------------- +DROP TABLE IF EXISTS `sys_job_log`; +CREATE TABLE `sys_job_log` ( + `job_log_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '任务日志ID', + `job_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务名称', + `job_group` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '任务组名', + `invoke_target` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '调用目标字符串', + `job_message` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '日志信息', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '执行状态(0正常 1失败)', + `exception_info` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '异常信息', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + PRIMARY KEY (`job_log_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '定时任务调度日志表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_job_log +-- ---------------------------- + +-- ---------------------------- +-- Table structure for sys_logininfor +-- ---------------------------- +DROP TABLE IF EXISTS `sys_logininfor`; +CREATE TABLE `sys_logininfor` ( + `info_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '访问ID', + `user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '用户账号', + `ipaddr` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '登录IP地址', + `login_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '登录地点', + `browser` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '浏览器类型', + `os` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '操作系统', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '登录状态(0成功 1失败)', + `msg` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '提示消息', + `login_time` datetime NULL DEFAULT NULL COMMENT '访问时间', + PRIMARY KEY (`info_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 345 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统访问记录' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_logininfor +-- ---------------------------- +INSERT INTO `sys_logininfor` VALUES (291, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '1', '验证码错误', '2024-03-01 11:26:54'); +INSERT INTO `sys_logininfor` VALUES (292, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-01 11:27:02'); +INSERT INTO `sys_logininfor` VALUES (293, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-01 11:43:27'); +INSERT INTO `sys_logininfor` VALUES (294, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-01 11:45:14'); +INSERT INTO `sys_logininfor` VALUES (295, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-01 14:50:41'); +INSERT INTO `sys_logininfor` VALUES (296, 'admin', '127.0.0.1', '内网IP', 'Firefox 12', 'Windows 10', '0', '登录成功', '2024-03-01 15:19:18'); +INSERT INTO `sys_logininfor` VALUES (297, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-01 15:24:37'); +INSERT INTO `sys_logininfor` VALUES (298, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-01 15:55:08'); +INSERT INTO `sys_logininfor` VALUES (299, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-01 16:43:02'); +INSERT INTO `sys_logininfor` VALUES (300, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-01 16:55:42'); +INSERT INTO `sys_logininfor` VALUES (301, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-01 17:32:50'); +INSERT INTO `sys_logininfor` VALUES (302, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-01 17:44:53'); +INSERT INTO `sys_logininfor` VALUES (303, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-04 09:10:19'); +INSERT INTO `sys_logininfor` VALUES (304, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-04 10:25:14'); +INSERT INTO `sys_logininfor` VALUES (305, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-04 11:05:53'); +INSERT INTO `sys_logininfor` VALUES (306, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-04 11:22:38'); +INSERT INTO `sys_logininfor` VALUES (307, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '退出成功', '2024-03-04 12:05:08'); +INSERT INTO `sys_logininfor` VALUES (308, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-04 12:05:16'); +INSERT INTO `sys_logininfor` VALUES (309, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-04 13:04:10'); +INSERT INTO `sys_logininfor` VALUES (310, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-04 13:17:02'); +INSERT INTO `sys_logininfor` VALUES (311, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-04 15:26:20'); +INSERT INTO `sys_logininfor` VALUES (312, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-04 15:38:08'); +INSERT INTO `sys_logininfor` VALUES (313, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-04 16:47:57'); +INSERT INTO `sys_logininfor` VALUES (314, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-04 17:12:55'); +INSERT INTO `sys_logininfor` VALUES (315, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 09:54:02'); +INSERT INTO `sys_logininfor` VALUES (316, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '退出成功', '2024-03-05 10:18:08'); +INSERT INTO `sys_logininfor` VALUES (317, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 10:18:24'); +INSERT INTO `sys_logininfor` VALUES (318, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 10:24:41'); +INSERT INTO `sys_logininfor` VALUES (319, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 10:39:00'); +INSERT INTO `sys_logininfor` VALUES (320, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '退出成功', '2024-03-05 11:17:20'); +INSERT INTO `sys_logininfor` VALUES (321, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 11:28:55'); +INSERT INTO `sys_logininfor` VALUES (322, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 11:45:35'); +INSERT INTO `sys_logininfor` VALUES (323, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 11:46:49'); +INSERT INTO `sys_logininfor` VALUES (324, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 11:54:00'); +INSERT INTO `sys_logininfor` VALUES (325, 'admin', '127.0.0.1', '内网IP', 'Firefox 12', 'Windows 10', '0', '登录成功', '2024-03-05 13:09:14'); +INSERT INTO `sys_logininfor` VALUES (326, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 13:31:48'); +INSERT INTO `sys_logininfor` VALUES (327, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 15:11:47'); +INSERT INTO `sys_logininfor` VALUES (328, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 15:39:47'); +INSERT INTO `sys_logininfor` VALUES (329, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '退出成功', '2024-03-05 15:39:48'); +INSERT INTO `sys_logininfor` VALUES (330, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 15:40:01'); +INSERT INTO `sys_logininfor` VALUES (331, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '退出成功', '2024-03-05 15:40:01'); +INSERT INTO `sys_logininfor` VALUES (332, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 15:40:44'); +INSERT INTO `sys_logininfor` VALUES (333, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 16:13:38'); +INSERT INTO `sys_logininfor` VALUES (334, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 16:18:35'); +INSERT INTO `sys_logininfor` VALUES (335, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 16:25:08'); +INSERT INTO `sys_logininfor` VALUES (336, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 16:52:54'); +INSERT INTO `sys_logininfor` VALUES (337, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 17:27:07'); +INSERT INTO `sys_logininfor` VALUES (338, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 17:39:42'); +INSERT INTO `sys_logininfor` VALUES (339, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 20:01:50'); +INSERT INTO `sys_logininfor` VALUES (340, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 20:43:04'); +INSERT INTO `sys_logininfor` VALUES (341, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 21:46:39'); +INSERT INTO `sys_logininfor` VALUES (342, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-05 22:16:30'); +INSERT INTO `sys_logininfor` VALUES (343, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-06 09:25:18'); +INSERT INTO `sys_logininfor` VALUES (344, 'admin', '127.0.0.1', '内网IP', 'Chrome 12', 'Windows 10', '0', '登录成功', '2024-03-06 10:29:56'); + +-- ---------------------------- +-- Table structure for sys_menu +-- ---------------------------- +DROP TABLE IF EXISTS `sys_menu`; +CREATE TABLE `sys_menu` ( + `menu_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '菜单ID', + `menu_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '菜单名称', + `parent_id` bigint(20) NULL DEFAULT 0 COMMENT '父菜单ID', + `order_num` int(4) NULL DEFAULT 0 COMMENT '显示顺序', + `path` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '路由地址', + `component` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '组件路径', + `query` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '路由参数', + `is_frame` int(1) NULL DEFAULT 1 COMMENT '是否为外链(0是 1否)', + `is_cache` int(1) NULL DEFAULT 0 COMMENT '是否缓存(0缓存 1不缓存)', + `menu_type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '菜单类型(M目录 C菜单 F按钮)', + `visible` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '菜单状态(0显示 1隐藏)', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '菜单状态(0正常 1停用)', + `perms` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '权限标识', + `icon` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '#' COMMENT '菜单图标', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '备注', + PRIMARY KEY (`menu_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 2053 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '菜单权限表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_menu +-- ---------------------------- +INSERT INTO `sys_menu` VALUES (1, '系统管理', 0, 200, 'system', NULL, '', 1, 0, 'M', '0', '0', '', 'system', 'admin', '2022-01-11 19:11:40', '', NULL, '系统管理目录'); +INSERT INTO `sys_menu` VALUES (2, '系统监控', 0, 300, 'monitor', NULL, '', 1, 0, 'M', '0', '0', '', 'monitor', 'admin', '2022-01-11 19:11:40', '', NULL, '系统监控目录'); +INSERT INTO `sys_menu` VALUES (3, '系统工具', 0, 400, 'tool', NULL, '', 1, 0, 'M', '0', '0', '', 'tool', 'admin', '2022-01-11 19:11:40', '', NULL, '系统工具目录'); +INSERT INTO `sys_menu` VALUES (100, '用户管理', 1, 1, 'user', 'system/user/index', '', 1, 0, 'C', '0', '0', 'system:user:list', 'user', 'admin', '2022-01-11 19:11:40', '', NULL, '用户管理菜单'); +INSERT INTO `sys_menu` VALUES (101, '角色管理', 1, 2, 'role', 'system/role/index', '', 1, 0, 'C', '0', '0', 'system:role:list', 'peoples', 'admin', '2022-01-11 19:11:40', '', NULL, '角色管理菜单'); +INSERT INTO `sys_menu` VALUES (102, '菜单管理', 1, 3, 'menu', 'system/menu/index', '', 1, 0, 'C', '0', '0', 'system:menu:list', 'tree-table', 'admin', '2022-01-11 19:11:40', '', NULL, '菜单管理菜单'); +INSERT INTO `sys_menu` VALUES (103, '部门管理', 1, 4, 'dept', 'system/dept/index', '', 1, 0, 'C', '0', '0', 'system:dept:list', 'tree', 'admin', '2022-01-11 19:11:40', '', NULL, '部门管理菜单'); +INSERT INTO `sys_menu` VALUES (104, '岗位管理', 1, 5, 'post', 'system/post/index', '', 1, 0, 'C', '0', '0', 'system:post:list', 'post', 'admin', '2022-01-11 19:11:40', '', NULL, '岗位管理菜单'); +INSERT INTO `sys_menu` VALUES (105, '字典管理', 1, 6, 'dict', 'system/dict/index', '', 1, 0, 'C', '0', '0', 'system:dict:list', 'dict', 'admin', '2022-01-11 19:11:40', '', NULL, '字典管理菜单'); +INSERT INTO `sys_menu` VALUES (106, '参数设置', 1, 7, 'config', 'system/config/index', '', 1, 0, 'C', '0', '0', 'system:config:list', 'edit', 'admin', '2022-01-11 19:11:40', '', NULL, '参数设置菜单'); +INSERT INTO `sys_menu` VALUES (107, '通知公告', 1, 8, 'notice', 'system/notice/index', '', 1, 0, 'C', '0', '0', 'system:notice:list', 'message', 'admin', '2022-01-11 19:11:40', '', NULL, '通知公告菜单'); +INSERT INTO `sys_menu` VALUES (108, '日志管理', 1, 9, 'log', '', '', 1, 0, 'M', '0', '0', '', 'log', 'admin', '2022-01-11 19:11:40', '', NULL, '日志管理菜单'); +INSERT INTO `sys_menu` VALUES (109, '在线用户', 2, 1, 'online', 'monitor/online/index', '', 1, 0, 'C', '0', '0', 'monitor:online:list', 'online', 'admin', '2022-01-11 19:11:40', '', NULL, '在线用户菜单'); +INSERT INTO `sys_menu` VALUES (110, '定时任务', 2, 2, 'job', 'monitor/job/index', '', 1, 0, 'C', '0', '0', 'monitor:job:list', 'job', 'admin', '2022-01-11 19:11:40', '', NULL, '定时任务菜单'); +INSERT INTO `sys_menu` VALUES (111, '数据监控', 2, 3, 'druid', 'monitor/druid/index', '', 1, 0, 'C', '0', '0', 'monitor:druid:list', 'druid', 'admin', '2022-01-11 19:11:40', '', NULL, '数据监控菜单'); +INSERT INTO `sys_menu` VALUES (112, '服务监控', 2, 4, 'server', 'monitor/server/index', '', 1, 0, 'C', '0', '0', 'monitor:server:list', 'server', 'admin', '2022-01-11 19:11:40', '', NULL, '服务监控菜单'); +INSERT INTO `sys_menu` VALUES (113, '缓存监控', 2, 5, 'cache', 'monitor/cache/index', '', 1, 0, 'C', '0', '0', 'monitor:cache:list', 'redis', 'admin', '2022-01-11 19:11:40', '', NULL, '缓存监控菜单'); +INSERT INTO `sys_menu` VALUES (114, '表单构建', 3, 1, 'build', 'tool/build/index', '', 1, 0, 'C', '0', '0', 'tool:build:list', 'build', 'admin', '2022-01-11 19:11:40', '', NULL, '表单构建菜单'); +INSERT INTO `sys_menu` VALUES (115, '代码生成', 3, 2, 'gen', 'tool/gen/index', '', 1, 0, 'C', '0', '0', 'tool:gen:list', 'code', 'admin', '2022-01-11 19:11:40', '', NULL, '代码生成菜单'); +INSERT INTO `sys_menu` VALUES (116, '系统接口', 3, 3, 'swagger', 'tool/swagger/index', '', 1, 0, 'C', '0', '0', 'tool:swagger:list', 'swagger', 'admin', '2022-01-11 19:11:40', '', NULL, '系统接口菜单'); +INSERT INTO `sys_menu` VALUES (500, '操作日志', 108, 1, 'operlog', 'monitor/operlog/index', '', 1, 0, 'C', '0', '0', 'monitor:operlog:list', 'form', 'admin', '2022-01-11 19:11:40', '', NULL, '操作日志菜单'); +INSERT INTO `sys_menu` VALUES (501, '登录日志', 108, 2, 'logininfor', 'monitor/logininfor/index', '', 1, 0, 'C', '0', '0', 'monitor:logininfor:list', 'logininfor', 'admin', '2022-01-11 19:11:40', '', NULL, '登录日志菜单'); +INSERT INTO `sys_menu` VALUES (1001, '用户查询', 100, 1, '', '', '', 1, 0, 'F', '0', '0', 'system:user:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1002, '用户新增', 100, 2, '', '', '', 1, 0, 'F', '0', '0', 'system:user:add', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1003, '用户修改', 100, 3, '', '', '', 1, 0, 'F', '0', '0', 'system:user:edit', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1004, '用户删除', 100, 4, '', '', '', 1, 0, 'F', '0', '0', 'system:user:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1005, '用户导出', 100, 5, '', '', '', 1, 0, 'F', '0', '0', 'system:user:export', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1006, '用户导入', 100, 6, '', '', '', 1, 0, 'F', '0', '0', 'system:user:import', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1007, '重置密码', 100, 7, '', '', '', 1, 0, 'F', '0', '0', 'system:user:resetPwd', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1008, '角色查询', 101, 1, '', '', '', 1, 0, 'F', '0', '0', 'system:role:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1009, '角色新增', 101, 2, '', '', '', 1, 0, 'F', '0', '0', 'system:role:add', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1010, '角色修改', 101, 3, '', '', '', 1, 0, 'F', '0', '0', 'system:role:edit', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1011, '角色删除', 101, 4, '', '', '', 1, 0, 'F', '0', '0', 'system:role:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1012, '角色导出', 101, 5, '', '', '', 1, 0, 'F', '0', '0', 'system:role:export', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1013, '菜单查询', 102, 1, '', '', '', 1, 0, 'F', '0', '0', 'system:menu:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1014, '菜单新增', 102, 2, '', '', '', 1, 0, 'F', '0', '0', 'system:menu:add', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1015, '菜单修改', 102, 3, '', '', '', 1, 0, 'F', '0', '0', 'system:menu:edit', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1016, '菜单删除', 102, 4, '', '', '', 1, 0, 'F', '0', '0', 'system:menu:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1017, '部门查询', 103, 1, '', '', '', 1, 0, 'F', '0', '0', 'system:dept:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1018, '部门新增', 103, 2, '', '', '', 1, 0, 'F', '0', '0', 'system:dept:add', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1019, '部门修改', 103, 3, '', '', '', 1, 0, 'F', '0', '0', 'system:dept:edit', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1020, '部门删除', 103, 4, '', '', '', 1, 0, 'F', '0', '0', 'system:dept:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1021, '岗位查询', 104, 1, '', '', '', 1, 0, 'F', '0', '0', 'system:post:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1022, '岗位新增', 104, 2, '', '', '', 1, 0, 'F', '0', '0', 'system:post:add', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1023, '岗位修改', 104, 3, '', '', '', 1, 0, 'F', '0', '0', 'system:post:edit', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1024, '岗位删除', 104, 4, '', '', '', 1, 0, 'F', '0', '0', 'system:post:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1025, '岗位导出', 104, 5, '', '', '', 1, 0, 'F', '0', '0', 'system:post:export', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1026, '字典查询', 105, 1, '#', '', '', 1, 0, 'F', '0', '0', 'system:dict:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1027, '字典新增', 105, 2, '#', '', '', 1, 0, 'F', '0', '0', 'system:dict:add', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1028, '字典修改', 105, 3, '#', '', '', 1, 0, 'F', '0', '0', 'system:dict:edit', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1029, '字典删除', 105, 4, '#', '', '', 1, 0, 'F', '0', '0', 'system:dict:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1030, '字典导出', 105, 5, '#', '', '', 1, 0, 'F', '0', '0', 'system:dict:export', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1031, '参数查询', 106, 1, '#', '', '', 1, 0, 'F', '0', '0', 'system:config:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1032, '参数新增', 106, 2, '#', '', '', 1, 0, 'F', '0', '0', 'system:config:add', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1033, '参数修改', 106, 3, '#', '', '', 1, 0, 'F', '0', '0', 'system:config:edit', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1034, '参数删除', 106, 4, '#', '', '', 1, 0, 'F', '0', '0', 'system:config:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1035, '参数导出', 106, 5, '#', '', '', 1, 0, 'F', '0', '0', 'system:config:export', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1036, '公告查询', 107, 1, '#', '', '', 1, 0, 'F', '0', '0', 'system:notice:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1037, '公告新增', 107, 2, '#', '', '', 1, 0, 'F', '0', '0', 'system:notice:add', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1038, '公告修改', 107, 3, '#', '', '', 1, 0, 'F', '0', '0', 'system:notice:edit', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1039, '公告删除', 107, 4, '#', '', '', 1, 0, 'F', '0', '0', 'system:notice:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1040, '操作查询', 500, 1, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:operlog:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1041, '操作删除', 500, 2, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:operlog:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1042, '日志导出', 500, 4, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:operlog:export', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1043, '登录查询', 501, 1, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfor:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1044, '登录删除', 501, 2, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfor:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1045, '日志导出', 501, 3, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfor:export', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1046, '在线查询', 109, 1, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:online:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1047, '批量强退', 109, 2, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:online:batchLogout', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1048, '单条强退', 109, 3, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:online:forceLogout', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1049, '任务查询', 110, 1, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:job:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1050, '任务新增', 110, 2, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:job:add', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1051, '任务修改', 110, 3, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:job:edit', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1052, '任务删除', 110, 4, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:job:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1053, '状态修改', 110, 5, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:job:changeStatus', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1054, '任务导出', 110, 7, '#', '', '', 1, 0, 'F', '0', '0', 'monitor:job:export', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1055, '生成查询', 115, 1, '#', '', '', 1, 0, 'F', '0', '0', 'tool:gen:query', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1056, '生成修改', 115, 2, '#', '', '', 1, 0, 'F', '0', '0', 'tool:gen:edit', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1057, '生成删除', 115, 3, '#', '', '', 1, 0, 'F', '0', '0', 'tool:gen:remove', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1058, '导入代码', 115, 2, '#', '', '', 1, 0, 'F', '0', '0', 'tool:gen:import', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1059, '预览代码', 115, 4, '#', '', '', 1, 0, 'F', '0', '0', 'tool:gen:preview', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (1060, '生成代码', 115, 5, '#', '', '', 1, 0, 'F', '0', '0', 'tool:gen:code', '#', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2006, '公海管理', 0, 100, 'crm/pool', NULL, NULL, 1, 0, 'M', '0', '0', '', 'peoples', 'admin', '2022-01-12 19:23:39', 'admin', '2022-01-12 19:57:42', ''); +INSERT INTO `sys_menu` VALUES (2007, '线索管理', 0, 101, 'crm/clues', NULL, NULL, 1, 0, 'M', '0', '0', '', 'time-range', 'admin', '2022-01-12 19:25:51', 'admin', '2022-01-12 19:49:32', ''); +INSERT INTO `sys_menu` VALUES (2008, '客户管理', 0, 102, 'crm/customer', NULL, NULL, 1, 0, 'M', '0', '0', '', 'user', 'admin', '2022-01-12 19:26:15', 'admin', '2022-01-12 19:50:13', ''); +INSERT INTO `sys_menu` VALUES (2009, '客户公海', 2006, 100, 'list', 'crm/pool/list', NULL, 1, 0, 'C', '0', '0', 'crm:pool:list', '#', 'admin', '2022-01-12 19:33:38', 'admin', '2022-01-12 19:59:51', ''); +INSERT INTO `sys_menu` VALUES (2010, '我的线索', 2007, 100, 'person', 'crm/clues/person-list', NULL, 1, 0, 'C', '0', '0', 'crm:clues:person:list', '#', 'admin', '2022-01-12 19:37:30', 'admin', '2022-01-12 19:47:18', ''); +INSERT INTO `sys_menu` VALUES (2011, '线索列表', 2007, 101, 'list', 'crm/clues/list', NULL, 1, 0, 'C', '0', '0', 'crm:clues:list', '#', 'admin', '2022-01-12 19:38:49', 'admin', '2022-01-12 19:50:03', ''); +INSERT INTO `sys_menu` VALUES (2012, '我的客户', 2008, 100, 'person', 'crm/customer/person-list', NULL, 1, 0, 'C', '0', '0', 'crm:customer:person:list', '#', 'admin', '2022-01-12 19:42:14', 'admin', '2024-03-04 13:10:53', ''); +INSERT INTO `sys_menu` VALUES (2013, '客户列表', 2008, 101, 'list', 'crm/customer/list', NULL, 1, 0, 'C', '0', '0', 'crm:customer:list', '#', 'admin', '2022-01-12 19:42:44', 'admin', '2022-01-12 19:50:29', ''); +INSERT INTO `sys_menu` VALUES (2014, '成交客户', 2008, 102, 'deal', 'crm/customer/deal-list', NULL, 1, 0, 'C', '0', '0', 'crm:customer:deal:list', '#', 'admin', '2022-01-12 19:43:37', 'admin', '2022-01-12 19:50:32', ''); +INSERT INTO `sys_menu` VALUES (2015, '业绩订单', 0, 103, 'crm/order', NULL, NULL, 1, 0, 'M', '0', '0', '', 'money', 'admin', '2022-01-19 10:20:01', 'admin', '2022-01-19 10:20:17', ''); +INSERT INTO `sys_menu` VALUES (2016, '我的订单', 2015, 0, 'crm/customer', 'crm/order/person-list', NULL, 1, 0, 'C', '0', '0', 'crm:order:person:list', '#', 'admin', '2022-01-19 10:20:36', 'admin', '2022-01-19 10:21:08', ''); +INSERT INTO `sys_menu` VALUES (2017, '订单列表', 2015, 1, 'crm/order', 'crm/order/list', NULL, 1, 0, 'C', '0', '0', 'crm:order:list', '#', 'admin', '2022-01-19 11:07:45', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2020, '联系人', 2008, 1, 'personse', 'crm/person/index', NULL, 1, 0, 'C', '0', '0', 'system:person:list', '#', 'admin', '2024-03-01 11:33:42', 'admin', '2024-03-04 12:04:59', '联系人菜单'); +INSERT INTO `sys_menu` VALUES (2021, '联系人查询', 2020, 1, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:person:query', '#', 'admin', '2024-03-01 11:33:42', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2022, '联系人新增', 2020, 2, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:person:add', '#', 'admin', '2024-03-01 11:33:42', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2023, '联系人修改', 2020, 3, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:person:edit', '#', 'admin', '2024-03-01 11:33:42', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2024, '联系人删除', 2020, 4, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:person:remove', '#', 'admin', '2024-03-01 11:33:42', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2025, '联系人导出', 2020, 5, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:person:export', '#', 'admin', '2024-03-01 11:33:42', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2026, '商机', 2008, 1, 'business', 'crm/business/index', NULL, 1, 0, 'C', '0', '0', 'system:business:list', '#', 'admin', '2024-03-01 11:34:07', 'admin', '2024-03-01 16:45:21', '商机菜单'); +INSERT INTO `sys_menu` VALUES (2027, '商机查询', 2026, 1, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:business:query', '#', 'admin', '2024-03-01 11:34:07', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2028, '商机新增', 2026, 2, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:business:add', '#', 'admin', '2024-03-01 11:34:07', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2029, '商机修改', 2026, 3, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:business:edit', '#', 'admin', '2024-03-01 11:34:07', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2030, '商机删除', 2026, 4, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:business:remove', '#', 'admin', '2024-03-01 11:34:07', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2031, '商机导出', 2026, 5, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:business:export', '#', 'admin', '2024-03-01 11:34:07', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2032, '服务工单', 0, 502, 'service', NULL, NULL, 1, 0, 'M', '0', '0', NULL, 'star', 'admin', '2024-03-01 14:52:23', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2035, '服务工单', 2032, 1, 'ticket', 'crm/ticket/index', NULL, 1, 0, 'C', '0', '0', 'system:ticket:list', '#', 'admin', '2024-03-01 15:22:34', '', NULL, '服务工单菜单'); +INSERT INTO `sys_menu` VALUES (2036, '服务工单查询', 2035, 1, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:ticket:query', '#', 'admin', '2024-03-01 15:22:34', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2037, '服务工单新增', 2035, 2, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:ticket:add', '#', 'admin', '2024-03-01 15:22:34', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2038, '服务工单修改', 2035, 3, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:ticket:edit', '#', 'admin', '2024-03-01 15:22:34', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2039, '服务工单删除', 2035, 4, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:ticket:remove', '#', 'admin', '2024-03-01 15:22:34', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2040, '服务工单导出', 2035, 5, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:ticket:export', '#', 'admin', '2024-03-01 15:22:34', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2041, '跟进计划', 2008, 1, 'plan', 'crm/plan/index', NULL, 1, 0, 'C', '0', '0', 'system:plan:list', '#', 'admin', '2024-03-01 15:22:53', 'admin', '2024-03-01 16:45:47', '跟进计划菜单'); +INSERT INTO `sys_menu` VALUES (2042, '跟进计划查询', 2041, 1, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:plan:query', '#', 'admin', '2024-03-01 15:22:53', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2043, '跟进计划新增', 2041, 2, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:plan:add', '#', 'admin', '2024-03-01 15:22:53', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2044, '跟进计划修改', 2041, 3, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:plan:edit', '#', 'admin', '2024-03-01 15:22:53', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2045, '跟进计划删除', 2041, 4, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:plan:remove', '#', 'admin', '2024-03-01 15:22:53', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2046, '跟进计划导出', 2041, 5, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:plan:export', '#', 'admin', '2024-03-01 15:22:53', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2047, '跟进记录', 2008, 1, 'record', 'crm/record/index', NULL, 1, 0, 'C', '0', '0', 'system:record:list', '#', 'admin', '2024-03-01 15:23:05', 'admin', '2024-03-01 16:49:12', '跟进记录菜单'); +INSERT INTO `sys_menu` VALUES (2048, '跟进记录查询', 2047, 1, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:record:query', '#', 'admin', '2024-03-01 15:23:05', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2049, '跟进记录新增', 2047, 2, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:record:add', '#', 'admin', '2024-03-01 15:23:05', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2050, '跟进记录修改', 2047, 3, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:record:edit', '#', 'admin', '2024-03-01 15:23:05', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2051, '跟进记录删除', 2047, 4, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:record:remove', '#', 'admin', '2024-03-01 15:23:05', '', NULL, ''); +INSERT INTO `sys_menu` VALUES (2052, '跟进记录导出', 2047, 5, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:record:export', '#', 'admin', '2024-03-01 15:23:05', '', NULL, ''); + +-- ---------------------------- +-- Table structure for sys_notice +-- ---------------------------- +DROP TABLE IF EXISTS `sys_notice`; +CREATE TABLE `sys_notice` ( + `notice_id` int(4) NOT NULL AUTO_INCREMENT COMMENT '公告ID', + `notice_title` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '公告标题', + `notice_type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '公告类型(1通知 2公告)', + `notice_content` longblob NULL COMMENT '公告内容', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '公告状态(0正常 1关闭)', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + PRIMARY KEY (`notice_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '通知公告表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_notice +-- ---------------------------- +INSERT INTO `sys_notice` VALUES (1, '温馨提醒:2018-07-01 若依新版本发布啦', '2', 0xE696B0E78988E69CACE58685E5AEB9, '0', 'admin', '2022-01-11 19:11:40', '', NULL, '管理员'); +INSERT INTO `sys_notice` VALUES (2, '维护通知:2018-07-01 若依系统凌晨维护', '1', 0xE7BBB4E68AA4E58685E5AEB9, '0', 'admin', '2022-01-11 19:11:40', '', NULL, '管理员'); + +-- ---------------------------- +-- Table structure for sys_oper_log +-- ---------------------------- +DROP TABLE IF EXISTS `sys_oper_log`; +CREATE TABLE `sys_oper_log` ( + `oper_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志主键', + `title` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '模块标题', + `business_type` int(2) NULL DEFAULT 0 COMMENT '业务类型(0其它 1新增 2修改 3删除)', + `method` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '方法名称', + `request_method` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '请求方式', + `operator_type` int(1) NULL DEFAULT 0 COMMENT '操作类别(0其它 1后台用户 2手机端用户)', + `oper_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '操作人员', + `dept_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '部门名称', + `oper_url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '请求URL', + `oper_ip` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '主机地址', + `oper_location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '操作地点', + `oper_param` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '请求参数', + `json_result` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '返回参数', + `status` int(1) NULL DEFAULT 0 COMMENT '操作状态(0正常 1异常)', + `error_msg` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '错误消息', + `oper_time` datetime NULL DEFAULT NULL COMMENT '操作时间', + PRIMARY KEY (`oper_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 435 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '操作日志记录' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_oper_log +-- ---------------------------- +INSERT INTO `sys_oper_log` VALUES (346, '菜单管理', 1, 'com.ruoyi.web.controller.system.SysMenuController.add()', 'POST', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"date-range\",\"orderNum\":\"500\",\"menuName\":\"联系人管理\",\"params\":{},\"parentId\":0,\"isCache\":\"0\",\"path\":\"lxr\",\"createBy\":\"admin\",\"children\":[],\"isFrame\":\"1\",\"menuType\":\"M\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:31:03'); +INSERT INTO `sys_oper_log` VALUES (347, '菜单管理', 1, 'com.ruoyi.web.controller.system.SysMenuController.add()', 'POST', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"education\",\"orderNum\":\"501\",\"menuName\":\"商机管理\",\"params\":{},\"parentId\":0,\"isCache\":\"0\",\"path\":\"business\",\"createBy\":\"admin\",\"children\":[],\"isFrame\":\"1\",\"menuType\":\"M\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:32:14'); +INSERT INTO `sys_oper_log` VALUES (348, '字典类型', 1, 'com.ruoyi.web.controller.system.SysDictTypeController.add()', 'POST', 1, 'admin', NULL, '/system/dict/type', '127.0.0.1', '内网IP', '{\"createBy\":\"admin\",\"dictName\":\"是否关键决策人\",\"params\":{},\"dictType\":\"is_key\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:43:50'); +INSERT INTO `sys_oper_log` VALUES (349, '字典类型', 1, 'com.ruoyi.web.controller.system.SysDictTypeController.add()', 'POST', 1, 'admin', NULL, '/system/dict/type', '127.0.0.1', '内网IP', '{\"createBy\":\"admin\",\"dictName\":\"销售阶段\",\"params\":{},\"dictType\":\"sales_stage\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:45:38'); +INSERT INTO `sys_oper_log` VALUES (350, '字典类型', 1, 'com.ruoyi.web.controller.system.SysDictTypeController.add()', 'POST', 1, 'admin', NULL, '/system/dict/type', '127.0.0.1', '内网IP', '{\"createBy\":\"admin\",\"dictName\":\"阶段类型\",\"params\":{},\"dictType\":\"stage_type\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:45:57'); +INSERT INTO `sys_oper_log` VALUES (351, '字典类型', 1, 'com.ruoyi.web.controller.system.SysDictTypeController.add()', 'POST', 1, 'admin', NULL, '/system/dict/type', '127.0.0.1', '内网IP', '{\"createBy\":\"admin\",\"dictName\":\"服务类型\",\"params\":{},\"dictType\":\"service_type\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:46:11'); +INSERT INTO `sys_oper_log` VALUES (352, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"1\",\"listClass\":\"primary\",\"dictSort\":0,\"params\":{},\"dictType\":\"is_key\",\"dictLabel\":\"是\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:46:44'); +INSERT INTO `sys_oper_log` VALUES (353, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"0\",\"listClass\":\"info\",\"dictSort\":0,\"params\":{},\"dictType\":\"is_key\",\"dictLabel\":\"否\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:46:55'); +INSERT INTO `sys_oper_log` VALUES (354, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"0\",\"listClass\":\"primary\",\"dictSort\":0,\"params\":{},\"dictType\":\"sales_stage\",\"dictLabel\":\"test0\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:47:41'); +INSERT INTO `sys_oper_log` VALUES (355, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"1\",\"listClass\":\"success\",\"dictSort\":0,\"params\":{},\"dictType\":\"sales_stage\",\"dictLabel\":\"test1\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:47:50'); +INSERT INTO `sys_oper_log` VALUES (356, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"2\",\"listClass\":\"info\",\"dictSort\":0,\"params\":{},\"dictType\":\"sales_stage\",\"dictLabel\":\"test2\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:48:04'); +INSERT INTO `sys_oper_log` VALUES (357, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"3\",\"listClass\":\"warning\",\"dictSort\":0,\"params\":{},\"dictType\":\"sales_stage\",\"dictLabel\":\"test3\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:48:24'); +INSERT INTO `sys_oper_log` VALUES (358, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"0\",\"listClass\":\"primary\",\"dictSort\":0,\"params\":{},\"dictType\":\"stage_type\",\"dictLabel\":\"test0\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:49:28'); +INSERT INTO `sys_oper_log` VALUES (359, '字典数据', 2, 'com.ruoyi.web.controller.system.SysDictDataController.edit()', 'PUT', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"0\",\"listClass\":\"primary\",\"dictSort\":0,\"params\":{},\"dictType\":\"stage_type\",\"dictLabel\":\"test0\",\"createBy\":\"admin\",\"default\":false,\"isDefault\":\"N\",\"createTime\":1709264968000,\"dictCode\":136,\"updateBy\":\"admin\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:49:38'); +INSERT INTO `sys_oper_log` VALUES (360, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"1\",\"listClass\":\"success\",\"dictSort\":0,\"params\":{},\"dictType\":\"stage_type\",\"dictLabel\":\"test1\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:50:28'); +INSERT INTO `sys_oper_log` VALUES (361, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"0\",\"listClass\":\"primary\",\"dictSort\":0,\"params\":{},\"dictType\":\"service_type\",\"dictLabel\":\"test0\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:50:50'); +INSERT INTO `sys_oper_log` VALUES (362, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"1\",\"listClass\":\"success\",\"dictSort\":0,\"params\":{},\"dictType\":\"service_type\",\"dictLabel\":\"test1\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 11:51:01'); +INSERT INTO `sys_oper_log` VALUES (363, '菜单管理', 1, 'com.ruoyi.web.controller.system.SysMenuController.add()', 'POST', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"star\",\"orderNum\":\"502\",\"menuName\":\"服务工单\",\"params\":{},\"parentId\":0,\"isCache\":\"0\",\"path\":\"service\",\"createBy\":\"admin\",\"children\":[],\"isFrame\":\"1\",\"menuType\":\"M\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 14:52:24'); +INSERT INTO `sys_oper_log` VALUES (364, '菜单管理', 1, 'com.ruoyi.web.controller.system.SysMenuController.add()', 'POST', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"excel\",\"orderNum\":\"503\",\"menuName\":\"跟进计划\",\"params\":{},\"parentId\":0,\"isCache\":\"0\",\"path\":\"plan\",\"createBy\":\"admin\",\"children\":[],\"isFrame\":\"1\",\"menuType\":\"M\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 14:53:06'); +INSERT INTO `sys_oper_log` VALUES (365, '菜单管理', 1, 'com.ruoyi.web.controller.system.SysMenuController.add()', 'POST', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"example\",\"orderNum\":\"504\",\"menuName\":\"跟进记录\",\"params\":{},\"parentId\":0,\"isCache\":\"0\",\"path\":\"record\",\"createBy\":\"admin\",\"children\":[],\"isFrame\":\"1\",\"menuType\":\"M\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 14:53:48'); +INSERT INTO `sys_oper_log` VALUES (366, '服务工单', 2, 'com.ruoyi.system.controller.ServiceTicketController.edit()', 'PUT', 1, 'admin', NULL, '/system/ticket', '127.0.0.1', '内网IP', '{\"submitter\":\"1\",\"howManyServiceOrder\":1,\"serviceAddressDetail\":\"1\",\"contractOrderNumber\":\"1\",\"serviceAddressArea\":\"1\",\"title\":\"1\",\"currentPersonInCharge\":\"1\",\"customerContact\":\"1\",\"id\":1,\"demandServiceDay\":1,\"serviceStarTime\":1709222400000,\"signOutTime\":1709222400000,\"serviceEndTime\":1709222400000,\"serviceAddressCity\":\"1\",\"isSolveTheProblem\":0,\"serviceAddress\":\"1\",\"signOut\":\"1\",\"updateTime\":1709281356261,\"customerNumber\":\"1\",\"params\":{},\"scenePhoto\":\"\",\"customerName\":\"1\",\"signInTime\":1709222400000,\"contractTitle\":\"1\",\"phoneNumber\":\"1\",\"submitTime\":1709222400000,\"createTime\":1709270771000,\"signIn\":\"1\",\"afterSalesTechnician\":\"1\",\"customerCommentsAndDemands\":\"1\",\"serviceOrderNumber\":\"1\",\"satisfactionValue\":1}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:22:36'); +INSERT INTO `sys_oper_log` VALUES (367, '客户', 1, 'com.ruoyi.crm.controller.CrmCustomerController.add()', 'POST', 1, 'admin', NULL, '/crm/customer', '127.0.0.1', '内网IP', '{\"code\":\"1\",\"remark\":\"1\",\"id\":4,\"owner\":\"admin\",\"dealStatus\":\"0\",\"params\":{},\"linkman\":\"1\",\"createBy\":\"admin\",\"createTime\":1709281545797,\"phone\":\"13599599983\",\"name\":\"1\",\"status\":\"1\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:25:45'); +INSERT INTO `sys_oper_log` VALUES (368, '跟进记录', 1, 'com.ruoyi.crm.controller.CrmCommentController.add()', 'POST', 1, 'admin', NULL, '/crm/comment', '127.0.0.1', '内网IP', '{\"nextFollowupTime\":1709308800000,\"customerId\":4,\"content\":\"111\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:25:58'); +INSERT INTO `sys_oper_log` VALUES (369, '跟进记录', 1, 'com.ruoyi.crm.controller.CrmCommentController.add()', 'POST', 1, 'admin', NULL, '/crm/comment', '127.0.0.1', '内网IP', '{\"nextFollowupTime\":1709308800000,\"customerId\":4,\"content\":\"客户同意签合同\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:30:30'); +INSERT INTO `sys_oper_log` VALUES (370, '订单', 1, 'com.ruoyi.crm.controller.CrmOrderController.add()', 'POST', 1, 'admin', NULL, '/crm/order', '127.0.0.1', '内网IP', '{\"owner\":\"admin\",\"amount\":10000,\"orderNo\":\"226as26AS\",\"remark\":\"晚上五点签合同\",\"params\":{},\"createBy\":\"admin\",\"createTime\":1709281921186,\"customerId\":4,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:32:01'); +INSERT INTO `sys_oper_log` VALUES (371, '订单', 2, 'com.ruoyi.crm.controller.CrmOrderController.approve()', 'PUT', 1, 'admin', NULL, '/crm/order/approve/1', '127.0.0.1', '内网IP', '1', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:34:32'); +INSERT INTO `sys_oper_log` VALUES (372, '菜单管理', 2, 'com.ruoyi.web.controller.system.SysMenuController.edit()', 'PUT', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"#\",\"orderNum\":\"1\",\"menuName\":\"联系人\",\"params\":{},\"parentId\":2008,\"isCache\":\"0\",\"path\":\"person\",\"component\":\"crm/person/index\",\"children\":[],\"createTime\":1709264022000,\"updateBy\":\"admin\",\"isFrame\":\"1\",\"menuId\":2020,\"menuType\":\"C\",\"perms\":\"system:person:list\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:44:43'); +INSERT INTO `sys_oper_log` VALUES (373, '菜单管理', 2, 'com.ruoyi.web.controller.system.SysMenuController.edit()', 'PUT', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"#\",\"orderNum\":\"1\",\"menuName\":\"商机\",\"params\":{},\"parentId\":2008,\"isCache\":\"0\",\"path\":\"business\",\"component\":\"crm/business/index\",\"children\":[],\"createTime\":1709264047000,\"updateBy\":\"admin\",\"isFrame\":\"1\",\"menuId\":2026,\"menuType\":\"C\",\"perms\":\"system:business:list\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:45:21'); +INSERT INTO `sys_oper_log` VALUES (374, '菜单管理', 2, 'com.ruoyi.web.controller.system.SysMenuController.edit()', 'PUT', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"#\",\"orderNum\":\"1\",\"menuName\":\"跟进计划\",\"params\":{},\"parentId\":2008,\"isCache\":\"0\",\"path\":\"plan\",\"component\":\"crm/plan/index\",\"children\":[],\"createTime\":1709277773000,\"updateBy\":\"admin\",\"isFrame\":\"1\",\"menuId\":2041,\"menuType\":\"C\",\"perms\":\"system:plan:list\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:45:47'); +INSERT INTO `sys_oper_log` VALUES (375, '菜单管理', 2, 'com.ruoyi.web.controller.system.SysMenuController.edit()', 'PUT', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"example\",\"orderNum\":\"504\",\"menuName\":\"跟进记录\",\"params\":{},\"parentId\":2008,\"isCache\":\"0\",\"path\":\"record\",\"children\":[],\"createTime\":1709276028000,\"updateBy\":\"admin\",\"isFrame\":\"1\",\"menuId\":2034,\"menuType\":\"M\",\"perms\":\"\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:45:58'); +INSERT INTO `sys_oper_log` VALUES (376, '菜单管理', 3, 'com.ruoyi.web.controller.system.SysMenuController.remove()', 'DELETE', 1, 'admin', NULL, '/system/menu/2018', '127.0.0.1', '内网IP', '{menuId=2018}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:46:07'); +INSERT INTO `sys_oper_log` VALUES (377, '菜单管理', 3, 'com.ruoyi.web.controller.system.SysMenuController.remove()', 'DELETE', 1, 'admin', NULL, '/system/menu/2019', '127.0.0.1', '内网IP', '{menuId=2019}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:46:16'); +INSERT INTO `sys_oper_log` VALUES (378, '菜单管理', 3, 'com.ruoyi.web.controller.system.SysMenuController.remove()', 'DELETE', 1, 'admin', NULL, '/system/menu/2033', '127.0.0.1', '内网IP', '{menuId=2033}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:46:20'); +INSERT INTO `sys_oper_log` VALUES (379, '菜单管理', 2, 'com.ruoyi.web.controller.system.SysMenuController.edit()', 'PUT', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"#\",\"orderNum\":\"1\",\"menuName\":\"跟进记录\",\"params\":{},\"parentId\":2008,\"isCache\":\"0\",\"path\":\"record\",\"component\":\"crm/record/index\",\"children\":[],\"createTime\":1709277785000,\"isFrame\":\"1\",\"menuId\":2047,\"menuType\":\"C\",\"perms\":\"system:record:list\",\"status\":\"0\"}', '{\"msg\":\"修改菜单\'跟进记录\'失败,菜单名称已存在\",\"code\":500}', 0, NULL, '2024-03-01 16:48:32'); +INSERT INTO `sys_oper_log` VALUES (380, '菜单管理', 2, 'com.ruoyi.web.controller.system.SysMenuController.edit()', 'PUT', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"#\",\"orderNum\":\"1\",\"menuName\":\"跟进记录1\",\"params\":{},\"parentId\":2008,\"isCache\":\"0\",\"path\":\"record\",\"component\":\"crm/record/index\",\"children\":[],\"createTime\":1709277785000,\"updateBy\":\"admin\",\"isFrame\":\"1\",\"menuId\":2047,\"menuType\":\"C\",\"perms\":\"system:record:list\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:48:52'); +INSERT INTO `sys_oper_log` VALUES (381, '菜单管理', 3, 'com.ruoyi.web.controller.system.SysMenuController.remove()', 'DELETE', 1, 'admin', NULL, '/system/menu/2034', '127.0.0.1', '内网IP', '{menuId=2034}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:48:59'); +INSERT INTO `sys_oper_log` VALUES (382, '菜单管理', 2, 'com.ruoyi.web.controller.system.SysMenuController.edit()', 'PUT', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"#\",\"orderNum\":\"1\",\"menuName\":\"跟进记录\",\"params\":{},\"parentId\":2008,\"isCache\":\"0\",\"path\":\"record\",\"component\":\"crm/record/index\",\"children\":[],\"createTime\":1709277785000,\"updateBy\":\"admin\",\"isFrame\":\"1\",\"menuId\":2047,\"menuType\":\"C\",\"perms\":\"system:record:list\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:49:12'); +INSERT INTO `sys_oper_log` VALUES (383, '线索', 1, 'com.ruoyi.crm.controller.CrmCluesController.add()', 'POST', 1, 'admin', NULL, '/crm/clues', '127.0.0.1', '内网IP', '{\"cluesName\":\"1\",\"cluesStatus\":\"有效\",\"remark\":\"1\",\"id\":5,\"owner\":\"admin\",\"dealStatus\":\"0\",\"params\":{},\"linkman\":\"1\",\"createBy\":\"admin\",\"createTime\":1709283384768,\"phone\":\"13599599983\",\"cluesSource\":\"电话\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:56:24'); +INSERT INTO `sys_oper_log` VALUES (384, '线索', 2, 'com.ruoyi.crm.controller.CrmCluesController.toCustomer()', 'PUT', 1, 'admin', NULL, '/crm/clues/to-customer', '127.0.0.1', '内网IP', '{\"customerStatus\":\"测试客户\",\"customerRank\":\"A\",\"name\":\"1\",\"id\":5}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:56:47'); +INSERT INTO `sys_oper_log` VALUES (385, '客户', 2, 'com.ruoyi.crm.controller.CrmCustomerController.edit()', 'PUT', 1, 'admin', NULL, '/crm/customer', '127.0.0.1', '内网IP', '{\"nextFollowupTime\":1709308800000,\"code\":\"111\",\"customerRank\":\"A\",\"cluesName\":\"\",\"cluesStatus\":\"\",\"lastFollowupTime\":1709281831000,\"remark\":\"111\",\"delFlag\":\"0\",\"customerStatus\":\"测试客户\",\"updateBy\":\"admin\",\"id\":4,\"owner\":\"admin\",\"preOwner\":\"\",\"customerIndustry\":\"房地产\",\"updateTime\":1709283434328,\"dealStatus\":\"1\",\"params\":{},\"poolType\":\"\",\"version\":0,\"lastUpdateRecord\":\"客户同意签合同\",\"linkman\":\"111\",\"createBy\":\"admin\",\"createTime\":1709281546000,\"phone\":\"13599599983\",\"name\":\"111\",\"cluesSource\":\"\",\"region\":\"北京市\",\"status\":\"1\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-01 16:57:14'); +INSERT INTO `sys_oper_log` VALUES (386, '线索', 2, 'com.ruoyi.crm.controller.CrmCluesController.toCustomer()', 'PUT', 1, 'admin', NULL, '/crm/clues/to-customer', '127.0.0.1', '内网IP', '{\"customerStatus\":\"测试客户\",\"customerRank\":\"B\",\"name\":\"5555\",\"id\":2}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 09:20:46'); +INSERT INTO `sys_oper_log` VALUES (387, '联系人', 1, 'com.ruoyi.system.controller.ContactPersonController.test()', 'POST', 1, 'admin', NULL, '/system/person/test', '127.0.0.1', '内网IP', '{\"name\":\"1\",\"phoneNumber\":\"13599599983\",\"wxNumber\":\"1\",\"mailNumber\":\"16545118@qq.com\"}', '{\"msg\":\"s\",\"code\":200}', 0, NULL, '2024-03-04 11:06:47'); +INSERT INTO `sys_oper_log` VALUES (388, '联系人', 1, 'com.ruoyi.system.controller.ContactPersonController.test()', 'POST', 1, 'admin', NULL, '/system/person/test', '127.0.0.1', '内网IP', '{\"name\":\"1\",\"phoneNumber\":\"13599599983\",\"customerId\":\"\",\"wxNumber\":\"1\",\"mailNumber\":\"16545118@qq.com\"}', '{\"msg\":\"s\",\"code\":200}', 0, NULL, '2024-03-04 11:09:55'); +INSERT INTO `sys_oper_log` VALUES (389, '联系人', 1, 'com.ruoyi.system.controller.ContactPersonController.test()', 'POST', 1, 'admin', NULL, '/system/person/test', '127.0.0.1', '内网IP', '{\"name\":\"1\",\"phoneNumber\":\"13599599983\",\"customerId\":3,\"wxNumber\":\"1\",\"mailNumber\":\"16545118@qq.com\"}', '{\"msg\":\"s\",\"code\":200}', 0, NULL, '2024-03-04 11:10:54'); +INSERT INTO `sys_oper_log` VALUES (390, '联系人', 1, 'com.ruoyi.system.controller.ContactPersonController.test()', 'POST', 1, 'admin', NULL, '/system/person/test', '127.0.0.1', '内网IP', '{\"name\":\"1\",\"phoneNumber\":\"13599599983\",\"customerId\":3,\"wxNumber\":\"1\",\"mailNumber\":\"16545118@qq.com\"}', '{\"msg\":\"s\",\"code\":200}', 0, NULL, '2024-03-04 11:12:29'); +INSERT INTO `sys_oper_log` VALUES (391, '联系人', 1, 'com.ruoyi.system.controller.ContactPersonController.add()', 'POST', 1, 'admin', NULL, '/system/person', '127.0.0.1', '内网IP', '{\"mailNumber\":\"16545118@qq.com\",\"customerId\":3,\"id\":3,\"wxNumber\":\"sadaw123\",\"params\":{},\"phoneNumber\":\"13599599983\",\"createTime\":1709522148091,\"name\":\"张三\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 11:15:48'); +INSERT INTO `sys_oper_log` VALUES (392, '菜单管理', 2, 'com.ruoyi.web.controller.system.SysMenuController.edit()', 'PUT', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"#\",\"orderNum\":\"1\",\"menuName\":\"联系人\",\"params\":{},\"parentId\":2008,\"isCache\":\"0\",\"path\":\"person\",\"component\":\"crm/person/index\",\"children\":[],\"createTime\":1709264022000,\"updateBy\":\"admin\",\"isFrame\":\"1\",\"menuId\":2020,\"menuType\":\"C\",\"perms\":\"system:person:list\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 12:04:59'); +INSERT INTO `sys_oper_log` VALUES (393, '菜单管理', 2, 'com.ruoyi.web.controller.system.SysMenuController.edit()', 'PUT', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"#\",\"orderNum\":\"100\",\"menuName\":\"我的客户\",\"params\":{},\"parentId\":2008,\"isCache\":\"0\",\"path\":\"person\",\"component\":\"crm/customer\",\"children\":[],\"createTime\":1641987734000,\"updateBy\":\"admin\",\"isFrame\":\"1\",\"menuId\":2012,\"menuType\":\"C\",\"perms\":\"crm:customer:person:list\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 13:10:01'); +INSERT INTO `sys_oper_log` VALUES (394, '菜单管理', 2, 'com.ruoyi.web.controller.system.SysMenuController.edit()', 'PUT', 1, 'admin', NULL, '/system/menu', '127.0.0.1', '内网IP', '{\"visible\":\"0\",\"icon\":\"#\",\"orderNum\":\"100\",\"menuName\":\"我的客户\",\"params\":{},\"parentId\":2008,\"isCache\":\"0\",\"path\":\"person\",\"component\":\"crm/customer/person-list\",\"children\":[],\"createTime\":1641987734000,\"updateBy\":\"admin\",\"isFrame\":\"1\",\"menuId\":2012,\"menuType\":\"C\",\"perms\":\"crm:customer:person:list\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 13:10:53'); +INSERT INTO `sys_oper_log` VALUES (395, '联系人', 1, 'com.ruoyi.crm.system.controller.ContactPersonController.add()', 'POST', 1, 'admin', NULL, '/system/person', '127.0.0.1', '内网IP', '{\"mailNumber\":\"16545118@qq.com\",\"customerId\":3,\"id\":4,\"wxNumber\":\"11111111111111111\",\"params\":{},\"phoneNumber\":\"13599599983\",\"createTime\":1709539122371,\"name\":\"1111111\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 15:58:42'); +INSERT INTO `sys_oper_log` VALUES (396, '联系人', 1, 'com.ruoyi.crm.system.controller.ContactPersonController.add()', 'POST', 1, 'admin', NULL, '/system/person', '127.0.0.1', '内网IP', '{\"mailNumber\":\"484648559@qq.com\",\"customerId\":3,\"id\":5,\"wxNumber\":\"2222222222\",\"params\":{},\"phoneNumber\":\"13599599983\",\"createTime\":1709539130542,\"name\":\"222222222\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 15:58:50'); +INSERT INTO `sys_oper_log` VALUES (397, '字典数据', 2, 'com.ruoyi.web.controller.system.SysDictDataController.edit()', 'PUT', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"0\",\"listClass\":\"primary\",\"dictSort\":0,\"params\":{},\"dictType\":\"sales_stage\",\"dictLabel\":\"需求发现\",\"createBy\":\"admin\",\"default\":false,\"isDefault\":\"N\",\"createTime\":1709264861000,\"dictCode\":132,\"updateBy\":\"admin\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 16:50:22'); +INSERT INTO `sys_oper_log` VALUES (398, '字典数据', 2, 'com.ruoyi.web.controller.system.SysDictDataController.edit()', 'PUT', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"1\",\"listClass\":\"success\",\"dictSort\":0,\"params\":{},\"dictType\":\"sales_stage\",\"dictLabel\":\"需求确认\",\"createBy\":\"admin\",\"default\":false,\"isDefault\":\"N\",\"createTime\":1709264870000,\"dictCode\":133,\"updateBy\":\"admin\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 16:50:48'); +INSERT INTO `sys_oper_log` VALUES (399, '字典数据', 2, 'com.ruoyi.web.controller.system.SysDictDataController.edit()', 'PUT', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"2\",\"listClass\":\"info\",\"dictSort\":0,\"params\":{},\"dictType\":\"sales_stage\",\"dictLabel\":\"方案报价\",\"createBy\":\"admin\",\"default\":false,\"isDefault\":\"N\",\"createTime\":1709264884000,\"dictCode\":134,\"updateBy\":\"admin\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 16:51:09'); +INSERT INTO `sys_oper_log` VALUES (400, '字典数据', 2, 'com.ruoyi.web.controller.system.SysDictDataController.edit()', 'PUT', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"3\",\"listClass\":\"warning\",\"dictSort\":0,\"params\":{},\"dictType\":\"sales_stage\",\"dictLabel\":\"商务谈判\",\"createBy\":\"admin\",\"default\":false,\"isDefault\":\"N\",\"createTime\":1709264904000,\"dictCode\":135,\"updateBy\":\"admin\",\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 16:51:31'); +INSERT INTO `sys_oper_log` VALUES (401, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"4\",\"listClass\":\"success\",\"dictSort\":0,\"params\":{},\"dictType\":\"sales_stage\",\"dictLabel\":\"交易成功\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 16:52:15'); +INSERT INTO `sys_oper_log` VALUES (402, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"5\",\"listClass\":\"danger\",\"dictSort\":0,\"params\":{},\"dictType\":\"sales_stage\",\"dictLabel\":\"交易失败\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 16:52:31'); +INSERT INTO `sys_oper_log` VALUES (403, '字典数据', 1, 'com.ruoyi.web.controller.system.SysDictDataController.add()', 'POST', 1, 'admin', NULL, '/system/dict/data', '127.0.0.1', '内网IP', '{\"dictValue\":\"6\",\"listClass\":\"warning\",\"dictSort\":0,\"params\":{},\"dictType\":\"sales_stage\",\"dictLabel\":\"无效\",\"createBy\":\"admin\",\"default\":false,\"status\":\"0\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 16:52:53'); +INSERT INTO `sys_oper_log` VALUES (404, '商机', 2, 'com.ruoyi.crm.system.controller.BusinessController.edit()', 'PUT', 1, 'admin', NULL, '/system/business', '127.0.0.1', '内网IP', '{\"salesStage\":2,\"id\":1,\"updateTime\":1709543591441,\"params\":{}}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 17:13:11'); +INSERT INTO `sys_oper_log` VALUES (405, '商机', 2, 'com.ruoyi.crm.system.controller.BusinessController.edit()', 'PUT', 1, 'admin', NULL, '/system/business', '127.0.0.1', '内网IP', '{\"salesStage\":2,\"id\":1,\"updateTime\":1709543667797,\"params\":{}}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-04 17:14:27'); +INSERT INTO `sys_oper_log` VALUES (406, '跟进记录', 1, 'com.ruoyi.crm.system.controller.BusinessController.addRecords()', 'POST', 1, 'admin', NULL, '/system/business/addRecords', '127.0.0.1', '内网IP', '{\"followUpContent\":\"商机已确认,客户已确认,即将报价\",\"customerNumber\":\"zy_202403051\",\"params\":{},\"title\":\"商机已确认\",\"followUpRecord\":\"客户已确认,即将报价\",\"createTime\":1709604306204}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-05 10:05:06'); +INSERT INTO `sys_oper_log` VALUES (407, '商机', 2, 'com.ruoyi.crm.system.controller.BusinessController.edit()', 'PUT', 1, 'admin', NULL, '/system/business', '127.0.0.1', '内网IP', '{\"salesStage\":2,\"id\":1,\"updateTime\":1709604306183,\"params\":{}}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-05 10:05:06'); +INSERT INTO `sys_oper_log` VALUES (408, '跟进记录', 1, 'com.ruoyi.crm.controller.CrmCommentController.add()', 'POST', 1, 'admin', NULL, '/crm/comment', '127.0.0.1', '内网IP', '{\"nextFollowupTime\":1710172800000,\"customerId\":2,\"content\":\"1\"}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-05 11:31:10'); +INSERT INTO `sys_oper_log` VALUES (409, '商机', 5, 'com.ruoyi.crm.system.controller.BusinessController.export()', 'POST', 1, 'admin', NULL, '/system/business/export', '127.0.0.1', '内网IP', '{\"params\":{}}', NULL, 0, NULL, '2024-03-05 15:35:32'); +INSERT INTO `sys_oper_log` VALUES (410, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', '{\"code\":200}', 0, NULL, '2024-03-05 16:27:32'); +INSERT INTO `sys_oper_log` VALUES (411, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 1 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 16:31:16'); +INSERT INTO `sys_oper_log` VALUES (412, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 1 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 16:53:19'); +INSERT INTO `sys_oper_log` VALUES (413, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 www 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 16:54:53'); +INSERT INTO `sys_oper_log` VALUES (414, '商机', 1, 'com.ruoyi.crm.system.controller.BusinessController.add()', 'POST', 1, 'admin', NULL, '/system/business', '127.0.0.1', '内网IP', '{\"salesStage\":0,\"id\":2,\"stageType\":0,\"businessNumber\":\"qqq\",\"params\":{},\"createTime\":1709629080530}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-05 16:58:00'); +INSERT INTO `sys_oper_log` VALUES (415, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 www 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 17:02:34'); +INSERT INTO `sys_oper_log` VALUES (416, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 www 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 17:04:58'); +INSERT INTO `sys_oper_log` VALUES (417, '用户管理', 6, 'com.ruoyi.web.controller.system.SysUserController.importData()', 'POST', 1, 'admin', NULL, '/system/user/importData', '127.0.0.1', '内网IP', 'false', '{\"msg\":\"恭喜您,数据已全部导入成功!共 1 条,数据如下:
1、账号 ret 导入成功\",\"code\":200}', 0, NULL, '2024-03-05 17:08:23'); +INSERT INTO `sys_oper_log` VALUES (418, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 www 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 17:18:20'); +INSERT INTO `sys_oper_log` VALUES (419, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '', '2024-03-05 17:20:14'); +INSERT INTO `sys_oper_log` VALUES (420, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '', '2024-03-05 17:21:40'); +INSERT INTO `sys_oper_log` VALUES (421, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 www 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 17:23:01'); +INSERT INTO `sys_oper_log` VALUES (422, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 asdasd 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 17:27:40'); +INSERT INTO `sys_oper_log` VALUES (423, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 asdasd 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 17:31:18'); +INSERT INTO `sys_oper_log` VALUES (424, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 asdasd 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 17:40:20'); +INSERT INTO `sys_oper_log` VALUES (425, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 asdasd 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 17:42:07'); +INSERT INTO `sys_oper_log` VALUES (426, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', NULL, 1, '很抱歉,导入失败!共 1 条数据格式不正确,错误如下:
1、商机编号 asdasd 导入失败:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=\'businessNumber\', mode=IN, javaType=class java.lang.Long, jdbcType=null, numericScale=null, resultMapId=\'null\', jdbcTypeName=\'null\', expression=\'null\'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long', '2024-03-05 17:43:49'); +INSERT INTO `sys_oper_log` VALUES (427, '用户管理', 6, 'com.ruoyi.crm.system.controller.BusinessController.importData()', 'POST', 1, 'admin', NULL, '/system/business/importData', '127.0.0.1', '内网IP', 'false', '{\"msg\":\"恭喜您,数据已全部导入成功!共 1 条,数据如下:
1、商机编号 7 导入成功\",\"code\":200}', 0, NULL, '2024-03-05 17:48:46'); +INSERT INTO `sys_oper_log` VALUES (428, '跟进记录', 1, 'com.ruoyi.crm.system.controller.FollowUpRecordController.add()', 'POST', 1, 'admin', NULL, '/system/record', '127.0.0.1', '内网IP', '{\"params\":{},\"createTime\":1709646557473}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-05 21:49:17'); +INSERT INTO `sys_oper_log` VALUES (429, '跟进记录', 1, 'com.ruoyi.crm.system.controller.FollowUpRecordController.add()', 'POST', 1, 'admin', NULL, '/system/record', '127.0.0.1', '内网IP', '{\"followUpTime\":1709740800000,\"params\":{},\"createTime\":1709646855016}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-05 21:54:15'); +INSERT INTO `sys_oper_log` VALUES (430, '跟进记录', 1, 'com.ruoyi.crm.system.controller.FollowUpRecordController.add()', 'POST', 1, 'admin', NULL, '/system/record', '127.0.0.1', '内网IP', '{\"followUpTime\":1709827200000,\"params\":{},\"createTime\":1709646939674}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-05 21:55:39'); +INSERT INTO `sys_oper_log` VALUES (431, '跟进记录', 1, 'com.ruoyi.crm.system.controller.FollowUpRecordController.add()', 'POST', 1, 'admin', NULL, '/system/record', '127.0.0.1', '内网IP', '{\"followUpTime\":1709740800000,\"params\":{},\"createTime\":1709647106098}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-05 21:58:26'); +INSERT INTO `sys_oper_log` VALUES (432, '跟进记录', 1, 'com.ruoyi.crm.system.controller.FollowUpRecordController.add()', 'POST', 1, 'admin', NULL, '/system/record', '127.0.0.1', '内网IP', '{\"followUpTime\":1709827200000,\"params\":{},\"content\":\"ccccccc\",\"createTime\":1709647194420,\"customerId\":2}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-05 21:59:54'); +INSERT INTO `sys_oper_log` VALUES (433, '跟进记录', 1, 'com.ruoyi.crm.system.controller.FollowUpRecordController.add()', 'POST', 1, 'admin', NULL, '/system/record', '127.0.0.1', '内网IP', '{\"followUpTime\":1709913600000,\"params\":{},\"content\":\"vvvvvvvvv\",\"createTime\":1709647294770,\"customerId\":2}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-05 22:01:34'); +INSERT INTO `sys_oper_log` VALUES (434, '跟进记录', 1, 'com.ruoyi.crm.system.controller.FollowUpRecordController.add()', 'POST', 1, 'admin', NULL, '/system/record', '127.0.0.1', '内网IP', '{\"followUpTime\":1709740800000,\"params\":{},\"content\":\"wwww\",\"createTime\":1709692231599,\"customerId\":2}', '{\"msg\":\"操作成功\",\"code\":200}', 0, NULL, '2024-03-06 10:30:31'); + +-- ---------------------------- +-- Table structure for sys_post +-- ---------------------------- +DROP TABLE IF EXISTS `sys_post`; +CREATE TABLE `sys_post` ( + `post_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '岗位ID', + `post_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '岗位编码', + `post_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '岗位名称', + `post_sort` int(4) NOT NULL COMMENT '显示顺序', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '状态(0正常 1停用)', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + PRIMARY KEY (`post_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '岗位信息表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_post +-- ---------------------------- +INSERT INTO `sys_post` VALUES (1, 'ceo', '董事长', 1, '0', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_post` VALUES (2, 'se', '项目经理', 2, '0', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_post` VALUES (3, 'hr', '人力资源', 3, '0', 'admin', '2022-01-11 19:11:40', '', NULL, ''); +INSERT INTO `sys_post` VALUES (4, 'user', '普通员工', 4, '0', 'admin', '2022-01-11 19:11:40', '', NULL, ''); + +-- ---------------------------- +-- Table structure for sys_role +-- ---------------------------- +DROP TABLE IF EXISTS `sys_role`; +CREATE TABLE `sys_role` ( + `role_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '角色ID', + `role_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '角色名称', + `role_key` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '角色权限字符串', + `role_sort` int(4) NOT NULL COMMENT '显示顺序', + `data_scope` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '1' COMMENT '数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限)', + `menu_check_strictly` tinyint(1) NULL DEFAULT 1 COMMENT '菜单树选择项是否关联显示', + `dept_check_strictly` tinyint(1) NULL DEFAULT 1 COMMENT '部门树选择项是否关联显示', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '角色状态(0正常 1停用)', + `del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '删除标志(0代表存在 2代表删除)', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + PRIMARY KEY (`role_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '角色信息表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_role +-- ---------------------------- +INSERT INTO `sys_role` VALUES (1, '超级管理员', 'admin', 1, '1', 1, 1, '0', '0', 'admin', '2022-01-11 19:11:40', '', NULL, '超级管理员'); +INSERT INTO `sys_role` VALUES (2, '普通角色', 'common', 2, '2', 1, 1, '0', '0', 'admin', '2022-01-11 19:11:40', 'admin', '2022-01-14 00:24:25', '普通角色'); + +-- ---------------------------- +-- Table structure for sys_role_dept +-- ---------------------------- +DROP TABLE IF EXISTS `sys_role_dept`; +CREATE TABLE `sys_role_dept` ( + `role_id` bigint(20) NOT NULL COMMENT '角色ID', + `dept_id` bigint(20) NOT NULL COMMENT '部门ID', + PRIMARY KEY (`role_id`, `dept_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '角色和部门关联表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_role_dept +-- ---------------------------- +INSERT INTO `sys_role_dept` VALUES (2, 100); +INSERT INTO `sys_role_dept` VALUES (2, 101); +INSERT INTO `sys_role_dept` VALUES (2, 105); + +-- ---------------------------- +-- Table structure for sys_role_menu +-- ---------------------------- +DROP TABLE IF EXISTS `sys_role_menu`; +CREATE TABLE `sys_role_menu` ( + `role_id` bigint(20) NOT NULL COMMENT '角色ID', + `menu_id` bigint(20) NOT NULL COMMENT '菜单ID', + PRIMARY KEY (`role_id`, `menu_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '角色和菜单关联表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_role_menu +-- ---------------------------- +INSERT INTO `sys_role_menu` VALUES (2, 1); +INSERT INTO `sys_role_menu` VALUES (2, 2); +INSERT INTO `sys_role_menu` VALUES (2, 3); +INSERT INTO `sys_role_menu` VALUES (2, 100); +INSERT INTO `sys_role_menu` VALUES (2, 101); +INSERT INTO `sys_role_menu` VALUES (2, 102); +INSERT INTO `sys_role_menu` VALUES (2, 103); +INSERT INTO `sys_role_menu` VALUES (2, 104); +INSERT INTO `sys_role_menu` VALUES (2, 105); +INSERT INTO `sys_role_menu` VALUES (2, 106); +INSERT INTO `sys_role_menu` VALUES (2, 107); +INSERT INTO `sys_role_menu` VALUES (2, 108); +INSERT INTO `sys_role_menu` VALUES (2, 109); +INSERT INTO `sys_role_menu` VALUES (2, 110); +INSERT INTO `sys_role_menu` VALUES (2, 111); +INSERT INTO `sys_role_menu` VALUES (2, 112); +INSERT INTO `sys_role_menu` VALUES (2, 113); +INSERT INTO `sys_role_menu` VALUES (2, 114); +INSERT INTO `sys_role_menu` VALUES (2, 115); +INSERT INTO `sys_role_menu` VALUES (2, 116); +INSERT INTO `sys_role_menu` VALUES (2, 500); +INSERT INTO `sys_role_menu` VALUES (2, 501); +INSERT INTO `sys_role_menu` VALUES (2, 1001); +INSERT INTO `sys_role_menu` VALUES (2, 1002); +INSERT INTO `sys_role_menu` VALUES (2, 1003); +INSERT INTO `sys_role_menu` VALUES (2, 1004); +INSERT INTO `sys_role_menu` VALUES (2, 1005); +INSERT INTO `sys_role_menu` VALUES (2, 1006); +INSERT INTO `sys_role_menu` VALUES (2, 1007); +INSERT INTO `sys_role_menu` VALUES (2, 1008); +INSERT INTO `sys_role_menu` VALUES (2, 1009); +INSERT INTO `sys_role_menu` VALUES (2, 1010); +INSERT INTO `sys_role_menu` VALUES (2, 1011); +INSERT INTO `sys_role_menu` VALUES (2, 1012); +INSERT INTO `sys_role_menu` VALUES (2, 1013); +INSERT INTO `sys_role_menu` VALUES (2, 1014); +INSERT INTO `sys_role_menu` VALUES (2, 1015); +INSERT INTO `sys_role_menu` VALUES (2, 1016); +INSERT INTO `sys_role_menu` VALUES (2, 1017); +INSERT INTO `sys_role_menu` VALUES (2, 1018); +INSERT INTO `sys_role_menu` VALUES (2, 1019); +INSERT INTO `sys_role_menu` VALUES (2, 1020); +INSERT INTO `sys_role_menu` VALUES (2, 1021); +INSERT INTO `sys_role_menu` VALUES (2, 1022); +INSERT INTO `sys_role_menu` VALUES (2, 1023); +INSERT INTO `sys_role_menu` VALUES (2, 1024); +INSERT INTO `sys_role_menu` VALUES (2, 1025); +INSERT INTO `sys_role_menu` VALUES (2, 1026); +INSERT INTO `sys_role_menu` VALUES (2, 1027); +INSERT INTO `sys_role_menu` VALUES (2, 1028); +INSERT INTO `sys_role_menu` VALUES (2, 1029); +INSERT INTO `sys_role_menu` VALUES (2, 1030); +INSERT INTO `sys_role_menu` VALUES (2, 1031); +INSERT INTO `sys_role_menu` VALUES (2, 1032); +INSERT INTO `sys_role_menu` VALUES (2, 1033); +INSERT INTO `sys_role_menu` VALUES (2, 1034); +INSERT INTO `sys_role_menu` VALUES (2, 1035); +INSERT INTO `sys_role_menu` VALUES (2, 1036); +INSERT INTO `sys_role_menu` VALUES (2, 1037); +INSERT INTO `sys_role_menu` VALUES (2, 1038); +INSERT INTO `sys_role_menu` VALUES (2, 1039); +INSERT INTO `sys_role_menu` VALUES (2, 1040); +INSERT INTO `sys_role_menu` VALUES (2, 1041); +INSERT INTO `sys_role_menu` VALUES (2, 1042); +INSERT INTO `sys_role_menu` VALUES (2, 1043); +INSERT INTO `sys_role_menu` VALUES (2, 1044); +INSERT INTO `sys_role_menu` VALUES (2, 1045); +INSERT INTO `sys_role_menu` VALUES (2, 1046); +INSERT INTO `sys_role_menu` VALUES (2, 1047); +INSERT INTO `sys_role_menu` VALUES (2, 1048); +INSERT INTO `sys_role_menu` VALUES (2, 1049); +INSERT INTO `sys_role_menu` VALUES (2, 1050); +INSERT INTO `sys_role_menu` VALUES (2, 1051); +INSERT INTO `sys_role_menu` VALUES (2, 1052); +INSERT INTO `sys_role_menu` VALUES (2, 1053); +INSERT INTO `sys_role_menu` VALUES (2, 1054); +INSERT INTO `sys_role_menu` VALUES (2, 1055); +INSERT INTO `sys_role_menu` VALUES (2, 1056); +INSERT INTO `sys_role_menu` VALUES (2, 1057); +INSERT INTO `sys_role_menu` VALUES (2, 1058); +INSERT INTO `sys_role_menu` VALUES (2, 1059); +INSERT INTO `sys_role_menu` VALUES (2, 1060); +INSERT INTO `sys_role_menu` VALUES (2, 2006); +INSERT INTO `sys_role_menu` VALUES (2, 2007); +INSERT INTO `sys_role_menu` VALUES (2, 2008); +INSERT INTO `sys_role_menu` VALUES (2, 2009); +INSERT INTO `sys_role_menu` VALUES (2, 2010); +INSERT INTO `sys_role_menu` VALUES (2, 2012); +INSERT INTO `sys_role_menu` VALUES (2, 2014); + +-- ---------------------------- +-- Table structure for sys_user +-- ---------------------------- +DROP TABLE IF EXISTS `sys_user`; +CREATE TABLE `sys_user` ( + `user_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '用户ID', + `dept_id` bigint(20) NULL DEFAULT NULL COMMENT '部门ID', + `user_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户账号', + `nick_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户昵称', + `user_type` varchar(2) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '00' COMMENT '用户类型(00系统用户)', + `email` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '用户邮箱', + `phonenumber` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '手机号码', + `sex` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '用户性别(0男 1女 2未知)', + `avatar` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '头像地址', + `password` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '密码', + `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '帐号状态(0正常 1停用)', + `del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '删除标志(0代表存在 2代表删除)', + `login_ip` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '最后登录IP', + `login_date` datetime NULL DEFAULT NULL COMMENT '最后登录时间', + `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', + `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', + PRIMARY KEY (`user_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 104 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户信息表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_user +-- ---------------------------- +INSERT INTO `sys_user` VALUES (1, 103, 'admin', '若依', '00', 'ry@163.com', '15888888888', '1', '', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', '2024-03-06 10:29:56', 'admin', '2022-01-11 19:11:40', '', '2024-03-06 10:29:56', '管理员'); +INSERT INTO `sys_user` VALUES (2, 105, 'ry', '若依-Tenant-1', '00', 'ry@qq.com', '15666666666', '1', '', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', '2022-01-11 19:11:40', 'admin', '2022-01-11 19:11:40', 'admin', '2022-01-11 19:14:51', '测试员'); +INSERT INTO `sys_user` VALUES (100, NULL, '234234', '34234234', '00', '', '', '0', '', '$2a$10$yBLvNuj5ifOmi07klqlZWenVv3eF.aYo1wzatgAtsFEzot1RGK/kq', '0', '2', '', NULL, 'admin', '2022-01-12 11:03:06', '', NULL, NULL); +INSERT INTO `sys_user` VALUES (101, NULL, 'TenantUser01', 'TenantUser01', '00', '', '', '0', '', '$2a$10$nBpTvNi//kRZbY.vT0057OKe71HlUZsKQIBcmg2rTLVaJVFM0A5uK', '0', '0', '127.0.0.1', '2022-01-14 10:01:20', 'admin', '2022-01-14 00:24:02', 'admin', '2022-01-14 10:01:20', NULL); +INSERT INTO `sys_user` VALUES (103, 1, 'ret', 'ret', '00', '264985664@qq.com', '18750540617', '0', '', '$2a$10$xuWJlYFpb5O.kiFCMBULbeyTR1zfAE1UzeqjW1Bo.lF9PyxUAGWS6', '0', '0', '', NULL, 'admin', '2024-03-05 17:08:23', '', NULL, NULL); + +-- ---------------------------- +-- Table structure for sys_user_post +-- ---------------------------- +DROP TABLE IF EXISTS `sys_user_post`; +CREATE TABLE `sys_user_post` ( + `user_id` bigint(20) NOT NULL COMMENT '用户ID', + `post_id` bigint(20) NOT NULL COMMENT '岗位ID', + PRIMARY KEY (`user_id`, `post_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户与岗位关联表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_user_post +-- ---------------------------- +INSERT INTO `sys_user_post` VALUES (1, 1); +INSERT INTO `sys_user_post` VALUES (2, 2); + +-- ---------------------------- +-- Table structure for sys_user_role +-- ---------------------------- +DROP TABLE IF EXISTS `sys_user_role`; +CREATE TABLE `sys_user_role` ( + `user_id` bigint(20) NOT NULL COMMENT '用户ID', + `role_id` bigint(20) NOT NULL COMMENT '角色ID', + PRIMARY KEY (`user_id`, `role_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户和角色关联表' ROW_FORMAT = Compact; + +-- ---------------------------- +-- Records of sys_user_role +-- ---------------------------- +INSERT INTO `sys_user_role` VALUES (1, 1); +INSERT INTO `sys_user_role` VALUES (2, 2); +INSERT INTO `sys_user_role` VALUES (101, 2); + +SET FOREIGN_KEY_CHECKS = 1;