From cdcc0d200c1870d248c8880bec08dba3a1c4e783 Mon Sep 17 00:00:00 2001 From: Aug <17674666882@163.com> Date: Fri, 21 Feb 2025 22:49:01 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E9=A1=B9=E7=9B=AE=E6=A1=86=E6=9E=B6?= =?UTF-8?q?=E6=9E=84=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/api/fallback/SysBaseAPIFallback.java | 6 + .../main/java/org/jeecg/common/api/CommonAPI.java | 6 + .../java/org/jeecg/config/shiro/ShiroRealm.java | 30 +++ .../controller/EmployAmountLogController.java | 171 ++++++++++++++ .../employAmountLog/entity/EmployAmountLog.java | 68 ++++++ .../mapper/EmployAmountLogMapper.java | 17 ++ .../mapper/xml/EmployAmountLogMapper.xml | 5 + .../service/IEmployAmountLogService.java | 14 ++ .../service/impl/EmployAmountLogServiceImpl.java | 19 ++ .../employAmountLog/vue/EmployAmountLogList.vue | 190 ++++++++++++++++ .../vue/modules/EmployAmountLogForm.vue | 119 ++++++++++ .../modules/EmployAmountLogModal.Style#Drawer.vue | 84 +++++++ .../vue/modules/EmployAmountLogModal.vue | 60 +++++ .../employAmountLog/vue3/EmployAmountLog.api.ts | 61 +++++ .../employAmountLog/vue3/EmployAmountLog.data.ts | 59 +++++ .../employAmountLog/vue3/EmployAmountLogList.vue | 162 +++++++++++++ .../vue3/components/EmployAmountLogModal.vue | 58 +++++ .../EmployAuthenticationCompanyController.java | 171 ++++++++++++++ .../entity/EmployAuthenticationCompany.java | 89 ++++++++ .../mapper/EmployAuthenticationCompanyMapper.java | 17 ++ .../xml/EmployAuthenticationCompanyMapper.xml | 5 + .../IEmployAuthenticationCompanyService.java | 14 ++ .../EmployAuthenticationCompanyServiceImpl.java | 19 ++ .../vue/EmployAuthenticationCompanyList.vue | 221 ++++++++++++++++++ .../modules/EmployAuthenticationCompanyForm.vue | 144 ++++++++++++ ...ployAuthenticationCompanyModal.Style#Drawer.vue | 84 +++++++ .../modules/EmployAuthenticationCompanyModal.vue | 60 +++++ .../vue3/EmployAuthenticationCompany.api.ts | 61 +++++ .../vue3/EmployAuthenticationCompany.data.ts | 115 ++++++++++ .../vue3/EmployAuthenticationCompanyList.vue | 162 +++++++++++++ .../EmployAuthenticationCompanyModal.vue | 58 +++++ .../EmployAuthenticationPersonController.java | 171 ++++++++++++++ .../entity/EmployAuthenticationPerson.java | 89 ++++++++ .../mapper/EmployAuthenticationPersonMapper.java | 17 ++ .../xml/EmployAuthenticationPersonMapper.xml | 5 + .../IEmployAuthenticationPersonService.java | 14 ++ .../EmployAuthenticationPersonServiceImpl.java | 19 ++ .../vue/EmployAuthenticationPersonList.vue | 222 ++++++++++++++++++ .../vue/modules/EmployAuthenticationPersonForm.vue | 144 ++++++++++++ ...mployAuthenticationPersonModal.Style#Drawer.vue | 84 +++++++ .../modules/EmployAuthenticationPersonModal.vue | 60 +++++ .../vue3/EmployAuthenticationPerson.api.ts | 61 +++++ .../vue3/EmployAuthenticationPerson.data.ts | 118 ++++++++++ .../vue3/EmployAuthenticationPersonList.vue | 162 +++++++++++++ .../components/EmployAuthenticationPersonModal.vue | 58 +++++ .../controller/EmployBannerController.java | 171 ++++++++++++++ .../modules/employBanner/entity/EmployBanner.java | 63 ++++++ .../employBanner/mapper/EmployBannerMapper.java | 17 ++ .../employBanner/mapper/xml/EmployBannerMapper.xml | 5 + .../employBanner/service/IEmployBannerService.java | 14 ++ .../service/impl/EmployBannerServiceImpl.java | 19 ++ .../modules/employBanner/vue/EmployBannerList.vue | 185 +++++++++++++++ .../employBanner/vue/modules/EmployBannerForm.vue | 114 ++++++++++ .../vue/modules/EmployBannerModal.Style#Drawer.vue | 84 +++++++ .../employBanner/vue/modules/EmployBannerModal.vue | 60 +++++ .../modules/employBanner/vue3/EmployBanner.api.ts | 61 +++++ .../modules/employBanner/vue3/EmployBanner.data.ts | 49 ++++ .../modules/employBanner/vue3/EmployBannerList.vue | 162 +++++++++++++ .../vue3/components/EmployBannerModal.vue | 58 +++++ .../controller/EmployCategoryController.java | 171 ++++++++++++++ .../employCategory/entity/EmployCategory.java | 74 ++++++ .../mapper/EmployCategoryMapper.java | 17 ++ .../mapper/xml/EmployCategoryMapper.xml | 5 + .../service/IEmployCategoryService.java | 14 ++ .../service/impl/EmployCategoryServiceImpl.java | 19 ++ .../employCategory/vue/EmployCategoryList.vue | 191 ++++++++++++++++ .../vue/modules/EmployCategoryForm.vue | 119 ++++++++++ .../modules/EmployCategoryModal.Style#Drawer.vue | 84 +++++++ .../vue/modules/EmployCategoryModal.vue | 60 +++++ .../employCategory/vue3/EmployCategory.api.ts | 61 +++++ .../employCategory/vue3/EmployCategory.data.ts | 59 +++++ .../employCategory/vue3/EmployCategoryList.vue | 162 +++++++++++++ .../vue3/components/EmployCategoryModal.vue | 58 +++++ .../controller/EmployConfigController.java | 171 ++++++++++++++ .../modules/employConfig/entity/EmployConfig.java | 70 ++++++ .../employConfig/mapper/EmployConfigMapper.java | 17 ++ .../employConfig/mapper/xml/EmployConfigMapper.xml | 5 + .../employConfig/service/IEmployConfigService.java | 14 ++ .../service/impl/EmployConfigServiceImpl.java | 19 ++ .../modules/employConfig/vue/EmployConfigList.vue | 197 ++++++++++++++++ .../employConfig/vue/modules/EmployConfigForm.vue | 124 ++++++++++ .../vue/modules/EmployConfigModal.Style#Drawer.vue | 84 +++++++ .../employConfig/vue/modules/EmployConfigModal.vue | 60 +++++ .../modules/employConfig/vue3/EmployConfig.api.ts | 61 +++++ .../modules/employConfig/vue3/EmployConfig.data.ts | 67 ++++++ .../modules/employConfig/vue3/EmployConfigList.vue | 162 +++++++++++++ .../vue3/components/EmployConfigModal.vue | 58 +++++ .../controller/EmployFeedbackController.java | 171 ++++++++++++++ .../employFeedback/entity/EmployFeedback.java | 71 ++++++ .../mapper/EmployFeedbackMapper.java | 17 ++ .../mapper/xml/EmployFeedbackMapper.xml | 5 + .../service/IEmployFeedbackService.java | 14 ++ .../service/impl/EmployFeedbackServiceImpl.java | 19 ++ .../employFeedback/vue/EmployFeedbackList.vue | 198 ++++++++++++++++ .../vue/modules/EmployFeedbackForm.vue | 124 ++++++++++ .../modules/EmployFeedbackModal.Style#Drawer.vue | 84 +++++++ .../vue/modules/EmployFeedbackModal.vue | 60 +++++ .../employFeedback/vue3/EmployFeedback.api.ts | 61 +++++ .../employFeedback/vue3/EmployFeedback.data.ts | 70 ++++++ .../employFeedback/vue3/EmployFeedbackList.vue | 162 +++++++++++++ .../vue3/components/EmployFeedbackModal.vue | 58 +++++ .../employJob/controller/EmployJobController.java | 171 ++++++++++++++ .../jeecg/modules/employJob/entity/EmployJob.java | 106 +++++++++ .../modules/employJob/mapper/EmployJobMapper.java | 17 ++ .../employJob/mapper/xml/EmployJobMapper.xml | 5 + .../employJob/service/IEmployJobService.java | 14 ++ .../service/impl/EmployJobServiceImpl.java | 19 ++ .../jeecg/modules/employJob/vue/EmployJobList.vue | 246 ++++++++++++++++++++ .../employJob/vue/modules/EmployJobForm.vue | 164 ++++++++++++++ .../vue/modules/EmployJobModal.Style#Drawer.vue | 84 +++++++ .../employJob/vue/modules/EmployJobModal.vue | 60 +++++ .../jeecg/modules/employJob/vue3/EmployJob.api.ts | 61 +++++ .../jeecg/modules/employJob/vue3/EmployJob.data.ts | 159 +++++++++++++ .../jeecg/modules/employJob/vue3/EmployJobList.vue | 162 +++++++++++++ .../employJob/vue3/components/EmployJobModal.vue | 58 +++++ .../controller/EmployNewsController.java | 171 ++++++++++++++ .../modules/employNews/entity/EmployNews.java | 58 +++++ .../employNews/mapper/EmployNewsMapper.java | 17 ++ .../employNews/mapper/xml/EmployNewsMapper.xml | 5 + .../employNews/service/IEmployNewsService.java | 14 ++ .../service/impl/EmployNewsServiceImpl.java | 19 ++ .../modules/employNews/vue/EmployNewsList.vue | 178 +++++++++++++++ .../employNews/vue/modules/EmployNewsForm.vue | 109 +++++++++ .../vue/modules/EmployNewsModal.Style#Drawer.vue | 84 +++++++ .../employNews/vue/modules/EmployNewsModal.vue | 60 +++++ .../modules/employNews/vue3/EmployNews.api.ts | 61 +++++ .../modules/employNews/vue3/EmployNews.data.ts | 34 +++ .../modules/employNews/vue3/EmployNewsList.vue | 162 +++++++++++++ .../employNews/vue3/components/EmployNewsModal.vue | 58 +++++ .../controller/EmployOrderController.java | 171 ++++++++++++++ .../modules/employOrder/entity/EmployOrder.java | 70 ++++++ .../employOrder/mapper/EmployOrderMapper.java | 17 ++ .../employOrder/mapper/xml/EmployOrderMapper.xml | 5 + .../employOrder/service/IEmployOrderService.java | 14 ++ .../service/impl/EmployOrderServiceImpl.java | 19 ++ .../modules/employOrder/vue/EmployOrderList.vue | 190 ++++++++++++++++ .../employOrder/vue/modules/EmployOrderForm.vue | 119 ++++++++++ .../vue/modules/EmployOrderModal.Style#Drawer.vue | 84 +++++++ .../employOrder/vue/modules/EmployOrderModal.vue | 60 +++++ .../modules/employOrder/vue3/EmployOrder.api.ts | 61 +++++ .../modules/employOrder/vue3/EmployOrder.data.ts | 65 ++++++ .../modules/employOrder/vue3/EmployOrderList.vue | 162 +++++++++++++ .../vue3/components/EmployOrderModal.vue | 58 +++++ .../controller/EmployResumeController.java | 171 ++++++++++++++ .../modules/employResume/entity/EmployResume.java | 111 +++++++++ .../employResume/mapper/EmployResumeMapper.java | 17 ++ .../employResume/mapper/xml/EmployResumeMapper.xml | 5 + .../employResume/service/IEmployResumeService.java | 14 ++ .../service/impl/EmployResumeServiceImpl.java | 19 ++ .../modules/employResume/vue/EmployResumeList.vue | 252 +++++++++++++++++++++ .../employResume/vue/modules/EmployResumeForm.vue | 169 ++++++++++++++ .../vue/modules/EmployResumeModal.Style#Drawer.vue | 84 +++++++ .../employResume/vue/modules/EmployResumeModal.vue | 60 +++++ .../modules/employResume/vue3/EmployResume.api.ts | 61 +++++ .../modules/employResume/vue3/EmployResume.data.ts | 172 ++++++++++++++ .../modules/employResume/vue3/EmployResumeList.vue | 162 +++++++++++++ .../vue3/components/EmployResumeModal.vue | 58 +++++ jeecg-boot-module-system/pom.xml | 1 + .../api/employController/AmountController.java | 52 +++++ .../employController/AuthenticationController.java | 60 +++++ .../api/employController/BannerController.java | 31 +++ .../api/employController/CategoryController.java | 31 +++ .../api/employController/ConfigController.java | 37 +++ .../api/employController/FeedbackController.java | 33 +++ .../api/employController/JobController.java | 71 ++++++ .../api/employController/LoginApiController.java | 39 ++++ .../api/employController/NewsController.java | 37 +++ .../api/employController/ResumeController.java | 62 +++++ .../api/employController/UserController.java | 48 ++++ .../java/org/jeecg/modules/apiBean/PageBean.java | 19 ++ .../jeecg/modules/apiService/AmountService.java | 22 ++ .../modules/apiService/AuthenticationService.java | 24 ++ .../jeecg/modules/apiService/BannerService.java | 12 + .../jeecg/modules/apiService/CategoryService.java | 12 + .../jeecg/modules/apiService/ConfigService.java | 14 ++ .../jeecg/modules/apiService/FeedbackService.java | 13 ++ .../org/jeecg/modules/apiService/JobService.java | 31 +++ .../jeecg/modules/apiService/LoginApiService.java | 14 ++ .../org/jeecg/modules/apiService/NewsService.java | 15 ++ .../jeecg/modules/apiService/ResumeService.java | 26 +++ .../org/jeecg/modules/apiService/UserService.java | 18 ++ .../modules/apiService/impl/AmountServiceImpl.java | 39 ++++ .../apiService/impl/AuthenticationServiceImpl.java | 140 ++++++++++++ .../modules/apiService/impl/BannerServiceImpl.java | 71 ++++++ .../apiService/impl/CategoryServiceImpl.java | 111 +++++++++ .../modules/apiService/impl/ConfigServiceImpl.java | 52 +++++ .../apiService/impl/FeedbackServiceImpl.java | 54 +++++ .../modules/apiService/impl/JobServiceImpl.java | 248 ++++++++++++++++++++ .../apiService/impl/LoginApiServiceImpl.java | 171 ++++++++++++++ .../modules/apiService/impl/NewsServiceImpl.java | 91 ++++++++ .../modules/apiService/impl/ResumeServiceImpl.java | 205 +++++++++++++++++ .../modules/apiService/impl/UserServiceImpl.java | 122 ++++++++++ .../system/service/impl/SysBaseApiImpl.java | 17 ++ 193 files changed, 14801 insertions(+) create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/controller/EmployAmountLogController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/entity/EmployAmountLog.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/mapper/EmployAmountLogMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/mapper/xml/EmployAmountLogMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/service/IEmployAmountLogService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/service/impl/EmployAmountLogServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/EmployAmountLogList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLog.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLog.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLogList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/components/EmployAmountLogModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/controller/EmployAuthenticationCompanyController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/entity/EmployAuthenticationCompany.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/mapper/EmployAuthenticationCompanyMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/mapper/xml/EmployAuthenticationCompanyMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/service/IEmployAuthenticationCompanyService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/service/impl/EmployAuthenticationCompanyServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/EmployAuthenticationCompanyList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompany.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompany.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompanyList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/components/EmployAuthenticationCompanyModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/controller/EmployAuthenticationPersonController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/entity/EmployAuthenticationPerson.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/mapper/EmployAuthenticationPersonMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/mapper/xml/EmployAuthenticationPersonMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/service/IEmployAuthenticationPersonService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/service/impl/EmployAuthenticationPersonServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/EmployAuthenticationPersonList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPerson.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPerson.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPersonList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/components/EmployAuthenticationPersonModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/controller/EmployBannerController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/entity/EmployBanner.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/mapper/EmployBannerMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/mapper/xml/EmployBannerMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/service/IEmployBannerService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/service/impl/EmployBannerServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/EmployBannerList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBanner.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBanner.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBannerList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/components/EmployBannerModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/controller/EmployCategoryController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/entity/EmployCategory.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/mapper/EmployCategoryMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/mapper/xml/EmployCategoryMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/service/IEmployCategoryService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/service/impl/EmployCategoryServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/EmployCategoryList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategory.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategory.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategoryList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/components/EmployCategoryModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/controller/EmployConfigController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/entity/EmployConfig.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/mapper/EmployConfigMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/mapper/xml/EmployConfigMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/service/IEmployConfigService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/service/impl/EmployConfigServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/EmployConfigList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfig.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfig.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfigList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/components/EmployConfigModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/controller/EmployFeedbackController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/entity/EmployFeedback.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/mapper/EmployFeedbackMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/mapper/xml/EmployFeedbackMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/service/IEmployFeedbackService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/service/impl/EmployFeedbackServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/EmployFeedbackList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedback.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedback.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedbackList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/components/EmployFeedbackModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/controller/EmployJobController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/entity/EmployJob.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/mapper/EmployJobMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/mapper/xml/EmployJobMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/IEmployJobService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/impl/EmployJobServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/EmployJobList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJob.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJob.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJobList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/components/EmployJobModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/controller/EmployNewsController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/entity/EmployNews.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/mapper/EmployNewsMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/mapper/xml/EmployNewsMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/service/IEmployNewsService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/service/impl/EmployNewsServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/EmployNewsList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNews.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNews.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNewsList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/components/EmployNewsModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/controller/EmployOrderController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/entity/EmployOrder.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/mapper/EmployOrderMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/mapper/xml/EmployOrderMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/service/IEmployOrderService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/service/impl/EmployOrderServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/EmployOrderList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrder.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrder.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrderList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/components/EmployOrderModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/controller/EmployResumeController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/entity/EmployResume.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/mapper/EmployResumeMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/mapper/xml/EmployResumeMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/service/IEmployResumeService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/service/impl/EmployResumeServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/EmployResumeList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResume.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResume.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResumeList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/components/EmployResumeModal.vue create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AmountController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AuthenticationController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/BannerController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/CategoryController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/ConfigController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/FeedbackController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/JobController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/LoginApiController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/NewsController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/ResumeController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/UserController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiBean/PageBean.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AmountService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AuthenticationService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/BannerService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/CategoryService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/ConfigService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/FeedbackService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/JobService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/LoginApiService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/NewsService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/ResumeService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/UserService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AmountServiceImpl.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AuthenticationServiceImpl.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/BannerServiceImpl.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/CategoryServiceImpl.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ConfigServiceImpl.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/FeedbackServiceImpl.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/JobServiceImpl.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/LoginApiServiceImpl.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/NewsServiceImpl.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ResumeServiceImpl.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/UserServiceImpl.java diff --git a/jeecg-boot-base/jeecg-boot-base-api/jeecg-system-cloud-api/src/main/java/org/jeecg/common/system/api/fallback/SysBaseAPIFallback.java b/jeecg-boot-base/jeecg-boot-base-api/jeecg-system-cloud-api/src/main/java/org/jeecg/common/system/api/fallback/SysBaseAPIFallback.java index 9fc7b87..5723f4d 100644 --- a/jeecg-boot-base/jeecg-boot-base-api/jeecg-system-cloud-api/src/main/java/org/jeecg/common/system/api/fallback/SysBaseAPIFallback.java +++ b/jeecg-boot-base/jeecg-boot-base-api/jeecg-system-cloud-api/src/main/java/org/jeecg/common/system/api/fallback/SysBaseAPIFallback.java @@ -234,6 +234,12 @@ public class SysBaseAPIFallback implements ISysBaseAPI { log.error("服务节点不通,导致获取登录用户信息失败: " + cause.getMessage(), cause); return null; } + + @Override + public HanHaiMember getUserByNameHanHaiXcxOpenId(String username) { + log.error("服务节点不通,导致获取登录用户信息失败: " + cause.getMessage(), cause); + return null; + } // // @Override // public DbMumber getUserByName3(String username,Integer isOrgan) { diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/common/api/CommonAPI.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/common/api/CommonAPI.java index c740ea7..0d79d21 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/common/api/CommonAPI.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/common/api/CommonAPI.java @@ -64,6 +64,12 @@ public interface CommonAPI { public HanHaiMember getUserByNameHanHaiAccount(String username); + /** + * 小程序验证 - 小程序openid验证 + * @param username + * @return + * */ + public HanHaiMember getUserByNameHanHaiXcxOpenId(String username); /** * 6字典表的 翻译 diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroRealm.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroRealm.java index d265473..55c56ad 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroRealm.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroRealm.java @@ -190,6 +190,36 @@ public class ShiroRealm extends AuthorizingRealm { return user; } + /** + * 校验token的有效性 + * + * @param token + */ + public HanHaiMember checkUserTokenIsEffectHanHaiOpenId(String token) throws AuthenticationException { + Result result = new Result(); + // 解密获得username,用于和数据库进行对比 + String openid = JwtUtil.getUsername(token); + if (openid == null) { + throw new AuthenticationException("token非法无效!"); + } + + // 查询用户信息 + log.debug("———校验token是否有效————checkUserTokenIsEffect——————— "+ token); + HanHaiMember user = commonApi.getUserByNameHanHaiXcxOpenId(openid); + if (user == null || user.getAppletOpenid() == null) { + throw new AuthenticationException("用户不存在!"); + } +// // 判断用户状态 +// if (user.getDeleteFlag().equals("Y")) { +// throw new AuthenticationException("账号已被注销,请联系管理员!"); +// } + // 校验token是否超时失效 & 或者账号密码是否错误 + if (!jwtTokenRefresh(token, openid, openid)) { + throw new JeecgBoot401Exception(CommonConstant.TOKEN_IS_INVALID_MSG); + } + return user; + } + /** diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/controller/EmployAmountLogController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/controller/EmployAmountLogController.java new file mode 100644 index 0000000..a089a01 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/controller/EmployAmountLogController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employAmountLog.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.employAmountLog.entity.EmployAmountLog; +import org.jeecg.modules.employAmountLog.service.IEmployAmountLogService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 金额明细表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Api(tags="金额明细表") +@RestController +@RequestMapping("/employAmountLog/employAmountLog") +@Slf4j +public class EmployAmountLogController extends JeecgController { + @Autowired + private IEmployAmountLogService employAmountLogService; + + /** + * 分页列表查询 + * + * @param employAmountLog + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "金额明细表-分页列表查询") + @ApiOperation(value="金额明细表-分页列表查询", notes="金额明细表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployAmountLog employAmountLog, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employAmountLog, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employAmountLogService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employAmountLog + * @return + */ + @AutoLog(value = "金额明细表-添加") + @ApiOperation(value="金额明细表-添加", notes="金额明细表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployAmountLog employAmountLog) { + employAmountLogService.save(employAmountLog); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employAmountLog + * @return + */ + @AutoLog(value = "金额明细表-编辑") + @ApiOperation(value="金额明细表-编辑", notes="金额明细表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployAmountLog employAmountLog) { + employAmountLogService.updateById(employAmountLog); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "金额明细表-通过id删除") + @ApiOperation(value="金额明细表-通过id删除", notes="金额明细表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + employAmountLogService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "金额明细表-批量删除") + @ApiOperation(value="金额明细表-批量删除", notes="金额明细表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.employAmountLogService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "金额明细表-通过id查询") + @ApiOperation(value="金额明细表-通过id查询", notes="金额明细表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + EmployAmountLog employAmountLog = employAmountLogService.getById(id); + if(employAmountLog==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employAmountLog); + } + + /** + * 导出excel + * + * @param request + * @param employAmountLog + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployAmountLog employAmountLog) { + return super.exportXls(request, employAmountLog, EmployAmountLog.class, "金额明细表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EmployAmountLog.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/entity/EmployAmountLog.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/entity/EmployAmountLog.java new file mode 100644 index 0000000..b46c006 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/entity/EmployAmountLog.java @@ -0,0 +1,68 @@ +package org.jeecg.modules.employAmountLog.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 金额明细表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Data +@TableName("employ_amount_log") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_amount_log对象", description="金额明细表") +public class EmployAmountLog implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**标题*/ + @Excel(name = "标题", width = 15) + @ApiModelProperty(value = "标题") + private java.lang.String title; + /**金额大小*/ + @Excel(name = "金额大小", width = 15) + @ApiModelProperty(value = "金额大小") + private java.math.BigDecimal amount; + /**金额类型*/ + @Excel(name = "金额类型", width = 15, dicCode = "employ_amount_type") + @Dict(dicCode = "employ_amount_type") + @ApiModelProperty(value = "金额类型") + private java.lang.String type; + /**关联用户id*/ + @Excel(name = "关联用户id", width = 15, dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @ApiModelProperty(value = "关联用户id") + private java.lang.String userId; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/mapper/EmployAmountLogMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/mapper/EmployAmountLogMapper.java new file mode 100644 index 0000000..e237a02 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/mapper/EmployAmountLogMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employAmountLog.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employAmountLog.entity.EmployAmountLog; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 金额明细表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface EmployAmountLogMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/mapper/xml/EmployAmountLogMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/mapper/xml/EmployAmountLogMapper.xml new file mode 100644 index 0000000..5c3176e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/mapper/xml/EmployAmountLogMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/service/IEmployAmountLogService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/service/IEmployAmountLogService.java new file mode 100644 index 0000000..e3cb466 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/service/IEmployAmountLogService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employAmountLog.service; + +import org.jeecg.modules.employAmountLog.entity.EmployAmountLog; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 金额明细表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface IEmployAmountLogService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/service/impl/EmployAmountLogServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/service/impl/EmployAmountLogServiceImpl.java new file mode 100644 index 0000000..81c2b52 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/service/impl/EmployAmountLogServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employAmountLog.service.impl; + +import org.jeecg.modules.employAmountLog.entity.EmployAmountLog; +import org.jeecg.modules.employAmountLog.mapper.EmployAmountLogMapper; +import org.jeecg.modules.employAmountLog.service.IEmployAmountLogService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 金额明细表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Service +public class EmployAmountLogServiceImpl extends ServiceImpl implements IEmployAmountLogService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/EmployAmountLogList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/EmployAmountLogList.vue new file mode 100644 index 0000000..b460b38 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/EmployAmountLogList.vue @@ -0,0 +1,190 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogForm.vue new file mode 100644 index 0000000..3813cbc --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogForm.vue @@ -0,0 +1,119 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogModal.Style#Drawer.vue new file mode 100644 index 0000000..2d743a4 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogModal.vue new file mode 100644 index 0000000..72281b0 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue/modules/EmployAmountLogModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLog.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLog.api.ts new file mode 100644 index 0000000..ee8bb29 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLog.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employAmountLog/employAmountLog/list', + save='/employAmountLog/employAmountLog/add', + edit='/employAmountLog/employAmountLog/edit', + deleteOne = '/employAmountLog/employAmountLog/delete', + deleteBatch = '/employAmountLog/employAmountLog/deleteBatch', + importExcel = '/employAmountLog/employAmountLog/importExcel', + exportXls = '/employAmountLog/employAmountLog/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLog.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLog.data.ts new file mode 100644 index 0000000..320dd45 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLog.data.ts @@ -0,0 +1,59 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '标题', + align:"center", + dataIndex: 'title' + }, + { + title: '金额大小', + align:"center", + dataIndex: 'amount' + }, + { + title: '金额类型', + align:"center", + dataIndex: 'type_dictText' + }, + { + title: '关联用户id', + align:"center", + dataIndex: 'userId_dictText' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '标题', + field: 'title', + component: 'Input', + }, + { + label: '金额大小', + field: 'amount', + component: 'InputNumber', + }, + { + label: '金额类型', + field: 'type', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_amount_type" + }, + }, + { + label: '关联用户id', + field: 'userId', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"han_hai_member,nick_name,id" + }, + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLogList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLogList.vue new file mode 100644 index 0000000..d92fefd --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/EmployAmountLogList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/components/EmployAmountLogModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/components/EmployAmountLogModal.vue new file mode 100644 index 0000000..a176602 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAmountLog/vue3/components/EmployAmountLogModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/controller/EmployAuthenticationCompanyController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/controller/EmployAuthenticationCompanyController.java new file mode 100644 index 0000000..5b0f59e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/controller/EmployAuthenticationCompanyController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employAuthenticationCompany.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.employAuthenticationCompany.entity.EmployAuthenticationCompany; +import org.jeecg.modules.employAuthenticationCompany.service.IEmployAuthenticationCompanyService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 企业实名信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Api(tags="企业实名信息表") +@RestController +@RequestMapping("/employAuthenticationCompany/employAuthenticationCompany") +@Slf4j +public class EmployAuthenticationCompanyController extends JeecgController { + @Autowired + private IEmployAuthenticationCompanyService employAuthenticationCompanyService; + + /** + * 分页列表查询 + * + * @param employAuthenticationCompany + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "企业实名信息表-分页列表查询") + @ApiOperation(value="企业实名信息表-分页列表查询", notes="企业实名信息表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployAuthenticationCompany employAuthenticationCompany, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employAuthenticationCompany, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employAuthenticationCompanyService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employAuthenticationCompany + * @return + */ + @AutoLog(value = "企业实名信息表-添加") + @ApiOperation(value="企业实名信息表-添加", notes="企业实名信息表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployAuthenticationCompany employAuthenticationCompany) { + employAuthenticationCompanyService.save(employAuthenticationCompany); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employAuthenticationCompany + * @return + */ + @AutoLog(value = "企业实名信息表-编辑") + @ApiOperation(value="企业实名信息表-编辑", notes="企业实名信息表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployAuthenticationCompany employAuthenticationCompany) { + employAuthenticationCompanyService.updateById(employAuthenticationCompany); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "企业实名信息表-通过id删除") + @ApiOperation(value="企业实名信息表-通过id删除", notes="企业实名信息表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + employAuthenticationCompanyService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "企业实名信息表-批量删除") + @ApiOperation(value="企业实名信息表-批量删除", notes="企业实名信息表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.employAuthenticationCompanyService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "企业实名信息表-通过id查询") + @ApiOperation(value="企业实名信息表-通过id查询", notes="企业实名信息表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + EmployAuthenticationCompany employAuthenticationCompany = employAuthenticationCompanyService.getById(id); + if(employAuthenticationCompany==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employAuthenticationCompany); + } + + /** + * 导出excel + * + * @param request + * @param employAuthenticationCompany + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployAuthenticationCompany employAuthenticationCompany) { + return super.exportXls(request, employAuthenticationCompany, EmployAuthenticationCompany.class, "企业实名信息表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EmployAuthenticationCompany.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/entity/EmployAuthenticationCompany.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/entity/EmployAuthenticationCompany.java new file mode 100644 index 0000000..80f1c48 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/entity/EmployAuthenticationCompany.java @@ -0,0 +1,89 @@ +package org.jeecg.modules.employAuthenticationCompany.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 企业实名信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Data +@TableName("employ_authentication_company") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_authentication_company对象", description="企业实名信息表") +public class EmployAuthenticationCompany implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**姓名*/ + @Excel(name = "姓名", width = 15) + @ApiModelProperty(value = "姓名") + private java.lang.String name; + /**密码*/ + @Excel(name = "密码", width = 15) + @ApiModelProperty(value = "密码") + private java.lang.String password; + /**联系电话*/ + @Excel(name = "联系电话", width = 15) + @ApiModelProperty(value = "联系电话") + private java.lang.String phone; + /**公司名称*/ + @Excel(name = "公司名称", width = 15) + @ApiModelProperty(value = "公司名称") + private java.lang.String company; + /**公司地址*/ + @Excel(name = "公司地址", width = 15) + @ApiModelProperty(value = "公司地址") + private java.lang.String address; + /**行业*/ + @Excel(name = "行业", width = 15, dictTable = "employ_category", dicText = "name", dicCode = "id") + @Dict(dictTable = "employ_category", dicText = "name", dicCode = "id") + @ApiModelProperty(value = "行业") + private java.lang.String industry; + /**营业执照*/ + @Excel(name = "营业执照", width = 15) + @ApiModelProperty(value = "营业执照") + private java.lang.String license; + /**认证状态*/ + @Excel(name = "认证状态", width = 15, dicCode = "employ_authentic_status") + @Dict(dicCode = "employ_authentic_status") + @ApiModelProperty(value = "认证状态") + private java.lang.String status; + /**关联用户id*/ + @Excel(name = "关联用户id", width = 15, dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @ApiModelProperty(value = "关联用户id") + private java.lang.String userId; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/mapper/EmployAuthenticationCompanyMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/mapper/EmployAuthenticationCompanyMapper.java new file mode 100644 index 0000000..f7f9acf --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/mapper/EmployAuthenticationCompanyMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employAuthenticationCompany.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employAuthenticationCompany.entity.EmployAuthenticationCompany; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 企业实名信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface EmployAuthenticationCompanyMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/mapper/xml/EmployAuthenticationCompanyMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/mapper/xml/EmployAuthenticationCompanyMapper.xml new file mode 100644 index 0000000..f41eee6 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/mapper/xml/EmployAuthenticationCompanyMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/service/IEmployAuthenticationCompanyService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/service/IEmployAuthenticationCompanyService.java new file mode 100644 index 0000000..c7d41ea --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/service/IEmployAuthenticationCompanyService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employAuthenticationCompany.service; + +import org.jeecg.modules.employAuthenticationCompany.entity.EmployAuthenticationCompany; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 企业实名信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface IEmployAuthenticationCompanyService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/service/impl/EmployAuthenticationCompanyServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/service/impl/EmployAuthenticationCompanyServiceImpl.java new file mode 100644 index 0000000..8ae588d --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/service/impl/EmployAuthenticationCompanyServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employAuthenticationCompany.service.impl; + +import org.jeecg.modules.employAuthenticationCompany.entity.EmployAuthenticationCompany; +import org.jeecg.modules.employAuthenticationCompany.mapper.EmployAuthenticationCompanyMapper; +import org.jeecg.modules.employAuthenticationCompany.service.IEmployAuthenticationCompanyService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 企业实名信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Service +public class EmployAuthenticationCompanyServiceImpl extends ServiceImpl implements IEmployAuthenticationCompanyService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/EmployAuthenticationCompanyList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/EmployAuthenticationCompanyList.vue new file mode 100644 index 0000000..9a5ed90 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/EmployAuthenticationCompanyList.vue @@ -0,0 +1,221 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyForm.vue new file mode 100644 index 0000000..4faa041 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyForm.vue @@ -0,0 +1,144 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyModal.Style#Drawer.vue new file mode 100644 index 0000000..9c6ebf4 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyModal.vue new file mode 100644 index 0000000..3446d90 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue/modules/EmployAuthenticationCompanyModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompany.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompany.api.ts new file mode 100644 index 0000000..048e7ac --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompany.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employAuthenticationCompany/employAuthenticationCompany/list', + save='/employAuthenticationCompany/employAuthenticationCompany/add', + edit='/employAuthenticationCompany/employAuthenticationCompany/edit', + deleteOne = '/employAuthenticationCompany/employAuthenticationCompany/delete', + deleteBatch = '/employAuthenticationCompany/employAuthenticationCompany/deleteBatch', + importExcel = '/employAuthenticationCompany/employAuthenticationCompany/importExcel', + exportXls = '/employAuthenticationCompany/employAuthenticationCompany/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompany.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompany.data.ts new file mode 100644 index 0000000..c6ba5c7 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompany.data.ts @@ -0,0 +1,115 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '姓名', + align:"center", + dataIndex: 'name' + }, + { + title: '密码', + align:"center", + dataIndex: 'password' + }, + { + title: '联系电话', + align:"center", + dataIndex: 'phone' + }, + { + title: '公司名称', + align:"center", + dataIndex: 'company' + }, + { + title: '公司地址', + align:"center", + dataIndex: 'address' + }, + { + title: '行业', + align:"center", + dataIndex: 'industry_dictText' + }, + { + title: '营业执照', + align:"center", + dataIndex: 'license', + customRender:render.renderAvatar, + }, + { + title: '认证状态', + align:"center", + dataIndex: 'status_dictText' + }, + { + title: '关联用户id', + align:"center", + dataIndex: 'userId_dictText' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '姓名', + field: 'name', + component: 'Input', + }, + { + label: '密码', + field: 'password', + component: 'Input', + }, + { + label: '联系电话', + field: 'phone', + component: 'Input', + }, + { + label: '公司名称', + field: 'company', + component: 'Input', + }, + { + label: '公司地址', + field: 'address', + component: 'Input', + }, + { + label: '行业', + field: 'industry', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_category,name,id" + }, + }, + { + label: '营业执照', + field: 'license', + component: 'JImageUpload', + componentProps:{ + }, + }, + { + label: '认证状态', + field: 'status', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_authentic_status" + }, + }, + { + label: '关联用户id', + field: 'userId', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"han_hai_member,nick_name,id" + }, + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompanyList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompanyList.vue new file mode 100644 index 0000000..2533cdb --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/EmployAuthenticationCompanyList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/components/EmployAuthenticationCompanyModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/components/EmployAuthenticationCompanyModal.vue new file mode 100644 index 0000000..b90342c --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationCompany/vue3/components/EmployAuthenticationCompanyModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/controller/EmployAuthenticationPersonController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/controller/EmployAuthenticationPersonController.java new file mode 100644 index 0000000..2c59ca0 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/controller/EmployAuthenticationPersonController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employAuthenticationPerson.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import org.jeecg.modules.employAuthenticationPerson.service.IEmployAuthenticationPersonService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 个人实名信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Api(tags="个人实名信息表") +@RestController +@RequestMapping("/employAuthenticationPerson/employAuthenticationPerson") +@Slf4j +public class EmployAuthenticationPersonController extends JeecgController { + @Autowired + private IEmployAuthenticationPersonService employAuthenticationPersonService; + + /** + * 分页列表查询 + * + * @param employAuthenticationPerson + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "个人实名信息表-分页列表查询") + @ApiOperation(value="个人实名信息表-分页列表查询", notes="个人实名信息表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployAuthenticationPerson employAuthenticationPerson, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employAuthenticationPerson, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employAuthenticationPersonService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employAuthenticationPerson + * @return + */ + @AutoLog(value = "个人实名信息表-添加") + @ApiOperation(value="个人实名信息表-添加", notes="个人实名信息表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployAuthenticationPerson employAuthenticationPerson) { + employAuthenticationPersonService.save(employAuthenticationPerson); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employAuthenticationPerson + * @return + */ + @AutoLog(value = "个人实名信息表-编辑") + @ApiOperation(value="个人实名信息表-编辑", notes="个人实名信息表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployAuthenticationPerson employAuthenticationPerson) { + employAuthenticationPersonService.updateById(employAuthenticationPerson); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "个人实名信息表-通过id删除") + @ApiOperation(value="个人实名信息表-通过id删除", notes="个人实名信息表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + employAuthenticationPersonService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "个人实名信息表-批量删除") + @ApiOperation(value="个人实名信息表-批量删除", notes="个人实名信息表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.employAuthenticationPersonService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "个人实名信息表-通过id查询") + @ApiOperation(value="个人实名信息表-通过id查询", notes="个人实名信息表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + EmployAuthenticationPerson employAuthenticationPerson = employAuthenticationPersonService.getById(id); + if(employAuthenticationPerson==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employAuthenticationPerson); + } + + /** + * 导出excel + * + * @param request + * @param employAuthenticationPerson + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployAuthenticationPerson employAuthenticationPerson) { + return super.exportXls(request, employAuthenticationPerson, EmployAuthenticationPerson.class, "个人实名信息表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EmployAuthenticationPerson.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/entity/EmployAuthenticationPerson.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/entity/EmployAuthenticationPerson.java new file mode 100644 index 0000000..fc9dc66 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/entity/EmployAuthenticationPerson.java @@ -0,0 +1,89 @@ +package org.jeecg.modules.employAuthenticationPerson.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 个人实名信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Data +@TableName("employ_authentication_person") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_authentication_person对象", description="个人实名信息表") +public class EmployAuthenticationPerson implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**姓名*/ + @Excel(name = "姓名", width = 15) + @ApiModelProperty(value = "姓名") + private java.lang.String name; + /**密码*/ + @Excel(name = "密码", width = 15) + @ApiModelProperty(value = "密码") + private java.lang.String password; + /**联系电话*/ + @Excel(name = "联系电话", width = 15) + @ApiModelProperty(value = "联系电话") + private java.lang.String phone; + /**居住地址*/ + @Excel(name = "居住地址", width = 15) + @ApiModelProperty(value = "居住地址") + private java.lang.String address; + /**行业*/ + @Excel(name = "行业", width = 15, dictTable = "employ_category", dicText = "name", dicCode = "id") + @Dict(dictTable = "employ_category", dicText = "name", dicCode = "id") + @ApiModelProperty(value = "行业") + private java.lang.String industry; + /**身份证正面*/ + @Excel(name = "身份证正面", width = 15) + @ApiModelProperty(value = "身份证正面") + private java.lang.String cerImageFront; + /**身份证国徽面*/ + @Excel(name = "身份证国徽面", width = 15) + @ApiModelProperty(value = "身份证国徽面") + private java.lang.String cerImageBack; + /**认证状态*/ + @Excel(name = "认证状态", width = 15, dicCode = "employ_authentic_status") + @Dict(dicCode = "employ_authentic_status") + @ApiModelProperty(value = "认证状态") + private java.lang.String status; + /**关联用户id*/ + @Excel(name = "关联用户id", width = 15, dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @ApiModelProperty(value = "关联用户id") + private java.lang.String userId; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/mapper/EmployAuthenticationPersonMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/mapper/EmployAuthenticationPersonMapper.java new file mode 100644 index 0000000..82ac930 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/mapper/EmployAuthenticationPersonMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employAuthenticationPerson.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 个人实名信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface EmployAuthenticationPersonMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/mapper/xml/EmployAuthenticationPersonMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/mapper/xml/EmployAuthenticationPersonMapper.xml new file mode 100644 index 0000000..543dce9 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/mapper/xml/EmployAuthenticationPersonMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/service/IEmployAuthenticationPersonService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/service/IEmployAuthenticationPersonService.java new file mode 100644 index 0000000..39e82a4 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/service/IEmployAuthenticationPersonService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employAuthenticationPerson.service; + +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 个人实名信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface IEmployAuthenticationPersonService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/service/impl/EmployAuthenticationPersonServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/service/impl/EmployAuthenticationPersonServiceImpl.java new file mode 100644 index 0000000..a962c06 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/service/impl/EmployAuthenticationPersonServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employAuthenticationPerson.service.impl; + +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import org.jeecg.modules.employAuthenticationPerson.mapper.EmployAuthenticationPersonMapper; +import org.jeecg.modules.employAuthenticationPerson.service.IEmployAuthenticationPersonService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 个人实名信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Service +public class EmployAuthenticationPersonServiceImpl extends ServiceImpl implements IEmployAuthenticationPersonService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/EmployAuthenticationPersonList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/EmployAuthenticationPersonList.vue new file mode 100644 index 0000000..563ffd2 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/EmployAuthenticationPersonList.vue @@ -0,0 +1,222 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonForm.vue new file mode 100644 index 0000000..f65b668 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonForm.vue @@ -0,0 +1,144 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonModal.Style#Drawer.vue new file mode 100644 index 0000000..4b426c4 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonModal.vue new file mode 100644 index 0000000..86520e9 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue/modules/EmployAuthenticationPersonModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPerson.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPerson.api.ts new file mode 100644 index 0000000..a91119e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPerson.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employAuthenticationPerson/employAuthenticationPerson/list', + save='/employAuthenticationPerson/employAuthenticationPerson/add', + edit='/employAuthenticationPerson/employAuthenticationPerson/edit', + deleteOne = '/employAuthenticationPerson/employAuthenticationPerson/delete', + deleteBatch = '/employAuthenticationPerson/employAuthenticationPerson/deleteBatch', + importExcel = '/employAuthenticationPerson/employAuthenticationPerson/importExcel', + exportXls = '/employAuthenticationPerson/employAuthenticationPerson/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPerson.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPerson.data.ts new file mode 100644 index 0000000..4f0fae2 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPerson.data.ts @@ -0,0 +1,118 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '姓名', + align:"center", + dataIndex: 'name' + }, + { + title: '密码', + align:"center", + dataIndex: 'password' + }, + { + title: '联系电话', + align:"center", + dataIndex: 'phone' + }, + { + title: '居住地址', + align:"center", + dataIndex: 'address' + }, + { + title: '行业', + align:"center", + dataIndex: 'industry_dictText' + }, + { + title: '身份证正面', + align:"center", + dataIndex: 'cerImageFront', + customRender:render.renderAvatar, + }, + { + title: '身份证国徽面', + align:"center", + dataIndex: 'cerImageBack', + customRender:render.renderAvatar, + }, + { + title: '认证状态', + align:"center", + dataIndex: 'status_dictText' + }, + { + title: '关联用户id', + align:"center", + dataIndex: 'userId_dictText' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '姓名', + field: 'name', + component: 'Input', + }, + { + label: '密码', + field: 'password', + component: 'Input', + }, + { + label: '联系电话', + field: 'phone', + component: 'Input', + }, + { + label: '居住地址', + field: 'address', + component: 'Input', + }, + { + label: '行业', + field: 'industry', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_category,name,id" + }, + }, + { + label: '身份证正面', + field: 'cerImageFront', + component: 'JImageUpload', + componentProps:{ + }, + }, + { + label: '身份证国徽面', + field: 'cerImageBack', + component: 'JImageUpload', + componentProps:{ + }, + }, + { + label: '认证状态', + field: 'status', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_authentic_status" + }, + }, + { + label: '关联用户id', + field: 'userId', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"han_hai_member,nick_name,id" + }, + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPersonList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPersonList.vue new file mode 100644 index 0000000..c4a0fd5 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/EmployAuthenticationPersonList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/components/EmployAuthenticationPersonModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/components/EmployAuthenticationPersonModal.vue new file mode 100644 index 0000000..0ff170d --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employAuthenticationPerson/vue3/components/EmployAuthenticationPersonModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/controller/EmployBannerController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/controller/EmployBannerController.java new file mode 100644 index 0000000..7b98ab2 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/controller/EmployBannerController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employBanner.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.employBanner.entity.EmployBanner; +import org.jeecg.modules.employBanner.service.IEmployBannerService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 轮播图表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Api(tags="轮播图表") +@RestController +@RequestMapping("/employBanner/employBanner") +@Slf4j +public class EmployBannerController extends JeecgController { + @Autowired + private IEmployBannerService employBannerService; + + /** + * 分页列表查询 + * + * @param employBanner + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "轮播图表-分页列表查询") + @ApiOperation(value="轮播图表-分页列表查询", notes="轮播图表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployBanner employBanner, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employBanner, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employBannerService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employBanner + * @return + */ + @AutoLog(value = "轮播图表-添加") + @ApiOperation(value="轮播图表-添加", notes="轮播图表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployBanner employBanner) { + employBannerService.save(employBanner); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employBanner + * @return + */ + @AutoLog(value = "轮播图表-编辑") + @ApiOperation(value="轮播图表-编辑", notes="轮播图表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployBanner employBanner) { + employBannerService.updateById(employBanner); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "轮播图表-通过id删除") + @ApiOperation(value="轮播图表-通过id删除", notes="轮播图表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + employBannerService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "轮播图表-批量删除") + @ApiOperation(value="轮播图表-批量删除", notes="轮播图表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.employBannerService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "轮播图表-通过id查询") + @ApiOperation(value="轮播图表-通过id查询", notes="轮播图表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + EmployBanner employBanner = employBannerService.getById(id); + if(employBanner==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employBanner); + } + + /** + * 导出excel + * + * @param request + * @param employBanner + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployBanner employBanner) { + return super.exportXls(request, employBanner, EmployBanner.class, "轮播图表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EmployBanner.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/entity/EmployBanner.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/entity/EmployBanner.java new file mode 100644 index 0000000..0b8aba2 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/entity/EmployBanner.java @@ -0,0 +1,63 @@ +package org.jeecg.modules.employBanner.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 轮播图表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Data +@TableName("employ_banner") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_banner对象", description="轮播图表") +public class EmployBanner implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**图片名称*/ + @Excel(name = "图片名称", width = 15) + @ApiModelProperty(value = "图片名称") + private java.lang.String title; + /**图片内容*/ + @Excel(name = "图片内容", width = 15) + @ApiModelProperty(value = "图片内容") + private java.lang.String image; + /**图片类型*/ + @Excel(name = "图片类型", width = 15, dicCode = "employ_banner_type") + @Dict(dicCode = "employ_banner_type") + @ApiModelProperty(value = "图片类型") + private java.lang.String type; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/mapper/EmployBannerMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/mapper/EmployBannerMapper.java new file mode 100644 index 0000000..b9ef800 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/mapper/EmployBannerMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employBanner.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employBanner.entity.EmployBanner; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 轮播图表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface EmployBannerMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/mapper/xml/EmployBannerMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/mapper/xml/EmployBannerMapper.xml new file mode 100644 index 0000000..fbf9d63 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/mapper/xml/EmployBannerMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/service/IEmployBannerService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/service/IEmployBannerService.java new file mode 100644 index 0000000..df445a7 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/service/IEmployBannerService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employBanner.service; + +import org.jeecg.modules.employBanner.entity.EmployBanner; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 轮播图表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface IEmployBannerService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/service/impl/EmployBannerServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/service/impl/EmployBannerServiceImpl.java new file mode 100644 index 0000000..fb2d307 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/service/impl/EmployBannerServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employBanner.service.impl; + +import org.jeecg.modules.employBanner.entity.EmployBanner; +import org.jeecg.modules.employBanner.mapper.EmployBannerMapper; +import org.jeecg.modules.employBanner.service.IEmployBannerService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 轮播图表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Service +public class EmployBannerServiceImpl extends ServiceImpl implements IEmployBannerService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/EmployBannerList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/EmployBannerList.vue new file mode 100644 index 0000000..8b47a21 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/EmployBannerList.vue @@ -0,0 +1,185 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerForm.vue new file mode 100644 index 0000000..c1e7a8e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerForm.vue @@ -0,0 +1,114 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerModal.Style#Drawer.vue new file mode 100644 index 0000000..53d52b0 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerModal.vue new file mode 100644 index 0000000..2bcad2f --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue/modules/EmployBannerModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBanner.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBanner.api.ts new file mode 100644 index 0000000..9548878 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBanner.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employBanner/employBanner/list', + save='/employBanner/employBanner/add', + edit='/employBanner/employBanner/edit', + deleteOne = '/employBanner/employBanner/delete', + deleteBatch = '/employBanner/employBanner/deleteBatch', + importExcel = '/employBanner/employBanner/importExcel', + exportXls = '/employBanner/employBanner/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBanner.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBanner.data.ts new file mode 100644 index 0000000..bf89a0f --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBanner.data.ts @@ -0,0 +1,49 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '图片名称', + align:"center", + dataIndex: 'title' + }, + { + title: '图片内容', + align:"center", + dataIndex: 'image', + customRender:render.renderAvatar, + }, + { + title: '图片类型', + align:"center", + dataIndex: 'type_dictText' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '图片名称', + field: 'title', + component: 'Input', + }, + { + label: '图片内容', + field: 'image', + component: 'JImageUpload', + componentProps:{ + }, + }, + { + label: '图片类型', + field: 'type', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_banner_type" + }, + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBannerList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBannerList.vue new file mode 100644 index 0000000..05678c2 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/EmployBannerList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/components/EmployBannerModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/components/EmployBannerModal.vue new file mode 100644 index 0000000..fe39c81 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employBanner/vue3/components/EmployBannerModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/controller/EmployCategoryController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/controller/EmployCategoryController.java new file mode 100644 index 0000000..dfeb98d --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/controller/EmployCategoryController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employCategory.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.employCategory.entity.EmployCategory; +import org.jeecg.modules.employCategory.service.IEmployCategoryService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 分类表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Api(tags="分类表") +@RestController +@RequestMapping("/employCategory/employCategory") +@Slf4j +public class EmployCategoryController extends JeecgController { + @Autowired + private IEmployCategoryService employCategoryService; + + /** + * 分页列表查询 + * + * @param employCategory + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "分类表-分页列表查询") + @ApiOperation(value="分类表-分页列表查询", notes="分类表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployCategory employCategory, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employCategory, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employCategoryService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employCategory + * @return + */ + @AutoLog(value = "分类表-添加") + @ApiOperation(value="分类表-添加", notes="分类表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployCategory employCategory) { + employCategoryService.save(employCategory); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employCategory + * @return + */ + @AutoLog(value = "分类表-编辑") + @ApiOperation(value="分类表-编辑", notes="分类表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployCategory employCategory) { + employCategoryService.updateById(employCategory); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "分类表-通过id删除") + @ApiOperation(value="分类表-通过id删除", notes="分类表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + employCategoryService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "分类表-批量删除") + @ApiOperation(value="分类表-批量删除", notes="分类表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.employCategoryService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "分类表-通过id查询") + @ApiOperation(value="分类表-通过id查询", notes="分类表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + EmployCategory employCategory = employCategoryService.getById(id); + if(employCategory==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employCategory); + } + + /** + * 导出excel + * + * @param request + * @param employCategory + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployCategory employCategory) { + return super.exportXls(request, employCategory, EmployCategory.class, "分类表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EmployCategory.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/entity/EmployCategory.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/entity/EmployCategory.java new file mode 100644 index 0000000..b003047 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/entity/EmployCategory.java @@ -0,0 +1,74 @@ +package org.jeecg.modules.employCategory.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import java.util.List; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 分类表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Data +@TableName("employ_category") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_category对象", description="分类表") +public class EmployCategory implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**父级分类id*/ + @Excel(name = "父级分类id", width = 15, dictTable = "employ_category", dicText = "name", dicCode = "id") + @Dict(dictTable = "employ_category", dicText = "name", dicCode = "id") + @ApiModelProperty(value = "父级分类id") + private java.lang.String pid; + /**分类名称*/ + @Excel(name = "分类名称", width = 15) + @ApiModelProperty(value = "分类名称") + private java.lang.String name; + /**分类图标*/ + @Excel(name = "分类图标", width = 15) + @ApiModelProperty(value = "分类图标") + private java.lang.String image; + /**排序编号*/ + @Excel(name = "排序编号", width = 15) + @ApiModelProperty(value = "排序编号") + private java.lang.Integer orderNo; + + //二级分类列表 + @TableField(exist = false) + private List employCategoryList; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/mapper/EmployCategoryMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/mapper/EmployCategoryMapper.java new file mode 100644 index 0000000..66d0dd0 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/mapper/EmployCategoryMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employCategory.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employCategory.entity.EmployCategory; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 分类表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface EmployCategoryMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/mapper/xml/EmployCategoryMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/mapper/xml/EmployCategoryMapper.xml new file mode 100644 index 0000000..2792c47 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/mapper/xml/EmployCategoryMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/service/IEmployCategoryService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/service/IEmployCategoryService.java new file mode 100644 index 0000000..b814382 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/service/IEmployCategoryService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employCategory.service; + +import org.jeecg.modules.employCategory.entity.EmployCategory; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 分类表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface IEmployCategoryService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/service/impl/EmployCategoryServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/service/impl/EmployCategoryServiceImpl.java new file mode 100644 index 0000000..2b7123c --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/service/impl/EmployCategoryServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employCategory.service.impl; + +import org.jeecg.modules.employCategory.entity.EmployCategory; +import org.jeecg.modules.employCategory.mapper.EmployCategoryMapper; +import org.jeecg.modules.employCategory.service.IEmployCategoryService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 分类表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Service +public class EmployCategoryServiceImpl extends ServiceImpl implements IEmployCategoryService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/EmployCategoryList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/EmployCategoryList.vue new file mode 100644 index 0000000..0afb1d1 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/EmployCategoryList.vue @@ -0,0 +1,191 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryForm.vue new file mode 100644 index 0000000..df743c4 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryForm.vue @@ -0,0 +1,119 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryModal.Style#Drawer.vue new file mode 100644 index 0000000..1bff06f --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryModal.vue new file mode 100644 index 0000000..7643a7b --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue/modules/EmployCategoryModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategory.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategory.api.ts new file mode 100644 index 0000000..df2c948 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategory.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employCategory/employCategory/list', + save='/employCategory/employCategory/add', + edit='/employCategory/employCategory/edit', + deleteOne = '/employCategory/employCategory/delete', + deleteBatch = '/employCategory/employCategory/deleteBatch', + importExcel = '/employCategory/employCategory/importExcel', + exportXls = '/employCategory/employCategory/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategory.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategory.data.ts new file mode 100644 index 0000000..a78c69c --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategory.data.ts @@ -0,0 +1,59 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '父级分类id', + align:"center", + dataIndex: 'pid_dictText' + }, + { + title: '分类名称', + align:"center", + dataIndex: 'name' + }, + { + title: '分类图标', + align:"center", + dataIndex: 'image', + customRender:render.renderAvatar, + }, + { + title: '排序编号', + align:"center", + dataIndex: 'orderNo' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '父级分类id', + field: 'pid', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_category,name,id" + }, + }, + { + label: '分类名称', + field: 'name', + component: 'Input', + }, + { + label: '分类图标', + field: 'image', + component: 'JImageUpload', + componentProps:{ + }, + }, + { + label: '排序编号', + field: 'orderNo', + component: 'InputNumber', + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategoryList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategoryList.vue new file mode 100644 index 0000000..8cc9603 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/EmployCategoryList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/components/EmployCategoryModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/components/EmployCategoryModal.vue new file mode 100644 index 0000000..7d802c4 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employCategory/vue3/components/EmployCategoryModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/controller/EmployConfigController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/controller/EmployConfigController.java new file mode 100644 index 0000000..48fb23e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/controller/EmployConfigController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employConfig.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.employConfig.entity.EmployConfig; +import org.jeecg.modules.employConfig.service.IEmployConfigService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 系统配置表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Api(tags="系统配置表") +@RestController +@RequestMapping("/employConfig/employConfig") +@Slf4j +public class EmployConfigController extends JeecgController { + @Autowired + private IEmployConfigService employConfigService; + + /** + * 分页列表查询 + * + * @param employConfig + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "系统配置表-分页列表查询") + @ApiOperation(value="系统配置表-分页列表查询", notes="系统配置表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployConfig employConfig, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employConfig, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employConfigService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employConfig + * @return + */ + @AutoLog(value = "系统配置表-添加") + @ApiOperation(value="系统配置表-添加", notes="系统配置表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployConfig employConfig) { + employConfigService.save(employConfig); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employConfig + * @return + */ + @AutoLog(value = "系统配置表-编辑") + @ApiOperation(value="系统配置表-编辑", notes="系统配置表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployConfig employConfig) { + employConfigService.updateById(employConfig); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "系统配置表-通过id删除") + @ApiOperation(value="系统配置表-通过id删除", notes="系统配置表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + employConfigService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "系统配置表-批量删除") + @ApiOperation(value="系统配置表-批量删除", notes="系统配置表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.employConfigService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "系统配置表-通过id查询") + @ApiOperation(value="系统配置表-通过id查询", notes="系统配置表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + EmployConfig employConfig = employConfigService.getById(id); + if(employConfig==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employConfig); + } + + /** + * 导出excel + * + * @param request + * @param employConfig + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployConfig employConfig) { + return super.exportXls(request, employConfig, EmployConfig.class, "系统配置表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EmployConfig.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/entity/EmployConfig.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/entity/EmployConfig.java new file mode 100644 index 0000000..65b6f6f --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/entity/EmployConfig.java @@ -0,0 +1,70 @@ +package org.jeecg.modules.employConfig.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 系统配置表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Data +@TableName("employ_config") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_config对象", description="系统配置表") +public class EmployConfig implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**参数编码*/ + @Excel(name = "参数编码", width = 15) + @ApiModelProperty(value = "参数编码") + private java.lang.String paramCode; + /**参数值_文本*/ + @Excel(name = "参数值_文本", width = 15) + @ApiModelProperty(value = "参数值_文本") + private java.lang.String paramValueText; + /**参数值_图片*/ + @Excel(name = "参数值_图片", width = 15) + @ApiModelProperty(value = "参数值_图片") + private java.lang.String paramValueImage; + /**参数值_富文本*/ + @Excel(name = "参数值_富文本", width = 15) + @ApiModelProperty(value = "参数值_富文本") + private java.lang.String paramValueTextarea; + /**参数描述*/ + @Excel(name = "参数描述", width = 15) + @ApiModelProperty(value = "参数描述") + private java.lang.String paramDesc; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/mapper/EmployConfigMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/mapper/EmployConfigMapper.java new file mode 100644 index 0000000..708d3cb --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/mapper/EmployConfigMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employConfig.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employConfig.entity.EmployConfig; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 系统配置表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface EmployConfigMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/mapper/xml/EmployConfigMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/mapper/xml/EmployConfigMapper.xml new file mode 100644 index 0000000..a562ef3 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/mapper/xml/EmployConfigMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/service/IEmployConfigService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/service/IEmployConfigService.java new file mode 100644 index 0000000..22965d2 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/service/IEmployConfigService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employConfig.service; + +import org.jeecg.modules.employConfig.entity.EmployConfig; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 系统配置表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface IEmployConfigService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/service/impl/EmployConfigServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/service/impl/EmployConfigServiceImpl.java new file mode 100644 index 0000000..5550f00 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/service/impl/EmployConfigServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employConfig.service.impl; + +import org.jeecg.modules.employConfig.entity.EmployConfig; +import org.jeecg.modules.employConfig.mapper.EmployConfigMapper; +import org.jeecg.modules.employConfig.service.IEmployConfigService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 系统配置表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Service +public class EmployConfigServiceImpl extends ServiceImpl implements IEmployConfigService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/EmployConfigList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/EmployConfigList.vue new file mode 100644 index 0000000..0ae712a --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/EmployConfigList.vue @@ -0,0 +1,197 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigForm.vue new file mode 100644 index 0000000..9899e42 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigForm.vue @@ -0,0 +1,124 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigModal.Style#Drawer.vue new file mode 100644 index 0000000..279516d --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigModal.vue new file mode 100644 index 0000000..ef36d61 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue/modules/EmployConfigModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfig.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfig.api.ts new file mode 100644 index 0000000..0ed7b03 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfig.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employConfig/employConfig/list', + save='/employConfig/employConfig/add', + edit='/employConfig/employConfig/edit', + deleteOne = '/employConfig/employConfig/delete', + deleteBatch = '/employConfig/employConfig/deleteBatch', + importExcel = '/employConfig/employConfig/importExcel', + exportXls = '/employConfig/employConfig/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfig.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfig.data.ts new file mode 100644 index 0000000..f1ceb19 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfig.data.ts @@ -0,0 +1,67 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '参数编码', + align:"center", + dataIndex: 'paramCode' + }, + { + title: '参数值_文本', + align:"center", + dataIndex: 'paramValueText' + }, + { + title: '参数值_图片', + align:"center", + dataIndex: 'paramValueImage', + customRender:render.renderAvatar, + }, + { + title: '参数值_富文本', + align:"center", + dataIndex: 'paramValueTextarea', + slots: { customRender: 'htmlSlot' }, + }, + { + title: '参数描述', + align:"center", + dataIndex: 'paramDesc' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '参数编码', + field: 'paramCode', + component: 'Input', + }, + { + label: '参数值_文本', + field: 'paramValueText', + component: 'Input', + }, + { + label: '参数值_图片', + field: 'paramValueImage', + component: 'JImageUpload', + componentProps:{ + }, + }, + { + label: '参数值_富文本', + field: 'paramValueTextarea', + component: 'JCodeEditor', //TODO String后缀暂未添加 + }, + { + label: '参数描述', + field: 'paramDesc', + component: 'Input', + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfigList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfigList.vue new file mode 100644 index 0000000..5599afd --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/EmployConfigList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/components/EmployConfigModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/components/EmployConfigModal.vue new file mode 100644 index 0000000..6a00bed --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employConfig/vue3/components/EmployConfigModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/controller/EmployFeedbackController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/controller/EmployFeedbackController.java new file mode 100644 index 0000000..d7e759b --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/controller/EmployFeedbackController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employFeedback.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.employFeedback.entity.EmployFeedback; +import org.jeecg.modules.employFeedback.service.IEmployFeedbackService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 反馈信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Api(tags="反馈信息表") +@RestController +@RequestMapping("/employFeedback/employFeedback") +@Slf4j +public class EmployFeedbackController extends JeecgController { + @Autowired + private IEmployFeedbackService employFeedbackService; + + /** + * 分页列表查询 + * + * @param employFeedback + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "反馈信息表-分页列表查询") + @ApiOperation(value="反馈信息表-分页列表查询", notes="反馈信息表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployFeedback employFeedback, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employFeedback, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employFeedbackService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employFeedback + * @return + */ + @AutoLog(value = "反馈信息表-添加") + @ApiOperation(value="反馈信息表-添加", notes="反馈信息表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployFeedback employFeedback) { + employFeedbackService.save(employFeedback); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employFeedback + * @return + */ + @AutoLog(value = "反馈信息表-编辑") + @ApiOperation(value="反馈信息表-编辑", notes="反馈信息表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployFeedback employFeedback) { + employFeedbackService.updateById(employFeedback); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "反馈信息表-通过id删除") + @ApiOperation(value="反馈信息表-通过id删除", notes="反馈信息表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + employFeedbackService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "反馈信息表-批量删除") + @ApiOperation(value="反馈信息表-批量删除", notes="反馈信息表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.employFeedbackService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "反馈信息表-通过id查询") + @ApiOperation(value="反馈信息表-通过id查询", notes="反馈信息表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + EmployFeedback employFeedback = employFeedbackService.getById(id); + if(employFeedback==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employFeedback); + } + + /** + * 导出excel + * + * @param request + * @param employFeedback + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployFeedback employFeedback) { + return super.exportXls(request, employFeedback, EmployFeedback.class, "反馈信息表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EmployFeedback.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/entity/EmployFeedback.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/entity/EmployFeedback.java new file mode 100644 index 0000000..9d37627 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/entity/EmployFeedback.java @@ -0,0 +1,71 @@ +package org.jeecg.modules.employFeedback.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 反馈信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Data +@TableName("employ_feedback") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_feedback对象", description="反馈信息表") +public class EmployFeedback implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**反馈内容*/ + @Excel(name = "反馈内容", width = 15) + @ApiModelProperty(value = "反馈内容") + private java.lang.String content; + /**问题截图*/ + @Excel(name = "问题截图", width = 15) + @ApiModelProperty(value = "问题截图") + private java.lang.String image; + /**联系姓名*/ + @Excel(name = "联系姓名", width = 15) + @ApiModelProperty(value = "联系姓名") + private java.lang.String name; + /**联系电话*/ + @Excel(name = "联系电话", width = 15) + @ApiModelProperty(value = "联系电话") + private java.lang.String phone; + /**关联用户id*/ + @Excel(name = "关联用户id", width = 15, dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @ApiModelProperty(value = "关联用户id") + private java.lang.String userId; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/mapper/EmployFeedbackMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/mapper/EmployFeedbackMapper.java new file mode 100644 index 0000000..626d102 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/mapper/EmployFeedbackMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employFeedback.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employFeedback.entity.EmployFeedback; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 反馈信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface EmployFeedbackMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/mapper/xml/EmployFeedbackMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/mapper/xml/EmployFeedbackMapper.xml new file mode 100644 index 0000000..10c981d --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/mapper/xml/EmployFeedbackMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/service/IEmployFeedbackService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/service/IEmployFeedbackService.java new file mode 100644 index 0000000..0a4cbee --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/service/IEmployFeedbackService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employFeedback.service; + +import org.jeecg.modules.employFeedback.entity.EmployFeedback; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 反馈信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface IEmployFeedbackService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/service/impl/EmployFeedbackServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/service/impl/EmployFeedbackServiceImpl.java new file mode 100644 index 0000000..1b1b750 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/service/impl/EmployFeedbackServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employFeedback.service.impl; + +import org.jeecg.modules.employFeedback.entity.EmployFeedback; +import org.jeecg.modules.employFeedback.mapper.EmployFeedbackMapper; +import org.jeecg.modules.employFeedback.service.IEmployFeedbackService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 反馈信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Service +public class EmployFeedbackServiceImpl extends ServiceImpl implements IEmployFeedbackService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/EmployFeedbackList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/EmployFeedbackList.vue new file mode 100644 index 0000000..5b3ccdb --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/EmployFeedbackList.vue @@ -0,0 +1,198 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackForm.vue new file mode 100644 index 0000000..5747359 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackForm.vue @@ -0,0 +1,124 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackModal.Style#Drawer.vue new file mode 100644 index 0000000..082d139 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackModal.vue new file mode 100644 index 0000000..cf2bddf --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue/modules/EmployFeedbackModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedback.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedback.api.ts new file mode 100644 index 0000000..f7d36df --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedback.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employFeedback/employFeedback/list', + save='/employFeedback/employFeedback/add', + edit='/employFeedback/employFeedback/edit', + deleteOne = '/employFeedback/employFeedback/delete', + deleteBatch = '/employFeedback/employFeedback/deleteBatch', + importExcel = '/employFeedback/employFeedback/importExcel', + exportXls = '/employFeedback/employFeedback/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedback.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedback.data.ts new file mode 100644 index 0000000..5aad21e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedback.data.ts @@ -0,0 +1,70 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '反馈内容', + align:"center", + dataIndex: 'content', + slots: { customRender: 'htmlSlot' }, + }, + { + title: '问题截图', + align:"center", + dataIndex: 'image', + customRender:render.renderAvatar, + }, + { + title: '联系姓名', + align:"center", + dataIndex: 'name' + }, + { + title: '联系电话', + align:"center", + dataIndex: 'phone' + }, + { + title: '关联用户id', + align:"center", + dataIndex: 'userId_dictText' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '反馈内容', + field: 'content', + component: 'JCodeEditor', //TODO String后缀暂未添加 + }, + { + label: '问题截图', + field: 'image', + component: 'JImageUpload', + componentProps:{ + }, + }, + { + label: '联系姓名', + field: 'name', + component: 'Input', + }, + { + label: '联系电话', + field: 'phone', + component: 'Input', + }, + { + label: '关联用户id', + field: 'userId', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"han_hai_member,nick_name,id" + }, + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedbackList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedbackList.vue new file mode 100644 index 0000000..eb827d1 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/EmployFeedbackList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/components/EmployFeedbackModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/components/EmployFeedbackModal.vue new file mode 100644 index 0000000..f4d20ea --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employFeedback/vue3/components/EmployFeedbackModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/controller/EmployJobController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/controller/EmployJobController.java new file mode 100644 index 0000000..338ea25 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/controller/EmployJobController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employJob.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.employJob.entity.EmployJob; +import org.jeecg.modules.employJob.service.IEmployJobService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 工作信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Api(tags="工作信息表") +@RestController +@RequestMapping("/employJob/employJob") +@Slf4j +public class EmployJobController extends JeecgController { + @Autowired + private IEmployJobService employJobService; + + /** + * 分页列表查询 + * + * @param employJob + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "工作信息表-分页列表查询") + @ApiOperation(value="工作信息表-分页列表查询", notes="工作信息表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployJob employJob, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employJob, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employJobService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employJob + * @return + */ + @AutoLog(value = "工作信息表-添加") + @ApiOperation(value="工作信息表-添加", notes="工作信息表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployJob employJob) { + employJobService.save(employJob); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employJob + * @return + */ + @AutoLog(value = "工作信息表-编辑") + @ApiOperation(value="工作信息表-编辑", notes="工作信息表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployJob employJob) { + employJobService.updateById(employJob); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "工作信息表-通过id删除") + @ApiOperation(value="工作信息表-通过id删除", notes="工作信息表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + employJobService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "工作信息表-批量删除") + @ApiOperation(value="工作信息表-批量删除", notes="工作信息表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.employJobService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "工作信息表-通过id查询") + @ApiOperation(value="工作信息表-通过id查询", notes="工作信息表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + EmployJob employJob = employJobService.getById(id); + if(employJob==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employJob); + } + + /** + * 导出excel + * + * @param request + * @param employJob + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployJob employJob) { + return super.exportXls(request, employJob, EmployJob.class, "工作信息表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EmployJob.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/entity/EmployJob.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/entity/EmployJob.java new file mode 100644 index 0000000..2d052b4 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/entity/EmployJob.java @@ -0,0 +1,106 @@ +package org.jeecg.modules.employJob.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 工作信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Data +@TableName("employ_job") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_job对象", description="工作信息表") +public class EmployJob implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**工作标题*/ + @Excel(name = "工作标题", width = 15) + @ApiModelProperty(value = "工作标题") + private java.lang.String title; + /**工作地点*/ + @Excel(name = "工作地点", width = 15) + @ApiModelProperty(value = "工作地点") + private java.lang.String address; + /**所属行业id*/ + @Excel(name = "所属行业id", width = 15, dictTable = "employ_category", dicText = "name", dicCode = "id") + @Dict(dictTable = "employ_category", dicText = "name", dicCode = "id") + @ApiModelProperty(value = "所属行业id") + private java.lang.String categoryOne; + /**所属工种id*/ + @Excel(name = "所属工种id", width = 15, dictTable = "employ_category", dicText = "name", dicCode = "id") + @Dict(dictTable = "employ_category", dicText = "name", dicCode = "id") + @ApiModelProperty(value = "所属工种id") + private java.lang.String categoryTwo; + /**月薪最小值*/ + @Excel(name = "月薪最小值", width = 15) + @ApiModelProperty(value = "月薪最小值") + private java.math.BigDecimal salaryMin; + /**月薪最大值*/ + @Excel(name = "月薪最大值", width = 15) + @ApiModelProperty(value = "月薪最大值") + private java.math.BigDecimal salaryMax; + /**期望日薪*/ + @Excel(name = "期望日薪", width = 15) + @ApiModelProperty(value = "期望日薪") + private java.math.BigDecimal salaryDay; + /**结算方式*/ + @Excel(name = "结算方式", width = 15, dicCode = " employ_pay_type") + @Dict(dicCode = " employ_pay_type") + @ApiModelProperty(value = "结算方式") + private java.lang.String payType; + /**时间*/ + @Excel(name = "时间", width = 15) + @ApiModelProperty(value = "时间") + private java.lang.String workTime; + /**联系电话*/ + @Excel(name = "联系电话", width = 15) + @ApiModelProperty(value = "联系电话") + private java.lang.String phone; + /**工作内容*/ + @Excel(name = "工作内容", width = 15) + @ApiModelProperty(value = "工作内容") + private java.lang.String details; + /**图片*/ + @Excel(name = "图片", width = 15) + @ApiModelProperty(value = "图片") + private java.lang.String image; + /**关联用户id*/ + @Excel(name = "关联用户id", width = 15, dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @ApiModelProperty(value = "关联用户id") + private java.lang.String userId; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/mapper/EmployJobMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/mapper/EmployJobMapper.java new file mode 100644 index 0000000..17d7bbc --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/mapper/EmployJobMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employJob.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employJob.entity.EmployJob; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 工作信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface EmployJobMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/mapper/xml/EmployJobMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/mapper/xml/EmployJobMapper.xml new file mode 100644 index 0000000..ad100fb --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/mapper/xml/EmployJobMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/IEmployJobService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/IEmployJobService.java new file mode 100644 index 0000000..627792e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/IEmployJobService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employJob.service; + +import org.jeecg.modules.employJob.entity.EmployJob; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 工作信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface IEmployJobService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/impl/EmployJobServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/impl/EmployJobServiceImpl.java new file mode 100644 index 0000000..e382ce4 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/impl/EmployJobServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employJob.service.impl; + +import org.jeecg.modules.employJob.entity.EmployJob; +import org.jeecg.modules.employJob.mapper.EmployJobMapper; +import org.jeecg.modules.employJob.service.IEmployJobService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 工作信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Service +public class EmployJobServiceImpl extends ServiceImpl implements IEmployJobService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/EmployJobList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/EmployJobList.vue new file mode 100644 index 0000000..2c95202 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/EmployJobList.vue @@ -0,0 +1,246 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobForm.vue new file mode 100644 index 0000000..5723af0 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobForm.vue @@ -0,0 +1,164 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobModal.Style#Drawer.vue new file mode 100644 index 0000000..e203426 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobModal.vue new file mode 100644 index 0000000..6b0b6a5 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJob.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJob.api.ts new file mode 100644 index 0000000..8177954 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJob.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employJob/employJob/list', + save='/employJob/employJob/add', + edit='/employJob/employJob/edit', + deleteOne = '/employJob/employJob/delete', + deleteBatch = '/employJob/employJob/deleteBatch', + importExcel = '/employJob/employJob/importExcel', + exportXls = '/employJob/employJob/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJob.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJob.data.ts new file mode 100644 index 0000000..15ad5f9 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJob.data.ts @@ -0,0 +1,159 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '工作标题', + align:"center", + dataIndex: 'title' + }, + { + title: '工作地点', + align:"center", + dataIndex: 'address' + }, + { + title: '所属行业id', + align:"center", + dataIndex: 'categoryOne_dictText' + }, + { + title: '所属工种id', + align:"center", + dataIndex: 'categoryTwo_dictText' + }, + { + title: '月薪最小值', + align:"center", + dataIndex: 'salaryMin' + }, + { + title: '月薪最大值', + align:"center", + dataIndex: 'salaryMax' + }, + { + title: '期望日薪', + align:"center", + dataIndex: 'salaryDay' + }, + { + title: '结算方式', + align:"center", + dataIndex: 'payType_dictText' + }, + { + title: '时间', + align:"center", + dataIndex: 'workTime' + }, + { + title: '联系电话', + align:"center", + dataIndex: 'phone' + }, + { + title: '工作内容', + align:"center", + dataIndex: 'details', + slots: { customRender: 'htmlSlot' }, + }, + { + title: '图片', + align:"center", + dataIndex: 'image', + customRender:render.renderAvatar, + }, + { + title: '关联用户id', + align:"center", + dataIndex: 'userId_dictText' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '工作标题', + field: 'title', + component: 'Input', + }, + { + label: '工作地点', + field: 'address', + component: 'Input', + }, + { + label: '所属行业id', + field: 'categoryOne', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_category,name,id" + }, + }, + { + label: '所属工种id', + field: 'categoryTwo', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_category,name,id" + }, + }, + { + label: '月薪最小值', + field: 'salaryMin', + component: 'InputNumber', + }, + { + label: '月薪最大值', + field: 'salaryMax', + component: 'InputNumber', + }, + { + label: '期望日薪', + field: 'salaryDay', + component: 'InputNumber', + }, + { + label: '结算方式', + field: 'payType', + component: 'JDictSelectTag', + componentProps:{ + dictCode:" employ_pay_type" + }, + }, + { + label: '时间', + field: 'workTime', + component: 'Input', + }, + { + label: '联系电话', + field: 'phone', + component: 'Input', + }, + { + label: '工作内容', + field: 'details', + component: 'JCodeEditor', //TODO String后缀暂未添加 + }, + { + label: '图片', + field: 'image', + component: 'JImageUpload', + componentProps:{ + }, + }, + { + label: '关联用户id', + field: 'userId', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"han_hai_member,nick_name,id" + }, + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJobList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJobList.vue new file mode 100644 index 0000000..5147afd --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJobList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/components/EmployJobModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/components/EmployJobModal.vue new file mode 100644 index 0000000..58c2400 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/components/EmployJobModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/controller/EmployNewsController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/controller/EmployNewsController.java new file mode 100644 index 0000000..20f88da --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/controller/EmployNewsController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employNews.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.employNews.entity.EmployNews; +import org.jeecg.modules.employNews.service.IEmployNewsService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 公告信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Api(tags="公告信息表") +@RestController +@RequestMapping("/employNews/employNews") +@Slf4j +public class EmployNewsController extends JeecgController { + @Autowired + private IEmployNewsService employNewsService; + + /** + * 分页列表查询 + * + * @param employNews + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "公告信息表-分页列表查询") + @ApiOperation(value="公告信息表-分页列表查询", notes="公告信息表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployNews employNews, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employNews, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employNewsService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employNews + * @return + */ + @AutoLog(value = "公告信息表-添加") + @ApiOperation(value="公告信息表-添加", notes="公告信息表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployNews employNews) { + employNewsService.save(employNews); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employNews + * @return + */ + @AutoLog(value = "公告信息表-编辑") + @ApiOperation(value="公告信息表-编辑", notes="公告信息表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployNews employNews) { + employNewsService.updateById(employNews); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "公告信息表-通过id删除") + @ApiOperation(value="公告信息表-通过id删除", notes="公告信息表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + employNewsService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "公告信息表-批量删除") + @ApiOperation(value="公告信息表-批量删除", notes="公告信息表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.employNewsService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "公告信息表-通过id查询") + @ApiOperation(value="公告信息表-通过id查询", notes="公告信息表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + EmployNews employNews = employNewsService.getById(id); + if(employNews==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employNews); + } + + /** + * 导出excel + * + * @param request + * @param employNews + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployNews employNews) { + return super.exportXls(request, employNews, EmployNews.class, "公告信息表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EmployNews.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/entity/EmployNews.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/entity/EmployNews.java new file mode 100644 index 0000000..b9e2af0 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/entity/EmployNews.java @@ -0,0 +1,58 @@ +package org.jeecg.modules.employNews.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 公告信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Data +@TableName("employ_news") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_news对象", description="公告信息表") +public class EmployNews implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**公告标题*/ + @Excel(name = "公告标题", width = 15) + @ApiModelProperty(value = "公告标题") + private java.lang.String title; + /**公告内容*/ + @Excel(name = "公告内容", width = 15) + @ApiModelProperty(value = "公告内容") + private java.lang.String content; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/mapper/EmployNewsMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/mapper/EmployNewsMapper.java new file mode 100644 index 0000000..9c47a16 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/mapper/EmployNewsMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employNews.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employNews.entity.EmployNews; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 公告信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface EmployNewsMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/mapper/xml/EmployNewsMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/mapper/xml/EmployNewsMapper.xml new file mode 100644 index 0000000..95c18f0 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/mapper/xml/EmployNewsMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/service/IEmployNewsService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/service/IEmployNewsService.java new file mode 100644 index 0000000..a4ebf25 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/service/IEmployNewsService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employNews.service; + +import org.jeecg.modules.employNews.entity.EmployNews; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 公告信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface IEmployNewsService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/service/impl/EmployNewsServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/service/impl/EmployNewsServiceImpl.java new file mode 100644 index 0000000..40bfffa --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/service/impl/EmployNewsServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employNews.service.impl; + +import org.jeecg.modules.employNews.entity.EmployNews; +import org.jeecg.modules.employNews.mapper.EmployNewsMapper; +import org.jeecg.modules.employNews.service.IEmployNewsService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 公告信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Service +public class EmployNewsServiceImpl extends ServiceImpl implements IEmployNewsService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/EmployNewsList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/EmployNewsList.vue new file mode 100644 index 0000000..3391f6d --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/EmployNewsList.vue @@ -0,0 +1,178 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsForm.vue new file mode 100644 index 0000000..12c8bd6 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsForm.vue @@ -0,0 +1,109 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsModal.Style#Drawer.vue new file mode 100644 index 0000000..a3fb87c --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsModal.vue new file mode 100644 index 0000000..7102615 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue/modules/EmployNewsModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNews.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNews.api.ts new file mode 100644 index 0000000..28c8d98 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNews.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employNews/employNews/list', + save='/employNews/employNews/add', + edit='/employNews/employNews/edit', + deleteOne = '/employNews/employNews/delete', + deleteBatch = '/employNews/employNews/deleteBatch', + importExcel = '/employNews/employNews/importExcel', + exportXls = '/employNews/employNews/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNews.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNews.data.ts new file mode 100644 index 0000000..f3273c3 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNews.data.ts @@ -0,0 +1,34 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '公告标题', + align:"center", + dataIndex: 'title' + }, + { + title: '公告内容', + align:"center", + dataIndex: 'content', + slots: { customRender: 'htmlSlot' }, + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '公告标题', + field: 'title', + component: 'Input', + }, + { + label: '公告内容', + field: 'content', + component: 'JCodeEditor', //TODO String后缀暂未添加 + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNewsList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNewsList.vue new file mode 100644 index 0000000..60312cb --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/EmployNewsList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/components/EmployNewsModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/components/EmployNewsModal.vue new file mode 100644 index 0000000..f45f0a7 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employNews/vue3/components/EmployNewsModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/controller/EmployOrderController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/controller/EmployOrderController.java new file mode 100644 index 0000000..66e8e32 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/controller/EmployOrderController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employOrder.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.employOrder.entity.EmployOrder; +import org.jeecg.modules.employOrder.service.IEmployOrderService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 订单信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Api(tags="订单信息表") +@RestController +@RequestMapping("/employOrder/employOrder") +@Slf4j +public class EmployOrderController extends JeecgController { + @Autowired + private IEmployOrderService employOrderService; + + /** + * 分页列表查询 + * + * @param employOrder + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "订单信息表-分页列表查询") + @ApiOperation(value="订单信息表-分页列表查询", notes="订单信息表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployOrder employOrder, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employOrder, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employOrderService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employOrder + * @return + */ + @AutoLog(value = "订单信息表-添加") + @ApiOperation(value="订单信息表-添加", notes="订单信息表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployOrder employOrder) { + employOrderService.save(employOrder); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employOrder + * @return + */ + @AutoLog(value = "订单信息表-编辑") + @ApiOperation(value="订单信息表-编辑", notes="订单信息表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployOrder employOrder) { + employOrderService.updateById(employOrder); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "订单信息表-通过id删除") + @ApiOperation(value="订单信息表-通过id删除", notes="订单信息表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + employOrderService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "订单信息表-批量删除") + @ApiOperation(value="订单信息表-批量删除", notes="订单信息表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.employOrderService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "订单信息表-通过id查询") + @ApiOperation(value="订单信息表-通过id查询", notes="订单信息表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + EmployOrder employOrder = employOrderService.getById(id); + if(employOrder==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employOrder); + } + + /** + * 导出excel + * + * @param request + * @param employOrder + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployOrder employOrder) { + return super.exportXls(request, employOrder, EmployOrder.class, "订单信息表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EmployOrder.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/entity/EmployOrder.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/entity/EmployOrder.java new file mode 100644 index 0000000..53c2705 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/entity/EmployOrder.java @@ -0,0 +1,70 @@ +package org.jeecg.modules.employOrder.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 订单信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Data +@TableName("employ_order") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_order对象", description="订单信息表") +public class EmployOrder implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**关联工作id*/ + @Excel(name = "关联工作id", width = 15, dictTable = "employ_job", dicText = "title", dicCode = "id") + @Dict(dictTable = "employ_job", dicText = "title", dicCode = "id") + @ApiModelProperty(value = "关联工作id") + private java.lang.String jobId; + /**订单状态*/ + @Excel(name = "订单状态", width = 15, dicCode = "employ_status") + @Dict(dicCode = "employ_status") + @ApiModelProperty(value = "订单状态") + private java.lang.String status; + /**关联招聘者id*/ + @Excel(name = "关联招聘者id", width = 15, dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @ApiModelProperty(value = "关联招聘者id") + private java.lang.String employeeId; + /**关联求职者id*/ + @Excel(name = "关联求职者id", width = 15, dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @ApiModelProperty(value = "关联求职者id") + private java.lang.String bossId; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/mapper/EmployOrderMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/mapper/EmployOrderMapper.java new file mode 100644 index 0000000..4d6cf8b --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/mapper/EmployOrderMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employOrder.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employOrder.entity.EmployOrder; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 订单信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface EmployOrderMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/mapper/xml/EmployOrderMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/mapper/xml/EmployOrderMapper.xml new file mode 100644 index 0000000..32588ee --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/mapper/xml/EmployOrderMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/service/IEmployOrderService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/service/IEmployOrderService.java new file mode 100644 index 0000000..7a38519 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/service/IEmployOrderService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employOrder.service; + +import org.jeecg.modules.employOrder.entity.EmployOrder; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 订单信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface IEmployOrderService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/service/impl/EmployOrderServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/service/impl/EmployOrderServiceImpl.java new file mode 100644 index 0000000..9110e2e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/service/impl/EmployOrderServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employOrder.service.impl; + +import org.jeecg.modules.employOrder.entity.EmployOrder; +import org.jeecg.modules.employOrder.mapper.EmployOrderMapper; +import org.jeecg.modules.employOrder.service.IEmployOrderService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 订单信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Service +public class EmployOrderServiceImpl extends ServiceImpl implements IEmployOrderService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/EmployOrderList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/EmployOrderList.vue new file mode 100644 index 0000000..962e18b --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/EmployOrderList.vue @@ -0,0 +1,190 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderForm.vue new file mode 100644 index 0000000..249997e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderForm.vue @@ -0,0 +1,119 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderModal.Style#Drawer.vue new file mode 100644 index 0000000..c43c04c --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderModal.vue new file mode 100644 index 0000000..e80e4fe --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue/modules/EmployOrderModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrder.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrder.api.ts new file mode 100644 index 0000000..04a2cca --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrder.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employOrder/employOrder/list', + save='/employOrder/employOrder/add', + edit='/employOrder/employOrder/edit', + deleteOne = '/employOrder/employOrder/delete', + deleteBatch = '/employOrder/employOrder/deleteBatch', + importExcel = '/employOrder/employOrder/importExcel', + exportXls = '/employOrder/employOrder/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrder.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrder.data.ts new file mode 100644 index 0000000..fbd525a --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrder.data.ts @@ -0,0 +1,65 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '关联工作id', + align:"center", + dataIndex: 'jobId_dictText' + }, + { + title: '订单状态', + align:"center", + dataIndex: 'status_dictText' + }, + { + title: '关联招聘者id', + align:"center", + dataIndex: 'employeeId_dictText' + }, + { + title: '关联求职者id', + align:"center", + dataIndex: 'bossId_dictText' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '关联工作id', + field: 'jobId', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_job,title,id" + }, + }, + { + label: '订单状态', + field: 'status', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_status" + }, + }, + { + label: '关联招聘者id', + field: 'employeeId', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"han_hai_member,nick_name,id" + }, + }, + { + label: '关联求职者id', + field: 'bossId', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"han_hai_member,nick_name,id" + }, + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrderList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrderList.vue new file mode 100644 index 0000000..b192d9a --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/EmployOrderList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/components/EmployOrderModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/components/EmployOrderModal.vue new file mode 100644 index 0000000..b60a914 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/vue3/components/EmployOrderModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/controller/EmployResumeController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/controller/EmployResumeController.java new file mode 100644 index 0000000..8cc616e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/controller/EmployResumeController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employResume.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.employResume.entity.EmployResume; +import org.jeecg.modules.employResume.service.IEmployResumeService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 简历信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Api(tags="简历信息表") +@RestController +@RequestMapping("/employResume/employResume") +@Slf4j +public class EmployResumeController extends JeecgController { + @Autowired + private IEmployResumeService employResumeService; + + /** + * 分页列表查询 + * + * @param employResume + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "简历信息表-分页列表查询") + @ApiOperation(value="简历信息表-分页列表查询", notes="简历信息表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployResume employResume, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employResume, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employResumeService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employResume + * @return + */ + @AutoLog(value = "简历信息表-添加") + @ApiOperation(value="简历信息表-添加", notes="简历信息表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployResume employResume) { + employResumeService.save(employResume); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employResume + * @return + */ + @AutoLog(value = "简历信息表-编辑") + @ApiOperation(value="简历信息表-编辑", notes="简历信息表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployResume employResume) { + employResumeService.updateById(employResume); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "简历信息表-通过id删除") + @ApiOperation(value="简历信息表-通过id删除", notes="简历信息表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + employResumeService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "简历信息表-批量删除") + @ApiOperation(value="简历信息表-批量删除", notes="简历信息表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.employResumeService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "简历信息表-通过id查询") + @ApiOperation(value="简历信息表-通过id查询", notes="简历信息表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + EmployResume employResume = employResumeService.getById(id); + if(employResume==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employResume); + } + + /** + * 导出excel + * + * @param request + * @param employResume + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployResume employResume) { + return super.exportXls(request, employResume, EmployResume.class, "简历信息表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EmployResume.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/entity/EmployResume.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/entity/EmployResume.java new file mode 100644 index 0000000..9e144cc --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/entity/EmployResume.java @@ -0,0 +1,111 @@ +package org.jeecg.modules.employResume.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 简历信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Data +@TableName("employ_resume") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_resume对象", description="简历信息表") +public class EmployResume implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**姓名*/ + @Excel(name = "姓名", width = 15) + @ApiModelProperty(value = "姓名") + private java.lang.String name; + /**性别*/ + @Excel(name = "性别", width = 15, dicCode = "employ_sex") + @Dict(dicCode = "employ_sex") + @ApiModelProperty(value = "性别") + private java.lang.String sex; + /**年龄*/ + @Excel(name = "年龄", width = 15) + @ApiModelProperty(value = "年龄") + private java.lang.Integer age; + /**所属行业id*/ + @Excel(name = "所属行业id", width = 15, dictTable = "employ_category", dicText = "name", dicCode = "id") + @Dict(dictTable = "employ_category", dicText = "name", dicCode = "id") + @ApiModelProperty(value = "所属行业id") + private java.lang.String categoryOne; + /**所属工种id*/ + @Excel(name = "所属工种id", width = 15, dictTable = "employ_category", dicText = "name", dicCode = "id") + @Dict(dictTable = "employ_category", dicText = "name", dicCode = "id") + @ApiModelProperty(value = "所属工种id") + private java.lang.String categoryTwo; + /**头像*/ + @Excel(name = "头像", width = 15) + @ApiModelProperty(value = "头像") + private java.lang.String headImage; + /**月薪最小值*/ + @Excel(name = "月薪最小值", width = 15) + @ApiModelProperty(value = "月薪最小值") + private java.math.BigDecimal salaryMin; + /**月薪最大值*/ + @Excel(name = "月薪最大值", width = 15) + @ApiModelProperty(value = "月薪最大值") + private java.math.BigDecimal salaryMax; + /**联系电话*/ + @Excel(name = "联系电话", width = 15) + @ApiModelProperty(value = "联系电话") + private java.lang.String phone; + /**结算方式*/ + @Excel(name = "结算方式", width = 15, dicCode = "employ_pay_type") + @Dict(dicCode = "employ_pay_type") + @ApiModelProperty(value = "结算方式") + private java.lang.String payType; + /**出行方式*/ + @Excel(name = "出行方式", width = 15) + @ApiModelProperty(value = "出行方式") + private java.lang.String commuteType; + /**出发地址*/ + @Excel(name = "出发地址", width = 15) + @ApiModelProperty(value = "出发地址") + private java.lang.String address; + /**个人介绍*/ + @Excel(name = "个人介绍", width = 15) + @ApiModelProperty(value = "个人介绍") + private java.lang.String brief; + /**关联用户id*/ + @Excel(name = "关联用户id", width = 15, dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @ApiModelProperty(value = "关联用户id") + private java.lang.String userId; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/mapper/EmployResumeMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/mapper/EmployResumeMapper.java new file mode 100644 index 0000000..3eb35dd --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/mapper/EmployResumeMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employResume.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employResume.entity.EmployResume; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 简历信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface EmployResumeMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/mapper/xml/EmployResumeMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/mapper/xml/EmployResumeMapper.xml new file mode 100644 index 0000000..27aabba --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/mapper/xml/EmployResumeMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/service/IEmployResumeService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/service/IEmployResumeService.java new file mode 100644 index 0000000..c2f62d2 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/service/IEmployResumeService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employResume.service; + +import org.jeecg.modules.employResume.entity.EmployResume; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 简历信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +public interface IEmployResumeService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/service/impl/EmployResumeServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/service/impl/EmployResumeServiceImpl.java new file mode 100644 index 0000000..8f7dcfe --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/service/impl/EmployResumeServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employResume.service.impl; + +import org.jeecg.modules.employResume.entity.EmployResume; +import org.jeecg.modules.employResume.mapper.EmployResumeMapper; +import org.jeecg.modules.employResume.service.IEmployResumeService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 简历信息表 + * @Author: jeecg-boot + * @Date: 2025-02-21 + * @Version: V1.0 + */ +@Service +public class EmployResumeServiceImpl extends ServiceImpl implements IEmployResumeService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/EmployResumeList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/EmployResumeList.vue new file mode 100644 index 0000000..74777cf --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/EmployResumeList.vue @@ -0,0 +1,252 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeForm.vue new file mode 100644 index 0000000..04c6f2a --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeForm.vue @@ -0,0 +1,169 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeModal.Style#Drawer.vue new file mode 100644 index 0000000..5d21fad --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeModal.vue new file mode 100644 index 0000000..570babe --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue/modules/EmployResumeModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResume.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResume.api.ts new file mode 100644 index 0000000..5514dda --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResume.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employResume/employResume/list', + save='/employResume/employResume/add', + edit='/employResume/employResume/edit', + deleteOne = '/employResume/employResume/delete', + deleteBatch = '/employResume/employResume/deleteBatch', + importExcel = '/employResume/employResume/importExcel', + exportXls = '/employResume/employResume/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResume.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResume.data.ts new file mode 100644 index 0000000..8b73481 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResume.data.ts @@ -0,0 +1,172 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '姓名', + align:"center", + dataIndex: 'name' + }, + { + title: '性别', + align:"center", + dataIndex: 'sex_dictText' + }, + { + title: '年龄', + align:"center", + dataIndex: 'age' + }, + { + title: '所属行业id', + align:"center", + dataIndex: 'categoryOne_dictText' + }, + { + title: '所属工种id', + align:"center", + dataIndex: 'categoryTwo_dictText' + }, + { + title: '头像', + align:"center", + dataIndex: 'headImage', + customRender:render.renderAvatar, + }, + { + title: '月薪最小值', + align:"center", + dataIndex: 'salaryMin' + }, + { + title: '月薪最大值', + align:"center", + dataIndex: 'salaryMax' + }, + { + title: '联系电话', + align:"center", + dataIndex: 'phone' + }, + { + title: '结算方式', + align:"center", + dataIndex: 'payType_dictText' + }, + { + title: '出行方式', + align:"center", + dataIndex: 'commuteType' + }, + { + title: '出发地址', + align:"center", + dataIndex: 'address' + }, + { + title: '个人介绍', + align:"center", + dataIndex: 'brief', + slots: { customRender: 'htmlSlot' }, + }, + { + title: '关联用户id', + align:"center", + dataIndex: 'userId_dictText' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '姓名', + field: 'name', + component: 'Input', + }, + { + label: '性别', + field: 'sex', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_sex" + }, + }, + { + label: '年龄', + field: 'age', + component: 'InputNumber', + }, + { + label: '所属行业id', + field: 'categoryOne', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_category,name,id" + }, + }, + { + label: '所属工种id', + field: 'categoryTwo', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_category,name,id" + }, + }, + { + label: '头像', + field: 'headImage', + component: 'JImageUpload', + componentProps:{ + }, + }, + { + label: '月薪最小值', + field: 'salaryMin', + component: 'InputNumber', + }, + { + label: '月薪最大值', + field: 'salaryMax', + component: 'InputNumber', + }, + { + label: '联系电话', + field: 'phone', + component: 'Input', + }, + { + label: '结算方式', + field: 'payType', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_pay_type" + }, + }, + { + label: '出行方式', + field: 'commuteType', + component: 'Input', + }, + { + label: '出发地址', + field: 'address', + component: 'Input', + }, + { + label: '个人介绍', + field: 'brief', + component: 'JCodeEditor', //TODO String后缀暂未添加 + }, + { + label: '关联用户id', + field: 'userId', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"han_hai_member,nick_name,id" + }, + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResumeList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResumeList.vue new file mode 100644 index 0000000..edb10cd --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/EmployResumeList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/components/EmployResumeModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/components/EmployResumeModal.vue new file mode 100644 index 0000000..cc9a0ed --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employResume/vue3/components/EmployResumeModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-module-system/pom.xml b/jeecg-boot-module-system/pom.xml index 4ae1645..c0a2f5b 100644 --- a/jeecg-boot-module-system/pom.xml +++ b/jeecg-boot-module-system/pom.xml @@ -77,6 +77,7 @@ + employ-admin org.springframework.boot diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AmountController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AmountController.java new file mode 100644 index 0000000..6d525dc --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AmountController.java @@ -0,0 +1,52 @@ +package org.jeecg.modules.api.employController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiService.AmountService; +import org.jeecg.modules.apiService.AuthenticationService; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.math.BigDecimal; + +@Api(tags="我的钱包-我的钱包相关接口") +@RestController +@RequestMapping("/employ/amount") +@Slf4j +public class AmountController { + + /******************************************************************************************************************/ + //我的钱包 + @Resource + private AmountService amountService; + /******************************************************************************************************************/ + + @ApiOperation(value="我的钱包-累计提现", notes="我的钱包-累计提现") + @RequestMapping(value = "/CountCashOut", method = {RequestMethod.GET}) + public Result CountCashOut(@RequestHeader("X-Access-Token") String token){ + return amountService.CountCashOut(token); + } + + @ApiOperation(value="我的钱包-提现", notes="我的钱包-提现") + @RequestMapping(value = "/CashOut", method = {RequestMethod.GET}) + public Result CashOut(@RequestHeader("X-Access-Token") String token, BigDecimal price){ + return amountService.CashOut(token); + } + + @ApiOperation(value="我的钱包-充值", notes="我的钱包-充值") + @RequestMapping(value = "/recharge", method = {RequestMethod.GET}) + public Result recharge(@RequestHeader("X-Access-Token") String token, BigDecimal price){ + return amountService.recharge(token); + } + + @ApiOperation(value="我的钱包-金额明细", notes="我的钱包-金额明细") + @RequestMapping(value = "/amountLog", method = {RequestMethod.GET}) + public Result amountLog(@RequestHeader("X-Access-Token") String token){ + return amountService.amountLog(token); + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AuthenticationController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AuthenticationController.java new file mode 100644 index 0000000..4184d6c --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AuthenticationController.java @@ -0,0 +1,60 @@ +package org.jeecg.modules.api.employController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiService.AuthenticationService; +import org.jeecg.modules.employAuthenticationCompany.entity.EmployAuthenticationCompany; +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="小程序-实名认证相关接口") +@RestController +@RequestMapping("/employ/authentication") +@Slf4j +public class AuthenticationController { + + /******************************************************************************************************************/ + //实名认证 + @Resource + private AuthenticationService authenticationService; + /******************************************************************************************************************/ + + //实名认证-查询个人实名认证信息 + @ApiOperation(value="实名认证-查询个人实名认证信息", notes="实名认证-查询个人实名认证信息") + @RequestMapping(value = "/getAuthenticationPerson", method = {RequestMethod.GET}) + public Result getAuthenticationPerson(@RequestHeader("X-Access-Token") String token){ + //业务处理 + return authenticationService.getAuthenticationPerson(token); + } + + //实名认证-个人实名认证 + @ApiOperation(value="实名认证-个人实名认证", notes="实名认证-个人实名认证") + @RequestMapping(value = "/addAuthenticationPerson", method = {RequestMethod.POST}) + public Result addAuthenticationPerson(@RequestHeader("X-Access-Token") String token, EmployAuthenticationPerson employAuthenticationPerson){ + //业务处理 + return authenticationService.addAuthenticationPerson(token, employAuthenticationPerson); + } + + @ApiOperation(value="实名认证-查询企业实名认证信息", notes="实名认证-查询企业实名认证信息") + @RequestMapping(value = "/getAuthenticationCompany", method = {RequestMethod.GET}) + public Result getAuthenticationCompany(@RequestHeader("X-Access-Token") String token){ + //业务处理 + return authenticationService.getAuthenticationCompany(token); + } + + //实名认证-企业实名认证 + @ApiOperation(value="实名认证-企业实名认证", notes="实名认证-企业实名认证") + @RequestMapping(value = "/addAuthenticationCompany", method = {RequestMethod.POST}) + public Result addAuthenticationCompany(@RequestHeader("X-Access-Token") String token, EmployAuthenticationCompany employAuthenticationCompany){ + //业务处理 + return authenticationService.addAuthenticationCompany(token, employAuthenticationCompany); + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/BannerController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/BannerController.java new file mode 100644 index 0000000..23f4d79 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/BannerController.java @@ -0,0 +1,31 @@ +package org.jeecg.modules.api.employController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.BannerService; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="轮播图-轮播图相关接口") +@RestController +@RequestMapping("/employ/banner") +@Slf4j +public class BannerController { + /******************************************************************************************************************/ + //轮播图 + @Resource + private BannerService bannerService; + /******************************************************************************************************************/ + //查看轮播图列表 + @ApiOperation(value="轮播图-查询轮播图列表", notes="0-首页 1-会员中心") + @RequestMapping(value = "/queryBannerList", method = {RequestMethod.GET}) + public Result queryBannerList(String type, PageBean pageBean){ + return bannerService.queryBannerList(type, pageBean); + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/CategoryController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/CategoryController.java new file mode 100644 index 0000000..209b424 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/CategoryController.java @@ -0,0 +1,31 @@ +package org.jeecg.modules.api.employController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.CategoryService; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="首页-分类信息相关接口") +@RestController +@RequestMapping("/employ/category") +@Slf4j +public class CategoryController { + /******************************************************************************************************************/ + //分类信息 + @Resource + private CategoryService categoryService; + /******************************************************************************************************************/ + + @ApiOperation(value="首页-分类信息列表", notes="首页-分类信息列表") + @RequestMapping(value = "/queryCategoryList", method = {RequestMethod.GET}) + public Result queryCategoryList(String pid, PageBean pageBean){ + return categoryService.queryCategoryList(pid, pageBean); + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/ConfigController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/ConfigController.java new file mode 100644 index 0000000..17c5d03 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/ConfigController.java @@ -0,0 +1,37 @@ +package org.jeecg.modules.api.employController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiService.ConfigService; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="配置信息-配置信息相关接口") +@RestController +@RequestMapping("/employ/config") +@Slf4j +public class ConfigController { + /******************************************************************************************************************/ + //配置信息 + @Resource + private ConfigService configService; + /******************************************************************************************************************/ + + @ApiOperation(value="配置信息-获取配置信息列表", notes="配置信息-获取配置信息列表") + @RequestMapping(value = "/queryConfigList", method = {RequestMethod.GET}) + public Result queryConfigList(){ + return configService.queryConfigList(); + } + + @ApiOperation(value="配置信息-根据配置编码获取配置信息", notes="配置信息-根据配置编码获取配置信息") + @RequestMapping(value = "/queryConfigByParamCode", method = {RequestMethod.GET}) + public Result queryConfigByParamCode(String paramCode){ + return configService.queryConfigByParamCode(paramCode); + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/FeedbackController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/FeedbackController.java new file mode 100644 index 0000000..23a4007 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/FeedbackController.java @@ -0,0 +1,33 @@ +package org.jeecg.modules.api.employController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiService.ConfigService; +import org.jeecg.modules.apiService.FeedbackService; +import org.jeecg.modules.employFeedback.entity.EmployFeedback; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="帮助反馈-帮助反馈相关接口") +@RestController +@RequestMapping("/employ/feedback") +@Slf4j +public class FeedbackController { + /******************************************************************************************************************/ + //帮助反馈 + @Resource + private FeedbackService feedbackService; + /******************************************************************************************************************/ + + @ApiOperation(value="帮助反馈-帮助反馈", notes="帮助反馈-帮助反馈") + @RequestMapping(value = "/addFeedback", method = {RequestMethod.POST}) + public Result addFeedback(@RequestHeader("X-Access-Token") String token, EmployFeedback employFeedback){ + return feedbackService.addFeedback(token, employFeedback); + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/JobController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/JobController.java new file mode 100644 index 0000000..79a9d6f --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/JobController.java @@ -0,0 +1,71 @@ +package org.jeecg.modules.api.employController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.FeedbackService; +import org.jeecg.modules.apiService.JobService; +import org.jeecg.modules.employJob.entity.EmployJob; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="工作信息-工作信息相关接口") +@RestController +@RequestMapping("/employ/job") +@Slf4j +public class JobController { + /******************************************************************************************************************/ + //工作信息 + @Resource + private JobService jobService; + /******************************************************************************************************************/ + + //查看工作列表 + @ApiOperation(value="工作信息-查询工作信息列表", notes="工作信息-查询工作信息列表") + @RequestMapping(value = "/queryJobList", method = {RequestMethod.GET}) + public Result queryJobList(EmployJob employJob, PageBean pageBean){ + return jobService.queryJobList(employJob, pageBean); + } + + //工作信息-根据Id查看工作详情 + @ApiOperation(value="工作信息-根据Id查看工作详情", notes="工作信息-根据Id查看工作详情") + @RequestMapping(value = "/queryJobById", method = {RequestMethod.GET}) + public Result queryJobById(@RequestHeader("X-Access-Token")String token, String jobId){ + return jobService.queryJobById(token, jobId); + } + + //工作信息-我的招工 + @ApiOperation(value="工作信息-我的发布", notes="工作信息-我的发布") + @RequestMapping(value = "/queryJobListByUserId", method = {RequestMethod.GET}) + public Result queryJobListByUserId(@RequestHeader("X-Access-Token")String token, PageBean pageBean){ + return jobService.queryJobListByUserId(token, pageBean); + } + + //工作信息-添加工作信息 + @ApiOperation(value="工作信息-添加工作信息", notes="工作信息-添加工作信息") + @RequestMapping(value = "/addJob", method = {RequestMethod.POST}) + public Result addJob(@RequestHeader("X-Access-Token")String token, EmployJob employJob){ + return jobService.addJob(token, employJob); + } + + //工作信息-修改工作信息 + @ApiOperation(value="工作信息-修改工作信息", notes="工作信息-修改工作信息") + @RequestMapping(value = "/updateJob", method = {RequestMethod.POST}) + public Result updateJob(@RequestHeader("X-Access-Token")String token, EmployJob employJob){ + return jobService.updateJob(token, employJob); + } + + //工作信息-删除工作信息 + @ApiOperation(value="工作信息-删除工作信息", notes="工作信息-删除工作信息") + @RequestMapping(value = "/deleteJob", method = {RequestMethod.POST}) + public Result deleteJob(@RequestHeader("X-Access-Token")String token, String jobId){ + return jobService.deleteJob(token, jobId); + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/LoginApiController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/LoginApiController.java new file mode 100644 index 0000000..7bea30d --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/LoginApiController.java @@ -0,0 +1,39 @@ +package org.jeecg.modules.api.employController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiService.JobService; +import org.jeecg.modules.bean.LoginReq; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="小程序-登录相关接口") +@RestController +@RequestMapping("/employ/login") +@Slf4j +public class LoginApiController { + + /******************************************************************************************************************/ + + /******************************************************************************************************************/ + + //小程序-微信授权登录接口 + @ApiOperation(value="小程序-微信授权登录接口", notes="小程序-微信授权登录接口") + @GetMapping("/login") + public Result login(LoginReq loginReq){ + return null; + } + + //绑定手机号码 + @ApiOperation(value="绑定手机号码", notes="绑定手机号码") + @GetMapping(value = "/bindPhone") + public Result bindPhone(String phoneCode){ + return null; + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/NewsController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/NewsController.java new file mode 100644 index 0000000..538c827 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/NewsController.java @@ -0,0 +1,37 @@ +package org.jeecg.modules.api.employController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.NewsService; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="首页-新闻相关接口") +@RestController +@RequestMapping("/employ/news") +@Slf4j +public class NewsController { + /******************************************************************************************************************/ + //新闻信息 + @Resource + private NewsService newsService; + /******************************************************************************************************************/ + + @ApiOperation(value="新闻资讯-获取新闻列表", notes="新闻资讯-获取新闻列表") + @RequestMapping(value = "/queryNewsList", method = {RequestMethod.GET}) + public Result queryNewsList(PageBean pageBean){ + return newsService.queryNewsList(pageBean); + } + + @ApiOperation(value="新闻资讯-根据id获取新闻详情", notes="新闻资讯-根据id获取新闻详情") + @RequestMapping(value = "/queryNewsById", method = {RequestMethod.GET}) + public Result queryNewsById(String newsId){ + return newsService.queryNewsById(newsId); + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/ResumeController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/ResumeController.java new file mode 100644 index 0000000..caba9e2 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/ResumeController.java @@ -0,0 +1,62 @@ +package org.jeecg.modules.api.employController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.NewsService; +import org.jeecg.modules.apiService.ResumeService; +import org.jeecg.modules.employResume.entity.EmployResume; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="简历信息-简历信息相关接口") +@RestController +@RequestMapping("/employ/resume") +@Slf4j +public class ResumeController { + /******************************************************************************************************************/ + //简历信息 + @Resource + private ResumeService resumeService; + /******************************************************************************************************************/ + //查看工作列表 + @ApiOperation(value="简历信息-查询简历信息列表", notes="简历信息-查询简历信息列表") + @RequestMapping(value = "/queryResumeList", method = {RequestMethod.GET}) + public Result queryResumeList(EmployResume employResume, PageBean pageBean){ + return resumeService.queryResumeList(employResume, pageBean); + } + + //首页-根据Id查看工作详情 + @ApiOperation(value="简历信息-根据Id查看简历详情", notes="简历信息-根据Id查看简历详情") + @RequestMapping(value = "/queryResumeById", method = {RequestMethod.GET}) + public Result queryResumeById(@RequestHeader("X-Access-Token")String token, String resumeId){ + return resumeService.queryResumeById(token, resumeId); + } + + //会员中心-我的简历 + @ApiOperation(value="简历信息-我的简历", notes="简历信息-我的简历") + @RequestMapping(value = "/queryResumeByUserId", method = {RequestMethod.GET}) + public Result queryResumeByUserId(@RequestHeader("X-Access-Token") String token){ + return resumeService.queryResumeByUserId(token); + } + + //添加工作信息 + @ApiOperation(value="简历信息-添加简历信息", notes="简历信息-添加简历信息") + @RequestMapping(value = "/addResume", method = {RequestMethod.POST}) + public Result addResume(@RequestHeader("X-Access-Token")String token, EmployResume employResume){ + return resumeService.addResume(token, employResume); + } + + //修改工作信息 + @ApiOperation(value="简历信息-修改简历信息", notes="简历信息-修改简历信息") + @RequestMapping(value = "/updateResume", method = {RequestMethod.POST}) + public Result updateResume(@RequestHeader("X-Access-Token") String token, EmployResume employResume){ + return resumeService.updateResume(token, employResume); + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/UserController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/UserController.java new file mode 100644 index 0000000..fafa0b0 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/UserController.java @@ -0,0 +1,48 @@ +package org.jeecg.modules.api.employController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiService.ResumeService; +import org.jeecg.modules.apiService.UserService; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="个人信息-个人信息相关接口") +@RestController +@RequestMapping("/employ/user") +@Slf4j +public class UserController { + + /******************************************************************************************************************/ + //个人信息 + @Resource + private UserService userService; + /******************************************************************************************************************/ + + @ApiOperation(value="个人信息-查看个人信息", notes="个人信息-查看个人信息") + @RequestMapping(value = "/queryUser", method = {RequestMethod.GET}) + public Result queryUser(@RequestHeader("X-Access-Token") String token){ + return userService.queryUser(token); + } + + //修改个人信息 + @ApiOperation(value="个人信息-修改个人信息", notes="个人信息-修改个人信息") + @RequestMapping(value = "/updateUser", method = {RequestMethod.POST}) + public Result updateUser(@RequestHeader("X-Access-Token") String token, String nickName, String phone, String headImage){ + return userService.updateUser(token, nickName, phone, headImage); + } + + //获取个人中心基础数据信息 + @ApiOperation(value="获取个人中心基础数据信息", notes="获取个人中心基础数据信息") + @RequestMapping(value = "/getUserCenterData", method = {RequestMethod.GET}) + public Result getUserCenterData(@RequestHeader("X-Access-Token") String token){ + return userService.getUserCenterData(token); + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiBean/PageBean.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiBean/PageBean.java new file mode 100644 index 0000000..c4513d2 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiBean/PageBean.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.apiBean; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class PageBean { + /**显示条数*/ + @ApiModelProperty(value = "显示条数" ) + private Integer pageSize; + /**当前页*/ + @ApiModelProperty(value = "当前页" ) + private Integer pageNo; + + public PageBean() { + this.pageNo = 1; + this.pageSize = 1000; + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AmountService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AmountService.java new file mode 100644 index 0000000..accb34d --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AmountService.java @@ -0,0 +1,22 @@ +package org.jeecg.modules.apiService; + +import org.jeecg.common.api.vo.Result; +import org.springframework.web.bind.annotation.RequestHeader; + +public interface AmountService { + + //我的钱包-我的余额 + public Result queryBalance(@RequestHeader("X-Access-Token") String token); + + //我的钱包-累计提现 + public Result CountCashOut(@RequestHeader("X-Access-Token") String token); + + //我的钱包-提现 + public Result CashOut(@RequestHeader("X-Access-Token") String token); + + //我的钱包-充值 + public Result recharge(@RequestHeader("X-Access-Token") String token); + + //我的钱包-金额明细 + public Result amountLog(@RequestHeader("X-Access-Token") String token); +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AuthenticationService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AuthenticationService.java new file mode 100644 index 0000000..3dc6c96 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AuthenticationService.java @@ -0,0 +1,24 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.employAuthenticationCompany.entity.EmployAuthenticationCompany; +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +public interface AuthenticationService { + //实名认证-查询个人实名认证信息 + public Result getAuthenticationPerson(@RequestHeader("X-Access-Token") String token); + + //实名认证-个人实名认证 + public Result addAuthenticationPerson(@RequestHeader("X-Access-Token") String token, EmployAuthenticationPerson employAuthenticationPerson); + + //实名认证-查询企业实名认证信息 + public Result getAuthenticationCompany(@RequestHeader("X-Access-Token") String token); + + //实名认证-企业实名认证 + public Result addAuthenticationCompany(@RequestHeader("X-Access-Token") String token, EmployAuthenticationCompany employAuthenticationCompany); + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/BannerService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/BannerService.java new file mode 100644 index 0000000..6b3c470 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/BannerService.java @@ -0,0 +1,12 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +public interface BannerService { + //轮播图-查询轮播图列表 0-首页 1-会员中心 + public Result queryBannerList(String type, PageBean pageBean); +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/CategoryService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/CategoryService.java new file mode 100644 index 0000000..1ebc413 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/CategoryService.java @@ -0,0 +1,12 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +public interface CategoryService { + //首页-功能模块列表 + public Result queryCategoryList(String pid, PageBean pageBean); +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/ConfigService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/ConfigService.java new file mode 100644 index 0000000..fb1fe50 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/ConfigService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +public interface ConfigService { + //配置信息-获取配置信息列表 + public Result queryConfigList(); + + //配置信息-根据配置编码获取配置信息 + public Result queryConfigByParamCode(String paramCode); +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/FeedbackService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/FeedbackService.java new file mode 100644 index 0000000..11fc9aa --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/FeedbackService.java @@ -0,0 +1,13 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.employFeedback.entity.EmployFeedback; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +public interface FeedbackService { + //帮助反馈-帮助反馈 + public Result addFeedback(@RequestHeader("X-Access-Token") String token, EmployFeedback employFeedback); +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/JobService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/JobService.java new file mode 100644 index 0000000..f2984c4 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/JobService.java @@ -0,0 +1,31 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.employJob.entity.EmployJob; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +public interface JobService { + + //工作信息-查询工作信息列表 + public Result queryJobList(EmployJob employJob, PageBean pageBean); + + //工作信息-根据Id查看工作详情 + public Result queryJobById(@RequestHeader("X-Access-Token")String token, String jobId); + + //工作信息-我的发布 + public Result queryJobListByUserId(@RequestHeader("X-Access-Token")String token, PageBean pageBean); + + //工作信息-添加工作信息 + public Result addJob(@RequestHeader("X-Access-Token")String token, EmployJob employJob); + + //工作信息-修改工作信息 + public Result updateJob(@RequestHeader("X-Access-Token")String token, EmployJob employJob); + + //工作信息-删除工作信息 + public Result deleteJob(@RequestHeader("X-Access-Token")String token, String jobId); + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/LoginApiService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/LoginApiService.java new file mode 100644 index 0000000..aeb05af --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/LoginApiService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.bean.LoginReq; +import org.springframework.web.bind.annotation.GetMapping; + +public interface LoginApiService { + //小程序-微信授权登录接口 + public Result login(LoginReq loginReq); + + //绑定手机号码 + public Result bindPhone(String phoneCode); +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/NewsService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/NewsService.java new file mode 100644 index 0000000..48c5ed0 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/NewsService.java @@ -0,0 +1,15 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +public interface NewsService { + //新闻资讯-获取新闻列表 + public Result queryNewsList(PageBean pageBean); + + //新闻资讯-根据id获取新闻详情 + public Result queryNewsById(String newsId); +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/ResumeService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/ResumeService.java new file mode 100644 index 0000000..57824ee --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/ResumeService.java @@ -0,0 +1,26 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.employResume.entity.EmployResume; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +public interface ResumeService { + //简历信息-查询简历信息列表 + public Result queryResumeList(EmployResume employResume, PageBean pageBean); + + //简历信息-根据Id查看简历详情 + public Result queryResumeById(@RequestHeader("X-Access-Token")String token, String resumeId); + + //简历信息-我的简历 + public Result queryResumeByUserId(@RequestHeader("X-Access-Token") String token); + + //简历信息-添加简历信息 + public Result addResume(@RequestHeader("X-Access-Token")String token, EmployResume employResume); + + //简历信息-修改简历信息 + public Result updateResume(@RequestHeader("X-Access-Token") String token, EmployResume employResume); +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/UserService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/UserService.java new file mode 100644 index 0000000..1fd4e76 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/UserService.java @@ -0,0 +1,18 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +public interface UserService { + //个人信息-查看个人信息 + public Result queryUser(@RequestHeader("X-Access-Token") String token); + + //个人信息-修改个人信息 + public Result updateUser(@RequestHeader("X-Access-Token") String token, String nickName, String phone, String headImage); + + //获取个人中心基础数据信息 + public Result getUserCenterData(String token); +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AmountServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AmountServiceImpl.java new file mode 100644 index 0000000..973e4b2 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AmountServiceImpl.java @@ -0,0 +1,39 @@ +package org.jeecg.modules.apiService.impl; + +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiService.AmountService; +import org.springframework.stereotype.Service; + +@Service +public class AmountServiceImpl implements AmountService { + + //我的钱包-我的余额 + @Override + public Result queryBalance(String token) { + return null; + } + + //我的钱包-累计提现 + @Override + public Result CountCashOut(String token) { + return null; + } + + //我的钱包-提现 + @Override + public Result CashOut(String token) { + return null; + } + + //我的钱包-充值 + @Override + public Result recharge(String token) { + return null; + } + + //我的钱包-金额明细 + @Override + public Result amountLog(String token) { + return null; + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AuthenticationServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AuthenticationServiceImpl.java new file mode 100644 index 0000000..cb238ba --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AuthenticationServiceImpl.java @@ -0,0 +1,140 @@ +package org.jeecg.modules.apiService.impl; + +import org.jeecg.common.api.vo.Result; +import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.apiService.AuthenticationService; +import org.jeecg.modules.employAuthenticationCompany.entity.EmployAuthenticationCompany; +import org.jeecg.modules.employAuthenticationCompany.service.IEmployAuthenticationCompanyService; +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import org.jeecg.modules.employAuthenticationPerson.service.IEmployAuthenticationPersonService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +@Service +public class AuthenticationServiceImpl implements AuthenticationService { + + /******************************************************************************************************************/ + //权限验证 + @Resource + private ShiroRealm shiroRealm; + + @Resource + private IEmployAuthenticationPersonService employAuthenticationPersonService; + + @Resource + private IEmployAuthenticationCompanyService employAuthenticationCompanyService; + /******************************************************************************************************************/ + + //实名认证-查询个人实名认证信息 + @Override + public Result getAuthenticationPerson(String token) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + try{ + EmployAuthenticationPerson one = employAuthenticationPersonService.lambdaQuery() + .eq(EmployAuthenticationPerson::getUserId, hanHaiMember.getId()) + .one(); + return Result.OK("个人实名认证信息", one); + }catch (Exception e){ + e.printStackTrace(); + return Result.OK("个人实名认证信息查询失败"); + } + } + + //实名认证-个人实名认证 + @Override + public Result addAuthenticationPerson(String token, EmployAuthenticationPerson employAuthenticationPerson) { + String message = ""; + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + try{ + //查询实名认证信息 + EmployAuthenticationPerson one = employAuthenticationPersonService.lambdaQuery() + .eq(EmployAuthenticationPerson::getUserId, hanHaiMember.getId()) + .one(); + + //判断用户是否已实名认证通过 + EmployAuthenticationPerson authentication = employAuthenticationPersonService.lambdaQuery() + .eq(EmployAuthenticationPerson::getStatus, "1") + .one(); + + if(null != authentication){ + return Result.error("该用户已认证通过,不能重复认证!"); + } + + //如果存在则修改信息 + if(null != one){ + if(!"1".equals(one.getStatus())){ + employAuthenticationPerson.setId(one.getId()); + employAuthenticationPerson.setStatus("0"); + employAuthenticationPersonService.updateById(employAuthenticationPerson); + message = "个人实名修改成功!"; + }else { + message = "审核已通过,不能修改!"; + } + }else { + employAuthenticationPerson.setUserId(hanHaiMember.getId()); + boolean result = employAuthenticationPersonService.save(employAuthenticationPerson); + message = "个人实名添加成功!"; + } + return Result.OK(message); + }catch (Exception e){ + e.printStackTrace(); + return Result.error(message); + } + } + + + //实名认证-查询企业实名认证信息 + @Override + public Result getAuthenticationCompany(String token) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + try{ + EmployAuthenticationCompany one = employAuthenticationCompanyService.lambdaQuery() + .eq(EmployAuthenticationCompany::getUserId, hanHaiMember.getId()) + .one(); + return Result.OK("企业实名认证信息", one); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("企业实名认证信息查询失败"); + } + } + + //实名认证-企业实名认证 + @Override + public Result addAuthenticationCompany(String token, EmployAuthenticationCompany employAuthenticationCompany) { + String message = "企业实名认证操作失败"; + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + try{ + EmployAuthenticationCompany one = employAuthenticationCompanyService.lambdaQuery() + .eq(EmployAuthenticationCompany::getUserId, hanHaiMember.getId()) + .one(); + //如果存在则修改信息 + if(null != one){ + if(!"1".equals(one.getStatus())){ + employAuthenticationCompany.setId(one.getId()); + employAuthenticationCompany.setStatus("0"); + employAuthenticationCompanyService.updateById(employAuthenticationCompany); + message = "企业实名修改成功!"; + }else { + message = "审核已通过,不能修改!"; + } + }else { + employAuthenticationCompany.setUserId(hanHaiMember.getId()); + boolean result = employAuthenticationCompanyService.save(employAuthenticationCompany); + message = "企业实名添加成功!"; + } + return Result.OK(message); + }catch (Exception e){ + e.printStackTrace(); + return Result.error(message); + } + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/BannerServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/BannerServiceImpl.java new file mode 100644 index 0000000..80aaf05 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/BannerServiceImpl.java @@ -0,0 +1,71 @@ +package org.jeecg.modules.apiService.impl; + +import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.jeecg.common.api.vo.Result; +import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.BannerService; +import org.jeecg.modules.employBanner.entity.EmployBanner; +import org.jeecg.modules.employBanner.service.IEmployBannerService; +import org.jeecg.modules.employJob.entity.EmployJob; +import org.jeecg.modules.employJob.service.IEmployJobService; +import org.jeecg.modules.employNews.entity.EmployNews; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +@Service +public class BannerServiceImpl implements BannerService { + /******************************************************************************************************************/ + //轮播图 + @Resource + private IEmployBannerService employBannerService; + /******************************************************************************************************************/ + + //轮播图-查询轮播图列表 0-首页 1-会员中心 + @Override + public Result queryBannerList(String type, PageBean pageBean) { + //返回信息 + String message = "获取轮播图信息列表失败!"; + //工作信息列表 + Page pageList = null; + //分页信息 + Page page = null; + + try{ + //分页 + page = new Page(pageBean.getPageNo(), pageBean.getPageSize()); + LambdaQueryChainWrapper query = employBannerService.lambdaQuery(); + + //组装查询条件 + if(null != type){ + //轮播图类型 + query.eq(EmployBanner::getType, type); + } + //按时间倒序 + query.orderByDesc(EmployBanner::getCreateTime); + + + //获取工作信息列表 + pageList = query.page(page); + + //判断执行结果 + if(null != pageList){ + message = "轮播图列表信息"; + }else { + message = "轮播图列表信息为空"; + } + + //返回执行结果 + return Result.OK(message, pageList); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message, pageList); + } + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/CategoryServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/CategoryServiceImpl.java new file mode 100644 index 0000000..1f9491f --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/CategoryServiceImpl.java @@ -0,0 +1,111 @@ +package org.jeecg.modules.apiService.impl; + +import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.CategoryService; +import org.jeecg.modules.employBanner.entity.EmployBanner; +import org.jeecg.modules.employBanner.service.IEmployBannerService; +import org.jeecg.modules.employCategory.entity.EmployCategory; +import org.jeecg.modules.employCategory.service.IEmployCategoryService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class CategoryServiceImpl implements CategoryService { + /******************************************************************************************************************/ + //分类信息 + @Resource + private IEmployCategoryService employCategoryService; + /******************************************************************************************************************/ + + //首页-分类列表 + @Override + public Result queryCategoryList(String categoryOneId, PageBean pageBean) { + //返回信息 + String message = "商品分类列表查询失败!"; + + try{ + //一级分类列表 + List carrentCategoryoneList = getCatogoryoneList(categoryOneId); + //二级分类列表 + for (EmployCategory category : carrentCategoryoneList) { + List employCategorytwoList = getCatogoryTwoList(category.getId()); + category.setEmployCategoryList(employCategorytwoList); + } + message = "商品分类列表信息"; + + return Result.OK(message, carrentCategoryoneList); + + }catch (Exception e){ + e.printStackTrace(); + return Result.error(message); + } + } + + //获取分类信息列表 + public List getCatogoryoneList(String categoryOneId) { + //返回信息 + String message = "商品分类信息列表查询失败!"; + + try{ + LambdaQueryChainWrapper query = employCategoryService + .lambdaQuery(); + //组装查询条件 + if(null != categoryOneId){ + query.eq(EmployCategory::getId, categoryOneId); + }else { + //如果一级分类id为空,则查询所有一级分类 + EmployCategory category = employCategoryService + .lambdaQuery() + .isNull(EmployCategory::getPid) + .one(); + query.eq(EmployCategory::getPid, category.getId()); + } + + //获取分类列表 + List pageList = query.list(); + + //返回执行结果 + return pageList; + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return null; + } + + } + + //获取二级分类列表信息 + public List getCatogoryTwoList(String categoryoneId) { + //返回信息 + String message = "商品二级分类列表查询失败!"; + + try{ + //获取商品二级分类列表 + List pageList = employCategoryService + .lambdaQuery() + .eq(EmployCategory::getPid, categoryoneId) + .list(); + + //判断执行结果 + if(null != pageList){ + message = "商品二级分类列表信息"; + }else { + message = "商品二级分类列表为空"; + } + + //返回执行结果 + return pageList; + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return null; + } + + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ConfigServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ConfigServiceImpl.java new file mode 100644 index 0000000..433ebb0 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ConfigServiceImpl.java @@ -0,0 +1,52 @@ +package org.jeecg.modules.apiService.impl; + +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiService.ConfigService; +import org.jeecg.modules.employCategory.service.IEmployCategoryService; +import org.jeecg.modules.employConfig.entity.EmployConfig; +import org.jeecg.modules.employConfig.service.IEmployConfigService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class ConfigServiceImpl implements ConfigService { + /******************************************************************************************************************/ + //分类信息 + @Resource + private IEmployConfigService employConfigService; + /******************************************************************************************************************/ + + //配置信息-获取配置信息列表 + @Override + public Result queryConfigList() { + try{ + //获取收藏列表 + List pageList = employConfigService + .lambdaQuery() + .list(); + + return Result.OK("配置信息列表", pageList); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("配置信息列表查询失败"); + } + } + + //配置信息-根据配置编码获取配置信息 + @Override + public Result queryConfigByParamCode(String paramCode) { + try{ + EmployConfig one = employConfigService + .lambdaQuery() + .eq(EmployConfig::getParamCode, paramCode) + .one(); + + return Result.OK("配置信息详情", one); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("配置信息详情查询失败"); + } + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/FeedbackServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/FeedbackServiceImpl.java new file mode 100644 index 0000000..54399fb --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/FeedbackServiceImpl.java @@ -0,0 +1,54 @@ +package org.jeecg.modules.apiService.impl; + +import org.jeecg.common.api.vo.Result; +import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.apiService.BannerService; +import org.jeecg.modules.apiService.FeedbackService; +import org.jeecg.modules.employFeedback.entity.EmployFeedback; +import org.jeecg.modules.employFeedback.service.IEmployFeedbackService; +import org.jeecg.modules.employJob.service.IEmployJobService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +@Service +public class FeedbackServiceImpl implements FeedbackService { + /******************************************************************************************************************/ + //权限验证 + @Resource + private ShiroRealm shiroRealm; + + @Resource + private IEmployFeedbackService employFeedbackService; + + @Resource + private IHanHaiMemberService hanHaiMemberService; + /******************************************************************************************************************/ + + //帮助反馈-帮助反馈 + @Override + public Result addFeedback(String token, EmployFeedback employFeedback) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + String message = "技工问题添加失败!"; + + try{ + employFeedback.setUserId(hanHaiMember.getId()); + boolean result = employFeedbackService.save(employFeedback); + + if(result){ + message = "技工问题添加成功!"; + }else { + message = "技工问题添加失败!"; + } + + return Result.OK(message); + }catch (Exception e){ + e.printStackTrace(); + return Result.error(message); + } + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/JobServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/JobServiceImpl.java new file mode 100644 index 0000000..4657067 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/JobServiceImpl.java @@ -0,0 +1,248 @@ +package org.jeecg.modules.apiService.impl; + +import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.jeecg.common.api.vo.Result; +import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.JobService; +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import org.jeecg.modules.employJob.entity.EmployJob; +import org.jeecg.modules.employJob.service.IEmployJobService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Service +public class JobServiceImpl implements JobService { + + /******************************************************************************************************************/ + //权限验证 + @Resource + private ShiroRealm shiroRealm; + + @Resource + private IEmployJobService employJobService; + + @Resource + private IHanHaiMemberService hanHaiMemberService; + /******************************************************************************************************************/ + + //工作信息-查询工作信息列表 + @Override + public Result queryJobList(EmployJob employJob, PageBean pageBean) { + //返回信息 + String message = "获取工作信息列表失败!"; + //工作信息列表 + Page pageList = null; + //分页信息 + Page page = null; + + try{ + //分页 + page = new Page(pageBean.getPageNo(), pageBean.getPageSize()); + LambdaQueryChainWrapper query = employJobService.lambdaQuery(); + + //组装查询条件 + if(null != employJob.getCategoryOne()){ + //工作地域 + query.eq(EmployJob::getCategoryOne, employJob.getCategoryOne()); + } + //按时间倒序 + query.orderByDesc(EmployJob::getCreateTime); + + + //获取工作信息列表 + pageList = query.page(page); + + //判断执行结果 + if(null != pageList){ + message = "工作列表信息"; + }else { + message = "工作列表信息为空"; + } + + //返回执行结果 + return Result.OK(message, pageList); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message, pageList); + } + } + + //工作信息-根据Id查看工作详情 + @Override + public Result queryJobById(String token, String jobId) { + + //返回信息 + EmployJob job = null; + + try{ + //1、查看工作详情信息 + job = employJobService.getById(jobId); + + return Result.OK("工作详情", job); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("工作详情获取失败", job); + } + } + + //工作信息-我的发布 + @Override + public Result queryJobListByUserId(String token, PageBean pageBean) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + try{ + //查询我的招工列表信息 + Page page = new Page(pageBean.getPageNo(), pageBean.getPageSize()); + Page pageList = employJobService + .lambdaQuery() + .eq(EmployJob::getUserId, hanHaiMember.getId()) + .page(page); + + return Result.OK("我的招工", pageList); + }catch (Exception e){ + e.printStackTrace(); + return Result.OK("我的招工列表查询失败"); + } + } + + //工作信息-添加工作信息 + @Override + public Result addJob(String token, EmployJob employJob) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + employJob.setUserId(hanHaiMember.getId()); + //返回信息 + String message = "工作信息添加失败"; + //执行结果 + boolean result = false; + + try{ +// //1、判断用户是否通过个人实名认证企业信息,没有通过实名认证信息则不能发布工作岗位信息 +// EmployAuthenticationPerson authenticationPerson = employAuthenticationPersonService +// .lambdaQuery() +// .eq(EmployAuthenticationPerson::getUserId, hanHaiMember.getId()) +// .eq(EmployAuthenticationPerson::getStatus, "1") +// .one(); +// if(null == authenticationPerson){ +// return Result.error("未进行个人实名认证或个人实名认证审核未通过,请先去进行个人实名认证"); +// } +// +// //2、判断用户是否通过企业实名认证信息,没有通过实名认证信息则不能发布工作岗位信息 +// EmployAhthenticationCompany ahthenticationCompany = employAhthenticationCompanyService +// .lambdaQuery() +// .eq(EmployAhthenticationCompany::getUserId, hanHaiMember.getId()) +// .eq(EmployAhthenticationCompany::getStatus, "1") +// .one(); +// if(null == ahthenticationCompany){ +// return Result.error("未进行企业实名认证或企业实名认证审核未通过,请先去进行企业实名认证"); +// }else { +// //查询企业信息 +// EmployCompany company = employCompanyService +// .lambdaQuery() +// .eq(EmployCompany::getSocialCode, ahthenticationCompany.getSocialCode()) +// .one(); +// if(null != company){ +// employJob.setCompany(company.getId());//工作信息关联公司 +// if(null == employJob.getWorkAddress()){ +// employJob.setWorkAddress(company.getAddress());//如果没有填写工作地址,则默认为公司地址 +// } +// }else { +// return Result.error("未查询到企业信息,工作发布失败"); +// } +// +// } + + //3、执行工作信息添加 + result = employJobService.save(employJob); + + //判断执行结果 + if(result){ + message = "工作信息添加成功!"; + }else { + message = "工作信息添加失败!"; + } + + //4、返回执行结果 + return Result.OK(message); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message); + } + } + + //工作信息-修改工作信息 + @Override + public Result updateJob(String token, EmployJob employJob) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //返回信息 + String message = "工作信息修改失败"; + //执行结果 + boolean result = false; + + try{ + //执行工作信息修改 + result = employJobService.updateById(employJob); + + //判断执行结果 + if(result){ + message = "工作信息修改成功!"; + }else { + message = "工作信息修改失败!"; + } + + //返回执行结果 + return Result.OK(message); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message); + } + } + + //工作信息-删除工作信息 + @Override + public Result deleteJob(String token, String jobId) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //返回信息 + String message = "工作信息删除失败"; + //执行结果 + boolean result = false; + + try{ + //执行工作信息删除 + result = employJobService.removeById(jobId); + + //判断执行结果 + if(result){ + message = "工作信息删除成功!"; + }else { + message = "工作信息删除失败!"; + } + + //返回执行结果 + return Result.OK(message); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message); + } + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/LoginApiServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/LoginApiServiceImpl.java new file mode 100644 index 0000000..a84c4b6 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/LoginApiServiceImpl.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.apiService.impl; + +import com.alibaba.fastjson.JSONObject; +import org.apache.commons.lang3.StringUtils; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.constant.CommonConstant; +import org.jeecg.common.exception.JeecgBootException; +import org.jeecg.common.system.util.JwtUtil; +import org.jeecg.common.util.RedisUtil; +import org.jeecg.modules.apiService.LoginApiService; +import org.jeecg.modules.bean.HttpConf; +import org.jeecg.modules.bean.LoginReq; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.io.BufferedReader; +import java.io.DataOutputStream; +import java.io.InputStreamReader; +import java.net.HttpURLConnection; +import java.net.URL; +import java.nio.charset.StandardCharsets; +import java.util.HashMap; +import java.util.Map; + +@Service +public class LoginApiServiceImpl implements LoginApiService { + + /******************************************************************************************************************/ + //微信小程序appid(智选猎头) + private static final String mpAppId = "wx6931d85f7371b032"; + //微信小程序appSecret(智选猎头) + private static final String mpAppSecret = "4bc2d5bdfec7023818ece6ee41613f18"; + + @Resource + private RedisUtil redisUtil; + + @Resource + private IHanHaiMemberService hanHaiMemberService; + + @Resource + private HttpConf httpConf; + /******************************************************************************************************************/ + + + //小程序-微信授权登录接口 + @Override + public Result login(LoginReq loginReq) { + Result result = new Result<>(); + Map map = new HashMap<>(); + if (StringUtils.isBlank(loginReq.getCode())) { + throw new JeecgBootException("小程序code为空"); + } + String loginUrl = "https://api.weixin.qq.com/sns/jscode2session?appid=" + mpAppId + "&secret=" + mpAppSecret+ "&js_code=" + loginReq.getCode() + "&grant_type=authorization_code"; + //使用工具类 + JSONObject json_test = httpConf.getJSONObject(loginUrl); + String wxOpenid = json_test.getString("openid"); + String sessionKey = json_test.getString("session_key"); + if (StringUtils.isBlank(wxOpenid)) { + throw new JeecgBootException("未获取到openid"); + } + + HanHaiMember member = hanHaiMemberService.lambdaQuery().eq(HanHaiMember::getAppletOpenid,wxOpenid).one(); + if (member == null) { + //如果user等于null说明该用户第一次登录,数据库没有该用户信息。 + loginReq.setOpenid(wxOpenid); + loginReq.setSession_key(sessionKey); + member = new HanHaiMember(); +// member.setSesssionKey(sessionKey); + member.setAppletOpenid(wxOpenid); + member.setNickName(loginReq.getNickName()); + member.setHeadImage(loginReq.getHeadimgurl()); + // 生成token返回给小程序端 + String token = JwtUtil.sign(member.getAppletOpenid(), wxOpenid); + hanHaiMemberService.save(member); + redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token); + // 设置超时时间 + redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, JwtUtil.EXPIRE_TIME / 100); + map.put("userInfo", member); + map.put("token", token); + + result.setCode(200); + result.setResult(map); + return result; + } else { +// member.setHeadImage(loginReq.getHeadimgurl()); +// member.setSessionKey(sessionKey); +// memberService.saveOrUpdate(member); + // 生成token返回给小程序端 + String token = JwtUtil.sign(member.getAppletOpenid(), wxOpenid); + redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token); + // 设置超时时间 + redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, JwtUtil.EXPIRE_TIME / 100); + map.put("userInfo", member); + map.put("token", token); + //用户id做im账号 + result.setResult(map); + result.setCode(200); +// result.setMessage(member.getNickName()+"已于"+member.getCreateTime()+"注册成功!请勿重复注册!"); +// // 未绑定手机号,跳转授权绑定手机号 +// if (StringUtils.isBlank(member.getPhone())) { +// result.setMessage("该微信用户尚未绑定手机号,请授权手机进行绑定"); +// result.setCode(905); +// result.setResult(map); +// return result; +// } + } + return result; + } + + //绑定手机号码 + @Override + public Result bindPhone(String phoneCode) { + try { + String phoneNumber = this.getPhoneNumber(phoneCode); + return Result.OK(phoneNumber); + }catch (Exception e){ + return Result.error(e.getMessage()); + } + } + + private static final String API_URL = "https://api.weixin.qq.com/wxa/business/getuserphonenumber"; + public String getPhoneNumber(String code) throws Exception { + URL url = new URL(API_URL + "?access_token=" + this.getAccessToken()); + HttpURLConnection conn = (HttpURLConnection) url.openConnection(); + conn.setRequestMethod("POST"); + conn.setRequestProperty("Content-Type", "application/json; utf-8"); + conn.setRequestProperty("Accept", "application/json"); + conn.setDoOutput(true); + + JSONObject jsonInput = new JSONObject(); + jsonInput.put("code", code); + + try (DataOutputStream os = new DataOutputStream(conn.getOutputStream())) { + byte[] input = jsonInput.toString().getBytes(StandardCharsets.UTF_8); + os.write(input, 0, input.length); + } + + try (BufferedReader br = new BufferedReader( + new InputStreamReader(conn.getInputStream(), StandardCharsets.UTF_8))) { + StringBuilder response = new StringBuilder(); + String responseLine; + while ((responseLine = br.readLine()) != null) { + response.append(responseLine.trim()); + } + //获取手机号码 + return response.toString(); + } + } + + private static final String TOKEN_URL = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s"; + public String getAccessToken() throws Exception { + String requestUrl = String.format(TOKEN_URL, mpAppId, mpAppSecret); + URL url = new URL(requestUrl); + HttpURLConnection conn = (HttpURLConnection) url.openConnection(); + conn.setRequestMethod("GET"); + + try (BufferedReader br = new BufferedReader( + new InputStreamReader(conn.getInputStream(), "UTF-8"))) { + StringBuilder response = new StringBuilder(); + String responseLine; + while ((responseLine = br.readLine()) != null) { + response.append(responseLine.trim()); + } + + org.json.JSONObject jsonResponse = new org.json.JSONObject(response.toString()); + return jsonResponse.getString("access_token"); + } + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/NewsServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/NewsServiceImpl.java new file mode 100644 index 0000000..1f2d4d3 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/NewsServiceImpl.java @@ -0,0 +1,91 @@ +package org.jeecg.modules.apiService.impl; + +import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.NewsService; +import org.jeecg.modules.employBanner.entity.EmployBanner; +import org.jeecg.modules.employBanner.service.IEmployBannerService; +import org.jeecg.modules.employNews.entity.EmployNews; +import org.jeecg.modules.employNews.service.IEmployNewsService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +@Service +public class NewsServiceImpl implements NewsService { + /******************************************************************************************************************/ + //轮播图 + @Resource + private IEmployNewsService employNewsService; + /******************************************************************************************************************/ + + //新闻资讯-获取新闻列表 + @Override + public Result queryNewsList(PageBean pageBean) { + //返回信息 + String message = "获取新闻信息列表失败!"; + //工作信息列表 + Page pageList = null; + //分页信息 + Page page = null; + + try{ + //分页 + page = new Page(pageBean.getPageNo(), pageBean.getPageSize()); + LambdaQueryChainWrapper query = employNewsService.lambdaQuery(); + + //按时间倒序 + query.orderByDesc(EmployNews::getCreateTime); + + + //获取工作信息列表 + pageList = query.page(page); + + //判断执行结果 + if(null != pageList){ + message = "新闻信息列表信息"; + }else { + message = "新闻信息列表信息为空"; + } + + //返回执行结果 + return Result.OK(message, pageList); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message, pageList); + } + } + + //新闻资讯-根据id获取新闻详情 + @Override + public Result queryNewsById(String newsId) { + //返回信息 + String message = "新闻详情查询失败!"; + //新闻详情 + EmployNews one = null; + + try{ + //获取新闻详情 + one = employNewsService.getById(newsId); + + //判断执行结果 + if(null != one){ + message = "新闻详情信息"; + }else { + message = "新闻详情为空"; + } + + //返回执行结果 + return Result.OK(message, one); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message, one); + } + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ResumeServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ResumeServiceImpl.java new file mode 100644 index 0000000..2fdc3de --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ResumeServiceImpl.java @@ -0,0 +1,205 @@ +package org.jeecg.modules.apiService.impl; + +import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.jeecg.common.api.vo.Result; +import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.ResumeService; +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import org.jeecg.modules.employJob.service.IEmployJobService; +import org.jeecg.modules.employResume.entity.EmployResume; +import org.jeecg.modules.employResume.service.IEmployResumeService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Service +public class ResumeServiceImpl implements ResumeService { + /******************************************************************************************************************/ + //权限验证 + @Resource + private ShiroRealm shiroRealm; + + @Resource + private IEmployResumeService employResumeService; + + @Resource + private IHanHaiMemberService hanHaiMemberService; + /******************************************************************************************************************/ + + //简历信息-查询简历信息列表 + @Override + public Result queryResumeList(EmployResume employResume, PageBean pageBean) { + //返回信息 + String message = "获取简历信息列表失败!"; + //简历信息列表 + Page pageList = null; + //分页信息 + Page page = null; + + try{ + //分页 + page = new Page(pageBean.getPageNo(), pageBean.getPageSize()); + LambdaQueryChainWrapper query = employResumeService.lambdaQuery(); + + //组装查询条件 + if(null != employResume.getCategoryOne()){ + //一级分类 + query.eq(EmployResume::getCategoryOne, employResume.getCategoryOne()); + } + if(null != employResume.getCategoryTwo()){ + //二级分类 + query.eq(EmployResume::getCategoryTwo, employResume.getCategoryTwo()); + } + //按时间倒序 + query.orderByDesc(EmployResume::getCreateTime); + + + //获取简历信息列表 + pageList = query.page(page); + + //判断执行结果 + if(null != pageList){ + message = "简历列表信息"; + }else { + message = "简历列表信息为空"; + } + + //返回执行结果 + return Result.OK(message, pageList); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message, pageList); + } + } + + //简历信息-根据Id查看简历详情 + @Override + public Result queryResumeById(String token, String resumeId) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + EmployResume resume = null; + try{ + //1、获取简历详情 + resume = employResumeService.getById(resumeId); + + return Result.OK("简历详情", resume); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("简历详情查询失败", resume); + } + } + + //简历信息-我的简历 + @Override + public Result queryResumeByUserId(String token) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + EmployResume resume = null; + + try{ + resume = employResumeService + .lambdaQuery() + .eq(EmployResume::getUserId, hanHaiMember.getId()) + .one(); + + return Result.OK("我的简历", resume); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("我的简历信息获取失败", resume); + } + } + + //简历信息-添加简历信息 + @Override + public Result addResume(String token, EmployResume employResume) { + //返回信息 + String message = "简历信息添加失败"; + //执行结果 + boolean result = false; + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + employResume.setUserId(hanHaiMember.getId()); + + try{ +// //判断用户是否通过个人实名认证企业信息,没有通过实名认证信息则不能发布简历信息 +// EmployAuthenticationPerson authenticationPerson = employAuthenticationPersonService +// .lambdaQuery() +// .eq(EmployAuthenticationPerson::getUserId, hanHaiMember.getId()) +// .eq(EmployAuthenticationPerson::getStatus, "1") +// .one(); +// if(null == authenticationPerson){ +// return Result.error("未进行个人实名认证或个人实名认证审核未通过,请先去进行个人实名认证"); +// } + + //查询是用户是否存在简历,存在则进行修改,不存在则进行新增 + EmployResume resume = employResumeService + .lambdaQuery() + .eq(EmployResume::getUserId, hanHaiMember.getId()) + .one(); + + if(null == resume){ + //执行新增 + result = employResumeService.save(employResume); + }else { + //执行修改 + employResume.setUserId(hanHaiMember.getId()); + result = employResumeService.updateById(employResume); + } + + //判断执行结果 + if(result){ + message = "操作成功!"; + }else { + message = "操作失败!"; + } + + //返回执行结果 + return Result.OK(message); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message); + } + } + + //简历信息-修改简历信息 + @Override + public Result updateResume(String token, EmployResume employResume) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //返回信息 + String message = "简历信息修改失败"; + //执行结果 + boolean result = false; + + try{ + //执行简历信息修改 + result = employResumeService.updateById(employResume); + + //判断执行结果 + if(result){ + message = "简历信息修改成功!"; + }else { + message = "简历信息修改失败!"; + } + + //返回执行结果 + return Result.OK(message); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message); + } + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/UserServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/UserServiceImpl.java new file mode 100644 index 0000000..483d5e3 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/UserServiceImpl.java @@ -0,0 +1,122 @@ +package org.jeecg.modules.apiService.impl; + +import org.apache.commons.lang.StringUtils; +import org.jeecg.common.api.vo.Result; +import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.apiService.UserService; +import org.jeecg.modules.employAuthenticationCompany.entity.EmployAuthenticationCompany; +import org.jeecg.modules.employAuthenticationCompany.service.IEmployAuthenticationCompanyService; +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import org.jeecg.modules.employAuthenticationPerson.service.IEmployAuthenticationPersonService; +import org.jeecg.modules.employJob.service.IEmployJobService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.HashMap; +import java.util.Map; + +@Service +public class UserServiceImpl implements UserService { + /******************************************************************************************************************/ + //权限验证 + @Resource + private ShiroRealm shiroRealm; + + //用户信息 + @Resource + private IHanHaiMemberService hanHaiMemberService; + + //个人实名信息 + @Resource + private IEmployAuthenticationPersonService employAuthenticationPersonService; + + //企业实名信息 + @Resource + private IEmployAuthenticationCompanyService employAuthenticationCompanyService; + /******************************************************************************************************************/ + + //个人信息-查看个人信息 + @Override + public Result queryUser(String token) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + try{ + HanHaiMember byId = hanHaiMemberService.getById(hanHaiMember.getId()); + return Result.OK(byId); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("用户信息获取失败", null); + } + } + + //个人信息-修改个人信息 + @Override + public Result updateUser(String token, String nickName, String phone, String headImage) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + try{ + //用户昵称不能为空 + if(StringUtils.isBlank(nickName)){ + return Result.error("用户昵称不能为空"); + } + if(StringUtils.isBlank(headImage)){ + return Result.error("头像不能为空"); + } + + hanHaiMember.setNickName(nickName); + hanHaiMember.setPhone(phone); + hanHaiMember.setHeadImage(headImage); + hanHaiMemberService.updateById(hanHaiMember); + + return Result.OK("修改成功"); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("修改失败"); + } + } + + //获取个人中心基础数据信息 + @Override + public Result getUserCenterData(String token){ + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + //返回信息 + Map map = new HashMap(); + + try{ + //获取个人实名信息 + EmployAuthenticationPerson ahthenticationPerson = employAuthenticationPersonService + .lambdaQuery() + .eq(EmployAuthenticationPerson::getUserId, hanHaiMember.getId()) + .one(); + + //获取企业实名信息 + EmployAuthenticationCompany ahthenticationCompany = employAuthenticationCompanyService + .lambdaQuery() + .eq(EmployAuthenticationCompany::getUserId, hanHaiMember.getId()) + .one(); + + //组装个人基础数据 + map.put("amount",hanHaiMember.getPrice());//余额 + if(null != ahthenticationPerson){ + map.put("personAuthenticationStatus",ahthenticationPerson.getStatus());//个人实名状态 + }else { + map.put("personAuthenticationStatus","-1");//个人实名状态 + } + if(null != ahthenticationCompany){ + map.put("companyAuthenticationStatus",ahthenticationCompany.getStatus());//企业实名状态 + }else { + map.put("companyAuthenticationStatus","-1");//企业实名状态 + } + return Result.OK("获取个人中心基础数据信息",map); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("获取个人中心基础数据信息失败",map); + } + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java index 7dbb082..fac4cf2 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java @@ -144,6 +144,23 @@ public class SysBaseApiImpl implements ISysBaseAPI { return user; } + /** + * 公共验证--根据账号查询验证用户信息-客户端 + * @param username + * @return + * */ + @Override + public HanHaiMember getUserByNameHanHaiXcxOpenId(String username){ + if(oConvertUtils.isEmpty(username)) { + return null; + } + HanHaiMember user = hanHaiMemberService.lambdaQuery().eq(HanHaiMember::getAppletOpenid,username).one(); + if(user==null) { + return null; + } + return user; + } + @Override public String translateDictFromTable(String table, String text, String code, String key) {