From 1d913c9a4f172044077deae3f4d72bf219f0e9f0 Mon Sep 17 00:00:00 2001 From: xiaoning <1097449274@qq.com> Date: Wed, 24 Dec 2025 14:05:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/xluobo/BusinessServerApplication.java | 14 +- .../business/enums/BusinessTableEnums.java | 4 +- .../dashboard/service/DashboardService.java | 15 +- .../base/controller/ScSchoolController.java | 89 -- .../sc/base/domain/req/ReqRoomSelect.java | 1 + .../sc/base/domain/req/ReqSearchScRoom.java | 8 + .../sc/base/repo/mapper/ScSchoolMapper.java | 27 - .../sc/base/repo/mapping/ScRoomMapper.xml | 4 +- .../sc/base/repo/mapping/ScSchoolMapper.xml | 19 - .../business/sc/base/repo/model/ScRoom.java | 3 + .../business/sc/base/repo/model/ScSchool.java | 79 -- .../base/service/BusinessScRoomService.java | 2 + .../base/service/BusinessScSchoolService.java | 134 --- .../sc/base/service/IScSchoolService.java | 34 - .../service/impl/ScSchoolServiceImpl.java | 48 - .../domain/req/course/ReqAddScCourse.java | 5 + .../domain/req/time/ReqClaTimeCount.java | 6 + .../domain/req/time/ReqSearchClaTime.java | 5 +- .../domain/resp/course/RespSearchCourse.java | 3 + .../repo/mapper/ScClaTimeAttendMapper.java | 17 +- .../sc/course/repo/mapper/ScCourseMapper.java | 5 +- .../repo/mapping/ScClaTimeAttendMapper.xml | 4 + .../course/repo/mapping/ScClaTimeMapper.xml | 11 +- .../repo/mapping/ScClaTimeRuleMapper.xml | 12 +- .../course/repo/mapping/ScCourseClaMapper.xml | 6 +- .../sc/course/repo/mapping/ScCourseMapper.xml | 5 +- .../sc/course/repo/model/ScCourse.java | 8 + .../service/BusinessClaTimeService.java | 2 +- .../service/BusinessScCourseClaService.java | 9 +- .../service/BusinessScCourseService.java | 7 +- .../service/BusinessScCourseTypeService.java | 1 + .../impl/ScClaTimeAttendServiceImpl.java | 9 +- .../sc/order/repo/mapper/ScOrderMapper.java | 2 +- .../sc/order/repo/mapping/ScOrderMapper.xml | 5 +- .../order/service/BusinessScOrderService.java | 8 +- .../service/impl/ScOrderServiceImpl.java | 4 +- .../ScCommissionPlansController.java | 5 +- .../salary/repo/model/ScCommissionPlans.java | 8 +- .../ScStudentAccountController.java | 11 +- .../controller/ScStudentCourseController.java | 16 +- .../domain/req/ReqSearchStuCourseSignUp.java | 7 + .../student/domain/req/ReqStudentSelect.java | 1 + .../domain/resp/RespSearchStudent.java | 3 - .../resp/RespStuCourseSignUpStudent.java | 3 + .../repo/mapper/ScStudentCourseMapper.java | 4 +- .../repo/mapping/ScStudentCourseMapper.xml | 6 +- .../student/repo/mapping/ScStudentMapper.xml | 6 +- .../sc/student/repo/model/ScStudent.java | 3 +- .../BusinessScStudentCourseService.java | 31 +- .../service/BusinessScStudentService.java | 55 +- .../impl/ScStudentCourseServiceImpl.java | 5 +- .../service/impl/ScStudentServiceImpl.java | 2 + .../admin/controller/ISysDeptController.java | 50 +- .../business/sys/admin/model/SysUserDept.java | 35 - .../admin/repo/mapper/ISysUserDeptMapper.java | 16 - .../admin/repo/mapping/ISysUserDeptMapper.xml | 5 - .../admin/service/BusinessSysDeptService.java | 121 +-- .../admin/service/ISysUserDeptService.java | 16 - .../service/impl/ISysUserDeptServiceImpl.java | 20 - .../BusinessSysReceiptAccountService.java | 2 + .../impl/SysReceiptAccountServiceImpl.java | 2 + .../staff/controller/SysStaffController.java | 62 +- .../staff/domain/req/ReqBusinessAddStaff.java | 65 -- .../sys/staff/domain/req/ReqSearchStaff.java | 19 - .../domain/resp/RespBusinessStaffDetail.java | 34 - .../sys/staff/domain/resp/RespStaffInfo.java | 21 - .../sys/staff/repo/mapper/SysStaffMapper.java | 38 - .../sys/staff/repo/mapping/SysStaffMapper.xml | 32 - .../sys/staff/repo/model/SysStaff.java | 134 --- .../service/BusinessSysStaffService.java | 384 -------- .../sys/staff/service/ISysStaffService.java | 46 - .../service/impl/SysStaffServiceImpl.java | 77 -- .../listener/ImportStudentOrderListener.java | 45 +- .../strategy/impl/ImportCourseClaImpl.java | 23 +- .../strategy/impl/ImportStudentOrderImpl.java | 19 +- .../columns/SysTeacherController.java | 51 +- .../controller/mall/AftersaleController.java | 11 +- .../controller/mall/ExpressController.java | 85 -- .../controller/system/SysDeptController.java | 55 +- .../system/SysProfileController.java | 40 +- .../controller/system/SysRoleController.java | 92 +- .../controller/system/SysUserController.java | 8 +- .../src/main/resources/application.yml | 4 +- .../common/core/domain/entity/SysDept.java | 2 + .../common/core/domain/entity/SysUser.java | 6 +- .../com/ruoyi/common/db/SshTunnelConfig.java | 3 +- .../framework/config/ResourcesConfig.java | 33 +- ...omMappingJackson2HttpMessageConverter.java | 61 ++ .../web/service/PermissionService.java | 18 +- .../web/service/SysPermissionService.java | 17 +- .../web/service/UserDetailsServiceImpl.java | 8 +- .../com/ruoyi/generator/ApplicationTest.java | 70 -- .../java/com/ruoyi/generator/CommonTest.java | 14 - .../ruoyi/generator/SingleComponentTest.java | 50 - .../com/ruoyi/generator/SpringAppTest.java | 16 - ruoyi-mall/pom.xml | 95 -- .../config/AESForWeixinGetPhoneNumber.java | 80 -- .../com/cyl/config/RestTemplateConfig.java | 73 -- .../java/com/cyl/config/WechatConfig.java | 25 - .../com/cyl/external/ExternalException.java | 13 - .../java/com/cyl/external/WechatUtil.java | 62 -- .../cyl/external/resp/AccessTokenResp.java | 19 - .../java/com/cyl/external/resp/BaseResp.java | 9 - .../com/cyl/external/resp/UserInfoResp.java | 14 - .../java/com/cyl/h5/config/SecurityUtil.java | 16 - .../cyl/h5/controller/CategoryController.java | 29 - .../cyl/h5/controller/H5CommonController.java | 110 --- .../controller/H5MemberAddressController.java | 48 - .../h5/controller/H5MemberCartController.java | 87 -- .../cyl/h5/controller/H5MemberController.java | 85 -- .../cyl/h5/controller/H5OrderController.java | 254 ----- .../h5/controller/H5ProductController.java | 36 - .../cyl/h5/controller/NoAuthController.java | 73 -- .../h5/controller/PayNotifyController.java | 143 --- .../com/cyl/h5/controller/UserController.java | 47 - .../cyl/h5/controller/WechatController2.java | 82 -- .../com/cyl/h5/domain/dto/CategoryDTO.java | 15 - .../com/cyl/h5/domain/dto/DeliveryReq.java | 30 - .../h5/domain/dto/OrderProductListDTO.java | 42 - .../h5/domain/dto/PayNotifyMessageDTO.java | 34 - .../cyl/h5/domain/form/ApplyRefundForm.java | 34 - .../cyl/h5/domain/form/BindOpenIDForm.java | 12 - .../cyl/h5/domain/form/CancelOrderForm.java | 14 - .../h5/domain/form/H5AccountLoginForm.java | 9 - .../com/cyl/h5/domain/form/H5LoginForm.java | 9 - .../cyl/h5/domain/form/H5SmsLoginForm.java | 16 - .../cyl/h5/domain/form/OrderCreateForm.java | 37 - .../com/cyl/h5/domain/form/OrderPayForm.java | 21 - .../cyl/h5/domain/form/OrderSubmitForm.java | 27 - .../com/cyl/h5/domain/form/RegisterForm.java | 30 - .../cyl/h5/domain/form/WechatLoginForm.java | 9 - .../com/cyl/h5/domain/query/OrderH5Query.java | 8 - .../h5/domain/vo/AftersaleRefundInfoVO.java | 72 -- .../com/cyl/h5/domain/vo/CountOrderVO.java | 22 - .../java/com/cyl/h5/domain/vo/H5LoginVO.java | 11 - .../java/com/cyl/h5/domain/vo/H5OrderVO.java | 78 -- .../com/cyl/h5/domain/vo/H5ProductVO.java | 12 - .../com/cyl/h5/domain/vo/HomeConfigVO.java | 14 - .../com/cyl/h5/domain/vo/OrderCalcVO.java | 21 - .../java/com/cyl/h5/domain/vo/OrderPayVO.java | 36 - .../com/cyl/h5/domain/vo/ProductDetailVO.java | 15 - .../java/com/cyl/h5/domain/vo/RegisterVO.java | 12 - .../java/com/cyl/h5/domain/vo/SkuViewVO.java | 32 - .../com/cyl/h5/domain/vo/ValidatePhoneVO.java | 14 - .../com/cyl/h5/domain/vo/WechatLoginVO.java | 12 - .../h5/service/H5MemberAddressService.java | 146 --- .../cyl/h5/service/H5MemberCartService.java | 201 ---- .../com/cyl/h5/service/H5MemberService.java | 407 -------- .../com/cyl/h5/service/H5OrderService.java | 920 ------------------ .../src/main/java/com/cyl/job/OrderJob.java | 64 -- .../main/java/com/cyl/job/StatisticsJob.java | 37 - .../manager/act/constant/IntegralRule.java | 13 - .../controller/CouponActivityController.java | 77 -- .../act/controller/H5CouponController.java | 84 -- .../H5IntegralHistoryController.java | 80 -- .../controller/IntegralHistoryController.java | 86 -- .../controller/MemberCouponController.java | 77 -- .../act/convert/CouponActivityConvert.java | 16 - .../act/convert/IntegralHistoryConvert.java | 16 - .../act/convert/MemberCouponConvert.java | 16 - .../act/domain/entity/CouponActivity.java | 84 -- .../act/domain/entity/IntegralHistory.java | 54 - .../act/domain/entity/MemberCoupon.java | 88 -- .../act/domain/query/CouponActivityQuery.java | 27 - .../domain/query/IntegralHistoryQuery.java | 43 - .../act/domain/query/MemberCouponQuery.java | 35 - .../act/domain/vo/CouponActivityVO.java | 103 -- .../act/domain/vo/IntegralHistoryVO.java | 36 - .../manager/act/domain/vo/IntegralStatVO.java | 14 - .../manager/act/domain/vo/MemberCouponVO.java | 70 -- .../act/mapper/CouponActivityMapper.java | 24 - .../act/mapper/IntegralHistoryMapper.java | 24 - .../act/mapper/MemberCouponMapper.java | 30 - .../act/service/CouponActivityService.java | 284 ------ .../act/service/IntegralHistoryService.java | 223 ----- .../act/service/MemberCouponService.java | 257 ----- .../SystemStatisticsController.java | 89 -- .../aws/convert/SystemStatisticsConvert.java | 16 - .../aws/domain/entity/SystemStatistics.java | 68 -- .../domain/query/SystemStatisticsQuery.java | 57 -- .../aws/domain/vo/SystemStatisticsVO.java | 51 - .../aws/mapper/SystemStatisticsMapper.java | 20 - .../aws/service/SystemStatisticsService.java | 152 --- .../oms/controller/AftersaleController.java | 133 --- .../controller/AftersaleItemController.java | 93 -- .../oms/controller/OrderController.java | 144 --- .../OrderDeliveryHistoryController.java | 93 -- .../oms/controller/OrderItemController.java | 93 -- .../OrderOperateHistoryController.java | 93 -- .../WechatPaymentHistoryController.java | 93 -- .../manager/oms/convert/AftersaleConvert.java | 16 - .../oms/convert/AftersaleItemConvert.java | 16 - .../cyl/manager/oms/convert/OrderConvert.java | 18 - .../convert/OrderDeliveryHistoryConvert.java | 16 - .../manager/oms/convert/OrderItemConvert.java | 16 - .../convert/OrderOperateHistoryConvert.java | 16 - .../convert/WechatPaymentHistoryConvert.java | 16 - .../manager/oms/domain/entity/Aftersale.java | 85 -- .../oms/domain/entity/AftersaleItem.java | 48 - .../cyl/manager/oms/domain/entity/Order.java | 162 --- .../domain/entity/OrderDeliveryHistory.java | 35 - .../manager/oms/domain/entity/OrderItem.java | 84 -- .../domain/entity/OrderOperateHistory.java | 43 - .../domain/entity/WechatPaymentHistory.java | 72 -- .../domain/form/DealWithAftersaleForm.java | 23 - .../oms/domain/form/DeliverProductForm.java | 27 - .../form/ManagerAftersaleOrderForm.java | 41 - .../domain/form/ManagerOrderQueryForm.java | 54 - .../oms/domain/query/AftersaleItemQuery.java | 31 - .../oms/domain/query/AftersaleQuery.java | 53 - .../query/OrderDeliveryHistoryQuery.java | 24 - .../oms/domain/query/OrderItemQuery.java | 58 -- .../query/OrderOperateHistoryQuery.java | 27 - .../manager/oms/domain/query/OrderQuery.java | 106 -- .../query/WechatPaymentHistoryQuery.java | 49 - .../oms/domain/vo/AftersaleItemVO.java | 34 - .../manager/oms/domain/vo/AftersaleVO.java | 55 -- .../oms/domain/vo/ManagerOrderAddressVo.java | 26 - .../oms/domain/vo/ManagerOrderDetailVO.java | 47 - .../oms/domain/vo/ManagerOrderProductVO.java | 25 - .../manager/oms/domain/vo/ManagerOrderVO.java | 104 -- .../domain/vo/ManagerRefundOrderDetailVO.java | 52 - .../oms/domain/vo/ManagerRefundOrderVO.java | 86 -- .../manager/oms/domain/vo/OrderAddressVO.java | 26 - .../oms/domain/vo/OrderDeliveryHistoryVO.java | 24 - .../manager/oms/domain/vo/OrderItemVO.java | 58 -- .../oms/domain/vo/OrderOperateHistoryVO.java | 30 - .../cyl/manager/oms/domain/vo/OrderVO.java | 113 --- .../manager/oms/domain/vo/RefundInfoVO.java | 50 - .../oms/domain/vo/WechatPaymentHistoryVO.java | 52 - .../oms/mapper/AftersaleItemMapper.java | 24 - .../manager/oms/mapper/AftersaleMapper.java | 29 - .../mapper/OrderDeliveryHistoryMapper.java | 20 - .../manager/oms/mapper/OrderItemMapper.java | 20 - .../cyl/manager/oms/mapper/OrderMapper.java | 50 - .../oms/mapper/OrderOperateHistoryMapper.java | 20 - .../mapper/WechatPaymentHistoryMapper.java | 20 - .../oms/service/AftersaleItemService.java | 101 -- .../manager/oms/service/AftersaleService.java | 476 --------- .../service/OrderDeliveryHistoryService.java | 93 -- .../manager/oms/service/OrderItemService.java | 172 ---- .../service/OrderOperateHistoryService.java | 101 -- .../cyl/manager/oms/service/OrderService.java | 403 -------- .../service/WechatPaymentHistoryService.java | 126 --- .../pms/controller/BrandController.java | 99 -- .../controller/ProductCategoryController.java | 80 -- .../pms/controller/ProductController.java | 93 -- .../manager/pms/controller/SkuController.java | 93 -- .../cyl/manager/pms/convert/BrandConvert.java | 16 - .../pms/convert/ProductCategoryConvert.java | 19 - .../manager/pms/convert/ProductConvert.java | 22 - .../cyl/manager/pms/convert/SkuConvert.java | 16 - .../cyl/manager/pms/domain/entity/Brand.java | 39 - .../manager/pms/domain/entity/Product.java | 88 -- .../pms/domain/entity/ProductCategory.java | 47 - .../cyl/manager/pms/domain/entity/Sku.java | 48 - .../manager/pms/domain/query/BrandQuery.java | 27 - .../domain/query/ProductCategoryQuery.java | 33 - .../pms/domain/query/ProductQuery.java | 80 -- .../manager/pms/domain/query/SkuQuery.java | 31 - .../cyl/manager/pms/domain/vo/BrandVO.java | 27 - .../pms/domain/vo/ProductCategoryVO.java | 30 - .../cyl/manager/pms/domain/vo/ProductVO.java | 67 -- .../com/cyl/manager/pms/domain/vo/SkuVO.java | 33 - .../cyl/manager/pms/mapper/BrandMapper.java | 20 - .../pms/mapper/ProductCategoryMapper.java | 20 - .../cyl/manager/pms/mapper/ProductMapper.java | 21 - .../com/cyl/manager/pms/mapper/SkuMapper.java | 24 - .../cyl/manager/pms/service/BrandService.java | 98 -- .../pms/service/ProductCategoryService.java | 246 ----- .../manager/pms/service/ProductService.java | 210 ---- .../cyl/manager/pms/service/SkuService.java | 102 -- .../IndexStatisticsManagerController.java | 64 -- .../domain/query/GoodsStatisticsQuery.java | 24 - .../domain/query/OrderStatisticsQuery.java | 14 - .../domain/vo/MemberAndCartStatisticsVO.java | 10 - .../vo/OrderAndAftersaleStatisticsVO.java | 21 - .../domain/vo/OrderStatisticsVO.java | 16 - .../statistics/domain/vo/ProductTopVO.java | 12 - .../mapper/IndexStatisticsMapper.java | 17 - .../service/IndexStatisticsService.java | 75 -- .../ums/controller/FeedbackController.java | 73 -- .../controller/MemberAccountController.java | 93 -- .../controller/MemberAddressController.java | 95 -- .../ums/controller/MemberCartController.java | 90 -- .../ums/controller/MemberController.java | 123 --- .../MemberLogininforController.java | 82 -- .../controller/MemberWechatController.java | 93 -- .../controller/PlatformVerifyController.java | 37 - .../manager/ums/convert/FeedbackConvert.java | 16 - .../ums/convert/MemberAccountConvert.java | 16 - .../ums/convert/MemberAddressConvert.java | 16 - .../ums/convert/MemberCartConvert.java | 31 - .../manager/ums/convert/MemberConvert.java | 16 - .../ums/convert/MemberLogininforConvert.java | 16 - .../ums/convert/MemberWechatConvert.java | 19 - .../manager/ums/domain/dto/AddressDTO.java | 19 - .../manager/ums/domain/entity/Address.java | 50 - .../manager/ums/domain/entity/Feedback.java | 57 -- .../cyl/manager/ums/domain/entity/Member.java | 92 -- .../ums/domain/entity/MemberAccount.java | 42 - .../ums/domain/entity/MemberAddress.java | 79 -- .../manager/ums/domain/entity/MemberCart.java | 55 -- .../ums/domain/entity/MemberLogininfor.java | 51 - .../ums/domain/entity/MemberWechat.java | 76 -- .../ums/domain/form/AddMemberCartForm.java | 23 - .../domain/form/ChangeMemberStatusForm.java | 9 - .../ums/domain/form/MemberAddressForm.java | 18 - .../ums/domain/form/UpdateMemberCartForm.java | 18 - .../ums/domain/query/FeedbackQuery.java | 38 - .../ums/domain/query/MemberAccountQuery.java | 23 - .../ums/domain/query/MemberAddressQuery.java | 45 - .../ums/domain/query/MemberCartQuery.java | 42 - .../domain/query/MemberLogininforQuery.java | 41 - .../manager/ums/domain/query/MemberQuery.java | 69 -- .../ums/domain/query/MemberWechatQuery.java | 55 -- .../cyl/manager/ums/domain/vo/FeedbackVO.java | 42 - .../ums/domain/vo/MemberAccountVO.java | 26 - .../ums/domain/vo/MemberAddressVO.java | 47 - .../manager/ums/domain/vo/MemberCartVO.java | 53 - .../ums/domain/vo/MemberDataStatisticsVO.java | 20 - .../ums/domain/vo/MemberLogininforVO.java | 38 - .../cyl/manager/ums/domain/vo/MemberVO.java | 70 -- .../manager/ums/domain/vo/MemberWechatVO.java | 57 -- .../cyl/manager/ums/mapper/AddressMapper.java | 22 - .../manager/ums/mapper/FeedbackMapper.java | 20 - .../ums/mapper/MemberAccountMapper.java | 26 - .../ums/mapper/MemberAddressMapper.java | 24 - .../manager/ums/mapper/MemberCartMapper.java | 31 - .../ums/mapper/MemberLogininforMapper.java | 24 - .../cyl/manager/ums/mapper/MemberMapper.java | 20 - .../ums/mapper/MemberWechatMapper.java | 20 - .../manager/ums/service/FeedbackService.java | 130 --- .../ums/service/MemberAccountService.java | 90 -- .../ums/service/MemberAddressService.java | 136 --- .../ums/service/MemberCartService.java | 199 ---- .../ums/service/MemberLogininforService.java | 113 --- .../manager/ums/service/MemberService.java | 160 --- .../ums/service/MemberWechatService.java | 248 ----- .../com/cyl/sms/controller/SmsController.java | 26 - .../java/com/cyl/sms/service/SmsService.java | 64 -- .../com/cyl/wechat/WechatAuthService.java | 118 --- .../java/com/cyl/wechat/WechatController.java | 48 - .../java/com/cyl/wechat/WechatPayConfig.java | 27 - .../java/com/cyl/wechat/WechatPayData.java | 62 -- .../java/com/cyl/wechat/WechatPayService.java | 75 -- .../java/com/cyl/wechat/WechatPayUtil.java | 79 -- .../wechat/response/JssdkConfigResponse.java | 20 - .../com/cyl/wechat/response/WeChatAmount.java | 23 - .../cyl/wechat/response/WeChatPayNotify.java | 39 - .../com/cyl/wechat/response/WeChatPayer.java | 17 - .../cyl/wechat/response/WechatUserAuth.java | 15 - .../src/main/resources/application.properties | 1 - .../mapper/act/CouponActivityMapper.xml | 48 - .../mapper/act/IntegralHistoryMapper.xml | 41 - .../mapper/act/MemberCouponMapper.xml | 69 -- .../mapper/aws/SystemStatisticsMapper.xml | 42 - .../mapper/oms/AftersaleItemMapper.xml | 58 -- .../resources/mapper/oms/AftersaleMapper.xml | 109 --- .../mapper/oms/OrderDeliveryHistoryMapper.xml | 34 - .../resources/mapper/oms/OrderItemMapper.xml | 56 -- .../main/resources/mapper/oms/OrderMapper.xml | 266 ----- .../mapper/oms/OrderOperateHistoryMapper.xml | 37 - .../mapper/oms/WechatPaymentHistoryMapper.xml | 51 - .../main/resources/mapper/pms/BrandMapper.xml | 36 - .../mapper/pms/ProductCategoryMapper.xml | 40 - .../resources/mapper/pms/ProductMapper.xml | 58 -- .../main/resources/mapper/pms/SkuMapper.xml | 46 - .../statistics/IndexStatisticsMapper.xml | 104 -- .../resources/mapper/ums/AddressMapper.xml | 34 - .../resources/mapper/ums/FeedbackMapper.xml | 35 - .../mapper/ums/MemberAccountMapper.xml | 34 - .../mapper/ums/MemberAddressMapper.xml | 102 -- .../resources/mapper/ums/MemberCartMapper.xml | 76 -- .../mapper/ums/MemberLogininforMapper.xml | 40 - .../resources/mapper/ums/MemberMapper.xml | 59 -- .../mapper/ums/MemberWechatMapper.xml | 54 - .../ruoyimall/RuoyiMallApplicationTests.java | 13 - .../java/com/ruoyi/mall/domain/Express.java | 31 - .../com/ruoyi/mall/mapper/ExpressMapper.java | 14 - .../ruoyi/mall/service/AftersaleService.java | 7 +- .../ruoyi/mall/service/ExpressService.java | 90 -- .../com/ruoyi/mall/service/OrderService.java | 3 +- .../{mall => system}/domain/AppUser.java | 19 +- .../system/domain/columns/SysTeacher.java | 7 +- .../ruoyi/system/domain/columns/YjStore.java | 89 +- .../ruoyi/system/mapper/SysMenuMapper.java | 2 +- .../system/mapper/SysRoleMenuMapper.java | 15 +- .../mapper/YjAppUserMapper.java | 4 +- .../mapper/colums/SysTeacherMapper.java | 18 +- .../ruoyi/system/service/ISysMenuService.java | 39 +- .../ruoyi/system/service/ISysUserService.java | 73 +- .../system/service/YjAppUserService.java | 18 + .../service/columns/ISysTeacherService.java | 17 +- .../columns/impl/SysTeacherServiceImpl.java | 25 +- .../columns/impl/YjInheritServiceImpl.java | 19 +- .../service/impl/SysDeptServiceImpl.java | 43 +- .../service/impl/SysMenuServiceImpl.java | 6 +- .../service/impl/SysRoleServiceImpl.java | 2 +- .../service/impl/SysTenantServiceImpl.java | 26 +- .../service/impl/SysUserServiceImpl.java | 135 +-- .../service/impl/YjAppUserServiceImpl.java | 29 + .../mapper/colums/SysTeacherMapper.xml | 31 +- .../resources/mapper/colums/YjStoreMapper.xml | 10 +- .../resources/mapper/mall/ExpressMapper.xml | 7 - .../resources/mapper/mall/YjAppUserMapper.xml | 8 - .../resources/mapper/system/SysDeptMapper.xml | 7 +- .../resources/mapper/system/SysMenuMapper.xml | 8 +- .../resources/mapper/system/SysRoleMapper.xml | 4 +- .../mapper/system/SysRoleMenuMapper.xml | 24 +- .../mapper/system/SysTenantMapper.xml | 2 +- .../resources/mapper/system/SysUserMapper.xml | 9 +- 412 files changed, 871 insertions(+), 20635 deletions(-) delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/controller/ScSchoolController.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/mapper/ScSchoolMapper.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/mapping/ScSchoolMapper.xml delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/model/ScSchool.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/BusinessScSchoolService.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/IScSchoolService.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/impl/ScSchoolServiceImpl.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/model/SysUserDept.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/repo/mapper/ISysUserDeptMapper.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/repo/mapping/ISysUserDeptMapper.xml delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/service/ISysUserDeptService.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/service/impl/ISysUserDeptServiceImpl.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/domain/req/ReqBusinessAddStaff.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/domain/req/ReqSearchStaff.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/domain/resp/RespBusinessStaffDetail.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/domain/resp/RespStaffInfo.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/repo/mapper/SysStaffMapper.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/repo/mapping/SysStaffMapper.xml delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/repo/model/SysStaff.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/BusinessSysStaffService.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/ISysStaffService.java delete mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/impl/SysStaffServiceImpl.java delete mode 100644 ruoyi-admin/src/main/java/com/ruoyi/web/controller/mall/ExpressController.java create mode 100644 ruoyi-framework/src/main/java/com/ruoyi/framework/config/converter/CustomMappingJackson2HttpMessageConverter.java delete mode 100644 ruoyi-generator/src/test/java/com/ruoyi/generator/ApplicationTest.java delete mode 100644 ruoyi-generator/src/test/java/com/ruoyi/generator/CommonTest.java delete mode 100644 ruoyi-generator/src/test/java/com/ruoyi/generator/SingleComponentTest.java delete mode 100644 ruoyi-generator/src/test/java/com/ruoyi/generator/SpringAppTest.java delete mode 100644 ruoyi-mall/pom.xml delete mode 100644 ruoyi-mall/src/main/java/com/cyl/config/AESForWeixinGetPhoneNumber.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/config/RestTemplateConfig.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/config/WechatConfig.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/external/ExternalException.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/external/WechatUtil.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/external/resp/AccessTokenResp.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/external/resp/BaseResp.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/external/resp/UserInfoResp.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/config/SecurityUtil.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/controller/CategoryController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/controller/H5CommonController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberAddressController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberCartController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/controller/H5OrderController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/controller/H5ProductController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/controller/NoAuthController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/controller/PayNotifyController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/controller/UserController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/controller/WechatController2.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/CategoryDTO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/DeliveryReq.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/OrderProductListDTO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/PayNotifyMessageDTO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/form/ApplyRefundForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/form/BindOpenIDForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/form/CancelOrderForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5AccountLoginForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5LoginForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5SmsLoginForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderCreateForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderPayForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderSubmitForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/form/RegisterForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/form/WechatLoginForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/query/OrderH5Query.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/AftersaleRefundInfoVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/CountOrderVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5LoginVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5OrderVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5ProductVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/HomeConfigVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/OrderCalcVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/OrderPayVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/ProductDetailVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/RegisterVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/SkuViewVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/ValidatePhoneVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/WechatLoginVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberAddressService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberCartService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/h5/service/H5OrderService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/job/OrderJob.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/job/StatisticsJob.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/constant/IntegralRule.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/controller/CouponActivityController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/controller/H5CouponController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/controller/H5IntegralHistoryController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/controller/IntegralHistoryController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/controller/MemberCouponController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/convert/CouponActivityConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/convert/IntegralHistoryConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/convert/MemberCouponConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/CouponActivity.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/IntegralHistory.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/MemberCoupon.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/CouponActivityQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/IntegralHistoryQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/MemberCouponQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/CouponActivityVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/IntegralHistoryVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/IntegralStatVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/MemberCouponVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/CouponActivityMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/IntegralHistoryMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/MemberCouponMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/service/CouponActivityService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/service/IntegralHistoryService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/act/service/MemberCouponService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/aws/controller/SystemStatisticsController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/aws/convert/SystemStatisticsConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/entity/SystemStatistics.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/query/SystemStatisticsQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/vo/SystemStatisticsVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/aws/mapper/SystemStatisticsMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/aws/service/SystemStatisticsService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/AftersaleController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/AftersaleItemController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderDeliveryHistoryController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderItemController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderOperateHistoryController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/WechatPaymentHistoryController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/AftersaleConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/AftersaleItemConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderDeliveryHistoryConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderItemConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderOperateHistoryConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/WechatPaymentHistoryConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/Aftersale.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/AftersaleItem.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/Order.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderDeliveryHistory.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderItem.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderOperateHistory.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/WechatPaymentHistory.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/DealWithAftersaleForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/DeliverProductForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/ManagerAftersaleOrderForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/ManagerOrderQueryForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/AftersaleItemQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/AftersaleQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderDeliveryHistoryQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderItemQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderOperateHistoryQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/WechatPaymentHistoryQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/AftersaleItemVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/AftersaleVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderAddressVo.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderDetailVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderProductVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerRefundOrderDetailVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerRefundOrderVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderAddressVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderDeliveryHistoryVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderItemVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderOperateHistoryVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/RefundInfoVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/WechatPaymentHistoryVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/AftersaleItemMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/AftersaleMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderDeliveryHistoryMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderItemMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderOperateHistoryMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/WechatPaymentHistoryMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/service/AftersaleItemService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/service/AftersaleService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderDeliveryHistoryService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderItemService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderOperateHistoryService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/oms/service/WechatPaymentHistoryService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/BrandController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/ProductCategoryController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/ProductController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/SkuController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/BrandConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/ProductCategoryConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/ProductConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/SkuConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Brand.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Product.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/ProductCategory.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Sku.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/BrandQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/ProductCategoryQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/ProductQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/SkuQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/BrandVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/ProductCategoryVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/ProductVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/SkuVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/BrandMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/ProductCategoryMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/ProductMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/SkuMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/service/BrandService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/service/ProductCategoryService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/service/ProductService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/pms/service/SkuService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/statistics/controller/IndexStatisticsManagerController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/query/GoodsStatisticsQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/query/OrderStatisticsQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/MemberAndCartStatisticsVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/OrderAndAftersaleStatisticsVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/OrderStatisticsVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/ProductTopVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/statistics/mapper/IndexStatisticsMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/statistics/service/IndexStatisticsService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/FeedbackController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberAccountController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberAddressController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberCartController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberLogininforController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberWechatController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/PlatformVerifyController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/FeedbackConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberAccountConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberAddressConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberCartConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberLogininforConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberWechatConvert.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/dto/AddressDTO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Address.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Feedback.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Member.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberAccount.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberAddress.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberCart.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberLogininfor.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberWechat.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/AddMemberCartForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/ChangeMemberStatusForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/MemberAddressForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/UpdateMemberCartForm.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/FeedbackQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberAccountQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberAddressQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberCartQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberLogininforQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberWechatQuery.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/FeedbackVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberAccountVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberAddressVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberCartVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberDataStatisticsVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberLogininforVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberWechatVO.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/AddressMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/FeedbackMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberAccountMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberAddressMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberCartMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberLogininforMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberWechatMapper.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/service/FeedbackService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberAccountService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberAddressService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberCartService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberLogininforService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberWechatService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/sms/controller/SmsController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/sms/service/SmsService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/wechat/WechatAuthService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/wechat/WechatController.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayConfig.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayData.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayService.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayUtil.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/wechat/response/JssdkConfigResponse.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatAmount.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatPayNotify.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatPayer.java delete mode 100644 ruoyi-mall/src/main/java/com/cyl/wechat/response/WechatUserAuth.java delete mode 100644 ruoyi-mall/src/main/resources/application.properties delete mode 100644 ruoyi-mall/src/main/resources/mapper/act/CouponActivityMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/act/IntegralHistoryMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/act/MemberCouponMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/aws/SystemStatisticsMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/oms/AftersaleItemMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/oms/AftersaleMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/oms/OrderDeliveryHistoryMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/oms/OrderItemMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/oms/OrderMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/oms/OrderOperateHistoryMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/oms/WechatPaymentHistoryMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/pms/BrandMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/pms/ProductCategoryMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/pms/ProductMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/pms/SkuMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/statistics/IndexStatisticsMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/ums/AddressMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/ums/FeedbackMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/ums/MemberAccountMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/ums/MemberAddressMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/ums/MemberCartMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/ums/MemberLogininforMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/ums/MemberMapper.xml delete mode 100644 ruoyi-mall/src/main/resources/mapper/ums/MemberWechatMapper.xml delete mode 100644 ruoyi-mall/src/test/java/com/example/ruoyimall/RuoyiMallApplicationTests.java delete mode 100644 ruoyi-system/src/main/java/com/ruoyi/mall/domain/Express.java delete mode 100644 ruoyi-system/src/main/java/com/ruoyi/mall/mapper/ExpressMapper.java delete mode 100644 ruoyi-system/src/main/java/com/ruoyi/mall/service/ExpressService.java rename ruoyi-system/src/main/java/com/ruoyi/{mall => system}/domain/AppUser.java (83%) rename ruoyi-system/src/main/java/com/ruoyi/{mall => system}/mapper/YjAppUserMapper.java (73%) create mode 100644 ruoyi-system/src/main/java/com/ruoyi/system/service/YjAppUserService.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/YjAppUserServiceImpl.java delete mode 100644 ruoyi-system/src/main/resources/mapper/mall/ExpressMapper.xml delete mode 100644 ruoyi-system/src/main/resources/mapper/mall/YjAppUserMapper.xml diff --git a/ruoyi-admin/src/main/java/cn/xluobo/BusinessServerApplication.java b/ruoyi-admin/src/main/java/cn/xluobo/BusinessServerApplication.java index b32104f..0bd8b03 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/BusinessServerApplication.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/BusinessServerApplication.java @@ -1,19 +1,13 @@ package cn.xluobo; -import cn.xluobo.config.properties.AddressProperties; -import cn.xluobo.config.properties.UploadConfigProperties; import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.scheduling.annotation.EnableAsync; -import org.springframework.scheduling.annotation.EnableScheduling; import java.net.UnknownHostException; -@SpringBootApplication -@EnableConfigurationProperties({UploadConfigProperties.class, AddressProperties.class}) -@EnableScheduling -@EnableAsync +//@SpringBootApplication +//@EnableConfigurationProperties({UploadConfigProperties.class, AddressProperties.class}) +//@EnableScheduling +//@EnableAsync public class BusinessServerApplication { public static void main(String[] args) throws UnknownHostException { diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/enums/BusinessTableEnums.java b/ruoyi-admin/src/main/java/cn/xluobo/business/enums/BusinessTableEnums.java index 352eef5..1addd20 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/enums/BusinessTableEnums.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/enums/BusinessTableEnums.java @@ -6,14 +6,14 @@ package cn.xluobo.business.enums; public enum BusinessTableEnums { SYS_USER("sys_user","系统用户"), - SYS_STAFF("sys_staff","员工表",true), +// SYS_STAFF("sys_staff","员工表",true), SYS_DEPT("sys_dept","部门",true), SYS_TAG("sys_tag","标签",true), SYS_RECEIPT_ACCOUNT("sys_receipt_account","机构收费账户",true), - SC_SCHOOL("sc_school","学校",true), +// SC_SCHOOL("sc_school","学校",true), SC_ROOM("sc_room","教室",true), SC_TEACHER("sc_teacher","教师",true), SC_COURSE("sc_course","课程",true), diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/report/dashboard/service/DashboardService.java b/ruoyi-admin/src/main/java/cn/xluobo/business/report/dashboard/service/DashboardService.java index b4641d4..b71266f 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/report/dashboard/service/DashboardService.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/report/dashboard/service/DashboardService.java @@ -3,14 +3,19 @@ package cn.xluobo.business.report.dashboard.service; import cn.xluobo.business.report.dashboard.domain.resp.DashboardData; import cn.xluobo.business.sc.course.domain.req.time.ReqClaTimeCount; import cn.xluobo.business.sc.course.repo.enums.ClaTimeAttendStatusEnums; +import cn.xluobo.business.sc.course.repo.model.ScCourse; +import cn.xluobo.business.sc.course.repo.model.ScCourseCla; import cn.xluobo.business.sc.course.service.IScClaTimeAttendService; import cn.xluobo.business.sc.course.service.IScClaTimeService; import cn.xluobo.business.sc.course.service.IScCourseClaService; import cn.xluobo.business.sc.course.service.IScCourseService; import cn.xluobo.business.sc.order.enums.OrderTypeEnum; import cn.xluobo.business.sc.order.service.IScOrderService; +import cn.xluobo.business.sc.student.repo.model.ScStudent; import cn.xluobo.business.sc.student.service.IScStudentCourseService; import cn.xluobo.business.sc.student.service.IScStudentService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ruoyi.common.utils.SecurityUtils; import org.joda.time.DateTime; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -50,11 +55,12 @@ public class DashboardService { String todayDate = DateTime.now().toString("yyyy-MM-dd"); String thisMonthBegin = DateTime.now().withDayOfMonth(1).toString("yyyy-MM-dd"); String thisMonthEnd = DateTime.now().plusMonths(1).withDayOfMonth(1).minusDays(1).toString("yyyy-MM-dd"); - int claCnt = claService.count(); - int courseCnt = courseService.count(); - int studentCnt = studentService.count(); + String tenantId=SecurityUtils.getLoginUser().getNowTenantId(); + int claCnt = claService.count(new QueryWrapper().eq("tenant_id",tenantId)); + int courseCnt = courseService.count(new QueryWrapper().eq("tenant_id",tenantId)); + int studentCnt = studentService.count(new QueryWrapper().eq("tenant_id",tenantId)); - ReqClaTimeCount reqClaTimeCount = ReqClaTimeCount.builder().beginDate(todayDate).endDate(todayDate).hadBegin(null).build(); + ReqClaTimeCount reqClaTimeCount = ReqClaTimeCount.builder().beginDate(todayDate).endDate(todayDate).hadBegin(null).tenantId(tenantId).build(); Integer todayClaTimeCnt = claTimeService.claTimeCount(reqClaTimeCount); reqClaTimeCount.setHadBegin(true); @@ -70,6 +76,7 @@ public class DashboardService { Integer arrearsStudentCnt = orderService.arrearsStudentCount(); Integer dateWillExpireCnt = studentCourseService.getWillExpireDateCount(10); Integer hourWillExpireCnt = studentCourseService.getWillExpireHourCount(5); + return DashboardData.builder() .todayClaTimeCnt(todayClaTimeCnt) .completeTodayClaTimeCnt(completeTodayClaTimeCnt) diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/controller/ScSchoolController.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/controller/ScSchoolController.java deleted file mode 100644 index 14dbc97..0000000 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/controller/ScSchoolController.java +++ /dev/null @@ -1,89 +0,0 @@ -package cn.xluobo.business.sc.base.controller; - -import cn.xluobo.business.sc.base.domain.req.ReqSchoolSelect; -import cn.xluobo.business.sc.base.domain.req.ReqSearchScSchool; -import cn.xluobo.business.sc.base.repo.model.ScSchool; -import cn.xluobo.business.sc.base.service.BusinessScSchoolService; -import cn.xluobo.core.api.APIResponse; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -/** - *

- * 学校信息 Controller - *

- * - * @author zhangby - * @since 2020-04-27 07:13:36 - */ -@RestController -@RequestMapping("/api/sc/school") -public class ScSchoolController { - @Autowired - private BusinessScSchoolService scSchoolService; - - /** - * 列表 - * - * @param reqSearchScSchool - * @return - */ - @GetMapping("/list/searchList") - public APIResponse searchList(ReqSearchScSchool reqSearchScSchool) { - return scSchoolService.searchList(reqSearchScSchool); - } - - /** - * 前端select - * - * @return - */ - @GetMapping("/list/select") - public APIResponse select(ReqSchoolSelect schoolSelect) { - return scSchoolService.select(schoolSelect); - } - - /** - * 详情 - * - * @param schoolId - * @return - */ - @GetMapping("/info/detailById/{schoolId}") - public APIResponse detailById(@PathVariable("schoolId") Long schoolId) { - return scSchoolService.detailById(schoolId); - } - - /** - * 添加 - * - * @param scSchool - * @return - */ - @PostMapping("/add/addScSchool") - public APIResponse addScSchool(@RequestBody ScSchool scSchool) { - return scSchoolService.addScSchool(scSchool); - } - - /** - * 修改 - * - * @param scSchool - * @return - */ - @PutMapping("/update/updateScSchool") - public APIResponse updateScSchool(@RequestBody ScSchool scSchool) { - return scSchoolService.updateScSchool(scSchool); - } - - /** - * 删除 - * - * @param schoolIds - * @return - */ - @DeleteMapping("/delete/deleteById/{schoolIds}") - public APIResponse deleteById(@PathVariable("schoolIds") Long[] schoolIds) { - return scSchoolService.deleteById(schoolIds); - } -} diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/domain/req/ReqRoomSelect.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/domain/req/ReqRoomSelect.java index 9d6a7b1..c2c18e1 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/domain/req/ReqRoomSelect.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/domain/req/ReqRoomSelect.java @@ -12,5 +12,6 @@ import lombok.Data; public class ReqRoomSelect { private String deptId; + private String tenantId; } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/domain/req/ReqSearchScRoom.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/domain/req/ReqSearchScRoom.java index 72d30cb..bf4c221 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/domain/req/ReqSearchScRoom.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/domain/req/ReqSearchScRoom.java @@ -1,6 +1,7 @@ package cn.xluobo.business.sc.base.domain.req; import cn.xluobo.core.page.ReqPageBase; +import com.ruoyi.common.utils.SecurityUtils; import lombok.Data; import java.io.Serializable; @@ -14,4 +15,11 @@ public class ReqSearchScRoom extends ReqPageBase implements Serializable { private Long deptId; private String roomName; private String memo; + + private String tenantId; + + public String getTenantId(){ + return SecurityUtils.getLoginUser().getNowTenantId(); + } + } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/mapper/ScSchoolMapper.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/mapper/ScSchoolMapper.java deleted file mode 100644 index e813945..0000000 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/mapper/ScSchoolMapper.java +++ /dev/null @@ -1,27 +0,0 @@ -package cn.xluobo.business.sc.base.repo.mapper; - -import cn.xluobo.business.sc.base.domain.req.ReqSchoolSelect; -import cn.xluobo.business.sc.base.domain.resp.RespSchoolSelect; -import cn.xluobo.business.sc.base.repo.model.ScSchool; - -import java.util.List; - -/** - *

- * 学校信息 Mapper 接口 - *

- * - * @author zhangby - * @since 2020-04-27 07:13:36 - */ -public interface ScSchoolMapper extends com.baomidou.mybatisplus.core.mapper.BaseMapper { - - /** - * 查询 - * - * @param schoolSelect - * @return - */ - List selectForSelect(ReqSchoolSelect schoolSelect); - -} diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/mapping/ScRoomMapper.xml b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/mapping/ScRoomMapper.xml index f7f3449..210bde2 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/mapping/ScRoomMapper.xml +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/mapping/ScRoomMapper.xml @@ -5,7 +5,7 @@ - select school_id,school_name,province_code,city_code, - fcn_dict_name(province_code,'province_code') as province_name, - fcn_dict_name(city_code,'city_code') as city_name - from sc_school - where 1=1 - - and school_name like concat('%',#{search} ,'%') - - - and school_id = #{schoolId} - - limit 0,#{maxRecord} - - diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/model/ScRoom.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/model/ScRoom.java index d6212e7..59271c5 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/model/ScRoom.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/model/ScRoom.java @@ -9,6 +9,7 @@ import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import java.io.Serializable; +import java.math.BigDecimal; import java.util.Date; /** @@ -79,4 +80,6 @@ public class ScRoom implements Serializable { */ @TableField("last_update_time") private Date lastUpdateTime; + + private BigDecimal venueFee; } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/model/ScSchool.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/model/ScSchool.java deleted file mode 100644 index 6dd84a1..0000000 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/repo/model/ScSchool.java +++ /dev/null @@ -1,79 +0,0 @@ -package cn.xluobo.business.sc.base.repo.model; - -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 lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.io.Serializable; -import java.util.Date; - -/** - *

- * 学校信息 - *

- * - * @author zhangby - * @since 2020-04-27 07:13:36 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@Accessors(chain = true) -@TableName("sc_school") -public class ScSchool implements Serializable { - - - /** - * 学校id - */ - @TableId(value = "school_id", type = IdType.AUTO) - private Long schoolId; - - /** - * 所属租户 - */ - @TableField("tenant_id") - private String tenantId; - - /** - * 省份编码 - */ - @TableField("province_code") - private String provinceCode; - - /** - * 区号 如0431 - */ - @TableField("city_code") - private String cityCode; - - @TableField("school_name") - private String schoolName; - - /** - * 创建者 - */ - @TableField("create_user") - private Long createUser; - - /** - * 创建时间 - */ - @TableField("create_time") - private Date createTime; - - /** - * 更新者 - */ - @TableField("last_update_user") - private Long lastUpdateUser; - - /** - * 更新时间 - */ - @TableField("last_update_time") - private Date lastUpdateTime; -} diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/BusinessScRoomService.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/BusinessScRoomService.java index 4519477..a431139 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/BusinessScRoomService.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/BusinessScRoomService.java @@ -56,6 +56,7 @@ public class BusinessScRoomService { * @return */ public APIResponse select(ReqRoomSelect roomSelect) { + roomSelect.setTenantId(SecurityUtils.getLoginUser().getNowTenantId()); List list = scRoomService.selectRoomSelect(roomSelect); return APIResponse.toAPIResponse(list); } @@ -82,6 +83,7 @@ public class BusinessScRoomService { */ public APIResponse addScRoom(ScRoom scRoom) { LoginUser loginUser = SecurityUtils.getLoginUser(); + scRoom.setTenantId(SecurityUtils.getLoginUser().getNowTenantId()); scRoom.setCreateUser(loginUser.getUserId()); boolean addScRoom = scRoomService.save(scRoom); if (addScRoom) { diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/BusinessScSchoolService.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/BusinessScSchoolService.java deleted file mode 100644 index cf19a3b..0000000 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/BusinessScSchoolService.java +++ /dev/null @@ -1,134 +0,0 @@ -package cn.xluobo.business.sc.base.service; - -import cn.xluobo.business.sc.base.domain.req.ReqSchoolSelect; -import cn.xluobo.business.sc.base.domain.req.ReqSearchScSchool; -import cn.xluobo.business.sc.base.domain.resp.RespSchoolSelect; -import cn.xluobo.business.sc.base.repo.model.ScSchool; -import cn.xluobo.core.api.APIResponse; -import cn.xluobo.core.api.ApiResEnums; -import cn.xluobo.core.page.RespPage; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.ruoyi.common.core.domain.model.LoginUser; -import com.ruoyi.common.utils.SecurityUtils; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.Arrays; -import java.util.Date; -import java.util.List; - -/** - * @author :zhangbaoyu - * @date :Created in 2020-01-14 17:24 - */ -@Service -@Transactional -public class BusinessScSchoolService { - - @Autowired - private IScSchoolService scSchoolService; - - /** - * 查询 - * - * @param reqSearchScSchool - * @return - */ - public APIResponse searchList(ReqSearchScSchool reqSearchScSchool) { - QueryWrapper qw = new QueryWrapper(); - if(StringUtils.isNotEmpty(reqSearchScSchool.getProvinceCode())){ - qw.eq("province_code",reqSearchScSchool.getProvinceCode()); - } - if(StringUtils.isNotEmpty(reqSearchScSchool.getCityCode())){ - qw.eq("city_code",reqSearchScSchool.getCityCode()); - } - if(StringUtils.isNotEmpty(reqSearchScSchool.getSchoolName())){ - qw.like("school_name",reqSearchScSchool.getSchoolName()); - } - RespPage page = new RespPage(reqSearchScSchool.getPageNum(), reqSearchScSchool.getPageSize()); - RespPage listPage = scSchoolService.page(page, qw); - return APIResponse.toAPIResponse(listPage); - } - - /** - * 前端select - * - * @return - */ - public APIResponse select(ReqSchoolSelect schoolSelect) { - List list = scSchoolService.selectSchoolSelect(schoolSelect); - return APIResponse.toAPIResponse(list); - } - - /** - * 详情 - * - * @param schoolId - * @return - */ - public APIResponse detailById(Long schoolId) { - if (null == schoolId) { - return APIResponse.toAPIResponse(null); - } - ScSchool detailInfo = scSchoolService.getById(schoolId); - return APIResponse.toAPIResponse(detailInfo); - } - - /** - * 添加 - * - * @param scSchool - * @return - */ - public APIResponse addScSchool(ScSchool scSchool) { - LoginUser loginUser = SecurityUtils.getLoginUser(); - scSchool.setCreateUser(loginUser.getUserId()); - boolean addScSchool = scSchoolService.save(scSchool); - if (addScSchool) { - return APIResponse.toOkResponse(); - } else { - return APIResponse.toExceptionResponse(ApiResEnums.FAIL_WAIT_A_MINUTE); - } - } - - /** - * 更新 - * - * @param scSchool - * @return - */ - public APIResponse updateScSchool(ScSchool scSchool) { - if (null == scSchool.getSchoolId()) { - return APIResponse.toExceptionResponse(ApiResEnums.FAIL_WAIT_A_MINUTE); - } - LoginUser loginUser = SecurityUtils.getLoginUser(); - scSchool.setLastUpdateUser(loginUser.getUserId()); - scSchool.setLastUpdateTime(new Date()); - boolean updateScSchool = scSchoolService.updateById(scSchool); - if (updateScSchool) { - return APIResponse.toOkResponse(); - } else { - return APIResponse.toExceptionResponse(ApiResEnums.FAIL_WAIT_A_MINUTE); - } - } - - /** - * 删除 - * - * @param schoolIds - * @return - */ - public APIResponse deleteById(Long[] schoolIds) { - if (null == schoolIds || schoolIds.length == 0) { - return APIResponse.toExceptionResponse(ApiResEnums.FAIL_WAIT_A_MINUTE); - } - boolean deleteScSchool = scSchoolService.removeByIds(Arrays.asList(schoolIds)); - if (deleteScSchool) { - return APIResponse.toOkResponse(); - } else { - return APIResponse.toExceptionResponse(ApiResEnums.FAIL_WAIT_A_MINUTE); - } - } -} diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/IScSchoolService.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/IScSchoolService.java deleted file mode 100644 index 594c0f6..0000000 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/IScSchoolService.java +++ /dev/null @@ -1,34 +0,0 @@ -package cn.xluobo.business.sc.base.service; - -import cn.xluobo.business.sc.base.domain.req.ReqSchoolSelect; -import cn.xluobo.business.sc.base.domain.resp.RespSchoolSelect; -import cn.xluobo.business.sc.base.repo.model.ScSchool; - -import java.util.List; - -/** - *

- * 学校信息 服务类 - *

- * - * @author zhangby - * @since 2020-04-27 07:13:36 - */ -public interface IScSchoolService extends com.baomidou.mybatisplus.extension.service.IService { - - /** - * 学校select - * - * @param schoolSelect - * @return - */ - List selectSchoolSelect(ReqSchoolSelect schoolSelect); - - /** - * 根据名称获取学校,如果不存在自动保存 - * - * @param schoolName - * @return - */ - Long getSchoolId(String schoolName); -} diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/impl/ScSchoolServiceImpl.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/impl/ScSchoolServiceImpl.java deleted file mode 100644 index 5316e3f..0000000 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/base/service/impl/ScSchoolServiceImpl.java +++ /dev/null @@ -1,48 +0,0 @@ -package cn.xluobo.business.sc.base.service.impl; - -import cn.xluobo.business.sc.base.domain.req.ReqSchoolSelect; -import cn.xluobo.business.sc.base.domain.resp.RespSchoolSelect; -import cn.xluobo.business.sc.base.repo.mapper.ScSchoolMapper; -import cn.xluobo.business.sc.base.repo.model.ScSchool; -import cn.xluobo.business.sc.base.service.IScSchoolService; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - *

- * 学校信息 服务实现类 - *

- * - * @author zhangby - * @since 2020-04-27 07:13:36 - */ -@Service -public class ScSchoolServiceImpl extends ServiceImpl implements IScSchoolService { - - @Override - public List selectSchoolSelect(ReqSchoolSelect schoolSelect) { - return baseMapper.selectForSelect(schoolSelect); - } - - @Override - public Long getSchoolId(String schoolName) { - if(StringUtils.isNotEmpty(schoolName)) { - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("school_name", schoolName); - List list = this.list(qw); - if(null != list && list.size() >0 ){ - return list.get(0).getSchoolId(); - } else { - ScSchool scSchool = new ScSchool(); - scSchool.setSchoolName(schoolName); - this.save(scSchool); - return scSchool.getSchoolId(); - } - } - return null; - } -} diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/course/ReqAddScCourse.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/course/ReqAddScCourse.java index 9b6c83b..6b1f447 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/course/ReqAddScCourse.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/course/ReqAddScCourse.java @@ -61,6 +61,11 @@ public class ReqAddScCourse { */ private boolean feeModeCycle; + /** + * 教练课时费 + */ + private BigDecimal claFee; + private List feeModeHourList; private List feeModeDateList; diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/time/ReqClaTimeCount.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/time/ReqClaTimeCount.java index 535232e..9d88f6d 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/time/ReqClaTimeCount.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/time/ReqClaTimeCount.java @@ -1,6 +1,7 @@ package cn.xluobo.business.sc.course.domain.req.time; import cn.xluobo.core.page.ReqDeptCondition; +import com.ruoyi.common.utils.SecurityUtils; import lombok.Builder; import lombok.Data; @@ -14,7 +15,12 @@ public class ReqClaTimeCount extends ReqDeptCondition { private String beginDate; private String endDate; + private String tenantId; private Boolean hadBegin; private Long teacherId; + public String getTenantId(){ + return SecurityUtils.getLoginUser().getNowTenantId(); + } + } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/time/ReqSearchClaTime.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/time/ReqSearchClaTime.java index 2c6b5cd..f90c532 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/time/ReqSearchClaTime.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/req/time/ReqSearchClaTime.java @@ -1,6 +1,5 @@ package cn.xluobo.business.sc.course.domain.req.time; -import cn.xluobo.core.page.ReqPageBase; import com.ruoyi.common.utils.SecurityUtils; import lombok.Data; import org.joda.time.DateTime; @@ -9,10 +8,10 @@ import java.io.Serializable; /** * @author :zhangbaoyu - * @date :Created in 2020/9/18 14:45 + * @date :Created in 2020/9/18 14:45 extends ReqPageBase */ @Data -public class ReqSearchClaTime extends ReqPageBase implements Serializable { +public class ReqSearchClaTime implements Serializable { // 排课 编号 private String courseTimeId; diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/resp/course/RespSearchCourse.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/resp/course/RespSearchCourse.java index 19f0633..3c7890b 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/resp/course/RespSearchCourse.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/domain/resp/course/RespSearchCourse.java @@ -3,6 +3,7 @@ package cn.xluobo.business.sc.course.domain.resp.course; import lombok.Data; import java.io.Serializable; +import java.math.BigDecimal; import java.util.Date; /** @@ -62,4 +63,6 @@ public class RespSearchCourse implements Serializable { * 学生课程 */ private Long studentCourseId; + + private BigDecimal claFee;//教练课时费 } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapper/ScClaTimeAttendMapper.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapper/ScClaTimeAttendMapper.java index c2fa5b8..93880b4 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapper/ScClaTimeAttendMapper.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapper/ScClaTimeAttendMapper.java @@ -46,7 +46,9 @@ public interface ScClaTimeAttendMapper extends com.baomidou.mybatisplus.core.map * @param endDate * @return */ - Integer selectNeedAttendCount(@Param("beginDate") String beginDate, @Param("endDate") String endDate); + Integer selectNeedAttendCount(@Param("beginDate") String beginDate + , @Param("endDate") String endDate + , @Param("tenantId") String tenantId); /** * 学生上课出席数量 @@ -56,7 +58,10 @@ public interface ScClaTimeAttendMapper extends com.baomidou.mybatisplus.core.map * @param attendStatus * @return */ - Integer selectAttendCount(@Param("beginDate") String beginDate, @Param("endDate") String endDate, @Param("attendStatus") String[] attendStatus); + Integer selectAttendCount(@Param("beginDate") String beginDate + , @Param("endDate") String endDate + , @Param("attendStatus") String[] attendStatus + , @Param("tenantId") String tenantId); /** * 实消 学生消耗课时数量 @@ -65,7 +70,9 @@ public interface ScClaTimeAttendMapper extends com.baomidou.mybatisplus.core.map * @param endDate * @return */ - BigDecimal selectAttendCostHour(@Param("beginDate") String beginDate, @Param("endDate") String endDate); + BigDecimal selectAttendCostHour(@Param("beginDate") String beginDate + , @Param("endDate") String endDate + , @Param("tenantId") String tenantId); /** * 应消 学生消耗课时数量 @@ -74,7 +81,9 @@ public interface ScClaTimeAttendMapper extends com.baomidou.mybatisplus.core.map * @param endDate * @return */ - BigDecimal selectNeedAttendCostHour(@Param("beginDate") String beginDate, @Param("endDate") String endDate); + BigDecimal selectNeedAttendCostHour(@Param("beginDate") String beginDate + , @Param("endDate") String endDate + , @Param("tenantId") String tenantId); /** * 教师 指定日期范围内 累计获得课时 diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapper/ScCourseMapper.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapper/ScCourseMapper.java index c07650c..ca4f996 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapper/ScCourseMapper.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapper/ScCourseMapper.java @@ -37,7 +37,10 @@ public interface ScCourseMapper extends BaseMapper { * @param page * @return */ - List selectCourseListWithStudentCourse(@Param("reqSearchScCourse") ReqSearchScCourse reqSearchScCourse, @Param("page") RespPage page); + List selectCourseListWithStudentCourse(@Param("reqSearchScCourse") ReqSearchScCourse reqSearchScCourse + , @Param("page") RespPage page + , @Param("tenantId") String tenantId + ); /** * 导出课程 diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapping/ScClaTimeAttendMapper.xml b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapping/ScClaTimeAttendMapper.xml index 0bfe1ae..f25919b 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapping/ScClaTimeAttendMapper.xml +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/course/repo/mapping/ScClaTimeAttendMapper.xml @@ -49,6 +49,7 @@ and cc.cla_id=ct.cla_id and cc.cla_id=sc.cla_id and sc.status='1' + and cc.tenant_id=#{tenantId} and (sc.charge_type in ('hour','cycle') or (charge_type='date' and exists( select 1 from sc_student_course_order sco @@ -64,12 +65,14 @@ and ct.course_time_id=cta.course_time_id and ct.cla_id=cc.cla_id + and cc.tenant_id=#{tenantId} and ct.cla_date between #{beginDate} and #{endDate} select ct.course_time_id,ct.cla_id,cc.cla_name, course.course_id,course.course_name, - ct.teacher_id,s.staff_name, + ct.teacher_id,s.nick_name as staff_name, ct.status, ct.cla_date,ct.start_time,ct.end_time, ct.real_cla_date,ct.real_start_time,ct.real_end_time, @@ -67,7 +67,7 @@ from sc_course_cla cc left join sc_course course on cc.course_id=course.course_id, sc_cla_time ct - left join sys_staff s on ct.teacher_id=s.staff_id + left join sys_user s on ct.teacher_id=s.user_id where cc.cla_id = ct.cla_id and cc.tenant_id=#{searchClaTime.tenantId} and ct.cla_date between #{searchClaTime.beginDate} and #{searchClaTime.endDate} @@ -107,6 +107,7 @@ - select count(distinct o.student_id) from sc_order o where o.order_status='2' and o.receipt_fee+o.balance_fee o.actual_total_fee + select count(distinct o.student_id) from sc_order o + where o.order_status='2' + and o.tenant_id=#{tenantId} + and o.receipt_fee+o.balance_fee o.actual_total_fee diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/order/service/BusinessScOrderService.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/order/service/BusinessScOrderService.java index 3eec2bc..16641b9 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/order/service/BusinessScOrderService.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/order/service/BusinessScOrderService.java @@ -34,7 +34,6 @@ import cn.xluobo.business.sys.admin.service.ISysDeptService; import cn.xluobo.business.sys.admin.service.ISysUserService; import cn.xluobo.business.sys.receipt.repo.model.SysReceiptAccount; import cn.xluobo.business.sys.receipt.service.ISysReceiptAccountService; -import cn.xluobo.business.sys.staff.service.ISysStaffService; import cn.xluobo.business.sys.tag.service.ISysTagService; import cn.xluobo.config.exception.BusinessException; import cn.xluobo.core.api.APIBaseResponse; @@ -102,8 +101,7 @@ public class BusinessScOrderService { private ISysTagService tagService; @Autowired private ScOrderMapper orderMapper; - @Autowired - private ISysStaffService staffService; + @Autowired private ISysUserService userService; @Autowired @@ -164,10 +162,12 @@ public class BusinessScOrderService { */ public APIResponse signUp(ReqBusinessSignUp reqBusinessSignUp) { LoginUser loginUser = SecurityUtils.getLoginUser(); + //校验参数 APIResponse checkParam = reqBusinessSignUp.checkParam(); if (!checkParam.isSuccess()) { return checkParam; } + Long studentId = reqBusinessSignUp.getStudentId(); Long handleDepartId = reqBusinessSignUp.getHandleDepartId(); @@ -308,7 +308,7 @@ public class BusinessScOrderService { for (ReqBusinessSignUpReceipt signUpReceipt : signUpReceiptList) { SysReceiptAccount receiptAccount = receiptAccountService.getById(signUpReceipt.getAccountId()); if (null == receiptAccount) { - throw new BusinessException("无发获取收款账户,请核查后重试!"); + throw new BusinessException("无法获取收款账户,请核查后重试!"); } ScOrderAccount orderAccount = new ScOrderAccount(); orderAccount.setOrderId(orderId); diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/order/service/impl/ScOrderServiceImpl.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/order/service/impl/ScOrderServiceImpl.java index fa202ee..234eebd 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/order/service/impl/ScOrderServiceImpl.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/order/service/impl/ScOrderServiceImpl.java @@ -7,6 +7,7 @@ import cn.xluobo.business.sc.order.service.IScOrderService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.utils.SecurityUtils; import org.springframework.stereotype.Service; /** @@ -32,12 +33,13 @@ public class ScOrderServiceImpl extends ServiceImpl impl public Integer orderCount(String beginDate, String endDate, String orderType) { QueryWrapper qw = new QueryWrapper<>(); qw.eq("order_type", orderType); + qw.eq("tenant_id", SecurityUtils.getLoginUser().getNowTenantId()); qw.between("handle_date", beginDate, endDate); return this.count(qw); } @Override public Integer arrearsStudentCount() { - return baseMapper.selectArrearsStudentCount(); + return baseMapper.selectArrearsStudentCount(SecurityUtils.getLoginUser().getNowTenantId()); } } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/salary/controller/ScCommissionPlansController.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/salary/controller/ScCommissionPlansController.java index eae9133..78bef51 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/salary/controller/ScCommissionPlansController.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/salary/controller/ScCommissionPlansController.java @@ -28,7 +28,9 @@ public class ScCommissionPlansController { RespPage page1 = service.page(page, Wrappers.lambdaQuery() .eq(StrUtil.isNotEmpty((CharSequence) params.get("planName")), ScCommissionPlans::getPlanName, params.get("planName")) - .eq(ObjectUtil.isNotEmpty(params.get("isActive")), ScCommissionPlans::getIsActive, params.get("isActive")) + .eq(ScCommissionPlans::getTenantId, SecurityUtils.getLoginUser().getNowTenantId()) + .eq(ObjectUtil.isNotEmpty(params.get("isActive")), + ScCommissionPlans::getIsActive, params.get("isActive")) ); return AjaxResult.success(page1); } @@ -37,6 +39,7 @@ public class ScCommissionPlansController { public AjaxResult listAll(){ List page1 = service.list( Wrappers.lambdaQuery() .eq(ScCommissionPlans::getIsActive, 1) + .eq(ScCommissionPlans::getTenantId, SecurityUtils.getLoginUser().getNowTenantId()) ); return AjaxResult.success(page1); } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/salary/repo/model/ScCommissionPlans.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/salary/repo/model/ScCommissionPlans.java index 0c42abf..b858419 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/salary/repo/model/ScCommissionPlans.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/salary/repo/model/ScCommissionPlans.java @@ -1,10 +1,10 @@ package cn.xluobo.business.sc.salary.repo.model; 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 com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.utils.SecurityUtils; import lombok.Getter; import lombok.Setter; @@ -41,7 +41,7 @@ public class ScCommissionPlans { private Byte isActive; - @TableField(exist = false) + private String tenantId; @@ -49,4 +49,8 @@ public class ScCommissionPlans { private Date effectiveDate; private Date createdAt; + + public String getTenantId(){ + return SecurityUtils.getLoginUser().getNowTenantId(); + } } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/controller/ScStudentAccountController.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/controller/ScStudentAccountController.java index f23b88b..05f1996 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/controller/ScStudentAccountController.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/controller/ScStudentAccountController.java @@ -1,10 +1,7 @@ package cn.xluobo.business.sc.student.controller; import cn.xluobo.business.sc.student.service.BusinessScStudentAccountService; -import cn.xluobo.core.api.APIResponse; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -27,9 +24,9 @@ public class ScStudentAccountController { * @param studentId * @return */ - @GetMapping("/info/studentAccountBalance/{studentId}") - public APIResponse studentAccountBalance(@PathVariable("studentId") Long studentId) { - return accountService.studentAccountBalance(studentId); - } +// @GetMapping("/info/studentAccountBalance/{studentId}") +// public APIResponse studentAccountBalance(@PathVariable("studentId") Long studentId) { +// return accountService.studentAccountBalance(studentId); +// } } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/controller/ScStudentCourseController.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/controller/ScStudentCourseController.java index 2fa0c88..1ed3d92 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/controller/ScStudentCourseController.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/controller/ScStudentCourseController.java @@ -50,10 +50,10 @@ public class ScStudentCourseController { * 已报名未选择班级 选择班级 * @return */ - @PostMapping("/update/studentCourseChooseCla") - public APIResponse studentCourseChooseCla(@RequestBody ReqStudentCourseChooseCla studentCourseChooseCla){ - return studentCourseService.studentCourseChooseCla(studentCourseChooseCla); - } +// @PostMapping("/update/studentCourseChooseCla") +// public APIResponse studentCourseChooseCla(@RequestBody ReqStudentCourseChooseCla studentCourseChooseCla){ +// return studentCourseService.studentCourseChooseCla(studentCourseChooseCla); +// } /** * 记上课 @@ -112,8 +112,8 @@ public class ScStudentCourseController { * @param studentCourseId * @return */ - @PostMapping("/update/removeStuFromCla/{studentCourseId}") - public APIResponse removeStuFromCla(@PathVariable("studentCourseId") Long studentCourseId) { - return studentCourseService.removeStuFromCla(studentCourseId); - } +// @PostMapping("/update/removeStuFromCla/{studentCourseId}") +// public APIResponse removeStuFromCla(@PathVariable("studentCourseId") Long studentCourseId) { +// return studentCourseService.removeStuFromCla(studentCourseId); +// } } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/req/ReqSearchStuCourseSignUp.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/req/ReqSearchStuCourseSignUp.java index 229b3ad..aec272b 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/req/ReqSearchStuCourseSignUp.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/req/ReqSearchStuCourseSignUp.java @@ -1,6 +1,7 @@ package cn.xluobo.business.sc.student.domain.req; import cn.xluobo.core.page.ReqPageBase; +import com.ruoyi.common.utils.SecurityUtils; import lombok.Data; import java.io.Serializable; @@ -26,4 +27,10 @@ public class ReqSearchStuCourseSignUp extends ReqPageBase implements Serializabl // 剩余最大课时 private Integer minBalanceHour; + + private String tenantId; + + public String getTenantId(){ + return SecurityUtils.getLoginUser().getNowTenantId(); + } } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/req/ReqStudentSelect.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/req/ReqStudentSelect.java index ffa4d73..dec14a5 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/req/ReqStudentSelect.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/req/ReqStudentSelect.java @@ -15,5 +15,6 @@ public class ReqStudentSelect extends ReqPageBase { private String search; private String schoolId; + private String tenantId; } diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/resp/RespSearchStudent.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/resp/RespSearchStudent.java index 73b402d..40bae13 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/resp/RespSearchStudent.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/resp/RespSearchStudent.java @@ -24,9 +24,6 @@ public class RespSearchStudent implements Serializable { @JsonSerialize(using = ToStringSerializer.class) private Long studentId; - private Long schoolId; - - private String schoolName; private String studentName; diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/resp/RespStuCourseSignUpStudent.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/resp/RespStuCourseSignUpStudent.java index 876a0a8..282daf7 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/resp/RespStuCourseSignUpStudent.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/domain/resp/RespStuCourseSignUpStudent.java @@ -1,6 +1,8 @@ package cn.xluobo.business.sc.student.domain.resp; import cn.xluobo.business.sc.course.enums.CourseChargeTypeEnum; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; import org.joda.time.DateTime; import org.joda.time.Period; @@ -17,6 +19,7 @@ import java.util.Date; @Data public class RespStuCourseSignUpStudent { + @JsonSerialize(using = ToStringSerializer.class) private Long studentCourseId; private Long claId; diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapper/ScStudentCourseMapper.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapper/ScStudentCourseMapper.java index ad82f60..30ee3ac 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapper/ScStudentCourseMapper.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapper/ScStudentCourseMapper.java @@ -80,7 +80,7 @@ public interface ScStudentCourseMapper extends BaseMapper { * @param minBalanceDay 最小剩余天数 * @return */ - Integer selectWillExpireDateCount(Integer minBalanceDay); + Integer selectWillExpireDateCount( @Param("minBalanceDay") Integer minBalanceDay, @Param("tenantId") String tenantId); /** * 在读学生 剩余课时 小于 minBalanceHour 的数量 @@ -88,7 +88,7 @@ public interface ScStudentCourseMapper extends BaseMapper { * @param minBalanceHour 最小剩余课时数 * @return */ - Integer selectWillExpireHourCount(Integer minBalanceHour); + Integer selectWillExpireHourCount(@Param("minBalanceHour")Integer minBalanceHour, @Param("tenantId") String tenantId); /** * 学生报读列表 diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapping/ScStudentCourseMapper.xml b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapping/ScStudentCourseMapper.xml index e301f3b..e81bba0 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapping/ScStudentCourseMapper.xml +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapping/ScStudentCourseMapper.xml @@ -115,8 +115,9 @@ select count(1) from sc_student_course sc where sc.charge_type='date' and sc.status='1' and exists(select 1 from sc_student_course_order sco - where sco.student_course_id=sc.student_course_id + where sc.student_course_id=sc.student_course_id and sco.valid=1 + and sc.tenant_id=#{tenantId} and date_format(now(),'%Y-%m-%d') between sco.begin_date and sco.end_date and (datediff(sco.end_date,now())+1+((select ifnull(sum(sco.total_day),0) from sc_student_course_order sco_will_effect where sco_will_effect.student_course_id=sc.student_course_id @@ -127,6 +128,7 @@ select count(1) from sc_student_course sc where sc.charge_type ]]> 'date' and sc.status='1' + and sc.tenant_id=#{tenantId} and (sc.balance_hour - (select ifnull(sum(sco.balance_hour),0) from sc_student_course_order sco where sc.student_course_id=sco.student_course_id @@ -160,7 +162,7 @@ from sc_student_course a left join sys_dept d on a.dept_id=d.dept_id ,sc_student b - where a.student_id=b.student_id + where a.student_id=b.student_id and d.tenant_id=#{reqSearchStuCourseSignUp.tenantId} and a.cla_id=#{reqSearchStuCourseSignUp.claId} diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapping/ScStudentMapper.xml b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapping/ScStudentMapper.xml index f33160f..7883dbb 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapping/ScStudentMapper.xml +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sc/student/repo/mapping/ScStudentMapper.xml @@ -4,9 +4,8 @@ + - select a.*,b.username,b.locked,fcn_dict_name(a.personnel_status,'personnel_status') personnel_status_name, - d.dept_name - from sys_staff a - left join sys_user b on a.user_id=b.user_id - left join sys_dept d on a.dept_id=d.dept_id - where a.delete_flag='0' - - and a.staff_name like concat('%',#{reqSearchStaff.staffName},'%') - - - and a.personnel_status = #{reqSearchStaff.personnelStatus,jdbcType=VARCHAR} - - - and a.teacher = #{reqSearchStaff.teacher} - - - and a.sex = #{reqSearchStaff.sex} - - - and (a.dept_id=#{reqSearchStaff.deptId} or a.dept_id in (select dept_id from sys_dept dd where find_in_set(#{reqSearchStaff.deptId} ,dd.ancestors))) - - order by a.create_time desc - - - diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/repo/model/SysStaff.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/repo/model/SysStaff.java deleted file mode 100644 index 1cfd455..0000000 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/repo/model/SysStaff.java +++ /dev/null @@ -1,134 +0,0 @@ -package cn.xluobo.business.sys.staff.repo.model; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableLogic; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.io.Serializable; -import java.util.Date; - -/** - *

- * 员工信息 - *

- * - * @author zhangby - * @since 2020-03-17 11:27:37 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@Accessors(chain = true) -@TableName("sys_staff") -public class SysStaff implements Serializable { - - - /** - * 教师id - */ - @TableId(value = "staff_id") - private Long staffId; - - /** - * 所属租户 - */ - @TableField("tenant_id") - private String tenantId; - - @TableField("user_id") - private Long userId; - - /** - * 机构管理者 - */ - @TableField("super_staff") - private Boolean superStaff; - - /** - * 员工姓名 - */ - @TableField("staff_name") - private String staffName; - - /** - * 联系电话 - */ - @TableField("phone") - private String phone; - - /** - * 邮箱 - */ - @TableField("email_address") - private String emailAddress; - - /** - * 性别 M男 F女 - */ - @TableField("sex") - private String sex; - - /** - * 入职日期 - */ - @TableField("entry_date") - private String entryDate; - - /** - * 人事状态 1正式员工 2实习员工 3试用期 4兼职员工 5停薪留职 6主动离职 7解聘 - */ - @TableField("personnel_status") - private String personnelStatus; - - /** - * 是否为教师 - */ - @TableField("teacher") - private Boolean teacher; - - /** - * 头像 - */ - @TableField("avatar_img") - private String avatarImg; - - /** - * 部门编号 - */ - @TableField("dept_id") - private Long deptId; - - /** - * 删除标志(1删除 0在用) - */ - @TableField("delete_flag") - @TableLogic - private String deleteFlag; - - /** - * 创建者 - */ - @TableField("create_user") - private Long createUser; - - /** - * 创建时间 - */ - @TableField("create_time") - private Date createTime; - - /** - * 更新者 - */ - @TableField("last_update_user") - private Long lastUpdateUser; - - /** - * 更新时间 - */ - @TableField("last_update_time") - private Date lastUpdateTime; -} diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/BusinessSysStaffService.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/BusinessSysStaffService.java deleted file mode 100644 index 71e98f7..0000000 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/BusinessSysStaffService.java +++ /dev/null @@ -1,384 +0,0 @@ -package cn.xluobo.business.sys.staff.service; - -import cn.hutool.core.util.ObjectUtil; -import cn.xluobo.business.sc.course.domain.req.ReqSelect; -import cn.xluobo.business.sc.course.repo.model.ScClaTime; -import cn.xluobo.business.sc.course.repo.model.ScCourseCla; -import cn.xluobo.business.sc.course.service.IScClaTimeService; -import cn.xluobo.business.sc.course.service.IScCourseClaService; -import cn.xluobo.business.sys.admin.domain.req.ReqUpdateUserRole; -import cn.xluobo.business.sys.admin.model.SysUserDept; -import cn.xluobo.business.sys.admin.model.SysUserTenant; -import cn.xluobo.business.sys.admin.service.*; -import cn.xluobo.business.sys.staff.domain.req.ReqBusinessAddStaff; -import cn.xluobo.business.sys.staff.domain.req.ReqSearchStaff; -import cn.xluobo.business.sys.staff.domain.resp.RespBusinessStaffDetail; -import cn.xluobo.business.sys.staff.domain.resp.RespStaffInfo; -import cn.xluobo.business.sys.staff.repo.model.SysStaff; -import cn.xluobo.core.api.APIBaseResponse; -import cn.xluobo.core.api.APIResponse; -import cn.xluobo.core.api.ApiResEnums; -import cn.xluobo.core.page.RespPage; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.ruoyi.common.core.domain.entity.SysUser; -import com.ruoyi.common.core.domain.model.LoginUser; -import com.ruoyi.common.utils.SecurityUtils; -import org.apache.commons.compress.utils.Lists; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.Date; -import java.util.List; -import java.util.stream.Collectors; - -/** - * @author :zhangbaoyu - * @date :Created in 2020-01-14 17:24 - */ -@Service -@Transactional -public class BusinessSysStaffService { - - @Autowired - private ISysStaffService sysStaffService; - @Autowired - private ISysUserService userService; - @Autowired - private ISysRoleService sysRoleService; - @Autowired - private IScClaTimeService claTimeService; - @Autowired - private IScCourseClaService courseClaService; - @Autowired - private ISysUserDeptService userDeptService; - @Autowired - private ISysUserTenantService userTenantService; - - /** - * 查询 - * - * @param reqSearchSysStaff - * @return - */ - public APIResponse searchList(ReqSearchStaff reqSearchSysStaff) { - RespPage page = new RespPage(reqSearchSysStaff.getPageNum(), reqSearchSysStaff.getPageSize()); - List staffList = sysStaffService.searchStaffList(reqSearchSysStaff, page); - page.setRows(staffList); - return APIResponse.toAPIResponse(page); - } - - /** - * 前端select - * - * @return - */ - public APIResponse teacherSelect(ReqSelect reqSelect) { - List list = sysStaffService.teacherList(reqSelect.getSearch()); - return APIResponse.toAPIResponse(list); - } - - - /** - * 详情 - * - * @param teacherId - * @return - */ - public APIResponse detailById(Long teacherId) { - if (null == teacherId) { - return APIResponse.toAPIResponse(null); - } - LoginUser loginUser = SecurityUtils.getLoginUser(); - - RespBusinessStaffDetail respBusinessStaffDetail = new RespBusinessStaffDetail(); - - // 员工信息 - SysStaff staffInfo = sysStaffService.getById(teacherId); - respBusinessStaffDetail.setStaffInfo(staffInfo); - - // 用户名 - if (ObjectUtil.isNotEmpty(staffInfo.getUserId())) { - QueryWrapper qw = new QueryWrapper<>(); - qw.select("username", "locked"); - qw.eq("user_id", staffInfo.getUserId()); - SysUser sysUser = userService.getOne(qw); - if (null == sysUser) { - staffInfo.setUserId(null); - } - respBusinessStaffDetail.setUserInfo(sysUser); - - // 员工所属校区 - QueryWrapper qwUserDept = new QueryWrapper<>(); - qwUserDept.eq("user_id", staffInfo.getUserId()); - qwUserDept.eq("tenant_id", loginUser.getNowTenantId()); - List userDeptList = userDeptService.list(qwUserDept); - boolean allCampus = userDeptList.stream().anyMatch(item -> item.getDeptId() == -1L); - if (allCampus) { - respBusinessStaffDetail.setBelongCampus("all"); - respBusinessStaffDetail.setPartCampus(Lists.newArrayList()); - } else { - respBusinessStaffDetail.setBelongCampus("part"); - - List deptIdList = userDeptList.stream().map(SysUserDept::getDeptId).collect(Collectors.toList()); - respBusinessStaffDetail.setPartCampus(deptIdList); - } - - - // 用户角色 - List roleTreeIdList = sysRoleService.selectUserRoleTreeIdList(staffInfo.getUserId(), loginUser.getNowTenantId()); - respBusinessStaffDetail.setRoleTreeIdList(roleTreeIdList); - } else { - respBusinessStaffDetail.setUserInfo(null); - respBusinessStaffDetail.setRoleTreeIdList(Lists.newArrayList()); - respBusinessStaffDetail.setBelongCampus("all"); - respBusinessStaffDetail.setPartCampus(Lists.newArrayList()); - } - - return APIResponse.toAPIResponse(respBusinessStaffDetail); - } - - /** - * 添加员工 - * - * @param staff - * @return - */ - public APIResponse addSysStaff(ReqBusinessAddStaff staff) { - APIBaseResponse checkParam = staff.checkParam(); - if (!checkParam.isSuccess()) { - return APIResponse.toExceptionResponse(checkParam.getRespMsg()); - } - LoginUser loginUser = SecurityUtils.getLoginUser(); - boolean isLoginUser = staff.isLoginUser(); - // 保存用户信息 - if (isLoginUser) { - - if (StringUtils.isAnyEmpty(staff.getUsername(), staff.getPassword())) { - return APIResponse.toExceptionResponse(("请求参数错误,请完善后重试")); - } else if (!staff.getPassword().equals(staff.getCheckPass())) { - return APIResponse.toExceptionResponse(("新旧密码输入不一致,请稍后重试")); - } - // 校验账号是否已被注册 - boolean usernameUnique = userService.checkUsernameUnique(staff.getUsername()); - if (!usernameUnique) { - return APIResponse.toExceptionResponse(("用户名已被注册,请修改后重新提交")); - } - - // 添加用户 - SysUser sysUser = new SysUser(); - sysUser.setUserName(staff.getUsername()); - sysUser.setPassword(staff.getPassword()); - sysUser.setNickName(staff.getStaffName()); - sysUser.setPhonenumber(staff.getPhone()); - sysUser.setEmail(staff.getEmailAddress()); - sysUser.setDeptId(staff.getDeptId()); - - // 关联当前租户 - SysUserTenant sysUserTenant = new SysUserTenant(); - sysUserTenant.setUserId(sysUser.getUserId()); - sysUserTenant.setTenantId(loginUser.getNowTenantId()); - userTenantService.save(sysUserTenant); - - staff.setUserId(sysUser.getUserId()); - - // 保存角色信息 - ReqUpdateUserRole reqUpdateUserRole = new ReqUpdateUserRole(); - reqUpdateUserRole.setTenantId(loginUser.getNowTenantId()); - reqUpdateUserRole.setUserId(sysUser.getUserId()); - reqUpdateUserRole.setRoleIds(staff.getRoleIds()); - - // 所属校区 - String belongCampus = staff.getBelongCampus(); - if ("all".equals(belongCampus)) { - SysUserDept sysUserDept = new SysUserDept(); - sysUserDept.setUserId(sysUser.getUserId()); - sysUserDept.setDeptId(-1L); - sysUserDept.setTenantId(loginUser.getNowTenantId()); - userDeptService.save(sysUserDept); - } else if ("part".equals(belongCampus)) { - String[] partCampus = staff.getPartCampus(); - List userDeptList = Lists.newArrayList(); - for (String campus : partCampus) { - SysUserDept sysUserDept = new SysUserDept(); - sysUserDept.setUserId(sysUser.getUserId()); - sysUserDept.setDeptId(Long.valueOf(campus)); - sysUserDept.setTenantId(loginUser.getNowTenantId()); - userDeptList.add(sysUserDept); - } - if (userDeptList.size() > 0) { - userDeptService.saveBatch(userDeptList); - } - } - } - - // 保存员工信息 - staff.setCreateUser(loginUser.getUserId()); - boolean addSysStaff = sysStaffService.save(staff); - if (addSysStaff) { - return APIResponse.toOkResponse(); - } else { - return APIResponse.toExceptionResponse(ApiResEnums.FAIL_WAIT_A_MINUTE); - } - } - - /** - * 更新 - * - * @param staff - * @return - */ - public APIResponse updateSysStaff(ReqBusinessAddStaff staff) { - if (null == staff.getStaffId()) { - return APIResponse.toExceptionResponse(ApiResEnums.FAIL_WAIT_A_MINUTE); - } - APIBaseResponse checkParam = staff.checkParam(); - if (!checkParam.isSuccess()) { - return APIResponse.toExceptionResponse(checkParam.getRespMsg()); - } - - LoginUser loginUser = SecurityUtils.getLoginUser(); - // 可登陆信息 - boolean isLoginUser = staff.isLoginUser(); - - SysStaff dbStaffInfo = sysStaffService.getById(staff.getStaffId()); - - if (ObjectUtil.isEmpty(dbStaffInfo.getUserId()) && isLoginUser) { - if (StringUtils.isAnyEmpty(staff.getUsername(), staff.getPassword())) { - return APIResponse.toExceptionResponse(("请求参数错误,请完善后重试")); - } else if (!staff.getPassword().equals(staff.getCheckPass())) { - return APIResponse.toExceptionResponse(("新旧密码输入不一致,请稍后重试")); - } - // 校验账号是否已被注册 - boolean usernameUnique = userService.checkUsernameUnique(staff.getUsername()); - if (!usernameUnique) { - return APIResponse.toExceptionResponse(("用户名已被注册,请修改后重新提交")); - } - } - - boolean addUser = false; - if (ObjectUtil.isNotEmpty(dbStaffInfo.getUserId())) { - addUser = true; - // 如果有关联用户 - - // 变更用户相关信息 - SysUser sysUser = new SysUser(); - sysUser.setUserId(dbStaffInfo.getUserId()); - sysUser.setUserName(staff.getStaffName()); - sysUser.setPhonenumber(staff.getPhone()); - sysUser.setEmail(staff.getEmailAddress()); - sysUser.setDeptId(staff.getDeptId()); - - // 变更角色信息 - ReqUpdateUserRole reqUpdateUserRole = new ReqUpdateUserRole(); - reqUpdateUserRole.setUserId(sysUser.getUserId()); - reqUpdateUserRole.setTenantId(loginUser.getNowTenantId()); - reqUpdateUserRole.setRoleIds(staff.getRoleIds()); - - // 不变更关联用户ID - staff.setUserId(dbStaffInfo.getUserId()); - } else if (ObjectUtil.isEmpty(dbStaffInfo.getUserId()) && isLoginUser) { - addUser = true; - // 没有关联用户 并且允许登录 - SysUser sysUser = new SysUser(); - sysUser.setUserName(staff.getUsername()); - sysUser.setPassword(staff.getPassword()); - sysUser.setNickName(staff.getStaffName()); - sysUser.setPhonenumber(staff.getPhone()); - sysUser.setEmail(staff.getEmailAddress()); - sysUser.setDeptId(staff.getDeptId()); - staff.setUserId(sysUser.getUserId()); - - // 保存角色信息 - ReqUpdateUserRole reqUpdateUserRole = new ReqUpdateUserRole(); - reqUpdateUserRole.setUserId(sysUser.getUserId()); - reqUpdateUserRole.setTenantId(loginUser.getNowTenantId()); - reqUpdateUserRole.setRoleIds(staff.getRoleIds()); - } - - if (addUser) { - // 删除原校区 - UpdateWrapper uw = new UpdateWrapper<>(); - uw.eq("user_id", staff.getUserId()); - userDeptService.remove(uw); - // 所属校区 - String belongCampus = staff.getBelongCampus(); - if ("all".equals(belongCampus)) { - SysUserDept sysUserDept = new SysUserDept(); - sysUserDept.setUserId(staff.getUserId()); - sysUserDept.setDeptId(-1L); - sysUserDept.setTenantId(loginUser.getNowTenantId()); - userDeptService.save(sysUserDept); - } else if ("part".equals(belongCampus)) { - String[] partCampus = staff.getPartCampus(); - List userDeptList = Lists.newArrayList(); - for (String campus : partCampus) { - SysUserDept sysUserDept = new SysUserDept(); - sysUserDept.setUserId(staff.getUserId()); - sysUserDept.setDeptId(Long.valueOf(campus)); - sysUserDept.setTenantId(loginUser.getNowTenantId()); - userDeptList.add(sysUserDept); - } - if (userDeptList.size() > 0) { - userDeptService.saveBatch(userDeptList); - } - } - } - - - // 变更员工信息 - staff.setLastUpdateUser(loginUser.getUserId()); - staff.setLastUpdateTime(new Date()); - boolean updateSysStaff = sysStaffService.updateById(staff); - if (updateSysStaff) { - return APIResponse.toOkResponse(); - } else { - return APIResponse.toExceptionResponse(ApiResEnums.FAIL_WAIT_A_MINUTE); - } - } - - /** - * 删除 - * - * @param teacherIds - * @return - */ - public APIResponse deleteById(List teacherIds) { - if (null == teacherIds || teacherIds.isEmpty()) { - return APIResponse.toExceptionResponse(ApiResEnums.FAIL_WAIT_A_MINUTE); - } - - // 已排课不允许删除 - QueryWrapper qwSct = new QueryWrapper<>(); - qwSct.in("teacher_id", teacherIds); - qwSct.eq("status", "1"); - int claTimeCount = claTimeService.count(qwSct); - if (claTimeCount != 0) { - return APIResponse.toExceptionResponse("员工有待上课程,无法删除"); - } - - // 是否为班级班主任 - QueryWrapper qw = new QueryWrapper<>(); - qw.in("staff_id", teacherIds); - int courseClaCount = courseClaService.count(qw); - if (courseClaCount != 0) { - return APIResponse.toExceptionResponse("员工当前为班级任课教师,无法删除"); - } - - - // 用户禁用 - List userIds = sysStaffService.getUserIds(teacherIds); - if (null != userIds && !userIds.isEmpty()) { - UpdateWrapper uw = new UpdateWrapper<>(); - uw.in("user_id", userIds); - uw.set("enable", "0"); - userService.update(uw); - } - - // 逻辑删除员工 - sysStaffService.removeByIds(teacherIds); - return APIResponse.toOkResponse(); - } -} diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/ISysStaffService.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/ISysStaffService.java deleted file mode 100644 index c878fa2..0000000 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/ISysStaffService.java +++ /dev/null @@ -1,46 +0,0 @@ -package cn.xluobo.business.sys.staff.service; - -import cn.xluobo.business.sys.staff.domain.req.ReqSearchStaff; -import cn.xluobo.business.sys.staff.domain.resp.RespStaffInfo; -import cn.xluobo.business.sys.staff.repo.model.SysStaff; -import cn.xluobo.core.page.RespPage; -import com.baomidou.mybatisplus.extension.service.IService; - -import java.util.List; - -/** - *

- * 教师信息 服务类 - *

- * - * @author zhangby - * @since 2020-03-17 11:27:37 - */ -public interface ISysStaffService extends IService { - - List searchStaffList(ReqSearchStaff reqSearchStaff, RespPage page); - - /** - * 教师列表 - * @param teacherName - * @return - */ - List teacherList(String teacherName); - - /** - * 员工列表 - * @param staffName - * @return - */ - List staffList(String staffName); - - /** - * 获取关联用户id - * @param staffIds - * @return - */ - List getUserIds(List staffIds); - - // 根据用户获取 - Long getStaffIdByUserId(Long userId); -} diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/impl/SysStaffServiceImpl.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/impl/SysStaffServiceImpl.java deleted file mode 100644 index e4cd433..0000000 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/sys/staff/service/impl/SysStaffServiceImpl.java +++ /dev/null @@ -1,77 +0,0 @@ -package cn.xluobo.business.sys.staff.service.impl; - -import cn.xluobo.business.sys.staff.domain.req.ReqSearchStaff; -import cn.xluobo.business.sys.staff.domain.resp.RespStaffInfo; -import cn.xluobo.business.sys.staff.repo.mapper.SysStaffMapper; -import cn.xluobo.business.sys.staff.repo.model.SysStaff; -import cn.xluobo.business.sys.staff.service.ISysStaffService; -import cn.xluobo.core.page.RespPage; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; - -import java.util.List; -import java.util.stream.Collectors; - -/** - *

- * 教师信息 服务实现类 - *

- * - * @author zhangby - * @since 2020-03-17 11:27:37 - */ -@Service -public class SysStaffServiceImpl extends ServiceImpl implements ISysStaffService { - - @Override - public List searchStaffList(ReqSearchStaff reqSearchStaff, RespPage page) { - return baseMapper.selectStaffList(reqSearchStaff, page); - } - - @Override - public List teacherList(String teacherName) { - QueryWrapper qw = new QueryWrapper<>(); - qw.select("staff_name", "staff_id"); - qw.eq("teacher", "1"); - if (StringUtils.isNotEmpty(teacherName)) { - qw.like("staff_name", teacherName); - } - qw.orderByAsc("staff_name"); - return this.list(qw); - } - - @Override - public List staffList(String staffName) { - QueryWrapper qw = new QueryWrapper<>(); - qw.select("staff_name", "staff_id"); - if (StringUtils.isNotEmpty(staffName)) { - qw.like("staff_name", staffName); - } - qw.orderByAsc("staff_name"); - return this.list(qw); - } - - @Override - public List getUserIds(List staffIds) { - QueryWrapper qw = new QueryWrapper<>(); - qw.select("user_id"); - qw.in("staff_id", staffIds); - qw.isNotNull("user_id"); - List staffList = this.list(qw); - List userIds = staffList.stream().map(SysStaff::getUserId).collect(Collectors.toList()); - return userIds; - } - - @Override - public Long getStaffIdByUserId(Long userId) { - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("user_id", userId); - SysStaff sysStaff = this.getOne(qw); - if (null != sysStaff) { - return sysStaff.getStaffId(); - } - return null; - } -} diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/listener/ImportStudentOrderListener.java b/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/listener/ImportStudentOrderListener.java index 1346f9e..ec7bd0a 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/listener/ImportStudentOrderListener.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/listener/ImportStudentOrderListener.java @@ -1,10 +1,6 @@ package cn.xluobo.business.tool.impt.listener; import cn.hutool.core.util.ObjectUtil; -import cn.xluobo.business.sc.base.domain.req.ReqSchoolSelect; -import cn.xluobo.business.sc.base.domain.resp.RespSchoolSelect; -import cn.xluobo.business.sc.base.repo.model.ScSchool; -import cn.xluobo.business.sc.base.service.IScSchoolService; import cn.xluobo.business.sc.course.domain.export.ExpCourse; import cn.xluobo.business.sc.course.domain.req.ReqCourseClaSelect; import cn.xluobo.business.sc.course.domain.req.ReqSearchScCourse; @@ -38,8 +34,6 @@ import cn.xluobo.business.sys.admin.service.BusinessSysDeptService; import cn.xluobo.business.sys.admin.service.BusinessSysDictDataService; import cn.xluobo.business.sys.receipt.repo.model.SysReceiptAccount; import cn.xluobo.business.sys.receipt.service.ISysReceiptAccountService; -import cn.xluobo.business.sys.staff.repo.model.SysStaff; -import cn.xluobo.business.sys.staff.service.ISysStaffService; import cn.xluobo.business.tool.impt.domain.ImportStudentOrder; import cn.xluobo.core.api.APIBaseResponse; import cn.xluobo.core.page.RespPage; @@ -51,7 +45,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.ruoyi.common.core.domain.entity.SysDictData; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.LoginUser; +import com.ruoyi.system.service.ISysUserService; import lombok.Data; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -75,7 +71,6 @@ public class ImportStudentOrderListener extends AnalysisEventListener contactRelationList = dictDataService.dictTypeDataList("contact_relation"); // 性别 - List sexList = dictDataService.dictTypeDataList("sex"); - // 学校 - List schoolList = schoolService.selectSchoolSelect(new ReqSchoolSelect()); + List sexList = dictDataService.dictTypeDataList("sys_user_sex"); // 订单类型 - List orderDetailTagList = dictDataService.dictTypeDataList("order_detail_tag"); + List orderDetailTagList = dictDataService.dictTypeDataList("course_order_type"); // 报读校区 List campusList = deptService.campusList(); // 报读课程 课程-收费方式(校区) @@ -717,20 +694,14 @@ public class ImportStudentOrderListener extends AnalysisEventListener receiptAccountList = receiptAccountService.select(); // 销售员工 - List staffList = staffService.staffList(null); + List staffList = staffService.selectUserList(new SysUser()); // 收费模式 QueryWrapper qw = new QueryWrapper<>(); List courseChargeList = courseChargeService.list(qw); - contactRelationList.forEach(item -> { - contactRelationMap.put(item.getDictLabel(), item.getDictValue()); - }); sexList.forEach(item -> { sexMap.put(item.getDictLabel(), item.getDictValue()); }); - schoolList.forEach(item -> { - schoolMap.put(item.getSchoolName(), item.getSchoolId()); - }); orderDetailTagList.forEach(item -> { orderDetailTagMap.put(item.getDictLabel(), item.getDictValue()); }); @@ -757,7 +728,7 @@ public class ImportStudentOrderListener extends AnalysisEventListener { - staffMap.put(item.getStaffName(), item.getStaffId()); + staffMap.put(item.getNickName(), item.getUserId()); }); courseChargeList.forEach(item -> { chargeCacheMap.put(item.getChargeId(), item); diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/service/strategy/impl/ImportCourseClaImpl.java b/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/service/strategy/impl/ImportCourseClaImpl.java index 51346a9..ebe41c1 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/service/strategy/impl/ImportCourseClaImpl.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/service/strategy/impl/ImportCourseClaImpl.java @@ -10,8 +10,6 @@ import cn.xluobo.business.sc.course.service.IScCourseService; import cn.xluobo.business.sys.admin.domain.resp.RespTreeSelect; import cn.xluobo.business.sys.admin.service.BusinessSysDeptService; import cn.xluobo.business.sys.admin.service.BusinessSysDictDataService; -import cn.xluobo.business.sys.staff.repo.model.SysStaff; -import cn.xluobo.business.sys.staff.service.ISysStaffService; import cn.xluobo.business.tool.export.handler.bean.SelectValidationData; import cn.xluobo.business.tool.impt.domain.ImportCourseCla; import cn.xluobo.business.tool.impt.listener.ImportCourseClaListener; @@ -24,8 +22,10 @@ import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.ruoyi.common.core.domain.entity.SysDictData; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.system.service.ISysUserService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.FileUtils; import org.apache.commons.io.FilenameUtils; @@ -37,7 +37,10 @@ import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; -import java.io.*; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; import java.util.List; import java.util.Map; @@ -56,7 +59,7 @@ public class ImportCourseClaImpl extends AbstractImportStrategy { @Autowired private BusinessSysDeptService deptService; @Autowired - private ISysStaffService staffService; + private ISysUserService staffService; @Autowired private BusinessSysDictDataService dictDataService; @Autowired @@ -83,8 +86,8 @@ public class ImportCourseClaImpl extends AbstractImportStrategy { String[] campusNameStringArray = campusList.stream().map(RespTreeSelect::getLabel).toArray(String[]::new); // 教师列表 - List teacherList = staffService.teacherList(""); - String[] teacherNameStringArray = teacherList.stream().map(SysStaff::getStaffName).toArray(String[]::new); + List teacherList = staffService.selectUserList(new SysUser()); + String[] teacherNameStringArray = teacherList.stream().map(SysUser::getNickName).toArray(String[]::new); // 招生状态 List recruitStatusList = dictDataService.dictTypeDataList("recruit_status"); @@ -129,7 +132,7 @@ public class ImportCourseClaImpl extends AbstractImportStrategy { // 全部校区 List campusList = deptService.campusList(); // 教师列表 - List teacherList = staffService.teacherList(""); + List teacherList = staffService.selectUserList(new SysUser()); // 招生状态 List recruitStatusList = dictDataService.dictTypeDataList("recruit_status"); // 排课重复方式 @@ -155,7 +158,7 @@ public class ImportCourseClaImpl extends AbstractImportStrategy { campusMap.put(item.getLabel(), item.getId()); }); teacherList.forEach(item -> { - teacherMap.put(item.getStaffName(), item.getStaffId()); + teacherMap.put(item.getNickName(), item.getUserId()); }); recruitStatusList.forEach(item -> { recruitStatusMap.put(item.getDictLabel(), item.getDictValue()); @@ -208,7 +211,7 @@ public class ImportCourseClaImpl extends AbstractImportStrategy { // 全部校区 List campusList = deptService.campusList(); // 教师列表 - List teacherList = staffService.teacherList(""); + List teacherList = staffService.selectUserList(new SysUser()); // 招生状态 List recruitStatusList = dictDataService.dictTypeDataList("recruit_status"); // 排课重复方式 @@ -234,7 +237,7 @@ public class ImportCourseClaImpl extends AbstractImportStrategy { campusMap.put(item.getLabel(), item.getId()); }); teacherList.forEach(item -> { - teacherMap.put(item.getStaffName(), item.getStaffId()); + teacherMap.put(item.getNickName(), item.getUserId()); }); recruitStatusList.forEach(item -> { recruitStatusMap.put(item.getDictLabel(), item.getDictValue()); diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/service/strategy/impl/ImportStudentOrderImpl.java b/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/service/strategy/impl/ImportStudentOrderImpl.java index b667aca..7a05d37 100644 --- a/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/service/strategy/impl/ImportStudentOrderImpl.java +++ b/ruoyi-admin/src/main/java/cn/xluobo/business/tool/impt/service/strategy/impl/ImportStudentOrderImpl.java @@ -1,8 +1,5 @@ package cn.xluobo.business.tool.impt.service.strategy.impl; -import cn.xluobo.business.sc.base.domain.req.ReqSchoolSelect; -import cn.xluobo.business.sc.base.domain.resp.RespSchoolSelect; -import cn.xluobo.business.sc.base.service.IScSchoolService; import cn.xluobo.business.sc.course.domain.export.ExpCourse; import cn.xluobo.business.sc.course.domain.req.ReqCourseClaSelect; import cn.xluobo.business.sc.course.domain.req.ReqSearchScCourse; @@ -15,8 +12,6 @@ import cn.xluobo.business.sys.admin.service.BusinessSysDeptService; import cn.xluobo.business.sys.admin.service.BusinessSysDictDataService; import cn.xluobo.business.sys.receipt.repo.model.SysReceiptAccount; import cn.xluobo.business.sys.receipt.service.ISysReceiptAccountService; -import cn.xluobo.business.sys.staff.repo.model.SysStaff; -import cn.xluobo.business.sys.staff.service.ISysStaffService; import cn.xluobo.business.tool.export.handler.bean.SelectValidationData; import cn.xluobo.business.tool.impt.domain.ImportStudentOrder; import cn.xluobo.business.tool.impt.listener.ImportStudentOrderListener; @@ -28,8 +23,10 @@ import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.ruoyi.common.core.domain.entity.SysDictData; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.system.service.ISysUserService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.FileUtils; import org.apache.commons.io.FilenameUtils; @@ -61,8 +58,6 @@ public class ImportStudentOrderImpl extends AbstractImportStrategy { @Autowired private BusinessSysDictDataService dictDataService; @Autowired - private IScSchoolService schoolService; - @Autowired private BusinessSysDeptService deptService; @Autowired private ScCourseMapper courseMapper; @@ -71,7 +66,7 @@ public class ImportStudentOrderImpl extends AbstractImportStrategy { @Autowired private ISysReceiptAccountService receiptAccountService; @Autowired - private ISysStaffService staffService; + private ISysUserService staffService; @Autowired private UploadConfigProperties uploadConfigProperties; @@ -87,9 +82,6 @@ public class ImportStudentOrderImpl extends AbstractImportStrategy { List sexList = dictDataService.dictTypeDataList("sex"); String[] sexArray = sexList.stream().map(SysDictData::getDictLabel).toArray(String[]::new); - // 学校 - List schoolList = schoolService.selectSchoolSelect(new ReqSchoolSelect()); - String[] schoolArray = schoolList.stream().map(RespSchoolSelect::getSchoolName).toArray(String[]::new); // 订单类型 List orderDetailTagList = dictDataService.dictTypeDataList("order_detail_tag"); @@ -123,13 +115,12 @@ public class ImportStudentOrderImpl extends AbstractImportStrategy { String[] receiptAccountNameArray = receiptAccountList.stream().map(SysReceiptAccount::getAccountName).toArray(String[]::new); // 销售员工 - List staffList = staffService.staffList(null); - String[] staffNameArray = staffList.stream().map(SysStaff::getStaffName).toArray(String[]::new); + List staffList = staffService.selectUserList(new SysUser()); + String[] staffNameArray = staffList.stream().map(SysUser::getNickName).toArray(String[]::new); return Lists.newArrayList( SelectValidationData.builder().firstCol(1).lastCol(1).firstRow(2).lastRow(206).selectDataArray(contactRelationArray).build(), SelectValidationData.builder().firstCol(3).lastCol(3).firstRow(2).lastRow(206).selectDataArray(sexArray).build(), - SelectValidationData.builder().firstCol(4).lastCol(4).firstRow(2).lastRow(206).selectDataArray(schoolArray).build(), SelectValidationData.builder().firstCol(6).lastCol(6).firstRow(2).lastRow(206).selectDataArray(orderDetailTagArray).build(), SelectValidationData.builder().firstCol(7).lastCol(7).firstRow(2).lastRow(206).selectDataArray(campusNameArray).build(), SelectValidationData.builder().firstCol(8).lastCol(8).firstRow(2).lastRow(206).selectDataArray(courseNameArray).build(), diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/columns/SysTeacherController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/columns/SysTeacherController.java index bb1ec7b..f38ff37 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/columns/SysTeacherController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/columns/SysTeacherController.java @@ -1,31 +1,25 @@ package com.ruoyi.web.controller.columns; -import java.io.IOException; -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.ruoyi.common.utils.SecurityUtils; -import com.ruoyi.system.domain.columns.SysTeacher; -import com.ruoyi.system.service.columns.ISysTeacherService; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.poi.ExcelUtil; -import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.system.domain.columns.SysTeacher; +import com.ruoyi.system.service.columns.ISysTeacherService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.List; /** - * 员工信息Controller + * 教练信息Controller * * @author ruoyi * @date 2025-10-28 @@ -51,6 +45,15 @@ public class SysTeacherController extends BaseController return getDataTable(list); } + @PreAuthorize("@ss.hasPermi('system:teacher:list')") + @GetMapping("/getUserForTeacher") + public AjaxResult getUserForTeacher() + { + SysTeacher sysTeacher=new SysTeacher(); + sysTeacher.setTenantId(SecurityUtils.getLoginUser().getNowTenantId()); + List list = sysTeacherService.getUserForTeacher(sysTeacher); + return AjaxResult.successData(list); + } /** * 导出员工信息列表 @@ -75,10 +78,10 @@ public class SysTeacherController extends BaseController } /** - * 新增员工信息 + * 新增教练信息 */ @PreAuthorize("@ss.hasPermi('system:teacher:add')") - @Log(title = "员工信息", businessType = BusinessType.INSERT) + @Log(title = "教练信息", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody SysTeacher sysTeacher) { @@ -86,10 +89,10 @@ public class SysTeacherController extends BaseController } /** - * 修改员工信息 + * 修改教练信息 */ // @PreAuthorize("@ss.hasPermi('system:teacher:edit')") - @Log(title = "员工信息", businessType = BusinessType.UPDATE) + @Log(title = "教练信息", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody SysTeacher sysTeacher) { @@ -97,7 +100,7 @@ public class SysTeacherController extends BaseController } /** - * 删除员工信息 + * 删除教练信息 */ @PostMapping("/remove") public AjaxResult remove( @RequestBody Long[] ids) { diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/mall/AftersaleController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/mall/AftersaleController.java index bf5d9f7..0b30ef2 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/mall/AftersaleController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/mall/AftersaleController.java @@ -1,12 +1,9 @@ package com.ruoyi.web.controller.mall; -import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.core.redis.RedisService; -import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.SecurityUtils; -import com.ruoyi.mall.domain.Aftersale; import com.ruoyi.mall.domain.form.DealWithAftersaleForm; import com.ruoyi.mall.domain.form.ManagerAftersaleOrderForm; import com.ruoyi.mall.domain.vo.ManagerRefundOrderDetailVO; @@ -69,13 +66,7 @@ public class AftersaleController extends BaseController { } - @ApiOperation("修改订单售后") - @PreAuthorize("@ss.hasPermi('oms:aftersale:edit')") - @Log(title = "订单售后", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody Aftersale aftersale) { - return ResponseEntity.ok(service.update(aftersale)); - } + @ApiOperation("售后订单操作") @PostMapping("/dealWith") diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/mall/ExpressController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/mall/ExpressController.java deleted file mode 100644 index f186760..0000000 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/mall/ExpressController.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.ruoyi.web.controller.mall; - -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.mall.domain.Express; -import com.ruoyi.mall.service.ExpressService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -/** - * 快递管理Controller - */ -@Api(description ="快递管理接口列表") -@RestController -@RequestMapping("/pms/express") -public class ExpressController extends BaseController { - @Autowired - private ExpressService service; - - @ApiOperation("查询快递管理列表") - @PreAuthorize("@ss.hasPermi('pms:Express:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody Express query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - @ApiOperation("所有快递管理列表") - @PreAuthorize("@ss.hasPermi('pms:Express:list')") - @PostMapping("/all") - public ResponseEntity> all(@RequestBody Express query) { - return ResponseEntity.ok(service.selectList(query, null)); - } - - @ApiOperation("导出快递管理列表") - @PreAuthorize("@ss.hasPermi('pms:Express:export')") - @Log(title = "快递管理", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(Express query) { -// List list = service.selectList(query, null); -// ExcelUtil util = new ExcelUtil<>(ExpressVO.class); -// return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "快递管理数据")); - return null; - } - - @ApiOperation("获取快递管理详细信息") - @PreAuthorize("@ss.hasPermi('pms:Express:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增快递管理") - @PreAuthorize("@ss.hasPermi('pms:Express:add')") - @Log(title = "快递管理", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody Express Express) { - return ResponseEntity.ok(service.insert(Express)); - } - - @ApiOperation("修改快递管理") - @PreAuthorize("@ss.hasPermi('pms:Express:edit')") - @Log(title = "快递管理", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody Express Express) { - return ResponseEntity.ok(service.update(Express)); - } - - @ApiOperation("删除快递管理") - @PreAuthorize("@ss.hasPermi('pms:Express:remove')") - @Log(title = "快递管理", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java index 35a636a..fec08f0 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java @@ -1,19 +1,8 @@ package com.ruoyi.web.controller.system; -import java.util.Iterator; -import java.util.List; -import org.apache.commons.lang3.ArrayUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import cn.xluobo.business.sc.student.repo.model.ScStudentCourse; +import cn.xluobo.business.sc.student.service.IScStudentCourseService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.core.controller.BaseController; @@ -22,10 +11,18 @@ import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.system.service.ISysDeptService; +import org.apache.commons.lang3.ArrayUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Iterator; +import java.util.List; /** * 部门信息 - * + * * @author ruoyi */ @RestController @@ -34,7 +31,8 @@ public class SysDeptController extends BaseController { @Autowired private ISysDeptService deptService; - + @Autowired + private IScStudentCourseService studentCourseService; /** * 获取部门列表 */ @@ -91,15 +89,15 @@ public class SysDeptController extends BaseController /** * 加载对应角色部门列表树 */ - @GetMapping(value = "/roleDeptTreeselect/{roleId}") - public AjaxResult roleDeptTreeselect(@PathVariable("roleId") Long roleId) - { - List depts = deptService.selectDeptList(new SysDept()); - AjaxResult ajax = AjaxResult.success(); - ajax.put("checkedKeys", deptService.selectDeptListByRoleId(roleId)); - ajax.put("depts", deptService.buildDeptTreeSelect(depts)); - return ajax; - } +// @GetMapping(value = "/roleDeptTreeselect/{roleId}") +// public AjaxResult roleDeptTreeselect(@PathVariable("roleId") Long roleId) +// { +// List depts = deptService.selectDeptList(new SysDept()); +// AjaxResult ajax = AjaxResult.success(); +// ajax.put("checkedKeys", deptService.selectDeptListByRoleId(roleId)); +// ajax.put("depts", deptService.buildDeptTreeSelect(depts)); +// return ajax; +// } /** * 新增部门 @@ -158,6 +156,13 @@ public class SysDeptController extends BaseController { return AjaxResult.error("部门存在用户,不允许删除"); } + // 如果已报读 不允许删除 + QueryWrapper qwSc = new QueryWrapper<>(); + qwSc.eq("dept_id", deptId); + int studentCourseCount = studentCourseService.count(qwSc); + if (studentCourseCount != 0) { + return AjaxResult.error("该校区已有报读学员,无法删除"); + } return toAjax(deptService.deleteDeptById(deptId)); } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java index 90eb8f3..2dd216c 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java @@ -1,17 +1,6 @@ package com.ruoyi.web.controller.system; -import java.io.IOException; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; -import org.springframework.web.multipart.MultipartFile; import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; @@ -20,13 +9,14 @@ import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; -import com.ruoyi.common.utils.file.FileUploadUtils; import com.ruoyi.framework.web.service.TokenService; import com.ruoyi.system.service.ISysUserService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; /** * 个人信息 业务处理 - * + * * @author ruoyi */ @RestController @@ -115,27 +105,5 @@ public class SysProfileController extends BaseController return AjaxResult.error("修改密码异常,请联系管理员"); } - /** - * 头像上传 - */ - @Log(title = "用户头像", businessType = BusinessType.UPDATE) - @PostMapping("/avatar") - public AjaxResult avatar(@RequestParam("avatarfile") MultipartFile file) throws IOException - { - if (!file.isEmpty()) - { - LoginUser loginUser = getLoginUser(); - String avatar = FileUploadUtils.upload(RuoYiConfig.getAvatarPath(), file); - if (userService.updateUserAvatar(loginUser.getUsername(), avatar)) - { - AjaxResult ajax = AjaxResult.success(); - ajax.put("imgUrl", avatar); - // 更新缓存用户头像 - loginUser.getUser().setAvatar(avatar); - tokenService.setLoginUser(loginUser); - return ajax; - } - } - return AjaxResult.error("上传图片异常,请联系管理员"); - } + } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java index 78ffcf0..8d9b7e3 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java @@ -5,7 +5,6 @@ import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysRole; -import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.enums.BusinessType; @@ -13,7 +12,6 @@ import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.framework.web.service.SysPermissionService; import com.ruoyi.framework.web.service.TokenService; -import com.ruoyi.system.domain.SysUserRole; import com.ruoyi.system.service.ISysRoleService; import com.ruoyi.system.service.ISysUserService; import org.springframework.beans.factory.annotation.Autowired; @@ -133,14 +131,14 @@ public class SysRoleController extends BaseController /** * 修改保存数据权限 */ - @PreAuthorize("@ss.hasPermi('system:role:edit')") - @Log(title = "角色管理", businessType = BusinessType.UPDATE) - @PutMapping("/dataScope") - public AjaxResult dataScope(@RequestBody SysRole role) - { - roleService.checkRoleAllowed(role); - return toAjax(roleService.authDataScope(role)); - } +// @PreAuthorize("@ss.hasPermi('system:role:edit')") +// @Log(title = "角色管理", businessType = BusinessType.UPDATE) +// @PutMapping("/dataScope") +// public AjaxResult dataScope(@RequestBody SysRole role) +// { +// roleService.checkRoleAllowed(role); +// return toAjax(roleService.authDataScope(role)); +// } /** * 状态修改 @@ -179,57 +177,57 @@ public class SysRoleController extends BaseController /** * 查询已分配用户角色列表 */ - @PreAuthorize("@ss.hasPermi('system:role:list')") - @GetMapping("/authUser/allocatedList") - public TableDataInfo allocatedList(SysUser user) - { - startPage(); - List list = userService.selectAllocatedList(user); - return getDataTable(list); - } +// @PreAuthorize("@ss.hasPermi('system:role:list')") +// @GetMapping("/authUser/allocatedList") +// public TableDataInfo allocatedList(SysUser user) +// { +// startPage(); +// List list = userService.selectAllocatedList(user); +// return getDataTable(list); +// } /** * 查询未分配用户角色列表 */ - @PreAuthorize("@ss.hasPermi('system:role:list')") - @GetMapping("/authUser/unallocatedList") - public TableDataInfo unallocatedList(SysUser user) - { - startPage(); - List list = userService.selectUnallocatedList(user); - return getDataTable(list); - } +// @PreAuthorize("@ss.hasPermi('system:role:list')") +// @GetMapping("/authUser/unallocatedList") +// public TableDataInfo unallocatedList(SysUser user) +// { +// startPage(); +// List list = userService.selectUnallocatedList(user); +// return getDataTable(list); +// } /** * 取消授权用户 */ - @PreAuthorize("@ss.hasPermi('system:role:edit')") - @Log(title = "角色管理", businessType = BusinessType.GRANT) - @PutMapping("/authUser/cancel") - public AjaxResult cancelAuthUser(@RequestBody SysUserRole userRole) - { - return toAjax(roleService.deleteAuthUser(userRole)); - } +// @PreAuthorize("@ss.hasPermi('system:role:edit')") +// @Log(title = "角色管理", businessType = BusinessType.GRANT) +// @PutMapping("/authUser/cancel") +// public AjaxResult cancelAuthUser(@RequestBody SysUserRole userRole) +// { +// return toAjax(roleService.deleteAuthUser(userRole)); +// } /** * 批量取消授权用户 */ - @PreAuthorize("@ss.hasPermi('system:role:edit')") - @Log(title = "角色管理", businessType = BusinessType.GRANT) - @PutMapping("/authUser/cancelAll") - public AjaxResult cancelAuthUserAll(Long roleId, Long[] userIds) - { - return toAjax(roleService.deleteAuthUsers(roleId, userIds)); - } +// @PreAuthorize("@ss.hasPermi('system:role:edit')") +// @Log(title = "角色管理", businessType = BusinessType.GRANT) +// @PutMapping("/authUser/cancelAll") +// public AjaxResult cancelAuthUserAll(Long roleId, Long[] userIds) +// { +// return toAjax(roleService.deleteAuthUsers(roleId, userIds)); +// } /** * 批量选择用户授权 */ - @PreAuthorize("@ss.hasPermi('system:role:edit')") - @Log(title = "角色管理", businessType = BusinessType.GRANT) - @PutMapping("/authUser/selectAll") - public AjaxResult selectAuthUserAll(Long roleId, Long[] userIds) - { - return toAjax(roleService.insertAuthUsers(roleId, userIds)); - } +// @PreAuthorize("@ss.hasPermi('system:role:edit')") +// @Log(title = "角色管理", businessType = BusinessType.GRANT) +// @PutMapping("/authUser/selectAll") +// public AjaxResult selectAuthUserAll(Long roleId, Long[] userIds) +// { +// return toAjax(roleService.insertAuthUsers(roleId, userIds)); +// } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java index b1044e3..6098e61 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java @@ -21,6 +21,7 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; @@ -109,9 +110,14 @@ public class SysUserController extends BaseController ajax.put("posts", postService.selectPostAll()); if (StringUtils.isNotNull(userId)) { + List roleIds=roleService.selectRoleListByUserId(userId) ; + List roleIds1=new ArrayList<>(); + roleIds.forEach(l->{ + roleIds1.add(l.toString()); + }); ajax.put(AjaxResult.DATA_TAG, userService.selectUserById(userId)); ajax.put("postIds", postService.selectPostListByUserId(userId)); - ajax.put("roleIds", roleService.selectRoleListByUserId(userId)); + ajax.put("roleIds",roleIds1 ); } return ajax; } diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 2a5fdc1..07ca19e 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -20,7 +20,7 @@ ruoyi: # 开发环境配置 server: # 服务器的HTTP端口,默认为8080 - port: 8080 + port: 8081 servlet: # 应用的访问路径 context-path: / @@ -133,7 +133,7 @@ mybatis-plus: global-config: db-config: id-type: auto - update-strategy: ignored +# update-strategy: ignored pagehelper: helperDialect: mysql supportMethodsArguments: true diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysDept.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysDept.java index 67cbdb6..1a79893 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysDept.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysDept.java @@ -40,7 +40,9 @@ public class SysDept extends BaseEntity private String orderNum; /** 负责人 */ +// @TableField(updateStrategy = FieldStrategy.IGNORED) private String leader; +// @TableField(updateStrategy = FieldStrategy.IGNORED) private Long leaderId; /** 联系电话 */ diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java index 8c3074c..bf1b76f 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java @@ -84,7 +84,7 @@ public class SysUser extends BaseEntity }) private SysDept dept; - private int teacher;//是否为任课教师 1是 0否 + private Integer teacher;//是否为任课教师 1是 0否 /** 角色对象 */ private List roles; @@ -110,11 +110,11 @@ public class SysUser extends BaseEntity this.userId = userId; } - public int getTeacher() { + public Integer getTeacher() { return teacher; } - public void setTeacher(int teacher) { + public void setTeacher(Integer teacher) { this.teacher = teacher; } diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/db/SshTunnelConfig.java b/ruoyi-common/src/main/java/com/ruoyi/common/db/SshTunnelConfig.java index 607a159..77755d7 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/db/SshTunnelConfig.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/db/SshTunnelConfig.java @@ -2,7 +2,6 @@ package com.ruoyi.common.db; import com.jcraft.jsch.JSch; import com.jcraft.jsch.Session; -import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import javax.annotation.PreDestroy; @@ -18,7 +17,7 @@ public class SshTunnelConfig { // @Value("${ssh.user}") private String sshUser="root"; // @Value("${ssh.identity}") - private String sshIdentity="D:\\rpkj\\yoga-app-manager\\private_key\\runpeng20250915.pem"; + private String sshIdentity="E:\\runpeng\\runpeng20250915.pem"; // @Value("${ssh.remote.db.host}") private String remoteDbHost="127.0.0.1"; diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java index 8fbb87b..a7087e8 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java @@ -1,12 +1,18 @@ package com.ruoyi.framework.config; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.module.SimpleModule; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.constant.Constants; +import com.ruoyi.framework.config.converter.CustomMappingJackson2HttpMessageConverter; import com.ruoyi.framework.interceptor.RepeatSubmitInterceptor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.CacheControl; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; import org.springframework.web.filter.CorsFilter; @@ -14,11 +20,13 @@ import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; +import java.math.BigInteger; +import java.util.List; import java.util.concurrent.TimeUnit; /** * 通用配置 - * + * * @author ruoyi */ @Configuration @@ -26,6 +34,8 @@ public class ResourcesConfig implements WebMvcConfigurer { @Autowired private RepeatSubmitInterceptor repeatSubmitInterceptor; + @Autowired + private ObjectMapper objectMapper; @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { @@ -66,4 +76,25 @@ public class ResourcesConfig implements WebMvcConfigurer source.registerCorsConfiguration("/**", config); return new CorsFilter(source); } + + @Override + public void configureMessageConverters(List> converters) { + converters.add(getMappingJackson2HttpMessageConverter()); + } + /** + * 解决前端js处理大数字丢失精度问题,将Long和BigInteger转换成string + * + * @return + */ + public MappingJackson2HttpMessageConverter getMappingJackson2HttpMessageConverter() { + CustomMappingJackson2HttpMessageConverter jackson2HttpMessageConverter = new CustomMappingJackson2HttpMessageConverter(); + SimpleModule simpleModule = new SimpleModule(); + // 序列换成json时,将所有的long变成string 因为js中得数字类型不能包含所有的java long值 + simpleModule.addSerializer(BigInteger.class, ToStringSerializer.instance); + simpleModule.addSerializer(Long.class, ToStringSerializer.instance); + simpleModule.addSerializer(Long.TYPE, ToStringSerializer.instance); + objectMapper.registerModule(simpleModule); + jackson2HttpMessageConverter.setObjectMapper(objectMapper); + return jackson2HttpMessageConverter; + } } diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/converter/CustomMappingJackson2HttpMessageConverter.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/converter/CustomMappingJackson2HttpMessageConverter.java new file mode 100644 index 0000000..c17f68f --- /dev/null +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/converter/CustomMappingJackson2HttpMessageConverter.java @@ -0,0 +1,61 @@ +package com.ruoyi.framework.config.converter; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; +import java.lang.reflect.Type; + +/** + * 自定义的json转换器,匹配web api(以/web/开头的controller)中的接口方法的返回参数 + * + * @author zhangby + * + */ +public class CustomMappingJackson2HttpMessageConverter extends MappingJackson2HttpMessageConverter { + + private final static Logger logger = LoggerFactory.getLogger(CustomMappingJackson2HttpMessageConverter.class); + + /** + * 判断该转换器是否能将请求内容转换成 Java 对象 + */ + @Override + public boolean canRead(Class clazz, MediaType mediaType) { + // 不需要反序列化 + return false; + } + + /** + * 判断该转换器是否能将请求内容转换成 Java 对象 + */ + @Override + public boolean canRead(Type type, Class contextClass, MediaType mediaType) { + // 不需要反序列化 + return false; + } + + /** + * 判断该转换器是否可以将 Java 对象转换成返回内容. + * 匹配web api(形如/web/xxxx)中的接口方法的返回参数 + */ + @Override + public boolean canWrite(Class clazz, MediaType mediaType) { + if (super.canWrite(clazz, mediaType)) { + ServletRequestAttributes ra = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + if (null != ra) { // web请求 + HttpServletRequest request = ra.getRequest(); + String uri = request.getRequestURI(); + /*if (uri.startsWith("/api/")) { + return true; + }*/ + return true; + } + } + return false; + } + +} diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/PermissionService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/PermissionService.java index 68b1d69..907c8d4 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/PermissionService.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/PermissionService.java @@ -1,16 +1,17 @@ package com.ruoyi.framework.web.service; -import java.util.Set; -import org.springframework.stereotype.Service; -import org.springframework.util.CollectionUtils; import com.ruoyi.common.core.domain.entity.SysRole; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.Set; /** * RuoYi首创 自定义权限实现,ss取自SpringSecurity首字母 - * + * * @author ruoyi */ @Service("ss") @@ -28,7 +29,7 @@ public class PermissionService /** * 验证用户是否具备某权限 - * + * * @param permission 权限字符串 * @return 用户是否具备某权限 */ @@ -38,9 +39,12 @@ public class PermissionService { return false; } + LoginUser loginUser = SecurityUtils.getLoginUser(); + System.out.println(loginUser.getPermissions()); if (StringUtils.isNull(loginUser) || CollectionUtils.isEmpty(loginUser.getPermissions())) { + return false; } return hasPermissions(loginUser.getPermissions(), permission); @@ -87,7 +91,7 @@ public class PermissionService /** * 判断用户是否拥有某个角色 - * + * * @param role 角色字符串 * @return 用户是否具备某角色 */ @@ -153,7 +157,7 @@ public class PermissionService /** * 判断是否包含权限 - * + * * @param permissions 权限列表 * @param permission 权限字符串 * @return 用户是否具备某权限 diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java index feb8038..1a8207f 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java @@ -1,16 +1,17 @@ package com.ruoyi.framework.web.service; -import java.util.HashSet; -import java.util.Set; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.system.service.ISysMenuService; import com.ruoyi.system.service.ISysRoleService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.util.HashSet; +import java.util.Set; /** * 用户权限处理 - * + * * @author ruoyi */ @Component @@ -24,7 +25,7 @@ public class SysPermissionService /** * 获取角色数据权限 - * + * * @param user 用户信息 * @return 角色权限信息 */ @@ -45,7 +46,7 @@ public class SysPermissionService /** * 获取菜单数据权限 - * + * * @param user 用户信息 * @return 菜单权限信息 */ @@ -59,7 +60,7 @@ public class SysPermissionService } else { - perms.addAll(menuService.selectMenuPermsByUserId(user.getUserId())); + perms.addAll(menuService.selectMenuPermsByUserId(user.getUserId(),user.getTenantId())); } return perms; } diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java index 1dd009c..3f530f3 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java @@ -56,9 +56,13 @@ public class UserDetailsServiceImpl implements UserDetailsService throw new ServiceException("对不起,您的账号:" + username + " 已停用"); } SysTenant tenant=tenantService.getById(user.getTenantId()); - if (ObjectUtil.isEmpty(tenant) || !tenant.getInUse().equals("0") || !DateUtil.date().before(tenant.getEndTime()) ){ + if (ObjectUtil.isEmpty(tenant) + || !tenant.getInUse().equals("0") + || !DateUtil.date().before(tenant.getEndTime()) + || tenant.getDeleteFlag().equals("1") + ){ log.info("用户所属租户:{} 异常.", tenant.getTenantName()); - throw new ServiceException("用户所属租户:" + tenant.getTenantName() + " 异常"); + throw new ServiceException("用户所属租户:" + tenant.getTenantName() + " 异常,无法登录!"); } return createLoginUser(user); diff --git a/ruoyi-generator/src/test/java/com/ruoyi/generator/ApplicationTest.java b/ruoyi-generator/src/test/java/com/ruoyi/generator/ApplicationTest.java deleted file mode 100644 index 603cf97..0000000 --- a/ruoyi-generator/src/test/java/com/ruoyi/generator/ApplicationTest.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.ruoyi.generator; - -import com.ruoyi.generator.domain.GenTable; -import com.ruoyi.generator.service.IGenTableService; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Qualifier; -import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.test.context.ActiveProfiles; -import org.springframework.test.context.junit4.SpringRunner; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -@RunWith(SpringRunner.class) -@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE, classes = SpringAppTest.class) -@ActiveProfiles("local") -public class ApplicationTest { - @Autowired - @Qualifier("genTableServiceImpl") - private IGenTableService genTableService; - - @Test - public void test2() { - List tableNames = Arrays.asList( -// "pms_brand", -// "pms_product_category" , -// "pms_product", -// "pms_sku" -// "ums_member", -// "ums_member_address", -// "ums_member_wechat", -// "ums_member_cart" -// "oms_order", -// "oms_order_delivery_history", -// "oms_order_item", -// "oms_order_operate_history", -// "oms_aftersale", -// "oms_aftersale_item" - "act_coupon_activity", - "act_member_coupon" - ); - // 查询表信息 - List tableList = genTableService.selectGenTableByName(tableNames); - List notExist = new ArrayList<>(); - try { - tableList.forEach(it -> { - if (it.getTableId() == null) { - it.setAudit(1); - notExist.add(it); - } - }); - if (notExist.size() > 0) { - genTableService.importGenTable(notExist, -1L); - } - for (String tableName : tableNames) { - genTableService.generatorCode(tableName); - } - } finally { - // 删除生成 - if (notExist.size() > 0) { - Long[] ids = notExist.stream().map(GenTable::getTableId).toArray(Long[]::new); - genTableService.deleteGenTableByIds(ids); - } - } - } - -} diff --git a/ruoyi-generator/src/test/java/com/ruoyi/generator/CommonTest.java b/ruoyi-generator/src/test/java/com/ruoyi/generator/CommonTest.java deleted file mode 100644 index 7071e78..0000000 --- a/ruoyi-generator/src/test/java/com/ruoyi/generator/CommonTest.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.ruoyi.generator; - -import cn.hutool.core.io.FileUtil; -import org.junit.jupiter.api.Test; - -import java.io.File; - -public class CommonTest { - @Test - public void testPath() { - System.out.println(System.getProperty("user.dir")); - System.out.println(FileUtil.getParent(System.getProperty("user.dir"), 1) + File.separator); - } -} diff --git a/ruoyi-generator/src/test/java/com/ruoyi/generator/SingleComponentTest.java b/ruoyi-generator/src/test/java/com/ruoyi/generator/SingleComponentTest.java deleted file mode 100644 index 1d73bdc..0000000 --- a/ruoyi-generator/src/test/java/com/ruoyi/generator/SingleComponentTest.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.ruoyi.generator; - -import com.ruoyi.generator.domain.GenTable; -import com.ruoyi.generator.mapper.GenTableColumnMapper; -import com.ruoyi.generator.mapper.GenTableMapper; -import com.ruoyi.generator.service.GenTableServiceImpl; -import com.ruoyi.generator.service.IGenTableService; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.mockito.Mockito; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.TestConfiguration; -import org.springframework.boot.test.mock.mockito.MockBean; -import org.springframework.context.annotation.Bean; -import org.springframework.test.context.junit4.SpringRunner; - -@RunWith(SpringRunner.class) -public class SingleComponentTest { - @TestConfiguration - static class EmployeeServiceImplTestContextConfiguration { - @Bean - public IGenTableService employeeService() { - return new GenTableServiceImpl(); - } - } - - @MockBean - private GenTableMapper genTableMapper; - @MockBean - private GenTableColumnMapper genTableColumnMapper; - - @Autowired - private IGenTableService genTableService; - - private String tableName = "sys_dept"; - - @Before - public void setUp() { - GenTable table = new GenTable(); - table.setTableName(tableName); - Mockito.when(genTableMapper.selectGenTableByName(tableName)) - .thenReturn(table); - } - - @Test - public void test1() { - genTableService.generatorCode(tableName); - } -} diff --git a/ruoyi-generator/src/test/java/com/ruoyi/generator/SpringAppTest.java b/ruoyi-generator/src/test/java/com/ruoyi/generator/SpringAppTest.java deleted file mode 100644 index 6fee30b..0000000 --- a/ruoyi-generator/src/test/java/com/ruoyi/generator/SpringAppTest.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.ruoyi.generator; - -import org.mybatis.spring.annotation.MapperScan; -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; - -@SpringBootApplication( - scanBasePackages = {"com.ruoyi.generator"} -) -@MapperScan("com.ruoyi.generator.mapper") -public class SpringAppTest { - public static void main(String[] args) { - SpringApplication.run(SpringAppTest.class, args); - System.out.println("(♥◠‿◠)ノ゙ 若依启动成功 ლ(´ڡ`ლ)゙"); - } -} diff --git a/ruoyi-mall/pom.xml b/ruoyi-mall/pom.xml deleted file mode 100644 index 1f10156..0000000 --- a/ruoyi-mall/pom.xml +++ /dev/null @@ -1,95 +0,0 @@ - - - 4.0.0 - - ruoyi - com.ruoyi - 3.7.0 - - ruoyi-mall - - 8 - 8 - - - - com.ruoyi - ruoyi-common - ${ruoyi.version} - - - com.ruoyi - ruoyi-system - ${ruoyi.version} - - - com.github.wechatpay-apiv3 - wechatpay-java - 0.2.9 - - - com.baomidou - mybatis-plus-boot-starter - ${mybatis.plus.version} - - - org.mapstruct - mapstruct - - - org.springframework.boot - spring-boot-starter - test - - - org.springframework.boot - spring-boot-starter-test - test - - - com.h2database - h2 - test - - - org.springframework.boot - spring-boot-test - test - - - junit - junit - test - - - org.bouncycastle - bcprov-jdk15to18 - 1.64 - - - org.springframework - spring-test - test - - - io.springfox - springfox-boot-starter - ${swagger.version} - - - io.swagger - swagger-models - - - org.mapstruct - mapstruct - - - - - com.ruoyi - ruoyi-framework - - - diff --git a/ruoyi-mall/src/main/java/com/cyl/config/AESForWeixinGetPhoneNumber.java b/ruoyi-mall/src/main/java/com/cyl/config/AESForWeixinGetPhoneNumber.java deleted file mode 100644 index 0d308a0..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/config/AESForWeixinGetPhoneNumber.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.cyl.config; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import org.bouncycastle.jce.provider.BouncyCastleProvider; - -import javax.crypto.Cipher; -import javax.crypto.spec.IvParameterSpec; -import javax.crypto.spec.SecretKeySpec; -import java.nio.charset.StandardCharsets; -import java.security.AlgorithmParameters; -import java.security.Key; -import java.security.NoSuchAlgorithmException; -import java.security.Security; -import java.security.spec.InvalidParameterSpecException; -import java.util.Base64; - -public class AESForWeixinGetPhoneNumber { - //加密方式 - private static String keyAlgorithm = "AES"; - //避免重复new生成多个BouncyCastleProvider对象,因为GC回收不了,会造成内存溢出 - //只在第一次调用decrypt()方法时才new 对象 - private static boolean initialized = false; - //用于Base64解密 - private Base64.Decoder decoder = Base64.getDecoder(); - - //待解密的数据 - private String originalContent; - //会话密钥sessionKey - private String encryptKey; - //加密算法的初始向量 - private String iv; - - public AESForWeixinGetPhoneNumber(String originalContent, String encryptKey, String iv) { - this.originalContent = originalContent; - this.encryptKey = encryptKey; - this.iv = iv; - } - - /** - * AES解密 - * 填充模式AES/CBC/PKCS7Padding - * 解密模式128 - * - * @return 解密后的信息对象 - */ - public JSONObject decrypt() { - initialize(); - try { - //数据填充方式 - Cipher cipher = Cipher.getInstance("AES/CBC/PKCS7Padding","BC"); -// Cipher cipher = Cipher.getInstance("AES/CBC/PKCS7Padding"); - Key sKeySpec = new SecretKeySpec(decoder.decode(this.encryptKey), keyAlgorithm); - // 初始化 - cipher.init(Cipher.DECRYPT_MODE, sKeySpec, generateIV(decoder.decode(this.iv))); - byte[]data = cipher.doFinal(decoder.decode(this.originalContent)); - String datastr = new String(data, StandardCharsets.UTF_8); - return JSON.parseObject(datastr); - } catch (Exception e) { - e.printStackTrace(); - return null; - } - } - - /**BouncyCastle作为安全提供,防止我们加密解密时候因为jdk内置的不支持改模式运行报错。**/ - private static void initialize() { - if (initialized) { - return; - } - Security.addProvider(new BouncyCastleProvider()); - initialized = true; - } - - // 生成iv - private static AlgorithmParameters generateIV(byte[] iv) throws NoSuchAlgorithmException, InvalidParameterSpecException { - AlgorithmParameters params = AlgorithmParameters.getInstance(keyAlgorithm); - params.init(new IvParameterSpec(iv)); - return params; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/config/RestTemplateConfig.java b/ruoyi-mall/src/main/java/com/cyl/config/RestTemplateConfig.java deleted file mode 100644 index 1788a6d..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/config/RestTemplateConfig.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.cyl.config; - - -import org.apache.http.client.HttpClient; -import org.apache.http.client.config.RequestConfig; -import org.apache.http.config.Registry; -import org.apache.http.config.RegistryBuilder; -import org.apache.http.conn.socket.ConnectionSocketFactory; -import org.apache.http.conn.socket.PlainConnectionSocketFactory; -import org.apache.http.conn.ssl.SSLConnectionSocketFactory; -import org.apache.http.impl.client.HttpClientBuilder; -import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.http.client.ClientHttpRequestFactory; -import org.springframework.http.client.HttpComponentsClientHttpRequestFactory; -import org.springframework.web.client.RestTemplate; - -@Configuration -public class RestTemplateConfig { - //从连接池获取连接的超时时间,一般设置为较短; - @Value("${http-pool.connection-request-timeout}") - private int connectionRequestTimeout; - - //连接超时时间 - @Value("${http-pool.connection-timeout}") - private int connectionTimeout; - - //完成连接后,socket通信超时时间 - @Value("${http-pool.socket-timeout}") - private int socketTimeout; - - //单host(可以理解为单域名)最大并发数 - @Value("${http-pool.max-per-route}") - private int maxPerRoute; - - //连接池最大连接数 - @Value("${http-pool.max-total}") - private int maxTotal; - - @Bean - public RestTemplate restTemplate() { - return new RestTemplate(httpRequestFactory()); - } - - @Bean - public ClientHttpRequestFactory httpRequestFactory() { - return new HttpComponentsClientHttpRequestFactory(httpClient()); - } - - @Bean - public HttpClient httpClient() { - Registry registry = RegistryBuilder.create() - .register("http", PlainConnectionSocketFactory.getSocketFactory()) - .register("https", SSLConnectionSocketFactory.getSocketFactory()) - .build(); - PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager(registry); - //设置整个连接池最大连接数 根据自己的场景决定 - connectionManager.setMaxTotal(maxTotal); - //路由是对maxTotal的细分 - connectionManager.setDefaultMaxPerRoute(maxPerRoute); - RequestConfig requestConfig = RequestConfig.custom() - .setSocketTimeout(socketTimeout)//服务器返回数据(response)的时间,超过该时间抛出read timeout - .setConnectTimeout(connectionTimeout)//连接上服务器(握手成功)的时间,超出该时间抛出connect timeout - .setConnectionRequestTimeout(connectionRequestTimeout)//从连接池中获取连接的超时时间,超过该时间未拿到可用连接,会抛出org.apache.http.conn.ConnectionPoolTimeoutException: Timeout waiting for connection from pool - .build(); - return HttpClientBuilder.create() - .setDefaultRequestConfig(requestConfig) - .setConnectionManager(connectionManager) - .build(); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/config/WechatConfig.java b/ruoyi-mall/src/main/java/com/cyl/config/WechatConfig.java deleted file mode 100644 index 5c154e6..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/config/WechatConfig.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.cyl.config; - -import com.cyl.wechat.WechatPayConfig; -import com.wechat.pay.java.service.payments.jsapi.JsapiService; -import com.wechat.pay.java.service.refund.RefundService; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.DependsOn; - -@Configuration -@DependsOn("WechatPayData") -@ConditionalOnProperty(prefix = "wechat", name = "enabled", havingValue = "true") -public class WechatConfig { - - @Bean - public JsapiService jsapiService(){ - return new JsapiService.Builder().config(WechatPayConfig.getInstance()).build(); - } - - @Bean - public RefundService refundService(){ - return new RefundService.Builder().config(WechatPayConfig.getInstance()).build(); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/external/ExternalException.java b/ruoyi-mall/src/main/java/com/cyl/external/ExternalException.java deleted file mode 100644 index 885a864..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/external/ExternalException.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.cyl.external; - -import lombok.Data; - -@Data -public class ExternalException extends RuntimeException { - private String code; - - public ExternalException(String code, String message) { - super(message); - this.code = code; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/external/WechatUtil.java b/ruoyi-mall/src/main/java/com/cyl/external/WechatUtil.java deleted file mode 100644 index c6a1cdc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/external/WechatUtil.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.cyl.external; - -import cn.hutool.http.HttpUtil; -import com.alibaba.fastjson.JSON; -import com.cyl.external.resp.AccessTokenResp; -import com.cyl.external.resp.BaseResp; -import com.cyl.external.resp.UserInfoResp; -import com.ruoyi.common.exception.base.BaseException; -import org.apache.commons.codec.digest.DigestUtils; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.context.annotation.Configuration; -import org.springframework.stereotype.Component; - -import java.util.Arrays; - -@Component -@ConfigurationProperties(prefix = "wechat") -public class WechatUtil { - private static String appId; - private static String secret; - public void setAppId(String appId) { - WechatUtil.appId = appId; - } - public void setSecret(String secret) { - WechatUtil.secret = secret; - } - public static boolean validParam(String signature, String... arr) { - Arrays.sort(arr); - StringBuilder sb = new StringBuilder(); - String[] var2 = arr; - int var3 = arr.length; - - for(int var4 = 0; var4 < var3; ++var4) { - String a = var2[var4]; - sb.append(a); - } - - return signature.equals(DigestUtils.sha1Hex(sb.toString())); - } - private static final String ACCESS_TOKEN_URL = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code"; - private static final String USER_INFO_URL = "https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN"; - public static AccessTokenResp getAccessToken(String code) { - String url = ACCESS_TOKEN_URL.replace("APPID", appId).replace("SECRET", secret).replace("CODE", code); - String res = HttpUtil.get(url); - AccessTokenResp resp = JSON.parseObject(res, AccessTokenResp.class); - validResp(resp); - return resp; - } - - public static UserInfoResp getUserInfo(String accessToken, String openid) { - String url = USER_INFO_URL.replace("ACCESS_TOKEN", accessToken).replace("OPENID", openid); - String res = HttpUtil.get(url); - UserInfoResp resp = JSON.parseObject(res, UserInfoResp.class); - validResp(resp); - return resp; - } - public static void validResp(BaseResp resp) { - if (resp.getErrcode() != null) { - throw new ExternalException(resp.getErrcode() + "", resp.getErrmsg()); - } - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/external/resp/AccessTokenResp.java b/ruoyi-mall/src/main/java/com/cyl/external/resp/AccessTokenResp.java deleted file mode 100644 index 9f8589f..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/external/resp/AccessTokenResp.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.cyl.external.resp; - -import com.alibaba.fastjson.annotation.JSONField; -import lombok.Data; - -@Data -public class AccessTokenResp extends BaseResp { - @JSONField(name = "access_token") - private String accessToken; - @JSONField(name = "expires_in") - private Integer expiresIn; - @JSONField(name = "refresh_token") - private String refreshToken; - private String openid; - private String scope; - @JSONField(name = "is_snapshotuser") - private Integer snapshotuser; - private String unionid; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/external/resp/BaseResp.java b/ruoyi-mall/src/main/java/com/cyl/external/resp/BaseResp.java deleted file mode 100644 index 751df98..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/external/resp/BaseResp.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.cyl.external.resp; - -import lombok.Data; - -@Data -public class BaseResp { - private Integer errcode; - private String errmsg; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/external/resp/UserInfoResp.java b/ruoyi-mall/src/main/java/com/cyl/external/resp/UserInfoResp.java deleted file mode 100644 index 929e321..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/external/resp/UserInfoResp.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.cyl.external.resp; - -import lombok.Data; - -@Data -public class UserInfoResp extends BaseResp { - private String openid; - private String nickname; - private Integer sex; - private String province; - private String city; - private String country; - private String headimgurl; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/config/SecurityUtil.java b/ruoyi-mall/src/main/java/com/cyl/h5/config/SecurityUtil.java deleted file mode 100644 index 6b70540..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/config/SecurityUtil.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.h5.config; - -import com.cyl.manager.ums.domain.entity.Member; -import com.ruoyi.common.constant.Constants; -import com.ruoyi.framework.config.LocalDataUtil; -import org.springframework.stereotype.Service; - -@Service -public class SecurityUtil { - - public static Member getLocalMember() { - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - return member; - } - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/CategoryController.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/CategoryController.java deleted file mode 100644 index c62acec..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/CategoryController.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.cyl.h5.controller; - -import com.cyl.manager.pms.domain.entity.ProductCategory; -import com.cyl.manager.pms.service.ProductCategoryService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; - -import java.util.List; - -@RestController -@RequestMapping("/no-auth/category") -public class CategoryController { - @Autowired - private ProductCategoryService categoryService; - - @GetMapping("/all-categories") - public ResponseEntity> allCategories() { - return ResponseEntity.ok(categoryService.h5Categories()); - } - - @GetMapping("/category-by-id") - public ResponseEntity> getBrotherAndChild(@RequestParam Long id, @RequestParam(name = "withChild", defaultValue = "false") boolean withChild) { - return ResponseEntity.ok(categoryService.getBrotherAndChild(id, withChild)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5CommonController.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5CommonController.java deleted file mode 100644 index e963575..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5CommonController.java +++ /dev/null @@ -1,110 +0,0 @@ -package com.cyl.h5.controller; - -import com.alibaba.fastjson.JSON; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.cyl.manager.ums.domain.entity.Address; -import com.cyl.manager.ums.domain.entity.Feedback; -import com.cyl.manager.ums.mapper.AddressMapper; -import com.cyl.manager.ums.domain.dto.AddressDTO; -import com.cyl.manager.ums.service.FeedbackService; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.domain.AjaxResult; -import com.ruoyi.common.core.redis.RedisService; -import com.ruoyi.common.enums.BusinessType; -//import com.ruoyi.common.utils.OssUtils; -import com.ruoyi.system.service.ISysConfigService; -import io.swagger.annotations.ApiOperation; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; - -import java.util.*; -import java.util.stream.Collectors; - -@RestController -@RequestMapping -public class H5CommonController { - -// @Autowired -// private OssUtils ossUtils; - @Autowired - private AddressMapper addressMapper; - @Autowired - private RedisService redisService; - @Autowired - private FeedbackService feedbackService; - @Autowired - private ISysConfigService sysConfigService; - - @ApiOperation("新增意见反馈") - @Log(title = "意见反馈", businessType = BusinessType.INSERT) - @PostMapping("/h5/feedback/create") - public ResponseEntity add(@RequestBody Feedback feedback) { - return ResponseEntity.ok(feedbackService.insert(feedback)); - } - - - @GetMapping("/h5/area") - public AjaxResult getAddressList() { - String addresses = redisService.getAddressList(); - if (StringUtils.isNotEmpty(addresses)) { - List addressDTOList = JSON.parseArray(addresses, AddressDTO.class); - if(addressDTOList.size()>0){ - return AjaxResult.success(addressDTOList); - } - } - QueryWrapper
addressQueryWrapper = new QueryWrapper<>(); - addressQueryWrapper.in("level", Arrays.asList(0,1,2)); - List
addressList = addressMapper.selectList(addressQueryWrapper); - Map> cityMap = addressList.stream().filter(it -> it.getLevel() == 1).collect(Collectors.groupingBy(it -> it.getParentCode())); - Map> districtMap = addressList.stream().filter(it -> it.getLevel() == 2).collect(Collectors.groupingBy(it -> it.getParentCode())); - List result = new ArrayList<>(); - addressList.stream().filter(it -> it.getLevel() == 0).forEach(it -> { - AddressDTO dto = new AddressDTO(); - dto.setId(it.getCode()); - dto.setLevel("province"); - dto.setName(it.getName()); - dto.setPid(0L); - //获取城市列表 - List child = new ArrayList<>(); - if (cityMap.containsKey(it.getCode())) { - cityMap.get(it.getCode()).forEach(city -> { - AddressDTO cityDto = new AddressDTO(); - cityDto.setId(city.getCode()); - cityDto.setLevel("city"); - cityDto.setName(city.getName()); - cityDto.setPid(city.getParentCode()); - cityDto.setChildren(districtMap.containsKey(city.getCode()) ? - districtMap.get(city.getCode()).stream().map(district -> { - AddressDTO districtDto = new AddressDTO(); - districtDto.setId(district.getCode()); - districtDto.setLevel("district"); - districtDto.setName(district.getName()); - districtDto.setPid(district.getParentCode()); - return districtDto; - }).collect(Collectors.toList()) : Collections.EMPTY_LIST); - child.add(cityDto); - }); - } - dto.setChildren(child); - result.add(dto); - }); - redisService.setAddressList(JSON.toJSONString(result)); - return AjaxResult.success(result); - } - - @PostMapping("/h5/file/upload") - public AjaxResult uploadFile(MultipartFile file) { -// String url = ossUtils.uploadOneFile(file); - return AjaxResult.successData(null); - } - - @GetMapping("/no-auth/config/get") - public AjaxResult getSysConfig(String configKey) { - String s = sysConfigService.selectConfigByKey(configKey); - return AjaxResult.successData(s); - } - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberAddressController.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberAddressController.java deleted file mode 100644 index 0ba966b..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberAddressController.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.cyl.h5.controller; - -import com.cyl.h5.service.H5MemberAddressService; -import com.cyl.manager.ums.domain.form.MemberAddressForm; -import com.cyl.manager.ums.domain.vo.MemberAddressVO; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -@RestController -@RequestMapping("/h5/member/address") -public class H5MemberAddressController { - - @Autowired - private H5MemberAddressService h5MemberAddressService; - - @GetMapping("/list") - public ResponseEntity> getList(){ - return ResponseEntity.ok(h5MemberAddressService.selectList()); - } - - @GetMapping("/default") - public ResponseEntity getDefault(){ - return ResponseEntity.ok(h5MemberAddressService.getDefault()); - } - - @PostMapping("/create") - public ResponseEntity create(@RequestBody MemberAddressForm memberAddressForm){ - return ResponseEntity.ok(h5MemberAddressService.insert(memberAddressForm)); - } - - @PutMapping("/update") - public ResponseEntity update(@RequestBody MemberAddressForm memberAddressForm){ - return ResponseEntity.ok(h5MemberAddressService.update(memberAddressForm)); - } - - @GetMapping("/{id}") - public ResponseEntity getInfo(@PathVariable Long id){ - return ResponseEntity.ok(h5MemberAddressService.selectById(id)); - } - - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(h5MemberAddressService.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberCartController.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberCartController.java deleted file mode 100644 index 0b40187..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberCartController.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.cyl.h5.controller; - -import com.cyl.h5.service.H5MemberCartService; -import com.cyl.manager.ums.convert.MemberCartConvert; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.domain.entity.MemberCart; -import com.cyl.manager.ums.domain.query.MemberCartQuery; -import com.cyl.manager.ums.domain.vo.MemberCartVO; -import com.ruoyi.common.constant.Constants; -import com.ruoyi.framework.config.LocalDataUtil; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import javax.validation.Valid; -import java.util.List; - -@RestController -@RequestMapping("/h5/cart") -public class H5MemberCartController { - @Autowired - private H5MemberCartService memberCartService; - @Autowired - private MemberCartConvert memberCartConvert; - - /** - * 当前用户的购物车商品数量 - * - * @return - */ - @GetMapping("goodscount") - public ResponseEntity goodscount() { - return ResponseEntity.ok(memberCartService.mineCartNum()); - } - /** - * 当前用户的购物车商品id列表 - * - * @return - */ - @GetMapping("cart-ids") - public ResponseEntity> cartIds() { - return ResponseEntity.ok(memberCartService.mineCartIds()); - } - - /** - * 添加购物车 - * - * @return 购物车商品 - */ - @PostMapping("add") - public ResponseEntity add(@RequestBody MemberCart memberCart) { - return ResponseEntity.ok(memberCartService.insert(memberCart)); - } - - /** - * 修改购物车 - * - * @return 是否修改 - */ - @PostMapping("modify") - public ResponseEntity modify(@Valid @RequestBody MemberCart memberCart) { - return ResponseEntity.ok(memberCartService.update(memberCart)); - } - - /** - * 修改购物车 - * - * @return 是否修改 - */ - @DeleteMapping("remove") - public ResponseEntity remove(@RequestBody String ids) { - return ResponseEntity.ok(memberCartService.deleteByIds(ids)); - } - - /** - * 购物车列表 - * - * @return 购物车列表 - */ - @GetMapping("list") - public ResponseEntity> remove() { - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - MemberCartQuery query = new MemberCartQuery(); - query.setMemberId(member.getId()); - return ResponseEntity.ok(memberCartService.selectList(query, null)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberController.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberController.java deleted file mode 100644 index 298894b..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5MemberController.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.cyl.h5.controller; - -import com.alibaba.fastjson.JSON; -import com.cyl.h5.domain.form.RegisterForm; -import com.cyl.h5.domain.vo.H5LoginVO; -import com.cyl.h5.domain.vo.RegisterVO; -import com.cyl.h5.domain.vo.ValidatePhoneVO; -import com.cyl.h5.domain.vo.WechatLoginVO; -import com.cyl.h5.service.H5MemberService; -import com.cyl.manager.ums.domain.vo.MemberVO; -import com.ruoyi.common.core.domain.model.LoginMember; -import com.ruoyi.framework.web.service.TokenService; -import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.util.Base64Utils; -import org.springframework.util.StringUtils; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletRequest; - -@RestController -@RequestMapping("/h5") -public class H5MemberController { - - @Autowired - private H5MemberService service; - @Autowired - private TokenService tokenService; - - - @ApiOperation("会员注册") - @PostMapping("/register") - public ResponseEntity register(@RequestBody RegisterForm request){ - return ResponseEntity.ok(service.register(request)); - } - - @ApiOperation("注册登录验证码校验手机号") - @GetMapping("/validate/{phone}") - public ResponseEntity validate(@PathVariable String phone){ - return ResponseEntity.ok(service.validate(phone)); - } - - @ApiOperation("手机号密码登录") - @PostMapping("/account/login") - public ResponseEntity accountLogin(@RequestBody String data){ - return ResponseEntity.ok(service.accountLogin(data)); - } - - @PostMapping("/wechat/login") - public ResponseEntity wechatLogin(String data) throws Exception { - if (StringUtils.isEmpty(data)) { - return ResponseEntity.ok(null); - } - WechatLoginVO params = JSON.parseObject(new String(Base64Utils.decodeFromString(data)), WechatLoginVO.class); - return ResponseEntity.ok(service.wechatLogin(params)); - } - - @ApiOperation("sms登录") - @PostMapping("/sms/login") - public ResponseEntity smsLogin(@RequestBody String data){ - return ResponseEntity.ok(service.smsLogin(data)); - } - - @ApiOperation("获取会员信息") - @GetMapping("/member/info") - public ResponseEntity getMemberInfo(){ - return ResponseEntity.ok(service.getMemberInfo()); - } - - @ApiOperation("设置会员微信信息") - @PostMapping("/member/setWechatInfo") - public void setWechatInfo(@RequestBody String data){ - service.setWechatInfo(data); - } - - @ApiOperation("新增会员登录记录") - @GetMapping("/record/login") - public void add(HttpServletRequest request) { - LoginMember loginMember = tokenService.getLoginMember(request); - if (loginMember != null){ - service.insert(loginMember.getMemberId()); - } - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5OrderController.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5OrderController.java deleted file mode 100644 index f13197f..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5OrderController.java +++ /dev/null @@ -1,254 +0,0 @@ -package com.cyl.h5.controller; - -import com.alibaba.fastjson.JSONObject; -import com.cyl.h5.domain.dto.DeliveryReq; -import com.cyl.h5.domain.form.*; -import com.cyl.h5.domain.vo.*; -import com.cyl.h5.service.H5OrderService; -import com.cyl.manager.oms.domain.entity.Aftersale; -import com.cyl.manager.oms.domain.entity.Order; -import com.cyl.manager.oms.domain.form.DealWithAftersaleForm; -import com.cyl.manager.oms.service.AftersaleService; -import com.cyl.manager.oms.service.OrderService; -import com.cyl.manager.ums.domain.entity.Member; -import com.ruoyi.common.constant.Constants; -import com.ruoyi.common.core.domain.AjaxResult; -import com.ruoyi.common.core.redis.RedisService; -import com.ruoyi.common.enums.AftersaleStatus; -import com.ruoyi.common.enums.OrderStatus; -import com.ruoyi.framework.config.LocalDataUtil; -import io.swagger.annotations.ApiOperation; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import javax.validation.Valid; - -@RestController -@RequestMapping("/h5/order") -@Slf4j -public class H5OrderController { - @Autowired - private RedisService redisService; - @Autowired - private H5OrderService service; - @Autowired - private AftersaleService aftersaleService; - @Autowired - private OrderService orderService; - - @ApiOperation("下单") - @PostMapping("/add") - public ResponseEntity submit(@RequestBody OrderSubmitForm form) { - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - Long memberId = member.getId(); - String redisKey = "h5_order_add" + memberId; - String redisValue = memberId + "_" + System.currentTimeMillis(); - try{ - redisService.lock(redisKey, redisValue, 60); - return ResponseEntity.ok(service.submit(form)); - }catch (Exception e){ - log.info("创建订单方法异常", e); - throw new RuntimeException(e.getMessage()); - }finally { - try { - redisService.unLock(redisKey, redisValue); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - - @ApiOperation("下单前校验") - @PostMapping("/addOrderCheck") - public ResponseEntity addOrderCheck(@RequestBody OrderCreateForm orderCreateForm){ - return ResponseEntity.ok(service.addOrderCheck(orderCreateForm)); - } - - @ApiOperation("订单列表") - @GetMapping("/page") - public ResponseEntity> orderPage(Integer status, Pageable pageable){ - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - return ResponseEntity.ok(service.orderPage(status, member.getId(), pageable)); - } - - @ApiOperation("订单详情") - @GetMapping("/orderDetail") - public ResponseEntity orderDetail(@RequestParam(required = false) Long orderId){ - if (orderId == null){ - throw new RuntimeException("系统繁忙"); - } - return ResponseEntity.ok(service.orderDetail(orderId)); - } - - @ApiOperation("确认收货") - @GetMapping("/orderComplete") - public ResponseEntity orderComplete(Long orderId) { - log.info("确认收货,订单id:"+orderId); - String redisKey = "h5_oms_order_complete_"+orderId; - String redisValue = orderId+"_"+System.currentTimeMillis(); - try{ - redisService.lock(redisKey,redisValue,60); - return ResponseEntity.ok(service.orderComplete(orderId)); - }catch (Exception e){ - log.error("确认收货异常",e); - throw new RuntimeException(e.getMessage()); - }finally { - try{ - redisService.unLock(redisKey,redisValue); - }catch (Exception e){ - log.error("",e); - } - } - } - - @ApiOperation("订单数量统计") - @GetMapping("/countOrder") - public ResponseEntity orderNumCount(){ - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - Long memberId = member.getId(); - return ResponseEntity.ok(service.orderNumCount(memberId)); - } - - @ApiOperation("取消订单") - @PostMapping("/orderCancel") - public ResponseEntity orderCancel(@RequestBody CancelOrderForm request){ - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - String redisKey = "h5_oms_order_cancel_"+ request.getIdList().get(0); - String redisValue = request.getIdList().get(0)+"_"+System.currentTimeMillis(); - try{ - redisService.lock(redisKey,redisValue,60); - return ResponseEntity.ok(service.orderBatchCancel(request, member.getId())); - }catch (Exception e){ - log.error("订单取消方法异常",e); - throw new RuntimeException("订单取消失败"); - }finally { - try { - redisService.unLock(redisKey,redisValue); - }catch (Exception e){ - log.error("",e); - } - } - } - - @ApiOperation("订单支付") - @PostMapping("/orderPay") - public ResponseEntity orderPay(@RequestBody OrderPayForm req){ - log.info("订单支付","提交的数据:"+JSONObject.toJSONString(req)); - String redisKey = "h5_oms_order_pay_"+req.getPayId(); - String redisValue = req.getPayId()+"_"+System.currentTimeMillis(); - try { - redisService.lock(redisKey, redisValue, 60); - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - Long memberId = member.getId(); - req.setMemberId(memberId); - return ResponseEntity.ok(service.orderPay(req)); - }catch (Exception e){ - log.error("支付方法异常", e); - throw new RuntimeException(e.getMessage()); - }finally { - try{ - redisService.unLock(redisKey,redisValue); - }catch (Exception e){ - log.error("",e); - } - } - } - - @ApiOperation("申请售后") - @PostMapping("/applyRefund") - public ResponseEntity applyRefund(@RequestBody ApplyRefundForm applyRefundForm){ - String redisKey = "h5_oms_order_applyRefund_" + applyRefundForm.getOrderId(); - String redisValue = applyRefundForm.getOrderId() + "_" + System.currentTimeMillis(); - try{ - redisService.lock(redisKey, redisValue, 60); - Order order = service.applyRefund(applyRefundForm); - // 如果是未发货,系统自动退款 - if (order.getStatus().equals(OrderStatus.NOT_DELIVERED.getType())) { - DealWithAftersaleForm req = new DealWithAftersaleForm(); - req.setOrderId(applyRefundForm.getOrderId()); - req.setOptType(1); - aftersaleService.dealWith(req, order.getMemberId(), "直接发起退款"); - } - return ResponseEntity.ok(true); - }catch (Exception e){ - log.error("申请售后发生异常",e); - throw new RuntimeException(e.getMessage()); - }finally { - try { - redisService.unLock(redisKey, redisValue); - } catch (Exception e) { - log.error("", e); - } - } - } - - @ApiOperation("取消售后") - @GetMapping("/cancelRefund") - public ResponseEntity cancelRefund(Long orderId){ - log.info("【取消售后】订单id:" + orderId); - String redisKey = "h5_oms_order_cancelRefund_" + orderId; - String redisValue = orderId + "_" + System.currentTimeMillis(); - try{ - redisService.lock(redisKey, redisValue, 60); - return ResponseEntity.ok(service.cancelRefund(orderId)); - }catch (Exception e){ - log.error("取消售后发生异常",e); - throw new RuntimeException(e.getMessage()); - }finally { - try { - redisService.unLock(redisKey, redisValue); - } catch (Exception e) { - log.error("", e); - } - } - } - - @ApiOperation("售后订单详情") - @GetMapping("/refundOrderDetail") - public ResponseEntity refundOrderDetail(@RequestParam Long orderId){ - return ResponseEntity.ok(service.refundOrderDetail(orderId)); - } - - @ApiOperation("用户提交退货单号") - @PostMapping("/aftersale/delivery") - public AjaxResult delivery(@RequestBody @Valid DeliveryReq req){ - log.info("用户提交退货单号","提交的数据:"+JSONObject.toJSONString(req)); - String redisKey = "h5_oms_order_delivery_"+req.getOrderId(); - String redisValue = req.getOrderId()+"_"+System.currentTimeMillis(); - try { - redisService.lock(redisKey, redisValue, 60); - Order order = service.selectById(req.getOrderId()); - Aftersale aftersale = aftersaleService.queryAfterSale(req.getOrderId()); - if(order == null || aftersale == null){ - return AjaxResult.error("未查询到订单信息"); - } - //仅退款不需要退货 - if(aftersale.getType() == 1){ - return AjaxResult.error("仅退款不需要退货"); - } - if(aftersale.getStatus() != AftersaleStatus.WAIT.getType()){ - return AjaxResult.error("当前状态不可退货"); - } - //更新退款单 - aftersale.setRefundWpCode(req.getDeliveryCompanyCode()); - aftersale.setRefundWaybillCode(req.getDeliverySn()); - aftersaleService.update(aftersale); - - return AjaxResult.success(); - }catch (Exception e){ - log.error("用户提交退货单号异常", e); - return AjaxResult.error("提交发货信息失败"); - }finally { - try{ - redisService.unLock(redisKey,redisValue); - }catch (Exception e){ - log.error("",e); - } - } - } - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5ProductController.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5ProductController.java deleted file mode 100644 index e40b4a0..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/H5ProductController.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.cyl.h5.controller; - -import com.cyl.h5.domain.vo.H5ProductVO; -import com.cyl.h5.domain.vo.ProductDetailVO; -import com.cyl.manager.pms.convert.ProductConvert; -import com.cyl.manager.pms.domain.entity.Product; -import com.cyl.manager.pms.domain.query.ProductQuery; -import com.cyl.manager.pms.service.ProductService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -@RestController -@RequestMapping("/no-auth/product") -public class H5ProductController { - @Autowired - private ProductService productService; - @Autowired - private ProductConvert productConvert; - - @PostMapping("/list") - public ResponseEntity> queryGoodByPage(@RequestBody ProductQuery query, Pageable page) { - List pageRes = productService.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(productConvert.dos2dtos(pageRes), page, ((com.github.pagehelper.Page) pageRes).getTotal())); - } - @GetMapping("/detail/{id}") - public ResponseEntity queryDetail(@PathVariable Long id) { - ProductDetailVO detail = productService.queryDetail(id); - return ResponseEntity.ok(detail); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/NoAuthController.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/NoAuthController.java deleted file mode 100644 index 9812068..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/NoAuthController.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.cyl.h5.controller; - -import cn.hutool.core.util.RandomUtil; -import com.cyl.h5.domain.vo.HomeConfigVO; -import com.cyl.manager.pms.service.ProductCategoryService; -import com.ruoyi.common.core.domain.AjaxResult; -import com.ruoyi.common.core.domain.entity.SysDictData; -import com.ruoyi.common.core.redis.RedisService; -import com.ruoyi.system.service.ISysConfigService; -import com.ruoyi.system.service.ISysDictTypeService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.util.List; - -@RestController -@RequestMapping("/no-auth") -public class NoAuthController { - @Autowired - private ISysConfigService sysConfigService; - @Autowired - private ProductCategoryService categoryService; - @Autowired - private ISysDictTypeService dictTypeService; - @Autowired - private RedisService redisService; - - /** - * 首页配置 - * - * @return 首页配置 - */ - @GetMapping("/home/home-cfg") - public ResponseEntity getHomeConfig() { - HomeConfigVO res = new HomeConfigVO(); - res.setBanners(sysConfigService.selectConfigByKey("h5.home.banner")); - res.setCategoryList(categoryService.queryCategoryWithProductsForH5()); - return ResponseEntity.ok(res); - } - /** - * 首页配置 - * - * @return 首页配置 - */ - @GetMapping("/home/product-count") - public ResponseEntity productCount() { - HomeConfigVO res = new HomeConfigVO(); - res.setBanners(sysConfigService.selectConfigByKey("h5.home.banner")); - res.setCategoryList(categoryService.queryCategoryWithProductsForH5()); - return ResponseEntity.ok(res); - } - - /** - * 获取应用账号 - */ - @GetMapping("/app/account/{type}") - public ResponseEntity getAppAccount(@PathVariable String type) { - List sysAppAccount = dictTypeService.selectDictDataByType("sys_app_account"); - SysDictData sysDictData = sysAppAccount.stream().filter(it -> it.getDictValue().equals(type)).findFirst().orElseGet(SysDictData::new); - return ResponseEntity.ok(sysDictData.getDictLabel()); - } - - @GetMapping("/verified/code/generate") - public AjaxResult createCode(){ - String code = RandomUtil.randomNumbers(6); - redisService.setVerifyCode(code); - return AjaxResult.successData(code); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/PayNotifyController.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/PayNotifyController.java deleted file mode 100644 index b0dc161..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/PayNotifyController.java +++ /dev/null @@ -1,143 +0,0 @@ -package com.cyl.h5.controller; - -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSONObject; -import com.cyl.h5.domain.dto.PayNotifyMessageDTO; -import com.cyl.h5.service.H5OrderService; -import com.cyl.manager.oms.service.AftersaleService; -import com.cyl.wechat.WechatPayConfig; -import com.wechat.pay.java.core.Config; -import com.wechat.pay.java.core.RSAAutoCertificateConfig; -import com.wechat.pay.java.core.notification.NotificationConfig; -import com.wechat.pay.java.core.notification.NotificationParser; -import com.wechat.pay.java.core.notification.RequestParam; -import com.wechat.pay.java.service.partnerpayments.jsapi.model.Transaction; -import com.wechat.pay.java.service.refund.model.RefundNotification; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.BufferedReader; -import java.io.IOException; -import java.nio.charset.StandardCharsets; -import java.text.SimpleDateFormat; -import java.util.HashMap; -import java.util.Map; - -/** - * 订单表Controller - * - * @author sjm - * @date 2023-04-05 - */ -@Api(description ="微信回调接口列表") -@RestController -@RequestMapping("/no-auth/wechat") -public class PayNotifyController { - private static final Logger log = LoggerFactory.getLogger(PayNotifyController.class); - - @Autowired - private H5OrderService h5OrderService; - @Autowired - private AftersaleService aftersaleService; - - private final SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss"); - - /** - * 微信支付回调 - * @param request - * @throws IOException - */ - @PostMapping("/notify") - public void weChatPayNotify(HttpServletRequest request) throws Exception { - log.info("收到了微信支付回调"); - // 从请求头中获取信息 - String timestamp = request.getHeader("Wechatpay-Timestamp"); - String nonce = request.getHeader("Wechatpay-Nonce"); - String signature = request.getHeader("Wechatpay-Signature"); - String singType = request.getHeader("Wechatpay-Signature-Type"); - String wechatPayCertificateSerialNumber = request.getHeader("Wechatpay-Serial"); - // 拿到请求体body - StringBuilder requestBody = new StringBuilder(); - String line; - BufferedReader reader; - reader = request.getReader(); - while (null != (line = reader.readLine())) { - requestBody.append(line); - } - // 构造 RequestParam - RequestParam requestParam = new RequestParam.Builder() - .serialNumber(wechatPayCertificateSerialNumber) - .nonce(nonce) - .signature(signature) - .timestamp(timestamp) - .body(requestBody.toString()) - .build(); - log.info("【requestParam】" + JSONObject.toJSON(requestParam)); - //初始化了 RSAAutoCertificateConfig - Config config = WechatPayConfig.getInstance(); - // 初始化解析器 NotificationParser - NotificationParser parser = new NotificationParser((NotificationConfig) config); - // 以支付通知回调为例,验签、解密并转换成 Transaction - Transaction transaction = parser.parse(requestParam, Transaction.class); - log.info("【transaction】" + JSONObject.toJSON(transaction)); - PayNotifyMessageDTO message = new PayNotifyMessageDTO(); - message.setOutTradeNo(Long.valueOf(transaction.getOutTradeNo())); - message.setMemberId(Long.valueOf(transaction.getAttach())); - message.setTradeStatus(transaction.getTradeState()); - if (StrUtil.isEmpty(transaction.getSuccessTime())){ - throw new RuntimeException("微信支付回调失败"); - } - message.setPayTime(formatter.parse(transaction.getSuccessTime().substring(0, transaction.getSuccessTime().indexOf("+")))); - message.setTradeNo(transaction.getTransactionId()); - h5OrderService.payCallBack(message); - } - - - @ApiOperation(value = "微信退款回调") - @PostMapping("/weChatRefundNotify") - public void weChatRefundNotify(HttpServletRequest request) throws IOException { - log.info("收到了微信支付退款回调"); - // 从请求头中获取信息 - String timestamp = request.getHeader("Wechatpay-Timestamp"); - String nonce = request.getHeader("Wechatpay-Nonce"); - String signature = request.getHeader("Wechatpay-Signature"); - String singType = request.getHeader("Wechatpay-Signature-Type"); - String wechatPayCertificateSerialNumber = request.getHeader("Wechatpay-Serial"); - // 拿到请求体body - StringBuilder requestBody = new StringBuilder(); - String line; - BufferedReader reader; - reader = request.getReader(); - while (null != (line = reader.readLine())) { - requestBody.append(line); - } - // 构造 RequestParam - RequestParam requestParam = new RequestParam.Builder() - .serialNumber(wechatPayCertificateSerialNumber) - .nonce(nonce) - .signature(signature) - .timestamp(timestamp) - .body(requestBody.toString()) - .build(); - - log.info("【requestParam】" + JSONObject.toJSON(requestParam)); - //初始化了 RSAAutoCertificateConfig - Config config = WechatPayConfig.getInstance(); - // 初始化解析器 NotificationParser - NotificationParser parser = new NotificationParser((NotificationConfig) config); - - //获取退款回调的信息 - RefundNotification refundInfo = parser.parse(requestParam, RefundNotification.class); - aftersaleService.refundOrderExc(refundInfo); - } - - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/UserController.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/UserController.java deleted file mode 100644 index 2de7179..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/UserController.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.cyl.h5.controller; - -import com.cyl.manager.ums.domain.entity.MemberAddress; -import com.cyl.manager.ums.domain.query.MemberAddressQuery; -import com.cyl.manager.ums.service.MemberAddressService; -import com.ruoyi.common.utils.SecurityUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -@RequestMapping("ucenter") -@RestController -public class UserController { - @Autowired - private MemberAddressService memberAddressService; - - @GetMapping("user-address") - public ResponseEntity> queryPageOfAddress() { - MemberAddressQuery q = new MemberAddressQuery(); - q.setMemberId(SecurityUtils.getUserId()); - return ResponseEntity.ok(memberAddressService.selectList(q, null)); - } - - @PostMapping("add-update-user-address") - public ResponseEntity addOrUpdateAddress(@RequestBody MemberAddress address) { - if (address.getId() != null) { - address.setMemberId(null); - memberAddressService.updateSelective(address); - } else { - address.setMemberId(SecurityUtils.getUserId()); - memberAddressService.insert(address); - } - return ResponseEntity.ok(address); - } - - @DeleteMapping("delete-user-address") - public ResponseEntity deleteUserAddress(@RequestBody List ids) { - return ResponseEntity.ok(memberAddressService.deleteUserIds(ids)); - } - - @GetMapping("detail-user-address") - public ResponseEntity detailUserAddress(@RequestParam("id") Long id) { - return ResponseEntity.ok(memberAddressService.selectByUserAndId(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/WechatController2.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/WechatController2.java deleted file mode 100644 index 2fad7b8..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/WechatController2.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.cyl.h5.controller; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.cyl.external.WechatUtil; -import com.cyl.h5.domain.form.WechatLoginForm; -import com.cyl.manager.ums.service.MemberWechatService; -import com.ruoyi.common.core.domain.AjaxResult; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.util.Base64Utils; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletRequest; -import java.util.HashMap; -import java.util.Map; - -/** - * h5/微信 - */ -@RestController -@RequestMapping("") -public class WechatController2 { - @Autowired - private MemberWechatService memberWechatService; - /** - * 微信公众号服务器认证 - * @return - */ - @GetMapping("/no-auth/wechat-server-auth") - public String getHomeConfig(HttpServletRequest request) { - String signature = request.getParameter("signature"); - String nonce = request.getParameter("nonce"); - String timestamp = request.getParameter("timestamp"); - String echostr = request.getParameter("echostr"); - if (WechatUtil.validParam(signature, "BLU9Jo7vo", timestamp, nonce)) { - return echostr; - } - return "err"; - } - /** - * 微信公众号服务器认证 - * @return - */ - @PostMapping("/no-auth/wechat/h5-login") - public ResponseEntity h5Login(@RequestBody WechatLoginForm form) { - String token = memberWechatService.login(form); - return ResponseEntity.ok("{\"data\": \"" + token + "\"}"); - } - - - @GetMapping("/no-auth/wechat/getSessionId") - public AjaxResult getSessionId(String code) { - JSONObject object = memberWechatService.getSessionId(code); - if (object != null) { - String openId = object.getString("openid"); - String sessionId = object.getString("session_key"); - Map map = new HashMap(); - map.put("openId", openId); - map.put("sessionId", sessionId); - return AjaxResult.successData(Base64Utils.encodeToString(JSON.toJSONString(map).getBytes())); - } - return AjaxResult.success(null); - } - - @GetMapping("/no-auth/wechat/getSessionId2") - public AjaxResult getSessionId2(String code) { - JSONObject object = memberWechatService.getSessionId(code); - if (object != null) { - String openId = object.getString("openid"); - String sessionId = object.getString("session_key"); - JSONObject obj = new JSONObject(); - obj.put("openId", openId); - obj.put("sessionId", sessionId); - Map map = new HashMap(); - map.put("data", Base64Utils.encodeToString(JSON.toJSONString(obj).getBytes())); - map.put("token", memberWechatService.getToken(openId)); - return AjaxResult.successData(map); - } - return AjaxResult.success(null); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/CategoryDTO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/CategoryDTO.java deleted file mode 100644 index 032a49a..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/CategoryDTO.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.cyl.h5.domain.dto; - -import com.cyl.h5.domain.vo.H5ProductVO; -import lombok.Data; - -import java.util.List; - -@Data -public class CategoryDTO { - private Long id; - private Integer sort; - private String name; - private String icon; - private List productList; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/DeliveryReq.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/DeliveryReq.java deleted file mode 100644 index 5fc8daa..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/DeliveryReq.java +++ /dev/null @@ -1,30 +0,0 @@ - package com.cyl.h5.domain.dto; - - import io.swagger.annotations.ApiModel; - import io.swagger.annotations.ApiModelProperty; - import lombok.Data; - - import javax.validation.constraints.NotBlank; - import javax.validation.constraints.NotNull; - - /** - * 发货记录 - * @author Jinxin - * - */ - @Data - @ApiModel(value = "发货记录") - public class DeliveryReq { - - @ApiModelProperty(value = "订单id", required = true) - @NotNull(message = "订单id不能为空") - private Long orderId; - - @ApiModelProperty(value = "物流单号", required = true) - @NotBlank(message = "物流单号不能为空") - private String deliverySn; - - @ApiModelProperty(value = "快递公司Code", required = true) - @NotBlank(message = "快递公司Code不能为空") - private String deliveryCompanyCode; -} \ No newline at end of file diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/OrderProductListDTO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/OrderProductListDTO.java deleted file mode 100644 index db71bb8..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/OrderProductListDTO.java +++ /dev/null @@ -1,42 +0,0 @@ - package com.cyl.h5.domain.dto; - - import com.cyl.manager.pms.domain.entity.Product; - import com.cyl.manager.pms.domain.entity.Sku; - import io.swagger.annotations.ApiModel; - import io.swagger.annotations.ApiModelProperty; - import lombok.Data; - - import javax.validation.constraints.Min; - import javax.validation.constraints.NotNull; - import java.math.BigDecimal; - - - /** - * 创建订单请求VO - * @author Jinxin - * - */ - @Data - @ApiModel(value = "创建订单请求VO") - public class OrderProductListDTO { - @ApiModelProperty(value = "商品skuId", required = true) - @NotNull(message = "商品skuId不能为空") - private Long skuId; - - @ApiModelProperty(value = "数量", required = true) - @NotNull(message = "数量不能为空") - @Min(value = 1, message = "数量不能小于1") - private Integer quantity; - - @ApiModelProperty(value = "消费金", hidden = true) - private BigDecimal consumption; - - @ApiModelProperty(value = "运费", hidden = true) - private BigDecimal freightAmount; - - @ApiModelProperty(value = "隐藏 业务过程中的数据", hidden = true) - private Sku sku; - - @ApiModelProperty(value = "隐藏 业务过程中的数据", hidden = true) - private Product product; - } \ No newline at end of file diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/PayNotifyMessageDTO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/PayNotifyMessageDTO.java deleted file mode 100644 index 5d57038..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/dto/PayNotifyMessageDTO.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.cyl.h5.domain.dto; - -import com.wechat.pay.java.service.partnerpayments.jsapi.model.Transaction; -import lombok.Data; - -import java.util.Date; - -@Data -public class PayNotifyMessageDTO { - - /**主订单号**/ - private Long outTradeNo; - - /**第三方订单号**/ - private String tradeNo; - - /** - * 交易状态,枚举值: - * SUCCESS:支付成功 - * REFUND:转入退款 - * NOTPAY:未支付 - * CLOSED:已关闭 - * REVOKED:已撤销(仅付款码支付会返回) - * USERPAYING:用户支付中(仅付款码支付会返回) - * PAYERROR:支付失败(仅付款码支付会返回) - */ - private Transaction.TradeStateEnum tradeStatus; - - /**支付时间**/ - private Date payTime; - - /**用户id**/ - private Long memberId; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/ApplyRefundForm.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/ApplyRefundForm.java deleted file mode 100644 index 27e7889..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/ApplyRefundForm.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.cyl.h5.domain.form; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; - -@Data -@ApiModel("申请售后对象") -public class ApplyRefundForm { - - @ApiModelProperty(value = "订单id", required = true) - private Long orderId; - - @ApiModelProperty(value = "申请售后类型 1:仅退款 2:退货退款", required = true) - private Integer applyRefundType; - - @ApiModelProperty(value = "退款原因", required = true) - private String reason; - - @ApiModelProperty(value = "申请退货数量", required = true) - private Integer quantity; - - @ApiModelProperty(value = "退款金额") - private BigDecimal refundAmount; - - @ApiModelProperty(value = "描述") - private String description; - - @ApiModelProperty("凭证图片以逗号隔开") - private String proofPics; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/BindOpenIDForm.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/BindOpenIDForm.java deleted file mode 100644 index 417a5c5..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/BindOpenIDForm.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.cyl.h5.domain.form; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -@ApiModel("绑定openId请求对象") -@Data -public class BindOpenIDForm { - @ApiModelProperty("wx提供的code") - private String code; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/CancelOrderForm.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/CancelOrderForm.java deleted file mode 100644 index 370617c..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/CancelOrderForm.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.cyl.h5.domain.form; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.util.List; - -@Data -@ApiModel("取消订单请求") -public class CancelOrderForm { - @ApiModelProperty("要取消的订单id集合") - private List idList; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5AccountLoginForm.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5AccountLoginForm.java deleted file mode 100644 index 49e4c7a..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5AccountLoginForm.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.cyl.h5.domain.form; - -import lombok.Data; - -@Data -public class H5AccountLoginForm extends H5LoginForm { - /** 密码 */ - private String password; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5LoginForm.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5LoginForm.java deleted file mode 100644 index b54a8f2..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5LoginForm.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.cyl.h5.domain.form; - -import lombok.Data; - -@Data -public class H5LoginForm { - /** 账号即手机号 */ - private String mobile; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5SmsLoginForm.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5SmsLoginForm.java deleted file mode 100644 index a2e5d01..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/H5SmsLoginForm.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.h5.domain.form; - -import com.cyl.wechat.response.WechatUserAuth; -import lombok.Data; - -@Data -public class H5SmsLoginForm extends H5LoginForm { - /** 验证码 */ - private String code; - /** uuid */ - private String uuid; - /** 微信授权信息 */ - private WechatUserAuth authInfo; - /** 小程序openid **/ - private String mpOpenId; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderCreateForm.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderCreateForm.java deleted file mode 100644 index 31a78d8..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderCreateForm.java +++ /dev/null @@ -1,37 +0,0 @@ - package com.cyl.h5.domain.form; - - import com.cyl.h5.domain.dto.OrderProductListDTO; - import io.swagger.annotations.ApiModel; - import io.swagger.annotations.ApiModelProperty; - import lombok.Data; - - import java.util.List; - - - /** - * 创建订单请求VO - * @author Jinxin - * - */ - @Data - @ApiModel(value = "创建订单请求VO") - public class OrderCreateForm { - @ApiModelProperty(value = "商品购买明细",required = true) - private List skuList; - - @ApiModelProperty(value = "收货地址id") - private Long receiveAddressId; - - @ApiModelProperty(value = "收货方式 1:快递 2:自提 代理商只有1", required = false) - private Integer deliveryType = 1; - - @ApiModelProperty(value = "支付方式:1-支付宝,2-微信(默认)", required = false, allowableValues = "1,2") -// @NotNull(message = "支付方式不能为空") - private Integer payType; - - @ApiModelProperty(value = "订单备注") - private String note; - - @ApiModelProperty(value = "订单来源 购物车是 cart") - private String from; - } \ No newline at end of file diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderPayForm.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderPayForm.java deleted file mode 100644 index 206d36d..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderPayForm.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.cyl.h5.domain.form; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -@Data -@ApiModel("订单支付请求体") -public class OrderPayForm { - @ApiModelProperty(value = "支付id", required = true) - private Long payId; - - @ApiModelProperty(value = "支付方式: 1-支付宝 2-微信(默认)", required = true) - private Integer type; - - @ApiModelProperty(value = "用户id", hidden = true) - private Long memberId; - - @ApiModelProperty(value = "微信支付方式 1:公众号 2:小程序") - private Integer wechatType = 1; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderSubmitForm.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderSubmitForm.java deleted file mode 100644 index 77196a2..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/OrderSubmitForm.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.cyl.h5.domain.form; - -import com.cyl.h5.domain.dto.OrderProductListDTO; -import lombok.Data; - -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; -import java.util.List; - -@Data -public class OrderSubmitForm { - @NotNull - private Long addressId; - private String note; - /** 支付方式 0:未支付 1:支付宝 2:微信 默认微信 */ - private Integer payType = 2; - /** 订单来源,购物车则为cart */ - private String from; - private Long memberCouponId; - @NotEmpty - private List skuList; - @Data - public static class SkuParam { - private Long skuId; - private Integer quantity; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/RegisterForm.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/RegisterForm.java deleted file mode 100644 index 9924624..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/RegisterForm.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.cyl.h5.domain.form; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import javax.validation.constraints.NotBlank; - -@Data -public class RegisterForm { - - @ApiModelProperty("手机号") - @NotBlank - private String mobile; - - @ApiModelProperty("密码") - @NotBlank - private String password; - - @ApiModelProperty("uuid") - @NotBlank - private String uuid; - - @ApiModelProperty("验证码") - @NotBlank - private String code; - - @ApiModelProperty("微信授权code") - private String wechatCode; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/WechatLoginForm.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/WechatLoginForm.java deleted file mode 100644 index 663acc0..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/form/WechatLoginForm.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.cyl.h5.domain.form; - -import lombok.Data; - -@Data -public class WechatLoginForm { - private String code; - private String state; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/query/OrderH5Query.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/query/OrderH5Query.java deleted file mode 100644 index 63abf3f..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/query/OrderH5Query.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.cyl.h5.domain.query; - -import lombok.Data; - -@Data -public class OrderH5Query { - private Integer tab; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/AftersaleRefundInfoVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/AftersaleRefundInfoVO.java deleted file mode 100644 index 8bb388d..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/AftersaleRefundInfoVO.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.cyl.h5.domain.vo; - -import com.cyl.manager.oms.domain.vo.AftersaleItemVO; -import com.cyl.manager.oms.domain.vo.OrderItemVO; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.List; - -/** - * 订单售后 数据视图对象 - * - * @author sjm - */ -@Data -public class AftersaleRefundInfoVO extends BaseAudit { - /** ID */ - private Long id; - /** MEMBER_ID */ - @Excel(name = "MEMBER_ID") - private Long memberId; - /** 订单id */ - @Excel(name = "订单id") - private Long orderId; - /** 退款金额 */ - @Excel(name = "退款金额") - private BigDecimal returnAmount; - /** 售后类型:1:退款,2:退货退款 */ - @Excel(name = "售后类型:1:退款,2:退货退款") - private Integer type; - /** 申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝 */ - @Excel(name = "申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝") - private Integer status; - /** 处理时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "处理时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime handleTime; - /** 退款快递公司 */ - @Excel(name = "退款快递公司") - private String refundWpCode; - /** 退货快递号 */ - @Excel(name = "退货快递号") - private String refundWaybillCode; - /** 退货数量 */ - @Excel(name = "退货数量") - private Integer quantity; - /** 原因 */ - @Excel(name = "原因") - private String reason; - /** 描述 */ - @Excel(name = "描述") - private String description; - /** 凭证图片,以逗号隔开 */ - @Excel(name = "凭证图片,以逗号隔开") - private String proofPics; - /** 处理备注 */ - @Excel(name = "处理备注") - private String handleNote; - /** 处理人员 */ - @Excel(name = "处理人员") - private String handleMan; - - /** - * item - */ - private List aftersaleItemList; - private List orderItemList; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/CountOrderVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/CountOrderVO.java deleted file mode 100644 index fe6c869..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/CountOrderVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.cyl.h5.domain.vo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -@Data -@ApiModel("统计订单数量VO") -public class CountOrderVO { - - @ApiModelProperty(value = "待付款订单数量", dataType = "Integer") - private Integer unpaid; - - @ApiModelProperty(value = "待发货订单数量", dataType = "Integer") - private Integer nosend; - - @ApiModelProperty(value = "待收货订单数量", dataType = "Integer") - private Integer noget; - - @ApiModelProperty(value = "售后订单数量", dataType = "Integer") - private Integer aftersale; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5LoginVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5LoginVO.java deleted file mode 100644 index c22aef8..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5LoginVO.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.cyl.h5.domain.vo; - -import lombok.Data; - -/** - * todo 写法不规范,可以简化,没必要造一个类来处理 - */ -@Data -public class H5LoginVO { - private String token; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5OrderVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5OrderVO.java deleted file mode 100644 index 9066032..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5OrderVO.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.cyl.h5.domain.vo; - -import com.cyl.manager.oms.domain.entity.OrderItem; -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.List; - -@Data -public class H5OrderVO { - - @ApiModelProperty("订单id") - private Long orderId; - - @ApiModelProperty("支付id") - private Long payId; - - @ApiModelProperty("订单编号") - private String orderSn; - - @ApiModelProperty("会员id") - private Long memberId; - - @ApiModelProperty("订单总金额") - private BigDecimal totalAmount; - - @ApiModelProperty("应付金额") - private BigDecimal payAmount; - - private BigDecimal couponAmount; - - @ApiModelProperty("订单状态 0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭") - private Integer status; - - @ApiModelProperty("售后状态") - private Integer aftersaleStatus; - - @ApiModelProperty("订单Item") - private List orderItemList; - - @ApiModelProperty("订单备注") - private String note; - - @ApiModelProperty("物流单号") - private String deliverySn; - - @ApiModelProperty("下单时间") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime createTime; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @ApiModelProperty("支付时间") - private LocalDateTime paymentTime; - - @ApiModelProperty("收货人姓名") - private String receiverName; - - @ApiModelProperty("收货人手机号") - private String receiverPhone; - - @ApiModelProperty("省份/直辖市") - private String receiverProvince; - - @ApiModelProperty("城市") - private String receiverCity; - - @ApiModelProperty("区") - private String receiverDistrict; - - @ApiModelProperty("详细地址") - private String receiverDetailAddress; - - @ApiModelProperty("支付倒计时") - private Long timeToPay; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5ProductVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5ProductVO.java deleted file mode 100644 index 574f6fc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/H5ProductVO.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.cyl.h5.domain.vo; - -import lombok.Data; - -import java.math.BigDecimal; -@Data -public class H5ProductVO { - private Long id; - private String pic; - private String name; - private BigDecimal price; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/HomeConfigVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/HomeConfigVO.java deleted file mode 100644 index cd86807..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/HomeConfigVO.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.cyl.h5.domain.vo; - -import com.cyl.h5.domain.dto.CategoryDTO; -import lombok.Data; - -import java.util.List; - -@Data -public class HomeConfigVO { - // 头部广告栏 - private String banners; - // 品类列表 - private List categoryList; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/OrderCalcVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/OrderCalcVO.java deleted file mode 100644 index b0be299..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/OrderCalcVO.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.cyl.h5.domain.vo; - -import com.cyl.manager.act.domain.entity.MemberCoupon; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.List; - -@Data -@ApiModel("下单前校验返回数据") -public class OrderCalcVO { - @ApiModelProperty("sku数据") - private List skuList; - @ApiModelProperty("商品总金额") - private BigDecimal productTotalAmount; - @ApiModelProperty("订单总金额") - private BigDecimal orderTotalAmount; - private List couponList; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/OrderPayVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/OrderPayVO.java deleted file mode 100644 index 220c56d..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/OrderPayVO.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.cyl.h5.domain.vo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -/** - * @author 86199 - */ -@Data -@ApiModel("支付响应") -public class OrderPayVO { - @ApiModelProperty(value = "支付方式:1-支付宝,2-微信(默认)", dataType = "Integer") - private Integer payType; - - @ApiModelProperty("appId") - private String appId; - - @ApiModelProperty("timeStamp") - private String timeStamp; - - @ApiModelProperty("signType") - private String signType; - - /** - * TODO 变量名命名不规范 - */ - @ApiModelProperty("package") - private String package_; - - @ApiModelProperty("nonceStr") - private String nonceStr; - - @ApiModelProperty("签名") - private String paySign; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/ProductDetailVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/ProductDetailVO.java deleted file mode 100644 index f5c306d..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/ProductDetailVO.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.cyl.h5.domain.vo; - -import com.cyl.manager.pms.domain.entity.Brand; -import com.cyl.manager.pms.domain.entity.Product; -import com.cyl.manager.pms.domain.entity.Sku; -import lombok.Data; - -import java.util.List; - -@Data -public class ProductDetailVO { - private Product product; - private List skus; - private Brand brand; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/RegisterVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/RegisterVO.java deleted file mode 100644 index 4e9c26a..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/RegisterVO.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.cyl.h5.domain.vo; - -import lombok.Data; - -/** - * todo 写法不规范,可以简化,没必要造一个类来处理 - */ -@Data -public class RegisterVO { - /** token */ - private String token; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/SkuViewVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/SkuViewVO.java deleted file mode 100644 index f42a09e..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/SkuViewVO.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.cyl.h5.domain.vo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; - - -/** - * sku渲染详情 - * - * @author Jinxin - */ -@Data -@ApiModel(value = "sku渲染详情") -public class SkuViewVO { - private Long productId; - private Long skuId; - @ApiModelProperty(value = "商品名称") - private String productName; - @ApiModelProperty(value = "销售属性") - private String spData; - @ApiModelProperty(value = "购买数量") - private Integer quantity; - @ApiModelProperty(value = "主图") - private String pic; - @ApiModelProperty(value = "售价") - private BigDecimal price; - @ApiModelProperty(value = "库存数") - private Integer stock; -} \ No newline at end of file diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/ValidatePhoneVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/ValidatePhoneVO.java deleted file mode 100644 index 2564cc8..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/ValidatePhoneVO.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.cyl.h5.domain.vo; - -import lombok.Data; - -/** - * todo 写法不规范,可以简化,没必要造一个类来处理 - */ -@Data -public class ValidatePhoneVO { - /** 是否成功 */ - private boolean ifSuccess; - /** 消息 */ - private String message; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/WechatLoginVO.java b/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/WechatLoginVO.java deleted file mode 100644 index 126803e..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/domain/vo/WechatLoginVO.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.cyl.h5.domain.vo; - -import lombok.Data; - -@Data -public class WechatLoginVO { - - private String data; - private String key; - private String sessionKey; - private String openId; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberAddressService.java b/ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberAddressService.java deleted file mode 100644 index 7b6e6f2..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberAddressService.java +++ /dev/null @@ -1,146 +0,0 @@ -package com.cyl.h5.service; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.domain.entity.MemberAddress; -import com.cyl.manager.ums.mapper.MemberAddressMapper; -import com.cyl.manager.ums.domain.form.MemberAddressForm; -import com.cyl.manager.ums.domain.vo.MemberAddressVO; -import com.ruoyi.common.constant.Constants; -import com.ruoyi.common.utils.AesCryptoUtils; -import com.ruoyi.common.utils.PhoneUtils; -import com.ruoyi.framework.config.LocalDataUtil; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; - -import java.time.LocalDateTime; -import java.util.Arrays; -import java.util.List; -import java.util.stream.Collectors; - -/** - * 会员收货地址Service业务层处理 - * - * @author sjm - */ -@Service -@Transactional -public class H5MemberAddressService { - @Autowired - private MemberAddressMapper memberAddressMapper; - - @Value("${aes.key}") - private String aesKey; - - /** - * 查询会员收货地址 - * - * @param id 会员收货地址主键 - * @return 会员收货地址 - */ - - public MemberAddressVO selectById(Long id) { - MemberAddress memberAddress = memberAddressMapper.selectById(id); - MemberAddressVO memberAddressVO = new MemberAddressVO(); - BeanUtils.copyProperties(memberAddress, memberAddressVO); - memberAddressVO.setPhone(AesCryptoUtils.decrypt(aesKey, memberAddress.getPhoneEncrypted())); - return memberAddressVO; - } - - public List selectList() { - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - MemberAddress memberAddress = new MemberAddress(); - memberAddress.setMemberId(member.getId()); - List memberAddressesList = memberAddressMapper.selectByEntity(memberAddress); - return memberAddressesList.stream().map(it -> { - MemberAddressVO vo = new MemberAddressVO(); - BeanUtils.copyProperties(it, vo); - vo.setPhone(AesCryptoUtils.decrypt(aesKey, it.getPhoneEncrypted())); - return vo; - }).collect(Collectors.toList()); - } - - /** - * 新增会员收货地址 - * - * @param memberAddressForm 会员收货地址 - * @return 结果 - */ - public int insert(MemberAddressForm memberAddressForm) { - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - if (memberAddressForm.getIsDefault() == 1) { - //将别的设置为0 - memberAddressMapper.updateDefault(0,member.getId()); - } - MemberAddress memberAddress = new MemberAddress(); - BeanUtils.copyProperties(memberAddressForm, memberAddress); - memberAddress.setPhoneHidden(PhoneUtils.hidePhone(memberAddressForm.getPhone())); - memberAddress.setPhoneEncrypted(AesCryptoUtils.encrypt(aesKey, memberAddressForm.getPhone())); - memberAddress.setMemberId(member.getId()); - memberAddress.setCreateTime(LocalDateTime.now()); - return memberAddressMapper.insert(memberAddress); - } - - /** - * 修改会员收货地址 - * - * @param memberAddressForm 会员收货地址 - * @return 结果 - */ - - public int update(MemberAddressForm memberAddressForm) { - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - if (memberAddressForm.getIsDefault() == 1) { - //将别的设置为0 - memberAddressMapper.updateDefault(0,member.getId()); - } - MemberAddress memberAddress = new MemberAddress(); - BeanUtils.copyProperties(memberAddressForm, memberAddress); - memberAddress.setPhoneHidden(PhoneUtils.hidePhone(memberAddressForm.getPhone())); - memberAddress.setPhoneEncrypted(AesCryptoUtils.encrypt(aesKey, memberAddressForm.getPhone())); - memberAddress.setUpdateTime(LocalDateTime.now()); - memberAddress.setUpdateBy(member.getId()); - return memberAddressMapper.updateById(memberAddress); - } - - /** - * 批量删除会员收货地址 - * - * @param ids 需要删除的会员收货地址主键 - * @return 结果 - */ - - public int deleteByIds(Long[] ids) { - return memberAddressMapper.deleteBatchIds(Arrays.asList(ids)); - } - - /** - * 删除会员收货地址信息 - * - * @param id 会员收货地址主键 - * @return 结果 - */ - - public int deleteById(Long id) { - return memberAddressMapper.deleteById(id); - } - - public MemberAddressVO getDefault() { - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("member_id",member.getId()); - queryWrapper.eq("is_default",1); - List list = memberAddressMapper.selectList(queryWrapper); - if (CollectionUtils.isEmpty(list)){ - return null; - } - MemberAddressVO memberAddressVO = new MemberAddressVO(); - BeanUtils.copyProperties(list.get(0), memberAddressVO); - memberAddressVO.setPhone(AesCryptoUtils.decrypt(aesKey, list.get(0).getPhoneEncrypted())); - return memberAddressVO; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberCartService.java b/ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberCartService.java deleted file mode 100644 index f1a1888..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberCartService.java +++ /dev/null @@ -1,201 +0,0 @@ -package com.cyl.h5.service; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.cyl.h5.config.SecurityUtil; -import com.cyl.manager.pms.domain.entity.Sku; -import com.cyl.manager.pms.mapper.ProductMapper; -import com.cyl.manager.pms.mapper.SkuMapper; -import com.cyl.manager.ums.convert.MemberCartConvert; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.domain.entity.MemberCart; -import com.cyl.manager.ums.mapper.MemberCartMapper; -import com.cyl.manager.ums.domain.query.MemberCartQuery; -import com.cyl.manager.ums.domain.vo.MemberCartVO; -import com.cyl.manager.ums.domain.form.UpdateMemberCartForm; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.constant.Constants; -import com.ruoyi.common.exception.base.BaseException; -import com.ruoyi.common.utils.SecurityUtils; -import com.ruoyi.common.utils.SortUtil; -import com.ruoyi.framework.config.LocalDataUtil; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; -import org.springframework.util.CollectionUtils; - -import java.time.LocalDateTime; -import java.util.*; -import java.util.stream.Collectors; - -/** - * 购物车Service业务层处理 - * - * @author zcc - */ -@Service -public class H5MemberCartService { - @Autowired - private MemberCartMapper memberCartMapper; - @Autowired - private SkuMapper skuMapper; - @Autowired - private ProductMapper productMapper; - @Autowired - private MemberCartConvert memberCartConvert; - - /** - * 查询购物车 - * - * @param id 购物车主键 - * @return 购物车 - */ - public MemberCart selectById(Long id) { - return memberCartMapper.selectById(id); - } - - /** - * 查询购物车列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 购物车 - */ - public List selectList(MemberCartQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize(), SortUtil.sort2string(page.getSort(),"id desc")); - } - QueryWrapper qw = new QueryWrapper<>(); - if (query.getMemberId() != null){ - qw.eq("member_id", query.getMemberId()); - } - List memberCartList = memberCartMapper.selectList(qw); - if (CollectionUtil.isEmpty(memberCartList)){ - return Collections.emptyList(); - } - //查sku - List skuIdList = memberCartList.stream().map(MemberCart::getSkuId).collect(Collectors.toList()); - QueryWrapper skuQw = new QueryWrapper<>(); - skuQw.in("id", skuIdList); - Map skuMap = skuMapper.selectList(skuQw).stream().collect(Collectors.toMap(Sku::getId, it -> it)); - List resList = new ArrayList<>(); - memberCartList.forEach(item -> { - MemberCartVO memberCartVO = new MemberCartVO(); - BeanUtils.copyProperties(item, memberCartVO); - if (!skuMap.containsKey(item.getSkuId())){ - memberCartVO.setStatus(0); - memberCartVO.setSkuIfExist(0); - }else { - Sku sku = skuMap.get(item.getSkuId()); - memberCartVO.setPrice(sku.getPrice()); - memberCartVO.setSkuIfExist(1); - } - resList.add(memberCartVO); - }); - return resList; - } - - /** - * 新增购物车 - * - * @param memberCart 购物车 - * @return 结果 - */ - public int insert(MemberCart memberCart) { - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - memberCart.setMemberId(member.getId()); - //判断cart是否存在 - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("member_id",member.getId()); - queryWrapper.eq("sku_id",memberCart.getSkuId()); - queryWrapper.eq("product_id",memberCart.getProductId()); - List memberCarts = memberCartMapper.selectList(queryWrapper); - if (CollectionUtils.isEmpty(memberCarts)) { - memberCart.setStatus(1); - memberCart.setCreateTime(LocalDateTime.now()); - memberCart.setCreateBy(member.getId()); - return memberCartMapper.insert(memberCart); - } - MemberCart dbCart = memberCarts.get(0); - dbCart.setUpdateTime(LocalDateTime.now()); - dbCart.setQuantity(dbCart.getQuantity() + memberCart.getQuantity()); - return memberCartMapper.updateById(dbCart); - } - - /** - * 修改购物车 - * - * @param memberCart 购物车 - * @return 结果 - */ - public int update(MemberCart memberCart) { - MemberCart cart = memberCartMapper.selectById(memberCart.getId()); - if (cart == null){ - return 0; - } - cart.setQuantity(memberCart.getQuantity()); - cart.setUpdateTime(LocalDateTime.now()); - cart.setUpdateBy(SecurityUtil.getLocalMember().getId()); - return memberCartMapper.updateById(cart); - } - public int update(UpdateMemberCartForm form) { - if (form.getNum() == null || form.getId() == null) { - throw new BaseException("参数错误"); - } - Long userId = SecurityUtils.getUserId(); - LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); - qw.eq(MemberCart::getMemberId, userId); - qw.eq(MemberCart::getId, form.getId()); - if (form.getNum() <= 0) { - return memberCartMapper.delete(qw); - } - MemberCart e = new MemberCart(); - e.setQuantity(form.getNum()); - return memberCartMapper.update(e, qw); - } - - /** - * 删除购物车信息 - * - * @param id 购物车主键 - * @return 结果 - */ - public int deleteById(Long id) { - return memberCartMapper.deleteById(id); - } - - /** - * 删除购物车信息 - * - * @param ids 购物车主键 - * @return 结果 - */ - public int deleteByIds(String ids) { - List idList = Arrays.stream(ids.split(",")).map(it -> Long.parseLong(it)).collect(Collectors.toList()); - return memberCartMapper.deleteBatchIds(idList); - } - - public Integer mineCartNum() { - Long userId = SecurityUtils.getUserId(); - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("member_id", userId); - qw.eq("status", 1); - qw.select("count(quantity) quantity"); - MemberCart c = memberCartMapper.selectOne(qw); - if (c == null) { - return 0; - } - return c.getQuantity(); - } - - public List mineCartIds() { - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("member_id", SecurityUtils.getUserId()); - qw.eq("status", 1); - qw.select("id"); - List list = memberCartMapper.selectList(qw); - return list.stream().map(MemberCart::getId).collect(Collectors.toList()); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberService.java b/ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberService.java deleted file mode 100644 index 86f0ffc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/service/H5MemberService.java +++ /dev/null @@ -1,407 +0,0 @@ -package com.cyl.h5.service; - -import cn.hutool.json.JSONUtil; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.cyl.config.AESForWeixinGetPhoneNumber; -import com.cyl.h5.domain.form.BindOpenIDForm; -import com.cyl.h5.domain.form.H5AccountLoginForm; -import com.cyl.h5.domain.form.H5SmsLoginForm; -import com.cyl.h5.domain.form.RegisterForm; -import com.cyl.h5.domain.vo.H5LoginVO; -import com.cyl.h5.domain.vo.RegisterVO; -import com.cyl.h5.domain.vo.ValidatePhoneVO; -import com.cyl.h5.domain.vo.WechatLoginVO; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.domain.entity.MemberLogininfor; -import com.cyl.manager.ums.domain.entity.MemberWechat; -import com.cyl.manager.ums.domain.vo.MemberVO; -import com.cyl.manager.ums.mapper.MemberLogininforMapper; -import com.cyl.manager.ums.mapper.MemberMapper; -import com.cyl.manager.ums.mapper.MemberWechatMapper; -import com.cyl.manager.ums.service.MemberLogininforService; -import com.cyl.wechat.WechatAuthService; -import com.cyl.wechat.response.WechatUserAuth; -import com.ruoyi.common.constant.Constants; -import com.ruoyi.common.core.domain.model.LoginMember; -import com.ruoyi.common.core.redis.RedisCache; -import com.ruoyi.common.utils.*; -import com.ruoyi.common.utils.ip.AddressUtils; -import com.ruoyi.common.utils.ip.IpUtils; -import com.ruoyi.framework.config.LocalDataUtil; -import com.ruoyi.framework.web.service.TokenService; -import eu.bitwalker.useragentutils.UserAgent; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.Base64Utils; - -import java.time.LocalDateTime; -import java.util.Base64; - -@Service -@Slf4j -public class H5MemberService { - - @Autowired - private MemberMapper memberMapper; - - @Autowired - private RedisCache redisCache; - - @Autowired - private TokenService tokenService; - - @Value("${aes.key}") - private String aesKey; - - @Autowired - private WechatAuthService wechatAuthService; - - @Autowired - private MemberWechatMapper memberWechatMapper; - - @Autowired - private MemberLogininforService memberLogininforService; - - @Autowired - private MemberLogininforMapper memberLogininforMapper; - - - /** - * 注册 - * @param request 注册请求体 - * @return 结果 - */ - @Transactional - public RegisterVO register(RegisterForm request){ - LocalDateTime optDate = LocalDateTime.now(); - RegisterVO response = new RegisterVO(); - //校验验证码 - this.validateVerifyCode(request.getUuid(), request.getMobile(), request.getCode()); - //创建会员 - Member member = new Member(); - member.setPhoneEncrypted(AesCryptoUtils.encrypt(aesKey, request.getMobile())); - member.setPhoneHidden(PhoneUtils.hidePhone(request.getMobile())); - member.setPassword(SecurityUtils.encryptPassword(request.getPassword())); - member.setNickname("用户" + request.getMobile().substring(7,11)); - member.setStatus(Constants.MEMBER_ACCOUNT_STATUS.NORMAL); - member.setGender(0); - member.setCreateTime(optDate); - int rows = memberMapper.insert(member); - if (rows < 1){ - throw new RuntimeException("注册失败,请重试"); - } - //调用微信授权业务拿到openId等 - WechatUserAuth userToken = wechatAuthService.getUserToken(request.getWechatCode()); - if (userToken == null){ - throw new RuntimeException("授权失败,请重试"); - } - MemberWechat memberWechat = new MemberWechat(); - memberWechat.setMemberId(member.getId()); - memberWechat.setOpenid(userToken.getOpenid()); - memberWechat.setAccessToken(userToken.getAccess_token()); - memberWechat.setExpiresIn(userToken.getExpires_in()); - memberWechat.setRefreshToken(userToken.getRefresh_token()); - memberWechat.setCreateTime(optDate); - memberWechat.setCreateBy(member.getId()); - rows = memberWechatMapper.insert(memberWechat); - if (rows < 1){ - throw new RuntimeException("注册失败,请重试"); - } - //注册成功直接返回token了 - H5LoginVO loginResponse = getLoginResponse(member.getId()); - response.setToken(loginResponse.getToken()); - return response; - } - - public ValidatePhoneVO validate(String phone) { - ValidatePhoneVO response = new ValidatePhoneVO(); - byte[] decodedBytes = Base64.getDecoder().decode(phone); - phone = new String(decodedBytes); - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("phone_encrypted", AesCryptoUtils.encrypt(aesKey, phone)); - Member member = memberMapper.selectOne(qw); - if (member != null){ - throw new RuntimeException("该手机号已被占用"); - } - response.setIfSuccess(true); - response.setMessage("该手机号可用"); - return response; - } - - /** - * 账号密码登录 - * @param data - * @return - */ - public H5LoginVO accountLogin(String data) { - if (StringUtils.isEmpty(data)){ - throw new RuntimeException(Constants.LOGIN_INFO.WRONG); - } - // 解码 转 对象 - H5AccountLoginForm request = JSON.parseObject(new String(Base64Utils.decodeFromString(data)), H5AccountLoginForm.class); - log.info("account login request:{}", JSONUtil.toJsonStr(request)); - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("phone_encrypted", AesCryptoUtils.encrypt(aesKey, request.getMobile())); - Member member = memberMapper.selectOne(qw); - if (member == null){ - throw new RuntimeException(Constants.LOGIN_INFO.WRONG); - } - validateMemberStatus(member); - //check 密码 - if (!SecurityUtils.matchesPassword(request.getPassword(), member.getPassword())){ - throw new RuntimeException(Constants.LOGIN_INFO.WRONG); - } - return getLoginResponse(member.getId()); - } - - public H5LoginVO smsLogin(String data){ - LocalDateTime optDate = LocalDateTime.now(); - if (StringUtils.isEmpty(data)){ - throw new RuntimeException(Constants.LOGIN_INFO.WRONG); - } - H5SmsLoginForm request = JSON.parseObject(new String(Base64Utils.decodeFromString(data)), H5SmsLoginForm.class); - //校验验证码 - this.validateVerifyCode(request.getUuid(), request.getMobile(), request.getCode()); - //查会员 - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("phone_encrypted", AesCryptoUtils.encrypt(aesKey, request.getMobile())); - Member member = memberMapper.selectOne(qw); - if (member == null){ - //新会员,注册并登录 - member = new Member(); - member.setPhoneEncrypted(AesCryptoUtils.encrypt(aesKey, request.getMobile())); - member.setPhoneHidden(PhoneUtils.hidePhone(request.getMobile())); - member.setNickname("用户" + request.getMobile().substring(7,11)); - member.setStatus(Constants.MEMBER_ACCOUNT_STATUS.NORMAL); - member.setGender(0); - member.setCreateTime(optDate); - int rows = memberMapper.insert(member); - if (rows < 1){ - throw new RuntimeException("注册失败,请重试"); - } - MemberWechat memberWechat = new MemberWechat(); - memberWechat.setMemberId(member.getId()); - if (request.getAuthInfo() != null){ - memberWechat.setOpenid(request.getAuthInfo().getOpenid()); - memberWechat.setAccessToken(request.getAuthInfo().getAccess_token()); - memberWechat.setExpiresIn(request.getAuthInfo().getExpires_in()); - memberWechat.setRefreshToken(request.getAuthInfo().getRefresh_token()); - } - if (StringUtils.isNotEmpty(request.getMpOpenId())){ - memberWechat.setRoutineOpenid(request.getMpOpenId()); - } - memberWechat.setCreateTime(optDate); - memberWechat.setCreateBy(member.getId()); - rows = memberWechatMapper.insert(memberWechat); - if (rows < 1){ - throw new RuntimeException("注册失败,请重试"); - } - }else { - //校验会员状态 - validateMemberStatus(member); - //判断小程序openid是否插入 - if (StringUtils.isNotEmpty(request.getMpOpenId()) || request.getAuthInfo() != null){ - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("member_id",member.getId()); - MemberWechat memberWechat = memberWechatMapper.selectOne(queryWrapper); - Boolean update = false; - if (StringUtils.isNotEmpty(request.getMpOpenId()) && StringUtils.isEmpty(memberWechat.getRoutineOpenid())) { - memberWechat.setRoutineOpenid(request.getMpOpenId()); - update = true; - } - if (request.getAuthInfo() != null && StringUtils.isEmpty(memberWechat.getOpenid())) { - memberWechat.setOpenid(request.getAuthInfo().getOpenid()); - memberWechat.setAccessToken(request.getAuthInfo().getAccess_token()); - memberWechat.setExpiresIn(request.getAuthInfo().getExpires_in()); - memberWechat.setRefreshToken(request.getAuthInfo().getRefresh_token()); - update = true; - } - if (update){ - memberWechatMapper.updateById(memberWechat); - } - } - } - - return getLoginResponse(member.getId()); - } - - /** - * 校验会员状态 - * @param member 会员信息 - */ - private void validateMemberStatus(Member member) { - if (Constants.MEMBER_ACCOUNT_STATUS.FORBIDDEN == member.getStatus()){ - throw new RuntimeException(Constants.LOGIN_INFO.FORBIDDEN); - } - } - - /** - * 校验验证码有效性 - * @param uuid 唯一标识 - * @param phone 手机号 - * @param inputCode 输入的验证码 - */ - private void validateVerifyCode(String uuid, String phone, String inputCode){ - String key = uuid + "_" + phone; - String redisCode = redisCache.getCacheObject(key); - if (redisCode == null){ - throw new RuntimeException(Constants.VERIFY_CODE_INFO.EXPIRED); - }else if (!redisCode.equals(inputCode)){ - throw new RuntimeException(Constants.VERIFY_CODE_INFO.WRONG); - } - //删除缓存 - redisCache.deleteObject(key); - } - - /** - * 封装登录响应 - * @param memberId 登录会员id - * @return 结果 - */ - public H5LoginVO getLoginResponse(Long memberId){ - LoginMember loginMember = new LoginMember(); - loginMember.setMemberId(memberId); - String token = tokenService.createMemberToken(loginMember); - //record登录 - this.insert(memberId); - H5LoginVO response = new H5LoginVO(); - response.setToken(token); - return response; - } - - public MemberVO getMemberInfo() { - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - MemberVO memberVO = new MemberVO(); - BeanUtils.copyProperties(member, memberVO); - memberVO.setPhone(AesCryptoUtils.decrypt(aesKey, member.getPhoneEncrypted())); - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("member_id", member.getId()); - MemberWechat memberWechat = memberWechatMapper.selectOne(qw); - memberVO.setOpenId(memberWechat.getOpenid()); - return memberVO; - } - - public WechatUserAuth getWechatUserAuth(String data) { - BindOpenIDForm request = JSON.parseObject(new String(Base64Utils.decodeFromString(data)), BindOpenIDForm.class); - WechatUserAuth userToken = wechatAuthService.getUserToken(request.getCode()); - if (userToken == null){ - log.error("微信授权失败"); - throw new RuntimeException("授权失败,请重试"); - } - //判断openid是否存在 - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("openid", userToken.getOpenid()); - MemberWechat memberWechat = memberWechatMapper.selectOne(qw); - if (memberWechat == null) { - return userToken; - } - Member member = memberMapper.selectById(memberWechat.getMemberId()); - userToken.setToken(getLoginResponse(member.getId()).getToken()); - return userToken; - } - - public void setWechatInfo(String data) { - WechatUserAuth authInfo = JSON.parseObject(new String(Base64Utils.decodeFromString(data)), WechatUserAuth.class); - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - UpdateWrapper wrapper = new UpdateWrapper<>(); - wrapper.eq("member_id", member.getId()); - wrapper.set("openid", authInfo.getOpenid()); - wrapper.set("access_token", authInfo.getAccess_token()); - wrapper.set("expires_in", authInfo.getExpires_in()); - wrapper.set("refresh_token", authInfo.getRefresh_token()); - wrapper.set("update_time", LocalDateTime.now()); - wrapper.set("update_by", member.getId()); - memberWechatMapper.update(null, wrapper); - } - - /** - * 新增会员登录记录 - * - * @param memberId 会员id - * @return 结果 - */ - public void insert(Long memberId) { - Member member = memberMapper.selectById(memberId); - UserAgent userAgent = UserAgent.parseUserAgentString(ServletUtils.getRequest().getHeader("User-Agent")); - MemberLogininfor memberLogininfor = new MemberLogininfor(); - memberLogininfor.setMemberId(memberId); - memberLogininfor.setPhone(member.getPhoneHidden()); - memberLogininfor.setOs(userAgent.getOperatingSystem().getName()); - memberLogininfor.setIpaddr(IpUtils.getIpAddr(ServletUtils.getRequest())); - memberLogininfor.setBrowser(userAgent.getBrowser().getName()); - memberLogininfor.setLoginLocation(AddressUtils.getRealAddressByIP(memberLogininfor.getIpaddr())); - memberLogininfor.setLoginTime(LocalDateTime.now()); - memberLogininforMapper.insert(memberLogininfor); - } - - public H5LoginVO wechatLogin(WechatLoginVO params) throws Exception { - String openId = params.getOpenId(); - String sessionKey = params.getSessionKey(); - //解密手机号 - String mobile = getMobile(sessionKey, params.getKey(), params.getData()); - if(StringUtils.isEmpty(mobile)) { - throw new Exception("登录异常"); - } - Member member = createOrUpdateMember(openId,mobile); - return getLoginResponse(member.getId()); - } - - private Member createOrUpdateMember(String openId,String mobile){ - //查会员 - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("phone_encrypted", AesCryptoUtils.encrypt(aesKey, mobile)); - Member member = memberMapper.selectOne(qw); - if (member == null){ - //新会员,注册并登录 - member = new Member(); - member.setPhoneEncrypted(AesCryptoUtils.encrypt(aesKey, mobile)); - member.setPhoneHidden(PhoneUtils.hidePhone(mobile)); - member.setNickname("用户" + mobile.substring(7,11)); - member.setStatus(Constants.MEMBER_ACCOUNT_STATUS.NORMAL); - member.setGender(0); - member.setCreateTime(LocalDateTime.now()); - int rows = memberMapper.insert(member); - if (rows < 1){ - throw new RuntimeException("注册失败,请重试"); - } - MemberWechat memberWechat = new MemberWechat(); - memberWechat.setMemberId(member.getId()); - memberWechat.setRoutineOpenid(openId); - memberWechat.setCreateTime(LocalDateTime.now()); - memberWechat.setCreateBy(member.getId()); - rows = memberWechatMapper.insert(memberWechat); - if (rows < 1){ - throw new RuntimeException("注册失败,请重试"); - } - } else { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("member_id", member.getId()); - MemberWechat memberWechat = memberWechatMapper.selectOne(queryWrapper); - if (StringUtils.isEmpty(memberWechat.getRoutineOpenid())) { - memberWechat.setRoutineOpenid(openId); - memberWechatMapper.updateById(memberWechat); - } - } - return member; - } - - private String getMobile(String sessionKey, String key, String data) { - AESForWeixinGetPhoneNumber aes = new AESForWeixinGetPhoneNumber(data, sessionKey, key); - JSONObject decrypt = aes.decrypt(); - if (decrypt != null) { - return decrypt.getString("phoneNumber"); - } - return null; - } - - public Member selectById(Long memberId) { - return memberMapper.selectById(memberId); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/service/H5OrderService.java b/ruoyi-mall/src/main/java/com/cyl/h5/service/H5OrderService.java deleted file mode 100644 index 8754510..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/h5/service/H5OrderService.java +++ /dev/null @@ -1,920 +0,0 @@ -package com.cyl.h5.service; - -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.cyl.h5.config.SecurityUtil; -import com.cyl.h5.domain.dto.OrderProductListDTO; -import com.cyl.h5.domain.dto.PayNotifyMessageDTO; -import com.cyl.h5.domain.form.*; -import com.cyl.h5.domain.vo.*; -import com.cyl.manager.act.domain.entity.MemberCoupon; -import com.cyl.manager.act.service.IntegralHistoryService; -import com.cyl.manager.act.service.MemberCouponService; -import com.cyl.manager.oms.convert.AftersaleItemConvert; -import com.cyl.manager.oms.convert.OrderItemConvert; -import com.cyl.manager.oms.domain.entity.*; -import com.cyl.manager.oms.mapper.*; -import com.cyl.manager.oms.service.OrderItemService; -import com.cyl.manager.oms.service.OrderOperateHistoryService; -import com.cyl.manager.pms.domain.entity.Product; -import com.cyl.manager.pms.domain.entity.Sku; -import com.cyl.manager.pms.mapper.ProductMapper; -import com.cyl.manager.pms.mapper.SkuMapper; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.domain.entity.MemberAddress; -import com.cyl.manager.ums.domain.entity.MemberCart; -import com.cyl.manager.ums.domain.entity.MemberWechat; -import com.cyl.manager.ums.mapper.MemberAddressMapper; -import com.cyl.manager.ums.mapper.MemberCartMapper; -import com.cyl.manager.ums.mapper.MemberWechatMapper; -import com.cyl.wechat.WechatPayData; -import com.cyl.wechat.WechatPayService; -import com.cyl.wechat.WechatPayUtil; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.constant.Constants; -import com.ruoyi.common.core.redis.RedisService; -import com.ruoyi.common.enums.AftersaleStatus; -import com.ruoyi.common.enums.OrderRefundStatus; -import com.ruoyi.common.enums.OrderStatus; -import com.ruoyi.common.utils.DateUtils; -import com.ruoyi.common.utils.IDGenerator; -import com.ruoyi.framework.config.LocalDataUtil; -import com.wechat.pay.java.service.partnerpayments.jsapi.model.Transaction; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.http.ResponseEntity; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.time.ZoneId; -import java.time.format.DateTimeFormatter; -import java.util.*; -import java.util.concurrent.atomic.AtomicReference; -import java.util.stream.Collectors; -import java.util.stream.Stream; - -@Service -@Slf4j -public class H5OrderService { - - @Autowired - private MemberAddressMapper memberAddressMapper; - - @Autowired - private SkuMapper skuMapper; - - @Autowired - private ProductMapper productMapper; - - @Autowired - private MemberCartMapper memberCartMapper; - - @Autowired - private OrderMapper orderMapper; - - @Autowired - private OrderItemMapper orderItemMapper; - - @Autowired - private OrderOperateHistoryMapper orderOperateHistoryMapper; - - @Autowired - private OrderItemService orderItemService; - - @Autowired - private OrderOperateHistoryService orderOperateHistoryService; - - @Autowired(required = false) - private WechatPayService wechatPayService; - - @Autowired - private MemberWechatMapper memberWechatMapper; - - @Autowired - private WechatPaymentHistoryMapper wechatPaymentHistoryMapper; - - @Autowired - private RedisService redisService; - - @Autowired - private AftersaleMapper aftersaleMapper; - - @Autowired - private AftersaleItemMapper aftersaleItemMapper; - - @Autowired - private AftersaleItemConvert aftersaleItemConvert; - - @Autowired - private OrderItemConvert orderItemConvert; - - @Autowired - private IntegralHistoryService integralHistoryService; - - @Autowired - private MemberCouponService memberCouponService; - - @Transactional - public Long submit(OrderSubmitForm form) { - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - //只支持快递 - Long addressId = form.getAddressId(); - if (addressId == null) { - throw new RuntimeException("收获地址不能为空"); - } - MemberAddress memberAddress = memberAddressMapper.selectById(addressId); - if (memberAddress == null) { - throw new RuntimeException("收货地址不能为空"); - } - //sku不能为空 - List skuList = form.getSkuList(); - if (CollectionUtil.isEmpty(skuList)) { - throw new RuntimeException("商品SKU信息不能为空"); - } - //将sku信息转换为 key:skuId ,value:购买数量 - Map skuQuantityMap = skuList.stream().collect(Collectors.toMap(OrderProductListDTO::getSkuId, OrderProductListDTO::getQuantity)); - //查询所有sku信息 - Map querySkuMap = skuMapper - .selectBatchIds(skuList.stream().map(OrderProductListDTO::getSkuId).collect(Collectors.toList())) - .stream().collect(Collectors.toMap(Sku::getId, it -> it)); - //校验优惠券 - BigDecimal couponAmount = BigDecimal.ZERO; - if (form.getMemberCouponId() != null) { - MemberCoupon coupon = memberCouponService.selectValidCoupon(form.getMemberCouponId()); - if (coupon == null) { - throw new RuntimeException("优惠券未找到"); - } - //将sku转换成products - Map products = new HashMap<>(); - querySkuMap.forEach((k, v) -> { - Integer count = skuQuantityMap.get(k); - Long productId = v.getProductId(); - Product product; - BigDecimal amount = v.getPrice().multiply(BigDecimal.valueOf(count)); - if (products.containsKey(k)) { - product = products.get(k); - product.setPrice(amount.add(product.getPrice())); - } else { - product = new Product(); - product.setId(productId); - product.setPrice(amount); - } - products.put(k, product); - }); - if (!memberCouponService.judgeCouponCanUse(coupon, products.values())) { - throw new RuntimeException("优惠券未达到使用条件"); - } - couponAmount = coupon.getCouponAmount(); - } - //计算商品总额、订单总额(订单总金额=商品总金额,因为暂时没有运费等概念) - BigDecimal productTotalAmount = BigDecimal.ZERO; - BigDecimal orderTotalAmount = BigDecimal.ZERO; - for (OrderProductListDTO dto : skuList) { - if (!querySkuMap.containsKey(dto.getSkuId())) { - throw new RuntimeException("商品SKU不存在"); - } - Sku sku = querySkuMap.get(dto.getSkuId()); - Product product = productMapper.selectById(sku.getProductId()); - if (product == null) { - throw new RuntimeException("商品不存在"); - } - if (Constants.PublishStatus.UNDERCARRIAGE.equals(product.getPublishStatus())) { - throw new RuntimeException("商品" + product.getName() + "已下架"); - } - if (sku.getStock() < skuQuantityMap.get(sku.getId())) { - throw new RuntimeException("库存不足"); - } - productTotalAmount = productTotalAmount.add(sku.getPrice().multiply(BigDecimal.valueOf(skuQuantityMap.get(sku.getId())))); - orderTotalAmount = orderTotalAmount.add(sku.getPrice().multiply(BigDecimal.valueOf(skuQuantityMap.get(sku.getId())))); - dto.setSku(sku); - dto.setProduct(product); - } - LocalDateTime optTime = LocalDateTime.now(); - - //生成一个统一的订单号 - Long orderId = IDGenerator.generateId(); - //生产一个payId - Long payId = IDGenerator.generateId(); - //创建订单 - Order order = new Order(); - order.setPayId(payId); - order.setId(orderId); - order.setOrderSn(this.getOrderIdPrefix() + orderId); - order.setMemberId(member.getId()); - order.setMemberUsername(member.getNickname()); - order.setPayType(Constants.PayType.WECHAT); - order.setCouponAmount(couponAmount); - order.setMemberCouponId(form.getMemberCouponId()); - order.setTotalAmount(orderTotalAmount); - order.setPurchasePrice(BigDecimal.ZERO); - order.setFreightAmount(BigDecimal.ZERO); - BigDecimal subtract = orderTotalAmount.subtract(couponAmount); - order.setPayAmount(subtract.compareTo(BigDecimal.ZERO) > 0 ? subtract : BigDecimal.ZERO); - if (order.getPayAmount().compareTo(BigDecimal.ZERO) == 0) { - order.setStatus(Constants.OrderStatus.SEND); - } else { - order.setStatus(Constants.OrderStatus.NOTPAID); - } - order.setAftersaleStatus(1); - order.setReceiverName(memberAddress.getName()); - order.setReceiverPhone(memberAddress.getPhoneHidden()); - order.setReceiverPhoneEncrypted(memberAddress.getPhoneEncrypted()); - order.setReceiverPostCode(memberAddress.getPostCode()); - order.setReceiverProvince(memberAddress.getProvince()); - order.setReceiverCity(memberAddress.getCity()); - order.setReceiverDistrict(memberAddress.getDistrict()); - order.setReceiverProvinceId(memberAddress.getProvinceId()); - order.setReceiverCityId(memberAddress.getCityId()); - order.setReceiverDistrictId(memberAddress.getDistrictId()); - order.setReceiverDetailAddress(memberAddress.getDetailAddress()); - order.setNote(form.getNote()); - order.setConfirmStatus(0); - order.setDeleteStatus(0); -// order.setPaymentTime(optTime); - order.setCreateTime(optTime); - order.setCreateBy(member.getId()); - int rows = orderMapper.insert(order); - if (rows < 1) { - throw new RuntimeException("订单新增失败"); - } - // 保存orderItem - orderItemService.saveOrderItem(member, optTime, orderId, skuList); - skuList.forEach(item -> { - //减少sku的库存 - skuMapper.updateStockById(item.getSkuId(), LocalDateTime.now(), item.getQuantity()); - }); - // 保存订单操作记录 - OrderOperateHistory orderOperateHistory = new OrderOperateHistory(); - orderOperateHistory.setOrderId(orderId); - orderOperateHistory.setOrderSn(order.getOrderSn()); - orderOperateHistory.setOperateMan(member.getNickname()); - orderOperateHistory.setOrderStatus(Constants.OrderStatus.NOTPAID); - orderOperateHistory.setCreateTime(optTime); - orderOperateHistory.setCreateBy(member.getId()); - rows = orderOperateHistoryMapper.insert(orderOperateHistory); - if (rows < 1) { - throw new RuntimeException("保存订单操作记录失败"); - } - //若来源为购物车,删除购物车 - if (Constants.OrderFrom.CART.equals(form.getFrom())) { - List skuIdList = skuList.stream().map(OrderProductListDTO::getSkuId).collect(Collectors.toList()); - LambdaUpdateWrapper wrapper = Wrappers.lambdaUpdate(); - wrapper.eq(MemberCart::getMemberId, member.getId()); - wrapper.in(MemberCart::getSkuId, skuIdList); - rows = memberCartMapper.delete(wrapper); - if (rows < 1) { - throw new RuntimeException("删除购物车失败"); - } - } - //当前订单id,接入支付后可返回payId - //如果是使用了优惠券,更新优惠券状态 - if (form.getMemberCouponId() != null) { - memberCouponService.updateCouponStatus(form.getMemberCouponId(), orderId); - } - return payId; - } - - public OrderCalcVO addOrderCheck(OrderCreateForm orderCreateForm) { - OrderCalcVO res = new OrderCalcVO(); - List skuList = new ArrayList<>(); - List list = orderCreateForm.getSkuList(); - if (CollectionUtil.isEmpty(list)) { - throw new RuntimeException("商品SKU信息不能为空"); - } - //将购买的sku信息转化为key:skuId value:数量 - Map quantityMap = list.stream(). - collect(Collectors.toMap(OrderProductListDTO::getSkuId, OrderProductListDTO::getQuantity, (v1, v2) -> v2)); - //查询所有sku信息 - Set collect = list.stream().map(OrderProductListDTO::getSkuId).collect(Collectors.toSet()); - Map querySkuMap = skuMapper.selectBatchIds(collect).stream().collect(Collectors.toMap(Sku::getId, it -> it)); - //计算商品总金额、订单总金额 - BigDecimal productTotalAmount = BigDecimal.ZERO; - BigDecimal orderTotalAmount = BigDecimal.ZERO; - for (OrderProductListDTO dto : list) { - if (!querySkuMap.containsKey(dto.getSkuId())) { - throw new RuntimeException("商品SKU不存在"); - } - Sku sku = querySkuMap.get(dto.getSkuId()); - //查product - Product product = productMapper.selectById(sku.getProductId()); - if (product == null) { - throw new RuntimeException("商品不存在"); - } - if (Constants.PublishStatus.UNDERCARRIAGE.equals(product.getPublishStatus())) { - throw new RuntimeException("商品" + product.getName() + "已下架"); - } - if (sku.getStock() < quantityMap.get(sku.getId())) { - throw new RuntimeException("库存不足"); - } - BigDecimal addAmount = sku.getPrice().multiply(BigDecimal.valueOf(dto.getQuantity())); - //由于目前没有运费等数据,暂时订单总金额=商品总金额了 - productTotalAmount = productTotalAmount.add(addAmount); - orderTotalAmount = orderTotalAmount.add(addAmount); - //封装sku信息 - SkuViewVO skuViewVO = new SkuViewVO(); - skuViewVO.setPic(product.getPic()); - skuViewVO.setPrice(sku.getPrice()); - skuViewVO.setProductId(product.getId()); - skuViewVO.setProductName(product.getName()); - skuViewVO.setQuantity(quantityMap.get(sku.getId())); - skuViewVO.setSkuId(sku.getId()); - skuViewVO.setSpData(sku.getSpData()); - skuList.add(skuViewVO); - } - res.setSkuList(skuList); - res.setOrderTotalAmount(orderTotalAmount); - res.setProductTotalAmount(productTotalAmount); - //获取能使用的优惠券列表 - Map products = new HashMap<>(); - querySkuMap.forEach((k, v) -> { - Integer count = quantityMap.get(k); - Long productId = v.getProductId(); - Product product; - BigDecimal amount = v.getPrice().multiply(BigDecimal.valueOf(count)); - if (products.containsKey(k)) { - product = products.get(k); - product.setPrice(amount.add(product.getPrice())); - } else { - product = new Product(); - product.setId(productId); - product.setPrice(amount); - } - products.put(k, product); - }); - res.setCouponList(memberCouponService.getCanUseList(products.values())); - return res; - } - - - private String getOrderIdPrefix() { - LocalDateTime time = LocalDateTime.now(); - return time.format(DateTimeFormatter.ofPattern("yyMMdd")) + "-"; - } - - /** - * h5订单分页查询 - * - * @param status 订单状态 -1->全部;0->待付款;1->待发货;2->待收货;-2->售后单 - * @param memberId 会员id - * @param pageable 分页 - * @return 结果 - */ - public PageImpl orderPage(Integer status, Long memberId, Pageable pageable) { - // 如果全部且页数为1,看看有无待付款单 - List unpaidOrderList = new ArrayList<>(); - if (Constants.H5OrderStatus.ALL.equals(status) && pageable.getPageNumber() == 0) { - unpaidOrderList = orderMapper.orderPage(Constants.H5OrderStatus.UN_PAY, memberId); - } - if (pageable != null) { - PageHelper.startPage(pageable.getPageNumber() + 1, pageable.getPageSize()); - } - List orderList = orderMapper.orderPage(status, memberId); - long total = ((com.github.pagehelper.Page) orderList).getTotal(); - // 两个list都没数据那肯定返回空了 - if (CollectionUtil.isEmpty(unpaidOrderList) && CollectionUtil.isEmpty(orderList)) { - return new PageImpl<>(Collections.EMPTY_LIST, pageable, total); - } - // 开始组装item了 - // 拿出所有orderId,查item,然后分组 by orderId - List idList = new ArrayList<>(); - if (CollectionUtil.isNotEmpty(unpaidOrderList)) { - idList.addAll(unpaidOrderList.stream().map(H5OrderVO::getOrderId).collect(Collectors.toList())); - } - if (CollectionUtil.isNotEmpty(orderList)) { - idList.addAll(orderList.stream().map(H5OrderVO::getOrderId).collect(Collectors.toList())); - } - QueryWrapper orderItemQw = new QueryWrapper<>(); - orderItemQw.in("order_id", idList); - Map> orderItemMap = - orderItemMapper.selectList(orderItemQw).stream().collect(Collectors.groupingBy(OrderItem::getOrderId)); - orderList.addAll(0, unpaidOrderList); - orderList.forEach(item -> { - item.setOrderItemList(orderItemMap.get(item.getOrderId())); - }); - return new PageImpl<>(orderList, pageable, total); - } - - public H5OrderVO orderDetail(Long orderId) { - H5OrderVO order = orderMapper.selectOrderDetail(orderId); - if (order == null) { - throw new RuntimeException("未查询到该订单"); - } - // 组装item - QueryWrapper orderItemQw = new QueryWrapper<>(); - orderItemQw.eq("order_id", orderId); - List orderItemList = orderItemMapper.selectList(orderItemQw); - order.setOrderItemList(orderItemList); - // 如果未付款,计算倒计时 - if (Constants.OrderStatus.NOTPAID.equals(order.getStatus())) { - // 订单超时时间900s,后面可以配置到字典等 - Integer time = 900; - Date addDate = Date.from(order.getCreateTime().plusSeconds(time).atZone(ZoneId.systemDefault()).toInstant()); - if (addDate.after(new Date())) { - order.setTimeToPay(addDate.getTime()); - } - } - return order; - } - - @Transactional - public void orderCompleteByJob(List idList) { - idList.forEach(order -> { - LocalDateTime optDate = LocalDateTime.now(); - OrderItem queryOrderItem = new OrderItem(); - queryOrderItem.setOrderId(order.getId()); - //更新订单 - order.setStatus(Constants.H5OrderStatus.COMPLETED); - order.setReceiveTime(optDate); - order.setConfirmStatus(1); - order.setUpdateTime(optDate); - order.setUpdateBy(null); - orderMapper.updateById(order); - //创建订单操作记录 - OrderOperateHistory optHistory = new OrderOperateHistory(); - optHistory.setOrderId(order.getId()); - optHistory.setOrderSn(order.getOrderSn()); - optHistory.setOperateMan("后台管理员"); - optHistory.setOrderStatus(Constants.H5OrderStatus.COMPLETED); - optHistory.setCreateTime(optDate); - optHistory.setUpdateTime(optDate); - orderOperateHistoryMapper.insert(optHistory); - }); - } - - @Transactional - public String orderComplete(Long orderId) { - LocalDateTime optDate = LocalDateTime.now(); - Order order = orderMapper.selectById(orderId); - OrderItem queryOrderItem = new OrderItem(); - queryOrderItem.setOrderId(orderId); - List orderItemList = orderItemMapper.selectByEntity(queryOrderItem); - if (order == null || CollectionUtil.isEmpty(orderItemList)) { - throw new RuntimeException("未查询到订单信息"); - } - // 只有【待收货】状态才能确认 - if (!order.getStatus().equals(Constants.H5OrderStatus.DELIVERED)) { - throw new RuntimeException("订单状态已改变,请刷新"); - } - order.setStatus(Constants.H5OrderStatus.COMPLETED); - order.setReceiveTime(optDate); - order.setConfirmStatus(1); - order.setUpdateTime(optDate); - order.setUpdateBy(SecurityUtil.getLocalMember().getId()); - orderMapper.updateById(order); - //创建订单操作记录 - OrderOperateHistory optHistory = new OrderOperateHistory(); - optHistory.setOrderId(order.getId()); - optHistory.setOrderSn(order.getOrderSn()); - optHistory.setOperateMan("" + order.getMemberId()); - optHistory.setOrderStatus(Constants.H5OrderStatus.COMPLETED); - optHistory.setCreateTime(optDate); - optHistory.setCreateBy(order.getMemberId()); - optHistory.setUpdateBy(order.getMemberId()); - optHistory.setUpdateTime(optDate); - orderOperateHistoryMapper.insert(optHistory); - return order.getOrderSn(); - } - - /** - * 统计待付款、待发货、待收货和售后订单数量 - * - * @param memberId - * @return - */ - public CountOrderVO orderNumCount(Long memberId) { - return orderMapper.countByStatusAndMemberId(memberId); - } - - @Transactional - public String orderBatchCancel(CancelOrderForm request, Long userId) { - LocalDateTime optDate = LocalDateTime.now(); - if (CollectionUtil.isEmpty(request.getIdList())) { - throw new RuntimeException("未指定需要取消的订单号"); - } - QueryWrapper orderQw = new QueryWrapper<>(); - orderQw.in("id", request.getIdList()); - List orderList = orderMapper.selectList(orderQw); - if (orderList.size() < request.getIdList().size()) { - throw new RuntimeException("未查询到订单信息"); - } - //查orderItem - QueryWrapper qw = new QueryWrapper<>(); - qw.in("order_id", request.getIdList()); - List orderItem = orderItemMapper.selectList(qw); - if (CollectionUtil.isEmpty(orderItem)) { - throw new RuntimeException("未查询到订单信息"); - } - long count = orderList.stream().filter(it -> !Constants.H5OrderStatus.UN_PAY.equals(it.getStatus())).count(); - if (count > 0) { - throw new RuntimeException("订单状态已更新,请刷新页面"); - } - List addHistoryList = new ArrayList<>(); - orderList.forEach(item -> { - item.setStatus(Constants.H5OrderStatus.CLOSED); - item.setUpdateTime(optDate); - item.setUpdateBy(userId); - OrderOperateHistory history = new OrderOperateHistory(); - history.setOrderId(item.getId()); - history.setOrderSn(item.getOrderSn()); - history.setOperateMan(userId == null ? "后台管理员" : "" + item.getMemberId()); - history.setOrderStatus(Constants.H5OrderStatus.CLOSED); - history.setCreateTime(optDate); - history.setCreateBy(userId); - history.setUpdateBy(userId); - history.setUpdateTime(optDate); - addHistoryList.add(history); - - }); - //取消订单 - int rows = orderMapper.cancelBatch(orderList); - if (rows < 1) { - throw new RuntimeException("更改订单状态失败"); - } - orderItem.stream().collect(Collectors.groupingBy(it -> it.getSkuId())).forEach((k, v) -> { - AtomicReference totalCount = new AtomicReference<>(0); - v.forEach(it -> totalCount.updateAndGet(v1 -> v1 + it.getQuantity())); - skuMapper.updateStockById(k, optDate, -1 * totalCount.get()); - }); - - //创建订单操作记录 - boolean flag = orderOperateHistoryService.saveBatch(addHistoryList); - if (!flag) { - throw new RuntimeException("创建订单操作记录失败"); - } - //判断是否使用优惠券,有的话,把优惠券还回去 - List couponIdList = orderList.stream().filter(it -> it.getMemberCouponId() != null).map(Order::getMemberCouponId).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(couponIdList)) { - memberCouponService.backCoupon(couponIdList); - } - return "取消订单成功"; - } - - /** - * 订单支付 - * - * @param req 支付请求 - * @return - */ - public OrderPayVO orderPay(OrderPayForm req) { - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("pay_id", req.getPayId()); - qw.eq("status", 0); - List orderList = orderMapper.selectList(qw); - if (CollectionUtil.isEmpty(orderList)) { - throw new RuntimeException("没有待支付的订单"); - } - QueryWrapper memberWechatQw = new QueryWrapper<>(); - memberWechatQw.eq("member_id", req.getMemberId()); - MemberWechat memberWechat = memberWechatMapper.selectOne(memberWechatQw); - if (memberWechat == null) { - throw new RuntimeException("获取用户openId失败"); - } - String openId = null; - String appId = null; - //公众号支付流程 - if (req.getWechatType() == 1) { - if (StrUtil.isBlank(memberWechat.getOpenid())) { - throw new RuntimeException("获取用户openId失败"); - } - openId = memberWechat.getOpenid(); - appId = WechatPayData.appId; - } - //小程序支付流程 - if (req.getWechatType() == 2) { - if (StrUtil.isBlank(memberWechat.getRoutineOpenid())) { - throw new RuntimeException("获取用户openId失败"); - } - openId = memberWechat.getRoutineOpenid(); - appId = WechatPayData.miniProgramAppId; - } - QueryWrapper orderItemQw = new QueryWrapper<>(); - orderItemQw.eq("order_id", orderList.get(0).getId()); - List orderItemList = orderItemMapper.selectList(orderItemQw); - String orderDesc = orderItemList.get(0).getProductName().substring(0, Math.min(40, orderItemList.get(0).getProductName().length())); - //保存微信支付历史 - LocalDateTime optDate = LocalDateTime.now(); - QueryWrapper wxPaymentQw = new QueryWrapper<>(); - wxPaymentQw.eq("order_id", orderList.get(0).getPayId()); - wxPaymentQw.eq("op_type", Constants.PaymentOpType.PAY); - WechatPaymentHistory wechatPaymentHistory = wechatPaymentHistoryMapper.selectOne(wxPaymentQw); - if (wechatPaymentHistory == null) { - wechatPaymentHistory = new WechatPaymentHistory(); - wechatPaymentHistory.setOrderId(orderList.get(0).getPayId()); - wechatPaymentHistory.setMemberId(req.getMemberId()); - wechatPaymentHistory.setOpenid(openId); - wechatPaymentHistory.setTitle(orderItemList.get(0).getProductName()); - wechatPaymentHistory.setMoney(orderList.get(0).getPayAmount()); - wechatPaymentHistory.setOpType(Constants.PaymentOpType.PAY); - wechatPaymentHistory.setPaymentStatus(0); - wechatPaymentHistory.setCreateBy(req.getMemberId()); - wechatPaymentHistory.setCreateTime(optDate); - wechatPaymentHistory.setUpdateBy(req.getMemberId()); - wechatPaymentHistory.setUpdateTime(optDate); - wechatPaymentHistoryMapper.insert(wechatPaymentHistory); - } else { - wechatPaymentHistory.setMoney(orderList.get(0).getPayAmount()); - wechatPaymentHistoryMapper.updateById(wechatPaymentHistory); - } - //请开启微信支付 wechat.enabled=true - //调用wx的jsapi拿prepayId,返回签名等信息 - String prepayId = wechatPayService.jsapiPay( - String.valueOf(req.getPayId()), - orderDesc, - Integer.valueOf(orderList.stream().map(Order::getPayAmount). - reduce(BigDecimal.ZERO, BigDecimal::add).multiply(new BigDecimal(100)).stripTrailingZeros().toPlainString()), - openId, - req.getMemberId(), - appId - ); - OrderPayVO response = new OrderPayVO(); - response.setPayType(2); - String nonceStr = WechatPayUtil.generateNonceStr(); - long timeStamp = WechatPayUtil.getCurrentTimestamp(); - prepayId = "prepay_id=" + prepayId; - String signType = "RSA"; - String paySign = null; - String signatureStr = Stream.of(appId, String.valueOf(timeStamp), nonceStr, prepayId) - .collect(Collectors.joining("\n", "", "\n")); - try { - paySign = WechatPayUtil.getSign(signatureStr, WechatPayData.privateKeyPath); - } catch (Exception e) { - throw new RuntimeException("支付失败"); - } - response.setAppId(appId); - response.setTimeStamp(String.valueOf(timeStamp)); - response.setNonceStr(nonceStr); - response.setSignType(signType); - response.setPackage_(prepayId); - response.setPaySign(paySign); - return response; - } - - /** - * 支付回调方法 - * - * @param messageDTO - * @return - */ - @Transactional - public ResponseEntity payCallBack(PayNotifyMessageDTO messageDTO) { - log.info("【订单支付回调】" + JSONObject.toJSON(messageDTO)); - String redisKey = "h5_oms_order_pay_notify_" + messageDTO.getOutTradeNo(); - String redisValue = messageDTO.getOutTradeNo() + "_" + System.currentTimeMillis(); - LocalDateTime optDate = LocalDateTime.now(); - try { - redisService.lock(redisKey, redisValue, 60); - //先判断回信回调的是否未success - if (!Transaction.TradeStateEnum.SUCCESS.equals(messageDTO.getTradeStatus())) { - log.error("【订单支付回调】订单状态不是支付成功状态" + messageDTO.getTradeStatus()); - throw new RuntimeException(); - } - QueryWrapper paymentWrapper = new QueryWrapper<>(); - paymentWrapper.eq("order_id", messageDTO.getOutTradeNo()); - paymentWrapper.eq("op_type", Constants.PaymentOpType.PAY); - WechatPaymentHistory paymentHistory = wechatPaymentHistoryMapper.selectOne(paymentWrapper); - if (paymentHistory.getPaymentStatus() != Constants.PaymentStatus.INCOMPLETE) { - log.info("【订单支付回调】支付订单不是未支付状态,不再处理" + "orderId" + paymentHistory.getOrderId() + "status" + paymentHistory.getPaymentStatus()); - throw new RuntimeException(); - } - QueryWrapper orderQw = new QueryWrapper<>(); - orderQw.eq("pay_id", messageDTO.getOutTradeNo()); - orderQw.eq("status", OrderStatus.UN_PAY.getType()); - List orderList = orderMapper.selectList(orderQw); - orderList.forEach(order -> { - order.setPaymentTime(messageDTO.getPayTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime()); - order.setStatus(OrderStatus.NOT_DELIVERED.getType()); - orderMapper.updateById(order); - - OrderOperateHistory optHistory = new OrderOperateHistory(); - optHistory.setOrderId(order.getId()); - optHistory.setOrderSn(order.getOrderSn()); - optHistory.setOperateMan("" + order.getMemberId()); - optHistory.setOrderStatus(OrderStatus.NOT_DELIVERED.getType()); - optHistory.setCreateTime(optDate); - optHistory.setCreateBy(order.getMemberId()); - optHistory.setUpdateBy(order.getMemberId()); - optHistory.setUpdateTime(optDate); - orderOperateHistoryMapper.insert(optHistory); - - //处理积分 - integralHistoryService.handleIntegral(order.getId(), order.getPayAmount(), order.getMemberId()); - }); - UpdateWrapper paymentHistoryUpdateWrapper = new UpdateWrapper<>(); - paymentHistoryUpdateWrapper.eq("order_id", messageDTO.getOutTradeNo()).set("payment_id", messageDTO.getTradeNo()) - .set("payment_status", Constants.PaymentStatus.COMPLETE).set("update_time", optDate); - wechatPaymentHistoryMapper.update(null, paymentHistoryUpdateWrapper); - } catch (Exception e) { - log.error("订单支付回调异常", e); - throw new RuntimeException("订单支付回调异常"); - } finally { - try { - redisService.unLock(redisKey, redisValue); - } catch (Exception e) { - log.error("", e); - } - } - return ResponseEntity.ok("订单支付回调成功"); - } - - /** - * 申请售后 - * - * @param applyRefundForm - * @return - */ - @Transactional - public Order applyRefund(ApplyRefundForm applyRefundForm) { - Order order = orderMapper.selectById(applyRefundForm.getOrderId()); - //是否符合售后条件 - this.checkIfCanApplyRefund(order); - LocalDateTime optDate = LocalDateTime.now(); - Long memberId = order.getMemberId(); - //创建售后单aftersale - Aftersale addAftersale = new Aftersale(); - addAftersale.setId(IDGenerator.generateId()); - addAftersale.setMemberId(order.getMemberId()); - addAftersale.setOrderId(order.getId()); - addAftersale.setReturnAmount(order.getPayAmount()); - addAftersale.setType(applyRefundForm.getApplyRefundType()); - addAftersale.setStatus(AftersaleStatus.APPLY.getType()); - addAftersale.setReason(applyRefundForm.getReason()); - addAftersale.setQuantity(applyRefundForm.getQuantity()); - addAftersale.setReason(applyRefundForm.getReason()); - addAftersale.setDescription(applyRefundForm.getDescription()); - addAftersale.setProofPics(applyRefundForm.getProofPics()); - addAftersale.setCreateTime(optDate); - addAftersale.setCreateBy(memberId); - addAftersale.setUpdateTime(optDate); - addAftersale.setUpdateBy(memberId); - int rows = aftersaleMapper.insert(addAftersale); - if (rows != 1) { - throw new RuntimeException("插入订单售后失败"); - } - //创建aftersale item - QueryWrapper orderItemQw = new QueryWrapper<>(); - orderItemQw.eq("order_id", order.getId()); - List orderItemList = orderItemMapper.selectList(orderItemQw); - List addAftersaleItemList = new ArrayList<>(); - orderItemList.forEach(orderItem -> { - AftersaleItem aftersaleItem = new AftersaleItem(); - aftersaleItem.setMemberId(memberId); - aftersaleItem.setAftersaleId(addAftersale.getId()); - aftersaleItem.setOrderId(orderItem.getOrderId()); - aftersaleItem.setOrderItemId(orderItem.getId()); - aftersaleItem.setReturnAmount(orderItem.getSalePrice().multiply(BigDecimal.valueOf(orderItem.getQuantity()))); - aftersaleItem.setQuantity(orderItem.getQuantity()); - aftersaleItem.setCreateTime(optDate); - aftersaleItem.setCreateBy(memberId); - aftersaleItem.setUpdateTime(optDate); - aftersaleItem.setUpdateBy(memberId); - addAftersaleItemList.add(aftersaleItem); - }); - rows = aftersaleItemMapper.insertBatch(addAftersaleItemList); - if (rows < 1) { - throw new RuntimeException("创建售后订单item失败"); - } - //更新订单 - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("id", order.getId()).set("aftersale_status", OrderRefundStatus.APPLY.getType()) - .set("update_time", optDate) - .set("update_by", memberId); - rows = orderMapper.update(null, updateWrapper); - if (rows < 1) { - throw new RuntimeException("修改订单状态失败"); - } - //创建订单操作记录 - OrderOperateHistory optHistory = new OrderOperateHistory(); - optHistory.setOrderId(order.getId()); - optHistory.setOrderSn(order.getOrderSn()); - optHistory.setOperateMan("" + memberId); - optHistory.setOrderStatus(11); - optHistory.setCreateTime(optDate); - optHistory.setCreateBy(memberId); - optHistory.setUpdateBy(memberId); - optHistory.setUpdateTime(optDate); - rows = orderOperateHistoryMapper.insert(optHistory); - if (rows < 1) { - throw new RuntimeException("创建订单操作记录失败"); - } - return order; - } - - /** - * check是否能售后 可售后的状态为:待发货、待收货、已完成 - * - * @param order 订单 - */ - private void checkIfCanApplyRefund(Order order) { - if (order == null) { - throw new RuntimeException("为查询到订单信息"); - } - Integer status = order.getStatus(); - boolean flag = OrderStatus.NOT_DELIVERED.getType().equals(status) || OrderStatus.DELIVERED.getType().equals(status) - || OrderStatus.COMPLETE.getType().equals(status); - if (!flag) { - throw new RuntimeException("该订单无法申请售后"); - } - if (OrderStatus.COMPLETE.getType().equals(order.getStatus()) && - DateUtils.betweenDay(LocalDateTime.now(), order.getReceiveTime()) > 7) { - throw new RuntimeException("订单确认收货时间已超过7天,无法申请售后"); - } - if (OrderRefundStatus.APPLY.getType().equals(order.getAftersaleStatus()) - || OrderRefundStatus.WAIT.getType().equals(order.getAftersaleStatus())) { - throw new RuntimeException("售后正在处理中"); - } - } - - /** - * 取消售后 - * - * @param orderId 订单id - * @return - */ - @Transactional - public String cancelRefund(Long orderId) { - Order order = orderMapper.selectById(orderId); - if (order == null) { - throw new RuntimeException("未查询到该订单"); - } - //查询是否有(待处理和退货中)售后单 - QueryWrapper aftersaleQw = new QueryWrapper<>(); - aftersaleQw.eq("order_id", orderId); - aftersaleQw.in("status", Arrays.asList(AftersaleStatus.APPLY.getType(), AftersaleStatus.WAIT.getType())); - Aftersale aftersale = aftersaleMapper.selectOne(aftersaleQw); - if (aftersale == null) { - throw new RuntimeException("无售后单"); - } - if (OrderRefundStatus.SUCCESS.getType().equals(order.getAftersaleStatus())) { - throw new RuntimeException("已退款成功"); - } - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - LocalDateTime optDate = LocalDateTime.now(); - //更新售后单状态 - UpdateWrapper aftersaleUpdateWrapper = new UpdateWrapper<>(); - aftersaleUpdateWrapper.eq("id", aftersale.getId()); - aftersaleUpdateWrapper.set("status", AftersaleStatus.CANCEL.getType()); - aftersaleUpdateWrapper.set("update_time", optDate); - aftersaleUpdateWrapper.set("update_by", member.getId()); - int rows = aftersaleMapper.update(null, aftersaleUpdateWrapper); - if (rows < 1) { - throw new RuntimeException("更新售后单失败"); - } - //更新订单售后状态 - // 更新订单 - UpdateWrapper updateOrderWrapper = new UpdateWrapper<>(); - updateOrderWrapper.eq("id", orderId) - .set("aftersale_status", OrderRefundStatus.NO_REFUND.getType()).set("update_time", optDate) - .set("update_by", member.getId()); - rows = orderMapper.update(null, updateOrderWrapper); - if (rows != 1) { - throw new RuntimeException("更新订单状态失败"); - } - return "售后取消成功"; - } - - /** - * 售后订单详情 - * - * @param orderId 订单id - * @return - */ - public AftersaleRefundInfoVO refundOrderDetail(Long orderId) { - QueryWrapper aftersaleQw = new QueryWrapper<>(); - aftersaleQw.eq("order_id", orderId); - aftersaleQw.orderByDesc("create_time"); - aftersaleQw.last("limit 1"); - Aftersale aftersale = aftersaleMapper.selectOne(aftersaleQw); - if (aftersale == null) { - throw new RuntimeException("未查询到售后订单"); - } - //查一下售后订单item - QueryWrapper aftersaleItemQw = new QueryWrapper<>(); - aftersaleItemQw.eq("aftersale_id", aftersale.getId()); - List aftersaleItemList = aftersaleItemMapper.selectList(aftersaleItemQw); - List orderItemIdList = aftersaleItemList.stream().map(AftersaleItem::getOrderItemId).collect(Collectors.toList()); - //再去查orderItem - QueryWrapper orderItemQw = new QueryWrapper<>(); - orderItemQw.in("id", orderItemIdList); - List orderItemList = orderItemMapper.selectList(orderItemQw); - AftersaleRefundInfoVO vo = new AftersaleRefundInfoVO(); - BeanUtils.copyProperties(aftersale, vo); - vo.setAftersaleItemList(aftersaleItemConvert.dos2vos(aftersaleItemList)); - vo.setOrderItemList(orderItemConvert.dos2vos(orderItemList)); - return vo; - } - - public Order selectById(Long orderId) { - return orderMapper.selectById(orderId); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/job/OrderJob.java b/ruoyi-mall/src/main/java/com/cyl/job/OrderJob.java deleted file mode 100644 index 4389ad0..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/job/OrderJob.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.cyl.job; - -import cn.hutool.core.date.LocalDateTimeUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.cyl.h5.domain.form.CancelOrderForm; -import com.cyl.h5.service.H5OrderService; -import com.cyl.manager.oms.domain.entity.Order; -import com.cyl.manager.oms.mapper.OrderMapper; -import com.ruoyi.common.constant.Constants; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Component; - -import java.time.LocalDateTime; -import java.util.List; -import java.util.stream.Collectors; - -@Component -@Slf4j -public class OrderJob { - - @Autowired - private H5OrderService h5OrderService; - - @Autowired - private OrderMapper orderMapper; - - /** - * 每天的1点20分20秒执行任务 - */ - @Scheduled(cron = "20 20 1 * * ?") - public void cancelOrder(){ - log.info("【取消订单任务开始】"); - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("status", Constants.OrderStatus.NOTPAID); - qw.eq("aftersale_status", 1); - List orderList = orderMapper.selectList(qw); - List idList = orderList.stream() - .filter(order -> LocalDateTimeUtil.between(order.getCreateTime(), LocalDateTime.now()).toMinutes() >= 15) - .map(Order::getId) - .collect(Collectors.toList()); - CancelOrderForm request = new CancelOrderForm(); - request.setIdList(idList); - h5OrderService.orderBatchCancel(request, null); - log.info("【取消订单任务结束】"); - } - - /** - * 每天的2点20分20秒执行任务 - */ - @Scheduled(cron = "20 20 2 * * ?") - public void batchCompleteOrder(){ - log.info("【订单完成任务开始】"); - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("status", Constants.OrderStatus.GET); - qw.eq("aftersale_status", 1); - qw.le("delivery_time", LocalDateTime.now().minusDays(15)); - List orderList = orderMapper.selectList(qw); - h5OrderService.orderCompleteByJob(orderList); - log.info("【订单完成任务结束】,处理了:{}个订单",orderList.size()); - } - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/job/StatisticsJob.java b/ruoyi-mall/src/main/java/com/cyl/job/StatisticsJob.java deleted file mode 100644 index 7a7cf8c..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/job/StatisticsJob.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.cyl.job; - -import com.cyl.manager.aws.domain.entity.SystemStatistics; -import com.cyl.manager.aws.mapper.SystemStatisticsMapper; -import com.cyl.manager.aws.service.SystemStatisticsService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.annotation.Async; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Component; - -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.LocalTime; - - -@Component -@Slf4j -public class StatisticsJob { - - @Autowired - private SystemStatisticsService systemStatisticsService; - - @Autowired - private SystemStatisticsMapper systemStatisticsMapper; - - @Async - @Scheduled(cron = "00 00 3 * * ?") - public void cancelOrder() { - log.info("【统计昨日系统数据任务开始】"); - LocalDateTime startTime = LocalDateTime.of(LocalDate.now(), LocalTime.MIN).plusDays(-1); - LocalDateTime endTime = LocalDateTime.of(LocalDate.now(), LocalTime.MAX).plusDays(-1); - SystemStatistics data = systemStatisticsService.stat(startTime, endTime); - systemStatisticsMapper.insert(data); - log.info("【统计昨日系统数据任务结束】"); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/constant/IntegralRule.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/constant/IntegralRule.java deleted file mode 100644 index b73ff86..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/constant/IntegralRule.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.cyl.manager.act.constant; - -import lombok.Data; - -import java.math.BigDecimal; - -@Data -public class IntegralRule { - private Integer signStatus = 1; - private BigDecimal signCount = BigDecimal.valueOf(1); - private BigDecimal orderAmount = BigDecimal.valueOf(1); - private BigDecimal orderCount = BigDecimal.valueOf(1); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/CouponActivityController.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/CouponActivityController.java deleted file mode 100644 index 7b2beb1..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/CouponActivityController.java +++ /dev/null @@ -1,77 +0,0 @@ -package com.cyl.manager.act.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.act.convert.CouponActivityConvert; -import com.cyl.manager.act.domain.entity.CouponActivity; -import com.cyl.manager.act.domain.query.CouponActivityQuery; -import com.cyl.manager.act.service.CouponActivityService; -import com.cyl.manager.act.domain.vo.CouponActivityVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * 优惠券活动表Controller - * - * @author zcc - * @date 2024-03-22 - */ -@Api(description ="优惠券活动表接口列表") -@RestController -@RequestMapping("/act/couponActivity") -public class CouponActivityController extends BaseController { - @Autowired - private CouponActivityService service; - @Autowired - private CouponActivityConvert convert; - - @ApiOperation("查询优惠券活动表列表") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody CouponActivityQuery query, Pageable page) { - return ResponseEntity.ok(service.selectList(query, page)); - } - - @ApiOperation("获取优惠券活动表详细信息") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增优惠券活动表") - @Log(title = "优惠券活动表", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody CouponActivity couponActivity) { - return ResponseEntity.ok(service.insert(couponActivity)); - } - - @ApiOperation("修改优惠券活动表") - @Log(title = "优惠券活动表", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody CouponActivity couponActivity) { - return ResponseEntity.ok(service.update(couponActivity)); - } - - @ApiOperation("删除优惠券活动表") - @Log(title = "优惠券活动表", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/H5CouponController.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/H5CouponController.java deleted file mode 100644 index a66b87f..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/H5CouponController.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.cyl.manager.act.controller; - -import com.cyl.manager.act.domain.entity.CouponActivity; -import com.cyl.manager.act.domain.entity.MemberCoupon; -import com.cyl.manager.act.domain.query.MemberCouponQuery; -import com.cyl.manager.act.domain.vo.CouponActivityVO; -import com.cyl.manager.act.domain.vo.MemberCouponVO; -import com.cyl.manager.act.service.CouponActivityService; -import com.cyl.manager.act.service.MemberCouponService; -import com.ruoyi.common.core.redis.RedisService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.Pageable; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -@Api(description = "优惠券接口列表") -@RestController -@RequestMapping("/h5/coupon") -public class H5CouponController { - - @Autowired - private CouponActivityService couponActivityService; - @Autowired - private RedisService redisService; - @Autowired - private MemberCouponService memberCouponService; - - @ApiOperation("优惠券活动列表") - @PostMapping("/activity/list") - public ResponseEntity> list(Pageable page) { - //获取所有未过期且运行中的活动 - return ResponseEntity.ok(couponActivityService.selectListByH5(page)); - } - - @GetMapping("/activity/get") - public ResponseEntity getDetail(Long id) { - CouponActivityVO detail = couponActivityService.getDetail(id); - return ResponseEntity.ok(detail); - } - - @PostMapping("/receive") - public ResponseEntity receiveCoupon(Long id) { - String redisKey = "h5_receive_coupon" + id; - String redisValue = id + "_" + System.currentTimeMillis(); - try { - redisService.lock(redisKey, redisValue, 60); - return ResponseEntity.ok(couponActivityService.receiveCoupon(id)); - } catch (Exception e) { - throw new RuntimeException(e.getMessage()); - } finally { - try { - redisService.unLock(redisKey, redisValue); - } catch (Exception e) { - - } - } - } - - - @ApiOperation("优惠券活动列表") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody MemberCouponQuery query, Pageable page) { - //获取所有未过期且运行中的活动 - return ResponseEntity.ok(memberCouponService.selectListByH5(query, page)); - } - - - /** - * 根据购买的商品筛选可用优惠券 - * - * @param query - * @return - */ - @PostMapping("/can/use/list") - public ResponseEntity> getCanUseList(@RequestBody MemberCouponQuery query) { - return ResponseEntity.ok(memberCouponService.getCanUseList(query.getProducts())); - } - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/H5IntegralHistoryController.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/H5IntegralHistoryController.java deleted file mode 100644 index 39980d5..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/H5IntegralHistoryController.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.cyl.manager.act.controller; - -import com.cyl.h5.config.SecurityUtil; -import com.cyl.manager.act.domain.entity.IntegralHistory; -import com.cyl.manager.act.domain.query.IntegralHistoryQuery; -import com.cyl.manager.act.domain.vo.IntegralStatVO; -import com.cyl.manager.act.service.IntegralHistoryService; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.common.utils.DateUtils; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.List; - -/** - * 积分流水表Controller - * - * @author zcc - * @date 2024-03-01 - */ -@Api(description ="积分流水表接口列表") -@RestController -@RequestMapping("/h5/act/integral") -public class H5IntegralHistoryController extends BaseController { - @Autowired - private IntegralHistoryService service; - - @ApiOperation("查询积分流水表列表") - @GetMapping("/list") - public ResponseEntity> list(Integer month) { - IntegralHistoryQuery query = new IntegralHistoryQuery(); - query.setMemberId(SecurityUtil.getLocalMember().getId()); - query.setOpType(1); - query.setSubOpType(11); - List timeDiff = DateUtils.getTimeDiff(month); - query.setStart(timeDiff.get(0)); - query.setEnd(timeDiff.get(1)); - List list = service.selectList2(query); - return ResponseEntity.ok(list); - } - - @ApiOperation("新增积分流水表") - @Log(title = "积分流水表", businessType = BusinessType.INSERT) - @PostMapping("/add") - public ResponseEntity add(BigDecimal amount) { - - IntegralHistory history = new IntegralHistory(); - history.setOpType(1); - history.setSubOpType(11); - history.setAmount(amount); - history.setMemberId(SecurityUtil.getLocalMember().getId()); - history.setCreateTime(LocalDateTime.now()); - return ResponseEntity.ok(service.insert2(history)); - } - - @ApiOperation("积分流水") - @PostMapping("/history/list") - public ResponseEntity> list(@RequestBody IntegralHistoryQuery query, Pageable page) { - List list = service.selectListByH5(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("积分统计") - @PostMapping("/stat") - public ResponseEntity statIntegral(@RequestBody IntegralHistoryQuery query) { - IntegralStatVO res = service.statIntegral(query); - return ResponseEntity.ok(res); - } - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/IntegralHistoryController.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/IntegralHistoryController.java deleted file mode 100644 index 80e17ea..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/IntegralHistoryController.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.cyl.manager.act.controller; - -import com.cyl.manager.act.convert.IntegralHistoryConvert; -import com.cyl.manager.act.domain.entity.IntegralHistory; -import com.cyl.manager.act.domain.query.IntegralHistoryQuery; -import com.cyl.manager.act.domain.vo.IntegralHistoryVO; -import com.cyl.manager.act.service.IntegralHistoryService; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.common.utils.poi.ExcelUtil; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import java.util.List; -/** - * 积分流水表Controller - * - * @author zcc - * @date 2024-03-01 - */ -@Api(description ="积分流水表接口列表") -@RestController -@RequestMapping("/act/integralHistory") -public class IntegralHistoryController extends BaseController { - @Autowired - private IntegralHistoryService service; - @Autowired - private IntegralHistoryConvert convert; - - @ApiOperation("查询积分流水表列表") - @PreAuthorize("@ss.hasPermi('act:integralHistory:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody IntegralHistoryQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出积分流水表列表") - @PreAuthorize("@ss.hasPermi('act:integralHistory:export')") - @Log(title = "积分流水表", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(IntegralHistoryQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(IntegralHistoryVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "积分流水表数据")); - } - - @ApiOperation("获取积分流水表详细信息") - @PreAuthorize("@ss.hasPermi('act:integralHistory:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增积分流水表") - @PreAuthorize("@ss.hasPermi('act:integralHistory:add')") - @Log(title = "积分流水表", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody IntegralHistory integralHistory) { - return ResponseEntity.ok(service.insert(integralHistory)); - } - - @ApiOperation("修改积分流水表") - @PreAuthorize("@ss.hasPermi('act:integralHistory:edit')") - @Log(title = "积分流水表", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody IntegralHistory integralHistory) { - return ResponseEntity.ok(service.update(integralHistory)); - } - - @ApiOperation("删除积分流水表") - @PreAuthorize("@ss.hasPermi('act:integralHistory:remove')") - @Log(title = "积分流水表", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/MemberCouponController.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/MemberCouponController.java deleted file mode 100644 index ee4a238..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/controller/MemberCouponController.java +++ /dev/null @@ -1,77 +0,0 @@ -package com.cyl.manager.act.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.act.convert.MemberCouponConvert; -import com.cyl.manager.act.domain.entity.MemberCoupon; -import com.cyl.manager.act.domain.query.MemberCouponQuery; -import com.cyl.manager.act.service.MemberCouponService; -import com.cyl.manager.act.domain.vo.MemberCouponVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * 用户领券记录Controller - * - * @author zcc - * @date 2024-03-22 - */ -@Api(description ="用户领券记录接口列表") -@RestController -@RequestMapping("/act/memberCoupon") -public class MemberCouponController extends BaseController { - @Autowired - private MemberCouponService service; - @Autowired - private MemberCouponConvert convert; - - @ApiOperation("查询用户领券记录列表") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody MemberCouponQuery query, Pageable page) { - return ResponseEntity.ok(service.selectList(query, page)); - } - - @ApiOperation("获取用户领券记录详细信息") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增用户领券记录") - @Log(title = "用户领券记录", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody MemberCoupon memberCoupon) { - return ResponseEntity.ok(service.insert(memberCoupon)); - } - - @ApiOperation("修改用户领券记录") - @Log(title = "用户领券记录", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody MemberCoupon memberCoupon) { - return ResponseEntity.ok(service.update(memberCoupon)); - } - - @ApiOperation("删除用户领券记录") - @Log(title = "用户领券记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/convert/CouponActivityConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/convert/CouponActivityConvert.java deleted file mode 100644 index d74b7f9..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/convert/CouponActivityConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.act.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.act.domain.entity.CouponActivity; -import com.cyl.manager.act.domain.vo.CouponActivityVO; -import java.util.List; -/** - * 优惠券活动表 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface CouponActivityConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/convert/IntegralHistoryConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/convert/IntegralHistoryConvert.java deleted file mode 100644 index 9428a4a..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/convert/IntegralHistoryConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.act.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.act.domain.entity.IntegralHistory; -import com.cyl.manager.act.domain.vo.IntegralHistoryVO; -import java.util.List; -/** - * 积分流水表 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface IntegralHistoryConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/convert/MemberCouponConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/convert/MemberCouponConvert.java deleted file mode 100644 index f61508f..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/convert/MemberCouponConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.act.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.act.domain.entity.MemberCoupon; -import com.cyl.manager.act.domain.vo.MemberCouponVO; -import java.util.List; -/** - * 用户领券记录 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface MemberCouponConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/CouponActivity.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/CouponActivity.java deleted file mode 100644 index d709da3..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/CouponActivity.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.cyl.manager.act.domain.entity; - -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -/** - * 优惠券活动表对象 act_coupon_activity - * - * @author zcc - */ -@ApiModel(description="优惠券活动表对象") -@Data -@TableName("act_coupon_activity") -public class CouponActivity { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("活动名称") - @Excel(name = "活动名称") - private String title; - - @ApiModelProperty("使用范围 1全场通用 2指定商品可用 3指定商品不可用") - @Excel(name = "使用范围 1全场通用 2指定商品可用 3指定商品不可用") - private Integer useScope; - - @ApiModelProperty("商品id集合,逗号分隔") - @Excel(name = "商品id集合,逗号分隔") - private String productIds; - - @ApiModelProperty("发行总数") - @Excel(name = "发行总数") - private Integer totalCount; - - @ApiModelProperty("剩余总数") - @Excel(name = "剩余总数") - private Integer leftCount; - - @ApiModelProperty("每人限领") - @Excel(name = "每人限领") - private Integer userLimit; - - @ApiModelProperty("优惠券金额") - @Excel(name = "优惠券金额") - private BigDecimal couponAmount; - - @ApiModelProperty("最低消费金额") - @Excel(name = "最低消费金额") - private BigDecimal minAmount; - - @ApiModelProperty("要兑换的积分") - @Excel(name = "要兑换的积分") - private BigDecimal useIntegral; - - @ApiModelProperty("1免费兑换 2积分兑换") - @Excel(name = "1免费兑换 2积分兑换") - private Integer couponType; - - @ApiModelProperty("活动开始时间") - @Excel(name = "活动开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime beginTime; - - @ApiModelProperty("活动结束时间") - @Excel(name = "活动结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime endTime; - - @ApiModelProperty("创建时间") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime createTime; - - @ApiModelProperty("修改时间") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime updateTime; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/IntegralHistory.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/IntegralHistory.java deleted file mode 100644 index eed4c88..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/IntegralHistory.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.cyl.manager.act.domain.entity; - -import java.math.BigDecimal; -import java.time.LocalDateTime; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 积分流水表对象 act_integral_history - * - * @author zcc - */ -@ApiModel(description="积分流水表对象") -@Data -@TableName("act_integral_history") -public class IntegralHistory { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("MEMBER_ID") - @Excel(name = "MEMBER_ID") - private Long memberId; - - @ApiModelProperty("变动金额") - @Excel(name = "变动金额") - private BigDecimal amount; - - @ApiModelProperty("类型 1:收入 2:支出 3:其他") - @Excel(name = "类型 1:收入 2:支出 3:其他") - private Integer opType; - - @ApiModelProperty("子类型:11签到 12消费获得 21退款扣除积分") - @Excel(name = "子类型:11签到 12消费获得 21退款扣除积分") - private Integer subOpType; - - @ApiModelProperty("订单金额") - @Excel(name = "订单金额") - private BigDecimal orderAmount; - - @ApiModelProperty("订单id") - @Excel(name = "订单id") - private Long orderId; - - @ApiModelProperty("创建时间") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime createTime; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/MemberCoupon.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/MemberCoupon.java deleted file mode 100644 index 3cdbeda..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/entity/MemberCoupon.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.cyl.manager.act.domain.entity; - -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -/** - * 用户领券记录对象 act_member_coupon - * - * @author zcc - */ -@ApiModel(description="用户领券记录对象") -@Data -@TableName("act_member_coupon") -public class MemberCoupon { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("活动id") - @Excel(name = "活动id") - private Long couponActivityId; - - @ApiModelProperty("用户id") - @Excel(name = "用户id") - private Long memberId; - - @ApiModelProperty("活动名称") - @Excel(name = "活动名称") - private String title; - - @ApiModelProperty("使用范围 1全场通用 2指定商品可用 3指定商品不可用") - @Excel(name = "使用范围 1全场通用 2指定商品可用 3指定商品不可用") - private Integer useScope; - - @ApiModelProperty("商品id集合,逗号分隔") - @Excel(name = "商品id集合,逗号分隔") - private String productIds; - - @ApiModelProperty("优惠券金额") - @Excel(name = "优惠券金额") - private BigDecimal couponAmount; - - @ApiModelProperty("最低消费金额") - @Excel(name = "最低消费金额") - private BigDecimal minAmount; - - @ApiModelProperty("要兑换的积分") - @Excel(name = "要兑换的积分") - private BigDecimal useIntegral; - - @ApiModelProperty("1免费兑换 2积分兑换") - @Excel(name = "1免费兑换 2积分兑换") - private Integer couponType; - - @ApiModelProperty("券开始时间") - @Excel(name = "券开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime beginTime; - - @ApiModelProperty("券结束时间") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "券结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime endTime; - - @ApiModelProperty("0未使用 1已使用") - @Excel(name = "0未使用 1已使用") - private Integer useStatus; - - @ApiModelProperty("订单id") - @Excel(name = "订单id") - private Long orderId; - - @ApiModelProperty("使用时间") - @Excel(name = "使用时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime useTime; - - @ApiModelProperty("创建时间") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime createTime; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/CouponActivityQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/CouponActivityQuery.java deleted file mode 100644 index 1f95855..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/CouponActivityQuery.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.cyl.manager.act.domain.query; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 优惠券活动表 查询 对象 - * - * @author zcc - */ -@ApiModel(description="优惠券活动表 查询 对象") -@Data -public class CouponActivityQuery { - @ApiModelProperty("活动名称 精确匹配") - private String title; - - @ApiModelProperty("使用范围 1全场通用 2指定商品可用 3指定商品不可用 精确匹配") - private Integer useScope; - - - @ApiModelProperty("1免费兑换 2积分兑换 精确匹配") - private Integer couponType; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/IntegralHistoryQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/IntegralHistoryQuery.java deleted file mode 100644 index 2f0b33e..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/IntegralHistoryQuery.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.cyl.manager.act.domain.query; - -import java.math.BigDecimal; -import java.time.LocalDateTime; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 积分流水表 查询 对象 - * - * @author zcc - */ -@ApiModel(description="积分流水表 查询 对象") -@Data -public class IntegralHistoryQuery { - @ApiModelProperty("MEMBER_ID 精确匹配") - private Long memberId; - - @ApiModelProperty("变动金额 精确匹配") - private BigDecimal amount; - - @ApiModelProperty("类型 1:收入 2:支出 3:其他 精确匹配") - private Integer opType; - - @ApiModelProperty("子类型:11签到 12消费获得 21退款扣除积分 精确匹配") - private Integer subOpType; - - @ApiModelProperty("订单金额 精确匹配") - private BigDecimal orderAmount; - - @ApiModelProperty("订单id 精确匹配") - private Long orderId; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime start; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime end; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/MemberCouponQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/MemberCouponQuery.java deleted file mode 100644 index ff19ee9..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/query/MemberCouponQuery.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.cyl.manager.act.domain.query; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.List; - -import com.cyl.manager.pms.domain.entity.Product; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 用户领券记录 查询 对象 - * - * @author zcc - */ -@ApiModel(description="用户领券记录 查询 对象") -@Data -public class MemberCouponQuery { - @ApiModelProperty("活动id 精确匹配") - private Long couponActivityId; - - @ApiModelProperty("用户id 精确匹配") - private Long memberId; - - @ApiModelProperty("0未使用 1已使用 精确匹配") - private Integer useStatus; - - //1已领取 2已使用 3已过期 - private Integer type; - - private List products; - - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/CouponActivityVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/CouponActivityVO.java deleted file mode 100644 index 2734339..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/CouponActivityVO.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.cyl.manager.act.domain.vo; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.List; - -import com.cyl.manager.pms.domain.entity.Product; -import com.ruoyi.common.annotation.Excel; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -/** - * 优惠券活动表 数据视图对象 - * - * @author zcc - */ -@Data -public class CouponActivityVO { - /** - * ID - */ - private Long id; - /** - * 活动名称 - */ - @Excel(name = "活动名称") - private String title; - /** - * 使用范围 1全场通用 2指定商品可用 3指定商品不可用 - */ - @Excel(name = "使用范围 1全场通用 2指定商品可用 3指定商品不可用") - private Integer useScope; - /** - * 商品id集合,逗号分隔 - */ - @Excel(name = "商品id集合,逗号分隔") - private String productIds; - /** - * 发行总数 - */ - @Excel(name = "发行总数") - private Integer totalCount; - /** - * 剩余总数 - */ - @Excel(name = "剩余总数") - private Integer leftCount; - /** - * 每人限领 - */ - @Excel(name = "每人限领") - private Integer userLimit; - /** - * 优惠券金额 - */ - @Excel(name = "优惠券金额") - private BigDecimal couponAmount; - /** - * 最低消费金额 - */ - @Excel(name = "最低消费金额") - private BigDecimal minAmount; - /** - * 要兑换的积分 - */ - @Excel(name = "要兑换的积分") - private BigDecimal useIntegral; - /** - * 1免费兑换 2积分兑换 - */ - @Excel(name = "1免费兑换 2积分兑换") - private Integer couponType; - /** - * 活动开始时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "活动开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime beginTime; - /** - * 活动结束时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "活动结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime endTime; - /** - * 创建时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime createTime; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime updateTime; - - private List productList; - - //使用的张数 - private Integer useCount; - - private Boolean canGet; - - //获取的张数 - private Integer getCount; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/IntegralHistoryVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/IntegralHistoryVO.java deleted file mode 100644 index 4f484fe..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/IntegralHistoryVO.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.cyl.manager.act.domain.vo; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import lombok.Data; -/** - * 积分流水表 数据视图对象 - * - * @author zcc - */ -@Data -public class IntegralHistoryVO { - /** ID */ - private Long id; - /** MEMBER_ID */ - @Excel(name = "MEMBER_ID") - private Long memberId; - /** 变动金额 */ - @Excel(name = "变动金额") - private BigDecimal amount; - /** 类型 1:收入 2:支出 3:其他 */ - @Excel(name = "类型 1:收入 2:支出 3:其他") - private Integer opType; - /** 子类型:11签到 12消费获得 21退款扣除积分 */ - @Excel(name = "子类型:11签到 12消费获得 21退款扣除积分") - private Integer subOpType; - /** 订单金额 */ - @Excel(name = "订单金额") - private BigDecimal orderAmount; - /** 订单id */ - @Excel(name = "订单id") - private Long orderId; - /** 创建时间 */ - private LocalDateTime createTime; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/IntegralStatVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/IntegralStatVO.java deleted file mode 100644 index 89126bf..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/IntegralStatVO.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.cyl.manager.act.domain.vo; - -import lombok.Data; - -import java.math.BigDecimal; - -@Data -public class IntegralStatVO { - private BigDecimal balance = BigDecimal.ZERO; - - private BigDecimal income = BigDecimal.ZERO; - - private BigDecimal expenditure = BigDecimal.ZERO; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/MemberCouponVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/MemberCouponVO.java deleted file mode 100644 index 0848236..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/domain/vo/MemberCouponVO.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.cyl.manager.act.domain.vo; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -/** - * 用户领券记录 数据视图对象 - * - * @author zcc - */ -@Data -public class MemberCouponVO { - /** ID */ - private Long id; - /** 活动id */ - @Excel(name = "活动id") - private Long couponActivityId; - /** 用户id */ - @Excel(name = "用户id") - private Long memberId; - /** 活动名称 */ - @Excel(name = "活动名称") - private String title; - /** 使用范围 1全场通用 2指定商品可用 3指定商品不可用 */ - @Excel(name = "使用范围 1全场通用 2指定商品可用 3指定商品不可用") - private Integer useScope; - /** 商品id集合,逗号分隔 */ - @Excel(name = "商品id集合,逗号分隔") - private String productIds; - /** 优惠券金额 */ - @Excel(name = "优惠券金额") - private BigDecimal couponAmount; - /** 最低消费金额 */ - @Excel(name = "最低消费金额") - private BigDecimal minAmount; - /** 要兑换的积分 */ - @Excel(name = "要兑换的积分") - private BigDecimal useIntegral; - /** 1免费兑换 2积分兑换 */ - @Excel(name = "1免费兑换 2积分兑换") - private Integer couponType; - /** 券开始时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "券开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime beginTime; - /** 券结束时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "券结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime endTime; - /** 0未使用 1已使用 */ - @Excel(name = "0未使用 1已使用") - private Integer useStatus; - /** 订单id */ - @Excel(name = "订单id") - private Long orderId; - /** 使用时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "使用时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime useTime; - /** 创建时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime createTime; - - private String nickname; - private String phone; - private String avatar; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/CouponActivityMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/CouponActivityMapper.java deleted file mode 100644 index 6fb2f8b..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/CouponActivityMapper.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.cyl.manager.act.mapper; - -import java.util.List; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.act.domain.entity.CouponActivity; -import org.apache.ibatis.annotations.Param; - -/** - * 优惠券活动表Mapper接口 - * - * @author zcc - */ -public interface CouponActivityMapper extends BaseMapper { - /** - * 查询优惠券活动表列表 - * - * @param couponActivity 优惠券活动表 - * @return 优惠券活动表集合 - */ - List selectByEntity(CouponActivity couponActivity); - - void receiveCoupon(@Param("id") Long id); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/IntegralHistoryMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/IntegralHistoryMapper.java deleted file mode 100644 index d36251e..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/IntegralHistoryMapper.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.cyl.manager.act.mapper; - -import java.time.LocalDateTime; -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.act.domain.vo.IntegralStatVO; -import com.cyl.manager.act.domain.entity.IntegralHistory; - -/** - * 积分流水表Mapper接口 - * - * @author zcc - */ -public interface IntegralHistoryMapper extends BaseMapper { - /** - * 查询积分流水表列表 - * - * @param integralHistory 积分流水表 - * @return 积分流水表集合 - */ - List selectByEntity(IntegralHistory integralHistory); - - IntegralStatVO statIntegral(LocalDateTime start, LocalDateTime end, Long memberId); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/MemberCouponMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/MemberCouponMapper.java deleted file mode 100644 index c9b8a87..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/mapper/MemberCouponMapper.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.cyl.manager.act.mapper; - -import java.util.Collection; -import java.util.List; -import java.util.Set; -import java.util.stream.Stream; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.act.domain.entity.MemberCoupon; -import com.cyl.manager.act.domain.vo.CouponActivityVO; -import org.apache.ibatis.annotations.Param; - -/** - * 用户领券记录Mapper接口 - * - * @author zcc - */ -public interface MemberCouponMapper extends BaseMapper { - /** - * 查询用户领券记录列表 - * - * @param memberCoupon 用户领券记录 - * @return 用户领券记录集合 - */ - List selectByEntity(MemberCoupon memberCoupon); - - List countUseCoupon(@Param("couponIds") Collection couponIds); - - List countGetCoupon(@Param("couponIds") Set ids, @Param("memberId") Long memberId); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/service/CouponActivityService.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/service/CouponActivityService.java deleted file mode 100644 index 1a65ab1..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/service/CouponActivityService.java +++ /dev/null @@ -1,284 +0,0 @@ -package com.cyl.manager.act.service; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.*; -import java.util.stream.Collectors; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.cyl.h5.config.SecurityUtil; -import com.cyl.manager.act.domain.entity.IntegralHistory; -import com.cyl.manager.act.domain.entity.MemberCoupon; -import com.cyl.manager.act.domain.vo.CouponActivityVO; -import com.cyl.manager.act.mapper.IntegralHistoryMapper; -import com.cyl.manager.act.mapper.MemberCouponMapper; -import com.cyl.manager.pms.domain.entity.Product; -import com.cyl.manager.pms.mapper.ProductMapper; -import com.cyl.manager.ums.domain.entity.MemberAccount; -import com.cyl.manager.ums.mapper.MemberAccountMapper; -import com.github.pagehelper.PageHelper; -import com.ruoyi.framework.web.domain.server.Mem; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import com.cyl.manager.act.mapper.CouponActivityMapper; -import com.cyl.manager.act.domain.entity.CouponActivity; -import com.cyl.manager.act.domain.query.CouponActivityQuery; -import org.springframework.transaction.annotation.Transactional; - -/** - * 优惠券活动表Service业务层处理 - * - * @author zcc - */ -@Service -public class CouponActivityService { - @Autowired - private CouponActivityMapper couponActivityMapper; - @Autowired - private MemberCouponMapper memberCouponMapper; - @Autowired - private ProductMapper productMapper; - @Autowired - private MemberAccountMapper memberAccountMapper; - @Autowired - private IntegralHistoryMapper integralHistoryMapper; - - /** - * 查询优惠券活动表 - * - * @param id 优惠券活动表主键 - * @return 优惠券活动表 - */ - public CouponActivity selectById(Long id) { - return couponActivityMapper.selectById(id); - } - - /** - * 查询优惠券活动表列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 优惠券活动表 - */ - public Page selectList(CouponActivityQuery query, Pageable page) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - QueryWrapper qw = new QueryWrapper<>(); - String title = query.getTitle(); - if (!StringUtils.isEmpty(title)) { - qw.like("title", "%".concat(title.trim()).concat("%")); - } - Integer useScope = query.getUseScope(); - if (useScope != null) { - qw.eq("use_scope", useScope); - } - Integer couponType = query.getCouponType(); - if (couponType != null) { - qw.eq("coupon_type", couponType); - } - List list = couponActivityMapper.selectList(qw); - if (CollectionUtil.isEmpty(list)) { - return new PageImpl<>(Collections.emptyList(), page, 0); - } - long total = ((com.github.pagehelper.Page) list).getTotal(); - List resList = new ArrayList<>(); - //查找已使用张数 - Map useCountMap = memberCouponMapper.countUseCoupon((list.stream().map(it -> it.getId()).collect(Collectors.toSet()))) - .stream().collect(Collectors.toMap(it -> it.getId(), it -> it.getUseCount())); - Set productIds = new HashSet<>(); - list.stream().filter(it -> Arrays.asList(2, 3).contains(it.getUseScope()) && StringUtils.isNotEmpty(it.getProductIds())) - .forEach(it -> { - productIds.addAll(Arrays.stream(it.getProductIds().split(",")).map(item -> Long.parseLong(item)).collect(Collectors.toSet())); - }); - //查找商品列表 - Map productMap = new HashMap<>(); - if (productIds.size() > 0) { - productMap = productMapper.selectBatchIds(productIds).stream().collect(Collectors.toMap(it -> it.getId(), it -> it)); - } - for (CouponActivity couponActivity : list) { - CouponActivityVO vo = new CouponActivityVO(); - BeanUtils.copyProperties(couponActivity, vo); - Integer integer = useCountMap.get(couponActivity.getId()); - vo.setUseCount(integer == null ? 0 : integer); - if (Arrays.asList(2, 3).contains(couponActivity.getUseScope()) && StringUtils.isNotEmpty(couponActivity.getProductIds())) { - List products = new ArrayList<>(); - for (String s : couponActivity.getProductIds().split(",")) { - Product product = productMap.get(Long.parseLong(s)); - if (product != null) { - products.add(product); - } - } - vo.setProductList(products); - } - resList.add(vo); - } - return new PageImpl<>(resList, page, total); - } - - - public CouponActivityVO getDetail(Long id) { - CouponActivity couponActivity = couponActivityMapper.selectById(id); - CouponActivityVO res = new CouponActivityVO(); - BeanUtils.copyProperties(couponActivity,res); - //判断领的有没有超 - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("member_id", SecurityUtil.getLocalMember().getId()) - .eq("coupon_activity_id", id); - Integer count = memberCouponMapper.selectCount(queryWrapper); - if (count != null && count >= couponActivity.getUserLimit()) { - res.setCanGet(false); - } else { - res.setCanGet(true); - } - return res; - } - - /** - * 新增优惠券活动表 - * - * @param couponActivity 优惠券活动表 - * @return 结果 - */ - public int insert(CouponActivity couponActivity) { - couponActivity.setLeftCount(couponActivity.getTotalCount()); - couponActivity.setCreateTime(LocalDateTime.now()); - return couponActivityMapper.insert(couponActivity); - } - - /** - * 修改优惠券活动表 - * - * @param couponActivity 优惠券活动表 - * @return 结果 - */ - public int update(CouponActivity couponActivity) { - CouponActivity dbActivity = couponActivityMapper.selectById(couponActivity.getId()); - if (dbActivity == null) { - return 0; - } - couponActivity.setLeftCount(dbActivity.getLeftCount()); - couponActivity.setUpdateTime(LocalDateTime.now()); - return couponActivityMapper.updateById(couponActivity); - } - - /** - * 删除优惠券活动表信息 - * - * @param id 优惠券活动表主键 - * @return 结果 - */ - public int deleteById(Long id) { - return couponActivityMapper.deleteById(id); - } - - public Page selectListByH5(Pageable page) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - QueryWrapper qw = new QueryWrapper<>(); - LocalDateTime now = LocalDateTime.now(); - qw.lt("begin_time", now) - .gt("end_time", now); - List list = couponActivityMapper.selectList(qw); - if (CollectionUtil.isEmpty(list)) { - return new PageImpl<>(Collections.emptyList(), page, 0); - } - long total = ((com.github.pagehelper.Page) list).getTotal(); - //看用户已领取的张数 - Set ids = list.stream().map(it -> it.getId()).collect(Collectors.toSet()); - Map countMap = memberCouponMapper.countGetCoupon(ids, SecurityUtil.getLocalMember().getId()).stream().collect(Collectors.toMap(it -> it.getId(), it -> it.getGetCount())); - List resList = new ArrayList<>(); - for (CouponActivity it : list) { - CouponActivityVO vo = new CouponActivityVO(); - BeanUtils.copyProperties(it, vo); - Integer integer = countMap.get(it.getId()); - if (integer == null || integer < it.getUserLimit()) { - vo.setGetCount(integer == null ? 0 : integer); - vo.setCanGet(true); - } else { - vo.setGetCount(integer); - vo.setCanGet(false); - } - resList.add(vo); - } - - return new PageImpl<>(resList, page, total); - } - - @Transactional - public Boolean receiveCoupon(Long id) { - CouponActivity couponActivity = couponActivityMapper.selectById(id); - if (couponActivity == null) { - throw new RuntimeException("未找到活动"); - } - //判断有没有余量 - if (couponActivity.getLeftCount() < 1) { - throw new RuntimeException("活动已没有余额"); - } - //判断时间有没有超 - LocalDateTime now = LocalDateTime.now(); - if (couponActivity.getBeginTime().isAfter(now) || couponActivity.getEndTime().isBefore(now)) { - throw new RuntimeException("活动已过期"); - } - Long memberId = SecurityUtil.getLocalMember().getId(); - //判断领的有没有超 - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("member_id", memberId) - .eq("coupon_activity_id", id); - Integer count = memberCouponMapper.selectCount(queryWrapper); - if (count != null && count >= couponActivity.getUserLimit()) { - throw new RuntimeException("您已达到领取额度"); - } - //如果是积分兑换 - if (Objects.equals(2, couponActivity.getCouponType())) { - //判断积分是否够 - MemberAccount memberAccount = memberAccountMapper.selectById(memberId); - if (memberAccount.getIntegralBalance().compareTo(couponActivity.getUseIntegral()) < 0) { - throw new RuntimeException("您的积分不足"); - } - - //扣除积分 - memberAccountMapper.updateIntegral(couponActivity.getUseIntegral(), memberId); - //记录日志 - insertIntegralHistory(couponActivity.getUseIntegral(), couponActivity.getCouponAmount(), memberId); - } - - //兑换券 - couponActivityMapper.receiveCoupon(id); - int saveCount = saveMemberCoupon(couponActivity, memberId); - - return saveCount > 0; - } - - private int saveMemberCoupon(CouponActivity activity, Long memberId) { - MemberCoupon memberCoupon = new MemberCoupon(); - memberCoupon.setCouponActivityId(activity.getId()); - memberCoupon.setTitle(activity.getTitle()); - memberCoupon.setUseScope(activity.getUseScope()); - memberCoupon.setProductIds(activity.getProductIds()); - memberCoupon.setCouponAmount(activity.getCouponAmount()); - memberCoupon.setMinAmount(activity.getMinAmount()); - memberCoupon.setUseIntegral(activity.getUseIntegral()); - memberCoupon.setCouponType(activity.getCouponType()); - memberCoupon.setBeginTime(LocalDateTime.now()); - memberCoupon.setEndTime(activity.getEndTime()); - memberCoupon.setCreateTime(LocalDateTime.now()); - memberCoupon.setMemberId(memberId); - return memberCouponMapper.insert(memberCoupon); - } - - private void insertIntegralHistory(BigDecimal amount, BigDecimal couponAmount, Long memberId) { - IntegralHistory history = new IntegralHistory(); - history.setOpType(2); - history.setSubOpType(22); - history.setAmount(amount); - history.setOrderAmount(couponAmount); - history.setMemberId(memberId); - history.setCreateTime(LocalDateTime.now()); - integralHistoryMapper.insert(history); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/service/IntegralHistoryService.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/service/IntegralHistoryService.java deleted file mode 100644 index 30ca747..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/service/IntegralHistoryService.java +++ /dev/null @@ -1,223 +0,0 @@ -package com.cyl.manager.act.service; - -import java.math.BigDecimal; -import java.math.RoundingMode; -import java.time.LocalDateTime; -import java.util.List; - -import com.alibaba.fastjson.JSON; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.cyl.h5.config.SecurityUtil; -import com.cyl.manager.act.constant.IntegralRule; -import com.cyl.manager.act.domain.vo.IntegralStatVO; -import com.cyl.manager.ums.domain.entity.MemberAccount; -import com.cyl.manager.ums.mapper.MemberAccountMapper; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.constant.Constants; -import com.ruoyi.system.service.ISysConfigService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import com.cyl.manager.act.mapper.IntegralHistoryMapper; -import com.cyl.manager.act.domain.entity.IntegralHistory; -import com.cyl.manager.act.domain.query.IntegralHistoryQuery; -import org.springframework.transaction.annotation.Transactional; - -/** - * 积分流水表Service业务层处理 - * - * @author zcc - */ -@Service -@Slf4j -@Transactional -public class IntegralHistoryService { - @Autowired - private IntegralHistoryMapper integralHistoryMapper; - @Autowired - private MemberAccountMapper memberAccountMapper; - @Autowired - private ISysConfigService sysConfigService; - - /** - * 查询积分流水表 - * - * @param id 积分流水表主键 - * @return 积分流水表 - */ - public IntegralHistory selectById(Long id) { - return integralHistoryMapper.selectById(id); - } - - /** - * 查询积分流水表列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 积分流水表 - */ - public List selectList(IntegralHistoryQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - Long memberId = query.getMemberId(); - if (memberId != null) { - qw.eq("member_id", memberId); - } - BigDecimal amount = query.getAmount(); - if (amount != null) { - qw.eq("amount", amount); - } - Integer opType = query.getOpType(); - if (opType != null) { - qw.eq("op_type", opType); - } - Integer subOpType = query.getSubOpType(); - if (subOpType != null) { - qw.eq("sub_op_type", subOpType); - } - BigDecimal orderAmount = query.getOrderAmount(); - if (orderAmount != null) { - qw.eq("order_amount", orderAmount); - } - Long orderId = query.getOrderId(); - if (orderId != null) { - qw.eq("order_id", orderId); - } - return integralHistoryMapper.selectList(qw); - } - - public List selectList2(IntegralHistoryQuery query) { - QueryWrapper qw = new QueryWrapper<>(); - Long memberId = query.getMemberId(); - if (memberId != null) { - qw.eq("member_id", memberId); - } - Integer opType = query.getOpType(); - if (opType != null) { - qw.eq("op_type", opType); - } - Integer subOpType = query.getSubOpType(); - if (subOpType != null) { - qw.eq("sub_op_type", subOpType); - } - if (query.getStart() != null) { - qw.ge("create_time", query.getStart()); - } - if (query.getEnd() != null) { - qw.le("create_time", query.getEnd()); - } - return integralHistoryMapper.selectList(qw); - } - - /** - * 新增积分流水表 - * - * @param integralHistory 积分流水表 - * @return 结果 - */ - public int insert(IntegralHistory integralHistory) { - integralHistory.setCreateTime(LocalDateTime.now()); - return integralHistoryMapper.insert(integralHistory); - } - - public int insert2(IntegralHistory history) { - Long memberId = history.getMemberId(); - //保存member_account - MemberAccount memberAccount = memberAccountMapper.selectById(memberId); - if (memberAccount == null) { - memberAccount = new MemberAccount(); - memberAccount.setMemberId(memberId); - memberAccount.setIntegralBalance(history.getAmount()); - memberAccount.setTotalIntegralBalance(history.getAmount()); - memberAccount.setCreateTime(LocalDateTime.now()); - memberAccountMapper.insert(memberAccount); - } else { - memberAccountMapper.updateIntegralBalance(history.getAmount(), memberId); - } - return integralHistoryMapper.insert(history); - } - - public void handleIntegral(Long orderId, BigDecimal amount, Long memberId) { - String config = sysConfigService.selectConfigByKey(Constants.INTEGRAL_RULE_KEY); - IntegralRule rule; - if (StringUtils.isNotEmpty(config)) { - rule = JSON.parseObject(config, IntegralRule.class); - } else { - rule = new IntegralRule(); - } - BigDecimal divide = amount.divide(rule.getOrderAmount(), 0, RoundingMode.DOWN); - if (divide.compareTo(BigDecimal.ZERO) < 1) { - log.info("订单:{},金额:{}不足{}元,不记录积分",orderId,amount,rule.getOrderAmount()); - return; - } - BigDecimal total = divide.multiply(rule.getOrderCount()); - if (total.compareTo(BigDecimal.ZERO) < 1) { - log.info("订单:{},orderCount为0,不记录积分",orderId); - return; - } - IntegralHistory history = new IntegralHistory(); - history.setOpType(1); - history.setSubOpType(12); - history.setAmount(total); - history.setOrderId(orderId); - history.setOrderAmount(amount); - history.setMemberId(memberId); - history.setCreateTime(LocalDateTime.now()); - insert2(history); - } - - /** - * 修改积分流水表 - * - * @param integralHistory 积分流水表 - * @return 结果 - */ - public int update(IntegralHistory integralHistory) { - return integralHistoryMapper.updateById(integralHistory); - } - - /** - * 删除积分流水表信息 - * - * @param id 积分流水表主键 - * @return 结果 - */ - public int deleteById(Long id) { - return integralHistoryMapper.deleteById(id); - } - - public List selectListByH5(IntegralHistoryQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("member_id", SecurityUtil.getLocalMember().getId()) - .ge("create_time", query.getStart()) - .le("create_time", query.getEnd()); - Integer opType = query.getOpType(); - if (opType != null) { - qw.eq("op_type", opType); - } - Integer subOpType = query.getSubOpType(); - if (subOpType != null) { - qw.eq("sub_op_type", subOpType); - } - qw.orderByDesc("id"); - return integralHistoryMapper.selectList(qw); - } - - public IntegralStatVO statIntegral(IntegralHistoryQuery query) { - Long memberId = SecurityUtil.getLocalMember().getId(); - IntegralStatVO statVO = integralHistoryMapper.statIntegral(query.getStart(), query.getEnd(), memberId); - if (statVO == null) { - statVO = new IntegralStatVO(); - } - MemberAccount memberAccount = memberAccountMapper.selectById(memberId); - statVO.setBalance(memberAccount == null ? BigDecimal.ZERO : memberAccount.getIntegralBalance()); - return statVO; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/act/service/MemberCouponService.java b/ruoyi-mall/src/main/java/com/cyl/manager/act/service/MemberCouponService.java deleted file mode 100644 index 3845ca1..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/act/service/MemberCouponService.java +++ /dev/null @@ -1,257 +0,0 @@ -package com.cyl.manager.act.service; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.cyl.h5.config.SecurityUtil; -import com.cyl.manager.act.domain.entity.MemberCoupon; -import com.cyl.manager.act.domain.query.MemberCouponQuery; -import com.cyl.manager.act.domain.vo.MemberCouponVO; -import com.cyl.manager.act.mapper.MemberCouponMapper; -import com.cyl.manager.pms.domain.entity.Product; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.mapper.MemberMapper; -import com.github.pagehelper.PageHelper; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; -import org.springframework.util.CollectionUtils; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.*; -import java.util.stream.Collectors; - -/** - * 用户领券记录Service业务层处理 - * - * @author zcc - */ -@Service -public class MemberCouponService { - @Autowired - private MemberCouponMapper memberCouponMapper; - @Autowired - private MemberMapper memberMapper; - - /** - * 查询用户领券记录 - * - * @param id 用户领券记录主键 - * @return 用户领券记录 - */ - public MemberCoupon selectById(Long id) { - return memberCouponMapper.selectById(id); - } - - public MemberCoupon selectValidCoupon(Long id) { - MemberCoupon coupon = memberCouponMapper.selectById(id); - if (coupon == null) { - return null; - } - if (Objects.equals(coupon.getUseStatus(), 1)) { - throw new RuntimeException("优惠券已使用"); - } - LocalDateTime now = LocalDateTime.now(); - if (coupon.getBeginTime().isAfter(now)) { - throw new RuntimeException("优惠券未到开始使用日期"); - } - if (coupon.getEndTime().isBefore(now)) { - throw new RuntimeException("优惠券已过期"); - } - return coupon; - } - - /** - * 查询用户领券记录列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 用户领券记录 - */ - public Page selectList(MemberCouponQuery query, Pageable page) { - - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - QueryWrapper qw = new QueryWrapper<>(); - Long couponActivityId = query.getCouponActivityId(); - if (couponActivityId != null) { - qw.eq("coupon_activity_id", couponActivityId); - } - Long memberId = query.getMemberId(); - if (memberId != null) { - qw.eq("member_id", memberId); - } - Integer useStatus = query.getUseStatus(); - if (useStatus != null) { - qw.eq("use_status", useStatus); - } - List list = memberCouponMapper.selectList(qw); - - long total = ((com.github.pagehelper.Page) list).getTotal(); - if (total < 1) { - return new PageImpl<>(Collections.emptyList(), page, total); - } - List resList = new ArrayList<>(); - Set memberIds = list.stream().map(it -> it.getMemberId()).collect(Collectors.toSet()); - Map memberMap = memberMapper.selectList(new QueryWrapper().in("id", memberIds)) - .stream().collect(Collectors.toMap(it -> it.getId(), it -> it)); - for (MemberCoupon it : list) { - MemberCouponVO vo = new MemberCouponVO(); - BeanUtils.copyProperties(it, vo); - Member member = memberMap.get(it.getMemberId()); - if (member != null) { - vo.setNickname(member.getNickname()); - vo.setPhone(member.getPhoneHidden()); - vo.setAvatar(member.getAvatar()); - } - resList.add(vo); - } - - return new PageImpl<>(resList, page, total); - } - - /** - * 新增用户领券记录 - * - * @param memberCoupon 用户领券记录 - * @return 结果 - */ - public int insert(MemberCoupon memberCoupon) { - memberCoupon.setCreateTime(LocalDateTime.now()); - return memberCouponMapper.insert(memberCoupon); - } - - /** - * 修改用户领券记录 - * - * @param memberCoupon 用户领券记录 - * @return 结果 - */ - public int update(MemberCoupon memberCoupon) { - return memberCouponMapper.updateById(memberCoupon); - } - - /** - * 删除用户领券记录信息 - * - * @param id 用户领券记录主键 - * @return 结果 - */ - public int deleteById(Long id) { - return memberCouponMapper.deleteById(id); - } - - public Page selectListByH5(MemberCouponQuery query, Pageable page) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("member_id", SecurityUtil.getLocalMember().getId()); - LocalDateTime now = LocalDateTime.now(); - if (query.getType() != null) { - switch (query.getType()) { - case 1: - //已领取 - qw.eq("use_status", 0) - .ge("end_time", now) - .le("begin_time", now); - break; - case 2: - //已使用 - qw.eq("use_status", 1); - break; - case 3: - //已过期 - qw.eq("use_status", 0); - qw.and(it -> it.le("end_time", now).or().ge("begin_time", now)); - break; - default: - break; - } - } - List list = memberCouponMapper.selectList(qw); - return new PageImpl<>(list, page, ((com.github.pagehelper.Page) list).getTotal()); - } - - public List getCanUseList(Collection products) { - //先获取我的未过期的优惠券 - QueryWrapper queryWrapper = new QueryWrapper<>(); - LocalDateTime now = LocalDateTime.now(); - queryWrapper.eq("member_id", SecurityUtil.getLocalMember().getId()) - .eq("use_status", 0) - .ge("end_time", now) - .le("begin_time", now); - List list = memberCouponMapper.selectList(queryWrapper); - if (CollectionUtils.isEmpty(list)) { - return list; - } - List matchList = new ArrayList<>(); - list.forEach(item -> { - if (judgeCouponCanUse(item, products)) { - matchList.add(item); - } - }); - return matchList; - } - - public Boolean judgeCouponCanUse(MemberCoupon item, Collection products) { - //判断是否满足菜品 - if (!Objects.equals(1, item.getUseScope())) { - List couponProducts = Arrays.stream(item.getProductIds().split(",")).map(it -> Long.parseLong(it)).collect(Collectors.toList()); - if (Objects.equals(2, item.getUseScope()) && products.stream().noneMatch(it -> couponProducts.contains(it.getId()))) { - //指定商品 - return false; - } - if (Objects.equals(3, item.getUseScope()) && products.stream().anyMatch(it -> couponProducts.contains(it.getId()))) { - //指定商品不包括 - return false; - } - } - //计算金额是否满足 - if (item.getMinAmount() == null || item.getMinAmount().equals(BigDecimal.ZERO)) { - //无门槛 - return true; - } - if (item.getMinAmount().compareTo(calcMinAmount(products, item)) <= 0) { - return true; - } - return false; - } - - private BigDecimal calcMinAmount(Collection products, MemberCoupon coupon) { - List ids; - if (!Objects.equals(1, coupon.getUseScope())) { - ids = Arrays.stream(coupon.getProductIds().split(",")).map(it -> Long.parseLong(it)).collect(Collectors.toList()); - } else { - ids = new ArrayList<>(); - } - switch (coupon.getUseScope()) { - case 1: - return products.stream().map(Product::getPrice).reduce(BigDecimal::add).get(); - case 2: - return products.stream().filter(it -> ids.contains(it.getId())).map(Product::getPrice).reduce(BigDecimal::add).get(); - case 3: - return products.stream().filter(it -> !ids.contains(it.getId())).map(Product::getPrice).reduce(BigDecimal::add).get(); - default: - return BigDecimal.ZERO; - } - } - - public void updateCouponStatus(Long memberCouponId, Long orderId) { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("id", memberCouponId) - .set("use_status", 1) - .set("use_time", LocalDateTime.now()) - .set("order_id", orderId); - memberCouponMapper.update(null, updateWrapper); - } - - public void backCoupon(List couponIdList) { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", couponIdList) - .set("use_status", 0) - .set("use_time", null) - .set("order_id", null); - memberCouponMapper.update(null, updateWrapper); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/aws/controller/SystemStatisticsController.java b/ruoyi-mall/src/main/java/com/cyl/manager/aws/controller/SystemStatisticsController.java deleted file mode 100644 index d2374b8..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/aws/controller/SystemStatisticsController.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.cyl.manager.aws.controller; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.aws.convert.SystemStatisticsConvert; -import com.cyl.manager.aws.domain.entity.SystemStatistics; -import com.cyl.manager.aws.domain.query.SystemStatisticsQuery; -import com.cyl.manager.aws.service.SystemStatisticsService; - -/** - * 系统数据统计Controller - * - * @author zcc - * @date 2023-07-28 - */ -@Api(description ="系统数据统计接口列表") -@RestController -@RequestMapping("/aws/systemStatistics") -public class SystemStatisticsController extends BaseController { - @Autowired - private SystemStatisticsService service; - @Autowired - private SystemStatisticsConvert convert; - - @ApiOperation("查询系统数据统计列表") - @PreAuthorize("@ss.hasPermi('aws:systemStatistics:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody SystemStatisticsQuery query, Pageable page) { - return ResponseEntity.ok(service.selectList(query, page)); - } - - @ApiOperation("导出系统数据统计列表") - @PreAuthorize("@ss.hasPermi('aws:systemStatistics:export')") - @Log(title = "系统数据统计", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(SystemStatisticsQuery query) { -// List list = service.selectList(query, null); -// ExcelUtil util = new ExcelUtil<>(SystemStatisticsVO.class); -// return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "系统数据统计数据")); - return null; - } - - @ApiOperation("获取系统数据统计详细信息") - @PreAuthorize("@ss.hasPermi('aws:systemStatistics:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增系统数据统计") - @PreAuthorize("@ss.hasPermi('aws:systemStatistics:add')") - @Log(title = "系统数据统计", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody SystemStatistics systemStatistics) { - return ResponseEntity.ok(service.insert(systemStatistics)); - } - - @ApiOperation("修改系统数据统计") - @PreAuthorize("@ss.hasPermi('aws:systemStatistics:edit')") - @Log(title = "系统数据统计", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody SystemStatistics systemStatistics) { - return ResponseEntity.ok(service.update(systemStatistics)); - } - - @ApiOperation("删除系统数据统计") - @PreAuthorize("@ss.hasPermi('aws:systemStatistics:remove')") - @Log(title = "系统数据统计", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/aws/convert/SystemStatisticsConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/aws/convert/SystemStatisticsConvert.java deleted file mode 100644 index b4e6cc6..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/aws/convert/SystemStatisticsConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.aws.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.aws.domain.entity.SystemStatistics; -import com.cyl.manager.aws.domain.vo.SystemStatisticsVO; -import java.util.List; -/** - * 系统数据统计 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface SystemStatisticsConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/entity/SystemStatistics.java b/ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/entity/SystemStatistics.java deleted file mode 100644 index 875a6cc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/entity/SystemStatistics.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.cyl.manager.aws.domain.entity; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 系统数据统计对象 aws_system_statistics - * - * @author zcc - */ -@ApiModel(description="系统数据统计对象") -@Data -@TableName("aws_system_statistics") -public class SystemStatistics { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("统计日期") - @Excel(name = "统计日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime date; - - @ApiModelProperty("登录用户数") - @Excel(name = "登录用户数") - private Integer loginMemberCount; - - @ApiModelProperty("注册用户数") - @Excel(name = "注册用户数") - private Integer registerMemberCount; - - @ApiModelProperty("加购用户数") - @Excel(name = "加购用户数") - private Integer addCartMemberCount; - - @ApiModelProperty("下单用户数") - @Excel(name = "下单用户数") - private Integer createOrderMemberCount; - - @ApiModelProperty("成交用户数") - @Excel(name = "成交用户数") - private Integer dealMemberCount; - - @ApiModelProperty("下单数") - @Excel(name = "下单数") - private Integer orderCount; - - @ApiModelProperty("成交数") - @Excel(name = "成交数") - private Integer dealCount; - - @ApiModelProperty("成交金额") - @Excel(name = "成交金额") - private BigDecimal dealAmount; - - @ApiModelProperty("售后数") - @Excel(name = "售后数") - private Integer aftersaleCount; - - @ApiModelProperty("售后金额") - @Excel(name = "售后金额") - private BigDecimal aftersaleAmount; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/query/SystemStatisticsQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/query/SystemStatisticsQuery.java deleted file mode 100644 index 3288d1e..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/query/SystemStatisticsQuery.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.cyl.manager.aws.domain.query; - -import java.math.BigDecimal; -import java.time.LocalDateTime; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 系统数据统计 查询 对象 - * - * @author zcc - */ -@ApiModel(description="系统数据统计 查询 对象") -@Data -public class SystemStatisticsQuery { - @ApiModelProperty("统计开始日期") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime beginTime; - - @ApiModelProperty("统计结束日期") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime endTime; - - @ApiModelProperty("登录用户数 精确匹配") - private Integer loginMemberCount; - - @ApiModelProperty("注册用户数 精确匹配") - private Integer registerMemberCount; - - @ApiModelProperty("加购用户数 精确匹配") - private Integer addCartMemberCount; - - @ApiModelProperty("下单用户数 精确匹配") - private Integer createOrderMemberCount; - - @ApiModelProperty("成交用户数 精确匹配") - private Integer dealMemberCount; - - @ApiModelProperty("下单数 精确匹配") - private Integer orderCount; - - @ApiModelProperty("成交数 精确匹配") - private Integer dealCount; - - @ApiModelProperty("成交金额 精确匹配") - private BigDecimal dealAmount; - - @ApiModelProperty("售后数 精确匹配") - private Integer aftersaleCount; - - @ApiModelProperty("售后金额 精确匹配") - private BigDecimal aftersaleAmount; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/vo/SystemStatisticsVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/vo/SystemStatisticsVO.java deleted file mode 100644 index bb8c3ca..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/aws/domain/vo/SystemStatisticsVO.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.cyl.manager.aws.domain.vo; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -/** - * 系统数据统计 数据视图对象 - * - * @author zcc - */ -@Data -public class SystemStatisticsVO { - /** ID */ - private Long id; - /** 统计日期 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "统计日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime date; - /** 登录用户数 */ - @Excel(name = "登录用户数") - private Integer loginMemberCount; - /** 注册用户数 */ - @Excel(name = "注册用户数") - private Integer registerMemberCount; - /** 加购用户数 */ - @Excel(name = "加购用户数") - private Integer addCartMemberCount; - /** 下单用户数 */ - @Excel(name = "下单用户数") - private Integer createOrderMemberCount; - /** 成交用户数 */ - @Excel(name = "成交用户数") - private Integer dealMemberCount; - /** 下单数 */ - @Excel(name = "下单数") - private Integer orderCount; - /** 成交数 */ - @Excel(name = "成交数") - private Integer dealCount; - /** 成交金额 */ - @Excel(name = "成交金额") - private BigDecimal dealAmount; - /** 售后数 */ - @Excel(name = "售后数") - private Integer aftersaleCount; - /** 售后金额 */ - @Excel(name = "售后金额") - private BigDecimal aftersaleAmount; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/aws/mapper/SystemStatisticsMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/aws/mapper/SystemStatisticsMapper.java deleted file mode 100644 index f124338..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/aws/mapper/SystemStatisticsMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.manager.aws.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.aws.domain.entity.SystemStatistics; - -/** - * 系统数据统计Mapper接口 - * - * @author zcc - */ -public interface SystemStatisticsMapper extends BaseMapper { - /** - * 查询系统数据统计列表 - * - * @param systemStatistics 系统数据统计 - * @return 系统数据统计集合 - */ - List selectByEntity(SystemStatistics systemStatistics); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/aws/service/SystemStatisticsService.java b/ruoyi-mall/src/main/java/com/cyl/manager/aws/service/SystemStatisticsService.java deleted file mode 100644 index 1082d1b..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/aws/service/SystemStatisticsService.java +++ /dev/null @@ -1,152 +0,0 @@ -package com.cyl.manager.aws.service; - -import java.math.BigDecimal; -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.LocalTime; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.cyl.manager.oms.domain.entity.Aftersale; -import com.cyl.manager.oms.mapper.AftersaleMapper; -import com.cyl.manager.oms.mapper.OrderMapper; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.mapper.MemberCartMapper; -import com.cyl.manager.ums.mapper.MemberLogininforMapper; -import com.cyl.manager.ums.mapper.MemberMapper; -import com.github.pagehelper.Page; -import com.github.pagehelper.PageHelper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; -import com.cyl.manager.aws.mapper.SystemStatisticsMapper; -import com.cyl.manager.aws.domain.entity.SystemStatistics; -import com.cyl.manager.aws.domain.query.SystemStatisticsQuery; - -/** - * 系统数据统计Service业务层处理 - * - * @author zcc - */ -@Service -public class SystemStatisticsService { - @Autowired - private SystemStatisticsMapper systemStatisticsMapper; - - @Autowired - private OrderMapper orderMapper; - - @Autowired - private AftersaleMapper aftersaleMapper; - - @Autowired - private MemberLogininforMapper memberLogininforMapper; - - @Autowired - private MemberMapper memberMapper; - - @Autowired - private MemberCartMapper memberCartMapper; - - /** - * 查询系统数据统计 - * - * @param id 系统数据统计主键 - * @return 系统数据统计 - */ - public SystemStatistics selectById(Long id) { - return systemStatisticsMapper.selectById(id); - } - - /** - * 查询系统数据统计列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 系统数据统计 - */ - public PageImpl selectList(SystemStatisticsQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); - if (query.getBeginTime() != null && query.getEndTime() != null){ - qw.ge(SystemStatistics::getDate, query.getBeginTime()); - qw.lt(SystemStatistics::getDate, query.getEndTime()); - } - qw.orderByDesc(SystemStatistics::getDate); - List statList = systemStatisticsMapper.selectList(qw); - long total = ((Page)statList).getTotal(); - if ((query.getBeginTime() == null && query.getEndTime() == null) || (query.getEndTime() != null && query.getEndTime().isAfter(LocalDateTime.now()))){ - SystemStatistics stat = this.stat(LocalDateTime.of(LocalDate.now(), LocalTime.MIN), LocalDateTime.of(LocalDate.now(), LocalTime.MAX)); - statList.add(0, stat); - return new PageImpl<>(statList, page, total); - } - return new PageImpl<>(statList, page, total); - } - - /** - * 新增系统数据统计 - * - * @param systemStatistics 系统数据统计 - * @return 结果 - */ - public int insert(SystemStatistics systemStatistics) { - return systemStatisticsMapper.insert(systemStatistics); - } - - /** - * 修改系统数据统计 - * - * @param systemStatistics 系统数据统计 - * @return 结果 - */ - public int update(SystemStatistics systemStatistics) { - return systemStatisticsMapper.updateById(systemStatistics); - } - - /** - * 删除系统数据统计信息 - * - * @param id 系统数据统计主键 - * @return 结果 - */ - public int deleteById(Long id) { - return systemStatisticsMapper.deleteById(id); - } - - public SystemStatistics stat(LocalDateTime startTime, LocalDateTime endTime) { - //统计下单用户数、成交用户数、下单数、成交数、成交金额 - SystemStatistics systemStatistics = orderMapper.statNewAndDeal(startTime, endTime); - //统计成交用户数 - systemStatistics.setDealMemberCount(orderMapper.statDealMember(startTime, endTime)); - //统计售后 - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.between(Aftersale::getCreateTime, startTime, endTime); - wrapper.orderByDesc(Aftersale::getCreateTime); - List aftersaleList = aftersaleMapper.selectList(wrapper); - if (CollectionUtil.isEmpty(aftersaleList)) { - systemStatistics.setAftersaleCount(0); - systemStatistics.setAftersaleAmount(BigDecimal.ZERO); - } else { - Map map = aftersaleList.stream().collect(Collectors.toMap(Aftersale::getOrderId, Aftersale::getReturnAmount, (v1, v2) -> v1, LinkedHashMap::new)); - systemStatistics.setAftersaleCount(map.values().size()); - systemStatistics.setAftersaleAmount(map.values().stream().reduce(BigDecimal::add).get()); - } - //统计登录用户数 - systemStatistics.setLoginMemberCount(memberLogininforMapper.statLoginMember(startTime, endTime)); - //统计注册用户 - LambdaQueryWrapper memberWrapper = new LambdaQueryWrapper<>(); - memberWrapper.between(Member::getCreateTime, startTime, endTime); - systemStatistics.setRegisterMemberCount(memberMapper.selectCount(memberWrapper)); - //统计加购数 - systemStatistics.setAddCartMemberCount(memberCartMapper.statAddCount(startTime, endTime)); - systemStatistics.setDate(startTime); - return systemStatistics; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/AftersaleController.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/AftersaleController.java deleted file mode 100644 index 45f915f..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/AftersaleController.java +++ /dev/null @@ -1,133 +0,0 @@ -package com.cyl.manager.oms.controller; - -import java.util.List; - -import com.cyl.manager.oms.domain.form.DealWithAftersaleForm; -import com.cyl.manager.oms.domain.form.ManagerAftersaleOrderForm; -import com.cyl.manager.oms.domain.vo.ManagerRefundOrderDetailVO; -import com.cyl.manager.oms.domain.vo.ManagerRefundOrderVO; -import com.cyl.manager.oms.domain.vo.OrderOperateHistoryVO; -import com.ruoyi.common.core.domain.model.LoginUser; -import com.ruoyi.common.core.redis.RedisService; -import com.ruoyi.common.utils.SecurityUtils; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.extern.slf4j.Slf4j; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.oms.convert.AftersaleConvert; -import com.cyl.manager.oms.domain.entity.Aftersale; -import com.cyl.manager.oms.domain.query.AftersaleQuery; -import com.cyl.manager.oms.service.AftersaleService; - -/** - * 订单售后Controller - * - * @author zcc - * @date 2022-12-29 - */ -@Api(description ="订单售后接口列表") -@RestController -@RequestMapping("/oms/aftersale") -@Slf4j -public class AftersaleController extends BaseController { - @Autowired - private AftersaleService service; - @Autowired - private AftersaleConvert convert; - @Autowired - private RedisService redisService; - - @ApiOperation("查询订单售后列表") - @PreAuthorize("@ss.hasPermi('oms:aftersale:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody ManagerAftersaleOrderForm query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出订单售后列表") - @PreAuthorize("@ss.hasPermi('oms:aftersale:export')") - @Log(title = "订单售后", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(AftersaleQuery query) { -// List list = service.selectList(query, null); -// ExcelUtil util = new ExcelUtil<>(AftersaleVO.class); -// return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "订单售后数据")); - return null; - } - - @ApiOperation("获取订单售后详细信息") - @PreAuthorize("@ss.hasPermi('oms:aftersale:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long orderId) { - return ResponseEntity.ok(service.selectById(orderId)); - } - - @ApiOperation("新增订单售后") - @PreAuthorize("@ss.hasPermi('oms:aftersale:add')") - @Log(title = "订单售后", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody Aftersale aftersale) { - return ResponseEntity.ok(service.insert(aftersale)); - } - - @ApiOperation("修改订单售后") - @PreAuthorize("@ss.hasPermi('oms:aftersale:edit')") - @Log(title = "订单售后", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody Aftersale aftersale) { - return ResponseEntity.ok(service.update(aftersale)); - } - - @ApiOperation("删除订单售后") - @PreAuthorize("@ss.hasPermi('oms:aftersale:remove')") - @Log(title = "订单售后", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } - - @ApiOperation("售后订单操作") - @PostMapping("/dealWith") - public ResponseEntity updateStatus(@RequestBody DealWithAftersaleForm request){ - LoginUser user = SecurityUtils.getLoginUser(); - String redisKey = "manager_oms_order_updateOrderStatus_" + user.getUserId(); - String redisValue = user.getUserId() + "_" + System.currentTimeMillis(); - try { - redisService.lock(redisKey, redisValue, 60); - service.dealWith(request, user.getUserId(), user.getUser().getNickName()); - return ResponseEntity.ok(true); - } catch (Exception e) { - log.error("售后订单操作发生异常", e); - throw new RuntimeException(e.getMessage()); - } finally { - try { - redisService.unLock(redisKey, redisValue); - } catch (Exception e) { - log.error("", e); - } - } - } - - @ApiOperation("查看日志") - @GetMapping("/log/{orderId}") - public ResponseEntity> log(@PathVariable Long orderId){ - return ResponseEntity.ok(service.log(orderId)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/AftersaleItemController.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/AftersaleItemController.java deleted file mode 100644 index 0b3e9cc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/AftersaleItemController.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.cyl.manager.oms.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.oms.convert.AftersaleItemConvert; -import com.cyl.manager.oms.domain.entity.AftersaleItem; -import com.cyl.manager.oms.domain.query.AftersaleItemQuery; -import com.cyl.manager.oms.service.AftersaleItemService; -import com.cyl.manager.oms.domain.vo.AftersaleItemVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * 订单售后Controller - * - * @author zcc - * @date 2022-12-29 - */ -@Api(description ="订单售后接口列表") -@RestController -@RequestMapping("/oms/aftersaleItem") -public class AftersaleItemController extends BaseController { - @Autowired - private AftersaleItemService service; - @Autowired - private AftersaleItemConvert convert; - - @ApiOperation("查询订单售后列表") - @PreAuthorize("@ss.hasPermi('oms:aftersaleItem:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody AftersaleItemQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出订单售后列表") - @PreAuthorize("@ss.hasPermi('oms:aftersaleItem:export')") - @Log(title = "订单售后", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(AftersaleItemQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(AftersaleItemVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "订单售后数据")); - } - - @ApiOperation("获取订单售后详细信息") - @PreAuthorize("@ss.hasPermi('oms:aftersaleItem:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增订单售后") - @PreAuthorize("@ss.hasPermi('oms:aftersaleItem:add')") - @Log(title = "订单售后", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody AftersaleItem aftersaleItem) { - return ResponseEntity.ok(service.insert(aftersaleItem)); - } - - @ApiOperation("修改订单售后") - @PreAuthorize("@ss.hasPermi('oms:aftersaleItem:edit')") - @Log(title = "订单售后", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody AftersaleItem aftersaleItem) { - return ResponseEntity.ok(service.update(aftersaleItem)); - } - - @ApiOperation("删除订单售后") - @PreAuthorize("@ss.hasPermi('oms:aftersaleItem:remove')") - @Log(title = "订单售后", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderController.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderController.java deleted file mode 100644 index aef2601..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderController.java +++ /dev/null @@ -1,144 +0,0 @@ -package com.cyl.manager.oms.controller; - -import com.cyl.manager.oms.convert.OrderConvert; -import com.cyl.manager.oms.domain.entity.Order; -import com.cyl.manager.oms.domain.query.OrderQuery; -import com.cyl.manager.oms.domain.form.DeliverProductForm; -import com.cyl.manager.oms.domain.form.ManagerOrderQueryForm; -import com.cyl.manager.oms.domain.vo.ManagerOrderDetailVO; -import com.cyl.manager.oms.domain.vo.ManagerOrderVO; -import com.cyl.manager.oms.domain.vo.OrderOperateHistoryVO; -import com.cyl.manager.oms.service.OrderService; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.core.redis.RedisService; -import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.common.utils.SecurityUtils; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.Pageable; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import java.util.List; -/** - * 订单表Controller - * - * @author zcc - * @date 2022-12-01 - */ -@Api(description ="订单表接口列表") -@RestController -@RequestMapping("/oms/order") -@Slf4j -public class OrderController extends BaseController { - @Autowired - private OrderService service; - @Autowired - private OrderConvert convert; - @Autowired - private RedisService redisService; - - @ApiOperation("查询订单表列表") - @PreAuthorize("@ss.hasPermi('oms:order:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody ManagerOrderQueryForm query, Pageable page) { - return ResponseEntity.ok(service.selectList(query, page)); - } - - @ApiOperation("修改收件人信息") - @PostMapping("/receiver/update") - public ResponseEntity updateReceiver(@RequestBody Order order) { - return ResponseEntity.ok(service.updateReceiver(order)); - } - - @ApiOperation("导出订单表列表") - @PreAuthorize("@ss.hasPermi('oms:order:export')") - @Log(title = "订单表", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(OrderQuery query) { -// List list = service.selectList(query, null); -// ExcelUtil util = new ExcelUtil<>(OrderVO.class); -// return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "订单表数据")); - return null; - } - - @ApiOperation("获取订单表详细信息") - @PreAuthorize("@ss.hasPermi('oms:order:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增订单表") - @PreAuthorize("@ss.hasPermi('oms:order:add')") - @Log(title = "订单表", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody Order order) { - return ResponseEntity.ok(service.insert(order)); - } - - @ApiOperation("修改订单表") - @PreAuthorize("@ss.hasPermi('oms:order:edit')") - @Log(title = "订单表", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody Order order) { - return ResponseEntity.ok(service.update(order)); - } - - @ApiOperation("删除订单表") - @PreAuthorize("@ss.hasPermi('oms:order:remove')") - @Log(title = "订单表", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } - - @ApiOperation("添加备注") - @PreAuthorize("@ss.hasPermi('oms:order:note:add')") - @Log(title = "订单表", businessType = BusinessType.UPDATE) - @PostMapping("/merchantNote/add") - public ResponseEntity saveMerchantNote(@RequestBody Order order){ - return ResponseEntity.ok(service.saveMerchantNote(order)); - } - - @ApiOperation("管理后台订单发货") - @PreAuthorize("@ss.hasPermi('oms:order:delivery')") - @PostMapping("/deliverProduct") - public ResponseEntity delivery(@RequestBody DeliverProductForm request){ - Long userId = SecurityUtils.getUserId(); - String redisKey = "oms_order_deliverProduct" + request.getOrderId(); - String redisValue = request.getOrderId() + "_" + System.currentTimeMillis(); - try{ - redisService.lock(redisKey, redisValue, 60); - return ResponseEntity.ok(service.deliverProduct(request, userId)); - }catch (Exception e){ - log.error("订单发货接口异常"); - throw new RuntimeException("发货失败"); - }finally { - try{ - redisService.unLock(redisKey, redisValue);; - }catch (Exception e){ - log.error("", e); - } - } - } - - @ApiOperation("订单日志") - @GetMapping("/log/{orderId}") - public ResponseEntity> log(@PathVariable Long orderId){ - return ResponseEntity.ok(service.log(orderId)); - } - - @PreAuthorize("@ss.hasAnyRoles('admin')") - @ApiOperation("订单解密") - @GetMapping("/decryptPhone/{orderId}") - public ResponseEntity decryptPhone(@PathVariable Long orderId){ - String decryptPhone = service.decryptPhone(orderId); - return ResponseEntity.ok(decryptPhone); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderDeliveryHistoryController.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderDeliveryHistoryController.java deleted file mode 100644 index 4b6d38f..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderDeliveryHistoryController.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.cyl.manager.oms.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.oms.convert.OrderDeliveryHistoryConvert; -import com.cyl.manager.oms.domain.entity.OrderDeliveryHistory; -import com.cyl.manager.oms.domain.query.OrderDeliveryHistoryQuery; -import com.cyl.manager.oms.service.OrderDeliveryHistoryService; -import com.cyl.manager.oms.domain.vo.OrderDeliveryHistoryVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * 订单发货记录Controller - * - * @author zcc - * @date 2022-12-01 - */ -@Api(description ="订单发货记录接口列表") -@RestController -@RequestMapping("/oms/orderDeliveryHistory") -public class OrderDeliveryHistoryController extends BaseController { - @Autowired - private OrderDeliveryHistoryService service; - @Autowired - private OrderDeliveryHistoryConvert convert; - - @ApiOperation("查询订单发货记录列表") - @PreAuthorize("@ss.hasPermi('oms:orderDeliveryHistory:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody OrderDeliveryHistoryQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出订单发货记录列表") - @PreAuthorize("@ss.hasPermi('oms:orderDeliveryHistory:export')") - @Log(title = "订单发货记录", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(OrderDeliveryHistoryQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(OrderDeliveryHistoryVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "订单发货记录数据")); - } - - @ApiOperation("获取订单发货记录详细信息") - @PreAuthorize("@ss.hasPermi('oms:orderDeliveryHistory:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增订单发货记录") - @PreAuthorize("@ss.hasPermi('oms:orderDeliveryHistory:add')") - @Log(title = "订单发货记录", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody OrderDeliveryHistory orderDeliveryHistory) { - return ResponseEntity.ok(service.insert(orderDeliveryHistory)); - } - - @ApiOperation("修改订单发货记录") - @PreAuthorize("@ss.hasPermi('oms:orderDeliveryHistory:edit')") - @Log(title = "订单发货记录", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody OrderDeliveryHistory orderDeliveryHistory) { - return ResponseEntity.ok(service.update(orderDeliveryHistory)); - } - - @ApiOperation("删除订单发货记录") - @PreAuthorize("@ss.hasPermi('oms:orderDeliveryHistory:remove')") - @Log(title = "订单发货记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderItemController.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderItemController.java deleted file mode 100644 index a428fbf..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderItemController.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.cyl.manager.oms.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.oms.convert.OrderItemConvert; -import com.cyl.manager.oms.domain.entity.OrderItem; -import com.cyl.manager.oms.domain.query.OrderItemQuery; -import com.cyl.manager.oms.service.OrderItemService; -import com.cyl.manager.oms.domain.vo.OrderItemVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * 订单中所包含的商品Controller - * - * @author zcc - * @date 2022-12-01 - */ -@Api(description ="订单中所包含的商品接口列表") -@RestController -@RequestMapping("/oms/orderItem") -public class OrderItemController extends BaseController { - @Autowired - private OrderItemService service; - @Autowired - private OrderItemConvert convert; - - @ApiOperation("查询订单中所包含的商品列表") - @PreAuthorize("@ss.hasPermi('oms:orderItem:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody OrderItemQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出订单中所包含的商品列表") - @PreAuthorize("@ss.hasPermi('oms:orderItem:export')") - @Log(title = "订单中所包含的商品", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(OrderItemQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(OrderItemVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "订单中所包含的商品数据")); - } - - @ApiOperation("获取订单中所包含的商品详细信息") - @PreAuthorize("@ss.hasPermi('oms:orderItem:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增订单中所包含的商品") - @PreAuthorize("@ss.hasPermi('oms:orderItem:add')") - @Log(title = "订单中所包含的商品", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody OrderItem orderItem) { - return ResponseEntity.ok(service.insert(orderItem)); - } - - @ApiOperation("修改订单中所包含的商品") - @PreAuthorize("@ss.hasPermi('oms:orderItem:edit')") - @Log(title = "订单中所包含的商品", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody OrderItem orderItem) { - return ResponseEntity.ok(service.update(orderItem)); - } - - @ApiOperation("删除订单中所包含的商品") - @PreAuthorize("@ss.hasPermi('oms:orderItem:remove')") - @Log(title = "订单中所包含的商品", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderOperateHistoryController.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderOperateHistoryController.java deleted file mode 100644 index d52d945..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/OrderOperateHistoryController.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.cyl.manager.oms.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.oms.convert.OrderOperateHistoryConvert; -import com.cyl.manager.oms.domain.entity.OrderOperateHistory; -import com.cyl.manager.oms.domain.query.OrderOperateHistoryQuery; -import com.cyl.manager.oms.service.OrderOperateHistoryService; -import com.cyl.manager.oms.domain.vo.OrderOperateHistoryVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * 订单操作历史记录Controller - * - * @author zcc - * @date 2022-12-01 - */ -@Api(description ="订单操作历史记录接口列表") -@RestController -@RequestMapping("/oms/orderOperateHistory") -public class OrderOperateHistoryController extends BaseController { - @Autowired - private OrderOperateHistoryService service; - @Autowired - private OrderOperateHistoryConvert convert; - - @ApiOperation("查询订单操作历史记录列表") - @PreAuthorize("@ss.hasPermi('oms:orderOperateHistory:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody OrderOperateHistoryQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出订单操作历史记录列表") - @PreAuthorize("@ss.hasPermi('oms:orderOperateHistory:export')") - @Log(title = "订单操作历史记录", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(OrderOperateHistoryQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(OrderOperateHistoryVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "订单操作历史记录数据")); - } - - @ApiOperation("获取订单操作历史记录详细信息") - @PreAuthorize("@ss.hasPermi('oms:orderOperateHistory:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增订单操作历史记录") - @PreAuthorize("@ss.hasPermi('oms:orderOperateHistory:add')") - @Log(title = "订单操作历史记录", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody OrderOperateHistory orderOperateHistory) { - return ResponseEntity.ok(service.insert(orderOperateHistory)); - } - - @ApiOperation("修改订单操作历史记录") - @PreAuthorize("@ss.hasPermi('oms:orderOperateHistory:edit')") - @Log(title = "订单操作历史记录", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody OrderOperateHistory orderOperateHistory) { - return ResponseEntity.ok(service.update(orderOperateHistory)); - } - - @ApiOperation("删除订单操作历史记录") - @PreAuthorize("@ss.hasPermi('oms:orderOperateHistory:remove')") - @Log(title = "订单操作历史记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/WechatPaymentHistoryController.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/WechatPaymentHistoryController.java deleted file mode 100644 index 4162602..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/controller/WechatPaymentHistoryController.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.cyl.manager.oms.controller; - -import java.util.List; - -import com.cyl.manager.oms.domain.entity.WechatPaymentHistory; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.oms.convert.WechatPaymentHistoryConvert; -import com.cyl.manager.oms.domain.query.WechatPaymentHistoryQuery; -import com.cyl.manager.oms.service.WechatPaymentHistoryService; -import com.cyl.manager.oms.domain.vo.WechatPaymentHistoryVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * 微信订单表Controller - * - * @author zcc - * @date 2023-07-12 - */ -@Api(description ="微信订单表接口列表") -@RestController -@RequestMapping("/pms/omsWechatPaymentHistory") -public class WechatPaymentHistoryController extends BaseController { - @Autowired - private WechatPaymentHistoryService service; - @Autowired - private WechatPaymentHistoryConvert convert; - - @ApiOperation("查询微信订单表列表") - @PreAuthorize("@ss.hasPermi('pms:omsWechatPaymentHistory:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody WechatPaymentHistoryQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出微信订单表列表") - @PreAuthorize("@ss.hasPermi('pms:omsWechatPaymentHistory:export')") - @Log(title = "微信订单表", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(WechatPaymentHistoryQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(WechatPaymentHistoryVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "微信订单表数据")); - } - - @ApiOperation("获取微信订单表详细信息") - @PreAuthorize("@ss.hasPermi('pms:omsWechatPaymentHistory:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增微信订单表") - @PreAuthorize("@ss.hasPermi('pms:omsWechatPaymentHistory:add')") - @Log(title = "微信订单表", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody WechatPaymentHistory wechatPaymentHistory) { - return ResponseEntity.ok(service.insert(wechatPaymentHistory)); - } - - @ApiOperation("修改微信订单表") - @PreAuthorize("@ss.hasPermi('pms:omsWechatPaymentHistory:edit')") - @Log(title = "微信订单表", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody WechatPaymentHistory wechatPaymentHistory) { - return ResponseEntity.ok(service.update(wechatPaymentHistory)); - } - - @ApiOperation("删除微信订单表") - @PreAuthorize("@ss.hasPermi('pms:omsWechatPaymentHistory:remove')") - @Log(title = "微信订单表", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/AftersaleConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/AftersaleConvert.java deleted file mode 100644 index 49033dc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/AftersaleConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.oms.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.oms.domain.entity.Aftersale; -import com.cyl.manager.oms.domain.vo.AftersaleVO; -import java.util.List; -/** - * 订单售后 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface AftersaleConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/AftersaleItemConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/AftersaleItemConvert.java deleted file mode 100644 index a2121e9..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/AftersaleItemConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.oms.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.oms.domain.entity.AftersaleItem; -import com.cyl.manager.oms.domain.vo.AftersaleItemVO; -import java.util.List; -/** - * 订单售后 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface AftersaleItemConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderConvert.java deleted file mode 100644 index 57d580c..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderConvert.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.cyl.manager.oms.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.oms.domain.entity.Order; -import com.cyl.manager.oms.domain.vo.OrderVO; -import java.util.List; -/** - * 订单表 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface OrderConvert { - - List dos2vos(List list); - - OrderVO do2vo(Order order); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderDeliveryHistoryConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderDeliveryHistoryConvert.java deleted file mode 100644 index ebed6e4..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderDeliveryHistoryConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.oms.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.oms.domain.entity.OrderDeliveryHistory; -import com.cyl.manager.oms.domain.vo.OrderDeliveryHistoryVO; -import java.util.List; -/** - * 订单发货记录 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface OrderDeliveryHistoryConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderItemConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderItemConvert.java deleted file mode 100644 index 95e93b0..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderItemConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.oms.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.oms.domain.entity.OrderItem; -import com.cyl.manager.oms.domain.vo.OrderItemVO; -import java.util.List; -/** - * 订单中所包含的商品 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface OrderItemConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderOperateHistoryConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderOperateHistoryConvert.java deleted file mode 100644 index 54eb4d5..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/OrderOperateHistoryConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.oms.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.oms.domain.entity.OrderOperateHistory; -import com.cyl.manager.oms.domain.vo.OrderOperateHistoryVO; -import java.util.List; -/** - * 订单操作历史记录 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface OrderOperateHistoryConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/WechatPaymentHistoryConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/WechatPaymentHistoryConvert.java deleted file mode 100644 index 9de3851..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/convert/WechatPaymentHistoryConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.oms.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.oms.domain.entity.WechatPaymentHistory; -import com.cyl.manager.oms.domain.vo.WechatPaymentHistoryVO; -import java.util.List; -/** - * 微信订单表 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface WechatPaymentHistoryConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/Aftersale.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/Aftersale.java deleted file mode 100644 index 4ed6336..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/Aftersale.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.cyl.manager.oms.domain.entity; - -import java.math.BigDecimal; -import java.time.LocalDateTime; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 订单售后对象 oms_aftersale - * - * @author zcc - */ -@ApiModel(description="订单售后对象") -@Data -@TableName("oms_aftersale") -public class Aftersale extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - @ApiModelProperty("MEMBER_ID") - @Excel(name = "MEMBER_ID") - private Long memberId; - - @ApiModelProperty("订单id") - @Excel(name = "订单id") - private Long orderId; - - @ApiModelProperty("退款金额") - @Excel(name = "退款金额") - private BigDecimal returnAmount; - - @ApiModelProperty("售后类型:1:退款,2:退货退款") - @Excel(name = "售后类型:1:退款,2:退货退款") - private Integer type; - - @ApiModelProperty("申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝") - @Excel(name = "申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝") - private Integer status; - - @ApiModelProperty("处理时间") - @Excel(name = "处理时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime handleTime; - - @ApiModelProperty("退货数量") - @Excel(name = "退货数量") - private Integer quantity; - - @ApiModelProperty("原因") - @Excel(name = "原因") - private String reason; - - @ApiModelProperty("描述") - @Excel(name = "描述") - private String description; - - @ApiModelProperty("凭证图片,以逗号隔开") - @Excel(name = "凭证图片,以逗号隔开") - private String proofPics; - - @ApiModelProperty("处理备注") - @Excel(name = "处理备注") - private String handleNote; - - @ApiModelProperty("处理人员") - @Excel(name = "处理人员") - private String handleMan; - - @ApiModelProperty("退款快递公司") - @Excel(name = "退款快递公司") - private String refundWpCode; - - @ApiModelProperty("退货快递号") - @Excel(name = "退货快递号") - private String refundWaybillCode; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/AftersaleItem.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/AftersaleItem.java deleted file mode 100644 index 80b1859..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/AftersaleItem.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.cyl.manager.oms.domain.entity; - -import java.math.BigDecimal; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 订单售后对象 oms_aftersale_item - * - * @author zcc - */ -@ApiModel(description="订单售后对象") -@Data -@TableName("oms_aftersale_item") -public class AftersaleItem extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("MEMBER_ID") - @Excel(name = "MEMBER_ID") - private Long memberId; - - @ApiModelProperty("售后单id") - @Excel(name = "售后单id") - private Long aftersaleId; - - @ApiModelProperty("订单id") - @Excel(name = "订单id") - private Long orderId; - - @ApiModelProperty("子订单id") - @Excel(name = "子订单id") - private Long orderItemId; - - @ApiModelProperty("退款金额") - @Excel(name = "退款金额") - private BigDecimal returnAmount; - - @ApiModelProperty("退货数量") - @Excel(name = "退货数量") - private Integer quantity; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/Order.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/Order.java deleted file mode 100644 index d2778b0..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/Order.java +++ /dev/null @@ -1,162 +0,0 @@ -package com.cyl.manager.oms.domain.entity; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -/** - * 订单表对象 oms_order - * - * @author zcc - */ -@ApiModel(description="订单表对象") -@Data -@TableName("oms_order") -public class Order extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("订单id") - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - @ApiModelProperty("支付id") - private Long payId; - - @ApiModelProperty("订单编号") - @Excel(name = "订单编号") - private String orderSn; - - @ApiModelProperty("MEMBER_ID") - @Excel(name = "MEMBER_ID") - private Long memberId; - - @ApiModelProperty("用户帐号") - @Excel(name = "用户帐号") - private String memberUsername; - - @ApiModelProperty("订单总金额") - @Excel(name = "订单总金额") - private BigDecimal totalAmount; - - @ApiModelProperty("采购价") - @Excel(name = "采购价") - private BigDecimal purchasePrice; - - @ApiModelProperty("应付金额(实际支付金额)") - @Excel(name = "应付金额", readConverterExp = "实=际支付金额") - private BigDecimal payAmount; - - @ApiModelProperty("运费金额") - @Excel(name = "运费金额") - private BigDecimal freightAmount; - - @ApiModelProperty("支付方式:0->未支付;1->支付宝;2->微信") - @Excel(name = "支付方式:0->未支付;1->支付宝;2->微信") - private Integer payType; - - @ApiModelProperty("订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") - @Excel(name = "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") - private Integer status; - - @ApiModelProperty("退款状态,枚举值:1:无售后或售后关闭,2:售后处理中,3:退款中,4: 退款成功") - @Excel(name = "退款状态,枚举值:1:无售后或售后关闭,2:售后处理中,3:退款中,4: 退款成功") - private Integer aftersaleStatus; - - @ApiModelProperty("物流公司(配送方式)") - @Excel(name = "物流公司(配送方式)") - private String deliveryCompany; - - @ApiModelProperty("物流单号") - @Excel(name = "物流单号") - private String deliverySn; - - @ApiModelProperty("自动确认时间(天)") - @Excel(name = "自动确认时间", readConverterExp = "天=") - private Integer autoConfirmDay; - - @ApiModelProperty("收货人姓名") - @Excel(name = "收货人姓名") - private String receiverName; - - @ApiModelProperty("收货人电话") - @Excel(name = "收货人电话") - private String receiverPhone; - - @ApiModelProperty("加密的手机号") - @Excel(name = "加密的手机号") - private String receiverPhoneEncrypted; - - @ApiModelProperty("收货人邮编") - @Excel(name = "收货人邮编") - private String receiverPostCode; - - @ApiModelProperty("省份/直辖市") - @Excel(name = "省份/直辖市") - private String receiverProvince; - - @ApiModelProperty("城市") - @Excel(name = "城市") - private String receiverCity; - - @ApiModelProperty("区") - @Excel(name = "区") - private String receiverDistrict; - - @ApiModelProperty("省份/直辖市id") - @Excel(name = "省份/直辖市id") - private Long receiverProvinceId; - - @ApiModelProperty("城市id") - @Excel(name = "城市id") - private Long receiverCityId; - - @ApiModelProperty("区id") - @Excel(name = "区id") - private Long receiverDistrictId; - - @ApiModelProperty("详细地址") - @Excel(name = "详细地址") - private String receiverDetailAddress; - - @ApiModelProperty("订单备注") - @Excel(name = "订单备注") - private String note; - - @ApiModelProperty("商家备注") - @Excel(name = "商家备注") - private String merchantNote; - - @ApiModelProperty("确认收货状态:0->未确认;1->已确认") - @Excel(name = "确认收货状态:0->未确认;1->已确认") - private Integer confirmStatus; - - @ApiModelProperty("删除状态:0->未删除;1->已删除") - @Excel(name = "删除状态:0->未删除;1->已删除") - private Integer deleteStatus; - - @ApiModelProperty("支付时间") - @Excel(name = "支付时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime paymentTime; - - @ApiModelProperty("发货时间") - @Excel(name = "发货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime deliveryTime; - - @ApiModelProperty("确认收货时间") - @Excel(name = "确认收货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime receiveTime; - - @ApiModelProperty("优惠券ID") - private Long memberCouponId; - - @ApiModelProperty("优惠券金额") - private BigDecimal couponAmount; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderDeliveryHistory.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderDeliveryHistory.java deleted file mode 100644 index 9ad6c5a..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderDeliveryHistory.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.cyl.manager.oms.domain.entity; - -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 订单发货记录对象 oms_order_delivery_history - * - * @author zcc - */ -@ApiModel(description="订单发货记录对象") -@Data -@TableName("oms_order_delivery_history") -public class OrderDeliveryHistory extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("订单id") - @Excel(name = "订单id") - private Long orderId; - - @ApiModelProperty("物流公司(配送方式)") - @Excel(name = "物流公司(配送方式)") - private String deliveryCompany; - - @ApiModelProperty("物流单号") - @Excel(name = "物流单号") - private String deliverySn; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderItem.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderItem.java deleted file mode 100644 index 7a82ffa..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderItem.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.cyl.manager.oms.domain.entity; - -import java.math.BigDecimal; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 订单中所包含的商品对象 oms_order_item - * - * @author zcc - */ -@ApiModel(description="订单中所包含的商品对象") -@Data -@TableName("oms_order_item") -public class OrderItem extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - @ApiModelProperty("订单id") - @Excel(name = "订单id") - private Long orderId; - - @ApiModelProperty("PRODUCT_ID") - @Excel(name = "PRODUCT_ID") - private Long productId; - - @ApiModelProperty("商品编码") - @Excel(name = "商品编码") - private String outProductId; - - @ApiModelProperty("商品sku id") - @Excel(name = "商品sku id") - private Long skuId; - - @ApiModelProperty("sku编码") - @Excel(name = "sku编码") - private String outSkuId; - - @ApiModelProperty("商品快照id") - @Excel(name = "商品快照id") - private Long productSnapshotId; - - @ApiModelProperty("sku快照id") - @Excel(name = "sku快照id") - private Long skuSnapshotId; - - @ApiModelProperty("展示图片") - @Excel(name = "展示图片") - private String pic; - - @ApiModelProperty("PRODUCT_NAME") - @Excel(name = "PRODUCT_NAME") - private String productName; - - @ApiModelProperty("销售价格") - @Excel(name = "销售价格") - private BigDecimal salePrice; - - @ApiModelProperty("采购价") - @Excel(name = "采购价") - private BigDecimal purchasePrice; - - @ApiModelProperty("购买数量") - @Excel(name = "购买数量") - private Integer quantity; - - @ApiModelProperty("商品分类id") - @Excel(name = "商品分类id") - private Long productCategoryId; - - @ApiModelProperty("商品sku属性:[{\"key\":\"颜色\",\"value\":\"颜色\"},{\"key\":\"容量\",\"value\":\"4G\"}]") - @Excel(name = "商品sku属性:[{\"key\":\"颜色\",\"value\":\"颜色\"},{\"key\":\"容量\",\"value\":\"4G\"}]") - private String spData; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderOperateHistory.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderOperateHistory.java deleted file mode 100644 index 2c47f3c..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/OrderOperateHistory.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.cyl.manager.oms.domain.entity; - -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 订单操作历史记录对象 oms_order_operate_history - * - * @author zcc - */ -@ApiModel(description="订单操作历史记录对象") -@Data -@TableName("oms_order_operate_history") -public class OrderOperateHistory extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("订单id") - @Excel(name = "订单id") - private Long orderId; - - @ApiModelProperty("订单号") - @Excel(name = "订单号") - private String orderSn; - - @ApiModelProperty("操作人:用户;系统;后台管理员") - @Excel(name = "操作人:用户;系统;后台管理员") - private String operateMan; - - @ApiModelProperty("订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") - @Excel(name = "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") - private Integer orderStatus; - - @ApiModelProperty("备注") - @Excel(name = "备注") - private String note; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/WechatPaymentHistory.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/WechatPaymentHistory.java deleted file mode 100644 index 22eb291..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/entity/WechatPaymentHistory.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.cyl.manager.oms.domain.entity; - -import java.math.BigDecimal; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 微信订单表对象 oms_wechat_payment_history - * - * @author zcc - */ -@ApiModel(description="微信订单表对象") -@Data -@TableName("oms_wechat_payment_history") -public class WechatPaymentHistory extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("payment_id") - @Excel(name = "payment_id") - private String paymentId; - - @ApiModelProperty("用户 ID") - @Excel(name = "用户 ID") - private Long memberId; - - @ApiModelProperty("OPENID") - @Excel(name = "OPENID") - private String openid; - - @ApiModelProperty("真实姓名,提现需要") - @Excel(name = "真实姓名,提现需要") - private String realName; - - @ApiModelProperty("标题|商品名称") - @Excel(name = "标题|商品名称") - private String title; - - @ApiModelProperty("订单号 支付时是payId 其他为orderId") - @Excel(name = "订单号 支付时是payId 其他为orderId") - private Long orderId; - - @ApiModelProperty("金额,单位分") - @Excel(name = "金额,单位分") - private BigDecimal money; - - @ApiModelProperty("交易类型(1为支付 2为提现 3为退款)") - @Excel(name = "交易类型", readConverterExp = "1=为支付,2=为提现,3=为退款") - private Integer opType; - - @ApiModelProperty("状态(0:未完成交易 1:完成关键交易)") - @Excel(name = "状态", readConverterExp = "0=:未完成交易,1=:完成关键交易") - private Integer paymentStatus; - - @ApiModelProperty("备注") - @Excel(name = "备注") - private String remark; - - @ApiModelProperty("附加数据") - @Excel(name = "附加数据") - private String attach; - - @ApiModelProperty("响应内容") - @Excel(name = "响应内容") - private String responseBody; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/DealWithAftersaleForm.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/DealWithAftersaleForm.java deleted file mode 100644 index 4b31f2a..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/DealWithAftersaleForm.java +++ /dev/null @@ -1,23 +0,0 @@ - package com.cyl.manager.oms.domain.form; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - - - @Data - @ApiModel(value = "商城售后订单处理操作请求体") - public class DealWithAftersaleForm { - @ApiModelProperty(name = "orderId",value = "订单id",required = true,dataType = "Long") - @NotBlank(message = "订单id不能为空") - private Long orderId; - - @ApiModelProperty(name = "optType",value = "操作类型 1同意 2拒绝 3确认收货",required = true,dataType = "String") - @NotNull(message = "操作类型不能为空") - private Integer optType; - - @ApiModelProperty(name = "remark",value = "拒绝理由 操作类型为2时必填",required = true,dataType = "String") - private String remark; - } \ No newline at end of file diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/DeliverProductForm.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/DeliverProductForm.java deleted file mode 100644 index 144e843..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/DeliverProductForm.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.cyl.manager.oms.domain.form; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; - -import javax.validation.constraints.NotBlank; - -@Getter -@Setter -public class DeliverProductForm { - @ApiModelProperty("订单id") - @NotBlank(message = "订单id不能为空") - @Excel(name = "订单号") - private Long orderId; - - @ApiModelProperty("快递名称") - @NotBlank(message = "快递名称不能为空") - @Excel(name = "快递公司") - private String expressName; - - @ApiModelProperty("快递单号") - @NotBlank(message = "快递单号不能为空") - @Excel(name = "运单号") - private String expressSn; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/ManagerAftersaleOrderForm.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/ManagerAftersaleOrderForm.java deleted file mode 100644 index e2daeb7..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/ManagerAftersaleOrderForm.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.cyl.manager.oms.domain.form; - -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import org.springframework.format.annotation.DateTimeFormat; - -import java.time.LocalDateTime; - - -@Data -@ApiModel(value = "商城订单请求体") -public class ManagerAftersaleOrderForm { - - @ApiModelProperty(name = "id", value = "售后单号", required = true, dataType = "Long") - private Long id; - - @ApiModelProperty(name = "orderSn", value = "订单号", required = true, dataType = "String") - private String orderSn; - - @ApiModelProperty(name = "userPhone", value = "用户名称(手机号)", required = true, dataType = "String") - private String userPhone; - - @ApiModelProperty(name = "status", value = "售后申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝;4->用户取消", required = true, dataType = "String") - private Integer status; - - @ApiModelProperty(name = "type", value = "售后类型:1->退款;2->退货退款", required = true, dataType = "String") - private Integer type; - - @ApiModelProperty(name = "startTime", value = "开始时间", required = true, dataType = "Date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime startTime; - - @ApiModelProperty(name = "endTime", value = "结束时间", required = true, dataType = "Date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime endTime; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/ManagerOrderQueryForm.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/ManagerOrderQueryForm.java deleted file mode 100644 index 3711ae3..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/form/ManagerOrderQueryForm.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.cyl.manager.oms.domain.form; - -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import org.springframework.format.annotation.DateTimeFormat; - -import java.time.LocalDateTime; - -@Data -@ApiModel("后台订单查询请求体") -public class ManagerOrderQueryForm { - @ApiModelProperty(name = "orderId", value = "订单id", required = true, dataType = "Long") - private Long orderId; - - @ApiModelProperty(name = "orderSn", value = "订单编号", required = true, dataType = "String") - private String orderSn; - - - @ApiModelProperty(name = "productId", value = "商品id", required = true, dataType = "Long") - private Long productId; - - @ApiModelProperty(name = "productName", value = "商品名称", required = true, dataType = "String") - private String productName; - - @ApiModelProperty(name = "userPhone", value = "用户名称(手机号)", required = true, dataType = "String") - private String userPhone; - - @ApiModelProperty(name = "payType", value = "支付方式 0->未支付;1->支付宝;2->微信", required = true, dataType = "Integer") - private Integer payType; - - @ApiModelProperty(name = "status", value = "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单", required = true, dataType = "String") - private Integer status; - - @ApiModelProperty("省份/直辖市 精确匹配") - private String receiverProvince; - - @ApiModelProperty("城市 精确匹配") - private String receiverCity; - - @ApiModelProperty("区 精确匹配") - private String receiverDistrict; - - @ApiModelProperty(name = "startTime", value = "开始时间", required = true, dataType = "Date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime startTime; - - @ApiModelProperty(name = "endTime", value = "结束时间", required = true, dataType = "Date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime endTime; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/AftersaleItemQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/AftersaleItemQuery.java deleted file mode 100644 index c3ced9f..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/AftersaleItemQuery.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.cyl.manager.oms.domain.query; - -import java.math.BigDecimal; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 订单售后 查询 对象 - * - * @author zcc - */ -@ApiModel(description="订单售后 查询 对象") -@Data -public class AftersaleItemQuery { - @ApiModelProperty("MEMBER_ID 精确匹配") - private Long memberId; - - @ApiModelProperty("订单id 精确匹配") - private Long orderId; - - @ApiModelProperty("子订单id 精确匹配") - private Long orderItemId; - - @ApiModelProperty("退款金额 精确匹配") - private BigDecimal returnAmount; - - @ApiModelProperty("退货数量 精确匹配") - private Integer quantity; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/AftersaleQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/AftersaleQuery.java deleted file mode 100644 index e0cfa2c..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/AftersaleQuery.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.cyl.manager.oms.domain.query; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 订单售后 查询 对象 - * - * @author zcc - */ -@ApiModel(description="订单售后 查询 对象") -@Data -public class AftersaleQuery { - @ApiModelProperty("MEMBER_ID 精确匹配") - private Long memberId; - - @ApiModelProperty("订单id 精确匹配") - private Long orderId; - - @ApiModelProperty("退款金额 精确匹配") - private BigDecimal returnAmount; - - @ApiModelProperty("售后类型:1:退款,2:退货退款 精确匹配") - private Integer type; - - @ApiModelProperty("申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝 精确匹配") - private Integer status; - - @ApiModelProperty("处理时间 精确匹配") - private LocalDateTime handleTime; - - @ApiModelProperty("退货数量 精确匹配") - private Integer quantity; - - @ApiModelProperty("原因 精确匹配") - private String reason; - - @ApiModelProperty("描述 精确匹配") - private String description; - - @ApiModelProperty("凭证图片,以逗号隔开 精确匹配") - private String proofPics; - - @ApiModelProperty("处理备注 精确匹配") - private String handleNote; - - @ApiModelProperty("处理人员 精确匹配") - private String handleMan; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderDeliveryHistoryQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderDeliveryHistoryQuery.java deleted file mode 100644 index 97c9799..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderDeliveryHistoryQuery.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.cyl.manager.oms.domain.query; - -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 订单发货记录 查询 对象 - * - * @author zcc - */ -@ApiModel(description="订单发货记录 查询 对象") -@Data -public class OrderDeliveryHistoryQuery { - @ApiModelProperty("订单id 精确匹配") - private Long orderId; - - @ApiModelProperty("物流公司 精确匹配") - private String deliveryCompany; - - @ApiModelProperty("物流单号 精确匹配") - private String deliverySn; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderItemQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderItemQuery.java deleted file mode 100644 index 3ad70ca..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderItemQuery.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.cyl.manager.oms.domain.query; - -import java.math.BigDecimal; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 订单中所包含的商品 查询 对象 - * - * @author zcc - */ -@ApiModel(description="订单中所包含的商品 查询 对象") -@Data -public class OrderItemQuery { - @ApiModelProperty("订单id 精确匹配") - private Long orderId; - - @ApiModelProperty("PRODUCT_ID 精确匹配") - private Long productId; - - @ApiModelProperty("商品编码 精确匹配") - private String outProductId; - - @ApiModelProperty("商品sku id 精确匹配") - private Long skuId; - - @ApiModelProperty("sku编码 精确匹配") - private String outSkuId; - - @ApiModelProperty("商品快照id 精确匹配") - private Long productSnapshotId; - - @ApiModelProperty("sku快照id 精确匹配") - private Long skuSnapshotId; - - @ApiModelProperty("展示图片 精确匹配") - private String pic; - - @ApiModelProperty("PRODUCT_NAME 精确匹配") - private String productNameLike; - - @ApiModelProperty("销售价格 精确匹配") - private BigDecimal salePrice; - - @ApiModelProperty("采购价 精确匹配") - private BigDecimal purchasePrice; - - @ApiModelProperty("购买数量 精确匹配") - private Integer quantity; - - @ApiModelProperty("商品分类id 精确匹配") - private Long productCategoryId; - - @ApiModelProperty("商品sku属性:[{\"key\":\"颜色\",\"value\":\"颜色\"},{\"key\":\"容量\",\"value\":\"4G\"}] 精确匹配") - private String spData; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderOperateHistoryQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderOperateHistoryQuery.java deleted file mode 100644 index 53e7d47..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderOperateHistoryQuery.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.cyl.manager.oms.domain.query; - -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 订单操作历史记录 查询 对象 - * - * @author zcc - */ -@ApiModel(description="订单操作历史记录 查询 对象") -@Data -public class OrderOperateHistoryQuery { - @ApiModelProperty("订单号 精确匹配") - private String orderSn; - - @ApiModelProperty("操作人:用户;系统;后台管理员 精确匹配") - private String operateMan; - - @ApiModelProperty("订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单 精确匹配") - private Integer orderStatus; - - @ApiModelProperty("备注 精确匹配") - private String note; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderQuery.java deleted file mode 100644 index 98b2f21..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/OrderQuery.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.cyl.manager.oms.domain.query; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 订单表 查询 对象 - * - * @author zcc - */ -@ApiModel(description="订单表 查询 对象") -@Data -public class OrderQuery { - @ApiModelProperty("MEMBER_ID 精确匹配") - private Long memberId; - - @ApiModelProperty("用户帐号 精确匹配") - private String memberUsernameLike; - - @ApiModelProperty("订单总金额 精确匹配") - private BigDecimal totalAmount; - - @ApiModelProperty("采购价 精确匹配") - private BigDecimal purchasePrice; - - @ApiModelProperty("应付金额(实际支付金额) 精确匹配") - private BigDecimal payAmount; - - @ApiModelProperty("运费金额 精确匹配") - private BigDecimal freightAmount; - - @ApiModelProperty("支付方式:0->未支付;1->支付宝;2->微信 精确匹配") - private Integer payType; - - @ApiModelProperty("订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单 精确匹配") - private Integer status; - - @ApiModelProperty("退款状态,枚举值:1:无售后或售后关闭,2:售后处理中,3:退款中,4: 退款成功 精确匹配") - private Integer aftersaleStatus; - - @ApiModelProperty("物流公司 精确匹配") - private String deliveryCompany; - - @ApiModelProperty("物流单号 精确匹配") - private String deliverySn; - - @ApiModelProperty("自动确认时间(天) 精确匹配") - private Integer autoConfirmDay; - - @ApiModelProperty("收货人姓名 精确匹配") - private String receiverNameLike; - - @ApiModelProperty("收货人电话 精确匹配") - private String receiverPhone; - - @ApiModelProperty("收货人邮编 精确匹配") - private String receiverPostCode; - - @ApiModelProperty("省份/直辖市 精确匹配") - private String receiverProvince; - - @ApiModelProperty("城市 精确匹配") - private String receiverCity; - - @ApiModelProperty("区 精确匹配") - private String receiverDistrict; - - @ApiModelProperty("省份/直辖市id 精确匹配") - private Long receiverProvinceId; - - @ApiModelProperty("城市id 精确匹配") - private Long receiverCityId; - - @ApiModelProperty("区id 精确匹配") - private Long receiverDistrictId; - - @ApiModelProperty("详细地址 精确匹配") - private String receiverDetailAddress; - - @ApiModelProperty("订单备注 精确匹配") - private String note; - - @ApiModelProperty("确认收货状态:0->未确认;1->已确认 精确匹配") - private Integer confirmStatus; - - @ApiModelProperty("删除状态:0->未删除;1->已删除 精确匹配") - private Integer deleteStatus; - - @ApiModelProperty("支付时间 精确匹配") - private LocalDateTime paymentTime; - - @ApiModelProperty("发货时间 精确匹配") - private LocalDateTime deliveryTime; - - @ApiModelProperty("确认收货时间 精确匹配") - private LocalDateTime receiveTime; - - @ApiModelProperty("创建订单开始时间") - private LocalDateTime startTime; - - @ApiModelProperty("创建订单结束时间") - private LocalDateTime endTime; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/WechatPaymentHistoryQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/WechatPaymentHistoryQuery.java deleted file mode 100644 index daf4151..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/query/WechatPaymentHistoryQuery.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.cyl.manager.oms.domain.query; - -import java.math.BigDecimal; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 微信订单表 查询 对象 - * - * @author zcc - */ -@ApiModel(description="微信订单表 查询 对象") -@Data -public class WechatPaymentHistoryQuery { - @ApiModelProperty("payment_id 精确匹配") - private String paymentId; - - @ApiModelProperty("用户 ID 精确匹配") - private Long memberId; - - @ApiModelProperty("OPENID 精确匹配") - private String openid; - - @ApiModelProperty("真实姓名,提现需要 精确匹配") - private String realNameLike; - - @ApiModelProperty("标题|商品名称 精确匹配") - private String title; - - @ApiModelProperty("订单号 支付时是payId 其他为orderId 精确匹配") - private Long orderId; - - @ApiModelProperty("金额,单位分 精确匹配") - private BigDecimal money; - - @ApiModelProperty("交易类型(1为支付 2为提现 3为退款) 精确匹配") - private Integer opType; - - @ApiModelProperty("状态(0:未完成交易 1:完成关键交易) 精确匹配") - private Integer paymentStatus; - - @ApiModelProperty("附加数据 精确匹配") - private String attach; - - @ApiModelProperty("响应内容 精确匹配") - private String responseBody; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/AftersaleItemVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/AftersaleItemVO.java deleted file mode 100644 index d695fcc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/AftersaleItemVO.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import java.math.BigDecimal; -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * 订单售后 数据视图对象 - * - * @author zcc - */ -@Data -public class AftersaleItemVO extends BaseAudit { - /** ID */ - private Long id; - /** MEMBER_ID */ - @Excel(name = "MEMBER_ID") - private Long memberId; - /** 售后单id */ - @Excel(name = "售后单id") - private Long aftersaleId; - /** 订单id */ - @Excel(name = "订单id") - private Long orderId; - /** 子订单id */ - @Excel(name = "子订单id") - private Long orderItemId; - /** 退款金额 */ - @Excel(name = "退款金额") - private BigDecimal returnAmount; - /** 退货数量 */ - @Excel(name = "退货数量") - private Integer quantity; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/AftersaleVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/AftersaleVO.java deleted file mode 100644 index dfc8494..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/AftersaleVO.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * 订单售后 数据视图对象 - * - * @author zcc - */ -@Data -public class AftersaleVO extends BaseAudit { - /** ID */ - private Long id; - /** MEMBER_ID */ - @Excel(name = "MEMBER_ID") - private Long memberId; - /** 订单id */ - @Excel(name = "订单id") - private Long orderId; - /** 退款金额 */ - @Excel(name = "退款金额") - private BigDecimal returnAmount; - /** 售后类型:1:退款,2:退货退款 */ - @Excel(name = "售后类型:1:退款,2:退货退款") - private Integer type; - /** 申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝 */ - @Excel(name = "申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝") - private Integer status; - /** 处理时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "处理时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime handleTime; - /** 退货数量 */ - @Excel(name = "退货数量") - private Integer quantity; - /** 原因 */ - @Excel(name = "原因") - private String reason; - /** 描述 */ - @Excel(name = "描述") - private String description; - /** 凭证图片,以逗号隔开 */ - @Excel(name = "凭证图片,以逗号隔开") - private String proofPics; - /** 处理备注 */ - @Excel(name = "处理备注") - private String handleNote; - /** 处理人员 */ - @Excel(name = "处理人员") - private String handleMan; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderAddressVo.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderAddressVo.java deleted file mode 100644 index 5ddd4b3..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderAddressVo.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; - -/** - * @author: Jinxin - * @date: 2022/4/22 14:12 - * @Description: - */ -@Getter -@Setter -@ApiModel("订单收获地址") -public class ManagerOrderAddressVo { - @ApiModelProperty("收货人姓名") - private String name; - @ApiModelProperty("收货人手机号") - private String userPhone; - @ApiModelProperty("收获区域") - private String area; - @ApiModelProperty("详细地址") - private String address; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderDetailVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderDetailVO.java deleted file mode 100644 index 1e1d80b..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderDetailVO.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.List; - -@Data -@ApiModel("后台订单详情对象") -public class ManagerOrderDetailVO { - @ApiModelProperty("订单id") - private Long orderId; - @ApiModelProperty("订单编号") - private String orderSn; - @ApiModelProperty("用户昵称") - private String userName; - @ApiModelProperty("用户手机号") - private String userPhone; - @ApiModelProperty("下单时间") - private LocalDateTime createTime; - @ApiModelProperty("支付方式:0->未支付;1->支付宝;2->微信") - private Integer payType; - @ApiModelProperty("支付时间") - private LocalDateTime payTime; - @ApiModelProperty("订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") - private Integer orderStatus; - @ApiModelProperty("订单收获地址信息") - private ManagerOrderAddressVo addressInfo; - @ApiModelProperty("订单商品信息") - private List productInfo; - @ApiModelProperty("发货时间") - private LocalDateTime deliveryTime; - @ApiModelProperty("收货时间") - private LocalDateTime receiveTime; - @ApiModelProperty("物流单号") - private String expressNo; - @ApiModelProperty("物流名称") - private String expressName; - @ApiModelProperty("支付金额") - private BigDecimal payAmount; - @ApiModelProperty("订单金额") - private BigDecimal totalAmount; - private BigDecimal couponAmount; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderProductVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderProductVO.java deleted file mode 100644 index 69bd1a4..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderProductVO.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; - -@Data -@ApiModel("订单") -public class ManagerOrderProductVO { - @ApiModelProperty("商品id") - private Long productId; - @ApiModelProperty("商品名称") - private String productName; - @ApiModelProperty("商品规格") - private String spData; - @ApiModelProperty("商品图片") - private String pic; - @ApiModelProperty("购买数量") - private Integer buyNum; - @ApiModelProperty("销售价格") - private BigDecimal salePrice; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderVO.java deleted file mode 100644 index 9e1ab38..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerOrderVO.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.List; - -@Data -@ApiModel(value = "管理后台订单VO") -public class ManagerOrderVO { - @ApiModelProperty(name = "id",value = "订单id",required = true,dataType = "Long") - private Long id; - @ApiModelProperty(name = "orderSn",value = "订单编号",required = true,dataType = "String") - private String orderSn; - @ApiModelProperty(name = "productId",value = "商品id",required = true,dataType = "Long") - private Long productId; - - @ApiModelProperty(name = "productName",value = "商品名称",required = true,dataType = "String") - private String productName; - - @ApiModelProperty(name = "userPhone",value = "用户账号",required = true,dataType = "String") - private String userPhone; - - @ApiModelProperty(name = "nickName",value = "用户昵称",required = true,dataType = "String") - private String nickName; - - @ApiModelProperty(name = "avatar",value = "用户头像",required = true,dataType = "String") - private String avatar; - - @ApiModelProperty(name = "status",value = "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单",required = true,dataType = "Integer") - private Integer status; - - @ApiModelProperty("退款状态,枚举值:1:无售后或售后关闭,2:售后处理中,3:退款中,4: 退款成功") - private Integer aftersaleStatus; - - @ApiModelProperty(name = "pic",value = "商品图片",required = true,dataType = "String") - private String pic; - - @ApiModelProperty(name = "userName",value = "用户名称",required = true,dataType = "String") - private String userName; - - @ApiModelProperty(name = "buyNum",value = "购买数量",required = true,dataType = "Integer") - private Integer buyNum; - - @ApiModelProperty(name = "totalAmount",value = "订单总金额",required = true,dataType = "BigDecimal") - private BigDecimal totalAmount; - - @ApiModelProperty(name = "payAmount",value = "应付金额",required = true,dataType = "BigDecimal") - private BigDecimal payAmount; - - @ApiModelProperty(name = "createTime",value = "下单时间",required = true,dataType = "Date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime createTime; - - @ApiModelProperty(name = "payTime",value = "支付时间",required = true,dataType = "Date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime payTime; - - @ApiModelProperty(name = "payType",value = "支付方式 支付方式:0->未支付;1->支付宝;2->微信",required = true,dataType = "Integer") - private Integer payType; - - @ApiModelProperty(name = "receiveTime",value = "确认收货时间",required = true,dataType = "Date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime receiveTime; - - @ApiModelProperty(name = "note",value = "备注",required = true,dataType = "String") - private String note; - - @ApiModelProperty("商家备注") - private String merchantNote; - - @ApiModelProperty(name = "spData",value = "商品sku属性",required = true,dataType = "String") - private String spData; - - @ApiModelProperty(name = "productInfo", value = "订单商品数据") - private List productList; - - @ApiModelProperty(name = "deliveryTime",value = "发货时间",required = true,dataType = "LocalDataTime") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime deliveryTime; - - @ApiModelProperty(name = "deliverySn",value = "物流单号",required = true,dataType = "String") - private String deliverySn; - - private String receiverName; - - private String receiverPhone; - - private String receiverProvince; - - private String receiverCity; - - private String receiverDistrict; - - private String receiverDetailAddress; - - private String mark; - - private BigDecimal couponAmount; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerRefundOrderDetailVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerRefundOrderDetailVO.java deleted file mode 100644 index bbfcb1f..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerRefundOrderDetailVO.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.List; - -/** - * @author: Jinxin - * @date: 2022/4/22 14:12 - * @Description: - */ -@Data -@ApiModel("售后订单详情") -public class ManagerRefundOrderDetailVO { - @ApiModelProperty("订单id") - private Long orderId; - @ApiModelProperty("订单号") - private String orderSn; - @ApiModelProperty("用户昵称") - private String nickName; - @ApiModelProperty("用户手机号") - private String phone; - @ApiModelProperty("下单时间") - private LocalDateTime createTime; - @ApiModelProperty("支付方式:0->未支付;1->支付宝;2->微信") - private Integer payType; - @ApiModelProperty("支付时间") - private LocalDateTime payTime; - @ApiModelProperty("订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") - private Integer status; - @ApiModelProperty("订单收获地址信息") - private OrderAddressVO addressInfo; - @ApiModelProperty("订单商品信息") - private List productList; - @ApiModelProperty("售后信息") - private List refundInfoList; - @ApiModelProperty("退货时间") - private LocalDateTime deliveryTime; - @ApiModelProperty("物流单号") - private String expressNo; - @ApiModelProperty("物流名称") - private String expressName; - @ApiModelProperty("订单总金额") - private BigDecimal totalAmount; - @ApiModelProperty("应付金额(实际支付金额)") - private BigDecimal payAmount; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerRefundOrderVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerRefundOrderVO.java deleted file mode 100644 index e627661..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/ManagerRefundOrderVO.java +++ /dev/null @@ -1,86 +0,0 @@ - package com.cyl.manager.oms.domain.vo; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.List; - - - @Data - @ApiModel(value = "售后订单vo") - public class ManagerRefundOrderVO { - @ApiModelProperty(name = "id",value = "售后单id",required = true,dataType = "Long") - private Long id; - - @ApiModelProperty(name = "orderId",value = "订单id",required = true,dataType = "Long") - private Long orderId; - - @ApiModelProperty(name = "orderSn",value = "订单号",required = true,dataType = "String") - private String orderSn; - - @ApiModelProperty(name = "payId",value = "支付ID",required = true,dataType = "Long") - private Long payId; - - @ApiModelProperty(name = "phone",value = "用户手机号",required = true,dataType = "String") - private String phone; - - @ApiModelProperty(name = "nickName",value = "用户昵称",required = true,dataType = "String") - private String nickName; - - @ApiModelProperty(name = "status",value = "订单状态 0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单",required = true,dataType = "Integer") - private Integer status; - - @ApiModelProperty(name = "userName",value = "用户名称",required = true,dataType = "String") - private String userName; - - @ApiModelProperty(name = "payTime",value = "支付时间",required = true,dataType = "String") - private String payTime; - - @ApiModelProperty(name = "payType",value = "支付方式 支付方式:0->未支付;1->支付宝;2->微信",required = true,dataType = "Integer") - private Integer payType; - - @ApiModelProperty(name = "applyRefundTime",value = "申请售后的时间",required = true,dataType = "String") - private String applyRefundTime; - - @ApiModelProperty(name = "refundFinishTime",value = "售后完成的时间",required = true,dataType = "String") - private String refundFinishTime; - - @ApiModelProperty(name = "aftersaleStatus",value = "0->待处理;1->退货中;2->已完成;3->已拒绝; 4->用户取消",required = true,dataType = "String") - private Integer aftersaleStatus; - @ApiModelProperty(name = "note",value = "备注",required = true,dataType = "String") - private String note; - @ApiModelProperty(name = "applyRefundAmount",value = "退款金额",required = true,dataType = "BigDecimal") - private BigDecimal applyReturnAmount; - @ApiModelProperty(name = "refundNum",value = "退款数量",required = true,dataType = "Integer") - private Integer refundNum; - - @ApiModelProperty(name = "applyRefundType",value = "申请退货方式:1-仅退款,2-退货退款",required = true,dataType = "String") - private Integer applyRefundType; - @ApiModelProperty(name = "handleTime",value = "处理时间",required = true,dataType = "LocalDateTime") - private LocalDateTime handleTime; - - @ApiModelProperty(name = "reason",value = "原因",required = true,dataType = "String") - private String reason; - - @ApiModelProperty(name = "description",value = "描述",required = true,dataType = "String") - private String description; - - @ApiModelProperty(name = "proofPics",value = "凭证图片",required = true,dataType = "String") - private String proofPics; - - @ApiModelProperty(name = "productInfo", value = "售后单商品数据") - private List productList; - - @ApiModelProperty(name = "handleMan", value = "处理人员") - private String handleMan; - - private String mark; - - private String refundWpCode; - - @ApiModelProperty("退货快递号") - private String refundWaybillCode; - } diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderAddressVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderAddressVO.java deleted file mode 100644 index ff1caaf..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderAddressVO.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; - -/** - * @author: Jinxin - * @date: 2022/4/22 14:12 - * @Description: - */ -@Getter -@Setter -@ApiModel("订单收获地址") -public class OrderAddressVO { - @ApiModelProperty("收货人姓名") - private String name; - @ApiModelProperty("收货人手机号") - private String userPhone; - @ApiModelProperty("收获区域") - private String area; - @ApiModelProperty("详细地址") - private String address; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderDeliveryHistoryVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderDeliveryHistoryVO.java deleted file mode 100644 index ed5f8c9..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderDeliveryHistoryVO.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * 订单发货记录 数据视图对象 - * - * @author zcc - */ -@Data -public class OrderDeliveryHistoryVO extends BaseAudit { - /** ID */ - private Long id; - /** 订单id */ - @Excel(name = "订单id") - private Long orderId; - /** 物流公司(配送方式) */ - @Excel(name = "物流公司(配送方式)") - private String deliveryCompany; - /** 物流单号 */ - @Excel(name = "物流单号") - private String deliverySn; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderItemVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderItemVO.java deleted file mode 100644 index db05372..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderItemVO.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import java.math.BigDecimal; -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * 订单中所包含的商品 数据视图对象 - * - * @author zcc - */ -@Data -public class OrderItemVO extends BaseAudit { - /** ID */ - private Long id; - /** 订单id */ - @Excel(name = "订单id") - private Long orderId; - /** PRODUCT_ID */ - @Excel(name = "PRODUCT_ID") - private Long productId; - /** 商品编码 */ - @Excel(name = "商品编码") - private String outProductId; - /** 商品sku id */ - @Excel(name = "商品sku id") - private Long skuId; - /** sku编码 */ - @Excel(name = "sku编码") - private String outSkuId; - /** 商品快照id */ - @Excel(name = "商品快照id") - private Long productSnapshotId; - /** sku快照id */ - @Excel(name = "sku快照id") - private Long skuSnapshotId; - /** 展示图片 */ - @Excel(name = "展示图片") - private String pic; - /** PRODUCT_NAME */ - @Excel(name = "PRODUCT_NAME") - private String productName; - /** 销售价格 */ - @Excel(name = "销售价格") - private BigDecimal salePrice; - /** 采购价 */ - @Excel(name = "采购价") - private BigDecimal purchasePrice; - /** 购买数量 */ - @Excel(name = "购买数量") - private Integer quantity; - /** 商品分类id */ - @Excel(name = "商品分类id") - private Long productCategoryId; - /** 商品sku属性:[{\"key\":\"颜色\",\"value\":\"颜色\"},{\"key\":\"容量\",\"value\":\"4G\"}] */ - @Excel(name = "商品sku属性:[{\"key\":\"颜色\",\"value\":\"颜色\"},{\"key\":\"容量\",\"value\":\"4G\"}]") - private String spData; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderOperateHistoryVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderOperateHistoryVO.java deleted file mode 100644 index 62074a1..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderOperateHistoryVO.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * 订单操作历史记录 数据视图对象 - * - * @author zcc - */ -@Data -public class OrderOperateHistoryVO extends BaseAudit { - /** ID */ - private Long id; - /** 订单id */ - @Excel(name = "订单id") - private Long orderId; - /** 订单号 */ - @Excel(name = "订单号") - private String orderSn; - /** 操作人:用户;系统;后台管理员 */ - @Excel(name = "操作人:用户;系统;后台管理员") - private String operateMan; - /** 订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单 */ - @Excel(name = "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") - private Integer orderStatus; - /** 备注 */ - @Excel(name = "备注") - private String note; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderVO.java deleted file mode 100644 index 1d0231d..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/OrderVO.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.List; - -import com.cyl.manager.oms.domain.entity.OrderItem; -import com.ruoyi.common.annotation.Excel; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * 订单表 数据视图对象 - * - * @author zcc - */ -@Data -public class OrderVO extends BaseAudit { - /** 订单id */ - private Long id; - /** 支付id */ - private Long payId; - /** 订单编号 */ - private String orderSn; - /** MEMBER_ID */ - @Excel(name = "MEMBER_ID") - private Long memberId; - /** 用户帐号 */ - @Excel(name = "用户帐号") - private String memberUsername; - /** 订单总金额 */ - @Excel(name = "订单总金额") - private BigDecimal totalAmount; - /** 采购价 */ - @Excel(name = "采购价") - private BigDecimal purchasePrice; - /** 应付金额(实际支付金额) */ - @Excel(name = "应付金额", readConverterExp = "实=际支付金额") - private BigDecimal payAmount; - /** 运费金额 */ - @Excel(name = "运费金额") - private BigDecimal freightAmount; - /** 支付方式:0->未支付;1->支付宝;2->微信 */ - @Excel(name = "支付方式:0->未支付;1->支付宝;2->微信") - private Integer payType; - /** 订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单 */ - @Excel(name = "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单") - private Integer status; - /** 退款状态,枚举值:1:无售后或售后关闭,2:售后处理中,3:退款中,4: 退款成功 */ - @Excel(name = "退款状态,枚举值:1:无售后或售后关闭,2:售后处理中,3:退款中,4: 退款成功") - private Integer aftersaleStatus; - /** 物流公司(配送方式) */ - @Excel(name = "物流公司(配送方式)") - private String deliveryCompany; - /** 物流单号 */ - @Excel(name = "物流单号") - private String deliverySn; - /** 自动确认时间(天) */ - @Excel(name = "自动确认时间", readConverterExp = "天=") - private Integer autoConfirmDay; - /** 收货人姓名 */ - @Excel(name = "收货人姓名") - private String receiverName; - /** 收货人电话 */ - @Excel(name = "收货人电话") - private String receiverPhone; - /** 收货人邮编 */ - @Excel(name = "收货人邮编") - private String receiverPostCode; - /** 省份/直辖市 */ - @Excel(name = "省份/直辖市") - private String receiverProvince; - /** 城市 */ - @Excel(name = "城市") - private String receiverCity; - /** 区 */ - @Excel(name = "区") - private String receiverDistrict; - /** 省份/直辖市id */ - @Excel(name = "省份/直辖市id") - private Long receiverProvinceId; - /** 城市id */ - @Excel(name = "城市id") - private Long receiverCityId; - /** 区id */ - @Excel(name = "区id") - private Long receiverDistrictId; - /** 详细地址 */ - @Excel(name = "详细地址") - private String receiverDetailAddress; - /** 订单备注 */ - @Excel(name = "订单备注") - private String note; - /** 确认收货状态:0->未确认;1->已确认 */ - @Excel(name = "确认收货状态:0->未确认;1->已确认") - private Integer confirmStatus; - /** 删除状态:0->未删除;1->已删除 */ - @Excel(name = "删除状态:0->未删除;1->已删除") - private Integer deleteStatus; - /** 支付时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "支付时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime paymentTime; - /** 发货时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "发货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime deliveryTime; - /** 确认收货时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "确认收货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime receiveTime; - private List items; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/RefundInfoVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/RefundInfoVO.java deleted file mode 100644 index 85bdce3..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/RefundInfoVO.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; - -import java.math.BigDecimal; -import java.time.LocalDateTime; - -/** - * @author: Jinxin - * @date: 2022/4/22 14:12 - * @Description: - */ -@Getter -@Setter -@ApiModel("售后信息") -public class RefundInfoVO { - @ApiModelProperty("退款单号") - private Long id; - @ApiModelProperty("申请退货方式:1-仅退款,2-退货退款") - private Integer applyRefundType; - @ApiModelProperty("申请售后时间") - private LocalDateTime applyRefundTime; - @ApiModelProperty("售后金额") - private BigDecimal refundAmount; - @ApiModelProperty("申请原因") - private String reason; - @ApiModelProperty("描述") - private String description; - @ApiModelProperty("凭证") - private String proofPics; - @ApiModelProperty("申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝; 4->用户取消") - private Integer refundStatus; - @ApiModelProperty("平台拒绝理由") - private String remark; - @ApiModelProperty("物流单号") - private String expressNo; - @ApiModelProperty("物流名称") - private String expressName; - @ApiModelProperty("最新物流数据") - private String logistics; - @ApiModelProperty("所有物流信息 JSON格式") - private String allLogistics; - private String refundWpCode; - - @ApiModelProperty("退货快递号") - private String refundWaybillCode; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/WechatPaymentHistoryVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/WechatPaymentHistoryVO.java deleted file mode 100644 index 20c7d19..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/domain/vo/WechatPaymentHistoryVO.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.cyl.manager.oms.domain.vo; - -import java.math.BigDecimal; -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * 微信订单表 数据视图对象 - * - * @author zcc - */ -@Data -public class WechatPaymentHistoryVO extends BaseAudit { - /** ID */ - private Long id; - /** payment_id */ - @Excel(name = "payment_id") - private String paymentId; - /** 用户 ID */ - @Excel(name = "用户 ID") - private Long memberId; - /** OPENID */ - @Excel(name = "OPENID") - private String openid; - /** 真实姓名,提现需要 */ - @Excel(name = "真实姓名,提现需要") - private String realName; - /** 标题|商品名称 */ - @Excel(name = "标题|商品名称") - private String title; - /** 订单号 支付时是payId 其他为orderId */ - @Excel(name = "订单号 支付时是payId 其他为orderId") - private Long orderId; - /** 金额,单位分 */ - @Excel(name = "金额,单位分") - private BigDecimal money; - /** 交易类型(1为支付 2为提现 3为退款) */ - @Excel(name = "交易类型", readConverterExp = "1=为支付,2=为提现,3=为退款") - private Integer opType; - /** 状态(0:未完成交易 1:完成关键交易) */ - @Excel(name = "状态", readConverterExp = "0=:未完成交易,1=:完成关键交易") - private Integer paymentStatus; - /** 备注 */ - @Excel(name = "备注") - private String remark; - /** 附加数据 */ - @Excel(name = "附加数据") - private String attach; - /** 响应内容 */ - @Excel(name = "响应内容") - private String responseBody; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/AftersaleItemMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/AftersaleItemMapper.java deleted file mode 100644 index f81ae21..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/AftersaleItemMapper.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.cyl.manager.oms.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.oms.domain.entity.AftersaleItem; -import org.apache.ibatis.annotations.Param; - -/** - * 订单售后Mapper接口 - * - * @author zcc - */ -public interface AftersaleItemMapper extends BaseMapper { - /** - * 查询订单售后列表 - * - * @param aftersaleItem 订单售后 - * @return 订单售后集合 - */ - List selectByEntity(AftersaleItem aftersaleItem); - - Integer insertBatch(@Param("list") List list); - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/AftersaleMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/AftersaleMapper.java deleted file mode 100644 index c886d75..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/AftersaleMapper.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.cyl.manager.oms.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.oms.domain.entity.Aftersale; -import com.cyl.manager.oms.domain.form.ManagerAftersaleOrderForm; -import com.cyl.manager.oms.domain.vo.ManagerRefundOrderVO; -import com.cyl.manager.statistics.domain.vo.OrderAndAftersaleStatisticsVO; - -/** - * 订单售后Mapper接口 - * - * @author zcc - */ -public interface AftersaleMapper extends BaseMapper { - /** - * 查询订单售后列表 - * - * @param aftersale 订单售后 - * @return 订单售后集合 - */ - List selectByEntity(Aftersale aftersale); - - List selectManagerRefundOrder(ManagerAftersaleOrderForm managerAftersaleOrderPageRequest); - - int countByMemberId(Long memberId); - - OrderAndAftersaleStatisticsVO statPendingAndProcessing(); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderDeliveryHistoryMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderDeliveryHistoryMapper.java deleted file mode 100644 index 7386a77..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderDeliveryHistoryMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.manager.oms.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.oms.domain.entity.OrderDeliveryHistory; - -/** - * 订单发货记录Mapper接口 - * - * @author zcc - */ -public interface OrderDeliveryHistoryMapper extends BaseMapper { - /** - * 查询订单发货记录列表 - * - * @param orderDeliveryHistory 订单发货记录 - * @return 订单发货记录集合 - */ - List selectByEntity(OrderDeliveryHistory orderDeliveryHistory); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderItemMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderItemMapper.java deleted file mode 100644 index b7aee2e..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderItemMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.manager.oms.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.oms.domain.entity.OrderItem; - -/** - * 订单中所包含的商品Mapper接口 - * - * @author zcc - */ -public interface OrderItemMapper extends BaseMapper { - /** - * 查询订单中所包含的商品列表 - * - * @param orderItem 订单中所包含的商品 - * @return 订单中所包含的商品集合 - */ - List selectByEntity(OrderItem orderItem); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderMapper.java deleted file mode 100644 index 846bdfc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderMapper.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.cyl.manager.oms.mapper; - -import java.time.LocalDateTime; -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.h5.domain.vo.CountOrderVO; -import com.cyl.h5.domain.vo.H5OrderVO; -import com.cyl.manager.aws.domain.entity.SystemStatistics; -import com.cyl.manager.oms.domain.entity.Order; -import com.cyl.manager.oms.domain.form.ManagerOrderQueryForm; -import com.cyl.manager.oms.domain.vo.ManagerOrderVO; -import com.cyl.manager.statistics.domain.vo.OrderAndAftersaleStatisticsVO; -import com.cyl.manager.ums.domain.vo.MemberDataStatisticsVO; -import org.apache.ibatis.annotations.Param; - -/** - * 订单表Mapper接口 - * - * @author zcc - */ -public interface OrderMapper extends BaseMapper { - /** - * 查询订单表列表 - * - * @param order 订单表 - * @return 订单表集合 - */ - List selectByEntity(Order order); - - List selectManagerOrderPage(ManagerOrderQueryForm request); - - List orderPage(@Param("status") Integer status, @Param("memberId")Long memberId); - - H5OrderVO selectOrderDetail(Long orderId); - - CountOrderVO countByStatusAndMemberId(Long memberId); - - Integer cancelBatch(@Param("list") List orderList); - - MemberDataStatisticsVO statOrderCountAndAmount(Long memberId); - - - Integer statWaitDelivered(); - - OrderAndAftersaleStatisticsVO statTodayData(@Param("startTime") LocalDateTime startTime, @Param("endTime") LocalDateTime endTime); - - SystemStatistics statNewAndDeal(@Param("startTime") LocalDateTime startTime,@Param("endTime") LocalDateTime endTime); - - int statDealMember(@Param("startTime") LocalDateTime startTime,@Param("endTime") LocalDateTime endTime); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderOperateHistoryMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderOperateHistoryMapper.java deleted file mode 100644 index 69baa86..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/OrderOperateHistoryMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.manager.oms.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.oms.domain.entity.OrderOperateHistory; - -/** - * 订单操作历史记录Mapper接口 - * - * @author zcc - */ -public interface OrderOperateHistoryMapper extends BaseMapper { - /** - * 查询订单操作历史记录列表 - * - * @param orderOperateHistory 订单操作历史记录 - * @return 订单操作历史记录集合 - */ - List selectByEntity(OrderOperateHistory orderOperateHistory); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/WechatPaymentHistoryMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/WechatPaymentHistoryMapper.java deleted file mode 100644 index 181a46d..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/mapper/WechatPaymentHistoryMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.manager.oms.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.oms.domain.entity.WechatPaymentHistory; - -/** - * 微信订单表Mapper接口 - * - * @author zcc - */ -public interface WechatPaymentHistoryMapper extends BaseMapper { - /** - * 查询微信订单表列表 - * - * @param wechatPaymentHistory 微信订单表 - * @return 微信订单表集合 - */ - List selectByEntity(WechatPaymentHistory wechatPaymentHistory); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/AftersaleItemService.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/AftersaleItemService.java deleted file mode 100644 index 5720f66..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/AftersaleItemService.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.cyl.manager.oms.service; - -import java.math.BigDecimal; -import java.util.List; -import java.time.LocalDateTime; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.github.pagehelper.PageHelper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; -import com.cyl.manager.oms.mapper.AftersaleItemMapper; -import com.cyl.manager.oms.domain.entity.AftersaleItem; -import com.cyl.manager.oms.domain.query.AftersaleItemQuery; - -/** - * 订单售后Service业务层处理 - * - * - * @author zcc - */ -@Service -public class AftersaleItemService { - @Autowired - private AftersaleItemMapper aftersaleItemMapper; - - /** - * 查询订单售后 - * - * @param id 订单售后主键 - * @return 订单售后 - */ - public AftersaleItem selectById(Long id) { - return aftersaleItemMapper.selectById(id); - } - - /** - * 查询订单售后列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 订单售后 - */ - public List selectList(AftersaleItemQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - Long memberId = query.getMemberId(); - if (memberId != null) { - qw.eq("member_id", memberId); - } - Long orderId = query.getOrderId(); - if (orderId != null) { - qw.eq("order_id", orderId); - } - Long orderItemId = query.getOrderItemId(); - if (orderItemId != null) { - qw.eq("order_item_id", orderItemId); - } - BigDecimal returnAmount = query.getReturnAmount(); - if (returnAmount != null) { - qw.eq("return_amount", returnAmount); - } - Integer quantity = query.getQuantity(); - if (quantity != null) { - qw.eq("quantity", quantity); - } - return aftersaleItemMapper.selectList(qw); - } - - /** - * 新增订单售后 - * - * @param aftersaleItem 订单售后 - * @return 结果 - */ - public int insert(AftersaleItem aftersaleItem) { - aftersaleItem.setCreateTime(LocalDateTime.now()); - return aftersaleItemMapper.insert(aftersaleItem); - } - - /** - * 修改订单售后 - * - * @param aftersaleItem 订单售后 - * @return 结果 - */ - public int update(AftersaleItem aftersaleItem) { - return aftersaleItemMapper.updateById(aftersaleItem); - } - - /** - * 删除订单售后信息 - * - * @param id 订单售后主键 - * @return 结果 - */ - public int deleteById(Long id) { - return aftersaleItemMapper.deleteById(id); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/AftersaleService.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/AftersaleService.java deleted file mode 100644 index 4f1efbb..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/AftersaleService.java +++ /dev/null @@ -1,476 +0,0 @@ -package com.cyl.manager.oms.service; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.*; -import java.util.stream.Collectors; - -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.cyl.manager.act.service.MemberCouponService; -import com.cyl.manager.oms.convert.OrderOperateHistoryConvert; -import com.cyl.manager.oms.domain.entity.*; -import com.cyl.manager.oms.mapper.*; -import com.cyl.manager.oms.domain.form.DealWithAftersaleForm; -import com.cyl.manager.oms.domain.form.ManagerAftersaleOrderForm; -import com.cyl.manager.oms.domain.vo.*; -import com.cyl.manager.pms.mapper.SkuMapper; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.domain.entity.MemberWechat; -import com.cyl.manager.ums.mapper.MemberMapper; -import com.cyl.manager.ums.mapper.MemberWechatMapper; -import com.cyl.wechat.WechatPayService; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.constant.Constants; -import com.ruoyi.common.constant.HttpStatus; -import com.ruoyi.common.core.domain.AjaxResult; -import com.ruoyi.common.core.domain.model.LoginUser; -import com.ruoyi.common.enums.AftersaleStatus; -import com.ruoyi.common.enums.OrderRefundStatus; -import com.wechat.pay.java.service.refund.model.Refund; -import com.wechat.pay.java.service.refund.model.RefundNotification; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; - -/** - * 订单售后Service业务层处理 - * - * @author zcc - */ -@Service -@Slf4j -public class AftersaleService { - @Autowired - private AftersaleMapper aftersaleMapper; - - @Autowired - private OrderMapper orderMapper; - - @Autowired - private OrderItemMapper orderItemMapper; - - @Autowired - private OrderOperateHistoryMapper orderOperateHistoryMapper; - - @Autowired - private MemberMapper memberMapper; - - @Autowired - private OrderOperateHistoryConvert historyConvert; - @Autowired - private SkuMapper skuMapper; - @Autowired - private MemberCouponService memberCouponService; - @Autowired - private WechatPaymentHistoryMapper wechatPaymentHistoryMapper; - @Autowired - private MemberWechatMapper memberWechatMapper; - @Autowired(required = false) - private WechatPayService wechatPayService; - @Autowired - private OrderOperateHistoryMapper operateHistoryMapper; - - /** - * 查询订单售后 - * - * @param id 订单售后主键 - * @return 订单售后 - */ - public ManagerRefundOrderDetailVO selectById(Long id) { - Order order = orderMapper.selectById(id); - if (order == null) { - throw new RuntimeException("无该订单信息"); - } - ManagerRefundOrderDetailVO result = new ManagerRefundOrderDetailVO(); - //订单基本信息 - result.setOrderId(order.getId()); - result.setOrderSn(order.getOrderSn()); - result.setCreateTime(order.getCreateTime()); - result.setPayType(order.getPayType()); - result.setPayTime(order.getPaymentTime()); - result.setStatus(order.getStatus()); - result.setExpressName(order.getDeliveryCompany()); - result.setDeliveryTime(order.getDeliveryTime()); - result.setExpressNo(order.getDeliverySn()); - result.setTotalAmount(order.getTotalAmount()); - result.setPayAmount(order.getPayAmount()); - //用户信息 - Member member = memberMapper.selectById(order.getMemberId()); - result.setNickName(member.getNickname()); - result.setPhone(member.getPhoneHidden()); - //收货信息 - OrderAddressVO orderAddressVO = new OrderAddressVO(); - orderAddressVO.setAddress(order.getReceiverDetailAddress()); - orderAddressVO.setName(order.getReceiverName()); - orderAddressVO.setUserPhone(order.getReceiverPhone()); - orderAddressVO.setArea(order.getReceiverProvince() + order.getReceiverCity() + order.getReceiverDistrict()); - result.setAddressInfo(orderAddressVO); - //orderItem - QueryWrapper orderItemQw = new QueryWrapper<>(); - orderItemQw.eq("order_id", id); - List orderItemList = orderItemMapper.selectList(orderItemQw); - List productList = new ArrayList<>(); - orderItemList.forEach(orderItem -> { - ManagerOrderProductVO productVO = new ManagerOrderProductVO(); - productVO.setPic(orderItem.getPic()); - productVO.setSpData(orderItem.getSpData()); - productVO.setProductName(orderItem.getProductName()); - productVO.setSalePrice(orderItem.getSalePrice()); - productVO.setBuyNum(orderItem.getQuantity()); - productVO.setProductId(orderItem.getProductId()); - productList.add(productVO); - }); - result.setProductList(productList); - //售后信息 - QueryWrapper aftersaleQw = new QueryWrapper<>(); - aftersaleQw.eq("order_id", order.getId()); - aftersaleQw.orderByDesc("create_time"); - List aftersaleList = aftersaleMapper.selectList(aftersaleQw); - List refundInfoList = new ArrayList<>(); - aftersaleList.forEach(aftersale -> { - RefundInfoVO refundInfo = new RefundInfoVO(); - refundInfo.setId(aftersale.getId()); - refundInfo.setApplyRefundType(aftersale.getType()); - refundInfo.setApplyRefundTime(aftersale.getCreateTime()); - refundInfo.setRefundAmount(aftersale.getReturnAmount()); - refundInfo.setReason(aftersale.getReason()); - refundInfo.setDescription(aftersale.getDescription()); - refundInfo.setProofPics(aftersale.getProofPics()); - refundInfo.setRefundStatus(aftersale.getStatus()); - refundInfo.setRefundWpCode(aftersale.getRefundWpCode()); - refundInfo.setRefundWaybillCode(aftersale.getRefundWaybillCode()); - refundInfo.setRefundStatus(aftersale.getStatus()); - refundInfo.setRemark(aftersale.getHandleNote()); - refundInfoList.add(refundInfo); - }); - result.setRefundInfoList(refundInfoList); - return result; - } - - /** - * 查询订单售后列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 订单售后 - */ - public List selectList(ManagerAftersaleOrderForm query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - if (StrUtil.isNotBlank(query.getOrderSn()) && query.getOrderSn().length() > 7) { - query.setOrderSn(query.getOrderSn().substring(7)); - } - List managerRefundOrderVOS = aftersaleMapper.selectManagerRefundOrder(query); - if (CollectionUtil.isEmpty(managerRefundOrderVOS)) { - return managerRefundOrderVOS; - } - Set idSet = managerRefundOrderVOS.stream().map(ManagerRefundOrderVO::getOrderId).collect(Collectors.toSet()); - //查一下orderSn集合 - QueryWrapper orderQw = new QueryWrapper<>(); - orderQw.in("id", idSet); - Map orderMap = orderMapper.selectList(orderQw).stream().collect(Collectors.toMap(Order::getId, it -> it)); - //封装售后单商品数据 - QueryWrapper orderItemQw = new QueryWrapper<>(); - orderItemQw.in("order_id", idSet); - Map> orderItemMap = orderItemMapper.selectList(orderItemQw).stream().collect(Collectors.groupingBy(OrderItem::getOrderId)); - managerRefundOrderVOS.forEach(vo -> { - Order order = orderMap.get(vo.getOrderId()); - vo.setOrderSn(order.getOrderSn()); - List orderItemList = orderItemMap.get(vo.getOrderId()); - List productList = new ArrayList<>(); - orderItemList.forEach(item -> { - ManagerOrderProductVO productVO = new ManagerOrderProductVO(); - productVO.setProductName(item.getProductName()); - productVO.setSalePrice(item.getSalePrice()); - productVO.setPic(item.getPic()); - productVO.setBuyNum(item.getQuantity()); - productVO.setProductId(item.getProductId()); - productVO.setSpData(item.getSpData()); - productList.add(productVO); - }); - vo.setProductList(productList); - }); - return managerRefundOrderVOS; - } - - /** - * 新增订单售后 - * - * @param aftersale 订单售后 - * @return 结果 - */ - public int insert(Aftersale aftersale) { - aftersale.setCreateTime(LocalDateTime.now()); - return aftersaleMapper.insert(aftersale); - } - - /** - * 修改订单售后 - * - * @param aftersale 订单售后 - * @return 结果 - */ - public int update(Aftersale aftersale) { - return aftersaleMapper.updateById(aftersale); - } - - /** - * 删除订单售后信息 - * - * @param id 订单售后主键 - * @return 结果 - */ - public int deleteById(Long id) { - return aftersaleMapper.deleteById(id); - } - - /** - * 售后处理 - * - * @param request 请求体 - * @param user 操作人 - * @return - */ - @Transactional(rollbackFor = Exception.class) - public void dealWith(DealWithAftersaleForm request, Long userId, String optUserName) { - Order order = orderMapper.selectById(request.getOrderId()); - if (order == null) { - throw new RuntimeException("无该订单"); - } - QueryWrapper aftersaleQw = new QueryWrapper<>(); - aftersaleQw.eq("order_id", request.getOrderId()); - if (request.getOptType() == 3) { - aftersaleQw.eq("status", 1); - } else { - aftersaleQw.eq("status", 0); - } - Aftersale aftersale = aftersaleMapper.selectOne(aftersaleQw); - if (aftersale == null) { - throw new RuntimeException("没有售后单"); - } - //售后状态与售后类型是否对应 - if (Constants.OptType.AGREE.equals(request.getOptType()) || Constants.OptType.REFUSE.equals(request.getOptType())) { - if (!AftersaleStatus.APPLY.getType().equals(aftersale.getStatus())) { - throw new RuntimeException("订单状态错误,请刷新页面后重试!"); - } - } else { - if (!AftersaleStatus.WAIT.getType().equals(aftersale.getStatus())) { - throw new RuntimeException("订单状态错误,请刷新页面后重试!"); - } - } - //拒绝则理由必填 - if (Constants.OptType.REFUSE.equals(request.getOptType()) && StrUtil.isBlank(request.getRemark())) { - throw new RuntimeException("请填写拒绝理由"); - } - LocalDateTime optDate = LocalDateTime.now(); - //要创建的订单操作记录,status后续判断再设置 - OrderOperateHistory optHistory = new OrderOperateHistory(); - optHistory.setOrderId(order.getId()); - optHistory.setOrderSn(order.getOrderSn()); - optHistory.setOperateMan("后台管理员"); - optHistory.setCreateTime(optDate); - optHistory.setCreateBy(userId); - optHistory.setUpdateBy(userId); - optHistory.setUpdateTime(optDate); - //封装售后wrapper - UpdateWrapper aftersaleWrapper = new UpdateWrapper<>(); - aftersaleWrapper.eq("order_id", request.getOrderId()); - aftersaleWrapper.eq("status", AftersaleStatus.APPLY.getType()); - aftersaleWrapper.set("handle_man", optUserName); - aftersaleWrapper.set("update_time", optDate); - aftersaleWrapper.set("handle_time", optDate); - aftersaleWrapper.set("update_by", userId); - //封装订单wrapper - UpdateWrapper orderWrapper = new UpdateWrapper<>(); - orderWrapper.eq("id", request.getOrderId()); - orderWrapper.set("update_time", optDate); - orderWrapper.set("update_by", userId); - //更新订单、售后单,创建操作记录 - if (request.getOptType().equals(Constants.OptType.REFUSE)) { - aftersaleWrapper.set("status", AftersaleStatus.REJECT.getType()); - aftersaleWrapper.set("handle_note", request.getRemark()); - orderWrapper.set("aftersale_status", OrderRefundStatus.NO_REFUND.getType()); - optHistory.setOrderStatus(14); - } else if (request.getOptType().equals(Constants.OptType.AGREE)) { - aftersaleWrapper.set("status", AftersaleStatus.WAIT.getType()); - orderWrapper.set("aftersale_status", Objects.equals(aftersale.getType(), 1) ? 3 : 2); - optHistory.setOrderStatus(12); - } else { - //如果是退货退款 order身上的售后状态应该是保持不变的 仅退款的话就进入退款了 - orderWrapper.set("aftersale_status", 3); - int row = orderMapper.update(null, orderWrapper); - if (row != 1) { - throw new RuntimeException("修改订单状态失败"); - } - } - int rows = aftersaleMapper.update(null, aftersaleWrapper); -// if (rows < 1) { -// throw new RuntimeException("更新售后单失败"); -// } - rows = orderMapper.update(null, orderWrapper); - if (rows < 1) { - throw new RuntimeException("更新订单失败"); - } - rows = orderOperateHistoryMapper.insert(optHistory); - if (rows < 1) { - throw new RuntimeException("创建订单操作记录失败"); - } - // 是否需要发起退款 - if ((request.getOptType() == Constants.OptType.GIVING || (request.getOptType() == Constants.OptType.AGREE && aftersale.getType() == 1))) { - tradeRefund(aftersale, order, optDate, userId); - } - } - - public void tradeRefund(Aftersale returnApply, Order order, LocalDateTime optDate, Long userId) { - //查一下微信订单 - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("order_id", order.getPayId()).eq("op_type", 1); - WechatPaymentHistory history = wechatPaymentHistoryMapper.selectOne(qw); - //查用户的微信信息 - QueryWrapper wechatQw = new QueryWrapper<>(); - wechatQw.eq("member_id", order.getMemberId()); - MemberWechat memberWechat = memberWechatMapper.selectOne(wechatQw); - //查订单item - QueryWrapper itemQw = new QueryWrapper<>(); - itemQw.eq("order_id", order.getId()); - OrderItem orderItem = orderItemMapper.selectList(itemQw).get(0); - //开始退款 - Refund wechatResponse = wechatPayService.refundPay(returnApply.getId() + "", - order.getPayId() + "", - "https://mall.ichengle.top/api/no-auth/wechat/weChatRefundNotify", - returnApply.getReturnAmount().multiply(new BigDecimal("100")).longValue(), - history.getMoney().multiply(new BigDecimal("100")).longValue(), returnApply.getReason()); - log.info("发起微信退款返回信息,tradeRefund:{}", JSONObject.toJSONString(wechatResponse == null ? "" : wechatResponse)); - - if (wechatResponse != null && Arrays.asList("PROCESSING", "SUCCESS").contains(wechatResponse.getStatus().name())) { - qw = new QueryWrapper<>(); - qw.eq("order_id", order.getId()).eq("op_type", 3); - WechatPaymentHistory refundHistory = wechatPaymentHistoryMapper.selectOne(qw); - if (refundHistory == null) { - WechatPaymentHistory wechatPaymentHistory = new WechatPaymentHistory(); - wechatPaymentHistory.setPaymentId(wechatResponse.getRefundId()); - wechatPaymentHistory.setMemberId(order.getMemberId()); - LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); - queryWrapper.eq(WechatPaymentHistory::getOrderId, order.getPayId()); - queryWrapper.eq(WechatPaymentHistory::getOpType, Constants.PaymentOpType.PAY); - WechatPaymentHistory payHistory = wechatPaymentHistoryMapper.selectOne(queryWrapper); - wechatPaymentHistory.setOpenid(payHistory.getOpenid()); - wechatPaymentHistory.setTitle(orderItem.getProductName()); - wechatPaymentHistory.setOrderId(order.getId()); - wechatPaymentHistory.setMoney(returnApply.getReturnAmount().multiply(new BigDecimal("100"))); - wechatPaymentHistory.setOpType(3); - wechatPaymentHistory.setPaymentStatus(0); - wechatPaymentHistory.setResponseBody(JSON.toJSONString(wechatResponse)); - wechatPaymentHistory.setCreateTime(optDate); - wechatPaymentHistory.setUpdateTime(optDate); - wechatPaymentHistory.setCreateBy(userId); - wechatPaymentHistory.setUpdateBy(userId); - wechatPaymentHistoryMapper.insert(wechatPaymentHistory); - } else { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("id", refundHistory.getId()) - .set("payment_id", wechatResponse.getRefundId()).set("update_time", optDate); - wechatPaymentHistoryMapper.update(null, updateWrapper); - } - } - } - - /** - * 订单退款回调MQ - * - * @param weChatRefundNotify - */ - @Transactional - public void refundOrderExc(RefundNotification weChatRefundNotify) { - log.info("收到订单回调MQ:" + JSONObject.toJSONString(weChatRefundNotify)); - if ("PROCESSING".equals(weChatRefundNotify.getRefundStatus().name())) { - return; - } - //查一下微信订单 - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("payment_id", weChatRefundNotify.getRefundId()).eq("op_type", 3); - WechatPaymentHistory history = wechatPaymentHistoryMapper.selectOne(qw); - if (history == null) { - log.info("未找到退款单"); - throw new RuntimeException(); - } - LocalDateTime optDate = LocalDateTime.now(); - QueryWrapper orderQw = new QueryWrapper<>(); - orderQw.eq("id", history.getOrderId()); - Order order = orderMapper.selectOne(orderQw); - if (order.getStatus() == OrderRefundStatus.SUCCESS.getType()) { - log.info("订单已经是退款成功状态"); - throw new RuntimeException(); - } - QueryWrapper aftersaleQw = new QueryWrapper<>(); - aftersaleQw.eq("order_id", history.getOrderId()).eq("status", AftersaleStatus.WAIT.getType()); - if ("SUCCESS".equals(weChatRefundNotify.getRefundStatus().name())) { - //更改订单表 - UpdateWrapper orderUpdateWrapper = new UpdateWrapper<>(); - orderUpdateWrapper.eq("id", history.getOrderId()) - .set("aftersale_status", OrderRefundStatus.SUCCESS.getType()); - orderMapper.update(null, orderUpdateWrapper); - - //更改 售后表 - UpdateWrapper aftersaleWrapper = new UpdateWrapper<>(); - aftersaleWrapper.eq("order_id", history.getOrderId()).set("status", AftersaleStatus.SUCCESS.getType()); - aftersaleMapper.update(null, aftersaleWrapper); - - //更改 微信表 - UpdateWrapper paymentWrapper = new UpdateWrapper<>(); - paymentWrapper.eq("payment_id", weChatRefundNotify.getRefundId()).eq("op_type", 3) - .set("payment_status", 1); - wechatPaymentHistoryMapper.update(null, paymentWrapper); - OrderOperateHistory optHistory = new OrderOperateHistory(); - optHistory.setOrderId(order.getId()); - optHistory.setOperateMan("系统"); - optHistory.setCreateTime(optDate); - optHistory.setCreateBy(order.getMemberId()); - optHistory.setUpdateBy(order.getMemberId()); - optHistory.setUpdateTime(optDate); - optHistory.setOrderStatus(13); - operateHistoryMapper.insert(optHistory); - // 回滚商品和sku销量 - OrderItem orderItem = orderItemMapper.selectOne(new QueryWrapper().eq("order_id", order.getId())); - skuMapper.updateStockById(orderItem.getSkuId(), LocalDateTime.now(), -1 * orderItem.getQuantity()); - //退还优惠券 - if (order.getMemberCouponId() != null) { - memberCouponService.backCoupon(Arrays.asList(order.getMemberCouponId())); - } - } else { - //更改订单表 - UpdateWrapper orderUpdateWrapper = new UpdateWrapper<>(); - orderUpdateWrapper.eq("id", history.getOrderId()) - .set("aftersale_status", OrderRefundStatus.FAIL.getType()); - orderMapper.update(null, orderUpdateWrapper); - } - } - - public List log(Long orderId) { - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(OrderOperateHistory::getOrderId, orderId); - wrapper.in(OrderOperateHistory::getOrderStatus, Arrays.asList(11, 12, 13, 14)); - wrapper.orderByDesc(OrderOperateHistory::getCreateTime); - List historyList = orderOperateHistoryMapper.selectList(wrapper); - return historyConvert.dos2vos(historyList); - } - - public Aftersale queryAfterSale(Long orderId) { - QueryWrapper itemQw = new QueryWrapper<>(); - itemQw.eq("order_id",orderId); - itemQw.in("status",Arrays.asList(AftersaleStatus.APPLY.getType(),AftersaleStatus.WAIT.getType())); - return aftersaleMapper.selectOne(itemQw); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderDeliveryHistoryService.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderDeliveryHistoryService.java deleted file mode 100644 index 993aecc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderDeliveryHistoryService.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.cyl.manager.oms.service; - -import java.util.List; -import java.time.LocalDateTime; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.github.pagehelper.PageHelper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import com.cyl.manager.oms.mapper.OrderDeliveryHistoryMapper; -import com.cyl.manager.oms.domain.entity.OrderDeliveryHistory; -import com.cyl.manager.oms.domain.query.OrderDeliveryHistoryQuery; - -/** - * 订单发货记录Service业务层处理 - * - * - * @author zcc - */ -@Service -public class OrderDeliveryHistoryService { - @Autowired - private OrderDeliveryHistoryMapper orderDeliveryHistoryMapper; - - /** - * 查询订单发货记录 - * - * @param id 订单发货记录主键 - * @return 订单发货记录 - */ - public OrderDeliveryHistory selectById(Long id) { - return orderDeliveryHistoryMapper.selectById(id); - } - - /** - * 查询订单发货记录列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 订单发货记录 - */ - public List selectList(OrderDeliveryHistoryQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - Long orderId = query.getOrderId(); - if (orderId != null) { - qw.eq("order_id", orderId); - } - String deliveryCompany = query.getDeliveryCompany(); - if (!StringUtils.isEmpty(deliveryCompany)) { - qw.eq("delivery_company", deliveryCompany); - } - String deliverySn = query.getDeliverySn(); - if (!StringUtils.isEmpty(deliverySn)) { - qw.eq("delivery_sn", deliverySn); - } - return orderDeliveryHistoryMapper.selectList(qw); - } - - /** - * 新增订单发货记录 - * - * @param orderDeliveryHistory 订单发货记录 - * @return 结果 - */ - public int insert(OrderDeliveryHistory orderDeliveryHistory) { - orderDeliveryHistory.setCreateTime(LocalDateTime.now()); - return orderDeliveryHistoryMapper.insert(orderDeliveryHistory); - } - - /** - * 修改订单发货记录 - * - * @param orderDeliveryHistory 订单发货记录 - * @return 结果 - */ - public int update(OrderDeliveryHistory orderDeliveryHistory) { - return orderDeliveryHistoryMapper.updateById(orderDeliveryHistory); - } - - /** - * 删除订单发货记录信息 - * - * @param id 订单发货记录主键 - * @return 结果 - */ - public int deleteById(Long id) { - return orderDeliveryHistoryMapper.deleteById(id); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderItemService.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderItemService.java deleted file mode 100644 index 73dbf5b..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderItemService.java +++ /dev/null @@ -1,172 +0,0 @@ -package com.cyl.manager.oms.service; - -import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.List; -import java.time.LocalDateTime; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.cyl.h5.domain.dto.OrderProductListDTO; -import com.cyl.manager.ums.domain.entity.Member; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.utils.IDGenerator; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import com.cyl.manager.oms.mapper.OrderItemMapper; -import com.cyl.manager.oms.domain.entity.OrderItem; -import com.cyl.manager.oms.domain.query.OrderItemQuery; -import org.springframework.transaction.annotation.Transactional; - -/** - * 订单中所包含的商品Service业务层处理 - * - * - * @author zcc - */ -@Service -public class OrderItemService extends ServiceImpl { - @Autowired - private OrderItemMapper orderItemMapper; - - /** - * 查询订单中所包含的商品 - * - * @param id 订单中所包含的商品主键 - * @return 订单中所包含的商品 - */ - public OrderItem selectById(Long id) { - return orderItemMapper.selectById(id); - } - - /** - * 查询订单中所包含的商品列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 订单中所包含的商品 - */ - public List selectList(OrderItemQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - Long orderId = query.getOrderId(); - if (orderId != null) { - qw.eq("order_id", orderId); - } - Long productId = query.getProductId(); - if (productId != null) { - qw.eq("product_id", productId); - } - String outProductId = query.getOutProductId(); - if (!StringUtils.isEmpty(outProductId)) { - qw.eq("out_product_id", outProductId); - } - Long skuId = query.getSkuId(); - if (skuId != null) { - qw.eq("sku_id", skuId); - } - String outSkuId = query.getOutSkuId(); - if (!StringUtils.isEmpty(outSkuId)) { - qw.eq("out_sku_id", outSkuId); - } - Long productSnapshotId = query.getProductSnapshotId(); - if (productSnapshotId != null) { - qw.eq("product_snapshot_id", productSnapshotId); - } - Long skuSnapshotId = query.getSkuSnapshotId(); - if (skuSnapshotId != null) { - qw.eq("sku_snapshot_id", skuSnapshotId); - } - String pic = query.getPic(); - if (!StringUtils.isEmpty(pic)) { - qw.eq("pic", pic); - } - String productNameLike = query.getProductNameLike(); - if (!StringUtils.isEmpty(productNameLike)) { - qw.like("product_name", productNameLike); - } - BigDecimal salePrice = query.getSalePrice(); - if (salePrice != null) { - qw.eq("sale_price", salePrice); - } - BigDecimal purchasePrice = query.getPurchasePrice(); - if (purchasePrice != null) { - qw.eq("purchase_price", purchasePrice); - } - Integer quantity = query.getQuantity(); - if (quantity != null) { - qw.eq("quantity", quantity); - } - Long productCategoryId = query.getProductCategoryId(); - if (productCategoryId != null) { - qw.eq("product_category_id", productCategoryId); - } - String spData = query.getSpData(); - if (!StringUtils.isEmpty(spData)) { - qw.eq("sp_data", spData); - } - return orderItemMapper.selectList(qw); - } - - /** - * 新增订单中所包含的商品 - * - * @param orderItem 订单中所包含的商品 - * @return 结果 - */ - public int insert(OrderItem orderItem) { - orderItem.setCreateTime(LocalDateTime.now()); - return orderItemMapper.insert(orderItem); - } - - /** - * 修改订单中所包含的商品 - * - * @param orderItem 订单中所包含的商品 - * @return 结果 - */ - public int update(OrderItem orderItem) { - return orderItemMapper.updateById(orderItem); - } - - /** - * 删除订单中所包含的商品信息 - * - * @param id 订单中所包含的商品主键 - * @return 结果 - */ - public int deleteById(Long id) { - return orderItemMapper.deleteById(id); - } - - @Transactional - public void saveOrderItem(Member member, LocalDateTime optTime, - Long orderId, List list){ - List addOrderItemList = new ArrayList<>(); - list.forEach(item -> { - OrderItem orderItem = new OrderItem(); - orderItem.setId(IDGenerator.generateId()); - orderItem.setOrderId(orderId); - orderItem.setProductId(item.getProduct().getId()); - orderItem.setOutProductId(item.getProduct().getOutProductId()); - orderItem.setSkuId(item.getSku().getId()); - orderItem.setOutSkuId(item.getSku().getOutSkuId()); - orderItem.setPic(item.getSku().getPic()); - orderItem.setProductName(item.getProduct().getName()); - orderItem.setSalePrice(item.getSku().getPrice()); - orderItem.setQuantity(item.getQuantity()); - orderItem.setProductCategoryId(item.getProduct().getCategoryId()); - orderItem.setSpData(item.getSku().getSpData()); - orderItem.setCreateBy(member.getId()); - orderItem.setCreateTime(optTime); - addOrderItemList.add(orderItem); - }); - boolean flag = saveBatch(addOrderItemList); - if (!flag){ - throw new RuntimeException("新增订单item失败"); - } - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderOperateHistoryService.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderOperateHistoryService.java deleted file mode 100644 index 2ba0976..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderOperateHistoryService.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.cyl.manager.oms.service; - -import java.util.List; -import java.time.LocalDateTime; - -import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.github.pagehelper.PageHelper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import com.cyl.manager.oms.mapper.OrderOperateHistoryMapper; -import com.cyl.manager.oms.domain.entity.OrderOperateHistory; -import com.cyl.manager.oms.domain.query.OrderOperateHistoryQuery; - -/** - * 订单操作历史记录Service业务层处理 - * - * - * @author zcc - */ -@Service -public class OrderOperateHistoryService extends ServiceImpl { - @Autowired - private OrderOperateHistoryMapper orderOperateHistoryMapper; - - /** - * 查询订单操作历史记录 - * - * @param id 订单操作历史记录主键 - * @return 订单操作历史记录 - */ - public OrderOperateHistory selectById(Long id) { - return orderOperateHistoryMapper.selectById(id); - } - - /** - * 查询订单操作历史记录列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 订单操作历史记录 - */ - public List selectList(OrderOperateHistoryQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - String orderSn = query.getOrderSn(); - if (StrUtil.isNotBlank(orderSn)) { - qw.eq("order_sn", orderSn); - } - String operateMan = query.getOperateMan(); - if (!StringUtils.isEmpty(operateMan)) { - qw.eq("operate_man", operateMan); - } - Integer orderStatus = query.getOrderStatus(); - if (orderStatus != null) { - qw.eq("order_status", orderStatus); - } - String note = query.getNote(); - if (!StringUtils.isEmpty(note)) { - qw.eq("note", note); - } - qw.orderByDesc("create_time"); - return orderOperateHistoryMapper.selectList(qw); - } - - /** - * 新增订单操作历史记录 - * - * @param orderOperateHistory 订单操作历史记录 - * @return 结果 - */ - public int insert(OrderOperateHistory orderOperateHistory) { - orderOperateHistory.setCreateTime(LocalDateTime.now()); - return orderOperateHistoryMapper.insert(orderOperateHistory); - } - - /** - * 修改订单操作历史记录 - * - * @param orderOperateHistory 订单操作历史记录 - * @return 结果 - */ - public int update(OrderOperateHistory orderOperateHistory) { - return orderOperateHistoryMapper.updateById(orderOperateHistory); - } - - /** - * 删除订单操作历史记录信息 - * - * @param id 订单操作历史记录主键 - * @return 结果 - */ - public int deleteById(Long id) { - return orderOperateHistoryMapper.deleteById(id); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderService.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderService.java deleted file mode 100644 index 9b9491b..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/OrderService.java +++ /dev/null @@ -1,403 +0,0 @@ -package com.cyl.manager.oms.service; - -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.cyl.h5.domain.query.OrderH5Query; -import com.cyl.manager.oms.convert.OrderConvert; -import com.cyl.manager.oms.convert.OrderOperateHistoryConvert; -import com.cyl.manager.oms.domain.entity.Order; -import com.cyl.manager.oms.domain.entity.OrderDeliveryHistory; -import com.cyl.manager.oms.domain.entity.OrderItem; -import com.cyl.manager.oms.domain.entity.OrderOperateHistory; -import com.cyl.manager.oms.mapper.OrderDeliveryHistoryMapper; -import com.cyl.manager.oms.mapper.OrderItemMapper; -import com.cyl.manager.oms.mapper.OrderMapper; -import com.cyl.manager.oms.mapper.OrderOperateHistoryMapper; -import com.cyl.manager.oms.domain.form.DeliverProductForm; -import com.cyl.manager.oms.domain.form.ManagerOrderQueryForm; -import com.cyl.manager.oms.domain.vo.*; -import com.cyl.manager.pms.convert.SkuConvert; -import com.cyl.manager.pms.mapper.ProductMapper; -import com.cyl.manager.pms.mapper.SkuMapper; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.mapper.MemberAddressMapper; -import com.cyl.manager.ums.mapper.MemberCartMapper; -import com.cyl.manager.ums.mapper.MemberMapper; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.constant.Constants; -import com.ruoyi.common.utils.AesCryptoUtils; -import com.ruoyi.common.utils.PhoneUtils; -import com.ruoyi.common.utils.SecurityUtils; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.time.LocalDateTime; -import java.util.*; -import java.util.stream.Collectors; - -/** - * 订单表Service业务层处理 - * - * - * @author zcc - */ -@Service -public class OrderService { - @Autowired - private OrderMapper orderMapper; - @Autowired - private OrderConvert orderConvert; - @Autowired - private OrderItemMapper orderItemMapper; - @Autowired - private MemberAddressMapper memberAddressMapper; - @Autowired - private SkuMapper skuMapper; - @Autowired - private ProductMapper productMapper; - @Autowired - private SkuConvert skuConvert; - @Autowired - private OrderItemService orderItemService; - @Autowired - private OrderOperateHistoryMapper orderOperateHistoryMapper; - @Autowired - private MemberCartMapper memberCartMapper; - @Autowired - private MemberMapper memberMapper; - @Value("${aes.key}") - private String aesKey; - @Autowired - private OrderDeliveryHistoryMapper orderDeliveryHistoryMapper; - @Autowired - private OrderOperateHistoryConvert historyConvert; - - /** - * 查询订单表 - * - * @param id 订单表主键 - * @return 订单表 - */ - public ManagerOrderDetailVO selectById(Long id) { - Order order = orderMapper.selectById(id); - if (order == null){ - throw new RuntimeException("查不到订单信息"); - } - ManagerOrderDetailVO managerOrderDetailVO = new ManagerOrderDetailVO(); - //封装订单信息 - managerOrderDetailVO.setOrderId(id); - managerOrderDetailVO.setCouponAmount(order.getCouponAmount()); - managerOrderDetailVO.setOrderSn(order.getOrderSn()); - managerOrderDetailVO.setOrderStatus(order.getStatus()); - managerOrderDetailVO.setCreateTime(order.getCreateTime()); - managerOrderDetailVO.setDeliveryTime(order.getDeliveryTime()); - managerOrderDetailVO.setExpressName(order.getDeliveryCompany()); - managerOrderDetailVO.setExpressNo(order.getDeliverySn()); - managerOrderDetailVO.setPayAmount(order.getPayAmount()); - managerOrderDetailVO.setPayTime(order.getPaymentTime()); - managerOrderDetailVO.setPayType(order.getPayType()); - managerOrderDetailVO.setTotalAmount(order.getTotalAmount()); - managerOrderDetailVO.setPayAmount(order.getPayAmount()); - managerOrderDetailVO.setReceiveTime(order.getReceiveTime()); - //封装订单地址信息 - ManagerOrderAddressVo managerOrderAddressVo = new ManagerOrderAddressVo(); - managerOrderAddressVo.setUserPhone(order.getReceiverPhone()); - managerOrderAddressVo.setAddress(order.getReceiverDetailAddress()); - managerOrderAddressVo.setArea( - order.getReceiverProvince() + - order.getReceiverCity() + - order.getReceiverDistrict()); - managerOrderAddressVo.setName(order.getReceiverName()); - managerOrderDetailVO.setAddressInfo(managerOrderAddressVo); - //查询会员信息 - Member member = memberMapper.selectById(order.getMemberId()); - managerOrderDetailVO.setUserName(member.getNickname()); - managerOrderDetailVO.setUserPhone(member.getPhoneHidden()); - //查询购买商品信息 - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("order_id", order.getId()); - List orderItemList = orderItemMapper.selectList(qw); - List productList = new ArrayList<>(); - orderItemList.forEach(item -> { - ManagerOrderProductVO productVO = new ManagerOrderProductVO(); - productVO.setProductId(item.getProductId()); - productVO.setBuyNum(item.getQuantity()); - productVO.setPic(item.getPic()); - productVO.setProductName(item.getProductName()); - productVO.setSalePrice(item.getSalePrice()); - productVO.setSpData(item.getSpData()); - productList.add(productVO); - }); - managerOrderDetailVO.setProductInfo(productList); - return managerOrderDetailVO; - } - - /** - * 查询订单表列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 订单表 - */ - public PageImpl selectList(ManagerOrderQueryForm query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - if (!StringUtils.isEmpty(query.getUserPhone())){ - query.setUserPhone(AesCryptoUtils.encrypt(aesKey, query.getUserPhone())); - } - List managerOrderVOList = orderMapper.selectManagerOrderPage(query); - if (CollectionUtil.isEmpty(managerOrderVOList)){ - return new PageImpl<>(managerOrderVOList, page, 0); - } - long total = ((com.github.pagehelper.Page) managerOrderVOList).getTotal(); - Map orderMap = managerOrderVOList.stream().collect(Collectors.toMap(ManagerOrderVO::getId, it -> it, (v1,v2) -> v2, LinkedHashMap::new)); - //查orderItem - QueryWrapper qw = new QueryWrapper<>(); - qw.in("order_id", orderMap.keySet()); - Map> groupedOrderItemMap = orderItemMapper.selectList(qw) - .stream().collect(Collectors.groupingBy(OrderItem::getOrderId)); - groupedOrderItemMap.keySet().forEach(key -> { - ManagerOrderVO managerOrderVO = orderMap.get(key); - managerOrderVO.setBuyNum(0); - List orderItemList = groupedOrderItemMap.get(key); - List addProductList = new ArrayList<>(); - orderItemList.forEach(item -> { - ManagerOrderProductVO vo = new ManagerOrderProductVO(); - vo.setProductName(item.getProductName()); - vo.setSalePrice(item.getSalePrice()); - vo.setPic(item.getPic()); - vo.setBuyNum(item.getQuantity()); - vo.setProductId(item.getProductId()); - vo.setSpData(item.getSpData()); - addProductList.add(vo); - managerOrderVO.setBuyNum(managerOrderVO.getBuyNum() + item.getQuantity()); - }); - managerOrderVO.setProductList(addProductList); - }); - return new PageImpl<>(new ArrayList<>(orderMap.values()), page, total); - } - - /** - * 新增订单表 - * - * @param order 订单表 - * @return 结果 - */ - public int insert(Order order) { - order.setCreateTime(LocalDateTime.now()); - return orderMapper.insert(order); - } - - /** - * 修改订单表 - * - * @param order 订单表 - * @return 结果 - */ - public int update(Order order) { - return orderMapper.updateById(order); - } - - /** - * 删除订单表信息 - * - * @param id 订单表主键 - * @return 结果 - */ - public int deleteById(Long id) { - return orderMapper.deleteById(id); - } - - public Page queryOrderPage(OrderH5Query query, Pageable pageReq) { - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("member_id", SecurityUtils.getUserId()); - IPage page = new com.baomidou.mybatisplus.extension.plugins.pagination.Page<>(); - page.setCurrent(pageReq.getPageNumber()) - .setSize(pageReq.getPageSize()); - if (CollUtil.isEmpty(pageReq.getSort())) { - pageReq.getSort().forEach(it -> { - qw.orderBy(true, it.getDirection().isAscending(), it.getProperty()); - }); - } - Integer tab = query.getTab(); - if (tab != null) { - qw.eq("delete_status", 0); - if (tab == 1) { - qw.eq("status", 0); - } else if (tab == 2) { - qw.eq("status", 1); - qw.eq("aftersale_status", 1); - } else if (tab == 3) { - qw.eq("status", 2); - qw.eq("confirm_status", 0); - } else if (tab == 4) { - qw.eq("status", 2); - qw.eq("confirm_status", 1); - } - } - orderMapper.selectPage(page, qw); - List orders = page.getRecords(); - long total = page.getPages(); - if (CollUtil.isEmpty(orders)) { - return new PageImpl<>(Collections.emptyList(), pageReq, total); - } - LambdaQueryWrapper qw1 = new LambdaQueryWrapper<>(); - qw1.in(OrderItem::getOrderId, orders.stream().map(Order::getId).collect(Collectors.toList())); - Map> oid2items = orderItemMapper.selectList(qw1) - .stream().collect(Collectors.groupingBy(OrderItem::getOrderId)); - List res = orderConvert.dos2vos(orders); - res.forEach(it -> { - it.setItems(oid2items.get(it.getId())); - }); - return new PageImpl<>(res, pageReq, total); - } - - - public Integer saveMerchantNote(Order order) { - Order orderInDb = orderMapper.selectById(order.getId()); - if (orderInDb == null){ - throw new RuntimeException("订单不存在"); - } - UpdateWrapper qw = new UpdateWrapper<>(); - qw.eq("id", order.getId()); - qw.set("merchant_note", order.getMerchantNote()); - return orderMapper.update(null, qw); - } - - /** - * 管理后台发货 - * 目前发货是这样的:待发货、已发货、已完成都能执行发货,每次都会创建一条新的发货记录且修改订单发货信息 - * @param request 发货请求 - * @param userId 操作人 - * @return 结果 - */ - @Transactional - public String deliverProduct(DeliverProductForm request, Long userId) { - //查询订单 - Order order = orderMapper.selectById(request.getOrderId()); - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("order_id", request.getOrderId()); - List orderItemList = orderItemMapper.selectList(qw); - if (order == null || CollectionUtil.isEmpty(orderItemList)){ - throw new RuntimeException("未找到该订单信息"); - } - // 是否为待发货、已发货 、已完成 - if (!(Constants.OrderStatus.SEND.equals(order.getStatus()) - || Constants.OrderStatus.GET.equals(order.getStatus()) - || Constants.OrderStatus.CONFIRM.equals(order.getStatus()))){ - throw new RuntimeException("订单状态错误"); - } - Integer orderStatus = - Constants.OrderStatus.SEND.equals(order.getStatus()) ? Constants.OrderStatus.GET : order.getStatus(); - //更新订单 - LocalDateTime optDate = LocalDateTime.now(); - order.setUpdateBy(null); - order.setStatus(orderStatus); - order.setDeliveryTime(optDate); - order.setUpdateTime(optDate); - order.setDeliveryCompany(request.getExpressName()); - order.setDeliverySn(request.getExpressSn()); - orderMapper.updateById(order); - //创建新的发货记录 - this.createDeliveryHistory(request, userId, optDate); - //创建订单操作记录 - this.createOrderOptHistory(order.getId(), order.getOrderSn(), orderStatus, userId, optDate); - return "发货成功"; - } - - /** - * 创建发货记录 - * @param request 发货请求 - * @param userId 操作人 - * @param optDate 操作时间 - */ - private void createDeliveryHistory(DeliverProductForm request, Long userId, LocalDateTime optDate){ - OrderDeliveryHistory orderDeliveryHistory = new OrderDeliveryHistory(); - orderDeliveryHistory.setOrderId(request.getOrderId()); - orderDeliveryHistory.setDeliveryCompany(request.getExpressName()); - orderDeliveryHistory.setDeliverySn(request.getExpressSn()); - orderDeliveryHistory.setCreateTime(optDate); - orderDeliveryHistory.setCreateBy(userId); - int rows = orderDeliveryHistoryMapper.insert(orderDeliveryHistory); - if (rows < 1) { - throw new RuntimeException("新增订单发货记录失败"); - } - } - - /** - * 创建订单操作历史 - * @param orderId 订单id - * @param orderStatus 订单状态 - * @param userId 操作人 - * @param optDate 操作时间 - */ - private void createOrderOptHistory(Long orderId, String orderSn, Integer orderStatus, Long userId, LocalDateTime optDate){ - OrderOperateHistory optHistory = new OrderOperateHistory(); - optHistory.setOrderId(orderId); - optHistory.setOrderSn(orderSn); - optHistory.setOperateMan(SecurityUtils.getUsername()); - optHistory.setOrderStatus(orderStatus); - optHistory.setCreateTime(optDate); - optHistory.setCreateBy(userId); - optHistory.setUpdateBy(userId); - optHistory.setUpdateTime(optDate); - int rows = orderOperateHistoryMapper.insert(optHistory); - if (rows < 1) { - throw new RuntimeException("新增订单操作记录失败"); - } - } - - /** - * 根据订单id查询订单操作日志 - * @param orderId 订单id - * @return 结果 - */ - public List log(Long orderId) { - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(OrderOperateHistory::getOrderId, orderId); - wrapper.in(OrderOperateHistory::getOrderStatus, Arrays.asList(0, 1, 2, 3, 4)); - wrapper.orderByDesc(OrderOperateHistory::getCreateTime); - List historyList = orderOperateHistoryMapper.selectList(wrapper); - return historyConvert.dos2vos(historyList); - } - - public String decryptPhone(Long orderId) { - Order order = orderMapper.selectById(orderId); - String receiverPhoneEncrypted = order.getReceiverPhoneEncrypted(); - if(receiverPhoneEncrypted!=null){ - return AesCryptoUtils.decrypt(aesKey,receiverPhoneEncrypted); - }else { - return null; - } - } - - public Boolean updateReceiver(Order order) { - Order dbOrder = orderMapper.selectById(order.getId()); - if (dbOrder == null) { - return false; - } - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("receiver_name",order.getReceiverName()) - .set("receiver_phone",PhoneUtils.hidePhone(order.getReceiverPhone())) - .set("receiver_city",order.getReceiverCity()) - .set("receiver_district",order.getReceiverDistrict()) - .set("receiver_province",order.getReceiverProvince()) - .set("receiver_detail_address",order.getReceiverDetailAddress()) - .set("receiver_phone_encrypted",AesCryptoUtils.encrypt(aesKey, order.getReceiverPhone())) - .set("update_time",LocalDateTime.now()); - updateWrapper.eq("id",order.getId()); - int update = orderMapper.update(null, updateWrapper); - return update == 1; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/WechatPaymentHistoryService.java b/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/WechatPaymentHistoryService.java deleted file mode 100644 index a903a84..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/oms/service/WechatPaymentHistoryService.java +++ /dev/null @@ -1,126 +0,0 @@ -package com.cyl.manager.oms.service; - -import java.math.BigDecimal; -import java.util.List; -import java.time.LocalDateTime; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.cyl.manager.oms.domain.entity.WechatPaymentHistory; -import com.github.pagehelper.PageHelper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import com.cyl.manager.oms.mapper.WechatPaymentHistoryMapper; -import com.cyl.manager.oms.domain.query.WechatPaymentHistoryQuery; - -/** - * 微信订单表Service业务层处理 - * - * - * @author zcc - */ -@Service -public class WechatPaymentHistoryService { - @Autowired - private WechatPaymentHistoryMapper wechatPaymentHistoryMapper; - - /** - * 查询微信订单表 - * - * @param id 微信订单表主键 - * @return 微信订单表 - */ - public WechatPaymentHistory selectById(Long id) { - return wechatPaymentHistoryMapper.selectById(id); - } - - /** - * 查询微信订单表列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 微信订单表 - */ - public List selectList(WechatPaymentHistoryQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - String paymentId = query.getPaymentId(); - if (!StringUtils.isEmpty(paymentId)) { - qw.eq("payment_id", paymentId); - } - Long memberId = query.getMemberId(); - if (memberId != null) { - qw.eq("member_id", memberId); - } - String openid = query.getOpenid(); - if (!StringUtils.isEmpty(openid)) { - qw.eq("openid", openid); - } - String realNameLike = query.getRealNameLike(); - if (!StringUtils.isEmpty(realNameLike)) { - qw.like("real_name", realNameLike); - } - String title = query.getTitle(); - if (!StringUtils.isEmpty(title)) { - qw.eq("title", title); - } - Long orderId = query.getOrderId(); - if (orderId != null) { - qw.eq("order_id", orderId); - } - BigDecimal money = query.getMoney(); - if (money != null) { - qw.eq("money", money); - } - Integer opType = query.getOpType(); - if (opType != null) { - qw.eq("op_type", opType); - } - Integer paymentStatus = query.getPaymentStatus(); - if (paymentStatus != null) { - qw.eq("payment_status", paymentStatus); - } - String attach = query.getAttach(); - if (!StringUtils.isEmpty(attach)) { - qw.eq("attach", attach); - } - String responseBody = query.getResponseBody(); - if (!StringUtils.isEmpty(responseBody)) { - qw.eq("response_body", responseBody); - } - return wechatPaymentHistoryMapper.selectList(qw); - } - - /** - * 新增微信订单表 - * - * @param wechatPaymentHistory 微信订单表 - * @return 结果 - */ - public int insert(WechatPaymentHistory wechatPaymentHistory) { - wechatPaymentHistory.setCreateTime(LocalDateTime.now()); - return wechatPaymentHistoryMapper.insert(wechatPaymentHistory); - } - - /** - * 修改微信订单表 - * - * @param wechatPaymentHistory 微信订单表 - * @return 结果 - */ - public int update(WechatPaymentHistory wechatPaymentHistory) { - return wechatPaymentHistoryMapper.updateById(wechatPaymentHistory); - } - - /** - * 删除微信订单表信息 - * - * @param id 微信订单表主键 - * @return 结果 - */ - public int deleteById(Long id) { - return wechatPaymentHistoryMapper.deleteById(id); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/BrandController.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/BrandController.java deleted file mode 100644 index ec325e5..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/BrandController.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.cyl.manager.pms.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.pms.convert.BrandConvert; -import com.cyl.manager.pms.domain.entity.Brand; -import com.cyl.manager.pms.domain.query.BrandQuery; -import com.cyl.manager.pms.service.BrandService; -import com.cyl.manager.pms.domain.vo.BrandVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * 品牌管理Controller - * - * @author zcc - * @date 2022-11-28 - */ -@Api(description ="品牌管理接口列表") -@RestController -@RequestMapping("/pms/brand") -public class BrandController extends BaseController { - @Autowired - private BrandService service; - @Autowired - private BrandConvert convert; - - @ApiOperation("查询品牌管理列表") - @PreAuthorize("@ss.hasPermi('pms:brand:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody BrandQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - @ApiOperation("所有品牌管理列表") - @PreAuthorize("@ss.hasPermi('pms:brand:list')") - @PostMapping("/all") - public ResponseEntity> all(@RequestBody BrandQuery query) { - return ResponseEntity.ok(service.selectList(query, null)); - } - - @ApiOperation("导出品牌管理列表") - @PreAuthorize("@ss.hasPermi('pms:brand:export')") - @Log(title = "品牌管理", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(BrandQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(BrandVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "品牌管理数据")); - } - - @ApiOperation("获取品牌管理详细信息") - @PreAuthorize("@ss.hasPermi('pms:brand:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增品牌管理") - @PreAuthorize("@ss.hasPermi('pms:brand:add')") - @Log(title = "品牌管理", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody Brand brand) { - return ResponseEntity.ok(service.insert(brand)); - } - - @ApiOperation("修改品牌管理") - @PreAuthorize("@ss.hasPermi('pms:brand:edit')") - @Log(title = "品牌管理", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody Brand brand) { - return ResponseEntity.ok(service.update(brand)); - } - - @ApiOperation("删除品牌管理") - @PreAuthorize("@ss.hasPermi('pms:brand:remove')") - @Log(title = "品牌管理", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/ProductCategoryController.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/ProductCategoryController.java deleted file mode 100644 index 640477b..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/ProductCategoryController.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.cyl.manager.pms.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.pms.convert.ProductCategoryConvert; -import com.cyl.manager.pms.domain.entity.ProductCategory; -import com.cyl.manager.pms.domain.query.ProductCategoryQuery; -import com.cyl.manager.pms.service.ProductCategoryService; -import com.cyl.manager.pms.domain.vo.ProductCategoryVO; - -/** - * 商品分类Controller - * - * @author zcc - * @date 2022-11-28 - */ -@Api(description ="商品分类接口列表") -@RestController -@RequestMapping("/pms/productCategory") -public class ProductCategoryController extends BaseController { - @Autowired - private ProductCategoryService service; - @Autowired - private ProductCategoryConvert convert; - - @ApiOperation("查询商品分类列表") - @PreAuthorize("@ss.hasPermi('pms:productCategory:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody ProductCategoryQuery query) { - List list = service.selectList(query, null); - return ResponseEntity.ok(list); - } - - @ApiOperation("获取商品分类详细信息") - @PreAuthorize("@ss.hasPermi('pms:productCategory:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增商品分类") - @PreAuthorize("@ss.hasPermi('pms:productCategory:add')") - @Log(title = "商品分类", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody ProductCategory productCategory) { - return ResponseEntity.ok(service.insert(productCategory)); - } - - @ApiOperation("修改商品分类") - @PreAuthorize("@ss.hasPermi('pms:productCategory:edit')") - @Log(title = "商品分类", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody ProductCategory productCategory) { - return ResponseEntity.ok(service.update(productCategory)); - } - - @ApiOperation("删除商品分类") - @PreAuthorize("@ss.hasPermi('pms:productCategory:remove')") - @Log(title = "商品分类", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/ProductController.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/ProductController.java deleted file mode 100644 index a8f7d86..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/ProductController.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.cyl.manager.pms.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.pms.convert.ProductConvert; -import com.cyl.manager.pms.domain.entity.Product; -import com.cyl.manager.pms.domain.query.ProductQuery; -import com.cyl.manager.pms.service.ProductService; -import com.cyl.manager.pms.domain.vo.ProductVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * 商品信息Controller - * - * @author zcc - * @date 2022-11-28 - */ -@Api(description ="商品信息接口列表") -@RestController -@RequestMapping("/pms/product") -public class ProductController extends BaseController { - @Autowired - private ProductService service; - @Autowired - private ProductConvert convert; - - @ApiOperation("查询商品信息列表") - @PreAuthorize("@ss.hasPermi('pms:product:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody ProductQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出商品信息列表") - @PreAuthorize("@ss.hasPermi('pms:product:export')") - @Log(title = "商品信息", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(ProductQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(ProductVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "商品信息数据")); - } - - @ApiOperation("获取商品信息详细信息") - @PreAuthorize("@ss.hasPermi('pms:product:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增商品信息") - @PreAuthorize("@ss.hasPermi('pms:product:add')") - @Log(title = "商品信息", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody ProductVO product) { - return ResponseEntity.ok(service.insert(product)); - } - - @ApiOperation("修改商品信息") - @PreAuthorize("@ss.hasPermi('pms:product:edit')") - @Log(title = "商品信息", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody ProductVO product) { - return ResponseEntity.ok(service.update(product)); - } - - @ApiOperation("删除商品信息") - @PreAuthorize("@ss.hasPermi('pms:product:remove')") - @Log(title = "商品信息", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/SkuController.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/SkuController.java deleted file mode 100644 index 2d51255..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/controller/SkuController.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.cyl.manager.pms.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.pms.convert.SkuConvert; -import com.cyl.manager.pms.domain.entity.Sku; -import com.cyl.manager.pms.domain.query.SkuQuery; -import com.cyl.manager.pms.service.SkuService; -import com.cyl.manager.pms.domain.vo.SkuVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * sku信息Controller - * - * @author zcc - * @date 2022-11-28 - */ -@Api(description ="sku信息接口列表") -@RestController -@RequestMapping("/pms/sku") -public class SkuController extends BaseController { - @Autowired - private SkuService service; - @Autowired - private SkuConvert convert; - - @ApiOperation("查询sku信息列表") - @PreAuthorize("@ss.hasPermi('pms:sku:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody SkuQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出sku信息列表") - @PreAuthorize("@ss.hasPermi('pms:sku:export')") - @Log(title = "sku信息", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(SkuQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(SkuVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "sku信息数据")); - } - - @ApiOperation("获取sku信息详细信息") - @PreAuthorize("@ss.hasPermi('pms:sku:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增sku信息") - @PreAuthorize("@ss.hasPermi('pms:sku:add')") - @Log(title = "sku信息", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody Sku sku) { - return ResponseEntity.ok(service.insert(sku)); - } - - @ApiOperation("修改sku信息") - @PreAuthorize("@ss.hasPermi('pms:sku:edit')") - @Log(title = "sku信息", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody Sku sku) { - return ResponseEntity.ok(service.update(sku)); - } - - @ApiOperation("删除sku信息") - @PreAuthorize("@ss.hasPermi('pms:sku:remove')") - @Log(title = "sku信息", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/BrandConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/BrandConvert.java deleted file mode 100644 index a008cdd..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/BrandConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.pms.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.pms.domain.entity.Brand; -import com.cyl.manager.pms.domain.vo.BrandVO; -import java.util.List; -/** - * 品牌管理 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface BrandConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/ProductCategoryConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/ProductCategoryConvert.java deleted file mode 100644 index 8596da3..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/ProductCategoryConvert.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.cyl.manager.pms.convert; - -import com.cyl.h5.domain.dto.CategoryDTO; -import org.mapstruct.Mapper; -import com.cyl.manager.pms.domain.entity.ProductCategory; -import com.cyl.manager.pms.domain.vo.ProductCategoryVO; -import java.util.List; -/** - * 商品分类 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface ProductCategoryConvert { - - List dos2vos(List list); - - CategoryDTO do2dto(ProductCategory it); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/ProductConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/ProductConvert.java deleted file mode 100644 index 56dd3d7..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/ProductConvert.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.cyl.manager.pms.convert; - -import com.cyl.h5.domain.vo.H5ProductVO; -import com.cyl.manager.pms.domain.entity.Product; -import com.cyl.manager.pms.domain.vo.ProductVO; -import org.mapstruct.Mapper; - -import java.util.List; -/** - * 商品信息 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface ProductConvert { - - List dos2vos(List list); - Product vo2do(ProductVO productVO); - ProductVO do2vo(Product product); - - List dos2dtos(List products); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/SkuConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/SkuConvert.java deleted file mode 100644 index 399c5ac..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/convert/SkuConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.pms.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.pms.domain.entity.Sku; -import com.cyl.manager.pms.domain.vo.SkuVO; -import java.util.List; -/** - * sku信息 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface SkuConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Brand.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Brand.java deleted file mode 100644 index 081689a..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Brand.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.cyl.manager.pms.domain.entity; - -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 品牌管理对象 pms_brand - * - * @author zcc - */ -@ApiModel(description="品牌管理对象") -@Data -@TableName("pms_brand") -public class Brand extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("NAME") - @Excel(name = "NAME") - private String name; - - @ApiModelProperty("SORT") - @Excel(name = "SORT") - private Integer sort; - - @ApiModelProperty("SHOW_STATUS") - @Excel(name = "SHOW_STATUS") - private Integer showStatus; - - @ApiModelProperty("品牌logo") - @Excel(name = "品牌logo") - private String logo; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Product.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Product.java deleted file mode 100644 index 9af85a9..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Product.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.cyl.manager.pms.domain.entity; - -import java.math.BigDecimal; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 商品信息对象 pms_product - * - * @author zcc - */ -@ApiModel(description="商品信息对象") -@Data -@TableName("pms_product") -public class Product extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("BRAND_ID") - @Excel(name = "BRAND_ID") - private Long brandId; - - @ApiModelProperty("CATEGORY_ID") - @Excel(name = "CATEGORY_ID") - private Long categoryId; - - @ApiModelProperty("商品编码") - @Excel(name = "商品编码") - private String outProductId; - - @ApiModelProperty("NAME") - @Excel(name = "NAME") - private String name; - - @ApiModelProperty("主图") - @Excel(name = "主图") - private String pic; - - @ApiModelProperty("画册图片,连产品图片限制为5张,以逗号分割") - @Excel(name = "画册图片,连产品图片限制为5张,以逗号分割") - private String albumPics; - - @ApiModelProperty("上架状态:0->下架;1->上架") - @Excel(name = "上架状态:0->下架;1->上架") - private Integer publishStatus; - - @ApiModelProperty("排序") - @Excel(name = "排序") - private Integer sort; - - @ApiModelProperty("PRICE") - @Excel(name = "PRICE") - private BigDecimal price; - - @ApiModelProperty("单位") - @Excel(name = "单位") - private String unit; - - @ApiModelProperty("商品重量,默认为克") - @Excel(name = "商品重量,默认为克") - private BigDecimal weight; - - @ApiModelProperty("商品销售属性,json格式") - @Excel(name = "商品销售属性,json格式") - private String productAttr; - - @ApiModelProperty("产品详情网页内容") - @Excel(name = "产品详情网页内容") - private String detailHtml; - - @ApiModelProperty("移动端网页详情") - @Excel(name = "移动端网页详情") - private String detailMobileHtml; - - @ApiModelProperty("品牌名称") - @Excel(name = "品牌名称") - private String brandName; - - @ApiModelProperty("商品分类名称") - @Excel(name = "商品分类名称") - private String productCategoryName; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/ProductCategory.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/ProductCategory.java deleted file mode 100644 index 4194a00..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/ProductCategory.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.cyl.manager.pms.domain.entity; - -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 商品分类对象 pms_product_category - * - * @author zcc - */ -@ApiModel(description="商品分类对象") -@Data -@TableName("pms_product_category") -public class ProductCategory extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("上级分类的编号:0表示一级分类") - @Excel(name = "上级分类的编号:0表示一级分类") - private Long parentId; - - @ApiModelProperty("NAME") - @Excel(name = "NAME") - private String name; - - @ApiModelProperty("分类级别:0->1级;1->2级") - @Excel(name = "分类级别:0->1级;1->2级") - private Integer level; - - @ApiModelProperty("显示状态:0->不显示;1->显示") - @Excel(name = "显示状态:0->不显示;1->显示") - private Integer showStatus; - - @ApiModelProperty("SORT") - @Excel(name = "SORT") - private Integer sort; - - @ApiModelProperty("图标") - @Excel(name = "图标") - private String icon; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Sku.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Sku.java deleted file mode 100644 index a53608d..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/entity/Sku.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.cyl.manager.pms.domain.entity; - -import java.math.BigDecimal; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * sku信息对象 pms_sku - * - * @author zcc - */ -@ApiModel(description="sku信息对象") -@Data -@TableName("pms_sku") -public class Sku extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("PRODUCT_ID") - @Excel(name = "PRODUCT_ID") - private Long productId; - - @ApiModelProperty("sku编码") - @Excel(name = "sku编码") - private String outSkuId; - - @ApiModelProperty("PRICE") - @Excel(name = "PRICE") - private BigDecimal price; - - @ApiModelProperty("展示图片") - @Excel(name = "展示图片") - private String pic; - - @ApiModelProperty("商品销售属性,json格式") - @Excel(name = "商品销售属性,json格式") - private String spData; - - @ApiModelProperty("库存数") - @Excel(name = "库存数") - private Integer stock; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/BrandQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/BrandQuery.java deleted file mode 100644 index 9a3172d..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/BrandQuery.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.cyl.manager.pms.domain.query; - -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 品牌管理 查询 对象 - * - * @author zcc - */ -@ApiModel(description="品牌管理 查询 对象") -@Data -public class BrandQuery { - @ApiModelProperty("NAME 精确匹配") - private String nameLike; - - @ApiModelProperty("SORT 精确匹配") - private Integer sort; - - @ApiModelProperty("SHOW_STATUS 精确匹配") - private Integer showStatus; - - @ApiModelProperty("品牌logo 精确匹配") - private String logo; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/ProductCategoryQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/ProductCategoryQuery.java deleted file mode 100644 index 64d0f59..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/ProductCategoryQuery.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.cyl.manager.pms.domain.query; - -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 商品分类 查询 对象 - * - * @author zcc - */ -@ApiModel(description="商品分类 查询 对象") -@Data -public class ProductCategoryQuery { - @ApiModelProperty("上级分类的编号:0表示一级分类 精确匹配") - private Long parentId; - - @ApiModelProperty("NAME 精确匹配") - private String nameLike; - - @ApiModelProperty("分类级别:0->1级;1->2级 精确匹配") - private Integer level; - - @ApiModelProperty("显示状态:0->不显示;1->显示 精确匹配") - private Integer showStatus; - - @ApiModelProperty("SORT 精确匹配") - private Integer sort; - - @ApiModelProperty("图标 精确匹配") - private String icon; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/ProductQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/ProductQuery.java deleted file mode 100644 index 06441f1..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/ProductQuery.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.cyl.manager.pms.domain.query; - -import java.math.BigDecimal; -import java.util.List; - -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 商品信息 查询 对象 - * - * @author zcc - */ -@ApiModel(description="商品信息 查询 对象") -@Data -public class ProductQuery { - @ApiModelProperty("BRAND_ID 精确匹配") - private Long brandId; - - @ApiModelProperty("CATEGORY_ID 精确匹配") - private Long categoryId; - - @ApiModelProperty("商品编码 精确匹配") - private String outProductId; - - @ApiModelProperty("NAME 精确匹配") - private String nameLike; - - @ApiModelProperty("主图 精确匹配") - private String pic; - - @ApiModelProperty("画册图片,连产品图片限制为5张,以逗号分割 精确匹配") - private String albumPics; - - @ApiModelProperty("上架状态:0->下架;1->上架 精确匹配") - private Integer publishStatus; - - @ApiModelProperty("排序 精确匹配") - private Integer sort; - - @ApiModelProperty("PRICE 精确匹配") - private BigDecimal price; - - @ApiModelProperty("单位 精确匹配") - private String unit; - - @ApiModelProperty(name = "商品销售属性,json格式") - private String productAttr; - - @ApiModelProperty("商品重量,默认为克 精确匹配") - private BigDecimal weight; - - @ApiModelProperty("产品详情网页内容 精确匹配") - private String detailHtml; - - @ApiModelProperty("移动端网页详情 精确匹配") - private String detailMobileHtml; - - @ApiModelProperty("品牌名称 精确匹配") - private String brandNameLike; - - @ApiModelProperty("商品分类名称 精确匹配") - private String productCategoryNameLike; - - @ApiModelProperty("排序字段") - private String orderField = "sort"; - - @ApiModelProperty("排序规则") - private String orderSort = "desc"; - - @ApiModelProperty("搜索关键字") - private String search; - - //排查的id - private List excludeProductIds; - - private List ids; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/SkuQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/SkuQuery.java deleted file mode 100644 index 8f18b7b..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/query/SkuQuery.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.cyl.manager.pms.domain.query; - -import java.math.BigDecimal; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * sku信息 查询 对象 - * - * @author zcc - */ -@ApiModel(description="sku信息 查询 对象") -@Data -public class SkuQuery { - @ApiModelProperty("PRODUCT_ID 精确匹配") - private Long productId; - - @ApiModelProperty("sku编码 精确匹配") - private String outSkuId; - - @ApiModelProperty("PRICE 精确匹配") - private BigDecimal price; - - @ApiModelProperty("展示图片 精确匹配") - private String pic; - - @ApiModelProperty("商品销售属性,json格式 精确匹配") - private String spData; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/BrandVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/BrandVO.java deleted file mode 100644 index 9fe2dba..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/BrandVO.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.cyl.manager.pms.domain.vo; - -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * 品牌管理 数据视图对象 - * - * @author zcc - */ -@Data -public class BrandVO extends BaseAudit { - /** ID */ - private Long id; - /** NAME */ - @Excel(name = "NAME") - private String name; - /** SORT */ - @Excel(name = "SORT") - private Integer sort; - /** SHOW_STATUS */ - @Excel(name = "SHOW_STATUS") - private Integer showStatus; - /** 品牌logo */ - @Excel(name = "品牌logo") - private String logo; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/ProductCategoryVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/ProductCategoryVO.java deleted file mode 100644 index 20ac658..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/ProductCategoryVO.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.cyl.manager.pms.domain.vo; - -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; - -import java.util.List; - -/** - * 商品分类 数据视图对象 - * - * @author zcc - */ -@Data -public class ProductCategoryVO extends BaseAudit { - /** ID */ - private Long id; - /** 上级分类的编号:0表示一级分类 */ - private Long parentId; - /** NAME */ - private String name; - /** 分类级别:0->1级;1->2级 */ - private Integer level; - /** 显示状态:0->不显示;1->显示 */ - private Integer showStatus; - /** SORT */ - private Integer sort; - /** 图标 */ - private String icon; - private List children; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/ProductVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/ProductVO.java deleted file mode 100644 index f2917f7..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/ProductVO.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.cyl.manager.pms.domain.vo; - -import com.cyl.manager.pms.domain.entity.Sku; -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.List; -/** - * 商品信息 数据视图对象 - * - * @author zcc - */ -@Data -public class ProductVO extends BaseAudit { - /** ID */ - private Long id; - /** BRAND_ID */ - @Excel(name = "BRAND_ID") - private Long brandId; - /** CATEGORY_ID */ - @Excel(name = "CATEGORY_ID") - private Long categoryId; - /** 商品编码 */ - @Excel(name = "商品编码") - private String outProductId; - /** NAME */ - @Excel(name = "NAME") - private String name; - /** 主图 */ - @Excel(name = "主图") - private String pic; - /** 画册图片,连产品图片限制为5张,以逗号分割 */ - @Excel(name = "画册图片,连产品图片限制为5张,以逗号分割") - private String albumPics; - /** 上架状态:0->下架;1->上架 */ - @Excel(name = "上架状态:0->下架;1->上架") - private Integer publishStatus; - /** 排序 */ - @Excel(name = "排序") - private Integer sort; - /** PRICE */ - @Excel(name = "PRICE") - private BigDecimal price; - /** 单位 */ - @Excel(name = "单位") - private String unit; - /** 商品重量,默认为克 */ - @Excel(name = "商品重量,默认为克") - private BigDecimal weight; - /** 产品详情网页内容 */ - @Excel(name = "产品详情网页内容") - private String detailHtml; - /** 移动端网页详情 */ - @Excel(name = "移动端网页详情") - private String detailMobileHtml; - /** 品牌名称 */ - @Excel(name = "品牌名称") - private String brandName; - /** 商品分类名称 */ - @Excel(name = "商品分类名称") - private String productCategoryName; - @Excel(name = "商品销售属性,json格式") - private String productAttr; - private List skuList; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/SkuVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/SkuVO.java deleted file mode 100644 index 7749a86..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/domain/vo/SkuVO.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.cyl.manager.pms.domain.vo; - -import java.math.BigDecimal; -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * sku信息 数据视图对象 - * - * @author zcc - */ -@Data -public class SkuVO extends BaseAudit { - /** ID */ - private Long id; - /** PRODUCT_ID */ - @Excel(name = "PRODUCT_ID") - private Long productId; - /** sku编码 */ - @Excel(name = "sku编码") - private String outSkuId; - /** PRICE */ - @Excel(name = "PRICE") - private BigDecimal price; - /** 展示图片 */ - @Excel(name = "展示图片") - private String pic; - /** 商品销售属性,json格式 */ - @Excel(name = "商品销售属性,json格式") - private String spData; - @Excel(name = "库存数") - private Integer stock; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/BrandMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/BrandMapper.java deleted file mode 100644 index 42f1ed6..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/BrandMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.manager.pms.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.pms.domain.entity.Brand; - -/** - * 品牌管理Mapper接口 - * - * @author zcc - */ -public interface BrandMapper extends BaseMapper { - /** - * 查询品牌管理列表 - * - * @param brand 品牌管理 - * @return 品牌管理集合 - */ - List selectByEntity(Brand brand); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/ProductCategoryMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/ProductCategoryMapper.java deleted file mode 100644 index 9586459..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/ProductCategoryMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.manager.pms.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.pms.domain.entity.ProductCategory; - -/** - * 商品分类Mapper接口 - * - * @author zcc - */ -public interface ProductCategoryMapper extends BaseMapper { - /** - * 查询商品分类列表 - * - * @param productCategory 商品分类 - * @return 商品分类集合 - */ - List selectByEntity(ProductCategory productCategory); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/ProductMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/ProductMapper.java deleted file mode 100644 index f13b3d7..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/ProductMapper.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.cyl.manager.pms.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.pms.domain.entity.Product; - -import java.util.List; - -/** - * 商品信息Mapper接口 - * - * @author zcc - */ -public interface ProductMapper extends BaseMapper { - /** - * 查询商品信息列表 - * - * @param product 商品信息 - * @return 商品信息集合 - */ - List selectByEntity(Product product); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/SkuMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/SkuMapper.java deleted file mode 100644 index a4876d5..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/mapper/SkuMapper.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.cyl.manager.pms.mapper; - -import java.time.LocalDateTime; -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.pms.domain.entity.Sku; -import org.apache.ibatis.annotations.Param; - -/** - * sku信息Mapper接口 - * - * @author zcc - */ -public interface SkuMapper extends BaseMapper { - /** - * 查询sku信息列表 - * - * @param sku sku信息 - * @return sku信息集合 - */ - List selectByEntity(Sku sku); - - int updateStockById(@Param("skuId")Long skuId, @Param("optDate")LocalDateTime optDate, @Param("quantity")Integer quantity); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/BrandService.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/BrandService.java deleted file mode 100644 index 849cd61..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/BrandService.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.cyl.manager.pms.service; - -import java.util.List; -import java.time.LocalDateTime; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.github.pagehelper.PageHelper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import com.cyl.manager.pms.mapper.BrandMapper; -import com.cyl.manager.pms.domain.entity.Brand; -import com.cyl.manager.pms.domain.query.BrandQuery; - -/** - * 品牌管理Service业务层处理 - * - * - * @author zcc - */ -@Service -public class BrandService { - @Autowired - private BrandMapper brandMapper; - - /** - * 查询品牌管理 - * - * @param id 品牌管理主键 - * @return 品牌管理 - */ - public Brand selectById(Long id) { - return brandMapper.selectById(id); - } - - /** - * 查询品牌管理列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 品牌管理 - */ - public List selectList(BrandQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - String nameLike = query.getNameLike(); - if (!StringUtils.isEmpty(nameLike)) { - qw.like("name", nameLike); - } - Integer sort = query.getSort(); - if (sort != null) { - qw.eq("sort", sort); - } - Integer showStatus = query.getShowStatus(); - if (showStatus != null) { - qw.eq("show_status", showStatus); - } - String logo = query.getLogo(); - if (!StringUtils.isEmpty(logo)) { - qw.eq("logo", logo); - } - qw.orderByAsc("sort"); - return brandMapper.selectList(qw); - } - - /** - * 新增品牌管理 - * - * @param brand 品牌管理 - * @return 结果 - */ - public int insert(Brand brand) { - brand.setCreateTime(LocalDateTime.now()); - return brandMapper.insert(brand); - } - - /** - * 修改品牌管理 - * - * @param brand 品牌管理 - * @return 结果 - */ - public int update(Brand brand) { - return brandMapper.updateById(brand); - } - - /** - * 删除品牌管理信息 - * - * @param id 品牌管理主键 - * @return 结果 - */ - public int deleteById(Long id) { - return brandMapper.deleteById(id); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/ProductCategoryService.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/ProductCategoryService.java deleted file mode 100644 index ff03bee..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/ProductCategoryService.java +++ /dev/null @@ -1,246 +0,0 @@ -package com.cyl.manager.pms.service; - -import cn.hutool.core.collection.CollUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.OrderItem; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.cyl.h5.domain.dto.CategoryDTO; -import com.cyl.manager.pms.convert.ProductCategoryConvert; -import com.cyl.manager.pms.convert.ProductConvert; -import com.cyl.manager.pms.domain.entity.Product; -import com.cyl.manager.pms.domain.entity.ProductCategory; -import com.cyl.manager.pms.mapper.ProductCategoryMapper; -import com.cyl.manager.pms.mapper.ProductMapper; -import com.cyl.manager.pms.domain.query.ProductCategoryQuery; -import com.cyl.manager.pms.domain.vo.ProductCategoryVO; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.exception.base.BaseException; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; - -import java.time.LocalDateTime; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.stream.Collectors; - -/** - * 商品分类Service业务层处理 - * - * @author zcc - */ -@Service -public class ProductCategoryService { - @Autowired - private ProductCategoryMapper productCategoryMapper; - @Autowired - private ProductMapper productMapper; - @Autowired - private ProductCategoryConvert convert; - @Autowired - private ProductConvert productConvert; - - /** - * 查询商品分类 - * - * @param id 商品分类主键 - * @return 商品分类 - */ - public ProductCategory selectById(Long id) { - return productCategoryMapper.selectById(id); - } - - /** - * 查询商品分类列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 商品分类 - */ - public List selectList(ProductCategoryQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - Long parentId = query.getParentId(); - if (parentId != null) { - qw.eq("parent_id", parentId); - } - String nameLike = query.getNameLike(); - if (!StringUtils.isEmpty(nameLike)) { - qw.like("name", nameLike); - } - Integer level = query.getLevel(); - if (level != null) { - qw.eq("level", level); - } - Integer showStatus = query.getShowStatus(); - if (showStatus != null) { - qw.eq("show_status", showStatus); - } - Integer sort = query.getSort(); - if (sort != null) { - qw.eq("sort", sort); - } - String icon = query.getIcon(); - if (!StringUtils.isEmpty(icon)) { - qw.eq("icon", icon); - } - qw.orderByAsc("sort"); - - List productCategories = productCategoryMapper.selectList(qw); - List productCategoryVOS = convert.dos2vos(productCategories); - return formatTree(productCategoryVOS); - - } - - private List formatTree(List nodes) { - List tree = new ArrayList<>(); - List children = new ArrayList<>(); - // 1)先获取到所有根节点 - for (ProductCategoryVO node : nodes) { - if (node.getParentId() == null || node.getParentId() == 0) { - tree.add(node); - } else { - children.add(node); - } - } - // 2)把所有除根结点外的节点作为子节点,然后遍历每一个根节点 - for (ProductCategoryVO node : tree) { - // 3)递归构建此根的子节点 - recur(node, children); - } - return tree; - } - - private void recur(ProductCategoryVO rootNode, List children) { - // 1)遍历剩余子节点,找出当前根的子节点 - for (ProductCategoryVO node : children) { - // 2)如果子节点的父id等于根节点的id,那么就将这个节点加到根节点的children列表中 - if (rootNode.getId() == node.getParentId()) { - if (rootNode.getChildren() == null) { - rootNode.setChildren(new ArrayList<>()); - } - rootNode.getChildren().add(node); - // 3)以当前节点作为根节点进行递归,检查是否还有子节点。 - recur(node, children); - } - } - } - - - /** - * 新增商品分类 - * - * @param productCategory 商品分类 - * @return 结果 - */ - public int insert(ProductCategory productCategory) { - productCategory.setCreateTime(LocalDateTime.now()); - return productCategoryMapper.insert(productCategory); - } - - /** - * 修改商品分类 - * - * @param productCategory 商品分类 - * @return 结果 - */ - public int update(ProductCategory productCategory) { - return productCategoryMapper.updateById(productCategory); - } - - /** - * 删除商品分类信息 - * - * @param id 商品分类主键 - * @return 结果 - */ - public int deleteById(Long id) { - return productCategoryMapper.deleteById(id); - } - - public List queryCategoryWithProductsForH5() { - QueryWrapper qw1 = new QueryWrapper<>(); -// qw1.eq("level", 0); - qw1.eq("show_status", 1); - Page pageReq = new Page<>(); - pageReq.setCurrent(1L) - .setSize(10) - .setOrders(Collections.singletonList(OrderItem.desc("sort"))); - List categories = productCategoryMapper.selectPage(pageReq, qw1).getRecords(); - if (CollUtil.isEmpty(categories)) { - return Collections.emptyList(); - } - ; - return categories.stream().map(it -> { - CategoryDTO dto = convert.do2dto(it); - // 寻找该分类下的所有子类 - List allChildCate = queryAllChildCate(Collections.singletonList(it.getId()), 0); - QueryWrapper qw = new QueryWrapper<>(); - qw.select("id", "pic", "name", "price", "category_id"); - qw.in("category_id", allChildCate); - qw.le("sort", 100); - List categoryId2List = productMapper.selectList(qw); - dto.setProductList(productConvert.dos2dtos(categoryId2List)); - return dto; - }).collect(Collectors.toList()); - } - - private List queryAllChildCate(List categoryIds, int level) { - List res = new ArrayList<>(); - QueryWrapper qw = new QueryWrapper<>(); - qw.select("id"); - List ids = categoryIds; - while (true) { - qw.clear(); - qw.in("parent_id", ids); - qw.eq("level", level + 1); - qw.eq("show_status", 1); - ids = productCategoryMapper.selectList(qw).stream().map(ProductCategory::getId).collect(Collectors.toList()); - if (CollUtil.isEmpty(ids)) { - break; - } - res.addAll(ids); - level++; - } - res.addAll(categoryIds); - return res; - } - - public List h5Categories() { - QueryWrapper qw = new QueryWrapper<>(); - qw.select("id", "parent_id", "name", "level", "sort", "icon"); - qw.eq("show_status", 1); -// qw.le("level", 2); - return productCategoryMapper.selectList(qw); - } - - public List getBrotherAndChild(Long id, boolean withChild) { - ProductCategory category = productCategoryMapper.selectById(id); - if (category == null) { - throw new BaseException("参数错误"); - } - LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); - qw.eq(ProductCategory::getParentId, category.getParentId()); - qw.eq(ProductCategory::getLevel, category.getLevel()); - qw.eq(ProductCategory::getShowStatus, 1); - qw.select(ProductCategory::getId, ProductCategory::getParentId, ProductCategory::getName, ProductCategory::getLevel, ProductCategory::getSort, ProductCategory::getIcon); - List res = productCategoryMapper.selectList(qw); - if (withChild) { - qw.clear(); - qw.eq(ProductCategory::getParentId, category.getId()); - qw.eq(ProductCategory::getLevel, category.getLevel() + 1); - qw.eq(ProductCategory::getShowStatus, 1); - List childs = productCategoryMapper.selectList(qw); - res.addAll(childs); - } - if (category.getParentId() != null && category.getParentId() != -1) { - res.add(productCategoryMapper.selectById(category.getParentId())); - } - return res; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/ProductService.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/ProductService.java deleted file mode 100644 index 6007056..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/ProductService.java +++ /dev/null @@ -1,210 +0,0 @@ -package com.cyl.manager.pms.service; - -import java.util.*; -import java.time.LocalDateTime; -import java.util.stream.Collectors; - -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.json.JSONUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.cyl.h5.domain.vo.ProductDetailVO; -import com.cyl.manager.pms.convert.ProductConvert; -import com.cyl.manager.pms.domain.entity.Sku; -import com.cyl.manager.pms.mapper.BrandMapper; -import com.cyl.manager.pms.mapper.SkuMapper; -import com.cyl.manager.pms.domain.vo.ProductVO; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.utils.SecurityUtils; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import com.cyl.manager.pms.mapper.ProductMapper; -import com.cyl.manager.pms.domain.entity.Product; -import com.cyl.manager.pms.domain.query.ProductQuery; -import org.springframework.transaction.annotation.Transactional; - -/** - * 商品信息Service业务层处理 - * - * - * @author zcc - */ -@Service -@Slf4j -public class ProductService { - @Autowired - private ProductMapper productMapper; - - @Autowired - private SkuMapper skuMapper; - @Autowired - private BrandMapper brandMapper; - @Autowired - private ProductConvert convert; - - /** - * 查询商品信息 - * - * @param id 商品信息主键 - * @return 商品信息 - */ - public ProductVO selectById(Long id) { - Product product = productMapper.selectById(id); - ProductVO productVO = convert.do2vo(product); - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("product_id", product.getId()); - List skus = skuMapper.selectList(qw); - productVO.setSkuList(skus); - return productVO; - } - - /** - * 查询商品信息列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 商品信息 - */ - public List selectList(ProductQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - if (StringUtils.isNoneEmpty(query.getOrderField())){ - if (StringUtils.isNotEmpty(query.getOrderSort()) && "desc".equalsIgnoreCase(query.getOrderSort())) { - qw.orderByDesc(query.getOrderField()); - } else { - qw.orderByAsc(query.getOrderField()); - } - }else { - qw.orderByDesc("publish_status"); - qw.orderByAsc("sort"); - } - Long categoryId = query.getCategoryId(); - if (categoryId != null) { - qw.eq("category_id", categoryId); - } - Integer publishStatus = query.getPublishStatus(); - if (publishStatus != null) { - qw.eq("publish_status", publishStatus); - } - String search = query.getSearch(); - if (StringUtils.isNoneEmpty(search)){ - qw.like("name", "%".concat(query.getSearch().trim()).concat("%")); - } - if (CollectionUtil.isNotEmpty(query.getExcludeProductIds())) { - qw.notIn("id",query.getExcludeProductIds()); - } - if (CollectionUtil.isNotEmpty(query.getIds())) { - qw.in("id",query.getIds()); - } - return productMapper.selectList(qw); - } - - /** - * 新增商品信息 - * - * @param productVO 商品信息 - * @return 结果 - */ - @Transactional - public int insert(ProductVO productVO) { - - Product product = convert.vo2do(productVO); - product.setCreateTime(LocalDateTime.now()); - List skuList = productVO.getSkuList(); - productMapper.insert(product); - if(skuList!=null){ - skuList.forEach(sku -> { - sku.setProductId(product.getId()); - sku.setCreateTime(LocalDateTime.now()); - skuMapper.insert(sku); - }); - } - return 1; - } - - /** - * 修改商品信息 - * - * @param productVO 商品信息 - * @return 结果 - */ - @Transactional - public int update(ProductVO productVO) { - Product dbProduct = productMapper.selectById(productVO.getId()); - List idList = productVO.getSkuList().stream().filter(it -> it.getId() != null).map(it -> it.getId()).collect(Collectors.toList()); - if (dbProduct == null) { - return 0; - } - Long userId = SecurityUtils.getUserId(); - Product product = convert.vo2do(productVO); - List skuList = productVO.getSkuList(); - product.setUpdateBy(userId); - product.setUpdateTime(LocalDateTime.now()); - productMapper.updateById(product); - //查找库中所有的sku - Map map = new HashMap<>(); - map.put("product_id", product.getId()); - Map skuMap = skuMapper.selectByMap(map).stream().collect(Collectors.toMap(it -> it.getId(), it -> it)); - //针对已有的进行编辑 - List updateList = productVO.getSkuList().stream().filter(it -> it.getId() != null).collect(Collectors.toList()); - if (!CollectionUtil.isEmpty(updateList)) { - log.info("共有{}个sku需要修改,{},productId:{}",updateList.size(), JSONUtil.toJsonStr(updateList),productVO.getId()); - updateList.forEach(it->{ - Sku sku = skuMap.get(it.getId()); - sku.setUpdateBy(SecurityUtils.getUserId()); - sku.setUpdateTime(LocalDateTime.now()); - sku.setPrice(it.getPrice()); - sku.setSpData(it.getSpData()); - sku.setPic(it.getPic()); - sku.setOutSkuId(it.getOutSkuId()); - sku.setStock(it.getStock()); - skuMapper.updateById(sku); - }); - } - //针对没有的进行新增 - List addList = productVO.getSkuList().stream().filter(it -> it.getId() == null).collect(Collectors.toList()); - if (!CollectionUtil.isEmpty(addList)) { - log.info("共有{}个sku需要新增,{},productId:{}",addList.size(), JSONUtil.toJsonStr(addList),productVO.getId()); - addList.forEach(sku -> { - sku.setProductId(product.getId()); - sku.setCreateTime(LocalDateTime.now()); - skuMapper.insert(sku); - }); - } - //删除 - List deleteIds = skuMap.keySet().stream().filter(it -> !idList.contains(it)).collect(Collectors.toList()); - if (!CollectionUtil.isEmpty(deleteIds)) { - log.info("共有{}个sku需要删除,{},productId:{}",deleteIds.size(), JSONUtil.toJsonStr(deleteIds),productVO.getId()); - skuMapper.deleteBatchIds(deleteIds); - } - return 1; - } - - /** - * 删除商品信息信息 - * - * @param id 商品信息主键 - * @return 结果 - */ - public int deleteById(Long id) { - return productMapper.deleteById(id); - } - - public ProductDetailVO queryDetail(Long id) { - ProductDetailVO res = new ProductDetailVO(); - Product d = productMapper.selectById(id); - res.setProduct(d); - LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); - qw.eq(Sku::getProductId, id); - res.setSkus(skuMapper.selectList(qw)); - if (d.getBrandId() != null) { - res.setBrand(brandMapper.selectById(d.getBrandId())); - } - return res; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/SkuService.java b/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/SkuService.java deleted file mode 100644 index f6baed1..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/pms/service/SkuService.java +++ /dev/null @@ -1,102 +0,0 @@ -package com.cyl.manager.pms.service; - -import java.math.BigDecimal; -import java.util.List; -import java.time.LocalDateTime; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.github.pagehelper.PageHelper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import com.cyl.manager.pms.mapper.SkuMapper; -import com.cyl.manager.pms.domain.entity.Sku; -import com.cyl.manager.pms.domain.query.SkuQuery; - -/** - * sku信息Service业务层处理 - * - * - * @author zcc - */ -@Service -public class SkuService { - @Autowired - private SkuMapper skuMapper; - - /** - * 查询sku信息 - * - * @param id sku信息主键 - * @return sku信息 - */ - public Sku selectById(Long id) { - return skuMapper.selectById(id); - } - - /** - * 查询sku信息列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return sku信息 - */ - public List selectList(SkuQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - Long productId = query.getProductId(); - if (productId != null) { - qw.eq("product_id", productId); - } - String outSkuId = query.getOutSkuId(); - if (!StringUtils.isEmpty(outSkuId)) { - qw.eq("out_sku_id", outSkuId); - } - BigDecimal price = query.getPrice(); - if (price != null) { - qw.eq("price", price); - } - String pic = query.getPic(); - if (!StringUtils.isEmpty(pic)) { - qw.eq("pic", pic); - } - String spData = query.getSpData(); - if (!StringUtils.isEmpty(spData)) { - qw.eq("sp_data", spData); - } - return skuMapper.selectList(qw); - } - - /** - * 新增sku信息 - * - * @param sku sku信息 - * @return 结果 - */ - public int insert(Sku sku) { - sku.setCreateTime(LocalDateTime.now()); - return skuMapper.insert(sku); - } - - /** - * 修改sku信息 - * - * @param sku sku信息 - * @return 结果 - */ - public int update(Sku sku) { - return skuMapper.updateById(sku); - } - - /** - * 删除sku信息信息 - * - * @param id sku信息主键 - * @return 结果 - */ - public int deleteById(Long id) { - return skuMapper.deleteById(id); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/controller/IndexStatisticsManagerController.java b/ruoyi-mall/src/main/java/com/cyl/manager/statistics/controller/IndexStatisticsManagerController.java deleted file mode 100644 index c57d12a..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/controller/IndexStatisticsManagerController.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.cyl.manager.statistics.controller; - - -import com.cyl.manager.statistics.domain.query.GoodsStatisticsQuery; -import com.cyl.manager.statistics.domain.query.OrderStatisticsQuery; -import com.cyl.manager.statistics.domain.vo.MemberAndCartStatisticsVO; -import com.cyl.manager.statistics.domain.vo.OrderAndAftersaleStatisticsVO; -import com.cyl.manager.statistics.domain.vo.OrderStatisticsVO; -import com.cyl.manager.statistics.domain.vo.ProductTopVO; -import com.cyl.manager.statistics.service.IndexStatisticsService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -/** - * 管理端,首页统计数据接口 - * - * @author zhangcheng - * @since 2023/05/15 13:53 - */ -@Slf4j -@Api(tags = "管理端,首页统计数据接口") -@RestController -@RequestMapping("/dev/statistics/index") -public class IndexStatisticsManagerController { - - /** - * 首页统计 - */ - @Autowired - private IndexStatisticsService indexStatisticsService; - - @ApiOperation(value = "获取首页查询热卖商品TOP10") - @GetMapping("/goodsStatistics") - public ResponseEntity> goodsStatistics(@Validated GoodsStatisticsQuery goodsStatisticsQuery) { - - return ResponseEntity.ok(indexStatisticsService.goodsStatistics(goodsStatisticsQuery)); - } - - @ApiOperation(value = "订单信息") - @PostMapping("/orderStatistics") - public ResponseEntity> orderStatistics(@RequestBody OrderStatisticsQuery param) { - return ResponseEntity.ok(indexStatisticsService.orderStatistics(param)); - } - - @ApiOperation(value = "会员数,加购数") - @GetMapping("/memberAndCart/statistics") - public ResponseEntity statMemberAndCart(){ - return ResponseEntity.ok(indexStatisticsService.statMemberAndCart()); - } - - @ApiOperation(value = "订单与售后单统计") - @GetMapping("/order/aftersale/statistics") - public ResponseEntity orderAndAftersaleStatistics(){ - return ResponseEntity.ok(indexStatisticsService.orderAndAftersaleStatistics()); - } - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/query/GoodsStatisticsQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/query/GoodsStatisticsQuery.java deleted file mode 100644 index 644c9bb..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/query/GoodsStatisticsQuery.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.cyl.manager.statistics.domain.query; - -import lombok.Data; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - -/** - * 商品统计 - * - * @author zhangcheng - * @since 2023/05/15 13:53 - */ -@Data -public class GoodsStatisticsQuery { - @NotNull(message = "统计类型 1:商品规格排行 2:商品排行") - private Integer statType; - @NotNull(message = "参数size不能为空") - private Integer size; - @NotBlank(message = "参数startDate不能为空") - private String startDate; - @NotBlank(message = "参数endDate不能为空") - private String endDate; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/query/OrderStatisticsQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/query/OrderStatisticsQuery.java deleted file mode 100644 index e093ac3..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/query/OrderStatisticsQuery.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.cyl.manager.statistics.domain.query; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -@ApiModel("订单统计查询条件对象") -@Data -public class OrderStatisticsQuery { - - @ApiModelProperty("查询范围类型 1:近一周 2:近一个月") - private Integer type; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/MemberAndCartStatisticsVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/MemberAndCartStatisticsVO.java deleted file mode 100644 index f1a20e2..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/MemberAndCartStatisticsVO.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.cyl.manager.statistics.domain.vo; - -import lombok.Data; - -@Data -public class MemberAndCartStatisticsVO { - private Integer memberCount; - private Integer cartCount; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/OrderAndAftersaleStatisticsVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/OrderAndAftersaleStatisticsVO.java deleted file mode 100644 index c4894bd..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/OrderAndAftersaleStatisticsVO.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.cyl.manager.statistics.domain.vo; - -import lombok.Data; - -import java.math.BigDecimal; - -@Data -public class OrderAndAftersaleStatisticsVO { - /** 待处理售后 */ - private Integer pendingAftersaleCount; - /** 处理中售后 */ - private Integer processingAftersaleCount; - /** 待发货 */ - private Integer waitDeliveredCount; - /** 已发货 */ - private Integer todayHasDeliveredCount; - /** 订单数 */ - private Integer todayOrderCount; - /** 成交额 */ - private BigDecimal todayTransactionAmount; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/OrderStatisticsVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/OrderStatisticsVO.java deleted file mode 100644 index 7897846..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/OrderStatisticsVO.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.statistics.domain.vo; - -import lombok.Data; - -@Data -public class OrderStatisticsVO { - - private String date; - //订单笔数 - private Double orderCount; - //订单金额 - private Double orderAmount; - private Double numPaidOrders; - private Double numPendingOrders; - private Double numRefundOrders; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/ProductTopVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/ProductTopVO.java deleted file mode 100644 index 0197650..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/domain/vo/ProductTopVO.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.cyl.manager.statistics.domain.vo; - -import lombok.Data; - -@Data -public class ProductTopVO { - - private String productName; - private int totalSales; - private String pic; - private String spData; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/mapper/IndexStatisticsMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/statistics/mapper/IndexStatisticsMapper.java deleted file mode 100644 index a8e143c..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/mapper/IndexStatisticsMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.cyl.manager.statistics.mapper; - - -import com.cyl.manager.statistics.domain.query.GoodsStatisticsQuery; -import com.cyl.manager.statistics.domain.query.OrderStatisticsQuery; -import com.cyl.manager.statistics.domain.vo.OrderStatisticsVO; -import com.cyl.manager.statistics.domain.vo.ProductTopVO; - -import java.util.List; - -public interface IndexStatisticsMapper { - List goodsSkuStatistics(GoodsStatisticsQuery goodsStatisticsQuery); - - List goodsStatistics(GoodsStatisticsQuery goodsStatisticsQuery); - List orderStatistics(OrderStatisticsQuery param); - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/service/IndexStatisticsService.java b/ruoyi-mall/src/main/java/com/cyl/manager/statistics/service/IndexStatisticsService.java deleted file mode 100644 index fed8136..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/statistics/service/IndexStatisticsService.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.cyl.manager.statistics.service; - -import com.cyl.manager.oms.mapper.AftersaleMapper; -import com.cyl.manager.oms.mapper.OrderMapper; -import com.cyl.manager.statistics.mapper.IndexStatisticsMapper; -import com.cyl.manager.statistics.domain.query.GoodsStatisticsQuery; -import com.cyl.manager.statistics.domain.query.OrderStatisticsQuery; -import com.cyl.manager.statistics.domain.vo.MemberAndCartStatisticsVO; -import com.cyl.manager.statistics.domain.vo.OrderAndAftersaleStatisticsVO; -import com.cyl.manager.statistics.domain.vo.OrderStatisticsVO; -import com.cyl.manager.statistics.domain.vo.ProductTopVO; -import com.cyl.manager.ums.mapper.MemberCartMapper; -import com.cyl.manager.ums.mapper.MemberMapper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.LocalTime; -import java.util.List; - -/** - * 管理端,首页统计数据Service业务层处理 - * - * @author zhangcheng - * @since 2023/05/15 13:53 - */ -@Service -public class IndexStatisticsService { - @Autowired - private IndexStatisticsMapper indexStatisticsMapper; - @Autowired - private MemberMapper memberMapper; - @Autowired - private MemberCartMapper memberCartMapper; - @Autowired - private AftersaleMapper aftersaleMapper; - @Autowired - private OrderMapper orderMapper; - - - public List goodsStatistics(GoodsStatisticsQuery goodsStatisticsQuery) { - if (goodsStatisticsQuery.getStatType() == 1){ - return indexStatisticsMapper.goodsSkuStatistics(goodsStatisticsQuery); - }else { - return indexStatisticsMapper.goodsStatistics(goodsStatisticsQuery); - } - } - - public List orderStatistics(OrderStatisticsQuery param) { - return indexStatisticsMapper.orderStatistics(param); - } - - public MemberAndCartStatisticsVO statMemberAndCart() { - MemberAndCartStatisticsVO vo = new MemberAndCartStatisticsVO(); - vo.setMemberCount(memberMapper.selectCount(null)); - vo.setCartCount(memberCartMapper.selectCount(null)); - return vo; - } - - public OrderAndAftersaleStatisticsVO orderAndAftersaleStatistics() { - //统计售后 - OrderAndAftersaleStatisticsVO vo = aftersaleMapper.statPendingAndProcessing(); - //统计未发货数 - vo.setWaitDeliveredCount(orderMapper.statWaitDelivered()); - //统计今日订单数,成交金额,发货数 - LocalDateTime startTime = LocalDateTime.of(LocalDate.now(), LocalTime.MIN); - LocalDateTime endTime = LocalDateTime.of(LocalDate.now(), LocalTime.MAX); - OrderAndAftersaleStatisticsVO todayData = orderMapper.statTodayData(startTime, endTime); - vo.setTodayOrderCount(todayData.getTodayOrderCount()); - vo.setTodayHasDeliveredCount(todayData.getTodayHasDeliveredCount()); - vo.setTodayTransactionAmount(todayData.getTodayTransactionAmount()); - return vo; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/FeedbackController.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/FeedbackController.java deleted file mode 100644 index 2bf1033..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/FeedbackController.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.cyl.manager.ums.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.ums.convert.FeedbackConvert; -import com.cyl.manager.ums.domain.entity.Feedback; -import com.cyl.manager.ums.domain.query.FeedbackQuery; -import com.cyl.manager.ums.service.FeedbackService; - -/** - * 意见反馈Controller - * - * @author zcc - * @date 2024-02-26 - */ -@Api(description ="意见反馈接口列表") -@RestController -@RequestMapping("/ums/feedback") -public class FeedbackController extends BaseController { - @Autowired - private FeedbackService service; - @Autowired - private FeedbackConvert convert; - - @ApiOperation("查询意见反馈列表") - @PreAuthorize("@ss.hasPermi('ums:feedback:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody FeedbackQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - - @ApiOperation("修改意见反馈备注信息") - @Log(title = "意见反馈", businessType = BusinessType.UPDATE) - @PostMapping("/mark/update") - public ResponseEntity editMark(@RequestBody Feedback feedback) { - return ResponseEntity.ok(service.updateMark(feedback)); - } - - @ApiOperation(("修改状态")) - @Log(title = "意见反馈", businessType = BusinessType.UPDATE) - @PostMapping("/handle/status/change") - public ResponseEntity changeStatus(@RequestBody Feedback dto){ - return ResponseEntity.ok(service.changeStatus(dto)); - } - - - @ApiOperation("删除意见反馈") - @PreAuthorize("@ss.hasPermi('ums:feedback:remove')") - @Log(title = "意见反馈", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberAccountController.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberAccountController.java deleted file mode 100644 index 9847af7..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberAccountController.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.cyl.manager.ums.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.ums.convert.MemberAccountConvert; -import com.cyl.manager.ums.domain.entity.MemberAccount; -import com.cyl.manager.ums.domain.query.MemberAccountQuery; -import com.cyl.manager.ums.service.MemberAccountService; -import com.cyl.manager.ums.domain.vo.MemberAccountVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * 会员账户表Controller - * - * @author zcc - * @date 2024-03-01 - */ -@Api(description ="会员账户表接口列表") -@RestController -@RequestMapping("/ums/memberAccount") -public class MemberAccountController extends BaseController { - @Autowired - private MemberAccountService service; - @Autowired - private MemberAccountConvert convert; - - @ApiOperation("查询会员账户表列表") - @PreAuthorize("@ss.hasPermi('ums:memberAccount:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody MemberAccountQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出会员账户表列表") - @PreAuthorize("@ss.hasPermi('ums:memberAccount:export')") - @Log(title = "会员账户表", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(MemberAccountQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(MemberAccountVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "会员账户表数据")); - } - - @ApiOperation("获取会员账户表详细信息") - @PreAuthorize("@ss.hasPermi('ums:memberAccount:query')") - @GetMapping(value = "/{memberId}") - public ResponseEntity getInfo(@PathVariable("memberId") Long memberId) { - return ResponseEntity.ok(service.selectByMemberId(memberId)); - } - - @ApiOperation("新增会员账户表") - @PreAuthorize("@ss.hasPermi('ums:memberAccount:add')") - @Log(title = "会员账户表", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody MemberAccount memberAccount) { - return ResponseEntity.ok(service.insert(memberAccount)); - } - - @ApiOperation("修改会员账户表") - @PreAuthorize("@ss.hasPermi('ums:memberAccount:edit')") - @Log(title = "会员账户表", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody MemberAccount memberAccount) { - return ResponseEntity.ok(service.update(memberAccount)); - } - - @ApiOperation("删除会员账户表") - @PreAuthorize("@ss.hasPermi('ums:memberAccount:remove')") - @Log(title = "会员账户表", businessType = BusinessType.DELETE) - @DeleteMapping("/{memberId}") - public ResponseEntity remove(@PathVariable Long memberId) { - return ResponseEntity.ok(service.deleteByMemberId(memberId)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberAddressController.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberAddressController.java deleted file mode 100644 index 5c5bc64..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberAddressController.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.cyl.manager.ums.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.ums.convert.MemberAddressConvert; -import com.cyl.manager.ums.domain.entity.MemberAddress; -import com.cyl.manager.ums.domain.query.MemberAddressQuery; -import com.cyl.manager.ums.service.MemberAddressService; -import com.cyl.manager.ums.domain.vo.MemberAddressVO; - -/** - * 会员收货地址Controller - * - * @author zcc - * @date 2022-11-28 - */ -@Api(description ="会员收货地址接口列表") -@RestController -@RequestMapping("/ums/memberAddress") -public class MemberAddressController extends BaseController { - @Autowired - private MemberAddressService service; - @Autowired - private MemberAddressConvert convert; - - @ApiOperation("查询会员收货地址列表") - @PreAuthorize("@ss.hasPermi('ums:memberAddress:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody MemberAddressQuery query, Pageable page) { - List list = service.selectList(query, page); - List resList = convert.dos2vos(list); - return ResponseEntity.ok(new PageImpl<>(resList, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出会员收货地址列表") - @PreAuthorize("@ss.hasPermi('ums:memberAddress:export')") - @Log(title = "会员收货地址", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(MemberAddressQuery query) { -// List list = service.selectList(query, null); -// ExcelUtil util = new ExcelUtil<>(MemberAddressVO.class); -// return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "会员收货地址数据")); - return null; - } - - @ApiOperation("获取会员收货地址详细信息") - @PreAuthorize("@ss.hasPermi('ums:memberAddress:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增会员收货地址") - @PreAuthorize("@ss.hasPermi('ums:memberAddress:add')") - @Log(title = "会员收货地址", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody MemberAddress memberAddress) { - return ResponseEntity.ok(service.insert(memberAddress)); - } - - @ApiOperation("修改会员收货地址") - @PreAuthorize("@ss.hasPermi('ums:memberAddress:edit')") - @Log(title = "会员收货地址", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody MemberAddress memberAddress) { - return ResponseEntity.ok(service.update(memberAddress)); - } - - @ApiOperation("删除会员收货地址") - @PreAuthorize("@ss.hasPermi('ums:memberAddress:remove')") - @Log(title = "会员收货地址", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberCartController.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberCartController.java deleted file mode 100644 index ee218ee..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberCartController.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.cyl.manager.ums.controller; - -import com.cyl.manager.ums.domain.vo.MemberCartVO; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.ums.convert.MemberCartConvert; -import com.cyl.manager.ums.domain.entity.MemberCart; -import com.cyl.manager.ums.domain.query.MemberCartQuery; -import com.cyl.manager.ums.service.MemberCartService; - -/** - * 购物车Controller - * - * @author zcc - * @date 2022-11-29 - */ -@Api(description ="购物车接口列表") -@RestController -@RequestMapping("/ums/memberCart") -public class MemberCartController extends BaseController { - @Autowired - private MemberCartService service; - @Autowired - private MemberCartConvert convert; - - @ApiOperation("查询购物车列表") - @PreAuthorize("@ss.hasPermi('ums:memberCart:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody MemberCartQuery query, Pageable page) { - return ResponseEntity.ok(service.selectList(query, page)); - } - - @ApiOperation("导出购物车列表") - @PreAuthorize("@ss.hasPermi('ums:memberCart:export')") - @Log(title = "购物车", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(MemberCartQuery query) { -// List list = service.selectList(query, null); -// ExcelUtil util = new ExcelUtil<>(MemberCartVO.class); -// return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "购物车数据")); - return null; - } - - @ApiOperation("获取购物车详细信息") - @PreAuthorize("@ss.hasPermi('ums:memberCart:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增购物车") - @PreAuthorize("@ss.hasPermi('ums:memberCart:add')") - @Log(title = "购物车", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody MemberCart memberCart) { - return ResponseEntity.ok(service.insert(memberCart)); - } - - @ApiOperation("修改购物车") - @PreAuthorize("@ss.hasPermi('ums:memberCart:edit')") - @Log(title = "购物车", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody MemberCart memberCart) { - return ResponseEntity.ok(service.update(memberCart)); - } - - @ApiOperation("删除购物车") - @PreAuthorize("@ss.hasPermi('ums:memberCart:remove')") - @Log(title = "购物车", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberController.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberController.java deleted file mode 100644 index 6675645..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberController.java +++ /dev/null @@ -1,123 +0,0 @@ -package com.cyl.manager.ums.controller; - -import com.cyl.manager.ums.convert.MemberConvert; -import com.cyl.manager.ums.domain.form.ChangeMemberStatusForm; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.domain.query.MemberQuery; -import com.cyl.manager.ums.domain.vo.MemberDataStatisticsVO; -import com.cyl.manager.ums.domain.vo.MemberVO; -import com.cyl.manager.ums.service.MemberService; -import com.cyl.wechat.WechatAuthService; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.core.domain.AjaxResult; -import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.common.utils.poi.ExcelUtil; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import java.util.List; -/** - * 会员信息Controller - * - * @author zcc - * @date 2022-11-28 - */ -@Api(description ="会员信息接口列表") -@RestController -public class MemberController extends BaseController { - @Autowired - private MemberService service; - @Autowired - private MemberConvert convert; - @Autowired - private WechatAuthService wechatAuthService; - - @RequestMapping(path ={"/ums/member/wechat/code","/h5/member/wechat/code","/no-auth/wechat/code"},method=RequestMethod.GET) - public AjaxResult getWechatCode(@RequestParam(required = false) String scene) { - return AjaxResult.successData(wechatAuthService.getQRCode(scene)); - } - - @ApiOperation("查询会员信息列表") - @PreAuthorize("@ss.hasPermi('ums:member:list')") - @PostMapping("/ums/member/list") - public ResponseEntity> list(@RequestBody MemberQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出会员信息列表") - @PreAuthorize("@ss.hasPermi('ums:member:export')") - @Log(title = "会员信息", businessType = BusinessType.EXPORT) - @GetMapping("/ums/member/export") - public ResponseEntity export(MemberQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(MemberVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "会员信息数据")); - } - - @ApiOperation("获取会员信息详细信息") - @PreAuthorize("@ss.hasPermi('ums:member:query')") - @GetMapping(value = "/ums/member/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增会员信息") - @PreAuthorize("@ss.hasPermi('ums:member:add')") - @Log(title = "会员信息", businessType = BusinessType.INSERT) - @PostMapping("/ums/member") - public ResponseEntity add(@RequestBody Member member) { - return ResponseEntity.ok(service.insert(member)); - } - - @ApiOperation("修改会员信息") - @PreAuthorize("@ss.hasPermi('ums:member:edit')") - @Log(title = "会员信息", businessType = BusinessType.UPDATE) - @PutMapping("/ums/member") - public ResponseEntity edit(@RequestBody Member member) { - return ResponseEntity.ok(service.update(member)); - } - - @ApiOperation("修改会员备注信息") - @PreAuthorize("@ss.hasPermi('ums:member:edit')") - @Log(title = "会员备注信息", businessType = BusinessType.UPDATE) - @PostMapping("/ums/member/mark/update") - public ResponseEntity editMark(@RequestBody Member member) { - return ResponseEntity.ok(service.updateMark(member)); - } - - @ApiOperation("删除会员信息") - @PreAuthorize("@ss.hasPermi('ums:member:remove')") - @Log(title = "会员信息", businessType = BusinessType.DELETE) - @DeleteMapping("/ums/member/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } - - @ApiOperation(("修改会员账户状态")) - @Log(title = "会员信息", businessType = BusinessType.UPDATE) - @PostMapping("/ums/member/status/change") - public ResponseEntity changeStatus(@RequestBody ChangeMemberStatusForm form){ - return ResponseEntity.ok(service.changeStatus(form)); - } - - @ApiOperation("会员手机号解密") - @GetMapping("/ums/member/phone/decrypt/{phoneEncrypted}") - public ResponseEntity getPhoneDecrypted(@PathVariable String phoneEncrypted){ - return ResponseEntity.ok(service.getPhoneDecrypted(phoneEncrypted)); - } - - @ApiOperation("查看会员统计数据") - @GetMapping("/ums/member/view/statistics/{memberId}") - public ResponseEntity viewStatistics(@PathVariable Long memberId){ - return ResponseEntity.ok(service.viewStatistics(memberId)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberLogininforController.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberLogininforController.java deleted file mode 100644 index a5a5c12..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberLogininforController.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.cyl.manager.ums.controller; - -import com.cyl.manager.ums.convert.MemberLogininforConvert; -import com.cyl.manager.ums.domain.entity.MemberLogininfor; -import com.cyl.manager.ums.domain.query.MemberLogininforQuery; -import com.cyl.manager.ums.domain.vo.MemberLogininforVO; -import com.cyl.manager.ums.service.MemberLogininforService; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.common.utils.poi.ExcelUtil; -import com.ruoyi.framework.web.service.TokenService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -/** - * 会员登录记录Controller - * - * @author zcc - * @date 2023-07-26 - */ -@Api(description ="会员登录记录接口列表") -@RestController -@RequestMapping("/ums/memberLogininfor") -public class MemberLogininforController extends BaseController { - @Autowired - private MemberLogininforService service; - @Autowired - private MemberLogininforConvert convert; - @Autowired - private TokenService tokenService; - - @ApiOperation("查询会员登录记录列表") - @PreAuthorize("@ss.hasPermi('ums:memberLogininfor:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody MemberLogininforQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出会员登录记录列表") - @PreAuthorize("@ss.hasPermi('ums:memberLogininfor:export')") - @Log(title = "会员登录记录", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(MemberLogininforQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(MemberLogininforVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "会员登录记录数据")); - } - - @ApiOperation("获取会员登录记录详细信息") - @PreAuthorize("@ss.hasPermi('ums:memberLogininfor:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("修改会员登录记录") - @PreAuthorize("@ss.hasPermi('ums:memberLogininfor:edit')") - @Log(title = "会员登录记录", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody MemberLogininfor memberLogininfor) { - return ResponseEntity.ok(service.update(memberLogininfor)); - } - - @ApiOperation("删除会员登录记录") - @PreAuthorize("@ss.hasPermi('ums:memberLogininfor:remove')") - @Log(title = "会员登录记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberWechatController.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberWechatController.java deleted file mode 100644 index 49a6d15..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/MemberWechatController.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.cyl.manager.ums.controller; - -import java.util.List; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.cyl.manager.ums.convert.MemberWechatConvert; -import com.cyl.manager.ums.domain.entity.MemberWechat; -import com.cyl.manager.ums.domain.query.MemberWechatQuery; -import com.cyl.manager.ums.service.MemberWechatService; -import com.cyl.manager.ums.domain.vo.MemberWechatVO; -import com.ruoyi.common.utils.poi.ExcelUtil; -/** - * 用户微信信息Controller - * - * @author zcc - * @date 2022-11-28 - */ -@Api(description ="用户微信信息接口列表") -@RestController -@RequestMapping("/ums/memberWechat") -public class MemberWechatController extends BaseController { - @Autowired - private MemberWechatService service; - @Autowired - private MemberWechatConvert convert; - - @ApiOperation("查询用户微信信息列表") - @PreAuthorize("@ss.hasPermi('ums:memberWechat:list')") - @PostMapping("/list") - public ResponseEntity> list(@RequestBody MemberWechatQuery query, Pageable page) { - List list = service.selectList(query, page); - return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal())); - } - - @ApiOperation("导出用户微信信息列表") - @PreAuthorize("@ss.hasPermi('ums:memberWechat:export')") - @Log(title = "用户微信信息", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public ResponseEntity export(MemberWechatQuery query) { - List list = service.selectList(query, null); - ExcelUtil util = new ExcelUtil<>(MemberWechatVO.class); - return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "用户微信信息数据")); - } - - @ApiOperation("获取用户微信信息详细信息") - @PreAuthorize("@ss.hasPermi('ums:memberWechat:query')") - @GetMapping(value = "/{id}") - public ResponseEntity getInfo(@PathVariable("id") Long id) { - return ResponseEntity.ok(service.selectById(id)); - } - - @ApiOperation("新增用户微信信息") - @PreAuthorize("@ss.hasPermi('ums:memberWechat:add')") - @Log(title = "用户微信信息", businessType = BusinessType.INSERT) - @PostMapping - public ResponseEntity add(@RequestBody MemberWechat memberWechat) { - return ResponseEntity.ok(service.insert(memberWechat)); - } - - @ApiOperation("修改用户微信信息") - @PreAuthorize("@ss.hasPermi('ums:memberWechat:edit')") - @Log(title = "用户微信信息", businessType = BusinessType.UPDATE) - @PutMapping - public ResponseEntity edit(@RequestBody MemberWechat memberWechat) { - return ResponseEntity.ok(service.update(memberWechat)); - } - - @ApiOperation("删除用户微信信息") - @PreAuthorize("@ss.hasPermi('ums:memberWechat:remove')") - @Log(title = "用户微信信息", businessType = BusinessType.DELETE) - @DeleteMapping("/{id}") - public ResponseEntity remove(@PathVariable Long id) { - return ResponseEntity.ok(service.deleteById(id)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/PlatformVerifyController.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/PlatformVerifyController.java deleted file mode 100644 index c4325de..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/controller/PlatformVerifyController.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.cyl.manager.ums.controller; - -import com.ruoyi.common.core.domain.AjaxResult; -import com.ruoyi.common.core.redis.RedisService; -import com.ruoyi.common.utils.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -@RestController -public class PlatformVerifyController { - - @Autowired - private RedisService redisService; - - /** - * h5 生成验证码 - * @param code - * @return - */ - @GetMapping("/h5/verified/code/generate") - public AjaxResult createCode(String code){ - redisService.setVerifyCode(code); - return AjaxResult.success(true); - } - - - @GetMapping("/no-auth/verified/code") - public AjaxResult verifyCode(String code){ - String verifyCode = redisService.getVerifyCode(code); - if (StringUtils.isEmpty(verifyCode)) { - return AjaxResult.success(false); - } - redisService.deleteVerifyCode(code); - return AjaxResult.success(true); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/FeedbackConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/FeedbackConvert.java deleted file mode 100644 index 9cb6c51..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/FeedbackConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.ums.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.ums.domain.entity.Feedback; -import com.cyl.manager.ums.domain.vo.FeedbackVO; -import java.util.List; -/** - * 意见反馈 DO <=> VO / BO - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface FeedbackConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberAccountConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberAccountConvert.java deleted file mode 100644 index 09da385..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberAccountConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.ums.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.ums.domain.entity.MemberAccount; -import com.cyl.manager.ums.domain.vo.MemberAccountVO; -import java.util.List; -/** - * 会员账户表 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface MemberAccountConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberAddressConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberAddressConvert.java deleted file mode 100644 index 0f346c1..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberAddressConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.ums.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.ums.domain.entity.MemberAddress; -import com.cyl.manager.ums.domain.vo.MemberAddressVO; -import java.util.List; -/** - * 会员收货地址 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface MemberAddressConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberCartConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberCartConvert.java deleted file mode 100644 index 5480ac9..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberCartConvert.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.cyl.manager.ums.convert; - -import com.cyl.manager.pms.domain.entity.Product; -import com.cyl.manager.pms.domain.entity.Sku; -import org.mapstruct.BeanMapping; -import org.mapstruct.Mapper; -import com.cyl.manager.ums.domain.entity.MemberCart; -import com.cyl.manager.ums.domain.vo.MemberCartVO; -import org.mapstruct.Mapping; -import org.mapstruct.MappingTarget; - -import java.util.List; - -/** - * 购物车 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface MemberCartConvert { - - List dos2vos(List list); - - @Mapping(target = "id", ignore = true) - @Mapping(target = "skuId", source = "id") - MemberCart sku2Cart(Sku sku); - - @BeanMapping(ignoreByDefault = true) - @Mapping(source = "name", target = "productName") - void injectProduct(@MappingTarget MemberCart memberCart, Product p); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberConvert.java deleted file mode 100644 index 70a6e38..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.ums.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.domain.vo.MemberVO; -import java.util.List; -/** - * 会员信息 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface MemberConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberLogininforConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberLogininforConvert.java deleted file mode 100644 index 435b288..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberLogininforConvert.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cyl.manager.ums.convert; - -import org.mapstruct.Mapper; -import com.cyl.manager.ums.domain.entity.MemberLogininfor; -import com.cyl.manager.ums.domain.vo.MemberLogininforVO; -import java.util.List; -/** - * 会员登录记录 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface MemberLogininforConvert { - - List dos2vos(List list); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberWechatConvert.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberWechatConvert.java deleted file mode 100644 index 6bb63f7..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/convert/MemberWechatConvert.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.cyl.manager.ums.convert; - -import com.cyl.external.resp.AccessTokenResp; -import org.mapstruct.Mapper; -import com.cyl.manager.ums.domain.entity.MemberWechat; -import com.cyl.manager.ums.domain.vo.MemberWechatVO; -import java.util.List; -/** - * 用户微信信息 DO <=> DTO <=> VO / BO / Query - * - * @author zcc - */ -@Mapper(componentModel = "spring") -public interface MemberWechatConvert { - - List dos2vos(List list); - - MemberWechat info2do(AccessTokenResp info); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/dto/AddressDTO.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/dto/AddressDTO.java deleted file mode 100644 index 426cbc5..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/dto/AddressDTO.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.cyl.manager.ums.domain.dto; - -import lombok.Data; - -import java.util.List; - -/** - * 【请填写功能名称】 DTO 对象 - * - * @author sjm - */ -@Data -public class AddressDTO { - private Long id; - private Long pid; - private String name; - private String level; - private List children; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Address.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Address.java deleted file mode 100644 index d9de717..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Address.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.cyl.manager.ums.domain.entity; - -import com.baomidou.mybatisplus.annotation.TableName; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -/** - * 地址对象 - * - */ -@ApiModel(description="地址对象") -@Data -@TableName("address") -public class Address { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Integer id; - - @ApiModelProperty("地区邮编") - @Excel(name = "地区邮编") - private Long code; - - @ApiModelProperty("父地区邮编") - @Excel(name = "父地区邮编") - private Long parentCode; - - @ApiModelProperty("地区名") - @Excel(name = "地区名") - private String name; - - @ApiModelProperty("地区层级") - @Excel(name = "地区层级") - private Integer level; - - @ApiModelProperty("CREATED_AT") - @Excel(name = "CREATED_AT") - private String createdAt; - - @ApiModelProperty("UPDATED_AT") - @Excel(name = "UPDATED_AT") - private String updatedAt; - - @ApiModelProperty("DELETED_AT") - @Excel(name = "DELETED_AT") - private String deletedAt; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Feedback.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Feedback.java deleted file mode 100644 index 6b8f724..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Feedback.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.cyl.manager.ums.domain.entity; - -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 意见反馈对象 ums_feedback - * - * @author zcc - */ -@ApiModel(description="意见反馈对象") -@Data -@TableName("ums_feedback") -public class Feedback { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("类型") - @Excel(name = "类型") - private String type; - - @ApiModelProperty("具体说明") - @Excel(name = "具体说明") - private String content; - - @ApiModelProperty("图片") - @Excel(name = "图片") - private String images; - - @ApiModelProperty("联系电话") - @Excel(name = "联系电话") - private String phone; - - @ApiModelProperty("创建人") - private Long createBy; - - @ApiModelProperty("创建时间") - private LocalDateTime createTime; - - @ApiModelProperty("处理状态 0:未处理 1:已处理") - @Excel(name = "处理状态 0:未处理 1:已处理") - private Integer handleStatus; - - @ApiModelProperty("备注") - @Excel(name = "备注") - private String remark; - - @ApiModelProperty("处理时间") - @Excel(name = "处理时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime handleTime; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Member.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Member.java deleted file mode 100644 index 9084da6..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/Member.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.cyl.manager.ums.domain.entity; - -import java.math.BigDecimal; -import java.time.LocalDate; -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 会员信息对象 ums_member - * - * @author zcc - */ -@ApiModel(description="会员信息对象") -@Data -@TableName("ums_member") -public class Member extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("昵称") - @Excel(name = "昵称") - private String nickname; - - @ApiModelProperty("密码") - @Excel(name = "密码") - private String password; - - @ApiModelProperty("加密手机号") - private String phoneEncrypted; - - @ApiModelProperty("隐藏前三位后四位的手机号") - private String phoneHidden; - - @ApiModelProperty("用户备注") - @Excel(name = "用户备注") - private String mark; - - @ApiModelProperty("帐号启用状态:0->禁用;1->启用") - @Excel(name = "帐号启用状态:0->禁用;1->启用") - private Integer status; - - @ApiModelProperty("头像") - @Excel(name = "头像") - private String avatar; - - @ApiModelProperty("性别:0->未知;1->男;2->女") - @Excel(name = "性别:0->未知;1->男;2->女") - private Integer gender; - - @ApiModelProperty("用户所在城市") - @Excel(name = "用户所在城市") - private String city; - - @ApiModelProperty("用户所在省份") - @Excel(name = "用户所在省份") - private String province; - - @ApiModelProperty("用户所在国家") - @Excel(name = "用户所在国家") - private String country; - - @ApiModelProperty("公众号运营者对粉丝的备注,公众号运营者可在微信公众平台用户管理界面对粉丝添加备注") - @Excel(name = "公众号运营者对粉丝的备注,公众号运营者可在微信公众平台用户管理界面对粉丝添加备注") - private String remark; - - @ApiModelProperty("生日") - @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd") - private LocalDate birthday; - - @ApiModelProperty("推广员id") - @Excel(name = "推广员id") - private Long spreadUid; - - @ApiModelProperty("推广员关联时间") - @Excel(name = "推广员关联时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime spreadTime; - - @ApiModelProperty("等级") - @Excel(name = "等级") - private Integer level; - - @ApiModelProperty("用户剩余积分") - @Excel(name = "用户剩余积分") - private BigDecimal integral; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberAccount.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberAccount.java deleted file mode 100644 index d7c0b99..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberAccount.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.cyl.manager.ums.domain.entity; - -import java.math.BigDecimal; -import java.time.LocalDateTime; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 会员账户表对象 ums_member_account - * - * @author zcc - */ -@ApiModel(description="会员账户表对象") -@Data -@TableName("ums_member_account") -public class MemberAccount { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("MEMBER_ID") - @TableId(value="member_id", type = IdType.ASSIGN_ID) - private Long memberId; - - @ApiModelProperty("积分余额") - @Excel(name = "积分余额") - private BigDecimal integralBalance; - - @ApiModelProperty("历史总共积分") - @Excel(name = "历史总共积分") - private BigDecimal totalIntegralBalance; - - @ApiModelProperty("修改时间") - private LocalDateTime updateTime; - - @ApiModelProperty("创建时间") - private LocalDateTime createTime; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberAddress.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberAddress.java deleted file mode 100644 index 47430bb..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberAddress.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.cyl.manager.ums.domain.entity; - -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 会员收货地址对象 ums_member_address - * - * @author zcc - */ -@ApiModel(description="会员收货地址对象") -@Data -@TableName("ums_member_address") -public class MemberAddress extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("MEMBER_ID") - @Excel(name = "MEMBER_ID") - private Long memberId; - - @ApiModelProperty("收货人名称") - @Excel(name = "收货人名称") - private String name; - - @ApiModelProperty("隐藏前三位后四位的手机号") - @Excel(name = "隐藏前三位后四位的手机号") - private String phoneHidden; - - @ApiModelProperty("加密的手机号") - @Excel(name = "加密的手机号") - private String phoneEncrypted; - - @ApiModelProperty("是否为默认") - @Excel(name = "是否为默认") - private Integer defaultStatus; - - @ApiModelProperty("邮政编码") - @Excel(name = "邮政编码") - private String postCode; - - @ApiModelProperty("省份/直辖市") - @Excel(name = "省份/直辖市") - private String province; - - @ApiModelProperty("城市") - @Excel(name = "城市") - private String city; - - @ApiModelProperty("区") - @Excel(name = "区") - private String district; - - @ApiModelProperty("省份/直辖市id") - @Excel(name = "省份/直辖市id") - private Long provinceId; - - @ApiModelProperty("城市id") - @Excel(name = "城市id") - private Long cityId; - - @ApiModelProperty("区id") - @Excel(name = "区id") - private Long districtId; - - @ApiModelProperty("详细地址(街道)") - @Excel(name = "详细地址(街道)") - private String detailAddress; - - @ApiModelProperty("是否默认") - @Excel(name = "是否默认") - private Integer isDefault; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberCart.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberCart.java deleted file mode 100644 index 054a074..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberCart.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.cyl.manager.ums.domain.entity; - -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 购物车对象 ums_member_cart - * - * @author zcc - */ -@ApiModel(description="购物车对象") -@Data -@TableName("ums_member_cart") -public class MemberCart extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("购物车表ID") - private Long id; - - @ApiModelProperty("0->失效;1->有效") - @Excel(name = "0->失效;1->有效") - private Integer status; - - @ApiModelProperty("用户ID") - @Excel(name = "用户ID") - private Long memberId; - - @ApiModelProperty("商品ID") - @Excel(name = "商品ID") - private Long productId; - - @ApiModelProperty("展示图片") - @Excel(name = "展示图片") - private String pic; - - @ApiModelProperty("SKU ID") - @Excel(name = "SKU ID") - private Long skuId; - - @ApiModelProperty("PRODUCT_NAME") - @Excel(name = "PRODUCT_NAME") - private String productName; - - @ApiModelProperty("商品属性") - @Excel(name = "商品属性") - private String spData; - - @ApiModelProperty("商品数量") - @Excel(name = "商品数量") - private Integer quantity; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberLogininfor.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberLogininfor.java deleted file mode 100644 index 61b57db..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberLogininfor.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.cyl.manager.ums.domain.entity; - -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 会员登录记录对象 ums_member_logininfor - * - * @author zcc - */ -@ApiModel(description="会员登录记录对象") -@Data -@TableName("ums_member_logininfor") -public class MemberLogininfor { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("会员手机号") - @Excel(name = "会员手机号") - private String phone; - - @ApiModelProperty("会员id") - @Excel(name = "会员id") - private Long memberId; - - @ApiModelProperty("登录IP地址") - @Excel(name = "登录IP地址") - private String ipaddr; - - @ApiModelProperty("登录地点") - @Excel(name = "登录地点") - private String loginLocation; - - @ApiModelProperty("浏览器类型") - @Excel(name = "浏览器类型") - private String browser; - - @ApiModelProperty("操作系统") - @Excel(name = "操作系统") - private String os; - - @ApiModelProperty("登陆时间") - @Excel(name = "登陆时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime loginTime; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberWechat.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberWechat.java deleted file mode 100644 index c95cdfc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/entity/MemberWechat.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.cyl.manager.ums.domain.entity; - -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -import com.baomidou.mybatisplus.annotation.TableName; -/** - * 用户微信信息对象 ums_member_wechat - * - * @author zcc - */ -@ApiModel(description="用户微信信息对象") -@Data -@TableName("ums_member_wechat") -public class MemberWechat extends BaseAudit { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("ID") - private Long id; - - @ApiModelProperty("MEMBER_ID") - @Excel(name = "MEMBER_ID") - private Long memberId; - - @ApiModelProperty("只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段") - @Excel(name = "只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段") - private String unionid; - - @ApiModelProperty("用户的标识,对当前公众号唯一") - @Excel(name = "用户的标识,对当前公众号唯一") - private String openid; - - @ApiModelProperty("小程序唯一身份ID") - @Excel(name = "小程序唯一身份ID") - private String routineOpenid; - - @ApiModelProperty("用户所在的分组ID(兼容旧的用户分组接口)") - @Excel(name = "用户所在的分组ID", readConverterExp = "兼=容旧的用户分组接口") - private Integer groupid; - - @ApiModelProperty("用户被打上的标签ID列表") - @Excel(name = "用户被打上的标签ID列表") - private String tagidList; - - @ApiModelProperty("用户是否订阅该公众号标识") - @Excel(name = "用户是否订阅该公众号标识") - private Integer subscribe; - - @ApiModelProperty("关注公众号时间") - @Excel(name = "关注公众号时间") - private Integer subscribeTime; - - @ApiModelProperty("小程序用户会话密匙") - @Excel(name = "小程序用户会话密匙") - private String sessionKey; - - @ApiModelProperty("token") - @Excel(name = "token") - private String accessToken; - - @ApiModelProperty("过期时间") - @Excel(name = "过期时间") - private Integer expiresIn; - - @ApiModelProperty("刷新token") - @Excel(name = "刷新token") - private String refreshToken; - - @ApiModelProperty("过期时间") - @Excel(name = "过期时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime expireTime; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/AddMemberCartForm.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/AddMemberCartForm.java deleted file mode 100644 index c2ae201..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/AddMemberCartForm.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.cyl.manager.ums.domain.form; - -import lombok.Data; - -import javax.validation.constraints.NotNull; - -@Data -public class AddMemberCartForm { - /** - * 规格id - */ - @NotNull(message = "规格必填!") - private Long skuId; - /** - * 数量 - */ - private Integer buyNum; - private Long productId; - private String pic; - private String productName; - private String spData; - private Integer quantity; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/ChangeMemberStatusForm.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/ChangeMemberStatusForm.java deleted file mode 100644 index 735634a..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/ChangeMemberStatusForm.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.cyl.manager.ums.domain.form; - -import lombok.Data; - -@Data -public class ChangeMemberStatusForm { - private Long memberId; - private Integer status; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/MemberAddressForm.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/MemberAddressForm.java deleted file mode 100644 index 3093970..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/MemberAddressForm.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.cyl.manager.ums.domain.form; - -import lombok.Data; - -@Data -public class MemberAddressForm { - private Long id; - private Long memberId; - private String name; - private String phone; - private Integer defaultStatus; - private String postCode; - private String province; - private String city; - private String district; - private String detailAddress; - private Integer isDefault; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/UpdateMemberCartForm.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/UpdateMemberCartForm.java deleted file mode 100644 index fd99583..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/form/UpdateMemberCartForm.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.cyl.manager.ums.domain.form; - -import lombok.Data; - -import javax.validation.constraints.Max; -import javax.validation.constraints.Min; -import javax.validation.constraints.NotNull; - -@Data -public class UpdateMemberCartForm { - @NotNull(message = "id 不能为空") - private Long id; - - @NotNull(message = "数量必填") - @Min(value = 0, message = "数量不小于0") - @Max(value = Integer.MAX_VALUE, message = "数量不大于" + Integer.MAX_VALUE) - private Integer num; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/FeedbackQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/FeedbackQuery.java deleted file mode 100644 index 8be24cd..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/FeedbackQuery.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.cyl.manager.ums.domain.query; - -import java.time.LocalDateTime; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 意见反馈 查询 对象 - * - * @author zcc - */ -@ApiModel(description="意见反馈 查询 对象") -@Data -public class FeedbackQuery { - @ApiModelProperty("类型 精确匹配") - private String type; - - @ApiModelProperty("具体说明 精确匹配") - private String content; - - @ApiModelProperty("图片 精确匹配") - private String images; - - @ApiModelProperty("联系电话 精确匹配") - private String phone; - - @ApiModelProperty("处理状态 0:未处理 1:已处理 精确匹配") - private Integer handleStatus; - - @ApiModelProperty("处理时间 精确匹配") - private LocalDateTime handleTime; - - private String beginTime; - - private String endTime; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberAccountQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberAccountQuery.java deleted file mode 100644 index cbdeccc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberAccountQuery.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.cyl.manager.ums.domain.query; - -import java.math.BigDecimal; - -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 会员账户表 查询 对象 - * - * @author zcc - */ -@ApiModel(description="会员账户表 查询 对象") -@Data -public class MemberAccountQuery { - @ApiModelProperty("积分余额 精确匹配") - private BigDecimal integralBalance; - - @ApiModelProperty("历史总共积分 精确匹配") - private BigDecimal totalIntegralBalance; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberAddressQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberAddressQuery.java deleted file mode 100644 index 91a8b62..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberAddressQuery.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.cyl.manager.ums.domain.query; - -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 会员收货地址 查询 对象 - * - * @author zcc - */ -@ApiModel(description="会员收货地址 查询 对象") -@Data -public class MemberAddressQuery { - @ApiModelProperty("MEMBER_ID 精确匹配") - private Long memberId; - - @ApiModelProperty("收货人名称 精确匹配") - private String nameLike; - - @ApiModelProperty("PHONE 精确匹配") - private String phone; - - @ApiModelProperty("是否为默认 精确匹配") - private Integer defaultStatus; - - @ApiModelProperty("邮政编码 精确匹配") - private String postCode; - - @ApiModelProperty("省份/直辖市 精确匹配") - private String province; - - @ApiModelProperty("城市 精确匹配") - private String city; - - @ApiModelProperty("区 精确匹配") - private String district; - - @ApiModelProperty("详细地址 精确匹配") - private String detailAddress; - - @ApiModelProperty("是否默认 精确匹配") - private Integer isDefault; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberCartQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberCartQuery.java deleted file mode 100644 index 6a7a766..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberCartQuery.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.cyl.manager.ums.domain.query; - -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 购物车 查询 对象 - * - * @author zcc - */ -@ApiModel(description="购物车 查询 对象") -@Data -public class MemberCartQuery { - @ApiModelProperty("0->失效;1->有效 精确匹配") - private Integer status; - - @ApiModelProperty("用户ID 精确匹配") - private Long memberId; - - @ApiModelProperty("商品ID 精确匹配") - private Long productId; - - @ApiModelProperty("展示图片 精确匹配") - private String pic; - - @ApiModelProperty("SKU ID 精确匹配") - private Long skuId; - - @ApiModelProperty("商品名称 精确匹配") - private String productName; - - @ApiModelProperty("商品属性 精确匹配") - private String spData; - - @ApiModelProperty("商品数量 精确匹配") - private Integer quantity; - - @ApiModelProperty("用户手机号") - private String phone; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberLogininforQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberLogininforQuery.java deleted file mode 100644 index 5a37f70..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberLogininforQuery.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.cyl.manager.ums.domain.query; - -import java.time.LocalDateTime; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 会员登录记录 查询 对象 - * - * @author zcc - */ -@ApiModel(description="会员登录记录 查询 对象") -@Data -public class MemberLogininforQuery { - @ApiModelProperty("会员手机号 精确匹配") - private String phone; - - @ApiModelProperty("会员id 精确匹配") - private Long memberId; - - @ApiModelProperty("登录IP地址 精确匹配") - private String ipaddr; - - @ApiModelProperty("登录地点 精确匹配") - private String loginLocation; - - @ApiModelProperty("浏览器类型 精确匹配") - private String browser; - - @ApiModelProperty("操作系统 精确匹配") - private String os; - - @ApiModelProperty("登陆时间 精确匹配") - private LocalDateTime loginTime; - - private String beginTime; - - private String endTime; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberQuery.java deleted file mode 100644 index c91ce08..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberQuery.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.cyl.manager.ums.domain.query; - -import java.math.BigDecimal; -import java.time.LocalDate; -import java.time.LocalDateTime; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 会员信息 查询 对象 - * - * @author zcc - */ -@ApiModel(description="会员信息 查询 对象") -@Data -public class MemberQuery { - @ApiModelProperty("昵称 精确匹配") - private String nickname; - - @ApiModelProperty("密码 精确匹配") - private String password; - - @ApiModelProperty("手机号码 精确匹配") - private String phone; - - @ApiModelProperty("有无备注 1:有备注 0:无备注") - private Integer hasMark; - - @ApiModelProperty("用户备注 精确匹配") - private String mark; - - @ApiModelProperty("帐号启用状态:0->禁用;1->启用 精确匹配") - private Integer status; - - @ApiModelProperty("头像 精确匹配") - private String avatar; - - @ApiModelProperty("性别:0->未知;1->男;2->女 精确匹配") - private Integer gender; - - @ApiModelProperty("用户所在城市 精确匹配") - private String city; - - @ApiModelProperty("用户所在省份 精确匹配") - private String province; - - @ApiModelProperty("用户所在国家 精确匹配") - private String country; - - @ApiModelProperty("生日 精确匹配") - private LocalDate birthday; - - @ApiModelProperty("推广员id 精确匹配") - private Long spreadUid; - - @ApiModelProperty("推广员关联时间 精确匹配") - private LocalDateTime spreadTime; - - @ApiModelProperty("等级 精确匹配") - private Integer level; - - @ApiModelProperty("用户剩余积分 精确匹配") - private BigDecimal integral; - - private String beginTime; - - private String endTime; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberWechatQuery.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberWechatQuery.java deleted file mode 100644 index e303f1b..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/query/MemberWechatQuery.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.cyl.manager.ums.domain.query; - -import java.time.LocalDateTime; -import lombok.Data; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * 用户微信信息 查询 对象 - * - * @author zcc - */ -@ApiModel(description="用户微信信息 查询 对象") -@Data -public class MemberWechatQuery { - @ApiModelProperty("MEMBER_ID 精确匹配") - private Long memberId; - - @ApiModelProperty("只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段 精确匹配") - private String unionid; - - @ApiModelProperty("用户的标识,对当前公众号唯一 精确匹配") - private String openid; - - @ApiModelProperty("小程序唯一身份ID 精确匹配") - private String routineOpenid; - - @ApiModelProperty("用户所在的分组ID(兼容旧的用户分组接口) 精确匹配") - private Integer groupid; - - @ApiModelProperty("用户被打上的标签ID列表 精确匹配") - private String tagidList; - - @ApiModelProperty("用户是否订阅该公众号标识 精确匹配") - private Integer subscribe; - - @ApiModelProperty("关注公众号时间 精确匹配") - private Integer subscribeTime; - - @ApiModelProperty("小程序用户会话密匙 精确匹配") - private String sessionKey; - - @ApiModelProperty("token 精确匹配") - private String accessToken; - - @ApiModelProperty("过期时间 精确匹配") - private Integer expiresIn; - - @ApiModelProperty("刷新token 精确匹配") - private String refreshToken; - - @ApiModelProperty("过期时间 精确匹配") - private LocalDateTime expireTime; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/FeedbackVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/FeedbackVO.java deleted file mode 100644 index 0694b31..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/FeedbackVO.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.cyl.manager.ums.domain.vo; - -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -/** - * 意见反馈 数据视图对象 - * - * @author zcc - */ -@Data -public class FeedbackVO { - /** ID */ - private Long id; - /** 类型 */ - @Excel(name = "类型") - private String type; - /** 具体说明 */ - @Excel(name = "具体说明") - private String content; - /** 图片 */ - @Excel(name = "图片") - private String images; - /** 联系电话 */ - @Excel(name = "联系电话") - private String phone; - /** 创建人 */ - private Long createBy; - /** 创建时间 */ - private LocalDateTime createTime; - /** 处理状态 0:未处理 1:已处理 */ - @Excel(name = "处理状态 0:未处理 1:已处理") - private Integer handleStatus; - /** 备注 */ - @Excel(name = "备注") - private String remark; - /** 处理时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "处理时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime handleTime; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberAccountVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberAccountVO.java deleted file mode 100644 index e0a99bb..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberAccountVO.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.cyl.manager.ums.domain.vo; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import lombok.Data; -/** - * 会员账户表 数据视图对象 - * - * @author zcc - */ -@Data -public class MemberAccountVO { - /** MEMBER_ID */ - private Long memberId; - /** 积分余额 */ - @Excel(name = "积分余额") - private BigDecimal integralBalance; - /** 历史总共积分 */ - @Excel(name = "历史总共积分") - private BigDecimal totalIntegralBalance; - /** 修改时间 */ - private LocalDateTime updateTime; - /** 创建时间 */ - private LocalDateTime createTime; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberAddressVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberAddressVO.java deleted file mode 100644 index c0dbf23..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberAddressVO.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.cyl.manager.ums.domain.vo; - -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * 会员收货地址 数据视图对象 - * - * @author zcc - */ -@Data -public class MemberAddressVO extends BaseAudit { - /** ID */ - private Long id; - /** MEMBER_ID */ - @Excel(name = "MEMBER_ID") - private Long memberId; - /** 收货人名称 */ - @Excel(name = "收货人名称") - private String name; - /** PHONE */ - @Excel(name = "PHONE") - private String phone; - @Excel(name = "隐藏前三位后四位的手机号") - private String phoneHidden; - /** 是否为默认 */ - @Excel(name = "是否为默认") - private Integer defaultStatus; - /** 邮政编码 */ - @Excel(name = "邮政编码") - private String postCode; - /** 省份/直辖市 */ - @Excel(name = "省份/直辖市") - private String province; - /** 城市 */ - @Excel(name = "城市") - private String city; - /** 区 */ - @Excel(name = "区") - private String district; - /** 详细地址(街道) */ - @Excel(name = "详细地址(街道)") - private String detailAddress; - /** 是否默认 */ - @Excel(name = "是否默认") - private Integer isDefault; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberCartVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberCartVO.java deleted file mode 100644 index a166000..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberCartVO.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.cyl.manager.ums.domain.vo; - -import com.ruoyi.common.annotation.Excel; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; - -import java.math.BigDecimal; -import java.time.LocalDateTime; - -/** - * 购物车 数据视图对象 - * - * @author zcc - */ -@Data -public class MemberCartVO extends BaseAudit { - /** 购物车表ID */ - private Long id; - /** 0->失效;1->有效 */ - @Excel(name = "0->失效;1->有效") - private Integer status; - /** 用户ID */ - @Excel(name = "用户ID") - private Long memberId; - private String nickname; - private String mark; - /** 商品ID */ - @Excel(name = "商品ID") - private Long productId; - /** 展示图片 */ - @Excel(name = "展示图片") - private String pic; - /** SKU ID */ - @Excel(name = "SKU ID") - private Long skuId; - /** PRODUCT_NAME */ - @Excel(name = "PRODUCT_NAME") - private String productName; - /** 商品属性 */ - @Excel(name = "商品属性") - private String spData; - /** 商品数量 */ - @Excel(name = "商品数量") - private Integer quantity; - /** 加入时间 */ - private LocalDateTime createTime; - /** sku价格 */ - private BigDecimal price; - /** sku是否存在 */ - private Integer skuIfExist; - /** 隐藏四位的手机号 */ - private String phoneHidden; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberDataStatisticsVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberDataStatisticsVO.java deleted file mode 100644 index 43cb650..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberDataStatisticsVO.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.manager.ums.domain.vo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.math.BigDecimal; - -@Data -@ApiModel("会员下单数据统计对象") -public class MemberDataStatisticsVO { - @ApiModelProperty("购物车数") - private Integer cartCount; - @ApiModelProperty("订单数") - private Integer orderCount; - @ApiModelProperty("下单金额") - private BigDecimal orderAmount; - @ApiModelProperty("售后数") - private Integer aftersaleCount; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberLogininforVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberLogininforVO.java deleted file mode 100644 index 7312828..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberLogininforVO.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.cyl.manager.ums.domain.vo; - -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -/** - * 会员登录记录 数据视图对象 - * - * @author zcc - */ -@Data -public class MemberLogininforVO { - /** ID */ - private Long id; - /** 会员手机号 */ - @Excel(name = "会员手机号") - private String phone; - /** 会员id */ - @Excel(name = "会员id") - private Long memberId; - /** 登录IP地址 */ - @Excel(name = "登录IP地址") - private String ipaddr; - /** 登录地点 */ - @Excel(name = "登录地点") - private String loginLocation; - /** 浏览器类型 */ - @Excel(name = "浏览器类型") - private String browser; - /** 操作系统 */ - @Excel(name = "操作系统") - private String os; - /** 登陆时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "登陆时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime loginTime; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberVO.java deleted file mode 100644 index 14a1c64..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberVO.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.cyl.manager.ums.domain.vo; - -import java.math.BigDecimal; -import java.time.LocalDate; -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * 会员信息 数据视图对象 - * - * @author zcc - */ -@Data -public class MemberVO extends BaseAudit { - /** ID */ - private Long id; - /** 昵称 */ - @Excel(name = "昵称") - private String nickname; - /** 手机号 */ - private String phone; - /** 隐藏前三位后四位的手机号 */ - private String phoneHidden; - /** 用户备注 */ - @Excel(name = "用户备注") - private String mark; - /** 帐号启用状态:0->禁用;1->启用 */ - @Excel(name = "帐号启用状态:0->禁用;1->启用") - private Integer status; - /** 头像 */ - @Excel(name = "头像") - private String avatar; - /** 性别:0->未知;1->男;2->女 */ - @Excel(name = "性别:0->未知;1->男;2->女") - private Integer gender; - /** 用户所在城市 */ - @Excel(name = "用户所在城市") - private String city; - /** 用户所在省份 */ - @Excel(name = "用户所在省份") - private String province; - /** 用户所在国家 */ - @Excel(name = "用户所在国家") - private String country; - /** 公众号运营者对粉丝的备注,公众号运营者可在微信公众平台用户管理界面对粉丝添加备注 */ - @Excel(name = "公众号运营者对粉丝的备注,公众号运营者可在微信公众平台用户管理界面对粉丝添加备注") - private String remark; - /** 生日 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd") - private LocalDate birthday; - /** 推广员id */ - @Excel(name = "推广员id") - private Long spreadUid; - /** 推广员关联时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "推广员关联时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime spreadTime; - /** 等级 */ - @Excel(name = "等级") - private Integer level; - /** 用户剩余积分 */ - @Excel(name = "用户剩余积分") - private BigDecimal integral; - /** openId */ - @Excel(name = "openId") - private String openId; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberWechatVO.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberWechatVO.java deleted file mode 100644 index 8e88cb0..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/domain/vo/MemberWechatVO.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.cyl.manager.ums.domain.vo; - -import java.time.LocalDateTime; -import com.ruoyi.common.annotation.Excel; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; -/** - * 用户微信信息 数据视图对象 - * - * @author zcc - */ -@Data -public class MemberWechatVO extends BaseAudit { - /** ID */ - private Long id; - /** MEMBER_ID */ - @Excel(name = "MEMBER_ID") - private Long memberId; - /** 只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段 */ - @Excel(name = "只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段") - private String unionid; - /** 用户的标识,对当前公众号唯一 */ - @Excel(name = "用户的标识,对当前公众号唯一") - private String openid; - /** 小程序唯一身份ID */ - @Excel(name = "小程序唯一身份ID") - private String routineOpenid; - /** 用户所在的分组ID(兼容旧的用户分组接口) */ - @Excel(name = "用户所在的分组ID", readConverterExp = "兼=容旧的用户分组接口") - private Integer groupid; - /** 用户被打上的标签ID列表 */ - @Excel(name = "用户被打上的标签ID列表") - private String tagidList; - /** 用户是否订阅该公众号标识 */ - @Excel(name = "用户是否订阅该公众号标识") - private Integer subscribe; - /** 关注公众号时间 */ - @Excel(name = "关注公众号时间") - private Integer subscribeTime; - /** 小程序用户会话密匙 */ - @Excel(name = "小程序用户会话密匙") - private String sessionKey; - /** token */ - @Excel(name = "token") - private String accessToken; - /** 过期时间 */ - @Excel(name = "过期时间") - private Integer expiresIn; - /** 刷新token */ - @Excel(name = "刷新token") - private String refreshToken; - /** 过期时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "过期时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private LocalDateTime expireTime; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/AddressMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/AddressMapper.java deleted file mode 100644 index 5a97a37..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/AddressMapper.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.cyl.manager.ums.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.ums.domain.entity.Address; - -import java.util.List; - -/** - * 【请填写功能名称】Mapper接口 - * - * @author sjm - */ -public interface AddressMapper extends BaseMapper
{ - /** - * 查询【请填写功能名称】列表 - * - * @param address 【请填写功能名称】 - * @return 【请填写功能名称】集合 - */ - List
selectByEntity(Address address); - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/FeedbackMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/FeedbackMapper.java deleted file mode 100644 index bedcf89..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/FeedbackMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.manager.ums.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.ums.domain.entity.Feedback; - -/** - * 意见反馈Mapper接口 - * - * @author zcc - */ -public interface FeedbackMapper extends BaseMapper { - /** - * 查询意见反馈列表 - * - * @param feedback 意见反馈 - * @return 意见反馈集合 - */ - List selectByEntity(Feedback feedback); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberAccountMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberAccountMapper.java deleted file mode 100644 index 2ced8ee..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberAccountMapper.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.cyl.manager.ums.mapper; - -import java.math.BigDecimal; -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import org.apache.ibatis.annotations.Param; -import com.cyl.manager.ums.domain.entity.MemberAccount; - -/** - * 会员账户表Mapper接口 - * - * @author zcc - */ -public interface MemberAccountMapper extends BaseMapper { - /** - * 查询会员账户表列表 - * - * @param memberAccount 会员账户表 - * @return 会员账户表集合 - */ - List selectByEntity(MemberAccount memberAccount); - - int updateIntegralBalance(@Param("amount") BigDecimal amount, @Param("memberId") Long memberId); - - int updateIntegral(@Param("useIntegral") BigDecimal useIntegral, @Param("memberId") Long memberId); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberAddressMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberAddressMapper.java deleted file mode 100644 index 0f351d2..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberAddressMapper.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.cyl.manager.ums.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.ums.domain.entity.MemberAddress; - -/** - * 会员收货地址Mapper接口 - * - * @author zcc - */ -public interface MemberAddressMapper extends BaseMapper { - /** - * 查询会员收货地址列表 - * - * @param memberAddress 会员收货地址 - * @return 会员收货地址集合 - */ - List selectByEntity(MemberAddress memberAddress); - - int updateByPrimaryKeySelective(MemberAddress address); - - void updateDefault(int IsDefault, Long id); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberCartMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberCartMapper.java deleted file mode 100644 index 7100c22..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberCartMapper.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.cyl.manager.ums.mapper; - -import java.time.LocalDateTime; -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.ums.domain.entity.MemberCart; -import com.cyl.manager.ums.domain.query.MemberCartQuery; -import com.cyl.manager.ums.domain.vo.MemberCartVO; -import org.apache.ibatis.annotations.Param; - -/** - * 购物车Mapper接口 - * - * @author zcc - */ -public interface MemberCartMapper extends BaseMapper { - /** - * 查询购物车列表 - * - * @param memberCart 购物车 - * @return 购物车集合 - */ - List selectByEntity(MemberCart memberCart); - - /** - * - */ - List selectByPage(MemberCartQuery query); - - int statAddCount(@Param("startTime") LocalDateTime startTime, @Param("endTime") LocalDateTime endTime); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberLogininforMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberLogininforMapper.java deleted file mode 100644 index d9e70d4..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberLogininforMapper.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.cyl.manager.ums.mapper; - -import java.time.LocalDateTime; -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import org.apache.ibatis.annotations.Param; -import com.cyl.manager.ums.domain.entity.MemberLogininfor; - -/** - * 会员登录记录Mapper接口 - * - * @author zcc - */ -public interface MemberLogininforMapper extends BaseMapper { - /** - * 查询会员登录记录列表 - * - * @param memberLogininfor 会员登录记录 - * @return 会员登录记录集合 - */ - List selectByEntity(MemberLogininfor memberLogininfor); - - int statLoginMember(@Param("startTime") LocalDateTime startTime, @Param("endTime") LocalDateTime endTime); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberMapper.java deleted file mode 100644 index 9443c44..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.manager.ums.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.ums.domain.entity.Member; - -/** - * 会员信息Mapper接口 - * - * @author zcc - */ -public interface MemberMapper extends BaseMapper { - /** - * 查询会员信息列表 - * - * @param member 会员信息 - * @return 会员信息集合 - */ - List selectByEntity(Member member); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberWechatMapper.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberWechatMapper.java deleted file mode 100644 index d911ff1..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/mapper/MemberWechatMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.manager.ums.mapper; - -import java.util.List; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.cyl.manager.ums.domain.entity.MemberWechat; - -/** - * 用户微信信息Mapper接口 - * - * @author zcc - */ -public interface MemberWechatMapper extends BaseMapper { - /** - * 查询用户微信信息列表 - * - * @param memberWechat 用户微信信息 - * @return 用户微信信息集合 - */ - List selectByEntity(MemberWechat memberWechat); -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/FeedbackService.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/FeedbackService.java deleted file mode 100644 index 1acc1a6..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/FeedbackService.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.cyl.manager.ums.service; - -import java.time.LocalDateTime; -import java.util.List; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.cyl.h5.config.SecurityUtil; -import com.github.pagehelper.PageHelper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import com.cyl.manager.ums.mapper.FeedbackMapper; -import com.cyl.manager.ums.domain.entity.Feedback; -import com.cyl.manager.ums.domain.query.FeedbackQuery; - -/** - * 意见反馈Service业务层处理 - * - * - * @author zcc - */ -@Service -public class FeedbackService { - @Autowired - private FeedbackMapper feedbackMapper; - - /** - * 查询意见反馈 - * - * @param id 意见反馈主键 - * @return 意见反馈 - */ - public Feedback selectById(Long id) { - return feedbackMapper.selectById(id); - } - - /** - * 查询意见反馈列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 意见反馈 - */ - public List selectList(FeedbackQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - String type = query.getType(); - if (!StringUtils.isEmpty(type)) { - qw.eq("type", type); - } - String content = query.getContent(); - if (!StringUtils.isEmpty(content)) { - qw.eq("content", content); - } - String images = query.getImages(); - if (!StringUtils.isEmpty(images)) { - qw.eq("images", images); - } - String phone = query.getPhone(); - if (!StringUtils.isEmpty(phone)) { - qw.eq("phone", phone); - } - Integer handleStatus = query.getHandleStatus(); - if (handleStatus != null) { - qw.eq("handle_status", handleStatus); - } - LocalDateTime handleTime = query.getHandleTime(); - if (handleTime != null) { - qw.eq("handle_time", handleTime); - } - if (!StringUtils.isEmpty(query.getBeginTime()) && !StringUtils.isEmpty(query.getEndTime())){ - qw.ge("create_time", query.getBeginTime()); - qw.lt("create_time", query.getEndTime()); - } - qw.orderByDesc("id"); - return feedbackMapper.selectList(qw); - } - - /** - * 新增意见反馈 - * - * @param feedback 意见反馈 - * @return 结果 - */ - public int insert(Feedback feedback) { - feedback.setCreateTime(LocalDateTime.now()); - feedback.setCreateBy(SecurityUtil.getLocalMember().getId()); - feedback.setHandleStatus(0); - return feedbackMapper.insert(feedback); - } - - /** - * 修改意见反馈 - * - * @param feedback 意见反馈 - * @return 结果 - */ - public int update(Feedback feedback) { - return feedbackMapper.updateById(feedback); - } - - /** - * 删除意见反馈信息 - * - * @param id 意见反馈主键 - * @return 结果 - */ - public int deleteById(Long id) { - return feedbackMapper.deleteById(id); - } - - public Integer updateMark(Feedback feedback) { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("remark",feedback.getRemark()) - .eq("id",feedback.getId()); - return feedbackMapper.update(null,updateWrapper); - } - - public Integer changeStatus(Feedback dto) { - UpdateWrapper wrapper = new UpdateWrapper<>(); - wrapper.eq("id", dto.getId()); - wrapper.set("handle_status", dto.getHandleStatus()) - .set("handle_time",LocalDateTime.now()); - return feedbackMapper.update(null, wrapper); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberAccountService.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberAccountService.java deleted file mode 100644 index f21aecc..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberAccountService.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.cyl.manager.ums.service; - -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.util.List; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.github.pagehelper.PageHelper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; -import com.cyl.manager.ums.mapper.MemberAccountMapper; -import com.cyl.manager.ums.domain.entity.MemberAccount; -import com.cyl.manager.ums.domain.query.MemberAccountQuery; - -/** - * 会员账户表Service业务层处理 - * - * - * @author zcc - */ -@Service -public class MemberAccountService { - @Autowired - private MemberAccountMapper memberAccountMapper; - - /** - * 查询会员账户表 - * - * @param memberId 会员账户表主键 - * @return 会员账户表 - */ - public MemberAccount selectByMemberId(Long memberId) { - return memberAccountMapper.selectById(memberId); - } - - /** - * 查询会员账户表列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 会员账户表 - */ - public List selectList(MemberAccountQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - BigDecimal integralBalance = query.getIntegralBalance(); - if (integralBalance != null) { - qw.eq("integral_balance", integralBalance); - } - BigDecimal totalIntegralBalance = query.getTotalIntegralBalance(); - if (totalIntegralBalance != null) { - qw.eq("total_integral_balance", totalIntegralBalance); - } - return memberAccountMapper.selectList(qw); - } - - /** - * 新增会员账户表 - * - * @param memberAccount 会员账户表 - * @return 结果 - */ - public int insert(MemberAccount memberAccount) { - memberAccount.setCreateTime(LocalDateTime.now()); - return memberAccountMapper.insert(memberAccount); - } - - /** - * 修改会员账户表 - * - * @param memberAccount 会员账户表 - * @return 结果 - */ - public int update(MemberAccount memberAccount) { - return memberAccountMapper.updateById(memberAccount); - } - - /** - * 删除会员账户表信息 - * - * @param memberId 会员账户表主键 - * @return 结果 - */ - public int deleteByMemberId(Long memberId) { - return memberAccountMapper.deleteById(memberId); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberAddressService.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberAddressService.java deleted file mode 100644 index a915239..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberAddressService.java +++ /dev/null @@ -1,136 +0,0 @@ -package com.cyl.manager.ums.service; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.cyl.manager.ums.convert.MemberAddressConvert; -import com.cyl.manager.ums.domain.entity.MemberAddress; -import com.cyl.manager.ums.mapper.MemberAddressMapper; -import com.cyl.manager.ums.domain.query.MemberAddressQuery; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.utils.AesCryptoUtils; -import com.ruoyi.common.utils.SecurityUtils; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; - -import java.time.LocalDateTime; -import java.util.List; - -/** - * 会员收货地址Service业务层处理 - * - * @author zcc - */ -@Service -public class MemberAddressService { - @Autowired - private MemberAddressMapper memberAddressMapper; - @Autowired - private MemberAddressConvert memberAddressConvert; - @Value("${aes.key}") - private String aesKey; - - /** - * 查询会员收货地址 - * - * @param id 会员收货地址主键 - * @return 会员收货地址 - */ - public MemberAddress selectById(Long id) { - return memberAddressMapper.selectById(id); - } - - /** - * 查询会员收货地址列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 会员收货地址 - */ - public List selectList(MemberAddressQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - String nameLike = query.getNameLike(); - if (!StringUtils.isEmpty(nameLike)) { - qw.like("name", nameLike); - } - String phone = query.getPhone(); - if (!StringUtils.isEmpty(phone)) { - qw.eq("phone_encrypted", AesCryptoUtils.encrypt(aesKey, phone)); - } - String postCode = query.getPostCode(); - if (!StringUtils.isEmpty(postCode)) { - qw.eq("post_code", postCode); - } - String province = query.getProvince(); - if (!StringUtils.isEmpty(province)) { - qw.eq("province", province); - } - String city = query.getCity(); - if (!StringUtils.isEmpty(city)) { - qw.eq("city", city); - } - String district = query.getDistrict(); - if (!StringUtils.isEmpty(district)) { - qw.eq("district", district); - } - String detailAddress = query.getDetailAddress(); - if (!StringUtils.isEmpty(detailAddress)) { - qw.like("detail_address", detailAddress); - } - return memberAddressMapper.selectList(qw); - } - - /** - * 新增会员收货地址 - * - * @param memberAddress 会员收货地址 - * @return 结果 - */ - public int insert(MemberAddress memberAddress) { - memberAddress.setCreateTime(LocalDateTime.now()); - return memberAddressMapper.insert(memberAddress); - } - - /** - * 修改会员收货地址 - * - * @param memberAddress 会员收货地址 - * @return 结果 - */ - public int update(MemberAddress memberAddress) { - return memberAddressMapper.updateById(memberAddress); - } - - /** - * 删除会员收货地址信息 - * - * @param id 会员收货地址主键 - * @return 结果 - */ - public int deleteById(Long id) { - return memberAddressMapper.deleteById(id); - } - - public Integer deleteUserIds(List ids) { - LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); - qw.eq(MemberAddress::getMemberId, SecurityUtils.getUserId()); - qw.in(MemberAddress::getId, ids); - return memberAddressMapper.delete(qw); - } - - public MemberAddress selectByUserAndId(Long id) { - LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); - qw.eq(MemberAddress::getMemberId, SecurityUtils.getUserId()); - qw.eq(MemberAddress::getId, id); - return memberAddressMapper.selectOne(qw); - } - - public int updateSelective(MemberAddress address) { - return memberAddressMapper.updateByPrimaryKeySelective(address); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberCartService.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberCartService.java deleted file mode 100644 index 034c0c9..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberCartService.java +++ /dev/null @@ -1,199 +0,0 @@ -package com.cyl.manager.ums.service; - -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.cyl.h5.config.SecurityUtil; -import com.cyl.manager.pms.domain.entity.Sku; -import com.cyl.manager.pms.mapper.ProductMapper; -import com.cyl.manager.pms.mapper.SkuMapper; -import com.cyl.manager.ums.convert.MemberCartConvert; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.domain.entity.MemberCart; -import com.cyl.manager.ums.mapper.MemberCartMapper; -import com.cyl.manager.ums.mapper.MemberMapper; -import com.cyl.manager.ums.domain.query.MemberCartQuery; -import com.cyl.manager.ums.domain.vo.MemberCartVO; -import com.cyl.manager.ums.domain.form.UpdateMemberCartForm; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.constant.Constants; -import com.ruoyi.common.exception.base.BaseException; -import com.ruoyi.common.utils.AesCryptoUtils; -import com.ruoyi.common.utils.SecurityUtils; -import com.ruoyi.common.utils.SortUtil; -import com.ruoyi.framework.config.LocalDataUtil; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; -import org.springframework.util.CollectionUtils; - -import java.time.LocalDateTime; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; - -/** - * 购物车Service业务层处理 - * - * @author zcc - */ -@Service -public class MemberCartService { - @Autowired - private MemberCartMapper memberCartMapper; - @Autowired - private SkuMapper skuMapper; - @Autowired - private MemberMapper memberMapper; - @Autowired - private ProductMapper productMapper; - @Autowired - private MemberCartConvert memberCartConvert; - @Value("${aes.key}") - private String aesKey; - - /** - * 查询购物车 - * - * @param id 购物车主键 - * @return 购物车 - */ - public MemberCart selectById(Long id) { - return memberCartMapper.selectById(id); - } - - /** - * 查询购物车列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 购物车 - */ - public PageImpl selectList(MemberCartQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize(), SortUtil.sort2string(page.getSort(),"id desc")); - } - if (!StrUtil.isEmpty(query.getPhone())){ - query.setPhone(AesCryptoUtils.encrypt(aesKey, query.getPhone())); - } - List memberCartList = memberCartMapper.selectByPage(query); - long total = ((com.github.pagehelper.Page)memberCartList).getTotal(); - if (CollectionUtil.isEmpty(memberCartList)){ - return new PageImpl<>(Collections.EMPTY_LIST, page, total); - } - //查sku - List skuIdList = memberCartList.stream().map(MemberCartVO::getSkuId).collect(Collectors.toList()); - QueryWrapper skuQw = new QueryWrapper<>(); - skuQw.in("id", skuIdList); - Map skuMap = skuMapper.selectList(skuQw).stream().collect(Collectors.toMap(Sku::getId, it -> it)); - memberCartList.forEach(item -> { - if (!skuMap.containsKey(item.getSkuId())){ - item.setStatus(0); - item.setSkuIfExist(0); - }else { - Sku sku = skuMap.get(item.getSkuId()); - item.setPrice(sku.getPrice()); - item.setSkuIfExist(1); - } - }); - return new PageImpl<>(memberCartList, page, total); - } - - /** - * 新增购物车 - * - * @param memberCart 购物车 - * @return 结果 - */ - public int insert(MemberCart memberCart) { - Member member = (Member) LocalDataUtil.getVar(Constants.MEMBER_INFO); - memberCart.setMemberId(member.getId()); - //判断cart是否存在 - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("member_id",member.getId()); - queryWrapper.eq("sku_id",memberCart.getSkuId()); - queryWrapper.eq("product_id",memberCart.getProductId()); - List memberCarts = memberCartMapper.selectList(queryWrapper); - if (CollectionUtils.isEmpty(memberCarts)) { - memberCart.setStatus(1); - memberCart.setCreateTime(LocalDateTime.now()); - memberCart.setCreateBy(member.getId()); - return memberCartMapper.insert(memberCart); - } - MemberCart dbCart = memberCarts.get(0); - dbCart.setUpdateTime(LocalDateTime.now()); - dbCart.setQuantity(dbCart.getQuantity() + memberCart.getQuantity()); - return memberCartMapper.updateById(dbCart); - } - - /** - * 修改购物车 - * - * @param memberCart 购物车 - * @return 结果 - */ - public int update(MemberCart memberCart) { - MemberCart cart = memberCartMapper.selectById(memberCart.getId()); - if (cart == null){ - return 0; - } - cart.setQuantity(memberCart.getQuantity()); - cart.setUpdateTime(LocalDateTime.now()); - cart.setUpdateBy(SecurityUtil.getLocalMember().getId()); - return memberCartMapper.updateById(cart); - } - public int update(UpdateMemberCartForm form) { - if (form.getNum() == null || form.getId() == null) { - throw new BaseException("参数错误"); - } - Long userId = SecurityUtils.getUserId(); - LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); - qw.eq(MemberCart::getMemberId, userId); - qw.eq(MemberCart::getId, form.getId()); - if (form.getNum() <= 0) { - return memberCartMapper.delete(qw); - } - MemberCart e = new MemberCart(); - e.setQuantity(form.getNum()); - return memberCartMapper.update(e, qw); - } - - /** - * 删除购物车信息 - * - * @param id 购物车主键 - * @return 结果 - */ - public int deleteById(Long id) { - return memberCartMapper.deleteById(id); - } - - /** - * 删除购物车信息 - * - * @param ids 购物车主键 - * @return 结果 - */ - public int deleteByIds(String ids) { - List idList = Arrays.stream(ids.split(",")).map(it -> Long.parseLong(it)).collect(Collectors.toList()); - return memberCartMapper.deleteBatchIds(idList); - } - - public Integer mineCartNum() { - Long userId = SecurityUtils.getUserId(); - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("member_id", userId); - qw.eq("status", 1); - qw.select("count(quantity) quantity"); - MemberCart c = memberCartMapper.selectOne(qw); - if (c == null) { - return 0; - } - return c.getQuantity(); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberLogininforService.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberLogininforService.java deleted file mode 100644 index d1f6e77..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberLogininforService.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.cyl.manager.ums.service; - -import java.util.List; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.mapper.MemberMapper; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.utils.AesCryptoUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Service; -import com.cyl.manager.ums.mapper.MemberLogininforMapper; -import com.cyl.manager.ums.domain.entity.MemberLogininfor; -import com.cyl.manager.ums.domain.query.MemberLogininforQuery; - -/** - * 会员登录记录Service业务层处理 - * - * - * @author zcc - */ -@Service -public class MemberLogininforService { - @Autowired - private MemberLogininforMapper memberLogininforMapper; - - @Autowired - private MemberMapper memberMapper; - - @Value("${aes.key}") - private String aesKey; - - /** - * 查询会员登录记录 - * - * @param id 会员登录记录主键 - * @return 会员登录记录 - */ - public MemberLogininfor selectById(Long id) { - return memberLogininforMapper.selectById(id); - } - - /** - * 查询会员登录记录列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 会员登录记录 - */ - public List selectList(MemberLogininforQuery query, Pageable page) { - QueryWrapper qw = new QueryWrapper<>(); - String phone = query.getPhone(); - if (!StringUtils.isEmpty(phone)) { - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(Member::getPhoneEncrypted, AesCryptoUtils.encrypt(aesKey, phone)); - Member member = memberMapper.selectOne(wrapper); - if (member != null){ - qw.eq("phone", member.getPhoneEncrypted()); - }else { - qw.eq("phone", "-1"); - } - } - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - String ipaddr = query.getIpaddr(); - if (!StringUtils.isEmpty(ipaddr)) { - qw.eq("ipaddr", ipaddr); - } - String loginLocation = query.getLoginLocation(); - if (!StringUtils.isEmpty(loginLocation)) { - qw.eq("login_location", loginLocation); - } - String browser = query.getBrowser(); - if (!StringUtils.isEmpty(browser)) { - qw.eq("browser", browser); - } - String os = query.getOs(); - if (!StringUtils.isEmpty(os)) { - qw.eq("os", os); - } - if (query.getBeginTime() != null && query.getEndTime() != null) { - qw.ge("login_time", query.getBeginTime()); - qw.lt("login_time", query.getEndTime()); - } - qw.orderByDesc("login_time"); - return memberLogininforMapper.selectList(qw); - } - - /** - * 修改会员登录记录 - * - * @param memberLogininfor 会员登录记录 - * @return 结果 - */ - public int update(MemberLogininfor memberLogininfor) { - return memberLogininforMapper.updateById(memberLogininfor); - } - - /** - * 删除会员登录记录信息 - * - * @param id 会员登录记录主键 - * @return 结果 - */ - public int deleteById(Long id) { - return memberLogininforMapper.deleteById(id); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberService.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberService.java deleted file mode 100644 index dd05e74..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberService.java +++ /dev/null @@ -1,160 +0,0 @@ -package com.cyl.manager.ums.service; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.cyl.manager.oms.mapper.AftersaleMapper; -import com.cyl.manager.oms.mapper.OrderMapper; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.manager.ums.domain.entity.MemberCart; -import com.cyl.manager.ums.mapper.MemberCartMapper; -import com.cyl.manager.ums.mapper.MemberMapper; -import com.cyl.manager.ums.domain.form.ChangeMemberStatusForm; -import com.cyl.manager.ums.domain.query.MemberQuery; -import com.cyl.manager.ums.domain.vo.MemberDataStatisticsVO; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.utils.AesCryptoUtils; -import com.ruoyi.common.utils.SortUtil; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; - -import java.time.LocalDateTime; -import java.util.List; - -/** - * 会员信息Service业务层处理 - * - * - * @author zcc - */ -@Service -public class MemberService { - @Autowired - private MemberMapper memberMapper; - @Value("${aes.key}") - private String aesKey; - - @Autowired - private MemberCartMapper memberCartMapper; - - @Autowired - private OrderMapper orderMapper; - - @Autowired - private AftersaleMapper aftersaleMapper; - - /** - * 查询会员信息 - * - * @param id 会员信息主键 - * @return 会员信息 - */ - public Member selectById(Long id) { - return memberMapper.selectById(id); - } - - /** - * 查询会员信息列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 会员信息 - */ - public List selectList(MemberQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize(), SortUtil.sort2string(page.getSort(),"id desc")); - } - QueryWrapper qw = new QueryWrapper<>(); - String nicknameLike = query.getNickname(); - if (!StringUtils.isEmpty(nicknameLike)) { - qw.like("nickname", nicknameLike); - } - String phone = query.getPhone(); - if (!StringUtils.isEmpty(phone)) { - qw.eq("phone_encrypted", AesCryptoUtils.encrypt(aesKey, phone)); - } - if (!StringUtils.isEmpty(query.getBeginTime()) && !StringUtils.isEmpty(query.getEndTime())){ - qw.ge("create_time", query.getBeginTime()); - qw.lt("create_time", query.getEndTime()); - } - if (query.getHasMark() != null) { - switch (query.getHasMark()) { - case 0: - qw.isNull("mark").or().eq("mark",""); - break; - case 1: - qw.isNotNull("mark").ne("mark",""); - break; - default: - break; - } - } - if (query.getStatus() != null){ - qw.eq("status", query.getStatus()); - } - return memberMapper.selectList(qw); - } - - /** - * 新增会员信息 - * - * @param member 会员信息 - * @return 结果 - */ - public int insert(Member member) { - member.setCreateTime(LocalDateTime.now()); - return memberMapper.insert(member); - } - - /** - * 修改会员信息 - * - * @param member 会员信息 - * @return 结果 - */ - public int update(Member member) { - return memberMapper.updateById(member); - } - - public int updateMark(Member member) { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("mark",member.getMark()) - .set("update_time",LocalDateTime.now()) - .eq("id",member.getId()); - return memberMapper.update(null,updateWrapper); - } - - /** - * 删除会员信息信息 - * - * @param id 会员信息主键 - * @return 结果 - */ - public int deleteById(Long id) { - return memberMapper.deleteById(id); - } - - public Integer changeStatus(ChangeMemberStatusForm dto) { - UpdateWrapper wrapper = new UpdateWrapper<>(); - wrapper.eq("id", dto.getMemberId()); - wrapper.set("status", dto.getStatus()); - return memberMapper.update(null, wrapper); - } - - public String getPhoneDecrypted(String phoneEncrypted) { - return AesCryptoUtils.decrypt(aesKey, phoneEncrypted); - } - - public MemberDataStatisticsVO viewStatistics(Long memberId) { - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(MemberCart::getMemberId, memberId); - int cartCount = memberCartMapper.selectCount(wrapper); - MemberDataStatisticsVO vo = orderMapper.statOrderCountAndAmount(memberId); - vo.setCartCount(cartCount); - vo.setAftersaleCount(aftersaleMapper.countByMemberId(memberId)); - return vo; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberWechatService.java b/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberWechatService.java deleted file mode 100644 index dd2254b..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/manager/ums/service/MemberWechatService.java +++ /dev/null @@ -1,248 +0,0 @@ -package com.cyl.manager.ums.service; - -import java.time.LocalDateTime; -import java.time.temporal.ChronoUnit; -import java.util.List; - -import cn.hutool.core.util.RandomUtil; -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.cyl.external.WechatUtil; -import com.cyl.external.resp.AccessTokenResp; -import com.cyl.external.resp.UserInfoResp; -import com.cyl.h5.domain.form.WechatLoginForm; -import com.cyl.h5.service.H5MemberService; -import com.cyl.manager.ums.convert.MemberWechatConvert; -import com.cyl.manager.ums.domain.entity.Member; -import com.cyl.wechat.WechatPayData; -import com.github.pagehelper.PageHelper; -import com.ruoyi.common.core.domain.entity.SysUser; -import com.ruoyi.common.core.domain.model.ExtraUserBody; -import com.ruoyi.framework.web.service.SysLoginService; -import com.ruoyi.system.mapper.SysUserMapper; -import com.ruoyi.system.service.ISysUserService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.apache.commons.lang3.StringUtils; -import org.springframework.http.ResponseEntity; -import org.springframework.stereotype.Service; -import com.cyl.manager.ums.mapper.MemberWechatMapper; -import com.cyl.manager.ums.domain.entity.MemberWechat; -import com.cyl.manager.ums.domain.query.MemberWechatQuery; -import org.springframework.web.client.RestTemplate; - -/** - * 用户微信信息Service业务层处理 - * - * - * @author zcc - */ -@Slf4j -@Service -public class MemberWechatService { - @Autowired - private MemberWechatMapper memberWechatMapper; - @Autowired - private MemberWechatConvert memberWechatConvert; - @Autowired - private SysUserMapper sysUserMapper; - @Autowired - private ISysUserService userService; - @Autowired - private SysLoginService loginService; - @Autowired - private RestTemplate restTemplate; - @Autowired - private H5MemberService memberService; - private static String LOGIN_URL = "https://api.weixin.qq.com/sns/jscode2session?appid=#{APPID}&secret=#{SECRET}&js_code=#{JSCODE}&grant_type=authorization_code"; - - - /** - * 查询用户微信信息 - * - * @param id 用户微信信息主键 - * @return 用户微信信息 - */ - public MemberWechat selectById(Long id) { - return memberWechatMapper.selectById(id); - } - - /** - * 查询用户微信信息列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 用户微信信息 - */ - public List selectList(MemberWechatQuery query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - Long memberId = query.getMemberId(); - if (memberId != null) { - qw.eq("member_id", memberId); - } - String unionid = query.getUnionid(); - if (!StringUtils.isEmpty(unionid)) { - qw.eq("unionid", unionid); - } - String openid = query.getOpenid(); - if (!StringUtils.isEmpty(openid)) { - qw.eq("openid", openid); - } - String routineOpenid = query.getRoutineOpenid(); - if (!StringUtils.isEmpty(routineOpenid)) { - qw.eq("routine_openid", routineOpenid); - } - Integer groupid = query.getGroupid(); - if (groupid != null) { - qw.eq("groupid", groupid); - } - String tagidList = query.getTagidList(); - if (!StringUtils.isEmpty(tagidList)) { - qw.eq("tagid_list", tagidList); - } - Integer subscribe = query.getSubscribe(); - if (subscribe != null) { - qw.eq("subscribe", subscribe); - } - Integer subscribeTime = query.getSubscribeTime(); - if (subscribeTime != null) { - qw.eq("subscribe_time", subscribeTime); - } - String sessionKey = query.getSessionKey(); - if (!StringUtils.isEmpty(sessionKey)) { - qw.eq("session_key", sessionKey); - } - String accessToken = query.getAccessToken(); - if (!StringUtils.isEmpty(accessToken)) { - qw.eq("access_token", accessToken); - } - Integer expiresIn = query.getExpiresIn(); - if (expiresIn != null) { - qw.eq("expires_in", expiresIn); - } - String refreshToken = query.getRefreshToken(); - if (!StringUtils.isEmpty(refreshToken)) { - qw.eq("refresh_token", refreshToken); - } - LocalDateTime expireTime = query.getExpireTime(); - if (expireTime != null) { - qw.eq("expire_time", expireTime); - } - return memberWechatMapper.selectList(qw); - } - - /** - * 新增用户微信信息 - * - * @param memberWechat 用户微信信息 - * @return 结果 - */ - public int insert(MemberWechat memberWechat) { - memberWechat.setCreateTime(LocalDateTime.now()); - return memberWechatMapper.insert(memberWechat); - } - - /** - * 修改用户微信信息 - * - * @param memberWechat 用户微信信息 - * @return 结果 - */ - public int update(MemberWechat memberWechat) { - return memberWechatMapper.updateById(memberWechat); - } - - /** - * 删除用户微信信息信息 - * - * @param id 用户微信信息主键 - * @return 结果 - */ - public int deleteById(Long id) { - return memberWechatMapper.deleteById(id); - } - - public String login(WechatLoginForm form) { - // 1. code -> token - AccessTokenResp tokenResp = WechatUtil.getAccessToken(form.getCode()); - // 2. token -> user_info - UserInfoResp info = null; - try { - info = WechatUtil.getUserInfo(tokenResp.getAccessToken(), tokenResp.getOpenid()); - } catch (Exception e) { - log.error("form: {}", form.getCode(), e); - } - // 3. 查找用户是否存在, 若没有则创建 - LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); - qw.eq(MemberWechat::getOpenid, tokenResp.getOpenid()); - MemberWechat m = memberWechatMapper.selectOne(qw); - SysUser u; - if (m != null) { - SysUser update = new SysUser(); - if (info != null) { - if (StrUtil.isNotEmpty(info.getNickname())) { - update.setNickName(info.getNickname()); - } - if (info.getSex() != null) { - update.setSex(info.getSex() + ""); - } - if (StrUtil.isNotEmpty(info.getHeadimgurl())) { - update.setAvatar(info.getHeadimgurl()); - } - update.setUserId(m.getMemberId()); - sysUserMapper.updateUser(update); - } - u = sysUserMapper.selectUserById(m.getMemberId()); - } else { - ExtraUserBody body = ExtraUserBody.builder() - .nickname(info == null ? "" : info.getNickname()) - .avatar(info == null ? "" : info.getHeadimgurl()) - .login(RandomUtil.randomNumbers(9)) - .sex(info == null ? null : info.getSex()) - .build(); - u = loginService.initVipUser(body); - MemberWechat w = memberWechatConvert.info2do(tokenResp); - w.setMemberId(u.getUserId()); - w.setExpireTime(LocalDateTime.now().plus(tokenResp.getExpiresIn(), ChronoUnit.SECONDS)); - memberWechatMapper.insert(w); - } - // 4. 生成token - return loginService.createToken(u); - } - - public JSONObject getSessionId(String code) { - String url = LOGIN_URL.replace("#{APPID}", WechatPayData.miniProgramAppId) - .replace("#{SECRET}", WechatPayData.miniProgramSecret) - .replace("#{JSCODE}", code); - log.info("获取openid,url:{}", url); - try { - ResponseEntity res = restTemplate.getForEntity(url, String.class); - String body = res.getBody(); - if (com.ruoyi.common.utils.StringUtils.isEmpty(body)) { - throw new Exception("获取openid出错"); - } - return JSONObject.parseObject(body); - } catch (Exception e) { - log.error("获取openid报错", e); - return null; - } - } - - public String getToken(String openId) { - //判断openid是否存在 - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("routine_openid", openId); - MemberWechat memberWechat = memberWechatMapper.selectOne(qw); - if (memberWechat == null) { - return null; - } - Member member = memberService.selectById(memberWechat.getMemberId()); - return memberService.getLoginResponse(member.getId()).getToken(); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/sms/controller/SmsController.java b/ruoyi-mall/src/main/java/com/cyl/sms/controller/SmsController.java deleted file mode 100644 index ffc2870..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/sms/controller/SmsController.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.cyl.sms.controller; - -import com.cyl.sms.service.SmsService; -import com.ruoyi.common.core.domain.model.SmsResult; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - - - -@RestController -@RequestMapping("/no-auth/sms") -public class SmsController { - - @Autowired - private SmsService smsService; - - /** - * 阿里云短信服务 - */ - @GetMapping("/sendAliyun/{phones}") - public ResponseEntity sendAliyun(@PathVariable String phones){ - return smsService.sendAliyun(phones); - } - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/sms/service/SmsService.java b/ruoyi-mall/src/main/java/com/cyl/sms/service/SmsService.java deleted file mode 100644 index ec3885d..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/sms/service/SmsService.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.cyl.sms.service; - -import com.ruoyi.common.config.properties.SmsProperties; -import com.ruoyi.common.core.domain.model.SmsResult; -import com.ruoyi.common.core.redis.RedisCache; -import com.ruoyi.common.core.sms.AliyunSmsTemplate; -import com.ruoyi.common.core.sms.SmsTemplate; -import com.ruoyi.common.utils.SmsUtils; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.stereotype.Service; - -import java.util.Base64; -import java.util.HashMap; -import java.util.Map; -import java.util.UUID; -import java.util.concurrent.TimeUnit; - -@Service -@Slf4j -public class SmsService { - - @Autowired - private RedisCache redisCache; - - @Autowired - private SmsProperties smsProperties; - - private final String templateId = "SMS_146125046"; - - public ResponseEntity sendAliyun(String phones){ - if (!smsProperties.getEnabled()){ - return ResponseEntity.ok( - SmsResult.builder() - .isSuccess(false) - .message("当前系统没有开启短信服务") - .build() - ); - - } - byte[] decodedBytes = Base64.getDecoder().decode(phones); - phones = new String(decodedBytes); - String code = SmsUtils.createRandom(true, 4); - Map map = new HashMap<>(); - map.put("code", code); - SmsTemplate smsTemplate = new AliyunSmsTemplate(smsProperties); - SmsResult send = smsTemplate.send(phones, templateId, map); - // 验证码存redis,当前只用于注册和登录,手机号只有一个 - String uuid = UUID.randomUUID().toString().replaceAll("-", ""); - send.setUuid(uuid); - try{ - redisCache.setCacheObject(uuid + "_" + phones, code, 5, TimeUnit.MINUTES); - }catch (Exception e){ - return ResponseEntity.ok( - SmsResult.builder() - .isSuccess(false) - .message("服务繁忙,请稍后再试") - .build() - ); - } - return ResponseEntity.ok(send); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatAuthService.java b/ruoyi-mall/src/main/java/com/cyl/wechat/WechatAuthService.java deleted file mode 100644 index 6cde200..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatAuthService.java +++ /dev/null @@ -1,118 +0,0 @@ -package com.cyl.wechat; - -import cn.hutool.json.JSONUtil; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.cyl.wechat.response.WechatUserAuth; -import com.ruoyi.common.core.redis.RedisService; -import com.ruoyi.common.utils.StringUtils; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.http.HttpEntity; -import org.springframework.http.HttpMethod; -import org.springframework.http.ResponseEntity; -import org.springframework.stereotype.Service; -import org.springframework.web.client.RestTemplate; - -import java.util.Base64; -import java.util.HashMap; -import java.util.Map; - -@Service -@Slf4j -public class WechatAuthService { - - @Autowired - private RestTemplate restTemplate; - @Autowired - private RedisService redisService; - @Value("${wechat.miniProgramAppId}") - private String appId; - @Value("${wechat.miniProgramSecret}") - private String secret; - - public WechatUserAuth getUserToken(String code) { - Map params = new HashMap<>(); - params.put("APPID", WechatPayData.appId); - params.put("SECRET", WechatPayData.secret); - params.put("CODE", code); - ResponseEntity responseEntity = restTemplate.getForEntity( - "https://api.weixin.qq.com/sns/oauth2/access_token?appid={APPID}&secret={SECRET}&code={CODE}&grant_type=authorization_code", - String.class, params); - String body = responseEntity.getBody(); - try { - WechatUserAuth object = JSON.parseObject(body, WechatUserAuth.class); - if (object == null) { - log.error("获取user wechat accesstoken失败"); - return null; - } - log.info("get user wechat accesstoken:{}",JSONUtil.toJsonStr(object)); - return object; - } catch (Exception e) { - log.info("get user wechat accesstoken error",e); - } - return null; - } - - /** - * 获取二维码 - * - * @return 二维码字符串 - */ - public String getQRCode(String scene) { - String base64Str = redisService.getQrCode(scene); - if (!StringUtils.isEmpty(base64Str)) { - return base64Str; - } - String accessToken = getAccessToken(); - if (StringUtils.isEmpty(accessToken)) { - log.error("accseetoken is null"); - return null; - } - String postUrl = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" + accessToken; - JSONObject jsonObject = new JSONObject(); - jsonObject.put("scene", StringUtils.isEmpty(scene) ? "1" : scene); //可以用作传参,必填,内容随意 - jsonObject.put("page", "pages/index/verificationCodeIndex"); //扫码后跳转页面,选填 - jsonObject.put("check_path", false); //是否检查跳转页面存不存在 - jsonObject.put("env_version", "release"); //版本 - byte[] string = null; - try { - string = restTemplate.exchange(postUrl, HttpMethod.POST, new HttpEntity<>(jsonObject, null), byte[].class).getBody(); - log.info("wechat response code: {}",string); - } catch (Exception e) { - log.error("get wechat code error",e); - } - base64Str = Base64.getEncoder().encodeToString(string); - redisService.setQrCode(base64Str, scene); - log.info("wechat code:{}",base64Str); - return base64Str; - } - - - private String getAccessToken() { - String token = redisService.getWechatToken(); - - log.info("redis token:{}",token); - if (!StringUtils.isEmpty(token)) { - return token; - } - Map params = new HashMap<>(); - params.put("APPID", appId); //替换成自己的appId - params.put("APPSECRET",secret); //替换成自己的appSecret - ResponseEntity responseEntity = restTemplate.getForEntity( - "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={APPID}&secret={APPSECRET}", - String.class, params); - String body = responseEntity.getBody(); - JSONObject object = JSON.parseObject(body); - String accessToken = object.getString("access_token"); - if (accessToken == null) { - log.error("获取accessToken失败"); - return accessToken; - } - redisService.setWechatToken(accessToken); - log.info("get token:{}",accessToken); - return accessToken; - } - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatController.java b/ruoyi-mall/src/main/java/com/cyl/wechat/WechatController.java deleted file mode 100644 index c9cc3e5..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatController.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.cyl.wechat; - -import com.cyl.h5.service.H5MemberService; -import com.cyl.wechat.response.JssdkConfigResponse; -import com.cyl.wechat.response.WechatUserAuth; -import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; -import java.util.stream.Stream; - -@RestController -@RequestMapping("/no-auth/wechat") -public class WechatController { - - @Autowired - private H5MemberService service; - - @GetMapping("/jssdk") - public ResponseEntity getJssdkConfig(){ - String appId = WechatPayData.appId; - String nonceStr = WechatPayUtil.generateNonceStr(); - long timeStamp = WechatPayUtil.getCurrentTimestamp(); - String signature = Stream.of(appId, String.valueOf(timeStamp), nonceStr) - .collect(Collectors.joining("\n", "", "\n")); - JssdkConfigResponse response = new JssdkConfigResponse(); - response.setAppId(appId); - List jsApiList = new ArrayList<>(); - jsApiList.add("chooseWXPay"); - jsApiList.add("updateAppMessageShareData"); - jsApiList.add("updateTimelineShareData"); - response.setJsApiList(jsApiList); - response.setNonceStr(nonceStr); - response.setTimeStamp(String.valueOf(timeStamp)); - response.setSignature(signature); - return ResponseEntity.ok(response); - } - - @ApiOperation("获取微信用户授权信息") - @PostMapping("/getWechatUserAuth") - public ResponseEntity getWechatUserAuth(@RequestBody String data){ - return ResponseEntity.ok(service.getWechatUserAuth(data)); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayConfig.java b/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayConfig.java deleted file mode 100644 index 9bf8aef..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayConfig.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.cyl.wechat; - -import com.wechat.pay.java.core.Config; -import com.wechat.pay.java.core.RSAAutoCertificateConfig; -import org.springframework.core.io.support.PathMatchingResourcePatternResolver; -import org.springframework.core.io.support.ResourcePatternResolver; - -public class WechatPayConfig { - - private static Config wechatPayConfig; - - private WechatPayConfig(){} - - public static Config getInstance() { - - - if (wechatPayConfig == null) { - wechatPayConfig = new RSAAutoCertificateConfig.Builder() - .merchantId(WechatPayData.merchantId) - .privateKeyFromPath(WechatPayData.privateKeyPath) - .merchantSerialNumber(WechatPayData.merchantSerialNumber) - .apiV3Key(WechatPayData.apiV3key) - .build(); - } - return wechatPayConfig; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayData.java b/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayData.java deleted file mode 100644 index 8c9d016..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayData.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.cyl.wechat; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.stereotype.Component; - -@Data -@ConfigurationProperties(prefix = "wechat") -@Component("WechatPayData") -public class WechatPayData { - - /** 商户号 */ - public static String appId; - public static String secret; - public static String merchantId; - /** 商户API私钥路径 */ - public static String privateKeyPath; - /** 商户证书序列号 */ - public static String merchantSerialNumber; - /** 商户APIV3密钥 */ - public static String apiV3key; - public static String notifyUrl; - - public static String miniProgramAppId; - public static String miniProgramSecret; - - public void setAppId(String appId) { - WechatPayData.appId = appId; - } - - public void setSecret(String secret) { - WechatPayData.secret = secret; - } - - public void setMerchantId(String merchantId) { - WechatPayData.merchantId = merchantId; - } - - public void setPrivateKeyPath(String privateKeyPath) { - WechatPayData.privateKeyPath = privateKeyPath; - } - - public void setMerchantSerialNumber(String merchantSerialNumber) { - WechatPayData.merchantSerialNumber = merchantSerialNumber; - } - - public void setApiV3key(String apiV3key) { - WechatPayData.apiV3key = apiV3key; - } - - public void setNotifyUrl(String notifyUrl) { - WechatPayData.notifyUrl = notifyUrl; - } - - public void setMiniProgramAppId(String miniProgramAppId) { - WechatPayData.miniProgramAppId = miniProgramAppId; - } - - public void setMiniProgramSecret(String miniProgramSecret) { - WechatPayData.miniProgramSecret = miniProgramSecret; - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayService.java b/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayService.java deleted file mode 100644 index 1714b96..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayService.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.cyl.wechat; - -import com.wechat.pay.java.service.payments.jsapi.JsapiService; -import com.wechat.pay.java.service.payments.jsapi.model.Amount; -import com.wechat.pay.java.service.payments.jsapi.model.Payer; -import com.wechat.pay.java.service.payments.jsapi.model.PrepayRequest; -import com.wechat.pay.java.service.payments.jsapi.model.PrepayResponse; -import com.wechat.pay.java.service.refund.RefundService; -import com.wechat.pay.java.service.refund.model.AmountReq; -import com.wechat.pay.java.service.refund.model.CreateRequest; -import com.wechat.pay.java.service.refund.model.Refund; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; - -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.stereotype.Service; - - -@Service -@Slf4j -@ConditionalOnProperty(prefix = "wechat", name = "enabled", havingValue = "true") -public class WechatPayService { - - @Autowired - private JsapiService service; - - @Autowired - private RefundService refundService; - - /** - * jsapi下单 - * @param orderNo 订单号 - * @param desc 订单描述 - * @param totalAmount 总金额,单位:分 - * @param openId 用户openid - * @return prepay_id - */ - public String jsapiPay(String orderNo,String desc,Integer totalAmount,String openId, Long memberId,String appId){ - PrepayRequest prepayRequest = new PrepayRequest(); - prepayRequest.setAppid(appId); - prepayRequest.setMchid(WechatPayData.merchantId); - prepayRequest.setDescription(desc); - prepayRequest.setOutTradeNo(orderNo); - prepayRequest.setAttach(String.valueOf(memberId)); - prepayRequest.setNotifyUrl(WechatPayData.notifyUrl); - Amount amount = new Amount(); - amount.setTotal(totalAmount); - prepayRequest.setAmount(amount); - Payer payer = new Payer(); - payer.setOpenid(openId); - prepayRequest.setPayer(payer); - PrepayResponse response = service.prepay(prepayRequest); - return response.getPrepayId(); - } - - public Refund refundPay(String refundId,String payId,String notifyUrl,Long refundAmount, Long totalAmount,String reason) { - //请求参数 - CreateRequest request = new CreateRequest(); - request.setReason(reason); - //设置退款金额 根据自己的实际业务自行填写 - AmountReq amountReq = new AmountReq(); - amountReq.setRefund(refundAmount); - amountReq.setTotal(totalAmount); - amountReq.setCurrency("CNY"); - request.setAmount(amountReq); - //支付成功后回调回来的transactionId 按照实际情况填写 - request.setOutTradeNo(payId); - //支付成功后回调回来的transactionId 按照实际情况填写 - request.setOutRefundNo(refundId); - //退款成功的回调地址 - request.setNotifyUrl(notifyUrl); - //发起请求,申请退款 - return refundService.create(request); - } -} diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayUtil.java b/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayUtil.java deleted file mode 100644 index ab019c9..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatPayUtil.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.cyl.wechat; - - - -import cn.hutool.crypto.PemUtil; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.core.io.ClassPathResource; -import org.springframework.util.Base64Utils; - -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.URISyntaxException; -import java.nio.charset.StandardCharsets; -import java.nio.file.Files; -import java.nio.file.Paths; -import java.security.*; -import java.util.*; - - -public class WechatPayUtil { - - private static final String SYMBOLS = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; - - private static final Random RANDOM = new SecureRandom(); - - - public static String getSign(String signatureStr,String privateKey) throws InvalidKeyException, NoSuchAlgorithmException, SignatureException, IOException, URISyntaxException { - //replace 根据实际情况,不一定都需要 - String replace = privateKey.replace("\\n", "\n"); - InputStream certStream = Files.newInputStream(Paths.get(privateKey)); - PrivateKey merchantPrivateKey = PemUtil.readPemPrivateKey(certStream); - Signature sign = Signature.getInstance("SHA256withRSA"); - sign.initSign(merchantPrivateKey); - sign.update(signatureStr.getBytes(StandardCharsets.UTF_8)); - return Base64Utils.encodeToString(sign.sign()); - } - - /** - * 获取随机字符串 Nonce Str - * - * @return String 随机字符串 - */ - public static String generateNonceStr() { - char[] nonceChars = new char[32]; - for (int index = 0; index < nonceChars.length; ++index) { - nonceChars[index] = SYMBOLS.charAt(RANDOM.nextInt(SYMBOLS.length())); - } - return new String(nonceChars); - } - - - /** - * 日志 - * @return - */ - public static Logger getLogger() { - Logger logger = LoggerFactory.getLogger("wxpay java sdk"); - return logger; - } - - /** - * 获取当前时间戳,单位秒 - * @return - */ - public static long getCurrentTimestamp() { - return System.currentTimeMillis()/1000; - } - - /** - * 获取当前时间戳,单位毫秒 - * @return - */ - public static long getCurrentTimestampMs() { - return System.currentTimeMillis(); - } - -} \ No newline at end of file diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/response/JssdkConfigResponse.java b/ruoyi-mall/src/main/java/com/cyl/wechat/response/JssdkConfigResponse.java deleted file mode 100644 index aed9f66..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/wechat/response/JssdkConfigResponse.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cyl.wechat.response; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.util.List; - -@Data -public class JssdkConfigResponse { - @ApiModelProperty("appId") - private String appId; - @ApiModelProperty("timeStamp") - private String timeStamp; - @ApiModelProperty("nonceStr") - private String nonceStr; - @ApiModelProperty("signature") - private String signature; - @ApiModelProperty("jsApiList") - private List jsApiList; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatAmount.java b/ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatAmount.java deleted file mode 100644 index ff92763..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatAmount.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.cyl.wechat.response; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; - -/** - * @author: Jinxin - * @date: 2023/4/18 23:04 - * @Description: - */ -@Getter -@Setter -public class WeChatAmount { - @ApiModelProperty("CNY:人民币,境内商户号仅支持人民币。") - private String currency; - @ApiModelProperty("用户支付币种") - private String payer_currency; - @ApiModelProperty("用户支付金额,单位为分。(指使用优惠券的情况下,这里等于总金额-优惠券金额)") - private Long payer_total; - @ApiModelProperty("订单总金额,单位为分") - private Long total; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatPayNotify.java b/ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatPayNotify.java deleted file mode 100644 index df01ea0..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatPayNotify.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.cyl.wechat.response; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; - -/** - * @author: Jinxin - * @date: 2023/4/18 23:03 - * @Description: - */ -@Getter -@Setter -public class WeChatPayNotify { - - @ApiModelProperty("微信支付系统生成的订单号") - private String transaction_id; - @ApiModelProperty("商户号") - private String mchid; - @ApiModelProperty("订单金额信息") - private WeChatAmount amount; - @ApiModelProperty("商户订单号") - private String out_trade_no; - @ApiModelProperty("交易类型") - private String trade_type; - @ApiModelProperty("交易状态") - private String trade_state; - @ApiModelProperty("交易状态描述") - private String trade_state_desc; - @ApiModelProperty("付款银行") - private String bank_type; - @ApiModelProperty("附加数据") - private String attach; - @ApiModelProperty("支付完成时间") - private String success_time; - @ApiModelProperty("支付者信息") - private WeChatPayer payer; - -} diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatPayer.java b/ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatPayer.java deleted file mode 100644 index 56f1fbb..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/wechat/response/WeChatPayer.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.cyl.wechat.response; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; - -/** - * @author: Jinxin - * @date: 2023/4/18 23:03 - * @Description: - */ -@Getter -@Setter -public class WeChatPayer { - @ApiModelProperty("用户标识") - private String openid; -} diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/response/WechatUserAuth.java b/ruoyi-mall/src/main/java/com/cyl/wechat/response/WechatUserAuth.java deleted file mode 100644 index 9256205..0000000 --- a/ruoyi-mall/src/main/java/com/cyl/wechat/response/WechatUserAuth.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.cyl.wechat.response; - -import lombok.Data; - -@Data -public class WechatUserAuth { - - private String access_token; - private Integer expires_in; - private String refresh_token; - private String openid; - private String scope; - //登录的token - private String token; -} \ No newline at end of file diff --git a/ruoyi-mall/src/main/resources/application.properties b/ruoyi-mall/src/main/resources/application.properties deleted file mode 100644 index 8b13789..0000000 --- a/ruoyi-mall/src/main/resources/application.properties +++ /dev/null @@ -1 +0,0 @@ - diff --git a/ruoyi-mall/src/main/resources/mapper/act/CouponActivityMapper.xml b/ruoyi-mall/src/main/resources/mapper/act/CouponActivityMapper.xml deleted file mode 100644 index 06b0146..0000000 --- a/ruoyi-mall/src/main/resources/mapper/act/CouponActivityMapper.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - select id, title, use_scope, product_ids, total_count, left_count, user_limit, coupon_amount, min_amount, use_integral, coupon_type, begin_time, end_time, create_time from act_coupon_activity - - - update act_coupon_activity set left_count = left_count -1,update_time = now() where id = #{id} - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/act/IntegralHistoryMapper.xml b/ruoyi-mall/src/main/resources/mapper/act/IntegralHistoryMapper.xml deleted file mode 100644 index 5a04877..0000000 --- a/ruoyi-mall/src/main/resources/mapper/act/IntegralHistoryMapper.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - select id, member_id, amount, op_type, sub_op_type, order_amount, order_id, create_time from act_integral_history - - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/act/MemberCouponMapper.xml b/ruoyi-mall/src/main/resources/mapper/act/MemberCouponMapper.xml deleted file mode 100644 index 859511d..0000000 --- a/ruoyi-mall/src/main/resources/mapper/act/MemberCouponMapper.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - select id, coupon_activity_id, member_id, title, use_scope, product_ids, coupon_amount, min_amount, use_integral, coupon_type, begin_time, end_time, use_status, order_id, use_time, create_time from act_member_coupon - - - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/aws/SystemStatisticsMapper.xml b/ruoyi-mall/src/main/resources/mapper/aws/SystemStatisticsMapper.xml deleted file mode 100644 index 06618bd..0000000 --- a/ruoyi-mall/src/main/resources/mapper/aws/SystemStatisticsMapper.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - select id, date, login_member_count, register_member_count, add_cart_member_count, create_order_member_count, deal_member_count, order_count, deal_count, deal_amount, aftersale_count, aftersale_amount from aws_system_statistics - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/oms/AftersaleItemMapper.xml b/ruoyi-mall/src/main/resources/mapper/oms/AftersaleItemMapper.xml deleted file mode 100644 index eed785c..0000000 --- a/ruoyi-mall/src/main/resources/mapper/oms/AftersaleItemMapper.xml +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - select id, member_id, order_id, order_item_id, return_amount, quantity, create_by, create_time, update_by, update_time from oms_aftersale_item - - - - insert into oms_aftersale_item - (member_id,order_id,aftersale_id,order_item_id,return_amount,quantity,create_by,create_time,update_by,update_time) - values - - - #{item.memberId,jdbcType=BIGINT}, - #{item.orderId,jdbcType=BIGINT}, - #{item.aftersaleId,jdbcType=BIGINT}, - #{item.orderItemId,jdbcType=BIGINT}, - #{item.returnAmount,jdbcType=DECIMAL}, - #{item.quantity,jdbcType=BIGINT}, - #{item.createBy,jdbcType=BIGINT}, - #{item.createTime,jdbcType=DATE}, - #{item.updateBy,jdbcType=BIGINT}, - #{item.updateTime,jdbcType=DATE} - - - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/oms/AftersaleMapper.xml b/ruoyi-mall/src/main/resources/mapper/oms/AftersaleMapper.xml deleted file mode 100644 index 1161787..0000000 --- a/ruoyi-mall/src/main/resources/mapper/oms/AftersaleMapper.xml +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select id, member_id, order_id, return_amount, type, status, handle_time, quantity, reason, description, proof_pics, handle_note, handle_man, create_by, create_time, update_by, update_time from oms_aftersale - - - - - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/oms/OrderDeliveryHistoryMapper.xml b/ruoyi-mall/src/main/resources/mapper/oms/OrderDeliveryHistoryMapper.xml deleted file mode 100644 index e1d2b61..0000000 --- a/ruoyi-mall/src/main/resources/mapper/oms/OrderDeliveryHistoryMapper.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - select id, order_id, delivery_company, delivery_sn, create_by, create_time, update_by, update_time from oms_order_delivery_history - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/oms/OrderItemMapper.xml b/ruoyi-mall/src/main/resources/mapper/oms/OrderItemMapper.xml deleted file mode 100644 index 1b647a7..0000000 --- a/ruoyi-mall/src/main/resources/mapper/oms/OrderItemMapper.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select id, order_id, product_id, out_product_id, sku_id, out_sku_id, product_snapshot_id, sku_snapshot_id, pic, product_name, sale_price, purchase_price, quantity, product_category_id, sp_data, create_by, create_time, update_by, update_time from oms_order_item - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/oms/OrderMapper.xml b/ruoyi-mall/src/main/resources/mapper/oms/OrderMapper.xml deleted file mode 100644 index b717d9d..0000000 --- a/ruoyi-mall/src/main/resources/mapper/oms/OrderMapper.xml +++ /dev/null @@ -1,266 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select id, member_id, member_username, total_amount, purchase_price, pay_amount, freight_amount, pay_type, status, aftersale_status, delivery_company, delivery_sn, auto_confirm_day, receiver_name, receiver_phone, receiver_post_code, receiver_province, receiver_city, receiver_district, receiver_province_id, receiver_city_id, receiver_district_id, receiver_detail_address, note, confirm_status, delete_status, payment_time, delivery_time, receive_time, create_by, create_time, update_by, update_time from oms_order - - - - update oms_order - set - status=#{item.status}, - update_by=#{item.updateBy}, - update_time=#{item.updateTime} - where id=#{item.id} - - - - - - - - - - - - - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/oms/OrderOperateHistoryMapper.xml b/ruoyi-mall/src/main/resources/mapper/oms/OrderOperateHistoryMapper.xml deleted file mode 100644 index 203d6b4..0000000 --- a/ruoyi-mall/src/main/resources/mapper/oms/OrderOperateHistoryMapper.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - select id, order_id, operate_man, order_status, note, create_by, create_time, update_by, update_time from oms_order_operate_history - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/oms/WechatPaymentHistoryMapper.xml b/ruoyi-mall/src/main/resources/mapper/oms/WechatPaymentHistoryMapper.xml deleted file mode 100644 index 5da1d11..0000000 --- a/ruoyi-mall/src/main/resources/mapper/oms/WechatPaymentHistoryMapper.xml +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select id, payment_id, member_id, openid, real_name, title, order_id, money, op_type, payment_status, remark, attach, response_body, create_by, create_time, update_by, update_time from oms_wechat_payment_history - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/pms/BrandMapper.xml b/ruoyi-mall/src/main/resources/mapper/pms/BrandMapper.xml deleted file mode 100644 index aff89d0..0000000 --- a/ruoyi-mall/src/main/resources/mapper/pms/BrandMapper.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - select id, name, sort, show_status, logo, create_by, create_time, update_by, update_time from pms_brand - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/pms/ProductCategoryMapper.xml b/ruoyi-mall/src/main/resources/mapper/pms/ProductCategoryMapper.xml deleted file mode 100644 index c5cb90b..0000000 --- a/ruoyi-mall/src/main/resources/mapper/pms/ProductCategoryMapper.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - select id, parent_id, name, level, show_status, sort, icon, create_by, create_time, update_by, update_time from pms_product_category - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/pms/ProductMapper.xml b/ruoyi-mall/src/main/resources/mapper/pms/ProductMapper.xml deleted file mode 100644 index 1dfdbbe..0000000 --- a/ruoyi-mall/src/main/resources/mapper/pms/ProductMapper.xml +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select id, brand_id, category_id, out_product_id, name, pic, album_pics, publish_status, sort, price, unit, weight, detail_html, detail_mobile_html, brand_name, product_category_name, create_by, create_time, update_by, update_time from pms_product - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/pms/SkuMapper.xml b/ruoyi-mall/src/main/resources/mapper/pms/SkuMapper.xml deleted file mode 100644 index 902c5f9..0000000 --- a/ruoyi-mall/src/main/resources/mapper/pms/SkuMapper.xml +++ /dev/null @@ -1,46 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - select id, product_id, out_sku_id, price, pic, sp_data, create_by, create_time, update_by, update_time from pms_sku - - - update - pms_sku - set - stock = stock - #{quantity}, - update_time = #{optDate} - where id = #{skuId} - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/statistics/IndexStatisticsMapper.xml b/ruoyi-mall/src/main/resources/mapper/statistics/IndexStatisticsMapper.xml deleted file mode 100644 index 4b86c1d..0000000 --- a/ruoyi-mall/src/main/resources/mapper/statistics/IndexStatisticsMapper.xml +++ /dev/null @@ -1,104 +0,0 @@ - - - - - SELECT - curdate( ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 1 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 2 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 3 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 4 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 5 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 6 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 7 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 8 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 9 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 10 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 11 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 12 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 13 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 14 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 15 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 16 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 17 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 18 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 19 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 20 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 21 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 22 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 23 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 24 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 25 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 26 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 27 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 28 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 29 DAY ) AS date - - - SELECT - curdate( ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 1 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 2 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 3 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 4 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 5 DAY ) AS date UNION ALL - SELECT date_sub( curdate( ), INTERVAL 6 DAY ) AS date - - - - - - - - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/ums/AddressMapper.xml b/ruoyi-mall/src/main/resources/mapper/ums/AddressMapper.xml deleted file mode 100644 index e19506e..0000000 --- a/ruoyi-mall/src/main/resources/mapper/ums/AddressMapper.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - select id, code, parent_code, name, level, created_at, updated_at, deleted_at from address - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/ums/FeedbackMapper.xml b/ruoyi-mall/src/main/resources/mapper/ums/FeedbackMapper.xml deleted file mode 100644 index c83404f..0000000 --- a/ruoyi-mall/src/main/resources/mapper/ums/FeedbackMapper.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - select id, type, content, images, phone, create_by, create_time, handle_status, remark, handle_time from ums_feedback - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/ums/MemberAccountMapper.xml b/ruoyi-mall/src/main/resources/mapper/ums/MemberAccountMapper.xml deleted file mode 100644 index d167701..0000000 --- a/ruoyi-mall/src/main/resources/mapper/ums/MemberAccountMapper.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - select member_id, integral_balance, total_integral_balance, update_time, create_time from ums_member_account - - - update ums_member_account set integral_balance = integral_balance + #{amount},total_integral_balance = total_integral_balance + #{amount},update_time = now() - where member_id = #{memberId} - - - update ums_member_account set integral_balance = integral_balance - #{useIntegral},update_time = now() - where member_id = #{memberId} - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/ums/MemberAddressMapper.xml b/ruoyi-mall/src/main/resources/mapper/ums/MemberAddressMapper.xml deleted file mode 100644 index e53837c..0000000 --- a/ruoyi-mall/src/main/resources/mapper/ums/MemberAddressMapper.xml +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select id, member_id, name, phone_hidden,phone_encrypted, default_status, post_code, province, city, district, detail_address, is_default, create_by, create_time, update_by, update_time from ums_member_address - - - - - - update ums_member_address - - - member_id = #{memberId, jdbcType=BIGINT}, - - - name = #{name, jdbcType=BIGINT}, - - - phone = #{phone, jdbcType=BIGINT}, - - - default_status = #{defaultStatus, jdbcType=BIGINT}, - - - post_code = #{postCode, jdbcType=BIGINT}, - - - province = #{province, jdbcType=BIGINT}, - - - city = #{city, jdbcType=BIGINT}, - - - district = #{district, jdbcType=BIGINT}, - - - detail_address = #{detailAddress, jdbcType=BIGINT}, - - - is_default = #{isDefault, jdbcType=BIGINT}, - - - create_by = #{createBy, jdbcType=BIGINT}, - - - create_time = #{createTime, jdbcType=BIGINT}, - - - update_by = #{updateBy, jdbcType=BIGINT}, - - - update_time = #{updateTime, jdbcType=BIGINT}, - - - where id = #{id, jdbcType=BIGINT} - - - update ums_member_address - set is_default = #{param1} - where member_id = #{param2} - - diff --git a/ruoyi-mall/src/main/resources/mapper/ums/MemberCartMapper.xml b/ruoyi-mall/src/main/resources/mapper/ums/MemberCartMapper.xml deleted file mode 100644 index 0ae91ce..0000000 --- a/ruoyi-mall/src/main/resources/mapper/ums/MemberCartMapper.xml +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - select id, status, member_id, product_id, pic, sku_id, product_name, sp_data, quantity, create_by, create_time, update_by, update_time from ums_member_cart - - - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/ums/MemberLogininforMapper.xml b/ruoyi-mall/src/main/resources/mapper/ums/MemberLogininforMapper.xml deleted file mode 100644 index b16e51e..0000000 --- a/ruoyi-mall/src/main/resources/mapper/ums/MemberLogininforMapper.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - select id, phone, member_id, ipaddr, login_location, browser, os, login_time from ums_member_logininfor - - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/ums/MemberMapper.xml b/ruoyi-mall/src/main/resources/mapper/ums/MemberMapper.xml deleted file mode 100644 index d0ce8e1..0000000 --- a/ruoyi-mall/src/main/resources/mapper/ums/MemberMapper.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select id, nickname, password, phone, mark, status, avatar, gender, city, province, country, remark, birthday, spread_uid, spread_time, level, integral, create_by, create_time, update_by, update_time from ums_member - - - - diff --git a/ruoyi-mall/src/main/resources/mapper/ums/MemberWechatMapper.xml b/ruoyi-mall/src/main/resources/mapper/ums/MemberWechatMapper.xml deleted file mode 100644 index 61d29f6..0000000 --- a/ruoyi-mall/src/main/resources/mapper/ums/MemberWechatMapper.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select id, member_id, unionid, openid, routine_openid, groupid, tagid_list, subscribe, subscribe_time, session_key, access_token, expires_in, refresh_token, expire_time, create_by, create_time, update_by, update_time from ums_member_wechat - - - - diff --git a/ruoyi-mall/src/test/java/com/example/ruoyimall/RuoyiMallApplicationTests.java b/ruoyi-mall/src/test/java/com/example/ruoyimall/RuoyiMallApplicationTests.java deleted file mode 100644 index 5c1e9e3..0000000 --- a/ruoyi-mall/src/test/java/com/example/ruoyimall/RuoyiMallApplicationTests.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.example.ruoyimall; - -import org.junit.jupiter.api.Test; -import org.springframework.boot.test.context.SpringBootTest; - -@SpringBootTest -class RuoyiMallApplicationTests { - - @Test - void contextLoads() { - } - -} diff --git a/ruoyi-system/src/main/java/com/ruoyi/mall/domain/Express.java b/ruoyi-system/src/main/java/com/ruoyi/mall/domain/Express.java deleted file mode 100644 index e6dce65..0000000 --- a/ruoyi-system/src/main/java/com/ruoyi/mall/domain/Express.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.ruoyi.mall.domain; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.ruoyi.common.core.domain.BaseAudit; -import lombok.Data; - -/** - * 地址对象 - * - */ -//"地址对象") -@Data -@TableName("mall_express") -public class Express extends BaseAudit { - private static final long serialVersionUID = 1L; - - @TableId(type=IdType.ASSIGN_ID) - private Long id; - - private String expressName; - - - private String expressCode; - - - private String status; - - -} diff --git a/ruoyi-system/src/main/java/com/ruoyi/mall/mapper/ExpressMapper.java b/ruoyi-system/src/main/java/com/ruoyi/mall/mapper/ExpressMapper.java deleted file mode 100644 index 87c07d6..0000000 --- a/ruoyi-system/src/main/java/com/ruoyi/mall/mapper/ExpressMapper.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.ruoyi.mall.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.ruoyi.mall.domain.Express; - -/** - * 【请填写功能名称】Mapper接口 - * - * @author - */ -public interface ExpressMapper extends BaseMapper { - - -} diff --git a/ruoyi-system/src/main/java/com/ruoyi/mall/service/AftersaleService.java b/ruoyi-system/src/main/java/com/ruoyi/mall/service/AftersaleService.java index ca4329d..4a04bda 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/mall/service/AftersaleService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/mall/service/AftersaleService.java @@ -11,11 +11,16 @@ import com.ruoyi.common.constant.Constants; import com.ruoyi.common.enums.AftersaleStatus; import com.ruoyi.common.enums.OrderRefundStatus; import com.ruoyi.common.utils.SecurityUtils; -import com.ruoyi.mall.domain.*; +import com.ruoyi.mall.domain.Aftersale; +import com.ruoyi.mall.domain.Order; +import com.ruoyi.mall.domain.OrderItem; +import com.ruoyi.mall.domain.OrderOperateHistory; import com.ruoyi.mall.domain.form.DealWithAftersaleForm; import com.ruoyi.mall.domain.form.ManagerAftersaleOrderForm; import com.ruoyi.mall.domain.vo.*; import com.ruoyi.mall.mapper.*; +import com.ruoyi.system.domain.AppUser; +import com.ruoyi.system.mapper.YjAppUserMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Pageable; diff --git a/ruoyi-system/src/main/java/com/ruoyi/mall/service/ExpressService.java b/ruoyi-system/src/main/java/com/ruoyi/mall/service/ExpressService.java deleted file mode 100644 index 961bb4a..0000000 --- a/ruoyi-system/src/main/java/com/ruoyi/mall/service/ExpressService.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.ruoyi.mall.service; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.github.pagehelper.PageHelper; -import com.ruoyi.mall.domain.Express; -import com.ruoyi.mall.mapper.ExpressMapper; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; - -import java.time.LocalDateTime; -import java.util.List; - -/** - * 快递管理Service业务层处理 - * - * - * @author zcc - */ -@Service -public class ExpressService { - @Autowired - private ExpressMapper mapper; - - /** - * 查询快递管理 - * - * @param id 快递管理主键 - * @return 快递管理 - */ - public Express selectById(Long id) { - return mapper.selectById(id); - } - - /** - * 查询快递管理列表 - * - * @param query 查询条件 - * @param page 分页条件 - * @return 快递管理 - */ - public List selectList(Express query, Pageable page) { - if (page != null) { - PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize()); - } - QueryWrapper qw = new QueryWrapper<>(); - String nameLike = query.getExpressName(); - if (!StringUtils.isEmpty(nameLike)) { - qw.like("express_name", "%".concat(nameLike).concat("%")); - } - String status = query.getStatus(); - if (status != null) { - qw.eq("status", status); - } - - return mapper.selectList(qw); - } - - /** - * 新增快递管理 - * - * @param 快递管理 - * @return 结果 - */ - public int insert(Express express) { - express.setCreateTime(LocalDateTime.now()); - return mapper.insert(express); - } - - /** - * 修改快递管理 - * - * @param express 快递管理 - * @return 结果 - */ - public int update(Express express) { - return mapper.updateById(express); - } - - /** - * 删除快递管理信息 - * - * @param id 快递管理主键 - * @return 结果 - */ - public int deleteById(Long id) { - return mapper.deleteById(id); - } -} diff --git a/ruoyi-system/src/main/java/com/ruoyi/mall/service/OrderService.java b/ruoyi-system/src/main/java/com/ruoyi/mall/service/OrderService.java index c7766a0..3cf8bb8 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/mall/service/OrderService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/mall/service/OrderService.java @@ -41,8 +41,7 @@ public class OrderService { @Autowired private OrderOperateHistoryMapper orderOperateHistoryMapper; - @Autowired - private ExpressMapper expressMapper; + // @Value("${aes.key}") // private String aesKey; @Autowired diff --git a/ruoyi-system/src/main/java/com/ruoyi/mall/domain/AppUser.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/AppUser.java similarity index 83% rename from ruoyi-system/src/main/java/com/ruoyi/mall/domain/AppUser.java rename to ruoyi-system/src/main/java/com/ruoyi/system/domain/AppUser.java index 9074c2c..2bcaf2f 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/mall/domain/AppUser.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/AppUser.java @@ -1,9 +1,6 @@ -package com.ruoyi.mall.domain; +package com.ruoyi.system.domain; -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 com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.common.annotation.Excel; import lombok.Data; @@ -14,7 +11,7 @@ import java.util.Date; /** * app登录对象 yj_app_user * - * @author + * @author zcc */ //"会员信息对象") @Data @@ -74,10 +71,10 @@ public class AppUser { /** 员工所属门店id */ - private Long deptId; +// private Long deptId; /** 员工所属商户id */ - private String tenantId; +// private String tenantId; /** 最后登录IP */ @@ -90,10 +87,14 @@ public class AppUser { private Date loginDate; /**后台账户`sys_user`的user_id*/ - @TableField("manage_account_id") + + @TableField(value = "manage_account_id",updateStrategy = FieldStrategy.IGNORED) private Long manageAccountId; @TableField(exist = false) private String newPassword; + + + } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/columns/SysTeacher.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/columns/SysTeacher.java index 6f08564..282db55 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/columns/SysTeacher.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/columns/SysTeacher.java @@ -1,10 +1,9 @@ package com.ruoyi.system.domain.columns; -import lombok.Data; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; +import com.baomidou.mybatisplus.annotation.TableField; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.core.domain.BaseEntity; +import lombok.Data; /** * 员工信息对象 sys_teacher @@ -54,5 +53,7 @@ public class SysTeacher extends BaseEntity private String tenantId; + @TableField(exist = false) + private String nickName; } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/columns/YjStore.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/columns/YjStore.java index 2a5bf12..3735d6d 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/columns/YjStore.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/columns/YjStore.java @@ -1,14 +1,14 @@ package com.ruoyi.system.domain.columns; -import lombok.Data; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.core.domain.BaseEntity; +import lombok.Data; /** * 门店对象 yj_store - * + * * @author ruoyi * @date 2025-10-31 */ @@ -42,86 +42,15 @@ public class YjStore extends BaseEntity private String profile; /** $column.columnComment */ + @TableId private Long deptId; + @TableField(exist = false) private String tenantId; - + @TableField(exist = false) private String deptName; - public void setBanner(String banner) - { - this.banner = banner; - } - - public String getBanner() - { - return banner; - } - public void setStoreName(String storeName) - { - this.storeName = storeName; - } - - public String getStoreName() - { - return storeName; - } - public void setAddress(String address) - { - this.address = address; - } - - public String getAddress() - { - return address; - } - public void setPhone(String phone) - { - this.phone = phone; - } - - public String getPhone() - { - return phone; - } - public void setFounder(String founder) - { - this.founder = founder; - } - - public String getFounder() - { - return founder; - } - public void setProfile(String profile) - { - this.profile = profile; - } - - public String getProfile() - { - return profile; - } - public void setDeptId(Long deptId) - { - this.deptId = deptId; - } - - public Long getDeptId() - { - return deptId; - } + //门店是否页面显示0 不显示 1显示 + private String display; - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("banner", getBanner()) - .append("storeName", getStoreName()) - .append("address", getAddress()) - .append("phone", getPhone()) - .append("founder", getFounder()) - .append("profile", getProfile()) - .append("deptId", getDeptId()) - .toString(); - } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysMenuMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysMenuMapper.java index 943f5f1..7b439d6 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysMenuMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysMenuMapper.java @@ -65,7 +65,7 @@ public interface SysMenuMapper * @param menuCheckStrictly 菜单树选择项是否关联显示 * @return 选中菜单列表 */ - public List selectMenuListByRoleId(@Param("roleId") Long roleId, @Param("menuCheckStrictly") boolean menuCheckStrictly); + public List selectMenuListByRoleId(@Param("roleId") Long roleId,@Param("tenantId")String tenantId, @Param("menuCheckStrictly") boolean menuCheckStrictly); /** * 根据菜单ID查询信息 diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java index 6602bee..56ad1ed 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java @@ -1,18 +1,19 @@ package com.ruoyi.system.mapper; -import java.util.List; import com.ruoyi.system.domain.SysRoleMenu; +import java.util.List; + /** * 角色与菜单关联表 数据层 - * + * * @author ruoyi */ public interface SysRoleMenuMapper { /** * 查询菜单使用数量 - * + * * @param menuId 菜单ID * @return 结果 */ @@ -20,7 +21,7 @@ public interface SysRoleMenuMapper /** * 通过角色ID删除角色和菜单关联 - * + * * @param roleId 角色ID * @return 结果 */ @@ -28,7 +29,7 @@ public interface SysRoleMenuMapper /** * 批量删除角色菜单关联信息 - * + * * @param ids 需要删除的数据ID * @return 结果 */ @@ -36,9 +37,11 @@ public interface SysRoleMenuMapper /** * 批量新增角色菜单信息 - * + * * @param roleMenuList 角色菜单列表 * @return 结果 */ public int batchRoleMenu(List roleMenuList); + + int insertForNewTenant(String tenantId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/mall/mapper/YjAppUserMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/YjAppUserMapper.java similarity index 73% rename from ruoyi-system/src/main/java/com/ruoyi/mall/mapper/YjAppUserMapper.java rename to ruoyi-system/src/main/java/com/ruoyi/system/mapper/YjAppUserMapper.java index e11a664..b2ef721 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/mall/mapper/YjAppUserMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/YjAppUserMapper.java @@ -1,8 +1,8 @@ -package com.ruoyi.mall.mapper; +package com.ruoyi.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.ruoyi.mall.domain.AppUser; +import com.ruoyi.system.domain.AppUser; /** *

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/colums/SysTeacherMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/colums/SysTeacherMapper.java index 328227f..8dc219e 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/colums/SysTeacherMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/colums/SysTeacherMapper.java @@ -1,20 +1,21 @@ package com.ruoyi.system.mapper.colums; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.system.domain.columns.SysTeacher; import java.util.List; /** * 员工信息Mapper接口 - * + * * @author ruoyi * @date 2025-10-28 */ -public interface SysTeacherMapper +public interface SysTeacherMapper { /** * 查询员工信息 - * + * * @param userId 员工信息主键 * @return 员工信息 */ @@ -22,15 +23,16 @@ public interface SysTeacherMapper /** * 查询员工信息列表 - * + * * @param sysTeacher 员工信息 * @return 员工信息集合 */ public List selectSysTeacherList(SysTeacher sysTeacher); + public List getUserForTeacher(SysTeacher sysTeacher); /** * 新增员工信息 - * + * * @param sysTeacher 员工信息 * @return 结果 */ @@ -38,7 +40,7 @@ public interface SysTeacherMapper /** * 修改员工信息 - * + * * @param sysTeacher 员工信息 * @return 结果 */ @@ -46,7 +48,7 @@ public interface SysTeacherMapper /** * 删除员工信息 - * + * * @param userId 员工信息主键 * @return 结果 */ @@ -54,7 +56,7 @@ public interface SysTeacherMapper /** * 批量删除员工信息 - * + * * @param userIds 需要删除的数据主键集合 * @return 结果 */ diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysMenuService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysMenuService.java index f64bee1..c64a7de 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysMenuService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysMenuService.java @@ -1,21 +1,22 @@ package com.ruoyi.system.service; -import java.util.List; -import java.util.Set; import com.ruoyi.common.core.domain.TreeSelect; import com.ruoyi.common.core.domain.entity.SysMenu; import com.ruoyi.system.domain.vo.RouterVo; +import java.util.List; +import java.util.Set; + /** * 菜单 业务层 - * + * * @author ruoyi */ public interface ISysMenuService { /** * 根据用户查询系统菜单列表 - * + * * @param userId 用户ID * @return 菜单列表 */ @@ -23,7 +24,7 @@ public interface ISysMenuService /** * 根据用户查询系统菜单列表 - * + * * @param menu 菜单信息 * @param userId 用户ID * @return 菜单列表 @@ -32,15 +33,15 @@ public interface ISysMenuService /** * 根据用户ID查询权限 - * + * * @param userId 用户ID * @return 权限列表 */ - public Set selectMenuPermsByUserId(Long userId); + public Set selectMenuPermsByUserId(Long userId,String tenantId); /** * 根据用户ID查询菜单树信息 - * + * * @param userId 用户ID * @return 菜单列表 */ @@ -48,7 +49,7 @@ public interface ISysMenuService /** * 根据角色ID查询菜单树信息 - * + * * @param roleId 角色ID * @return 选中菜单列表 */ @@ -56,7 +57,7 @@ public interface ISysMenuService /** * 构建前端路由所需要的菜单 - * + * * @param menus 菜单列表 * @return 路由列表 */ @@ -64,7 +65,7 @@ public interface ISysMenuService /** * 构建前端所需要树结构 - * + * * @param menus 菜单列表 * @return 树结构列表 */ @@ -72,7 +73,7 @@ public interface ISysMenuService /** * 构建前端所需要下拉树结构 - * + * * @param menus 菜单列表 * @return 下拉树结构列表 */ @@ -80,7 +81,7 @@ public interface ISysMenuService /** * 根据菜单ID查询信息 - * + * * @param menuId 菜单ID * @return 菜单信息 */ @@ -88,7 +89,7 @@ public interface ISysMenuService /** * 是否存在菜单子节点 - * + * * @param menuId 菜单ID * @return 结果 true 存在 false 不存在 */ @@ -96,7 +97,7 @@ public interface ISysMenuService /** * 查询菜单是否存在角色 - * + * * @param menuId 菜单ID * @return 结果 true 存在 false 不存在 */ @@ -104,7 +105,7 @@ public interface ISysMenuService /** * 新增保存菜单信息 - * + * * @param menu 菜单信息 * @return 结果 */ @@ -112,7 +113,7 @@ public interface ISysMenuService /** * 修改保存菜单信息 - * + * * @param menu 菜单信息 * @return 结果 */ @@ -120,7 +121,7 @@ public interface ISysMenuService /** * 删除菜单管理信息 - * + * * @param menuId 菜单ID * @return 结果 */ @@ -128,7 +129,7 @@ public interface ISysMenuService /** * 校验菜单名称是否唯一 - * + * * @param menu 菜单信息 * @return 结果 */ diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java index d8da330..63da304 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java @@ -1,42 +1,29 @@ package com.ruoyi.system.service; -import java.util.List; import com.ruoyi.common.core.domain.entity.SysUser; +import java.util.List; + /** * 用户 业务层 - * + * * @author ruoyi */ public interface ISysUserService { /** * 根据条件分页查询用户列表 - * + * * @param user 用户信息 * @return 用户信息集合信息 */ public List selectUserList(SysUser user); - /** - * 根据条件分页查询已分配用户角色列表 - * - * @param user 用户信息 - * @return 用户信息集合信息 - */ - public List selectAllocatedList(SysUser user); - /** - * 根据条件分页查询未分配用户角色列表 - * - * @param user 用户信息 - * @return 用户信息集合信息 - */ - public List selectUnallocatedList(SysUser user); /** * 通过用户名查询用户 - * + * * @param userName 用户名 * @return 用户对象信息 */ @@ -44,7 +31,7 @@ public interface ISysUserService /** * 通过用户ID查询用户 - * + * * @param userId 用户ID * @return 用户对象信息 */ @@ -52,7 +39,7 @@ public interface ISysUserService /** * 根据用户ID查询用户所属角色组 - * + * * @param userName 用户名 * @return 结果 */ @@ -60,7 +47,7 @@ public interface ISysUserService /** * 根据用户ID查询用户所属岗位组 - * + * * @param userName 用户名 * @return 结果 */ @@ -68,7 +55,7 @@ public interface ISysUserService /** * 校验用户名称是否唯一 - * + * * @param userName 用户名称 * @return 结果 */ @@ -92,21 +79,21 @@ public interface ISysUserService /** * 校验用户是否允许操作 - * + * * @param user 用户信息 */ public void checkUserAllowed(SysUser user); /** * 校验用户是否有数据权限 - * + * * @param userId 用户id */ public void checkUserDataScope(Long userId); /** * 新增用户信息 - * + * * @param user 用户信息 * @return 结果 */ @@ -114,7 +101,7 @@ public interface ISysUserService /** * 注册用户信息 - * + * * @param user 用户信息 * @return 结果 */ @@ -122,7 +109,7 @@ public interface ISysUserService /** * 修改用户信息 - * + * * @param user 用户信息 * @return 结果 */ @@ -130,7 +117,7 @@ public interface ISysUserService /** * 用户授权角色 - * + * * @param userId 用户ID * @param roleIds 角色组 */ @@ -138,7 +125,7 @@ public interface ISysUserService /** * 修改用户状态 - * + * * @param user 用户信息 * @return 结果 */ @@ -146,24 +133,15 @@ public interface ISysUserService /** * 修改用户基本信息 - * + * * @param user 用户信息 * @return 结果 */ public int updateUserProfile(SysUser user); - /** - * 修改用户头像 - * - * @param userName 用户名 - * @param avatar 头像地址 - * @return 结果 - */ - public boolean updateUserAvatar(String userName, String avatar); - /** * 重置用户密码 - * + * * @param user 用户信息 * @return 结果 */ @@ -171,24 +149,16 @@ public interface ISysUserService /** * 重置用户密码 - * + * * @param userName 用户名 * @param password 密码 * @return 结果 */ public int resetUserPwd(String userName, String password); - /** - * 通过用户ID删除用户 - * - * @param userId 用户ID - * @return 结果 - */ - public int deleteUserById(Long userId); - /** * 批量删除用户信息 - * + * * @param userIds 需要删除的用户ID * @return 结果 */ @@ -196,7 +166,7 @@ public interface ISysUserService /** * 导入用户数据 - * + * * @param userList 用户数据列表 * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 * @param userId 操作用户 @@ -204,5 +174,4 @@ public interface ISysUserService */ public String importUser(List userList, Boolean isUpdateSupport, Long userId); - SysUser selectUserByPhoneOrUserName(String phone); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/YjAppUserService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/YjAppUserService.java new file mode 100644 index 0000000..56515d6 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/YjAppUserService.java @@ -0,0 +1,18 @@ +package com.ruoyi.system.service; + + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.system.domain.AppUser; + +/** + *

+ * 瑜伽传承 服务类 + *

+ * + * @author xn + * @since 2022-09-26 + */ +public interface YjAppUserService extends IService { + + AppUser selectAppUserByPhone(String phoneNumber); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/ISysTeacherService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/ISysTeacherService.java index 387eed0..831867c 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/ISysTeacherService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/ISysTeacherService.java @@ -1,16 +1,17 @@ package com.ruoyi.system.service.columns; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.system.domain.columns.SysTeacher; import java.util.List; /** * 员工信息Service接口 - * + * * @author ruoyi * @date 2025-10-28 */ -public interface ISysTeacherService +public interface ISysTeacherService { /** * 查询员工信息 @@ -22,15 +23,15 @@ public interface ISysTeacherService /** * 查询员工信息列表 - * + * * @param sysTeacher 员工信息 * @return 员工信息集合 */ public List selectSysTeacherList(SysTeacher sysTeacher); - + List getUserForTeacher(SysTeacher sysTeacher); /** * 新增员工信息 - * + * * @param sysTeacher 员工信息 * @return 结果 */ @@ -38,7 +39,7 @@ public interface ISysTeacherService /** * 修改员工信息 - * + * * @param sysTeacher 员工信息 * @return 结果 */ @@ -46,7 +47,7 @@ public interface ISysTeacherService /** * 批量删除员工信息 - * + * * @param userIds 需要删除的员工信息主键集合 * @return 结果 */ @@ -54,7 +55,7 @@ public interface ISysTeacherService /** * 删除员工信息信息 - * + * * @param userId 员工信息主键 * @return 结果 */ diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/impl/SysTeacherServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/impl/SysTeacherServiceImpl.java index a69c7e3..096119d 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/impl/SysTeacherServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/impl/SysTeacherServiceImpl.java @@ -1,18 +1,18 @@ package com.ruoyi.system.service.columns.impl; -import java.time.LocalDateTime; -import java.util.List; - -import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.system.domain.columns.SysTeacher; import com.ruoyi.system.mapper.colums.SysTeacherMapper; import com.ruoyi.system.service.columns.ISysTeacherService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.time.LocalDateTime; +import java.util.List; + /** * 员工信息Service业务层处理 - * + * * @author ruoyi * @date 2025-10-28 */ @@ -36,7 +36,7 @@ public class SysTeacherServiceImpl implements ISysTeacherService /** * 查询员工信息列表 - * + * * @param sysTeacher 员工信息 * @return 员工信息 */ @@ -45,10 +45,15 @@ public class SysTeacherServiceImpl implements ISysTeacherService { return sysTeacherMapper.selectSysTeacherList(sysTeacher); } + @Override + public List getUserForTeacher(SysTeacher sysTeacher) + { + return sysTeacherMapper.getUserForTeacher(sysTeacher); + } /** * 新增员工信息 - * + * * @param sysTeacher 员工信息 * @return 结果 */ @@ -61,7 +66,7 @@ public class SysTeacherServiceImpl implements ISysTeacherService /** * 修改员工信息 - * + * * @param sysTeacher 员工信息 * @return 结果 */ @@ -74,7 +79,7 @@ public class SysTeacherServiceImpl implements ISysTeacherService /** * 批量删除员工信息 - * + * * @param userIds 需要删除的员工信息主键 * @return 结果 */ @@ -86,7 +91,7 @@ public class SysTeacherServiceImpl implements ISysTeacherService /** * 删除员工信息信息 - * + * * @param userId 员工信息主键 * @return 结果 */ diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/impl/YjInheritServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/impl/YjInheritServiceImpl.java index bf76709..8df3245 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/impl/YjInheritServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/columns/impl/YjInheritServiceImpl.java @@ -1,16 +1,16 @@ package com.ruoyi.system.service.columns.impl; -import java.util.List; - import com.ruoyi.system.domain.columns.YjInherit; import com.ruoyi.system.mapper.colums.YjInheritMapper; import com.ruoyi.system.service.columns.IYjInheritService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** * 瑜伽传承Service业务层处理 - * + * * @author ruoyi * @date 2025-10-29 */ @@ -22,7 +22,7 @@ public class YjInheritServiceImpl implements IYjInheritService /** * 查询瑜伽传承 - * + * * @param id 瑜伽传承主键 * @return 瑜伽传承 */ @@ -34,7 +34,7 @@ public class YjInheritServiceImpl implements IYjInheritService /** * 查询瑜伽传承列表 - * + * * @param yjInherit 瑜伽传承 * @return 瑜伽传承 */ @@ -46,19 +46,20 @@ public class YjInheritServiceImpl implements IYjInheritService /** * 新增瑜伽传承 - * + * * @param yjInherit 瑜伽传承 * @return 结果 */ @Override public int insertYjInherit(YjInherit yjInherit) { +// yjInherit.setDeptId(SecurityUtils.getDeptId()); return yjInheritMapper.insertYjInherit(yjInherit); } /** * 修改瑜伽传承 - * + * * @param yjInherit 瑜伽传承 * @return 结果 */ @@ -70,7 +71,7 @@ public class YjInheritServiceImpl implements IYjInheritService /** * 批量删除瑜伽传承 - * + * * @param ids 需要删除的瑜伽传承主键 * @return 结果 */ @@ -82,7 +83,7 @@ public class YjInheritServiceImpl implements IYjInheritService /** * 删除瑜伽传承信息 - * + * * @param id 瑜伽传承主键 * @return 结果 */ diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java index 11018f7..42711fb 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java @@ -11,11 +11,14 @@ import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.spring.SpringUtils; +import com.ruoyi.system.domain.columns.YjStore; import com.ruoyi.system.mapper.SysDeptMapper; import com.ruoyi.system.mapper.SysRoleMapper; +import com.ruoyi.system.mapper.colums.YjStoreMapper; import com.ruoyi.system.service.ISysDeptService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.Iterator; @@ -36,6 +39,9 @@ public class SysDeptServiceImpl implements ISysDeptService @Autowired private SysRoleMapper roleMapper; + @Autowired + private YjStoreMapper storeMapper; + /** * 查询部门管理数据 * @@ -46,7 +52,11 @@ public class SysDeptServiceImpl implements ISysDeptService @DataScope(deptAlias = "d") public List selectDeptList(SysDept dept) { - dept.setTenantId(SecurityUtils.getLoginUser().getNowTenantId()); + if (! SecurityUtils.isAdmin(SecurityUtils.getUserId())){ + dept.setTenantId(SecurityUtils.getLoginUser().getNowTenantId()); + } + + return deptMapper.selectDeptList(dept); } @@ -203,6 +213,7 @@ public class SysDeptServiceImpl implements ISysDeptService * @return 结果 */ @Override + @Transactional public int insertDept(SysDept dept) { SysDept info = deptMapper.selectDeptById(dept.getParentId()); @@ -213,7 +224,16 @@ public class SysDeptServiceImpl implements ISysDeptService } dept.setAncestors(info.getAncestors() + "," + dept.getParentId()); dept.setTenantId(SecurityUtils.getLoginUser().getNowTenantId()); - return deptMapper.insertDept(dept); + int i= deptMapper.insertDept(dept); + if (dept.getDeptType().equals("2")){ + //校区 新增门店介绍 + //门店 + YjStore store=new YjStore(); + store.setDeptId(dept.getDeptId()); + store.setStoreName(dept.getDeptName()); + storeMapper.insertYjStore(store); + } + return i; } /** @@ -223,6 +243,7 @@ public class SysDeptServiceImpl implements ISysDeptService * @return 结果 */ @Override + @Transactional public int updateDept(SysDept dept) { SysDept newParentDept = deptMapper.selectDeptById(dept.getParentId()); @@ -241,6 +262,22 @@ public class SysDeptServiceImpl implements ISysDeptService // 如果该部门是启用状态,则启用该部门的所有上级部门 updateParentDeptStatusNormal(dept); } + + + if (oldDept.getDeptType().equals("1")&&dept.getDeptType().equals("2")){ + //部门 to 校区 新增门店介绍 + YjStore store=new YjStore(); + store.setDeptId(dept.getDeptId()); + store.setStoreName(dept.getDeptName()); + storeMapper.insertYjStore(store); + } + if (oldDept.getDeptType().equals("2")&&dept.getDeptType().equals("1")){ + //校区 to 部门 + storeMapper.deleteYjStoreByDeptId(dept.getDeptId()); + } + + + return result; } @@ -285,6 +322,8 @@ public class SysDeptServiceImpl implements ISysDeptService @Override public int deleteDeptById(Long deptId) { + + storeMapper.deleteYjStoreByDeptId(deptId); return deptMapper.deleteDeptById(deptId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java index a084ee1..91b886a 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java @@ -82,10 +82,10 @@ public class SysMenuServiceImpl implements ISysMenuService * @return 权限列表 */ @Override - public Set selectMenuPermsByUserId(Long userId) + public Set selectMenuPermsByUserId(Long userId,String tenantId) { - List perms = menuMapper.selectMenuPermsByUserId(userId,SecurityUtils.getLoginUser().getNowTenantId()); + List perms = menuMapper.selectMenuPermsByUserId(userId,tenantId); Set permsSet = new HashSet<>(); for (String perm : perms) { @@ -128,7 +128,7 @@ public class SysMenuServiceImpl implements ISysMenuService public List selectMenuListByRoleId(Long roleId) { SysRole role = roleMapper.selectRoleById(roleId); - return menuMapper.selectMenuListByRoleId(roleId, role.isMenuCheckStrictly()); + return menuMapper.selectMenuListByRoleId(roleId, SecurityUtils.getLoginUser().getNowTenantId(),role.isMenuCheckStrictly()); } /** diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java index 21a5e3a..795449e 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java @@ -303,7 +303,7 @@ public class SysRoleServiceImpl implements ISysRoleService SysRoleMenu rm = new SysRoleMenu(); rm.setRoleId(role.getRoleId()); rm.setMenuId(menuId); - rm.setTenantId(role.getTenantId()); + rm.setTenantId(SecurityUtils.getLoginUser().getNowTenantId()); list.add(rm); } if (list.size() > 0) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTenantServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTenantServiceImpl.java index a5eac21..789aa54 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTenantServiceImpl.java @@ -3,6 +3,7 @@ package com.ruoyi.system.service.impl; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.core.domain.RestResponse; @@ -13,11 +14,14 @@ import com.ruoyi.common.page.RespPage; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.system.domain.SysTenant; import com.ruoyi.system.domain.SysUserRole; +import com.ruoyi.system.domain.columns.YjStore; import com.ruoyi.system.domain.vo.ReqBusinessAddTenant; import com.ruoyi.system.domain.vo.ReqSearchSysTenant; import com.ruoyi.system.mapper.SysDeptMapper; +import com.ruoyi.system.mapper.SysRoleMenuMapper; import com.ruoyi.system.mapper.SysTenantMapper; import com.ruoyi.system.mapper.SysUserRoleMapper; +import com.ruoyi.system.mapper.colums.YjStoreMapper; import com.ruoyi.system.service.ISysUserService; import com.ruoyi.system.service.SysTenantService; import org.apache.commons.lang3.StringUtils; @@ -40,7 +44,11 @@ public class SysTenantServiceImpl extends ServiceImpl selectUserTenantList(String userId, String limitTenantUserId) { return baseMapper.selectUserTenantList(userId, limitTenantUserId); @@ -76,6 +84,7 @@ public class SysTenantServiceImpl extends ServiceImpl list = list(qw); @@ -158,7 +168,11 @@ public class SysTenantServiceImpl extends ServiceImpl() + .set("delete_flag","1") + .in("tenant_id",joinedString)); +// this.removeByIds(Arrays.asList(tenantIds)); if (deleteTenant) { return RestResponse.success(); } else { diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java index 68ec149..ecd2713 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java @@ -1,5 +1,8 @@ package com.ruoyi.system.service.impl; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.ruoyi.common.annotation.DataScope; import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.core.domain.entity.SysRole; @@ -8,12 +11,14 @@ import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.spring.SpringUtils; +import com.ruoyi.system.domain.AppUser; import com.ruoyi.system.domain.SysPost; import com.ruoyi.system.domain.SysUserPost; import com.ruoyi.system.domain.SysUserRole; import com.ruoyi.system.mapper.*; import com.ruoyi.system.service.ISysConfigService; import com.ruoyi.system.service.ISysUserService; +import com.ruoyi.system.service.YjAppUserService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -51,6 +56,9 @@ public class SysUserServiceImpl implements ISysUserService @Autowired private ISysConfigService configService; + @Autowired + private YjAppUserService appUserService; + /** * 根据条件分页查询用户列表 * @@ -68,32 +76,6 @@ public class SysUserServiceImpl implements ISysUserService return userMapper.selectUserList(user); } - /** - * 根据条件分页查询已分配用户角色列表 - * - * @param user 用户信息 - * @return 用户信息集合信息 - */ - @Override - @DataScope(deptAlias = "d", userAlias = "u") - public List selectAllocatedList(SysUser user) - { - return userMapper.selectAllocatedList(user); - } - - /** - * 根据条件分页查询未分配用户角色列表 - * - * @param user 用户信息 - * @return 用户信息集合信息 - */ - @Override - @DataScope(deptAlias = "d", userAlias = "u") - public List selectUnallocatedList(SysUser user) - { - return userMapper.selectUnallocatedList(user); - } - /** * 通过用户名查询用户 * @@ -265,9 +247,43 @@ public class SysUserServiceImpl implements ISysUserService insertUserPost(user); // 新增用户与角色管理 insertUserRole(user); + //新增app用户 + insertAppUser(user); return rows; } + //关联app账号 + public void insertAppUser(SysUser user){ + AppUser appUser=appUserService.getOne(new QueryWrapper().eq("phone_number",user.getPhonenumber())); + + if (ObjectUtil.isEmpty(appUser)){ + appUser=new AppUser(); + appUser.setNickName(user.getNickName()); + appUser.setPhoneNumber(user.getPhonenumber()); + appUser.setPassword(SecurityUtils.encryptPassword(user.getPassword())); + appUser.setStatus(1); + appUser.setManageAccountId(user.getStatus().equals("0")?user.getUserId():null); + appUserService.save(appUser); + }else { + if (user.getStatus().equals("0")) + appUserService.update(new UpdateWrapper().eq("phone_number",user.getPhonenumber()).set("manage_account_id",user.getUserId())); + } + } + + //修改关联app账号 + public void removeAppUserManager(Long sysUserId){ + AppUser appUser=appUserService.getOne(new QueryWrapper().eq("manage_account_id",sysUserId)); + if (ObjectUtil.isNotEmpty(appUser)){ + appUser.setManageAccountId(null); + appUserService.updateById(appUser); + } + } + //修改关联app账号 + public void addAppUserManager(Long sysUserId){ + SysUser sysUser=selectUserById(sysUserId); + appUserService.update(new UpdateWrapper().eq("phone_number",sysUser.getPhonenumber()).set("manage_account_id",sysUser.getUserId())); + } + /** * 注册用户信息 * @@ -299,6 +315,10 @@ public class SysUserServiceImpl implements ISysUserService userPostMapper.deleteUserPostByUserId(userId); // 新增用户与岗位管理 insertUserPost(user); + //如果账号停用【帐号状态(0正常 1停用)】取消与app登录用户的关联 + if (user.getStatus().equals("1")){ + removeAppUserManager(userId); + } return userMapper.updateUser(user); } @@ -318,13 +338,20 @@ public class SysUserServiceImpl implements ISysUserService /** * 修改用户状态 - * + * 帐号状态(0正常 1停用) * @param user 用户信息 * @return 结果 */ @Override public int updateUserStatus(SysUser user) { + //修改关联app账号 + if (user.getStatus().equals("1")){ + removeAppUserManager(user.getUserId()); + }else { + addAppUserManager(user.getUserId()); + } + return userMapper.updateUser(user); } @@ -340,18 +367,6 @@ public class SysUserServiceImpl implements ISysUserService return userMapper.updateUser(user); } - /** - * 修改用户头像 - * - * @param userName 用户名 - * @param avatar 头像地址 - * @return 结果 - */ - @Override - public boolean updateUserAvatar(String userName, String avatar) - { - return userMapper.updateUserAvatar(userName, avatar) > 0; - } /** * 重置用户密码 @@ -390,17 +405,25 @@ public class SysUserServiceImpl implements ISysUserService { // 新增用户与角色管理 List list = new ArrayList(); + Boolean hasTeacherRole=false; for (Long roleId : roles) { SysUserRole ur = new SysUserRole(); ur.setUserId(user.getUserId()); ur.setRoleId(roleId); list.add(ur); + if (roleId.equals(new Long(104))){ + hasTeacherRole=true; + } } if (list.size() > 0) { userRoleMapper.batchUserRole(list); } + SysUser teacgerUser=new SysUser(); + teacgerUser.setUserId(user.getUserId()); + teacgerUser.setTeacher(hasTeacherRole?1:0); + userMapper.updateUser(teacgerUser); } } @@ -442,6 +465,7 @@ public class SysUserServiceImpl implements ISysUserService { // 新增用户与角色管理 List list = new ArrayList(); + Boolean hasTeacherRole=false; for (Long roleId : roleIds) { @@ -449,30 +473,22 @@ public class SysUserServiceImpl implements ISysUserService ur.setUserId(userId); ur.setRoleId(roleId); list.add(ur); + if (roleId.equals(new Long(104))){ + hasTeacherRole=true; + } } if (list.size() > 0) { userRoleMapper.batchUserRole(list); } + SysUser user=new SysUser(); + user.setUserId(userId); + user.setTeacher(hasTeacherRole?1:0); + userMapper.updateUser(user); } } - /** - * 通过用户ID删除用户 - * - * @param userId 用户ID - * @return 结果 - */ - @Override - @Transactional - public int deleteUserById(Long userId) - { - // 删除用户与角色关联 - userRoleMapper.deleteUserRoleByUserId(userId); - // 删除用户与岗位表 - userPostMapper.deleteUserPostByUserId(userId); - return userMapper.deleteUserById(userId); - } + /** * 批量删除用户信息 @@ -484,14 +500,17 @@ public class SysUserServiceImpl implements ISysUserService @Transactional public int deleteUserByIds(Long[] userIds) { + //取消与app登录用户的关联 for (Long userId : userIds) { checkUserAllowed(new SysUser(userId)); + removeAppUserManager(userId); } // 删除用户与角色关联 userRoleMapper.deleteUserRole(userIds); // 删除用户与岗位关联 userPostMapper.deleteUserPost(userIds); + return userMapper.deleteUserByIds(userIds); } @@ -562,11 +581,5 @@ public class SysUserServiceImpl implements ISysUserService return successMsg.toString(); } - @Override - public SysUser selectUserByPhoneOrUserName(String phone) { - return userMapper.selectUserByPhone(phone); - } - - } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/YjAppUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/YjAppUserServiceImpl.java new file mode 100644 index 0000000..9b8686e --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/YjAppUserServiceImpl.java @@ -0,0 +1,29 @@ +package com.ruoyi.system.service.impl; + + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.system.domain.AppUser; +import com.ruoyi.system.mapper.YjAppUserMapper; +import com.ruoyi.system.service.YjAppUserService; +import org.springframework.stereotype.Service; + +/** + *

+ * + *

+ * + * @author xn + * @since 2022-10-14 + */ +@Service +public class YjAppUserServiceImpl extends ServiceImpl implements YjAppUserService { + + + @Override + public AppUser selectAppUserByPhone(String phoneNumber) + { + return this.getOne(new QueryWrapper().eq("phone_number",phoneNumber)); + } + +} diff --git a/ruoyi-system/src/main/resources/mapper/colums/SysTeacherMapper.xml b/ruoyi-system/src/main/resources/mapper/colums/SysTeacherMapper.xml index 53424e3..c5ce28a 100644 --- a/ruoyi-system/src/main/resources/mapper/colums/SysTeacherMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/colums/SysTeacherMapper.xml @@ -3,7 +3,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + @@ -18,37 +18,42 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + - select sys_teacher.user_id, teacher_name, avatar_img, intro, context, url, -introduce, releases, sort, sys_teacher.create_by, sys_teacher.create_time, sys_teacher.update_by, sys_teacher.update_time from sys_teacher join sys_user on - sys_teacher.user_id =sys_user.user_id + select sys_teacher.user_id, teacher_name, avatar_img, intro, context, url,introduce, releases, sort, sys_teacher.create_by, sys_teacher.create_time, sys_teacher.update_by, sys_teacher.update_time + ,sys_user.nick_name + from sys_teacher + join sys_user on sys_teacher.user_id =sys_user.user_id - + + + - + insert into sys_teacher @@ -114,9 +119,9 @@ introduce}, - delete from sys_teacher where user_id in + delete from sys_teacher where user_id in #{userId} - \ No newline at end of file + diff --git a/ruoyi-system/src/main/resources/mapper/colums/YjStoreMapper.xml b/ruoyi-system/src/main/resources/mapper/colums/YjStoreMapper.xml index 3709fba..098d579 100644 --- a/ruoyi-system/src/main/resources/mapper/colums/YjStoreMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/colums/YjStoreMapper.xml @@ -3,7 +3,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + @@ -12,7 +12,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + @@ -24,6 +24,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" yj_store.founder, yj_store.profile, yj_store.dept_id, + yj_store.display, sys_dept.dept_name from yj_store left join sys_dept on yj_store.dept_id = sys_dept.dept_id @@ -56,6 +57,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" founder, profile, dept_id, + display, #{banner}, @@ -65,6 +67,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{founder}, #{profile}, #{deptId}, + #{display}, @@ -77,6 +80,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" yj_store.phone = #{phone}, yj_store.founder = #{founder}, yj_store.profile = #{profile}, + yj_store.display = #{display}, where yj_store.dept_id = #{deptId} @@ -91,4 +95,4 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{deptId} - \ No newline at end of file + diff --git a/ruoyi-system/src/main/resources/mapper/mall/ExpressMapper.xml b/ruoyi-system/src/main/resources/mapper/mall/ExpressMapper.xml deleted file mode 100644 index fc7a276..0000000 --- a/ruoyi-system/src/main/resources/mapper/mall/ExpressMapper.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/ruoyi-system/src/main/resources/mapper/mall/YjAppUserMapper.xml b/ruoyi-system/src/main/resources/mapper/mall/YjAppUserMapper.xml deleted file mode 100644 index 21bede6..0000000 --- a/ruoyi-system/src/main/resources/mapper/mall/YjAppUserMapper.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - diff --git a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml index 96d1b20..ba31dd2 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml @@ -51,7 +51,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND tenant_id = #{tenantId} - ${params.dataScope} +-- ${params.dataScope} order by d.parent_id, d.order_num @@ -134,8 +134,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" dept_name = #{deptName}, ancestors = #{ancestors}, order_num = #{orderNum}, - leader = #{leader}, - leader_id = #{leaderId}, + leader = #{leader},leader_id = #{leaderId}, + + phone = #{phone}, email = #{email}, tenant_id =#{tenantId}, diff --git a/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml index 30aaf0d..9cc91b0 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml @@ -62,7 +62,7 @@ left join sys_role ro on ur.role_id = ro.role_id where ur.user_id = #{userId} and m.visible='0' - AND rm.tenantId = #{tenantId} + AND rm.tenant_id = #{tenantId} order by m.parent_id, m.order_num @@ -72,7 +72,7 @@ left join sys_role_menu rm on m.menu_id = rm.menu_id left join sys_user_role ur on rm.role_id = ur.role_id left join sys_role ro on ur.role_id = ro.role_id - left join sys_user u on ur.user_id = u.user_id + left join sys_user u on ur.user_id = u.user_id and u.tenant_id=rm.tenant_id where u.user_id = #{userId} and m.menu_type in ('M', 'C') and m.status = 0 AND ro.status = 0 order by m.parent_id, m.order_num @@ -81,7 +81,7 @@ select m.menu_id from sys_menu m left join sys_role_menu rm on m.menu_id = rm.menu_id - where rm.role_id = #{roleId} + where rm.role_id = #{roleId} and rm.tenant_id=#{tenantId} and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_role_menu rm on m.menu_id = rm.menu_id and rm.role_id = #{roleId}) @@ -95,7 +95,7 @@ left join sys_user_role ur on rm.role_id = ur.role_id - select distinct m.perms from sys_menu m left join sys_role_menu rm on m.menu_id = rm.menu_id diff --git a/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml index bb82759..14c1778 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml @@ -32,7 +32,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" diff --git a/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml index cb60a85..e1d1efe 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml @@ -7,8 +7,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + - + @@ -16,19 +17,26 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" delete from sys_role_menu where role_id=#{roleId} - + delete from sys_role_menu where role_id in #{roleId} - + - + - insert into sys_role_menu(role_id, menu_id) values + insert into sys_role_menu(role_id, menu_id,tenant_id) values - (#{item.roleId},#{item.menuId}) + (#{item.roleId},#{item.menuId},#{item.tenantId}) - - \ No newline at end of file + + + insert into sys_role_menu + select role_id,menu_id,#{tenantId} as tenant_id + from sys_role_menu WHERE role_id=100 and tenant_id=1 + + + + diff --git a/ruoyi-system/src/main/resources/mapper/system/SysTenantMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysTenantMapper.xml index 1f32caf..e10a3b7 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysTenantMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysTenantMapper.xml @@ -17,7 +17,7 @@ where t.tenant_id=ut.tenant_id and ut.user_id=#{userId} and ut.tenant_id=#{tenantId} and now() between t.begin_time and t.end_time - and t.in_use='1' + and t.in_use='0' and t.delete_flag='0' - select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.delete_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader + select u.user_id,u.teacher, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.delete_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader from sys_user u left join sys_dept d on u.dept_id = d.dept_id where u.delete_flag = '0' @@ -89,7 +90,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND u.teacher = #{teacher} - ${params.dataScope} +-- ${params.dataScope}