xuhy
2024-12-25 2dfdc0eb73be177e98f9882def2b0cfcb27bd858
用户端
356个文件已添加
32522 ■■■■■ 已修改文件
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/AuthIntercepter.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/AuthService.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/AuthenticationKit.java 233 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/Configuration.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/HMACSHA1.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/HashKit.java 109 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/UrlEncoderUtils.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/BlackboardController.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/DeptController.java 164 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/DictController.java 142 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/KaptchaController.java 114 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/LogController.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/LoginController.java 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/LoginLogController.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/MenuController.java 244 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/NoticeController.java 138 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/RoleController.java 230 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/UserMgrController.java 373 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/AdvertisementMapper.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/AgreementMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/CancleOrderMapper.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/CarMapper.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/CarServiceMapper.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/CompanyCityMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/CompanyMapper.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/ComplaintMapper.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DeptMapper.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DictMapper.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverActivityHistoryMapper.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverActivityRegisteredMapper.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverMapper.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverOrdersMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverServiceMapper.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverWorkMapper.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/ExpenseMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/FeedbackMapper.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/GDInterfaceMapper.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/IncomeMapper.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/IntegralGoodsMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/IntegralOrderMapper.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/InvoiceMapper.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/LoginLogMapper.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/MenuMapper.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/NoticeMapper.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OpenCityBusinessMapper.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OpenCityMapper.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OperationLogMapper.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OrderCancelMapper.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OrderEvaluateMapper.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OrderPositionMapper.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/PhoneMapper.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/ProblemMapper.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/PushOrderMapper.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/RedPacketRecordMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/RegionMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/RelationMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/RoleMapper.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SensitiveWordsMapper.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/ServerCarModelMapper.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SmsrecordMapper.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SysIntegralMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SystemNoticeMapper.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SystemPriceMapper.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TNoticesMapper.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserActivityBalanceMapper.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserActivityDiscount1Mapper.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserActivityInviteMapper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserActivityRedenvelopeMapper.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserActivityRegisteredMapper.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserCouponRecordMapper.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserInfoMapper.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserMapper.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserRedPacketRecordMapper.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/VerifiedMapper.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/VersionManagementMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/WithdrawalMapper.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/AdvertisementMapper.xml 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/AgreementMapper.xml 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CancleOrderMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarServiceMapper.xml 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CompanyCityMapper.xml 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CompanyMapper.xml 121 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/ComplaintMapper.xml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DeptMapper.xml 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DictMapper.xml 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverActivityHistoryMapper.xml 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverActivityRegisteredMapper.xml 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml 330 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverOrdersMapper.xml 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverServiceMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverWorkMapper.xml 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/ExpenseMapper.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/FeedbackMapper.xml 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/GDInterfaceMapper.xml 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/IncomeMapper.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/IntegralGoodsMapper.xml 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/IntegralOrderMapper.xml 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/InvoiceMapper.xml 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/LoginLogMapper.xml 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/MenuMapper.xml 177 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/NoticeMapper.xml 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OpenCityBusinessMapper.xml 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OpenCityMapper.xml 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OperationLogMapper.xml 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OrderCancelMapper.xml 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OrderEvaluateMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OrderPositionMapper.xml 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/PhoneMapper.xml 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/ProblemMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/PushOrderMapper.xml 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/RedPacketRecordMapper.xml 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/RegionMapper.xml 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/RelationMapper.xml 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/RoleMapper.xml 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SensitiveWordsMapper.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/ServerCarModelMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SmsrecordMapper.xml 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SysIntegralMapper.xml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SystemNoticeMapper.xml 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SystemPriceMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TNoticesMapper.xml 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserActivityBalanceMapper.xml 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserActivityDiscount1Mapper.xml 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserActivityInviteMapper.xml 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserActivityRedenvelopeMapper.xml 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserActivityRegisteredMapper.xml 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserCouponRecordMapper.xml 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserInfoMapper.xml 192 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserMapper.xml 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserRedPacketRecordMapper.xml 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/VerifiedMapper.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/VersionManagementMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/WithdrawalMapper.xml 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/factory/UserFactory.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Advertisement.java 127 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Agreement.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/BaseBean.java 107 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/CancleOrder.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Car.java 272 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/CarService.java 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Company.java 694 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/CompanyCity.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Complaint.java 153 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Dept.java 140 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Dict.java 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Driver.java 896 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverActivityHistory.java 145 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverActivityRegistered.java 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverOrders.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverService.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverWork.java 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Expense.java 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Feedback.java 176 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/GDInterface.java 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Income.java 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/IntegralGoods.java 148 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/IntegralOrder.java 175 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Invoice.java 218 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/LoginLog.java 128 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Menu.java 208 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Notice.java 115 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OpenCity.java 115 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OpenCityBusiness.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OperationLog.java 154 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OrderCancel.java 178 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OrderEvaluate.java 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OrderPosition.java 148 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Phone.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Problem.java 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/PushOrder.java 118 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/RedPacketRecord.java 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Region.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Relation.java 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Role.java 127 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SensitiveWords.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/ServerCarModel.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Smsrecord.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SysIntegral.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SystemNotice.java 147 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SystemPrice.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TNotices.java 235 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/User.java 232 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserActivityBalance.java 260 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserActivityDiscount1.java 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserActivityInvite.java 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserActivityRedenvelope.java 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserActivityRegistered.java 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserCouponRecord.java 234 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserInfo.java 361 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserRedPacketRecord.java 176 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Verified.java 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/VersionManagement.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Withdrawal.java 220 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IAdvertisementService.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IAgreementService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ICancleOrderService.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ICompanyCityService.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ICompanyService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IComplaintService.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IDeptService.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IDictService.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IDriverOrdersService.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IDriverService.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IDriverServiceService.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IFeedbackService.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IGDInterfaceService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IIncomeService.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IIntegralGoodsService.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IIntegralOrderService.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IInvoiceService.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ILoginLogService.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IMenuService.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/INettyService.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/INoticeService.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOpenCityBusinessService.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOpenCityService.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOperationLogService.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOrderCancelService.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOrderEvaluateService.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOrderPositionService.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOrderService.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IPhoneService.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IProblemService.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IPushOrderService.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IRedPacketRecordService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IRelationService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IRoleService.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IServerCarModelService.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ISmsrecordService.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ISystemNoticeService.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITNoticesService.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserActivityBalanceService.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserActivityRedenvelopeService.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserActivityRegisteredService.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserCouponRecordService.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserInfoService.java 227 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserRedPacketRecordService.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserService.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IVerifiedService.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IVersionManagementService.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IWithdrawalService.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/AdvertisementServiceImpl.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/AgreementServiceImpl.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CancleOrderServiceImpl.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CompanyCityServiceImpl.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CompanyServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ComplaintServiceImpl.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DeptServiceImpl.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DictServiceImpl.java 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverOrdersServiceImpl.java 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceServiceImpl.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/FeedbackServiceImpl.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/GDInterfaceServiceImpl.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/IncomeServiceImpl.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/IntegralGoodsServiceImpl.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/IntegralOrderServiceImpl.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/InvoiceServiceImpl.java 109 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/LoginLogServiceImpl.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/MenuServiceImpl.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/NettyServiceImpl.java 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/NoticeServiceImpl.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityBusinessServiceImpl.java 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityServiceImpl.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OperationLogServiceImpl.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderCancelServiceImpl.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderEvaluateServiceImpl.java 117 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderPositionServiceImpl.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/PhoneServiceImpl.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ProblemServiceImpl.java 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/PushOrderServiceImpl.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/RedPacketRecordServiceImpl.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/RelationServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/RoleServiceImpl.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ServerCarModelServiceImpl.java 248 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/SmsrecordServiceImpl.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/SystemNoticeServiceImpl.java 115 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TNoticesServiceImpl.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserActivityBalanceServiceImpl.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserActivityRedenvelopeServiceImpl.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserActivityRegisteredServiceImpl.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserCouponRecordServiceImpl.java 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java 1211 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserRedPacketRecordServiceImpl.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserServiceImpl.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/VerifiedServiceImpl.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/VersionManagementServiceImpl.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/WithdrawalServiceImpl.java 161 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/transfer/ManagerUser.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/transfer/ReqAddManager.java 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/transfer/ReqEditManager.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/transfer/UserDto.java 153 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ALiApiUtil.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ALiSendSms.java 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ApplicationRunnerUtil.java 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ChinaMobileUtil.java 128 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/DateUtil.java 133 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDFalconUtil.java 224 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java 405 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapGeocodingUtil.java 135 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GeodesyUtil.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/HttpClientUtil.java 266 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/HttpTool.java 137 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ICBCPayUtil.java 673 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/JuHeUtil.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/MD5AndKL.java 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/MD5Util.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/MinistryOfTransport.java 1063 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/MsgUtil.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/OssUploadUtil.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PayMoneyUtil.java 809 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushMinistryOfTransportUtil.java 438 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java 405 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/RedisUtil.java 128 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ResultUtil.java 197 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SendRequestDto.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SignUtil.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SignVerificationUtil.java 107 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SystemException.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/UUIDUtil.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/UploadUtil.java 148 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/WeChatUtil.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/AdvertisementWarpper.java 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/BaseWarpper.java 146 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/CouponWarpper.java 124 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/DeptWarpper.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/DictWarpper.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/DriverInfoWarpper.java 168 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/EndPushWarpper.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/IntegralGoodsWarpper.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/IntegralOrderWarpper.java 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/InvoiceWarpper.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/LogWarpper.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/LoginWarpper.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/MenuWarpper.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/NoticeWrapper.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderDriverWarpper.java 181 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderEvaluateWarpper.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderInfoWarpper.java 716 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderServerWarpper.java 128 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderStatusWarpper.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderWarpper.java 267 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/ProblemWarpper.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/RoleWarpper.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/ServerCarModelWarpper.java 121 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/SystemNoticeWarpper.java 124 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/TNoticeWarpper.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/TravelRecordWarpper.java 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/UserInfoWarpper.java 183 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/UserWarpper.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/VerifiedWarpper.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/VersionWarpper.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/WithdrawalWarpper.java 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/AuthIntercepter.java
New file
@@ -0,0 +1,37 @@
package com.stylefeng.guns.modular.system.auth;
import com.alibaba.fastjson.JSON;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@Component
public class AuthIntercepter implements HandlerInterceptor {
    private final static Logger log = LoggerFactory.getLogger(AuthIntercepter.class);
    @Autowired
    AuthService authService;
    @Override
    public boolean preHandle(HttpServletRequest req, HttpServletResponse res, Object handler) throws IOException {
        String appid = req.getParameter("appid");
        String sign = req.getParameter("sign");
        ResultUtil resultUtil = authService.checkSyncAuth(appid, sign, req);
        if (resultUtil.getCode() != 200) {
            res.setStatus(HttpStatus.OK.value());
            res.setHeader("Content-type", "text/html;charset=UTF-8");
            res.getWriter().print(JSON.toJSONString(resultUtil));//Res.Failure("req timeout, please try again")
            return false;
        }
        return true;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/AuthService.java
New file
@@ -0,0 +1,51 @@
package com.stylefeng.guns.modular.system.auth;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import org.springframework.web.util.HtmlUtils;
import javax.servlet.http.HttpServletRequest;
@Service
public class AuthService {
    private final static Logger log = LoggerFactory.getLogger(AuthService.class);
    public static final AuthService me = new AuthService();
    /**
     * 鉴权
     * @param appid
     * @param sign
     * @param requset
     * @return
     */
    public ResultUtil checkSyncAuth(String appid, String sign, HttpServletRequest requset) {
        try {
            if (StringUtils.isBlank(sign)) {
                return ResultUtil.sign();
            }
            // 1.鉴权
            String signUrl = AuthenticationKit.getSignUrl(requset, "sign");
            signUrl = signUrl.replaceAll("& #40;", "\\(");
            signUrl = signUrl.replaceAll("& #41;", "\\)");
            String signUrlEncode = AuthenticationKit.signUrlEncode(signUrl, appid);
            if(sign.indexOf(" ") != -1 && signUrlEncode.indexOf("+") != -1){//处理前后端加密差异
                signUrlEncode = signUrlEncode.replaceAll("\\+", " ");
            }
            // 签名无
            if (StringUtils.isBlank(sign) || !sign.equals(signUrlEncode)) {
                return ResultUtil.sign();
            }
        } catch (Exception e) {
            e.printStackTrace();
            return ResultUtil.runErr();
        }
        return ResultUtil.success();
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/AuthenticationKit.java
New file
@@ -0,0 +1,233 @@
package com.stylefeng.guns.modular.system.auth;
import org.apache.commons.lang.StringUtils;
import org.apache.tomcat.util.codec.binary.Base64;
import javax.servlet.http.HttpServletRequest;
import java.util.*;
/**
 *
 * 接口鉴权工具类
 *
 * @author gwx 2017-12-23
 *
 */
public class AuthenticationKit {
    public static final String utf8="UTF-8";
    /**
     * 返回64 位 token
     *
     * @param key 自定义安全字符
     * @return
     * @throws Exception
     */
    public static String getToken(String key) throws Exception {
        // 随机生成 32位字符
        String salt = HashKit.generateSaltForSha256();
        // 获取当前时间
        long cur = System.currentTimeMillis();
        // 生成64位token
        String access_token = getToken256(key, salt, cur);
        return access_token;
    }
    /**
     * 返回64 位 token
     *
     * @param key
     * @return
     * @throws Exception
     */
    public static String getToken256(String key, String salt, long cur) throws Exception {
        // 生成64位token
        String access_token = HashKit.sha256(salt + cur + key);
        return access_token;
    }
    /**
     * 返回到秒
     *
     * @return
     */
    public static String createTimestamp() {
        long l = System.currentTimeMillis();
        return Long.toString(l / 1000);
    }
    /**
     * 返回noce 不带 短杠"-"
     *
     * @return
     */
    public static String createNonceStr() {
        return getUUID();
    }
    public static String getUUID() {
        UUID uuid = UUID.randomUUID();
        String str = uuid.toString();
        str = str.replaceAll("-", "");
        return str;
    }
    /**
     * 组装路径
     *
     * @param params
     * @return
     */
    public static String localSignParam(Map<String, String> params) {
        return localSignUrl(null, params, false);
    }
    /**
     * 组装签名路径
     * @param url
     * @param params
     * @return
     */
    public static String localSignUrl(String url, Map<String, String> params, boolean urlEncode) {
        StringBuilder strBuilder = new StringBuilder();
//        if(StringUtils.isNotBlank(url) && url.lastIndexOf("?")==-1){
//            strBuilder.append(url).append("?");
//        }
        Set es = params.entrySet();//所有参与传参的参数按照accsii排序(升序)
        Iterator it = es.iterator();
        while(it.hasNext()) {
            Map.Entry entry = (Map.Entry)it.next();
            String k = (String)entry.getKey();
            Object v = entry.getValue();
            if(null != v && !"".equals(v)) {
                strBuilder.append(k + "=" + v + "&");
            }
        }
        return strBuilder.substring(0, strBuilder.length() - 1);
//        for (String key : params.keySet()) {
//            if (params.get(key) != null) {
//                String lowerKey = key.toLowerCase();
//                String encodeKey = lowerKey;
//                String encodedValue = params.get(key);
//                if (urlEncode){
//                    encodeKey = UrlEncoderUtils.encode(lowerKey);
//                    encodedValue = UrlEncoderUtils.encode(encodedValue);
//                }
//                if (!seeOne) {
//                    seeOne = true;
//                } else {
//                    strBuilder.append("&");
//                }
//                strBuilder.append(encodeKey).append("=").append(encodedValue);
//            }
//        }
//        return strBuilder.toString();
    }
    /**
     * 加密签名路径生成签名
     *
     * @param signUrl
     *            /token?appid=12345&timestamp=1512440267&nonce=12345
     * @param encryptKey
     * @return
     * @throws Exception
     */
    public static String signUrlEncode(String signUrl, String encryptKey) throws Exception {
        byte[] signByte = HMACSHA1.HmacSHA1Encrypt(signUrl, encryptKey);
        String localSign = Base64.encodeBase64String(signByte);
        return localSign;
    }
    /**
     * 返回鉴权 签名路径
     *
     * @param req
     * @return
     */
    public static String getSignUrl(HttpServletRequest req) {
        return getSignUrl(req,"");
    }
    /**
     * 服务端 获取 客户端请求 组装验证签名
     * @param req
     * @param delParams 移除不相关 的签名参数
     * @return
     */
    public static String getSignUrl(HttpServletRequest req, String... delParams) {
        // 获取相对的访问路径
        String url = req.getServletPath();
        Map<String, String> paramMap = packageRequestGetParams(req);
        if (paramMap.size() > 0) {
            // 删除
            for (int i = 0, len = delParams.length; i < len; i++) {
                paramMap.remove(delParams[i]);
            }
            return localSignUrl(url, paramMap, false);
        }
        return null;
    }
    /**
     * 组装签名路径 客户端测试用
     * @param url api访问地址 "/apid"
     * @param appid
     * @return
     */
    public static String getSignUrl(String url, String appid, Map<String, String> queryParas) {
        Map<String, String> params = new TreeMap<String, String>();
        params.put("appid", appid);
        params.put("nonce", createNonceStr());
        params.put("timestamp", createTimestamp());
        if(queryParas!=null && queryParas.size()>0){
            params.putAll(queryParas);
        }
        return localSignUrl(url, params, false);
    }
    /**
     * 组装签名路径 客户端测试用
     * @param url api访问地址 "/apid"
     * @param appid
     * @return
     */
    public static String getSignUrl(String url, String appid) {
        return getSignUrl(url, appid, "");
    }
    /**
     *
     * @param url
     * @param appid
     * @param params
     * @return
     */
    public static String getSignUrl(String url, String appid, String params) {
        String urlTmp = getSignUrl(url, appid, new HashMap<String,String>());
        return urlTmp + UrlEncoderUtils.encode(params);
    }
    /**
     * 解析get参数返回treemap
     * @param req
     * @return
     */
    public static Map<String, String> packageRequestGetParams(
            HttpServletRequest req) {
        Map<String, String> paramMap = new TreeMap<String, String>();
        Enumeration pNames = req.getParameterNames();
        while (pNames.hasMoreElements()) {
            String key = (String) pNames.nextElement();
            String value = req.getParameter(key);
            paramMap.put(key, value);
        }
        return paramMap;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/Configuration.java
New file
@@ -0,0 +1,26 @@
package com.stylefeng.guns.modular.system.auth;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Component
public class Configuration implements WebMvcConfigurer {
    @Autowired
    private AuthIntercepter authIntercepter;
    /**
     * 重写添加拦截器方法并添加配置拦截器
     *
     * @param registry
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
//        registry.addInterceptor(authIntercepter).addPathPatterns("/api/**")
//                .excludePathPatterns("/base/**");
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/HMACSHA1.java
New file
@@ -0,0 +1,63 @@
package com.stylefeng.guns.modular.system.auth;
import org.apache.tomcat.util.codec.binary.Base64;
import javax.crypto.Mac;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
public class HMACSHA1 {
    private static final String MAC_NAME = "HmacSHA1";
    private static final String ENCODING = "UTF-8";
    /*
     * 展示了一个生成指定算法密钥的过程 初始化HMAC密钥
     *
     * @return
     *
     * @throws Exception
     *
     * public static String initMacKey() throws Exception { //得到一个 指定算法密钥的密钥生成器
     * KeyGenerator KeyGenerator keyGenerator
     * =KeyGenerator.getInstance(MAC_NAME); //生成一个密钥 SecretKey secretKey
     * =keyGenerator.generateKey(); return null; }
     */
    /**
     * 使用 HMAC-SHA1 签名方法对对encryptText进行签名
     *
     * @param encryptText
     *            被签名的字符串
     * @param encryptKey
     *            密钥
     * @return
     * @throws Exception
     */
    public static byte[] HmacSHA1Encrypt(String encryptText, String encryptKey) throws Exception {
        byte[] data = encryptKey.getBytes(ENCODING);
        // 根据给定的字节数组构造一个密钥,第二参数指定一个密钥算法的名称
        Mac mac = Mac.getInstance(MAC_NAME);
        SecretKey secretKey = new SecretKeySpec(data, MAC_NAME);
        // 生成一个指定 Mac 算法 的 Mac 对象
        // 用给定密钥初始化 Mac 对象
        mac.init(secretKey);
        byte[] text = encryptText.getBytes(ENCODING);
        // 完成 Mac 操作
        return mac.doFinal(text);
    }
    public static void main(String[] args) {
        String encryptText = "123";
        String encryptKey = "adc";
        try {
            byte[] b = HmacSHA1Encrypt(encryptText, encryptKey);
            String str = HashKit.toHex(b);
            String str2 = new String(Base64.encodeBase64(b));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/HashKit.java
New file
@@ -0,0 +1,109 @@
package com.stylefeng.guns.modular.system.auth;
/**
 * Copyright (c) 2011-2017, James Zhan 詹波 (jfinal@126.com).
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import java.security.MessageDigest;
public class HashKit {
    public static final long FNV_OFFSET_BASIS_64 = 0xcbf29ce484222325L;
    public static final long FNV_PRIME_64 = 0x100000001b3L;
    private static final java.security.SecureRandom random = new java.security.SecureRandom();
    private static final char[] HEX_DIGITS = "0123456789abcdef".toCharArray();
    private static final char[] CHAR_ARRAY = "_-0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
            .toCharArray();
    public static long fnv1a64(String key) {
        long hash = FNV_OFFSET_BASIS_64;
        for (int i = 0, size = key.length(); i < size; i++) {
            hash ^= key.charAt(i);
            hash *= FNV_PRIME_64;
        }
        return hash;
    }
    public static String md5(String srcStr) {
        return hash("MD5", srcStr);
    }
    public static String sha1(String srcStr) {
        return hash("SHA-1", srcStr);
    }
    public static String sha256(String srcStr) {
        return hash("SHA-256", srcStr);
    }
    public static String sha384(String srcStr) {
        return hash("SHA-384", srcStr);
    }
    public static String sha512(String srcStr) {
        return hash("SHA-512", srcStr);
    }
    public static String hash(String algorithm, String srcStr) {
        try {
            MessageDigest md = MessageDigest.getInstance(algorithm);
            byte[] bytes = md.digest(srcStr.getBytes("utf-8"));
            return toHex(bytes);
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
    public static String toHex(byte[] bytes) {
        StringBuilder ret = new StringBuilder(bytes.length * 2);
        for (int i = 0; i < bytes.length; i++) {
            ret.append(HEX_DIGITS[(bytes[i] >> 4) & 0x0f]);
            ret.append(HEX_DIGITS[bytes[i] & 0x0f]);
        }
        return ret.toString();
    }
    /**
     * md5 128bit 16bytes sha1 160bit 20bytes sha256 256bit 32bytes sha384
     * 384bit 48bytes sha512 512bit 64bytes
     */
    public static String generateSalt(int saltLength) {
        StringBuilder salt = new StringBuilder(saltLength);
        for (int i = 0; i < saltLength; i++) {
            salt.append(CHAR_ARRAY[random.nextInt(CHAR_ARRAY.length)]);
        }
        return salt.toString();
    }
    public static String generateSaltForSha256() {
        return generateSalt(32);
    }
    public static String generateSaltForSha512() {
        return generateSalt(64);
    }
    public static boolean slowEquals(byte[] a, byte[] b) {
        if (a == null || b == null) {
            return false;
        }
        int diff = a.length ^ b.length;
        for (int i = 0; i < a.length && i < b.length; i++) {
            diff |= a[i] ^ b[i];
        }
        return diff == 0;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/auth/UrlEncoderUtils.java
New file
@@ -0,0 +1,44 @@
package com.stylefeng.guns.modular.system.auth;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
public class UrlEncoderUtils {
    private static final String PATH_DELIMITER = "/";
    private static final Logger log = LoggerFactory.getLogger(UrlEncoderUtils.class);
    public static String encode(String originUrl) {
        try {
            return URLEncoder.encode(originUrl, "UTF-8").replace("+", "%20").replace("*", "%2A")
                    .replace("%7E", "~");
        } catch (UnsupportedEncodingException e) {
            log.error("URLEncoder error, encode utf8, exception: {}", e);
        }
        return null;
    }
    // encode路径, 不包括分隔符
    public static String encodeEscapeDelimiter(String urlPath) {
        StringBuilder pathBuilder = new StringBuilder();
        String[] pathSegmentsArr = urlPath.split(PATH_DELIMITER);
        boolean isFirstSegMent = true;
        for (String pathSegment : pathSegmentsArr) {
            if (isFirstSegMent) {
                pathBuilder.append(encode(pathSegment));
                isFirstSegMent = false;
            } else {
                pathBuilder.append(PATH_DELIMITER).append(encode(pathSegment));
            }
        }
        if (urlPath.endsWith(PATH_DELIMITER)) {
            pathBuilder.append(PATH_DELIMITER);
        }
        return pathBuilder.toString();
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/BlackboardController.java
New file
@@ -0,0 +1,35 @@
package com.stylefeng.guns.modular.system.controller;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.modular.system.service.INoticeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import java.util.List;
import java.util.Map;
/**
 * 总览信息
 *
 * @author fengshuonan
 * @Date 2017年3月4日23:05:54
 */
@Controller
@RequestMapping("/blackboard")
public class BlackboardController extends BaseController {
    @Autowired
    private INoticeService noticeService;
    /**
     * 跳转到黑板
     */
    @RequestMapping("")
    public String blackboard(Model model) {
        List<Map<String, Object>> notices = noticeService.list(null);
        model.addAttribute("noticeList", notices);
        return "/blackboard.html";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/DeptController.java
New file
@@ -0,0 +1,164 @@
package com.stylefeng.guns.modular.system.controller;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.common.annotion.BussinessLog;
import com.stylefeng.guns.core.common.annotion.Permission;
import com.stylefeng.guns.core.common.constant.dictmap.DeptDict;
import com.stylefeng.guns.core.common.constant.factory.ConstantFactory;
import com.stylefeng.guns.core.common.exception.BizExceptionEnum;
import com.stylefeng.guns.core.exception.GunsException;
import com.stylefeng.guns.core.log.LogObjectHolder;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.model.Dept;
import com.stylefeng.guns.modular.system.service.IDeptService;
import com.stylefeng.guns.modular.system.warpper.DeptWarpper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
import java.util.Map;
/**
 * 部门控制器
 *
 * @author fengshuonan
 * @Date 2017年2月17日20:27:22
 */
@Controller
@RequestMapping("/dept")
public class DeptController extends BaseController {
    private String PREFIX = "/system/dept/";
    @Autowired
    private IDeptService deptService;
    /**
     * 跳转到部门管理首页
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "dept.html";
    }
    /**
     * 跳转到添加部门
     */
    @RequestMapping("/dept_add")
    public String deptAdd() {
        return PREFIX + "dept_add.html";
    }
    /**
     * 跳转到修改部门
     */
    @Permission
    @RequestMapping("/dept_update/{deptId}")
    public String deptUpdate(@PathVariable Integer deptId, Model model) {
        Dept dept = deptService.selectById(deptId);
        model.addAttribute(dept);
        model.addAttribute("pName", ConstantFactory.me().getDeptName(dept.getPid()));
        LogObjectHolder.me().set(dept);
        return PREFIX + "dept_edit.html";
    }
    /**
     * 获取部门的tree列表
     */
    @RequestMapping(value = "/tree")
    @ResponseBody
    public List<ZTreeNode> tree() {
        List<ZTreeNode> tree = this.deptService.tree();
        tree.add(ZTreeNode.createParent());
        return tree;
    }
    /**
     * 新增部门
     */
    @BussinessLog(value = "添加部门", key = "simplename", dict = DeptDict.class)
    @RequestMapping(value = "/add")
    @Permission
    @ResponseBody
    public Object add(Dept dept) {
        if (ToolUtil.isOneEmpty(dept, dept.getSimplename())) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        //完善pids,根据pid拿到pid的pids
        deptSetPids(dept);
        return this.deptService.insert(dept);
    }
    /**
     * 获取所有部门列表
     */
    @RequestMapping(value = "/list")
    @Permission
    @ResponseBody
    public Object list(String condition) {
        List<Map<String, Object>> list = this.deptService.list(condition);
        return super.warpObject(new DeptWarpper(list));
    }
    /**
     * 部门详情
     */
    @RequestMapping(value = "/detail/{deptId}")
    @Permission
    @ResponseBody
    public Object detail(@PathVariable("deptId") Integer deptId) {
        return deptService.selectById(deptId);
    }
    /**
     * 修改部门
     */
    @BussinessLog(value = "修改部门", key = "simplename", dict = DeptDict.class)
    @RequestMapping(value = "/update")
    @Permission
    @ResponseBody
    public Object update(Dept dept) {
        if (ToolUtil.isEmpty(dept) || dept.getId() == null) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        deptSetPids(dept);
        deptService.updateById(dept);
        return SUCCESS_TIP;
    }
    /**
     * 删除部门
     */
    @BussinessLog(value = "删除部门", key = "deptId", dict = DeptDict.class)
    @RequestMapping(value = "/delete")
    @Permission
    @ResponseBody
    public Object delete(@RequestParam Integer deptId) {
        //缓存被删除的部门名称
        LogObjectHolder.me().set(ConstantFactory.me().getDeptName(deptId));
        deptService.deleteDept(deptId);
        return SUCCESS_TIP;
    }
    private void deptSetPids(Dept dept) {
        if (ToolUtil.isEmpty(dept.getPid()) || dept.getPid().equals(0)) {
            dept.setPid(0);
            dept.setPids("[0],");
        } else {
            int pid = dept.getPid();
            Dept temp = deptService.selectById(pid);
            String pids = temp.getPids();
            dept.setPid(pid);
            dept.setPids(pids + "[" + pid + "],");
        }
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/DictController.java
New file
@@ -0,0 +1,142 @@
package com.stylefeng.guns.modular.system.controller;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.common.annotion.BussinessLog;
import com.stylefeng.guns.core.common.annotion.Permission;
import com.stylefeng.guns.core.common.constant.Const;
import com.stylefeng.guns.core.common.constant.dictmap.DictMap;
import com.stylefeng.guns.core.common.constant.factory.ConstantFactory;
import com.stylefeng.guns.core.common.exception.BizExceptionEnum;
import com.stylefeng.guns.core.exception.GunsException;
import com.stylefeng.guns.core.log.LogObjectHolder;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.model.Dict;
import com.stylefeng.guns.modular.system.service.IDictService;
import com.stylefeng.guns.modular.system.warpper.DictWarpper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
import java.util.Map;
/**
 * 字典控制器
 *
 * @author fengshuonan
 * @Date 2017年4月26日 12:55:31
 */
@Controller
@RequestMapping("/dict")
public class DictController extends BaseController {
    private String PREFIX = "/system/dict/";
    @Autowired
    private IDictService dictService;
    /**
     * 跳转到字典管理首页
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "dict.html";
    }
    /**
     * 跳转到添加字典
     */
    @RequestMapping("/dict_add")
    public String deptAdd() {
        return PREFIX + "dict_add.html";
    }
    /**
     * 跳转到修改字典
     */
    @Permission(Const.ADMIN_NAME)
    @RequestMapping("/dict_edit/{dictId}")
    public String deptUpdate(@PathVariable Integer dictId, Model model) {
        Dict dict = dictService.selectById(dictId);
        model.addAttribute("dict", dict);
        List<Dict> subDicts = dictService.selectList(new EntityWrapper<Dict>().eq("pid", dictId));
        model.addAttribute("subDicts", subDicts);
        LogObjectHolder.me().set(dict);
        return PREFIX + "dict_edit.html";
    }
    /**
     * 新增字典
     *
     * @param dictValues 格式例如   "1:启用;2:禁用;3:冻结"
     */
    @BussinessLog(value = "添加字典记录", key = "dictName,dictValues", dict = DictMap.class)
    @RequestMapping(value = "/add")
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Object add(String dictCode,String dictTips,String dictName, String dictValues) {
        if (ToolUtil.isOneEmpty(dictCode,dictName, dictValues)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        this.dictService.addDict(dictCode,dictName,dictTips,dictValues);
        return SUCCESS_TIP;
    }
    /**
     * 获取所有字典列表
     */
    @RequestMapping(value = "/list")
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Object list(String condition) {
        List<Map<String, Object>> list = this.dictService.list(condition);
        return super.warpObject(new DictWarpper(list));
    }
    /**
     * 字典详情
     */
    @RequestMapping(value = "/detail/{dictId}")
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Object detail(@PathVariable("dictId") Integer dictId) {
        return dictService.selectById(dictId);
    }
    /**
     * 修改字典
     */
    @BussinessLog(value = "修改字典", key = "dictName,dictValues", dict = DictMap.class)
    @RequestMapping(value = "/update")
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Object update(Integer dictId,String dictCode,String dictName, String dictTips,String dictValues) {
        if (ToolUtil.isOneEmpty(dictId, dictCode, dictName, dictValues)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        dictService.editDict(dictId, dictCode,dictName, dictTips,dictValues);
        return SUCCESS_TIP;
    }
    /**
     * 删除字典记录
     */
    @BussinessLog(value = "删除字典记录", key = "dictId", dict = DictMap.class)
    @RequestMapping(value = "/delete")
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Object delete(@RequestParam Integer dictId) {
        //缓存被删除的名称
        LogObjectHolder.me().set(ConstantFactory.me().getDictName(dictId));
        this.dictService.delteDict(dictId);
        return SUCCESS_TIP;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/KaptchaController.java
New file
@@ -0,0 +1,114 @@
package com.stylefeng.guns.modular.system.controller;
import com.google.code.kaptcha.Constants;
import com.google.code.kaptcha.Producer;
import com.stylefeng.guns.config.properties.GunsProperties;
import com.stylefeng.guns.core.util.FileUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.imageio.ImageIO;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.awt.image.BufferedImage;
import java.io.IOException;
/**
 * 验证码生成
 *
 * @author fengshuonan
 * @date 2017-05-05 23:10
 */
@Controller
@RequestMapping("/kaptcha")
public class KaptchaController {
    @Autowired
    private GunsProperties gunsProperties;
    @Autowired
    private Producer producer;
    /**
     * 生成验证码
     */
    @RequestMapping("")
    public void index(HttpServletRequest request, HttpServletResponse response) {
        HttpSession session = request.getSession();
        response.setDateHeader("Expires", 0);
        // Set standard HTTP/1.1 no-cache headers.
        response.setHeader("Cache-Control", "no-store, no-cache, must-revalidate");
        // Set IE extended HTTP/1.1 no-cache headers (use addHeader).
        response.addHeader("Cache-Control", "post-check=0, pre-check=0");
        // Set standard HTTP/1.0 no-cache header.
        response.setHeader("Pragma", "no-cache");
        // return a jpeg
        response.setContentType("image/jpeg");
        // create the text for the image
        String capText = producer.createText();
        // store the text in the session
        session.setAttribute(Constants.KAPTCHA_SESSION_KEY, capText);
        // create the image with the text
        BufferedImage bi = producer.createImage(capText);
        ServletOutputStream out = null;
        try {
            out = response.getOutputStream();
        } catch (IOException e) {
            e.printStackTrace();
        }
        // write the data out
        try {
            ImageIO.write(bi, "jpg", out);
        } catch (IOException e) {
            e.printStackTrace();
        }
        try {
            try {
                out.flush();
            } catch (IOException e) {
                e.printStackTrace();
            }
        } finally {
            try {
                out.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    /**
     * 返回图片
     *
     * @author stylefeng
     * @Date 2017/5/24 23:00
     */
    @RequestMapping("/{pictureId}")
    public void renderPicture(@PathVariable("pictureId") String pictureId, HttpServletResponse response) {
        String path = gunsProperties.getFileUploadPath() + pictureId;
        try {
            byte[] bytes = FileUtil.toByteArray(path);
            response.getOutputStream().write(bytes);
        } catch (Exception e) {
            //如果找不到图片就返回一个默认图片
            try {
                response.sendRedirect("/static/img/girl.gif");
            } catch (IOException e1) {
                e1.printStackTrace();
            }
        }
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/LogController.java
New file
@@ -0,0 +1,84 @@
package com.stylefeng.guns.modular.system.controller;
import com.baomidou.mybatisplus.mapper.SqlRunner;
import com.baomidou.mybatisplus.plugins.Page;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.common.annotion.BussinessLog;
import com.stylefeng.guns.core.common.annotion.Permission;
import com.stylefeng.guns.core.common.constant.Const;
import com.stylefeng.guns.core.common.constant.factory.PageFactory;
import com.stylefeng.guns.core.common.constant.state.BizLogType;
import com.stylefeng.guns.core.support.BeanKit;
import com.stylefeng.guns.modular.system.model.OperationLog;
import com.stylefeng.guns.modular.system.service.IOperationLogService;
import com.stylefeng.guns.modular.system.warpper.LogWarpper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
import java.util.Map;
/**
 * 日志管理的控制器
 *
 * @author fengshuonan
 * @Date 2017年4月5日 19:45:36
 */
@Controller
@RequestMapping("/log")
public class LogController extends BaseController {
    private static String PREFIX = "/system/log/";
    @Autowired
    private IOperationLogService operationLogService;
    /**
     * 跳转到日志管理的首页
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "log.html";
    }
    /**
     * 查询操作日志列表
     */
    @RequestMapping("/list")
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Object list(@RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) String logName, @RequestParam(required = false) Integer logType) {
        Page<OperationLog> page = new PageFactory<OperationLog>().defaultPage();
        List<Map<String, Object>> result = operationLogService.getOperationLogs(page, beginTime, endTime, logName, BizLogType.valueOf(logType), page.getOrderByField(), page.isAsc());
        page.setRecords((List<OperationLog>) new LogWarpper(result).warp());
        return super.packForBT(page);
    }
    /**
     * 查询操作日志详情
     */
    @RequestMapping("/detail/{id}")
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Object detail(@PathVariable Integer id) {
        OperationLog operationLog = operationLogService.selectById(id);
        Map<String, Object> stringObjectMap = BeanKit.beanToMap(operationLog);
        return super.warpObject(new LogWarpper(stringObjectMap));
    }
    /**
     * 清空日志
     */
    @BussinessLog(value = "清空业务日志")
    @RequestMapping("/delLog")
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Object delLog() {
        SqlRunner.db().delete("delete from sys_operation_log");
        return SUCCESS_TIP;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/LoginController.java
New file
@@ -0,0 +1,134 @@
package com.stylefeng.guns.modular.system.controller;
import com.google.code.kaptcha.Constants;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.common.exception.InvalidKaptchaException;
import com.stylefeng.guns.core.log.LogManager;
import com.stylefeng.guns.core.log.factory.LogTaskFactory;
import com.stylefeng.guns.core.node.MenuNode;
import com.stylefeng.guns.core.shiro.ShiroKit;
import com.stylefeng.guns.core.shiro.ShiroUser;
import com.stylefeng.guns.core.util.ApiMenuFilter;
import com.stylefeng.guns.core.util.KaptchaUtil;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.model.User;
import com.stylefeng.guns.modular.system.service.IMenuService;
import com.stylefeng.guns.modular.system.service.IUserService;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.apache.shiro.subject.Subject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import java.util.List;
import static com.stylefeng.guns.core.support.HttpKit.getIp;
/**
 * 登录控制器
 *
 * @author fengshuonan
 * @Date 2017年1月10日 下午8:25:24
 */
@Controller
public class LoginController extends BaseController {
    @Autowired
    private IMenuService menuService;
    @Autowired
    private IUserService userService;
    /**
     * 跳转到主页
     */
    @RequestMapping(value = "/", method = RequestMethod.GET)
    public String index(Model model) {
        //获取菜单列表
        List<Integer> roleList = ShiroKit.getUser().getRoleList();
        if (roleList == null || roleList.size() == 0) {
            ShiroKit.getSubject().logout();
            model.addAttribute("tips", "该用户没有角色,无法登陆");
            return "/login.html";
        }
        List<MenuNode> menus = menuService.getMenusByRoleIds(roleList);
        List<MenuNode> titles = MenuNode.buildTitle(menus);
        titles = ApiMenuFilter.build(titles);
        model.addAttribute("titles", titles);
        //获取用户头像
        Integer id = ShiroKit.getUser().getId();
        User user = userService.selectById(id);
        String avatar = user.getAvatar();
        model.addAttribute("avatar", avatar);
        return "/index.html";
    }
    /**
     * 跳转到登录页面
     */
    @RequestMapping(value = "/login", method = RequestMethod.GET)
    public String login() {
        if (ShiroKit.isAuthenticated() || ShiroKit.getUser() != null) {
            return REDIRECT + "/";
        } else {
            return "/login.html";
        }
    }
    /**
     * 点击登录执行的动作
     */
    @RequestMapping(value = "/login", method = RequestMethod.POST)
    public String loginVali() {
        String username = super.getPara("username").trim();
        String password = super.getPara("password").trim();
        String remember = super.getPara("remember");
        //验证验证码是否正确
        if (KaptchaUtil.getKaptchaOnOff()) {
            String kaptcha = super.getPara("kaptcha").trim();
            String code = (String) super.getSession().getAttribute(Constants.KAPTCHA_SESSION_KEY);
            if (ToolUtil.isEmpty(kaptcha) || !kaptcha.equalsIgnoreCase(code)) {
                throw new InvalidKaptchaException();
            }
        }
        Subject currentUser = ShiroKit.getSubject();
        UsernamePasswordToken token = new UsernamePasswordToken(username, password.toCharArray());
        if ("on".equals(remember)) {
            token.setRememberMe(true);
        } else {
            token.setRememberMe(false);
        }
        currentUser.login(token);
        ShiroUser shiroUser = ShiroKit.getUser();
        super.getSession().setAttribute("shiroUser", shiroUser);
        super.getSession().setAttribute("username", shiroUser.getAccount());
        LogManager.me().executeLog(LogTaskFactory.loginLog(shiroUser.getId(), getIp()));
        ShiroKit.getSession().setAttribute("sessionFlag", true);
        return REDIRECT + "/";
    }
    /**
     * 退出登录
     */
    @RequestMapping(value = "/logout", method = RequestMethod.GET)
    public String logOut() {
        LogManager.me().executeLog(LogTaskFactory.exitLog(ShiroKit.getUser().getId(), getIp()));
        ShiroKit.getSubject().logout();
        deleteAllCookie();
        return REDIRECT + "/login";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/LoginLogController.java
New file
@@ -0,0 +1,69 @@
package com.stylefeng.guns.modular.system.controller;
import com.baomidou.mybatisplus.mapper.SqlRunner;
import com.baomidou.mybatisplus.plugins.Page;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.common.annotion.BussinessLog;
import com.stylefeng.guns.core.common.annotion.Permission;
import com.stylefeng.guns.core.common.constant.Const;
import com.stylefeng.guns.core.common.constant.factory.PageFactory;
import com.stylefeng.guns.modular.system.model.LoginLog;
import com.stylefeng.guns.modular.system.service.ILoginLogService;
import com.stylefeng.guns.modular.system.warpper.LogWarpper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
import java.util.Map;
/**
 * 日志管理的控制器
 *
 * @author fengshuonan
 * @Date 2017年4月5日 19:45:36
 */
@Controller
@RequestMapping("/loginLog")
public class LoginLogController extends BaseController {
    private static String PREFIX = "/system/log/";
    @Autowired
    private ILoginLogService loginLogService;
    /**
     * 跳转到日志管理的首页
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "login_log.html";
    }
    /**
     * 查询登录日志列表
     */
    @RequestMapping("/list")
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Object list(@RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) String logName) {
        Page<LoginLog> page = new PageFactory<LoginLog>().defaultPage();
        List<Map<String, Object>> result = loginLogService.getLoginLogs(page, beginTime, endTime, logName, page.getOrderByField(), page.isAsc());
        page.setRecords((List<LoginLog>) new LogWarpper(result).warp());
        return super.packForBT(page);
    }
    /**
     * 清空日志
     */
    @BussinessLog("清空登录日志")
    @RequestMapping("/delLoginLog")
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Object delLog() {
        SqlRunner.db().delete("delete from sys_login_log");
        return SUCCESS_TIP;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/MenuController.java
New file
@@ -0,0 +1,244 @@
package com.stylefeng.guns.modular.system.controller;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.base.tips.Tip;
import com.stylefeng.guns.core.common.annotion.BussinessLog;
import com.stylefeng.guns.core.common.annotion.Permission;
import com.stylefeng.guns.core.common.constant.Const;
import com.stylefeng.guns.core.common.constant.dictmap.MenuDict;
import com.stylefeng.guns.core.common.constant.factory.ConstantFactory;
import com.stylefeng.guns.core.common.constant.state.MenuStatus;
import com.stylefeng.guns.core.common.exception.BizExceptionEnum;
import com.stylefeng.guns.core.exception.GunsException;
import com.stylefeng.guns.core.log.LogObjectHolder;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.core.support.BeanKit;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.model.Menu;
import com.stylefeng.guns.modular.system.service.IMenuService;
import com.stylefeng.guns.modular.system.warpper.MenuWarpper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.validation.Valid;
import java.util.List;
import java.util.Map;
/**
 * 菜单控制器
 *
 * @author fengshuonan
 * @Date 2017年2月12日21:59:14
 */
@Controller
@RequestMapping("/menu")
public class MenuController extends BaseController {
    private static String PREFIX = "/system/menu/";
    @Autowired
    private IMenuService menuService;
    /**
     * 跳转到菜单列表列表页面
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "menu.html";
    }
    /**
     * 跳转到菜单列表列表页面
     */
    @RequestMapping(value = "/menu_add")
    public String menuAdd() {
        return PREFIX + "menu_add.html";
    }
    /**
     * 跳转到菜单详情列表页面
     */
    @Permission(Const.ADMIN_NAME)
    @RequestMapping(value = "/menu_edit/{menuId}")
    public String menuEdit(@PathVariable Long menuId, Model model) {
        if (ToolUtil.isEmpty(menuId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        Menu menu = this.menuService.selectById(menuId);
        //获取父级菜单的id
        Menu temp = new Menu();
        temp.setCode(menu.getPcode());
        Menu pMenu = this.menuService.selectOne(new EntityWrapper<>(temp));
        //如果父级是顶级菜单
        if (pMenu == null) {
            menu.setPcode("0");
        } else {
            //设置父级菜单的code为父级菜单的id
            menu.setPcode(String.valueOf(pMenu.getId()));
        }
        Map<String, Object> menuMap = BeanKit.beanToMap(menu);
        menuMap.put("pcodeName", ConstantFactory.me().getMenuNameByCode(temp.getCode()));
        model.addAttribute("menu", menuMap);
        LogObjectHolder.me().set(menu);
        return PREFIX + "menu_edit.html";
    }
    /**
     * 修该菜单
     */
    @Permission(Const.ADMIN_NAME)
    @RequestMapping(value = "/edit")
    @BussinessLog(value = "修改菜单", key = "name", dict = MenuDict.class)
    @ResponseBody
    public Tip edit(@Valid Menu menu, BindingResult result) {
        if (result.hasErrors()) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        //设置父级菜单编号
        menuSetPcode(menu);
        this.menuService.updateById(menu);
        return SUCCESS_TIP;
    }
    /**
     * 获取菜单列表
     */
    @Permission(Const.ADMIN_NAME)
    @RequestMapping(value = "/list")
    @ResponseBody
    public Object list(@RequestParam(required = false) String menuName, @RequestParam(required = false) String level) {
        List<Map<String, Object>> menus = this.menuService.selectMenus(menuName, level);
        return super.warpObject(new MenuWarpper(menus));
    }
    /**
     * 新增菜单
     */
    @Permission(Const.ADMIN_NAME)
    @RequestMapping(value = "/add")
    @BussinessLog(value = "菜单新增", key = "name", dict = MenuDict.class)
    @ResponseBody
    public Tip add(@Valid Menu menu, BindingResult result) {
        if (result.hasErrors()) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        //判断是否存在该编号
        String existedMenuName = ConstantFactory.me().getMenuNameByCode(menu.getCode());
        if (ToolUtil.isNotEmpty(existedMenuName)) {
            throw new GunsException(BizExceptionEnum.EXISTED_THE_MENU);
        }
        //设置父级菜单编号
        menuSetPcode(menu);
        menu.setStatus(MenuStatus.ENABLE.getCode());
        this.menuService.insert(menu);
        return SUCCESS_TIP;
    }
    /**
     * 删除菜单
     */
    @Permission(Const.ADMIN_NAME)
    @RequestMapping(value = "/remove")
    @BussinessLog(value = "删除菜单", key = "menuId", dict = MenuDict.class)
    @ResponseBody
    public Tip remove(@RequestParam Long menuId) {
        if (ToolUtil.isEmpty(menuId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        //缓存菜单的名称
        LogObjectHolder.me().set(ConstantFactory.me().getMenuName(menuId));
        this.menuService.delMenuContainSubMenus(menuId);
        return SUCCESS_TIP;
    }
    /**
     * 查看菜单
     */
    @RequestMapping(value = "/view/{menuId}")
    @ResponseBody
    public Tip view(@PathVariable Long menuId) {
        if (ToolUtil.isEmpty(menuId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        this.menuService.selectById(menuId);
        return SUCCESS_TIP;
    }
    /**
     * 获取菜单列表(首页用)
     */
    @RequestMapping(value = "/menuTreeList")
    @ResponseBody
    public List<ZTreeNode> menuTreeList() {
        List<ZTreeNode> roleTreeList = this.menuService.menuTreeList();
        return roleTreeList;
    }
    /**
     * 获取菜单列表(选择父级菜单用)
     */
    @RequestMapping(value = "/selectMenuTreeList")
    @ResponseBody
    public List<ZTreeNode> selectMenuTreeList() {
        List<ZTreeNode> roleTreeList = this.menuService.menuTreeList();
        roleTreeList.add(ZTreeNode.createParent());
        return roleTreeList;
    }
    /**
     * 获取角色列表
     */
    @RequestMapping(value = "/menuTreeListByRoleId/{roleId}")
    @ResponseBody
    public List<ZTreeNode> menuTreeListByRoleId(@PathVariable Integer roleId) {
        List<Long> menuIds = this.menuService.getMenuIdsByRoleId(roleId);
        if (ToolUtil.isEmpty(menuIds)) {
            List<ZTreeNode> roleTreeList = this.menuService.menuTreeList();
            return roleTreeList;
        } else {
            List<ZTreeNode> roleTreeListByUserId = this.menuService.menuTreeListByMenuIds(menuIds);
            return roleTreeListByUserId;
        }
    }
    /**
     * 根据请求的父级菜单编号设置pcode和层级
     */
    private void menuSetPcode(@Valid Menu menu) {
        if (ToolUtil.isEmpty(menu.getPcode()) || menu.getPcode().equals("0")) {
            menu.setPcode("0");
            menu.setPcodes("[0],");
            menu.setLevels(1);
        } else {
            long code = Long.parseLong(menu.getPcode());
            Menu pMenu = menuService.selectById(code);
            Integer pLevels = pMenu.getLevels();
            menu.setPcode(pMenu.getCode());
            //如果编号和父编号一致会导致无限递归
            if (menu.getCode().equals(menu.getPcode())) {
                throw new GunsException(BizExceptionEnum.MENU_PCODE_COINCIDENCE);
            }
            menu.setLevels(pLevels + 1);
            menu.setPcodes(pMenu.getPcodes() + "[" + pMenu.getCode() + "],");
        }
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/NoticeController.java
New file
@@ -0,0 +1,138 @@
package com.stylefeng.guns.modular.system.controller;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.common.annotion.BussinessLog;
import com.stylefeng.guns.core.common.constant.dictmap.NoticeMap;
import com.stylefeng.guns.core.common.constant.factory.ConstantFactory;
import com.stylefeng.guns.core.common.exception.BizExceptionEnum;
import com.stylefeng.guns.core.exception.GunsException;
import com.stylefeng.guns.core.log.LogObjectHolder;
import com.stylefeng.guns.core.shiro.ShiroKit;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.model.Notice;
import com.stylefeng.guns.modular.system.service.INoticeService;
import com.stylefeng.guns.modular.system.warpper.NoticeWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
 * 通知控制器
 *
 * @author fengshuonan
 * @Date 2017-05-09 23:02:21
 */
@Controller
@RequestMapping("/notice")
public class NoticeController extends BaseController {
    private String PREFIX = "/system/notice/";
    @Autowired
    private INoticeService noticeService;
    /**
     * 跳转到通知列表首页
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "notice.html";
    }
    /**
     * 跳转到添加通知
     */
    @RequestMapping("/notice_add")
    public String noticeAdd() {
        return PREFIX + "notice_add.html";
    }
    /**
     * 跳转到修改通知
     */
    @RequestMapping("/notice_update/{noticeId}")
    public String noticeUpdate(@PathVariable Integer noticeId, Model model) {
        Notice notice = this.noticeService.selectById(noticeId);
        model.addAttribute("notice",notice);
        LogObjectHolder.me().set(notice);
        return PREFIX + "notice_edit.html";
    }
    /**
     * 跳转到首页通知
     */
    @RequestMapping("/hello")
    public String hello() {
        List<Map<String, Object>> notices = noticeService.list(null);
        super.setAttr("noticeList",notices);
        return "/blackboard.html";
    }
    /**
     * 获取通知列表
     */
    @RequestMapping(value = "/list")
    @ResponseBody
    public Object list(String condition) {
        List<Map<String, Object>> list = this.noticeService.list(condition);
        return super.warpObject(new NoticeWrapper(list));
    }
    /**
     * 新增通知
     */
    @RequestMapping(value = "/add")
    @ResponseBody
    @BussinessLog(value = "新增通知",key = "title",dict = NoticeMap.class)
    public Object add(Notice notice) {
        if (ToolUtil.isOneEmpty(notice, notice.getTitle(), notice.getContent())) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        notice.setCreater(ShiroKit.getUser().getId());
        notice.setCreatetime(new Date());
        notice.insert();
        return SUCCESS_TIP;
    }
    /**
     * 删除通知
     */
    @RequestMapping(value = "/delete")
    @ResponseBody
    @BussinessLog(value = "删除通知",key = "noticeId",dict = NoticeMap.class)
    public Object delete(@RequestParam Integer noticeId) {
        //缓存通知名称
        LogObjectHolder.me().set(ConstantFactory.me().getNoticeTitle(noticeId));
        this.noticeService.deleteById(noticeId);
        return SUCCESS_TIP;
    }
    /**
     * 修改通知
     */
    @RequestMapping(value = "/update")
    @ResponseBody
    @BussinessLog(value = "修改通知",key = "title",dict = NoticeMap.class)
    public Object update(Notice notice) {
        if (ToolUtil.isOneEmpty(notice, notice.getId(), notice.getTitle(), notice.getContent())) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        Notice old = this.noticeService.selectById(notice.getId());
        old.setTitle(notice.getTitle());
        old.setContent(notice.getContent());
        old.updateById();
        return SUCCESS_TIP;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/RoleController.java
New file
@@ -0,0 +1,230 @@
package com.stylefeng.guns.modular.system.controller;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.base.tips.Tip;
import com.stylefeng.guns.core.cache.CacheKit;
import com.stylefeng.guns.core.common.annotion.BussinessLog;
import com.stylefeng.guns.core.common.annotion.Permission;
import com.stylefeng.guns.core.common.constant.Const;
import com.stylefeng.guns.core.common.constant.cache.Cache;
import com.stylefeng.guns.core.common.constant.dictmap.RoleDict;
import com.stylefeng.guns.core.common.constant.factory.ConstantFactory;
import com.stylefeng.guns.core.common.exception.BizExceptionEnum;
import com.stylefeng.guns.core.exception.GunsException;
import com.stylefeng.guns.core.log.LogObjectHolder;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.core.util.Convert;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.model.Role;
import com.stylefeng.guns.modular.system.model.User;
import com.stylefeng.guns.modular.system.service.IRoleService;
import com.stylefeng.guns.modular.system.service.IUserService;
import com.stylefeng.guns.modular.system.warpper.RoleWarpper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.validation.Valid;
import java.util.List;
import java.util.Map;
/**
 * 角色控制器
 *
 * @author fengshuonan
 * @Date 2017年2月12日21:59:14
 */
@Controller
@RequestMapping("/role")
public class RoleController extends BaseController {
    private static String PREFIX = "/system/role";
    @Autowired
    private IUserService userService;
    @Autowired
    private IRoleService roleService;
    /**
     * 跳转到角色列表页面
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "/role.html";
    }
    /**
     * 跳转到添加角色
     */
    @RequestMapping(value = "/role_add")
    public String roleAdd() {
        return PREFIX + "/role_add.html";
    }
    /**
     * 跳转到修改角色
     */
    @Permission
    @RequestMapping(value = "/role_edit/{roleId}")
    public String roleEdit(@PathVariable Integer roleId, Model model) {
        if (ToolUtil.isEmpty(roleId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        Role role = this.roleService.selectById(roleId);
        model.addAttribute(role);
        model.addAttribute("pName", ConstantFactory.me().getSingleRoleName(role.getPid()));
        model.addAttribute("deptName", ConstantFactory.me().getDeptName(role.getDeptid()));
        LogObjectHolder.me().set(role);
        return PREFIX + "/role_edit.html";
    }
    /**
     * 跳转到角色分配
     */
    @Permission
    @RequestMapping(value = "/role_assign/{roleId}")
    public String roleAssign(@PathVariable("roleId") Integer roleId, Model model) {
        if (ToolUtil.isEmpty(roleId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        model.addAttribute("roleId", roleId);
        model.addAttribute("roleName", ConstantFactory.me().getSingleRoleName(roleId));
        return PREFIX + "/role_assign.html";
    }
    /**
     * 获取角色列表
     */
    @Permission
    @RequestMapping(value = "/list")
    @ResponseBody
    public Object list(@RequestParam(required = false) String roleName) {
        List<Map<String, Object>> roles = this.roleService.selectRoles(super.getPara("roleName"));
        return super.warpObject(new RoleWarpper(roles));
    }
    /**
     * 角色新增
     */
    @RequestMapping(value = "/add")
    @BussinessLog(value = "添加角色", key = "name", dict = RoleDict.class)
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Tip add(@Valid Role role, BindingResult result) {
        if (result.hasErrors()) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        role.setId(null);
        this.roleService.insert(role);
        return SUCCESS_TIP;
    }
    /**
     * 角色修改
     */
    @RequestMapping(value = "/edit")
    @BussinessLog(value = "修改角色", key = "name", dict = RoleDict.class)
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Tip edit(@Valid Role role, BindingResult result) {
        if (result.hasErrors()) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        this.roleService.updateById(role);
        //删除缓存
        CacheKit.removeAll(Cache.CONSTANT);
        return SUCCESS_TIP;
    }
    /**
     * 删除角色
     */
    @RequestMapping(value = "/remove")
    @BussinessLog(value = "删除角色", key = "roleId", dict = RoleDict.class)
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Tip remove(@RequestParam Integer roleId) {
        if (ToolUtil.isEmpty(roleId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        //不能删除超级管理员角色
        if (roleId.equals(Const.ADMIN_ROLE_ID)) {
            throw new GunsException(BizExceptionEnum.CANT_DELETE_ADMIN);
        }
        //缓存被删除的角色名称
        LogObjectHolder.me().set(ConstantFactory.me().getSingleRoleName(roleId));
        this.roleService.delRoleById(roleId);
        //删除缓存
        CacheKit.removeAll(Cache.CONSTANT);
        return SUCCESS_TIP;
    }
    /**
     * 查看角色
     */
    @RequestMapping(value = "/view/{roleId}")
    @ResponseBody
    public Tip view(@PathVariable Integer roleId) {
        if (ToolUtil.isEmpty(roleId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        this.roleService.selectById(roleId);
        return SUCCESS_TIP;
    }
    /**
     * 配置权限
     */
    @RequestMapping("/setAuthority")
    @BussinessLog(value = "配置权限", key = "roleId,ids", dict = RoleDict.class)
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Tip setAuthority(@RequestParam("roleId") Integer roleId, @RequestParam("ids") String ids) {
        if (ToolUtil.isOneEmpty(roleId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        this.roleService.setAuthority(roleId, ids);
        return SUCCESS_TIP;
    }
    /**
     * 获取角色列表
     */
    @RequestMapping(value = "/roleTreeList")
    @ResponseBody
    public List<ZTreeNode> roleTreeList() {
        List<ZTreeNode> roleTreeList = this.roleService.roleTreeList();
        roleTreeList.add(ZTreeNode.createParent());
        return roleTreeList;
    }
    /**
     * 获取角色列表
     */
    @RequestMapping(value = "/roleTreeListByUserId/{userId}")
    @ResponseBody
    public List<ZTreeNode> roleTreeListByUserId(@PathVariable Integer userId) {
        User theUser = this.userService.selectById(userId);
        String roleid = theUser.getRoleid();
        if (ToolUtil.isEmpty(roleid)) {
            List<ZTreeNode> roleTreeList = this.roleService.roleTreeList();
            return roleTreeList;
        } else {
            String[] strArray = Convert.toStrArray(",", roleid);
            List<ZTreeNode> roleTreeListByUserId = this.roleService.roleTreeListByRoleId(strArray);
            return roleTreeListByUserId;
        }
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/UserMgrController.java
New file
@@ -0,0 +1,373 @@
package com.stylefeng.guns.modular.system.controller;
import com.stylefeng.guns.config.properties.GunsProperties;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.base.tips.Tip;
import com.stylefeng.guns.core.common.annotion.BussinessLog;
import com.stylefeng.guns.core.common.annotion.Permission;
import com.stylefeng.guns.core.common.constant.Const;
import com.stylefeng.guns.core.common.constant.dictmap.UserDict;
import com.stylefeng.guns.core.common.constant.factory.ConstantFactory;
import com.stylefeng.guns.core.common.constant.state.ManagerStatus;
import com.stylefeng.guns.core.common.exception.BizExceptionEnum;
import com.stylefeng.guns.core.datascope.DataScope;
import com.stylefeng.guns.core.db.Db;
import com.stylefeng.guns.core.exception.GunsException;
import com.stylefeng.guns.core.log.LogObjectHolder;
import com.stylefeng.guns.core.shiro.ShiroKit;
import com.stylefeng.guns.core.shiro.ShiroUser;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.dao.UserMapper;
import com.stylefeng.guns.modular.system.factory.UserFactory;
import com.stylefeng.guns.modular.system.model.User;
import com.stylefeng.guns.modular.system.service.IUserService;
import com.stylefeng.guns.modular.system.transfer.UserDto;
import com.stylefeng.guns.modular.system.warpper.UserWarpper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.naming.NoPermissionException;
import javax.validation.Valid;
import java.io.File;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.UUID;
/**
 * 系统管理员控制器
 *
 * @author fengshuonan
 * @Date 2017年1月11日 下午1:08:17
 */
@Controller
@RequestMapping("/mgr")
public class UserMgrController extends BaseController {
    private static String PREFIX = "/system/user/";
    @Autowired
    private GunsProperties gunsProperties;
    @Autowired
    private IUserService userService;
    /**
     * 跳转到查看管理员列表的页面
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "user.html";
    }
    /**
     * 跳转到查看管理员列表的页面
     */
    @RequestMapping("/user_add")
    public String addView() {
        return PREFIX + "user_add.html";
    }
    /**
     * 跳转到角色分配页面
     */
    //@RequiresPermissions("/mgr/role_assign")  //利用shiro自带的权限检查
    @Permission
    @RequestMapping("/role_assign/{userId}")
    public String roleAssign(@PathVariable Integer userId, Model model) {
        if (ToolUtil.isEmpty(userId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        User user = (User) Db.create(UserMapper.class).selectOneByCon("id", userId);
        model.addAttribute("userId", userId);
        model.addAttribute("userAccount", user.getAccount());
        return PREFIX + "user_roleassign.html";
    }
    /**
     * 跳转到编辑管理员页面
     */
    @Permission
    @RequestMapping("/user_edit/{userId}")
    public String userEdit(@PathVariable Integer userId, Model model) {
        if (ToolUtil.isEmpty(userId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        assertAuth(userId);
        User user = this.userService.selectById(userId);
        model.addAttribute(user);
        model.addAttribute("roleName", ConstantFactory.me().getRoleName(user.getRoleid()));
        model.addAttribute("deptName", ConstantFactory.me().getDeptName(user.getDeptid()));
        LogObjectHolder.me().set(user);
        return PREFIX + "user_edit.html";
    }
    /**
     * 跳转到查看用户详情页面
     */
    @RequestMapping("/user_info")
    public String userInfo(Model model) {
        Integer userId = ShiroKit.getUser().getId();
        if (ToolUtil.isEmpty(userId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        User user = this.userService.selectById(userId);
        model.addAttribute(user);
        model.addAttribute("roleName", ConstantFactory.me().getRoleName(user.getRoleid()));
        model.addAttribute("deptName", ConstantFactory.me().getDeptName(user.getDeptid()));
        LogObjectHolder.me().set(user);
        return PREFIX + "user_view.html";
    }
    /**
     * 跳转到修改密码界面
     */
    @RequestMapping("/user_chpwd")
    public String chPwd() {
        return PREFIX + "user_chpwd.html";
    }
    /**
     * 修改当前用户的密码
     */
    @RequestMapping("/changePwd")
    @ResponseBody
    public Object changePwd(@RequestParam String oldPwd, @RequestParam String newPwd, @RequestParam String rePwd) {
        if (!newPwd.equals(rePwd)) {
            throw new GunsException(BizExceptionEnum.TWO_PWD_NOT_MATCH);
        }
        Integer userId = ShiroKit.getUser().getId();
        User user = userService.selectById(userId);
        String oldMd5 = ShiroKit.md5(oldPwd, user.getSalt());
        if (user.getPassword().equals(oldMd5)) {
            String newMd5 = ShiroKit.md5(newPwd, user.getSalt());
            user.setPassword(newMd5);
            user.updateById();
            return SUCCESS_TIP;
        } else {
            throw new GunsException(BizExceptionEnum.OLD_PWD_NOT_RIGHT);
        }
    }
    /**
     * 查询管理员列表
     */
    @RequestMapping("/list")
    @Permission
    @ResponseBody
    public Object list(@RequestParam(required = false) String name, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer deptid) {
        if (ShiroKit.isAdmin()) {
            List<Map<String, Object>> users = userService.selectUsers(null, name, beginTime, endTime, deptid);
            return new UserWarpper(users).warp();
        } else {
            DataScope dataScope = new DataScope(ShiroKit.getDeptDataScope());
            List<Map<String, Object>> users = userService.selectUsers(dataScope, name, beginTime, endTime, deptid);
            return new UserWarpper(users).warp();
        }
    }
    /**
     * 添加管理员
     */
    @RequestMapping("/add")
    @BussinessLog(value = "添加管理员", key = "account", dict = UserDict.class)
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Tip add(@Valid UserDto user, BindingResult result) {
        if (result.hasErrors()) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        // 判断账号是否重复
        User theUser = userService.getByAccount(user.getAccount());
        if (theUser != null) {
            throw new GunsException(BizExceptionEnum.USER_ALREADY_REG);
        }
        // 完善账号信息
        user.setSalt(ShiroKit.getRandomSalt(5));
        user.setPassword(ShiroKit.md5(user.getPassword(), user.getSalt()));
        user.setStatus(ManagerStatus.OK.getCode());
        user.setCreatetime(new Date());
        this.userService.insert(UserFactory.createUser(user));
        return SUCCESS_TIP;
    }
    /**
     * 修改管理员
     *
     * @throws NoPermissionException
     */
    @RequestMapping("/edit")
    @BussinessLog(value = "修改管理员", key = "account", dict = UserDict.class)
    @ResponseBody
    public Tip edit(@Valid UserDto user, BindingResult result) throws NoPermissionException {
        if (result.hasErrors()) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        User oldUser = userService.selectById(user.getId());
        if (ShiroKit.hasRole(Const.ADMIN_NAME)) {
            this.userService.updateById(UserFactory.editUser(user, oldUser));
            return SUCCESS_TIP;
        } else {
            assertAuth(user.getId());
            ShiroUser shiroUser = ShiroKit.getUser();
            if (shiroUser.getId().equals(user.getId())) {
                this.userService.updateById(UserFactory.editUser(user, oldUser));
                return SUCCESS_TIP;
            } else {
                throw new GunsException(BizExceptionEnum.NO_PERMITION);
            }
        }
    }
    /**
     * 删除管理员(逻辑删除)
     */
    @RequestMapping("/delete")
    @BussinessLog(value = "删除管理员", key = "userId", dict = UserDict.class)
    @Permission
    @ResponseBody
    public Tip delete(@RequestParam Integer userId) {
        if (ToolUtil.isEmpty(userId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        //不能删除超级管理员
        if (userId.equals(Const.ADMIN_ID)) {
            throw new GunsException(BizExceptionEnum.CANT_DELETE_ADMIN);
        }
        assertAuth(userId);
        this.userService.setStatus(userId, ManagerStatus.DELETED.getCode());
        return SUCCESS_TIP;
    }
    /**
     * 查看管理员详情
     */
    @RequestMapping("/view/{userId}")
    @ResponseBody
    public User view(@PathVariable Integer userId) {
        if (ToolUtil.isEmpty(userId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        assertAuth(userId);
        return this.userService.selectById(userId);
    }
    /**
     * 重置管理员的密码
     */
    @RequestMapping("/reset")
    @BussinessLog(value = "重置管理员密码", key = "userId", dict = UserDict.class)
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Tip reset(@RequestParam Integer userId) {
        if (ToolUtil.isEmpty(userId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        assertAuth(userId);
        User user = this.userService.selectById(userId);
        user.setSalt(ShiroKit.getRandomSalt(5));
        user.setPassword(ShiroKit.md5(Const.DEFAULT_PWD, user.getSalt()));
        this.userService.updateById(user);
        return SUCCESS_TIP;
    }
    /**
     * 冻结用户
     */
    @RequestMapping("/freeze")
    @BussinessLog(value = "冻结用户", key = "userId", dict = UserDict.class)
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Tip freeze(@RequestParam Integer userId) {
        if (ToolUtil.isEmpty(userId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        //不能冻结超级管理员
        if (userId.equals(Const.ADMIN_ID)) {
            throw new GunsException(BizExceptionEnum.CANT_FREEZE_ADMIN);
        }
        assertAuth(userId);
        this.userService.setStatus(userId, ManagerStatus.FREEZED.getCode());
        return SUCCESS_TIP;
    }
    /**
     * 解除冻结用户
     */
    @RequestMapping("/unfreeze")
    @BussinessLog(value = "解除冻结用户", key = "userId", dict = UserDict.class)
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Tip unfreeze(@RequestParam Integer userId) {
        if (ToolUtil.isEmpty(userId)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        assertAuth(userId);
        this.userService.setStatus(userId, ManagerStatus.OK.getCode());
        return SUCCESS_TIP;
    }
    /**
     * 分配角色
     */
    @RequestMapping("/setRole")
    @BussinessLog(value = "分配角色", key = "userId,roleIds", dict = UserDict.class)
    @Permission(Const.ADMIN_NAME)
    @ResponseBody
    public Tip setRole(@RequestParam("userId") Integer userId, @RequestParam("roleIds") String roleIds) {
        if (ToolUtil.isOneEmpty(userId, roleIds)) {
            throw new GunsException(BizExceptionEnum.REQUEST_NULL);
        }
        //不能修改超级管理员
        if (userId.equals(Const.ADMIN_ID)) {
            throw new GunsException(BizExceptionEnum.CANT_CHANGE_ADMIN);
        }
        assertAuth(userId);
        this.userService.setRoles(userId, roleIds);
        return SUCCESS_TIP;
    }
    /**
     * 上传图片
     */
    @RequestMapping(method = RequestMethod.POST, path = "/upload")
    @ResponseBody
    public String upload(@RequestPart("file") MultipartFile picture) {
        String pictureName = UUID.randomUUID().toString() + "." + ToolUtil.getFileSuffix(picture.getOriginalFilename());
        try {
            String fileSavePath = gunsProperties.getFileUploadPath();
            picture.transferTo(new File(fileSavePath + pictureName));
        } catch (Exception e) {
            throw new GunsException(BizExceptionEnum.UPLOAD_ERROR);
        }
        return pictureName;
    }
    /**
     * 判断当前登录的用户是否有操作这个用户的权限
     */
    private void assertAuth(Integer userId) {
        if (ShiroKit.isAdmin()) {
            return;
        }
        List<Integer> deptDataScope = ShiroKit.getDeptDataScope();
        User user = this.userService.selectById(userId);
        Integer deptid = user.getDeptid();
        if (deptDataScope.contains(deptid)) {
            return;
        } else {
            throw new GunsException(BizExceptionEnum.NO_PERMITION);
        }
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/AdvertisementMapper.java
New file
@@ -0,0 +1,20 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Advertisement;
import com.stylefeng.guns.modular.system.warpper.AdvertisementWarpper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface AdvertisementMapper extends BaseMapper<Advertisement> {
    /**
     * 获取广告
     * @param type  广告类型(1:弹窗广告,2:底部广告)
     * @return
     * @throws Exception
     */
    List<AdvertisementWarpper> queryAdvertisement(@Param("code") String code, @Param("type") Integer type);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/AgreementMapper.java
New file
@@ -0,0 +1,16 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Agreement;
import org.apache.ibatis.annotations.Param;
public interface AgreementMapper extends BaseMapper<Agreement> {
    /**
     * 获取协议内容
     * @param type
     * @return
     */
    String queryByType(@Param("type") Integer type, @Param("useType") Integer useType);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/CancleOrderMapper.java
New file
@@ -0,0 +1,18 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.CancleOrder;
import org.apache.ibatis.annotations.Param;
public interface CancleOrderMapper extends BaseMapper<CancleOrder> {
    /**
     * 获取取消订单配置
     * @param type
     * @param orderType
     * @return
     */
    CancleOrder query(@Param("type") Integer type, @Param("orderType") Integer orderType,
                      @Param("companyId") Integer companyId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/CarMapper.java
New file
@@ -0,0 +1,29 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Car;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface CarMapper extends BaseMapper<Car> {
    /**
     * 获取空闲车辆
     * @param companyId
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryIdleData(@Param("companyId") Integer companyId) throws Exception;
    /**
     * 车牌查询
     * @param licensePlate
     * @return
     * @throws Exception
     */
    Car query(@Param("licensePlate") String licensePlate) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/CarServiceMapper.java
New file
@@ -0,0 +1,11 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.CarService;
import org.apache.ibatis.annotations.Param;
public interface CarServiceMapper extends BaseMapper<CarService> {
    CarService query(@Param("type") Integer orderType, @Param("carId") Integer carId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/CompanyCityMapper.java
New file
@@ -0,0 +1,10 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.CompanyCity;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface CompanyCityMapper extends BaseMapper<CompanyCity> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/CompanyMapper.java
New file
@@ -0,0 +1,18 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Company;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface CompanyMapper extends BaseMapper<Company> {
    /**
     * 根据行政区域代码获取企业
     * @param code
     * @return
     */
    List<Company> query(@Param("province") String province, @Param("city") String city, @Param("code") String code);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/ComplaintMapper.java
New file
@@ -0,0 +1,7 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Complaint;
public interface ComplaintMapper extends BaseMapper<Complaint> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DeptMapper.java
New file
@@ -0,0 +1,31 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.modular.system.model.Dept;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 部门表 Mapper 接口
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
public interface DeptMapper extends BaseMapper<Dept> {
    /**
     * 获取ztree的节点列表
     */
    List<ZTreeNode> tree();
    /**
     * 获取所有部门列表
     */
    List<Map<String, Object>> list(@Param("condition") String condition);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DictMapper.java
New file
@@ -0,0 +1,34 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Dict;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 字典表 Mapper 接口
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
public interface DictMapper extends BaseMapper<Dict> {
    /**
     * 根据编码获取词典列表
     */
    List<Dict> selectByCode(@Param("code") String code);
    /**
     * 查询字典列表
     */
    List<Map<String, Object>> list(@Param("condition") String conditiion);
    /**
     * 根据父类编码获取词典列表
     */
    List<Dict> selectByParentCode(@Param("code") String code);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverActivityHistoryMapper.java
New file
@@ -0,0 +1,24 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.DriverActivityHistory;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
import java.util.Map;
public interface DriverActivityHistoryMapper extends BaseMapper<DriverActivityHistory> {
    List<Map<String, Object>> query(@Param("driverId") Integer driverId, @Param("pageNum") Integer pageNum,
                                    @Param("size") Integer size);
    List<DriverActivityHistory> queryList(@Param("driverId") Integer driverId, @Param("type") Integer type,
                                          @Param("carryOut") Integer carryOut, @Param("start") Date start,
                                          @Param("end") Date end);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverActivityRegisteredMapper.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.DriverActivityRegistered;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface DriverActivityRegisteredMapper extends BaseMapper<DriverActivityRegistered> {
    /**
     * 获取当前有效活动
     * @param type
     * @param companyId
     * @return
     */
    List<Map<String, Object>> query(@Param("type") Integer type, @Param("companyId") Integer companyId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverMapper.java
New file
@@ -0,0 +1,43 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Driver;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface DriverMapper extends BaseMapper<Driver> {
    /**
     * 获取当前已上班type业务类型、设置了可以接此类型的单据且空闲的司机
     * @param type
     * @return
     */
    List<Driver> queryIdleDriver(@Param("type") Integer type, @Param("companyId") Integer companyId);
    /**
     * 获取当前已上班type业务类型、设置了可以接此类型的单据、服务车型匹配且空闲的司机
     * @param type
     * @param serverCarModelId
     * @param companyId
     * @return
     */
    List<Driver> queryIdleDriver_(@Param("type") Integer type, @Param("serverCarModelId") Integer serverCarModelId,
                                 @Param("companyId") Integer companyId);
    /**
     * 根据订单id获取司机数据
     * @param orderId
     * @return
     */
    Map<String, Object> queryOrderDriver(@Param("orderId") Integer orderId, @Param("orderType") Integer orderType);
    Map<String, Object> queryDriverInfo(@Param("id") Integer id);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverOrdersMapper.java
New file
@@ -0,0 +1,17 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.DriverOrders;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface DriverOrdersMapper extends BaseMapper<DriverOrders> {
    DriverOrders query(@Param("uid") Integer uid, @Param("type") Integer type);
    List<Integer> queryOrders(@Param("uid") Integer uid);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverServiceMapper.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.DriverService;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface DriverServiceMapper extends BaseMapper<DriverService> {
    /**
     * 获取司机的业务类型
     * @param uid
     * @return
     * @throws Exception
     */
    List<DriverService> queryBusiness(@Param("uid") Integer uid, @Param("type") Integer... type);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/DriverWorkMapper.java
New file
@@ -0,0 +1,7 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.DriverWork;
public interface DriverWorkMapper extends BaseMapper<DriverWork> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/ExpenseMapper.java
New file
@@ -0,0 +1,16 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Expense;
/**
 * <p>
  * 报销表 Mapper 接口
 * </p>
 *
 * @author stylefeng
 * @since 2017-12-04
 */
public interface ExpenseMapper extends BaseMapper<Expense> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/FeedbackMapper.java
New file
@@ -0,0 +1,7 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Feedback;
public interface FeedbackMapper extends BaseMapper<Feedback> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/GDInterfaceMapper.java
New file
@@ -0,0 +1,12 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.GDInterface;
import org.apache.ibatis.annotations.Param;
public interface GDInterfaceMapper extends BaseMapper<GDInterface> {
    GDInterface query(@Param("name") String name, @Param("explanation") String explanation,
                      @Param("time") String time);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/IncomeMapper.java
New file
@@ -0,0 +1,7 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Income;
public interface IncomeMapper extends BaseMapper<Income> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/IntegralGoodsMapper.java
New file
@@ -0,0 +1,17 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.IntegralGoods;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface IntegralGoodsMapper extends BaseMapper<IntegralGoods> {
    List<Map<String, Object>> queryGoods(@Param("pageNum") Integer pageNum, @Param("size") Integer size);
    Map<String, Object> queryGoodsInfo(@Param("id") Integer id);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/IntegralOrderMapper.java
New file
@@ -0,0 +1,22 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.IntegralOrder;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface IntegralOrderMapper extends BaseMapper<IntegralOrder> {
    /**
     * 获取历史记录
     * @param pageNum
     * @param size
     * @param uid
     * @return
     */
    List<Map<String, Object>> queryConvertHistory(@Param("pageNum") Integer pageNum, @Param("size") Integer size,
                                                  @Param("uid") Integer uid);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/InvoiceMapper.java
New file
@@ -0,0 +1,22 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Invoice;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface InvoiceMapper extends BaseMapper<Invoice> {
    /**
     * 获取发票历史记录
     * @param pageNum
     * @param size
     * @param uid
     * @return
     */
    List<Map<String, Object>> queryMyInvoice(@Param("pageNum") Integer pageNum, @Param("size") Integer size,
                                             @Param("uid") Integer uid);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/LoginLogMapper.java
New file
@@ -0,0 +1,27 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.stylefeng.guns.modular.system.model.LoginLog;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 登录记录 Mapper 接口
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
public interface LoginLogMapper extends BaseMapper<LoginLog> {
    /**
     * 获取登录日志
     */
    List<Map<String, Object>> getLoginLogs(@Param("page") Page<LoginLog> page, @Param("beginTime") String beginTime,
                                           @Param("endTime") String endTime, @Param("logName") String logName, @Param("orderByField") String orderByField, @Param("isAsc") boolean isAsc);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/MenuMapper.java
New file
@@ -0,0 +1,80 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.core.node.MenuNode;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.modular.system.model.Menu;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
  * 菜单表 Mapper 接口
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
public interface MenuMapper extends BaseMapper<Menu> {
    /**
     * 根据条件查询菜单
     *
     * @return
     * @date 2017年2月12日 下午9:14:34
     */
    List<Map<String, Object>> selectMenus(@Param("condition") String condition, @Param("level") String level);
    /**
     * 根据条件查询菜单
     *
     * @return
     * @date 2017年2月12日 下午9:14:34
     */
    List<Long> getMenuIdsByRoleId(@Param("roleId") Integer roleId);
    /**
     * 获取菜单列表树
     *
     * @return
     * @date 2017年2月19日 下午1:33:51
     */
    List<ZTreeNode> menuTreeList();
    /**
     * 获取菜单列表树
     *
     * @return
     * @date 2017年2月19日 下午1:33:51
     */
    List<ZTreeNode> menuTreeListByMenuIds(List<Long> menuIds);
    /**
     * 删除menu关联的relation
     *
     * @param menuId
     * @return
     * @date 2017年2月19日 下午4:10:59
     */
    int deleteRelationByMenu(Long menuId);
    /**
     * 获取资源url通过角色id
     *
     * @param roleId
     * @return
     * @date 2017年2月19日 下午7:12:38
     */
    List<String> getResUrlsByRoleId(Integer roleId);
    /**
     * 根据角色获取菜单
     *
     * @param roleIds
     * @return
     * @date 2017年2月19日 下午10:35:40
     */
    List<MenuNode> getMenusByRoleIds(List<Integer> roleIds);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/NoticeMapper.java
New file
@@ -0,0 +1,25 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Notice;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 通知表 Mapper 接口
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
public interface NoticeMapper extends BaseMapper<Notice> {
    /**
     * 获取通知列表
     */
    List<Map<String, Object>> list(@Param("condition") String condition);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OpenCityBusinessMapper.java
New file
@@ -0,0 +1,29 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.OpenCityBusiness;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface OpenCityBusinessMapper extends BaseMapper<OpenCityBusiness> {
    /**
     * 获取业务类型
     * @param province  省名称
     * @param city      市名称
     * @param district  区县名称
     * @return
     */
    List<OpenCityBusiness> queryBusiness(@Param("province") String province, @Param("city") String city,
                                         @Param("district") String district);
    /**
     * 根据开通城市id获取业务类型
     * @param id
     * @return
     */
    List<OpenCityBusiness> queryBusinessById(@Param("id") Integer id);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OpenCityMapper.java
New file
@@ -0,0 +1,25 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.OpenCity;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface OpenCityMapper extends BaseMapper<OpenCity> {
    /**
     * 获取开通城市列表(有效的)
     * @return
     */
    List<OpenCity> queryOpenCity();
    /**
     * 获取开通城市
     * @param code
     * @return
     */
    List<OpenCity> queryByCode(@Param("code") String code);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OperationLogMapper.java
New file
@@ -0,0 +1,26 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.stylefeng.guns.modular.system.model.OperationLog;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 操作日志 Mapper 接口
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
public interface OperationLogMapper extends BaseMapper<OperationLog> {
    /**
     * 获取操作日志
     */
    List<Map<String, Object>> getOperationLogs(@Param("page") Page<OperationLog> page, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("logName") String logName, @Param("logType") String logType, @Param("orderByField") String orderByField, @Param("isAsc") boolean isAsc);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OrderCancelMapper.java
New file
@@ -0,0 +1,34 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.OrderCancel;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface OrderCancelMapper extends BaseMapper<OrderCancel> {
    /**
     * 获取数据
     * @param orderId
     * @param orderType
     * @param money
     * @param payType
     * @param state
     * @return
     */
    OrderCancel query(@Param("orderId") Integer orderId, @Param("orderType") Integer orderType,
                      @Param("money") Double money, @Param("payType") Integer payType,
                      @Param("state") Integer state);
    /**
     * 获取用户取消记录
     * @param uid
     * @param isPay 1=不需要支付,2=需要支付
     * @return
     */
    List<Map<String, Object>> queryCancel(@Param("uid") Integer uid, @Param("isPay") Integer isPay);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OrderEvaluateMapper.java
New file
@@ -0,0 +1,22 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.OrderEvaluate;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface OrderEvaluateMapper extends BaseMapper<OrderEvaluate> {
    /**
     * 获取历史评价数据
     * @param driverId
     * @param pageNum
     * @param size
     * @return
     */
    List<Map<String, Object>> queryOrderEvaluate(@Param("driverId") Integer driverId, @Param("pageNum") Integer pageNum,
                                                 @Param("size") Integer size);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/OrderPositionMapper.java
New file
@@ -0,0 +1,20 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.OrderPosition;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface OrderPositionMapper extends BaseMapper<OrderPosition> {
    /**
     * 获取轨迹数据
     * @param orderId
     * @param orderType
     * @return
     */
    List<Map<String, Object>> queryTrack(@Param("orderId") Integer orderId, @Param("orderType") Integer orderType);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/PhoneMapper.java
New file
@@ -0,0 +1,31 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Phone;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface PhoneMapper extends BaseMapper<Phone> {
    /**
     * 根据行政区域获取设置的电话
     * @param code
     * @return
     */
    List<Phone> queryPhones(@Param("province") String province, @Param("city") String city, @Param("code") String code);
    /**
     * 获取电话数据
     * @param type
     * @param platform
     * @param code
     * @return
     */
    Phone query(@Param("type") Integer type, @Param("platform") Integer platform,
                @Param("province") String province, @Param("city") String city,
                @Param("code") String code);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/ProblemMapper.java
New file
@@ -0,0 +1,22 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Problem;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface ProblemMapper extends BaseMapper<Problem> {
    /**
     * 获取提交的留言
     * @param pageNum
     * @param size
     * @param uid
     * @return
     */
    List<Map<String, Object>> queryProblems(@Param("pageNum") Integer pageNum, @Param("size") Integer size,
                                            @Param("uid") Integer uid);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/PushOrderMapper.java
New file
@@ -0,0 +1,20 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.PushOrder;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface PushOrderMapper extends BaseMapper<PushOrder> {
    /**
     * 获取推送配置
     * @param type
     * @param pushType
     * @return
     */
    List<PushOrder> querys(@Param("type") Integer type, @Param("pushType") Integer pushType,
                           @Param("companyId") Integer companyId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/RedPacketRecordMapper.java
New file
@@ -0,0 +1,16 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.RedPacketRecord;
import org.apache.ibatis.annotations.Param;
public interface RedPacketRecordMapper extends BaseMapper<RedPacketRecord> {
    /**
     * 根据企业id获取红包数据
     * @param companyId
     * @return
     */
    RedPacketRecord queryDate(@Param("companyId") Integer companyId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/RegionMapper.java
New file
@@ -0,0 +1,17 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Region;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface RegionMapper extends BaseMapper<Region> {
    Region query(@Param("code") String code);
    List<Region> querys(@Param("parentId") Integer parentId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/RelationMapper.java
New file
@@ -0,0 +1,16 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Relation;
/**
 * <p>
  * 角色和菜单关联表 Mapper 接口
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
public interface RelationMapper extends BaseMapper<Relation> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/RoleMapper.java
New file
@@ -0,0 +1,53 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.modular.system.model.Role;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
  * 角色表 Mapper 接口
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
public interface RoleMapper extends BaseMapper<Role> {
    /**
     * 根据条件查询角色列表
     *
     * @return
     * @date 2017年2月12日 下午9:14:34
     */
    List<Map<String, Object>> selectRoles(@Param("condition") String condition);
    /**
     * 删除某个角色的所有权限
     *
     * @param roleId 角色id
     * @return
     * @date 2017年2月13日 下午7:57:51
     */
    int deleteRolesById(@Param("roleId") Integer roleId);
    /**
     * 获取角色列表树
     *
     * @return
     * @date 2017年2月18日 上午10:32:04
     */
    List<ZTreeNode> roleTreeList();
    /**
     * 获取角色列表树
     *
     * @return
     * @date 2017年2月18日 上午10:32:04
     */
    List<ZTreeNode> roleTreeListByRoleId(String[] roleId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SensitiveWordsMapper.java
New file
@@ -0,0 +1,7 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.SensitiveWords;
public interface SensitiveWordsMapper extends BaseMapper<SensitiveWords> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/ServerCarModelMapper.java
New file
@@ -0,0 +1,22 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.ServerCarModel;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface ServerCarModelMapper extends BaseMapper<ServerCarModel> {
    /**
     * 获取业务对应的所有有效服务车型
     * @param type
     * @return
     */
    List<Map<String, Object>> queryServerCarModel(@Param("type") Integer type);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SmsrecordMapper.java
New file
@@ -0,0 +1,7 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Smsrecord;
public interface SmsrecordMapper extends BaseMapper<Smsrecord> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SysIntegralMapper.java
New file
@@ -0,0 +1,10 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.SysIntegral;
import org.apache.ibatis.annotations.Param;
public interface SysIntegralMapper extends BaseMapper<SysIntegral> {
    SysIntegral query(@Param("companyId") Integer companyId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SystemNoticeMapper.java
New file
@@ -0,0 +1,47 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.SystemNotice;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface SystemNoticeMapper extends BaseMapper<SystemNotice> {
    /**
     * 获取未阅读数量
     * @param uid
     * @return
     */
    Integer queryNoReadNoticeNum(@Param("uid") Integer uid);
    /**
     * 获取消息列表
     * @param type
     * @param pageNum
     * @param size
     * @param uid
     * @return
     */
    List<Map<String, Object>> queryList(@Param("type") Integer type, @Param("pageNum") Integer pageNum,
                                        @Param("size") Integer size, @Param("uid") Integer uid);
    /**
     * 阅读操作
     * @param id
     * @param uid
     */
    void readSystemNotice(@Param("id") Integer id, @Param("uid") Integer uid);
    /**
     * 删除数据
     * @param id
     * @param uid
     */
    void delSystemNotice(@Param("id") Integer id, @Param("uid") Integer uid);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SystemPriceMapper.java
New file
@@ -0,0 +1,20 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.SystemPrice;
import org.apache.ibatis.annotations.Param;
import java.util.Map;
public interface SystemPriceMapper extends BaseMapper<SystemPrice> {
    /**
     * 获取价格
     * @param companyId
     * @param type
     * @return
     */
    Map<String, Object> query(@Param("companyId") Integer companyId, @Param("type") Integer type,
                              @Param("serverCarModelId") Integer serverCarModelId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TNoticesMapper.java
New file
@@ -0,0 +1,30 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.TNotices;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface TNoticesMapper extends BaseMapper<TNotices> {
    /**
     * 获取公告列表
     * @param type
     * @return
     */
    List<TNotices> queryNotices(@Param("type") Integer type);
    /**
     * 获取用户的公告数据
     * @param pageNum
     * @param size
     * @param uid
     * @return
     */
    List<Map<String, Object>> queryList(@Param("pageNum") Integer pageNum, @Param("size") Integer size,
                                        @Param("uid") Integer uid);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserActivityBalanceMapper.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.UserActivityBalance;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface UserActivityBalanceMapper extends BaseMapper<UserActivityBalance> {
    /**
     * 获取满足条件的活动
     * @param companyId
     * @return
     */
    List<Map<String, Object>> query(@Param("money") Double money, @Param("companyId") Integer companyId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserActivityDiscount1Mapper.java
New file
@@ -0,0 +1,11 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.UserActivityDiscount1;
import org.apache.ibatis.annotations.Param;
public interface UserActivityDiscount1Mapper extends BaseMapper<UserActivityDiscount1> {
    UserActivityDiscount1 query(@Param("companyId") Integer companyId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserActivityInviteMapper.java
New file
@@ -0,0 +1,14 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.UserActivityInvite;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface UserActivityInviteMapper extends BaseMapper<UserActivityInvite> {
    List<Map<String, Object>> query(@Param("companyId") Integer companyId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserActivityRedenvelopeMapper.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.UserActivityRedenvelope;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.Map;
public interface UserActivityRedenvelopeMapper extends BaseMapper<UserActivityRedenvelope> {
    /**
     * 获取红包活动
     * @param companyId
     * @return
     */
    Map<String, Object> query(@Param("companyId") Integer companyId, @Param("travelTime") Date travelTime);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserActivityRegisteredMapper.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.UserActivityRegistered;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface UserActivityRegisteredMapper extends BaseMapper<UserActivityRegistered> {
    /**
     * 获取当前有效的注册活动
     * @param companyId
     * @return
     */
    List<Map<String, Object>> query(@Param("companyId") Integer companyId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserCouponRecordMapper.java
New file
@@ -0,0 +1,55 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.UserCouponRecord;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface UserCouponRecordMapper extends BaseMapper<UserCouponRecord> {
    /**
     * 获取可用优惠券数量
     * @param uid
     * @param companyId
     * @param state
     * @param couponUseType
     * @return
     */
    int queryAvailable(@Param("uid") Integer uid, @Param("companyId") Integer companyId,
                       @Param("state") Integer state, @Param("couponUseType") Integer couponUseType,
                       @Param("money") Double money);
    /**
     * 获取优惠券列表
     * @param uid
     * @param companyId
     * @param state
     * @param couponUseType
     * @return
     */
    List<Map<String, Object>> queryCoupon(@Param("uid") Integer uid, @Param("companyId") Integer companyId,
                                          @Param("state") Integer state, @Param("couponUseType") Integer couponUseType,
                                          @Param("money") Double money, @Param("pageNum") Integer pageNum,
                                          @Param("size") Integer size);
    /**
     * 获取优惠券列表
     * @param state
     * @param pageNum
     * @param size
     * @param uid
     * @return
     */
    List<Map<String, Object>> queryMyCoupons(@Param("state") Integer state, @Param("pageNum") Integer pageNum,
                                             @Param("size") Integer size, @Param("uid") Integer uid);
    /**
     * 修改过期状态
     */
    void updateTimeOut();
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserInfoMapper.java
New file
@@ -0,0 +1,55 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.UserInfo;
import org.apache.ibatis.annotations.Param;
import java.util.Map;
public interface UserInfoMapper extends BaseMapper<UserInfo> {
    /**
     * 电话号查询用户
     * @param phone
     * @return
     */
    UserInfo queryByPhone(@Param("phone") String phone);
    /**
     * 根据微信openid获取用户
     * @param openid
     * @param unionid
     * @return
     */
    UserInfo queryByOpenid(@Param("openid") String openid);
    UserInfo queryByOpenid2(@Param("openid") String openid);
    /**
     * 获取用户详情
     * @param uid
     * @return
     */
    Map<String, Object> queryUserInfo(@Param("uid") Integer uid, @Param("phone") String phone);
    /**
     * 设置紧急联系人
     * @param name
     * @param phone
     * @param uid
     */
    void setUrgentUser(@Param("name") String name, @Param("phone") String phone,
                       @Param("uid") Integer uid);
    /**
     * 获取实名认证数据
     * @param uid
     * @return
     */
    Map<String, Object> queryRealName(@Param("uid") Integer uid);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserMapper.java
New file
@@ -0,0 +1,45 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.core.datascope.DataScope;
import com.stylefeng.guns.modular.system.model.User;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 管理员表 Mapper 接口
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
public interface UserMapper extends BaseMapper<User> {
    /**
     * 修改用户状态
     */
    int setStatus(@Param("userId") Integer userId, @Param("status") int status);
    /**
     * 修改密码
     */
    int changePwd(@Param("userId") Integer userId, @Param("pwd") String pwd);
    /**
     * 根据条件查询用户列表
     */
    List<Map<String, Object>> selectUsers(@Param("dataScope") DataScope dataScope, @Param("name") String name, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("deptid") Integer deptid);
    /**
     * 设置用户的角色
     */
    int setRoles(@Param("userId") Integer userId, @Param("roleIds") String roleIds);
    /**
     * 通过账号获取用户
     */
    User getByAccount(@Param("account") String account);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/UserRedPacketRecordMapper.java
New file
@@ -0,0 +1,42 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.UserRedPacketRecord;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface UserRedPacketRecordMapper extends BaseMapper<UserRedPacketRecord> {
    /**
     * 获取不大于money值的红包数据
     * @param uid
     * @param companyId
     * @param state
     * @param orderType
     * @param money
     * @return
     */
    UserRedPacketRecord query(@Param("uid") Integer uid, @Param("companyId") Integer companyId,
                              @Param("state") Integer state, @Param("orderType") Integer orderType,
                              @Param("money") Double money);
    UserRedPacketRecord query_(@Param("uid") Integer uid, @Param("companyId") Integer companyId,
                              @Param("state") Integer state, @Param("orderType") Integer orderType,
                              @Param("money") Double money);
    /**
     * 获取红包列表
     * @param pageNum
     * @param size
     * @param uid
     * @return
     */
    List<Map<String, Object>> queryMyRedEnvelope(@Param("pageNum") Integer pageNum, @Param("size") Integer size,
                                                 @Param("uid") Integer uid);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/VerifiedMapper.java
New file
@@ -0,0 +1,7 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Verified;
public interface VerifiedMapper extends BaseMapper<Verified> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/VersionManagementMapper.java
New file
@@ -0,0 +1,17 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.VersionManagement;
import org.apache.ibatis.annotations.Param;
import java.util.Map;
public interface VersionManagementMapper extends BaseMapper<VersionManagement> {
    /**
     * 获取最新版本
     * @return
     */
    Map<String, Object> queryNewVersion(@Param("type") Integer type);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/WithdrawalMapper.java
New file
@@ -0,0 +1,22 @@
package com.stylefeng.guns.modular.system.dao;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.stylefeng.guns.modular.system.model.Withdrawal;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface WithdrawalMapper extends BaseMapper<Withdrawal> {
    /**
     * 获取历史提交数据
     * @param uid
     * @param pageNum
     * @param size
     * @return
     */
    List<Map<String, Object>> queryWithdrawal(@Param("uid") Integer uid, @Param("userType") Integer userType,
                                              @Param("pageNum") Integer pageNum, @Param("size") Integer size);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/AdvertisementMapper.xml
New file
@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.AdvertisementMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Advertisement">
        <id column="id" property="id"/>
        <result column="name" property="name"/>
        <result column="imgUrl" property="imgUrl"/>
        <result column="type" property="type"/>
        <result column="isJump" property="isJump"/>
        <result column="jumpType" property="jumpType"/>
        <result column="jumpUrl" property="jumpUrl"/>
        <result column="content" property="content"/>
        <result column="state" property="state"/>
        <result column="provinceId" property="provinceId"/>
        <result column="flag" property="flag"/>
        <result column="insertTime" property="insertTime"/>
        <result column="insertUser" property="insertUser"/>
        <result column="updateTime" property="updateTime"/>
        <result column="updateUser" property="updateUser"/>
    </resultMap>
    <select id="queryAdvertisement" resultType="com.stylefeng.guns.modular.system.warpper.AdvertisementWarpper">
        select
        id as id,
        name as name,
        imgUrl as imgUrl,
        type as type,
        isJump as isJump,
        jumpType as jumpType,
        jumpUrl as jumpUrl,
        content as content,
        state as state,
        provinceId as provinceId
        from t_advertisement where flag != 3 and state = 1 and provinceId in (select id from t_region where code = #{code})
        <if test="null != type">
          and `type` = #{type}
        </if>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/AgreementMapper.xml
New file
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.AgreementMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Agreement">
        <id column="id" property="id"/>
        <result column="useType" property="useType"/>
        <result column="content" property="content"/>
        <result column="type" property="type"/>
        <result column="flag" property="flag"/>
        <result column="insertTime" property="insertTime"/>
        <result column="insertUser" property="insertUser"/>
        <result column="updateTime" property="updateTime"/>
        <result column="updateUser" property="updateUser"/>
    </resultMap>
    <select id="queryByType" resultType="java.lang.String">
        select content from t_agreement where `type` = #{type} and flag != 3
        <if test="null != useType">
            and useType = #{useType}
        </if>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CancleOrderMapper.xml
New file
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.CancleOrderMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.CancleOrder">
        <id column="id" property="id"/>
        <result column="companyId" property="companyId"/>
        <result column="minuteNum" property="minuteNum"/>
        <result column="money" property="money"/>
        <result column="type" property="type"/>
        <result column="orderType" property="orderType"/>
    </resultMap>
    <select id="query" resultType="CancleOrder">
        select
        id as id,
        companyId as companyId,
        minuteNum as minuteNum,
        money as money,
        `type` as `type`,
        orderType as orderType
        from t_sys_cancle_order where `type` = #{type} and orderType = #{orderType} and companyId = #{companyId}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml
New file
@@ -0,0 +1,71 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.CarMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Car">
        <id column="id" property="id"/>
        <result column="isPlatCar" property="isPlatCar"/>
        <result column="companyId" property="companyId"/>
        <result column="franchiseeId" property="franchiseeId"/>
        <result column="carColor" property="carColor"/>
        <result column="carModelId" property="carModelId"/>
        <result column="carBrandId" property="carBrandId"/>
        <result column="carLicensePlate" property="carLicensePlate"/>
        <result column="carPhoto" property="carPhoto"/>
        <result column="drivingLicenseNumber" property="drivingLicenseNumber"/>
        <result column="drivingLicensePhoto" property="drivingLicensePhoto"/>
        <result column="annualInspectionTime" property="annualInspectionTime"/>
        <result column="insurancePhoto" property="insurancePhoto" />
        <result column="commercialInsuranceTime" property="commercialInsuranceTime"/>
        <result column="insertTime" property="insertTime"/>
        <result column="state" property="state"/>
        <result column="addType" property="addType"/>
        <result column="addObjectId" property="addObjectId"/>
    </resultMap>
    <select id="queryIdleData" resultType="map">
        select
        a.id as id,
        CONCAT(a.carLicensePlate, '-',c.`name`, b.`name`, ' ', a.carColor) as name
        from t_car a
        left join t_car_model b on (a.carModelId = b.id)
        left join t_car_brand c on (b.brandId = c.id)
        where a.state = 1
        <choose>
            <when test="companyId != 1">
                and  a.companyId = #{companyId} or a.franchiseeId = #{companyId}
            </when>
            <otherwise>
                and a.isPlatCar = 1
            </otherwise>
        </choose>
    </select>
    <select id="query" resultType="com.stylefeng.guns.modular.system.model.Car">
        select
        id as id,
        isPlatCar as isPlatCar,
        companyId as companyId,
        franchiseeId as franchiseeId,
        carColor as carColor,
        carModelId as carModelId,
        carBrandId as carBrandId,
        carLicensePlate as carLicensePlate,
        carPhoto as carPhoto,
        drivingLicenseNumber as drivingLicenseNumber,
        drivingLicensePhoto as drivingLicensePhoto,
        annualInspectionTime as annualInspectionTime,
        insurancePhoto as insurancePhoto,
        commercialInsuranceTime as commercialInsuranceTime,
        insertTime as insertTime,
        state as state,
        addType as addType,
        addObjectId as addObjectId
        from t_car where state = 1 and carLicensePlate = #{licensePlate}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarServiceMapper.xml
New file
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.CarServiceMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.CarService">
        <id column="id" property="id"/>
        <result column="carId" property="carId"/>
        <result column="type" property="type"/>
        <result column="serverCarModelId" property="serverCarModelId"/>
    </resultMap>
    <select id="query" resultType="CarService">
        select
        id as id,
        carId as carId,
        `type` as `type`,
        serverCarModelId as serverCarModelId
        from t_car_service where `type` = #{type} and carId = #{carId}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CompanyCityMapper.xml
New file
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.CompanyCityMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.CompanyCity">
        <id column="id" property="id"/>
        <result column="companyId" property="companyId"/>
        <result column="provinceCode" property="provinceCode"/>
        <result column="cityCode" property="cityCode"/>
        <result column="areaCode" property="areaCode"/>
        <result column="state" property="state"/>
    </resultMap>
    <select id="query" resultType="CompanyCity">
        select
        id as id,
        companyId as companyId,
        provinceCode as provinceCode,
        cityCode as cityCode,
        areaCode as areaCode,
        state as state
        from t_company_city where state = 1
        <if test="null != province">
            and provinceCode = #{province}
        </if>
        <if test="null != city">
            and cityCode = #{city}
        </if>
        <if test="null != code">
            and areaCode = #{code}
        </if>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CompanyMapper.xml
New file
@@ -0,0 +1,121 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.CompanyMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Company">
        <id column="id" property="id"/>
        <result column="isSpe" property="isSpe"/>
        <result column="isTaxi" property="isTaxi"/>
        <result column="isCross" property="isCross"/>
        <result column="isCrossLogistics" property="isCrossLogistics"/>
        <result column="isSameLogistics" property="isSameLogistics"/>
        <result column="isCharter" property="isCharter"/>
        <result column="isSpeFixedOrProportional" property="isSpeFixedOrProportional"/>
        <result column="isTaxiFixedOrProportional" property="isTaxiFixedOrProportional"/>
        <result column="isCrossLogisticsFixedOrProportional" property="isCrossLogisticsFixedOrProportional"/>
        <result column="isSameLogisticsFixedOrProportional" property="isSameLogisticsFixedOrProportional"/>
        <result column="speMoney" property="speMoney"/>
        <result column="taxiMoney" property="taxiMoney"/>
        <result column="crossLogisticsMoney" property="crossLogisticsMoney"/>
        <result column="sameLogisticsMoney" property="sameLogisticsMoney"/>
        <result column="isNeedFerry" property="isNeedFerry"/>
        <result column="name" property="name"/>
        <result column="type" property="type"/>
        <result column="superiorId" property="superiorId"/>
        <result column="principalName" property="principalName"/>
        <result column="principalPhone" property="principalPhone"/>
        <result column="adminName" property="adminName"/>
        <result column="adminPhone" property="adminPhone"/>
        <result column="urgentPhoen" property="urgentPhoen"/>
        <result column="setupTime" property="setupTime"/>
        <result column="identifier" property="identifier"/>
        <result column="addressCode" property="addressCode"/>
        <result column="businessScope" property="businessScope"/>
        <result column="contactAddress" property="contactAddress"/>
        <result column="documentAddress" property="documentAddress"/>
        <result column="economicType" property="economicType"/>
        <result column="regCapital" property="regCapital"/>
        <result column="legalName" property="legalName"/>
        <result column="legalId" property="legalId"/>
        <result column="legalPhone" property="legalPhone"/>
        <result column="legalPhotoUrl" property="legalPhotoUrl"/>
        <result column="licensingAgency" property="licensingAgency"/>
        <result column="licenseTime" property="licenseTime"/>
        <result column="licenseStartTime" property="licenseStartTime"/>
        <result column="licenseEndTime" property="licenseEndTime"/>
        <result column="licenseNumber" property="licenseNumber"/>
        <result column="carNum" property="carNum"/>
        <result column="driverNum" property="driverNum"/>
        <result column="mac" property="mac"/>
        <result column="state" property="state"/>
        <result column="flag" property="flag"/>
        <result column="upload" property="upload"/>
        <result column="insertTime" property="insertTime"/>
    </resultMap>
    <select id="query" resultType="Company">
        select
        id as id,
        isSpe as isSpe,
        isTaxi as isTaxi,
        isCross as isCross,
        isCrossLogistics as isCrossLogistics,
        isSameLogistics as isSameLogistics,
        isCharter as isCharter,
        isSpeFixedOrProportional as isSpeFixedOrProportional,
        isTaxiFixedOrProportional as isTaxiFixedOrProportional,
        isCrossLogisticsFixedOrProportional as isCrossLogisticsFixedOrProportional,
        isSameLogisticsFixedOrProportional as isSameLogisticsFixedOrProportional,
        speMoney as speMoney,
        taxiMoney as taxiMoney,
        crossLogisticsMoney as crossLogisticsMoney,
        sameLogisticsMoney as sameLogisticsMoney,
        isNeedFerry as isNeedFerry,
        name as name,
        type as type,
        superiorId as superiorId,
        principalName as principalName,
        principalPhone as principalPhone,
        adminName as adminName,
        adminPhone as adminPhone,
        urgentPhoen as urgentPhoen,
        setupTime as setupTime,
        identifier as identifier,
        addressCode as addressCode,
        businessScope as businessScope,
        contactAddress as contactAddress,
        documentAddress as documentAddress,
        economicType as economicType,
        regCapital as regCapital,
        legalName as legalName,
        legalId as legalId,
        legalPhone as legalPhone,
        legalPhotoUrl as legalPhotoUrl,
        licensingAgency as licensingAgency,
        licenseTime as licenseTime,
        licenseStartTime as licenseStartTime,
        licenseEndTime as licenseEndTime,
        licenseNumber as licenseNumber,
        carNum as carNum,
        driverNum as driverNum,
        mac as mac,
        state as state,
        flag as flag,
        upload as upload,
        insertTime as insertTime
        from t_company where flag != 3 and state = 0 and id in (
        select companyId from t_company_city where state = 1
        <if test="null != province and null != city and null != code">
            and provinceCode = #{province} and cityCode = #{city} and areaCode = #{code}
        </if>
        <if test="null != province and null != city and null == code">
            and provinceCode = #{province} and cityCode = #{city} and (areaCode = '' or areaCode is null)
        </if>
        <if test="null != province and null == city and null == code">
            and provinceCode = #{province} and (cityCode = '' or cityCode is null) and (areaCode = '' or areaCode is null)
        </if>
        )
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/ComplaintMapper.xml
New file
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.ComplaintMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Complaint">
        <id column="id" property="id"/>
        <result column="userId" property="userId"/>
        <result column="reason" property="reason"/>
        <result column="driverId" property="driverId"/>
        <result column="description" property="description"/>
        <result column="isHandle" property="isHandle"/>
        <result column="insert_time" property="insertTime"/>
        <result column="handleResult" property="handleResult"/>
        <result column="handleUserId" property="handleUserId"/>
    </resultMap>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DeptMapper.xml
New file
@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.DeptMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Dept">
        <id column="id" property="id"/>
        <result column="num" property="num"/>
        <result column="pid" property="pid"/>
        <result column="pids" property="pids"/>
        <result column="simplename" property="simplename"/>
        <result column="fullname" property="fullname"/>
        <result column="tips" property="tips"/>
        <result column="version" property="version"/>
    </resultMap>
    <select id="tree" resultType="com.stylefeng.guns.core.node.ZTreeNode">
        select id,pid as pId,simplename as name,
        (
        CASE
        WHEN (pId = 0 OR pId IS NULL) THEN
        'true'
        ELSE
        'false'
        END
        ) as isOpen from sys_dept
    </select>
    <select id="list" resultType="map">
        select * from sys_dept
        <if test="condition != null and condition != ''">
            where simplename like CONCAT('%',#{condition},'%') or fullname like CONCAT('%',#{condition},'%')
        </if>
        order by num ASC
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DictMapper.xml
New file
@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.DictMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Dict">
        <id column="id" property="id"/>
        <result column="num" property="num"/>
        <result column="pid" property="pid"/>
        <result column="name" property="name"/>
        <result column="code" property="code"/>
        <result column="tips" property="tips"/>
    </resultMap>
    <sql id="Base_Column_List">
        id, num, pid, name,code,tips
    </sql>
    <select id="selectByCode" resultType="dict">
        select
        <include refid="Base_Column_List"/>
        from sys_dict
        where code = #{code}
    </select>
    <select id="selectByParentCode" resultType="dict">
        select
        <include refid="Base_Column_List"/>
        from sys_dict
        where pid in(select id  from sys_dict where code = #{code}) order by num asc
    </select>
    <select id="list" resultType="map">
        select * from sys_dict
        where pid = 0
        <if test="condition != null and condition != ''">
            AND name like CONCAT('%',#{condition},'%')
        </if>
        order by id ASC
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverActivityHistoryMapper.xml
New file
@@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.DriverActivityHistoryMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.DriverActivityHistory">
        <id column="id" property="id"/>
        <result column="day" property="day"/>
        <result column="driverId" property="driverId"/>
        <result column="type" property="type"/>
        <result column="activityId" property="activityId"/>
        <result column="carryOut" property="carryOut"/>
        <result column="money" property="money"/>
        <result column="collectionTime" property="collectionTime"/>
        <result column="insertTime" property="insertTime"/>
    </resultMap>
    <select id="query" resultType="map">
        select * from
        (
            select
            DATE_FORMAT(`day`, '%Y.%m.%d') as time,
            if((select count(id) from t_driver_activity_history where driverId = #{driverId}) > (select count(id) from t_driver_activity_history where driverId = #{driverId} and carryOut = 2), 1, 2) as carryOut
            from t_driver_activity_history where driverId = #{driverId} group by `day`
        ) as a order by a.time desc limit #{pageNum}, #{size}
    </select>
    <select id="queryList" resultType="DriverActivityHistory">
        select
        id as id,
        `day` as `day`,
        driverId as driverId,
        `type` as `type`,
        activityId as activityId,
        carryOut as carryOut,
        money as money,
        collectionTime as collectionTime,
        insertTime as insertTime
        from t_driver_activity_history where `day` between #{start} and #{end}
        <if test="null != type">
            and `type` = #{type}
        </if>
        <if test="null != carryOut">
            and carryOut = #{carryOut}
        </if>
        <if test="null != driverId">
            and driverId = #{driverId}
        </if>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverActivityRegisteredMapper.xml
New file
@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.DriverActivityRegisteredMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.DriverActivityRegistered">
        <id column="id" property="id"/>
        <result column="companyId" property="companyId"/>
        <result column="driverActivityId" property="driverActivityId"/>
        <result column="type" property="type"/>
        <result column="money" property="money"/>
        <result column="startTime" property="startTime"/>
        <result column="endTime" property="endTime"/>
        <result column="insertTime" property="insertTime"/>
    </resultMap>
    <select id="query" resultType="map">
        select
        a.id as id,
        CONCAT('邀请', if(a.`type` = 1, '司机', '用户'), '注册奖励', a.money, '元') as content,
        a.money as money
        from t_driver_activity_registered a
        left join t_driver_activity b on (a.driverActivityId = b.id)
        where now() between a.startTime and a.endTime and a.companyId = #{companyId} and a.`type` = #{type} and b.status = 3
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml
New file
@@ -0,0 +1,330 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.DriverMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Driver">
        <id column="id" property="id" />
        <result column="account" property="account" />
        <result column="jobNumber" property="jobNumber" />
        <result column="phone" property="phone" />
        <result column="password" property="password" />
        <result column="name" property="name" />
        <result column="sex" property="sex" />
        <result column="idCard" property="idCard" />
        <result column="companyId" property="companyId" />
        <result column="franchiseeId" property="franchiseeId" />
        <result column="headImgUrl" property="headImgUrl" />
        <result column="faceImgUrl" property="faceImgUrl" />
        <result column="idCardImgUrl1" property="idCardImgUrl1" />
        <result column="idCardImgUrl2" property="idCardImgUrl2" />
        <result column="placeOfEmployment" property="placeOfEmployment" />
        <result column="birthday" property="birthday" />
        <result column="bankCardNumber" property="bankCardNumber" />
        <result column="driverNationality" property="driverNationality" />
        <result column="driverNation" property="driverNation" />
        <result column="driverMaritalStatus" property="driverMaritalStatus" />
        <result column="driverLanguageLevel" property="driverLanguageLevel" />
        <result column="driverEducation" property="driverEducation" />
        <result column="driverCensus" property="driverCensus" />
        <result column="driverAddress" property="driverAddress" />
        <result column="driverContactAddress" property="driverContactAddress" />
        <result column="driverAge" property="driverAge" />
        <result column="driveCard" property="driveCard" />
        <result column="driveCardImgUrl" property="driveCardImgUrl" />
        <result column="driverType" property="driverType" />
        <result column="getDriverLicenseDate" property="getDriverLicenseDate" />
        <result column="driverLicenseOn" property="driverLicenseOn" />
        <result column="driverLicenseOff" property="driverLicenseOff" />
        <result column="taxiDriver" property="taxiDriver" />
        <result column="taxiAptitudeCard" property="taxiAptitudeCard" />
        <result column="networkCarlssueImg" property="networkCarlssueImg"/>
        <result column="networkCarlssueOrganization" property="networkCarlssueOrganization" />
        <result column="networkCarlssueDate" property="networkCarlssueDate" />
        <result column="getNetworkCarProofDate" property="getNetworkCarProofDate" />
        <result column="networkCarProofOn" property="networkCarProofOn" />
        <result column="networkCarProofOff" property="networkCarProofOff" />
        <result column="registerDate" property="registerDate" />
        <result column="fullTimeDriver" property="fullTimeDriver" />
        <result column="inDriverBlacklist" property="inDriverBlacklist" />
        <result column="commercialType" property="commercialType" />
        <result column="contractCompany" property="contractCompany" />
        <result column="contractOn" property="contractOn" />
        <result column="contractOff" property="contractOff" />
        <result column="emergencyContact" property="emergencyContact" />
        <result column="emergencyContactPhone" property="emergencyContactPhone" />
        <result column="emergencyContactAddress" property="emergencyContactAddress" />
        <result column="remark" property="remark" />
        <result column="isPlatCar" property="isPlatCar" />
        <result column="carId" property="carId" />
        <result column="authState" property="authState" />
        <result column="state" property="state" />
        <result column="addType" property="addType" />
        <result column="balance" property="balance" />
        <result column="activityMoney" property="activityMoney" />
        <result column="laveActivityMoney" property="laveActivityMoney" />
        <result column="businessMoney" property="businessMoney" />
        <result column="laveBusinessMoney" property="laveBusinessMoney" />
        <result column="laveBusinessMoney" property="laveBusinessMoney" />
        <result column="appletsOpenId" property="appletsOpenId"/>
        <result column="flag" property="flag"/>
        <result column="insertTime" property="insertTime"/>
        <result column="insertUser" property="insertUser"/>
        <result column="updateTime" property="updateTime"/>
        <result column="updateUser" property="updateUser"/>
    </resultMap>
    <select id="queryIdleDriver" resultType="Driver">
        select
        id as id,
        account as account,
        jobNumber as jobNumber,
        phone as phone,
        password as password,
        name as name,
        sex as sex,
        idCard as idCard,
        companyId as companyId,
        franchiseeId as franchiseeId,
        headImgUrl as headImgUrl,
        faceImgUrl as faceImgUrl,
        idCardImgUrl1 as idCardImgUrl1,
        idCardImgUrl2 as idCardImgUrl2,
        placeOfEmployment as placeOfEmployment,
        birthday as birthday,
        bankCardNumber as bankCardNumber,
        driverNationality as driverNationality,
        driverNation as driverNation,
        driverMaritalStatus as driverMaritalStatus,
        driverLanguageLevel as driverLanguageLevel,
        driverEducation as driverEducation,
        driverCensus as driverCensus,
        driverAddress as driverAddress,
        driverContactAddress as driverContactAddress,
        driverAge as driverAge,
        driveCard as driveCard,
        driveCardImgUrl as driveCardImgUrl,
        driverType as driverType,
        getDriverLicenseDate as getDriverLicenseDate,
        driverLicenseOn as driverLicenseOn,
        driverLicenseOff as driverLicenseOff,
        taxiDriver as taxiDriver,
        taxiAptitudeCard as taxiAptitudeCard,
        networkCarlssueImg as networkCarlssueImg,
        networkCarlssueOrganization as networkCarlssueOrganization,
        networkCarlssueDate as networkCarlssueDate,
        getNetworkCarProofDate as getNetworkCarProofDate,
        networkCarProofOn as networkCarProofOn,
        networkCarProofOff as networkCarProofOff,
        registerDate as registerDate,
        fullTimeDriver as fullTimeDriver,
        inDriverBlacklist as inDriverBlacklist,
        commercialType as commercialType,
        contractCompany as contractCompany,
        contractOn as contractOn,
        contractOff as contractOff,
        emergencyContact as emergencyContact,
        emergencyContactPhone as emergencyContactPhone,
        emergencyContactAddress as emergencyContactAddress,
        remark as remark,
        isPlatCar as isPlatCar,
        carId as carId,
        authState as authState,
        state as state,
        addType as addType,
        balance as balance,
        flag as flag,
        insertTime as insertTime,
        insertUser as insertUser,
        updateTime as updateTime,
        updateUser as updateUser
        from t_driver
        where flag != 3 and state = 2 and authState = 2
        <if test="null != companyId">
            <choose>
                <when test="companyId != 1">
                    and companyId = #{companyId} or franchiseeId = #{companyId}
                </when>
                <otherwise>
                    and companyId is null or companyId = 0 or companyId = 1 or franchiseeId is null or franchiseeId = 0
                </otherwise>
            </choose>
        </if>
        and id in
        (
          select driverId from t_driver_work where startTime &lt; now() and state = 1 and `type` like CONCAT('%', #{type}, '%')
        )
        and id in (select driverId from t_driver_orders where `type` = #{type})
    </select>
    <select id="queryIdleDriver_" resultType="Driver">
        select
        id as id,
        account as account,
        jobNumber as jobNumber,
        phone as phone,
        password as password,
        name as name,
        sex as sex,
        idCard as idCard,
        companyId as companyId,
        franchiseeId as franchiseeId,
        headImgUrl as headImgUrl,
        faceImgUrl as faceImgUrl,
        idCardImgUrl1 as idCardImgUrl1,
        idCardImgUrl2 as idCardImgUrl2,
        placeOfEmployment as placeOfEmployment,
        birthday as birthday,
        bankCardNumber as bankCardNumber,
        driverNationality as driverNationality,
        driverNation as driverNation,
        driverMaritalStatus as driverMaritalStatus,
        driverLanguageLevel as driverLanguageLevel,
        driverEducation as driverEducation,
        driverCensus as driverCensus,
        driverAddress as driverAddress,
        driverContactAddress as driverContactAddress,
        driverAge as driverAge,
        driveCard as driveCard,
        driveCardImgUrl as driveCardImgUrl,
        driverType as driverType,
        getDriverLicenseDate as getDriverLicenseDate,
        driverLicenseOn as driverLicenseOn,
        driverLicenseOff as driverLicenseOff,
        taxiDriver as taxiDriver,
        taxiAptitudeCard as taxiAptitudeCard,
        networkCarlssueImg as networkCarlssueImg,
        networkCarlssueOrganization as networkCarlssueOrganization,
        networkCarlssueDate as networkCarlssueDate,
        getNetworkCarProofDate as getNetworkCarProofDate,
        networkCarProofOn as networkCarProofOn,
        networkCarProofOff as networkCarProofOff,
        registerDate as registerDate,
        fullTimeDriver as fullTimeDriver,
        inDriverBlacklist as inDriverBlacklist,
        commercialType as commercialType,
        contractCompany as contractCompany,
        contractOn as contractOn,
        contractOff as contractOff,
        emergencyContact as emergencyContact,
        emergencyContactPhone as emergencyContactPhone,
        emergencyContactAddress as emergencyContactAddress,
        remark as remark,
        isPlatCar as isPlatCar,
        carId as carId,
        authState as authState,
        state as state,
        addType as addType,
        balance as balance,
        flag as flag,
        insertTime as insertTime,
        insertUser as insertUser,
        updateTime as updateTime,
        updateUser as updateUser
        from t_driver
        where flag != 3 and state = 2 and authState = 2
        <if test="null != companyId">
            <choose>
                <when test="companyId != 1">
                    and companyId = #{companyId} or franchiseeId = #{companyId}
                </when>
                <otherwise>
                    and companyId is null or companyId = 0 or companyId = 1 or franchiseeId is null or franchiseeId = 0
                </otherwise>
            </choose>
        </if>
        and id in
        (
        select driverId from t_driver_work where startTime &lt; now() and state = 1 and `type` like CONCAT('%', #{type}, '%')
        )
        and id in (select driverId from t_driver_orders where `type` = #{type})
        and carId in (select carId from t_car_service where `type` = #{type}
        <if test="null != serverCarModelId">
            and serverCarModelId = #{serverCarModelId}
        </if>
        )
    </select>
    <select id="queryOrderDriver" resultType="map">
        select
        b.id as orderId,
        b.state as state,
        a.id as driverId,
        a.`name` as `name`,
        a.headImgUrl as avatar,
        a.phone as phone,
        c.carLicensePlate as carCode,
        CONCAT(F.`name`, d.`name`,  '.', c.carColor) as carName,
        (select sum(fraction) / count(id) from t_order_evaluate where driverId = a.id) as score,
        (
        (select count(id) from t_order_private_car where state in (7, 8, 9) and driverId = a.id) +
        (select count(id) from t_order_taxi where state in (7, 8, 9) and driverId = a.id) +
        (select count(id) from t_order_cross_city where state in (6, 8, 9) and driverId = a.id)
        ) as num,
        DATE_FORMAT(b.startServiceTime, '%m月%d日 %H:%i') as `time`,
        b.startAddress as `start`,
        b.endAddress as `end`
        from t_driver a
        <if test="orderType == 1">
            left join t_order_private_car b on (a.id = b.driverId)
        </if>
        <if test="orderType == 2">
            left join t_order_taxi b on (a.id = b.driverId)
        </if>
        <if test="orderType == 3">
            left join t_order_cross_city b on (a.id = b.driverId)
        </if>
        <if test="orderType == 4">
            left join t_order_tat_order_logisticsxi b on (a.id = b.driverId)
        </if>
        <if test="orderType == 5">
            left join t_order_logistics b on (a.id = b.driverId)
        </if>
        left join t_car c on (b.carId = c.id)
        left join t_car_model d on (c.carModelId = d.id)
        left join t_car_brand f on (d.brandId = f.id)
        where b.id = #{orderId}
    </select>
    <select id="queryDriverInfo" resultType="map">
        select
        a.id as id,
        a.headImgUrl as avatar,
        a.`name` as `name`,
        a.phone as phone,
        a.idCard as idcode,
        b.carLicensePlate as licensePlate,
        b.carColor as carColor,
        CONCAT(d.`name`, c.`name`) as brand,
        if((select count(id) from t_driver_work where state = 1 and driverId = a.id) = 0, 1, if(
        (
        (select count(id) from t_order_private_car where state not in (6, 7, 8, 9, 10, 12) and driverId = a.id) +
        (select count(id) from t_order_taxi where state not in (6, 7, 8, 9, 10, 12) and driverId = a.id) +
        (select count(id) from t_order_cross_city where state not in (6, 7, 8, 9, 10, 12) and driverId = a.id)
        ) = 0, 2, 3)) as state,
        (
        (select count(id) from t_order_private_car where state in (7, 8, 9) and driverId = a.id) +
        (select count(id) from t_order_taxi where state in (7, 8, 9) and driverId = a.id) +
        (select count(id) from t_order_cross_city where state in (6, 8, 9) and driverId = a.id)
        ) as orderNum,
        ((select sum(fraction) from t_order_evaluate where driverId = a.id) / (select count(id) from t_order_evaluate where driverId = a.id)) as fraction
        from t_driver a
        left join t_car b on (a.carId = b.id)
        left join t_car_model c on (b.carModelId = c.id)
        left join t_car_brand d on (c.brandId = d.id)
        where a.id = #{id}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverOrdersMapper.xml
New file
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.DriverOrdersMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.DriverOrders">
        <id column="id" property="id"/>
        <result column="driverId" property="driverId"/>
        <result column="type" property="type"/>
    </resultMap>
    <select id="query" resultType="DriverOrders">
        select
        id as id,
        driverId as driverId,
        `type` as `type`
        from t_driver_orders where driverId = #{uid} and `type` = #{type}
    </select>
    <select id="queryOrders" resultType="int">
        select `type` from t_driver_orders where driverId = #{uid}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverServiceMapper.xml
New file
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.DriverServiceMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.DriverService">
        <id column="id" property="id" />
        <result column="driverId" property="driverId" />
        <result column="type" property="type" />
    </resultMap>
    <select id="queryBusiness" resultType="DriverService">
        select
        id as id,
        driverId as driverId,
        `type` as `type`
        from t_driver_service where driverId = #{uid}
        <if test="null != type">
            and `type` in
            <foreach collection="type" item="item" index="index" open="(" separator="," close=")">
                #{item}
            </foreach>
        </if>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverWorkMapper.xml
New file
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.DriverWorkMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.DriverWork">
        <id column="id" property="id" />
        <result column="driverId" property="driverId" />
        <result column="startTime" property="startTime" />
        <result column="endTime" property="endTime" />
        <result column="type" property="type" />
        <result column="state" property="state" />
    </resultMap>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/ExpenseMapper.xml
New file
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.ExpenseMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Expense">
        <id column="id" property="id" />
        <result column="money" property="money" />
        <result column="desc" property="desc" />
        <result column="createtime" property="createtime" />
        <result column="state" property="state" />
        <result column="userid" property="userid" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, money, desc, createtime, state, userid
    </sql>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/FeedbackMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.FeedbackMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Feedback">
        <id column="id" property="id"/>
        <result column="userId" property="userId"/>
        <result column="handleUserId" property="handleUserId"/>
        <result column="content" property="content"/>
        <result column="insertTime" property="insertTime"/>
        <result column="imgUrl" property="imgUrl"/>
        <result column="flag" property="flag"/>
        <result column="state" property="state"/>
        <result column="cldate" property="cldate"/>
        <result column="remark" property="remark"/>
        <result column="type" property="type"/>
    </resultMap>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/GDInterfaceMapper.xml
New file
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.GDInterfaceMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.GDInterface">
        <id column="id" property="id"/>
        <result column="name" property="name"/>
        <result column="explanation" property="explanation"/>
        <result column="num" property="num"/>
        <result column="time" property="time"/>
    </resultMap>
    <select id="query" resultType="GDInterface">
        select * from t_gdinterface where `name` like #{name} and explanation like #{explanation} and `time` = #{time} limit 0, 1
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/IncomeMapper.xml
New file
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.IncomeMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Income">
        <id column="id" property="id"/>
        <result column="userType" property="userType"/>
        <result column="objectId" property="objectId"/>
        <result column="type" property="type"/>
        <result column="incomeId" property="incomeId"/>
        <result column="orderType" property="orderType"/>
        <result column="money" property="money"/>
        <result column="insertTime" property="insertTime"/>
    </resultMap>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/IntegralGoodsMapper.xml
New file
@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.IntegralGoodsMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.IntegralGoods">
        <id column="id" property="id"/>
        <result column="insertTime" property="insertTime"/>
        <result column="name" property="name"/>
        <result column="imgUrl" property="imgUrl"/>
        <result column="integral" property="integral"/>
        <result column="instructions" property="instructions"/>
        <result column="state" property="state"/>
        <result column="insertUserId" property="insertUserId"/>
        <result column="insertUserRole" property="insertUserRole"/>
    </resultMap>
    <select id="queryGoods" resultType="map">
        select
        id as id,
        `name` as `name`,
        imgUrl as url,
        integral as integral,
        instructions as instructions
        from t_integral_goods where state = 1 order by insertTime desc limit #{pageNum}, #{size}
    </select>
    <select id="queryGoodsInfo" resultType="map">
        select
        id as id,
        `name` as `name`,
        imgUrl as url,
        integral as integral,
        instructions as instructions
        from t_integral_goods where id = #{id}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/IntegralOrderMapper.xml
New file
@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.IntegralOrderMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.IntegralOrder">
        <id column="id" property="id"/>
        <result column="insertTime" property="insertTime"/>
        <result column="userId" property="userId"/>
        <result column="goodsId" property="goodsId"/>
        <result column="integral" property="integral"/>
        <result column="num" property="num"/>
        <result column="consigneeName" property="consigneeName"/>
        <result column="consigneePhone" property="consigneePhone"/>
        <result column="consigneeAddress" property="consigneeAddress"/>
        <result column="remark" property="remark"/>
        <result column="state" property="state"/>
    </resultMap>
    <select id="queryConvertHistory" resultType="map">
        select
        a.id as id,
        b.`name` as `name`,
        DATE_FORMAT(a.insertTime, '%Y-%m-%d %H:%i') as time,
        CONCAT(a.integral * -1, '积分') as integral
        from t_integral_order a
        left join t_integral_goods b on (a.goodsId = b.id)
        where a.state != 3 and a.userId = #{uid}
        order by a.insertTime desc limit #{pageNum}, #{size}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/InvoiceMapper.xml
New file
@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.InvoiceMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Invoice">
        <id column="id" property="id"/>
        <result column="money" property="money"/>
        <result column="orderNum" property="orderNum"/>
        <result column="type" property="type"/>
        <result column="name" property="name"/>
        <result column="code" property="code"/>
        <result column="content" property="content"/>
        <result column="remark" property="remark"/>
        <result column="address" property="address"/>
        <result column="bank" property="bank"/>
        <result column="email" property="email"/>
        <result column="userId" property="userId"/>
        <result column="state" property="state"/>
        <result column="insertTime" property="insertTime"/>
    </resultMap>
    <select id="queryMyInvoice" resultType="Invoice">
        select
        id as id,
        insertTime as insertTime,
        ('电子发票') as type,
        ('出行服务') as content,
        state as state,
        money as money
        from t_invoice where userId = #{uid} order by insertTime desc limit #{pageNum}, #{size}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/LoginLogMapper.xml
New file
@@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.LoginLogMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.LoginLog">
        <id column="id" property="id" />
        <result column="logname" property="logname" />
        <result column="userid" property="userid" />
        <result column="createtime" property="createtime" />
        <result column="succeed" property="succeed" />
        <result column="message" property="message" />
        <result column="ip" property="ip" />
    </resultMap>
    <select id="getLoginLogs" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
        select * from sys_login_log where 1 = 1
        <if test="beginTime != null and beginTime !='' and endTime != null and endTime != ''">
            and (createTime between CONCAT(#{beginTime},' 00:00:00') and CONCAT(#{endTime},' 23:59:59'))
        </if>
        <if test="logName != null and logName !=''">
            and logname like CONCAT('%',#{logName},'%')
        </if>
        <choose>
            <when test="orderByField != null and orderByField !=''">
                <choose>
                    <when test="isAsc == true">
                        order by ${orderByField} ASC
                    </when>
                    <otherwise>
                        order by ${orderByField} DESC
                    </otherwise>
                </choose>
            </when>
            <otherwise>
                order by createtime DESC
            </otherwise>
        </choose>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/MenuMapper.xml
New file
@@ -0,0 +1,177 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.MenuMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Menu">
        <id column="id" property="id" />
        <result column="code" property="code" />
        <result column="pcode" property="pcode" />
        <result column="pcodes" property="pcodes" />
        <result column="name" property="name" />
        <result column="icon" property="icon" />
        <result column="url" property="url" />
        <result column="num" property="num" />
        <result column="levels" property="levels" />
        <result column="ismenu" property="ismenu" />
        <result column="tips" property="tips" />
        <result column="status" property="status" />
        <result column="isopen" property="isopen" />
    </resultMap>
    <sql id="Base_Column_List">
        id, code, pcode, name, icon, url, num, levels,pcodes,
        tips, status,isopen,ismenu
    </sql>
    <select id="selectMenus" resultType="map">
        select
        <include refid="Base_Column_List" />
        from sys_menu
        where status = 1
        <if test="condition != null and condition != ''">
            and (name like CONCAT('%',#{condition},'%') or code like CONCAT('%',#{condition},'%'))
        </if>
        <if test="level != null and level != ''">
            and levels = #{level}
        </if>
    </select>
    <select id="getMenuIdsByRoleId" resultType="long">
        select menuid from
        sys_relation where roleid = #{roleId}
    </select>
    <select id="menuTreeList" resultType="com.stylefeng.guns.core.node.ZTreeNode">
        SELECT
        m1.id AS id,
        (
        CASE
        WHEN (m2.id = 0 OR m2.id IS NULL) THEN
        0
        ELSE
        m2.id
        END
        ) AS pId,
        m1. NAME
        AS NAME,
        (
        CASE
        WHEN (m2.id = 0 OR m2.id IS NULL) THEN
        'true'
        ELSE
        'false'
        END
        ) as isOpen
        FROM
        sys_menu m1
        LEFT join sys_menu m2 ON m1.pcode = m2. CODE
        ORDER BY
        m1.id ASC
    </select>
    <select id="menuTreeListByMenuIds" resultType="com.stylefeng.guns.core.node.ZTreeNode">
        SELECT
        m1.id AS id,
        (
        CASE
        WHEN (m2.id = 0 OR m2.id IS NULL) THEN
        0
        ELSE
        m2.id
        END
        ) AS pId,
        m1. NAME AS NAME,
        (
        CASE
        WHEN (m2.id = 0 OR m2.id IS
        NULL) THEN
        'true'
        ELSE
        'false'
        END
        ) as isOpen,
        (
        CASE
        WHEN (m3.ID = 0 OR m3.ID
        IS NULL) THEN
        'false'
        ELSE
        'true'
        END
        ) "checked"
        FROM
        sys_menu m1
        LEFT JOIN
        sys_menu m2
        ON m1.pcode = m2. CODE
        left join (
        SELECT
        ID
        FROM
        sys_menu
        WHERE
        ID IN
        <foreach collection="list" index="index" item="i" open="("
                 separator="," close=")">
            #{i}
        </foreach>
        ) m3 on m1.id = m3.id
        ORDER BY
        m1.id ASC
    </select>
    <delete id="deleteRelationByMenu">
        delete from sys_relation where menuid = #{menuId}
    </delete>
    <select id="getResUrlsByRoleId" resultType="string">
        select url from
        sys_relation rel
        inner join sys_menu m on rel.menuid = m.id
        where rel.roleid = #{roleId}
    </select>
    <select id="getMenusByRoleIds" resultType="com.stylefeng.guns.core.node.MenuNode">
        SELECT
        m1.id AS id,
        m1.icon AS icon,
        (
        CASE
        WHEN (m2.id = 0 OR m2.id IS NULL) THEN
        0
        ELSE
        m2.id
        END
        ) AS parentId,
        m1.NAME as name,
        m1.url as url,
        m1.levels as levels,
        m1.ismenu as ismenu,
        m1.num as num
        FROM
        sys_menu m1
        LEFT join sys_menu m2 ON m1.pcode = m2. CODE
        INNER JOIN (
        SELECT
        ID
        FROM
        sys_menu
        WHERE
        ID IN (
        SELECT
        menuid
        FROM
        sys_relation rela
        WHERE
        rela.roleid IN
        <foreach collection="list" index="index" item="i" open="(" separator="," close=")">
            #{i}
        </foreach>
        )
        ) m3 ON m1.id = m3.id
        where m1.ismenu = 1
        order by levels,num asc
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/NoticeMapper.xml
New file
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.NoticeMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Notice">
        <id column="id" property="id"/>
        <result column="title" property="title"/>
        <result column="type" property="type"/>
        <result column="content" property="content"/>
        <result column="createtime" property="createtime"/>
        <result column="creater" property="creater"/>
    </resultMap>
    <select id="list" resultType="map">
        select * from sys_notice
        <if test="condition != null and condition != ''">
            where title like CONCAT('%',#{condition},'%') or content like CONCAT('%',#{condition},'%')
        </if>
        order by createtime DESC
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OpenCityBusinessMapper.xml
New file
@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.OpenCityBusinessMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.OpenCityBusiness">
        <id column="id" property="id"/>
        <result column="openCityId" property="openCityId"/>
        <result column="businessType" property="businessType"/>
        <result column="sort" property="sort"/>
        <result column="flag" property="flag"/>
        <result column="insertTime" property="insertTime"/>
        <result column="insertUser" property="insertUser"/>
        <result column="updateTime" property="updateTime"/>
        <result column="updateUser" property="updateUser"/>
    </resultMap>
    <select id="queryBusiness" resultType="OpenCityBusiness">
        select
        a.id as id,
        a.openCityId as openCityId,
        a.businessType as businessType,
        a.sort as sort,
        a.flag as flag,
        a.insertTime as insertTime,
        a.insertUser as insertUser,
        a.updateTime as updateTime,
        a.updateUser as updateUser
        from t_open_city_business a
        left join t_open_city b on (a.openCityId = b.id)
        where a.flag != 3 and b.flag != 3
        <if test="null != district">
            and b.provinceName = #{district}
        </if>
        <if test="null != city">
            and b.cityName = #{city}
        </if>
        <if test="null != province">
            and b.areaName = #{province}
        </if>
        order by a.sort
    </select>
    <select id="queryBusinessById" resultType="OpenCityBusiness">
        select
        id as id,
        openCityId as openCityId,
        businessType as businessType,
        sort as sort,
        flag as flag,
        insertTime as insertTime,
        insertUser as insertUser,
        updateTime as updateTime,
        updateUser as updateUser
        from t_open_city_business
        where flag != 3 and openCityId = #{id} order by sort
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OpenCityMapper.xml
New file
@@ -0,0 +1,61 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.OpenCityMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.OpenCity">
        <id column="id" property="id"/>
        <result column="code" property="code"/>
        <result column="lon" property="lon"/>
        <result column="lat" property="lat"/>
        <result column="isQualifications" property="isQualifications"/>
        <result column="areaName" property="areaName"/>
        <result column="cityName" property="cityName"/>
        <result column="provinceName" property="provinceName"/>
        <result column="flag" property="flag"/>
        <result column="insertTime" property="insertTime"/>
        <result column="insertUser" property="insertUser"/>
        <result column="updateTime" property="updateTime"/>
        <result column="updateUser" property="updateUser"/>
    </resultMap>
    <select id="queryOpenCity" resultType="OpenCity">
        select
        id as id,
        code as code,
        lon as lon,
        lat as lat,
        isQualifications as isQualifications,
        areaName as areaName,
        cityName as cityName,
        provinceName as provinceName,
        flag as flag,
        insertTime as insertTime,
        insertUser as insertUser,
        updateTime as updateTime,
        updateUser as updateUser
        from t_open_city where flag = 1
    </select>
    <select id="queryByCode" resultType="OpenCity">
        select
        id as id,
        code as code,
        lon as lon,
        lat as lat,
        isQualifications as isQualifications,
        areaName as areaName,
        cityName as cityName,
        provinceName as provinceName,
        flag as flag,
        insertTime as insertTime,
        insertUser as insertUser,
        updateTime as updateTime,
        updateUser as updateUser
        from t_open_city where flag = 1 and code = #{code}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OperationLogMapper.xml
New file
@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.OperationLogMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.OperationLog">
        <id column="id" property="id" />
        <result column="logtype" property="logtype" />
        <result column="logname" property="logname" />
        <result column="userid" property="userid" />
        <result column="classname" property="classname" />
        <result column="method" property="method" />
        <result column="createtime" property="createtime" />
        <result column="succeed" property="succeed" />
        <result column="message" property="message" />
    </resultMap>
    <select id="getOperationLogs" resultType="map">
        select * from sys_operation_log where 1 = 1
        <if test="beginTime != null and beginTime !='' and endTime != null and endTime != ''">
            and (createTime between CONCAT(#{beginTime},' 00:00:00') and CONCAT(#{endTime},' 23:59:59'))
        </if>
        <if test="logName != null and logName !=''">
            and logname like CONCAT('%',#{logName},'%')
        </if>
        <if test="logType != null and logType !=''">
            and logtype like CONCAT('%',#{logType},'%')
        </if>
        <choose>
            <when test="orderByField != null and orderByField !=''">
                <choose>
                    <when test="isAsc == true">
                        order by ${orderByField} ASC
                    </when>
                    <otherwise>
                        order by ${orderByField} DESC
                    </otherwise>
                </choose>
            </when>
            <otherwise>
                order by createtime DESC
            </otherwise>
        </choose>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OrderCancelMapper.xml
New file
@@ -0,0 +1,70 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.OrderCancelMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.OrderCancel">
        <id column="id" property="id"/>
        <result column="orderId" property="orderId"/>
        <result column="orderType" property="orderType"/>
        <result column="reason" property="reason"/>
        <result column="remark" property="remark"/>
        <result column="payType" property="payType"/>
        <result column="money" property="money"/>
        <result column="state" property="state"/>
        <result column="insertTime" property="insertTime"/>
        <result column="userType" property="userType"/>
        <result column="userId" property="userId"/>
    </resultMap>
    <select id="query" resultType="OrderCancel">
        select
        id as id,
        orderId as orderId,
        orderType as orderType,
        reason as reason,
        remark as remark,
        payType as payType,
        money as money,
        state as state,
        insertTime as insertTime,
        userType as userType,
        userId as userId
        from t_order_cancel where 1 = 1
        <if test="null != orderId">
            and orderId = #{orderId}
        </if>
        <if test="null != orderType">
            and orderType = #{orderType}
        </if>
        <if test="null != money">
            and money = #{money}
        </if>
        <if test="null != payType">
            and payType = #{payType}
        </if>
        <if test="null != state">
            and state = #{state}
        </if>
        order by insertTime desc limit 0,1
    </select>
    <select id="queryCancel" resultType="map">
        select
        (money * -1) as money,
        DATE_FORMAT(insertTime, '%Y-%m-%d %H:%i') as time,
        CONCAT(if(orderType = 1, '专车', if(orderType = 2, '出租车', if(orderType = 3, '跨城', if(orderType = 4, '同城小件物流', if(orderType = 5, '跨城小件物流', '包车'))))), '订单取消') as name,
        UNIX_TIMESTAMP(insertTime) as insertTime
        from t_order_cancel where state = 2 and userType = 1 and money is not null and userId = #{uid}
        <choose>
            <when test="1 == isPay">
                and money is null
            </when>
            <otherwise>
                and money is not null
            </otherwise>
        </choose>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OrderEvaluateMapper.xml
New file
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.OrderEvaluateMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.OrderEvaluate">
        <id column="id" property="id"/>
        <result column="orderId" property="orderId"/>
        <result column="driverId" property="driverId"/>
        <result column="orderType" property="orderType"/>
        <result column="fraction" property="fraction"/>
        <result column="content" property="content"/>
        <result column="insertTime" property="insertTime"/>
        <result column="userId" property="userId"/>
    </resultMap>
    <select id="queryOrderEvaluate" resultType="map">
        select
        DATE_FORMAT(insertTime, '%Y-%m-%d %H:%i') as time,
        content as content,
        fraction as fraction
        from t_order_evaluate where driverId = #{driverId} and unix_timestamp(insertTime) &lt; unix_timestamp(now()) - 86400 order by insertTime desc limit #{pageNum}, #{size}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/OrderPositionMapper.xml
New file
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.OrderPositionMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.OrderPosition">
        <id column="id" property="id"/>
        <result column="orderType" property="orderType"/>
        <result column="orderId" property="orderId"/>
        <result column="driverId" property="driverId"/>
        <result column="lon" property="lon"/>
        <result column="lat" property="lat"/>
        <result column="directionAngle" property="directionAngle"/>
        <result column="altitude" property="altitude"/>
        <result column="insertTime" property="insertTime"/>
    </resultMap>
    <select id="queryTrack" resultType="map">
        select
        lon as lon,
        lat as lat
        from t_order_position where orderId = #{orderId} and orderType = #{orderType} order by insertTime
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/PhoneMapper.xml
New file
@@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.PhoneMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Phone">
        <id column="id" property="id" />
        <result column="type" property="type" />
        <result column="platform" property="platform"/>
        <result column="phone" property="phone" />
        <result column="companyId" property="companyId"/>
    </resultMap>
    <select id="queryPhones" resultType="Phone">
        select
        id as id,
        type as type,
        platform as platform,
        phone as phone,
        companyId as companyId
        from t_phone where companyId in (
        select companyId from t_company_city where state = 1
        <if test="null != province">
            and provinceCode = #{province}
        </if>
        <if test="null != city">
            and cityCode = #{city}
        </if>
        <if test="null != code">
            and areaCode = #{code}
        </if>
        )
    </select>
    <select id="query" resultType="Phone">
        select
        id as id,
        type as type,
        platform as platform,
        phone as phone,
        companyId as companyId
        from t_phone where 1 = 1
        <if test="null != type">
            and type = #{type}
        </if>
        <if test="null != platform">
            and platform = #{platform}
        </if>
        <if test="platform != 1">
            and companyId in (
            select companyId from t_company_city where state = 1
            <if test="null != province">
                and provinceCode = #{province}
            </if>
            <if test="null != city">
                and cityCode = #{city}
            </if>
            <if test="null != code">
                and areaCode = #{code}
            </if>
            )
        </if>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/ProblemMapper.xml
New file
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.ProblemMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Problem">
        <id column="id" property="id"/>
        <result column="userId" property="userId"/>
        <result column="content" property="content"/>
        <result column="answer" property="answer"/>
        <result column="handleUserId" property="handleUserId"/>
        <result column="handleTime" property="handleTime"/>
        <result column="insertTime" property="insertTime"/>
        <result column="state" property="state"/>
    </resultMap>
    <select id="queryProblems" resultType="map">
        select
        id as id,
        DATE_FORMAT(insertTime, '%Y.%m.%d %H:%i') as insertTime,
        content as content,
        answer as answer
        from t_problem where userId = #{uid} order by insertTime desc limit #{pageNum}, #{size}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/PushOrderMapper.xml
New file
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.PushOrderMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.PushOrder">
        <id column="id" property="id"/>
        <result column="companyId" property="companyId"/>
        <result column="pushDistance" property="pushDistance"/>
        <result column="pushTime" property="pushTime"/>
        <result column="driverProportion" property="driverProportion"/>
        <result column="type" property="type"/>
        <result column="pushType" property="pushType"/>
    </resultMap>
    <select id="querys" resultType="PushOrder">
        select
        id as id,
        companyId as companyId,
        pushDistance as pushDistance,
        pushTime as pushTime,
        driverProportion as driverProportion,
        `type` as `type`,
        pushType as pushType
        from t_sys_push_order where companyId = #{companyId}
        <if test="null != type">
            and `type` = #{type}
        </if>
        <if test="null != pushType">
            and pushType = #{pushType}
        </if>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/RedPacketRecordMapper.xml
New file
@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.RedPacketRecordMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.RedPacketRecord">
        <id column="id" property="id"/>
        <result column="money" property="money"/>
        <result column="insert_time" property="insertTime"/>
        <result column="companyId" property="companyId"/>
        <result column="name" property="name"/>
        <result column="type" property="type"/>
        <result column="totalMoney" property="totalMoney"/>
        <result column="laveMoney" property="laveMoney"/>
        <result column="startMoney" property="startMoney"/>
        <result column="endMoney" property="endMoney"/>
    </resultMap>
    <select id="queryDate" resultType="RedPacketRecord">
        select
        id as id,
        money as money,
        insert_time as insertTime,
        companyId as companyId,
        name as name,
        type as type,
        totalMoney as totalMoney,
        laveMoney as laveMoney,
        startMoney as startMoney,
        endMoney as endMoney
        from t_sys_red_packet_record a where laveMoney != 0 and companyId = #{companyId} limit 0,1
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/RegionMapper.xml
New file
@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.RegionMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Region">
        <id column="id" property="id" />
        <result column="name" property="name" />
        <result column="code" property="code" />
        <result column="citycode" property="citycode" />
        <result column="parent_id" property="parentId" />
        <result column="english" property="english" />
    </resultMap>
    <select id="query" resultType="Region">
        select
        id as id,
        name as name,
        code as code,
        citycode as citycode,
        parent_id as parentId,
        english as english
        from t_region where code = #{code}
    </select>
    <select id="querys" resultType="Region">
        select
        id as id,
        name as name,
        code as code,
        citycode as citycode,
        parent_id as parentId,
        english as english
        from t_region where parent_id = #{parentId} order by code
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/RelationMapper.xml
New file
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.RelationMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Relation">
        <id column="id" property="id" />
        <result column="menuid" property="menuid" />
        <result column="roleid" property="roleid" />
    </resultMap>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/RoleMapper.xml
New file
@@ -0,0 +1,79 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.RoleMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Role">
        <id column="id" property="id" />
        <result column="num" property="num" />
        <result column="pid" property="pid" />
        <result column="name" property="name" />
        <result column="deptid" property="deptid" />
        <result column="tips" property="tips" />
        <result column="version" property="version" />
    </resultMap>
    <sql id="Base_Column_List">
        id, num, pid, name, deptid, tips, version
    </sql>
    <select id="selectRoles" resultType="map">
        select
        <include refid="Base_Column_List" />
        from sys_role
        <if test="condition != null">
            where name like CONCAT('%',#{condition},'%')
        </if>
    </select>
    <delete id="deleteRolesById">
        delete from sys_relation where roleid = #{roleId}
    </delete>
    <select id="roleTreeList" resultType="com.stylefeng.guns.core.node.ZTreeNode">
        select id "id",pId
        "pId",name as "name",(case when (pId=0 or pId is null) then 'true'
        else 'false' end) "open" from sys_role
    </select>
    <select id="roleTreeListByRoleId" resultType="com.stylefeng.guns.core.node.ZTreeNode">
        SELECT
        r.id "id",
        pId "pId",
        NAME AS "name",
        (
        CASE
        WHEN (pId = 0 OR pId IS NULL) THEN
        'true'
        ELSE
        'false'
        END
        ) "open",
        (
        CASE
        WHEN (r1.ID = 0 OR r1.ID IS NULL) THEN
        'false'
        ELSE
        'true'
        END
        ) "checked"
        FROM
        sys_role r
        LEFT JOIN (
        SELECT
        ID
        FROM
        sys_role
        WHERE
        ID IN
        <foreach collection="array" index="index" item="i" open="(" separator="," close=")">
            #{i}
        </foreach>
        ) r1 ON r.ID = r1.ID
        ORDER BY
        pId,
        num ASC
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SensitiveWordsMapper.xml
New file
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.SensitiveWordsMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.SensitiveWords">
        <id column="id" property="id" />
        <result column="createTime" property="createTime" />
        <result column="content" property="content" />
    </resultMap>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/ServerCarModelMapper.xml
New file
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.ServerCarModelMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.ServerCarModel">
        <id column="id" property="id"/>
        <result column="type" property="type"/>
        <result column="name" property="name"/>
        <result column="img" property="img"/>
        <result column="price" property="price"/>
        <result column="state" property="state"/>
        <result column="insertTime" property="insertTime"/>
    </resultMap>
    <select id="queryServerCarModel" resultType="map">
        select
        id as id,
        `name` as `name`,
        img as img,
        price as price
        from t_server_carmodel where state = 1 and `type` = #{type}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SmsrecordMapper.xml
New file
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.SmsrecordMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Smsrecord">
        <id column="id" property="id"/>
        <result column="type" property="type"/>
        <result column="phone" property="phone"/>
        <result column="code" property="code"/>
        <result column="content" property="content"/>
        <result column="insertTime" property="insertTime"/>
    </resultMap>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SysIntegralMapper.xml
New file
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.SysIntegralMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.SysIntegral">
        <id column="id" property="id" />
        <result column="companyId" property="companyId" />
        <result column="integral" property="integral" />
    </resultMap>
    <select id="query" resultType="SysIntegral">
        select * from t_sys_integral where companyId = #{companyId}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SystemNoticeMapper.xml
New file
@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.SystemNoticeMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.SystemNotice">
        <id column="id" property="id"/>
        <result column="type" property="type"/>
        <result column="noticeType" property="noticeType"/>
        <result column="userType" property="userType"/>
        <result column="noticesId" property="noticesId"/>
        <result column="content" property="content"/>
        <result column="userId" property="userId"/>
        <result column="insertTime" property="insertTime"/>
        <result column="read" property="read"/>
    </resultMap>
    <select id="queryNoReadNoticeNum" resultType="int">
        select count(id) from t_system_notice where userType = 1 and userId = #{uid} and `read` = 1
    </select>
    <select id="queryList" resultType="map">
        select
        id as id,
        noticeType as noticeType,
        `type` as `type`,
        content as content,
        DATE_FORMAT(insertTime, '%Y-%m-%d %H:%i') as `time`,
        `read` as `read`
        from t_system_notice where `type` = 2 and userType = 1 and userId = #{uid} order by insertTime desc limit #{pageNum}, #{size}
    </select>
    <update id="readSystemNotice">
        update t_system_notice set `read` = 2 where id = #{id} and userId = #{uid} and userType = 1
    </update>
    <delete id="delSystemNotice">
        delete from t_system_notice where userType = 1
        <if test="null != uid">
            and userId = #{uid}
        </if>
        <if test="null != id">
            and id = #{id}
        </if>
    </delete>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SystemPriceMapper.xml
New file
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.SystemPriceMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.SystemPrice">
        <id column="id" property="id"/>
        <result column="type" property="type"/>
        <result column="companyId" property="companyId"/>
        <result column="serverCarModelId" property="serverCarModelId"/>
        <result column="content" property="content"/>
    </resultMap>
    <select id="query" resultType="map">
        select
        id as id,
        content as content
        from t_system_price where companyId = #{companyId}
        <if test="null != type">
            and `type` = #{type}
        </if>
        <if test="null != serverCarModelId">
            and serverCarModelId = #{serverCarModelId}
        </if>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TNoticesMapper.xml
New file
@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.TNoticesMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.TNotices">
        <id column="id" property="id"/>
        <result column="title" property="title"/>
        <result column="content" property="content"/>
        <result column="sort" property="sort"/>
        <result column="isShow" property="isShow"/>
        <result column="isBroadcast" property="isBroadcast"/>
        <result column="type" property="type"/>
        <result column="imgUrl" property="imgUrl"/>
        <result column="isDelete" property="isDelete"/>
        <result column="isUser" property="isUser"/>
        <result column="isDriver" property="isDriver"/>
        <result column="flag" property="flag"/>
        <result column="insertTime" property="insertTime"/>
        <result column="insertUser" property="insertUser"/>
        <result column="updateTime" property="updateTime"/>
        <result column="updateUser" property="updateUser"/>
    </resultMap>
    <select id="queryNotices" resultType="com.stylefeng.guns.modular.system.model.TNotices">
        select
        id as id,
        title as title,
        content as content,
        sort as sort,
        isShow as isShow,
        isBroadcast as isBroadcast,
        `type` as `type`,
        imgUrl as imgUrl,
        flag as flag,
        insertTime as insertTime,
        insertUser as insertUser,
        updateTime as updateTime,
        updateUser as updateUser
        from t_notices where flag != 3 and isDelete = 1 and `type` = #{type}
        <if test="type == 2">
            and isBroadcast = 1
        </if>
        <if test="type == 1">
            and isShow = 1
        </if>
    </select>
    <select id="queryList" resultType="map">
        select
        b.id as id,
        a.title as title,
        a.content as content,
        (1) as `type`,
        a.imgUrl as img,
        DATE_FORMAT(b.insertTime, '%Y-%m-%d %H:%i') as `time`,
        b.`read` as `read`
        from t_notices a
        left join t_system_notice b on (a.id = b.noticesId)
        where a.`type` = 2 and a.flag != 3 and a.isShow = 1 and b.type = 1 and b.userType = 1
        and b.userId = #{uid} order by b.insertTime desc limit #{pageNum}, #{size}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserActivityBalanceMapper.xml
New file
@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.UserActivityBalanceMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.UserActivityBalance">
        <id column="id" property="id"/>
        <result column="enable" property="enable"/>
        <result column="userActivityId" property="userActivityId"/>
        <result column="money" property="money"/>
        <result column="generalNum" property="generalNum"/>
        <result column="generalCouponId" property="generalCouponId"/>
        <result column="specialNum" property="specialNum"/>
        <result column="specialCouponId" property="specialCouponId"/>
        <result column="taxiNum" property="taxiNum"/>
        <result column="taxiCouponId" property="taxiCouponId"/>
        <result column="intercityNum" property="intercityNum"/>
        <result column="intercityCouponId" property="intercityCouponId"/>
        <result column="insertTime" property="insertTime"/>
        <result column="startTime" property="startTime"/>
        <result column="endTime" property="endTime"/>
        <result column="totalPrice" property="totalPrice"/>
        <result column="lavePrice" property="lavePrice"/>
    </resultMap>
    <select id="query" resultType="map">
        select
        a.id as id,
        a.generalNum as generalNum,
        a.specialNum as specialNum,
        a.taxiNum as taxiNum,
        a.intercityNum as intercityNum,
        b.id as bId,
        c.id as cId,
        d.id as dId,
        e.id as eId,
        b.companyId as bcompanyId,
        c.companyId as ccompanyId,
        d.companyId as dcompanyId,
        e.companyId as ecompanyId,
        b.money as bmoney,
        c.money as cmoney,
        d.money as dmoney,
        e.money as emoney,
        b.fullMoney as bfullMoney,
        c.fullMoney as cfullMoney,
        d.fullMoney as dfullMoney,
        e.fullMoney as efullMoney,
        b.couponUseType as bcouponUseType,
        c.couponUseType as ccouponUseType,
        d.couponUseType as dcouponUseType,
        e.couponUseType as ecouponUseType,
        b.couponType as bcouponType,
        c.couponType as ccouponType,
        d.couponType as dcouponType,
        e.couponType as ecouponType,
        a.effective as beffective,
        a.effective as ceffective,
        a.effective as deffective,
        a.effective as eeffective,
        a.totalPrice as totalPrice,
        a.lavePrice as lavePrice
        from t_user_activity_balance a
        left join t_sys_coupon_record b on (a.generalCouponId = b.id)
        left join t_sys_coupon_record c on (a.specialCouponId = c.id)
        left join t_sys_coupon_record d on (a.taxiCouponId = d.id)
        left join t_sys_coupon_record e on (a.intercityCouponId = e.id)
        left join t_user_activity f on (a.userActivityId = f.id)
        where a.`enable` = 2 and f.status = 3 and now() between a.startTime and a.endTime and a.money &lt;= #{money}
        and b.companyId = #{companyId} and c.companyId = #{companyId} and d.companyId = #{companyId} and e.companyId = #{companyId}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserActivityDiscount1Mapper.xml
New file
@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.UserActivityDiscount1Mapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.UserActivityDiscount1">
        <id column="id" property="id"/>
        <result column="userActivityId" property="userActivityId"/>
        <result column="special" property="special"/>
        <result column="taxi" property="taxi"/>
        <result column="logistics" property="logistics"/>
        <result column="startTime" property="startTime"/>
        <result column="endTime" property="endTime"/>
        <result column="enable" property="enable"/>
    </resultMap>
    <select id="query" resultType="UserActivityDiscount1">
        select
        a.id as id,
        a.userActivityId as userActivityId,
        a.special as special,
        a.taxi as taxi,
        a.logistics as logistics,
        a.startTime as startTime,
        a.endTime as endTime,
        a.`enable` as `enable`
        from t_user_activity_discount1 a
        left join t_user_activity b on (a.userActivityId = b.id)
        where now() between a.startTime and a.endTime and b.`status` = 3 and b.companyId = #{companyId} order by b.insertTime desc limit 0,1
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserActivityInviteMapper.xml
New file
@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.UserActivityInviteMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.UserActivityInvite">
        <id column="id" property="id"/>
        <result column="userActivityId" property="userActivityId"/>
        <result column="couponId" property="couponId"/>
        <result column="totalNum" property="totalNum"/>
        <result column="startTime" property="startTime"/>
        <result column="endTime" property="endTime"/>
        <result column="enable" property="enable"/>
        <result column="effective" property="effective"/>
        <result column="totalPrice" property="totalPrice"/>
        <result column="lavePrice" property="lavePrice"/>
    </resultMap>
    <select id="query" resultType="map">
        select
        a.id as id,
        a.userActivityId as userActivityId,
        a.couponId as couponId,
        a.totalNum as totalNum,
        a.startTime as startTime,
        a.endTime as endTime,
        a.enable as enable,
        a.effective as effective,
        c.money as money,
        c.fullMoney as fullMoney,
        c.couponUseType as couponUseType,
        c.couponType as couponType,
        a.totalPrice as totalPrice,
        a.lavePrice as lavePrice
        from t_user_activity_invite a
        left join t_user_activity b on (a.userActivityId = b.id)
        left join t_sys_coupon_record c on (a.couponId = c.id)
        where now() between a.startTime and a.endTime and a.enable = 2 and b.status = 3 and b.companyId = #{companyId}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserActivityRedenvelopeMapper.xml
New file
@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.UserActivityRedenvelopeMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.UserActivityRedenvelope">
        <id column="id" property="id"/>
        <result column="userActivityId" property="userActivityId"/>
        <result column="redEnvelopeId" property="redEnvelopeId"/>
        <result column="totalMoney" property="totalMoney"/>
        <result column="laveMoney" property="laveMoney"/>
        <result column="startTime" property="startTime"/>
        <result column="endTime" property="endTime"/>
        <result column="enable" property="enable"/>
        <result column="totalPrice" property="totalPrice"/>
        <result column="lavePrice" property="lavePrice"/>
    </resultMap>
    <select id="query" resultType="map">
        select
        a.id as id,
        a.laveMoney as laveMoney,
        a.userActivityId as userActivityId,
        b.money as money,
        b.`type` as `type`,
        b.startMoney as startMoney,
        b.endMoney as endMoney,
        b.companyId as companyId,
        b.effective as effective,
        a.totalPrice as totalPrice,
        a.lavePrice as lavePrice
        from t_user_activity_redenvelope a
        left join t_sys_red_packet_record b on (a.redEnvelopeId = b.id)
        left join t_user_activity c on (a.userActivityId = c.id)
        where a.`enable` = 2 and c.status = 3 and #{travelTime} between a.startTime and a.endTime and a.laveMoney > 0 and b.companyId = #{companyId} limit 0,1
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserActivityRegisteredMapper.xml
New file
@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.UserActivityRegisteredMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.UserActivityRegistered">
        <id column="id" property="id"/>
        <result column="userActivityId" property="userActivityId"/>
        <result column="couponId" property="couponId"/>
        <result column="totalNum" property="totalNum"/>
        <result column="laveNum" property="laveNum"/>
        <result column="startTime" property="startTime"/>
        <result column="endTime" property="endTime"/>
        <result column="enable" property="enable"/>
        <result column="totalPrice" property="totalPrice"/>
        <result column="lavePrice" property="lavePrice"/>
    </resultMap>
    <select id="query" resultType="map">
        select
        a.id as id,
        a.userActivityId as userActivityId,
        a.couponId as couponId,
        a.totalNum as totalNum,
        a.laveNum as laveNum,
        a.startTime as startTime,
        a.endTime as endTime,
        a.`enable` as `enable`,
        b.money as money,
        b.fullMoney as fullMoney,
        b.companyId as companyId,
        b.couponUseType as couponUseType,
        b.couponType as couponType,
        a.effective as effective,
        a.totalPrice as totalPrice,
        a.lavePrice as lavePrice
        from t_user_activity_registered a
        left join t_sys_coupon_record b on (a.couponId = b.id)
        left join t_user_activity c on (a.userActivityId = c.id)
        where now() between a.startTime and a.endTime and a.laveNum > 0 and a.`enable` = 2 and  b.companyId = #{companyId} and c.`status` = 3
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserCouponRecordMapper.xml
New file
@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.UserCouponRecordMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.UserCouponRecord">
        <id column="id" property="id"/>
        <result column="money" property="money"/>
        <result column="fullMoney" property="fullMoney"/>
        <result column="expirationTime" property="expirationTime"/>
        <result column="insertTime" property="insertTime"/>
        <result column="companyId" property="companyId"/>
        <result column="state" property="state"/>
        <result column="endTime" property="endTime"/>
        <result column="couponUseType" property="couponUseType"/>
        <result column="couponType" property="couponType"/>
        <result column="userId" property="userId"/>
        <result column="couponId" property="couponId"/>
        <result column="couponActivityId" property="couponActivityId"/>
        <result column="activityType" property="activityType"/>
        <result column="paymentRecordId" property="paymentRecordId"/>
    </resultMap>
    <select id="queryAvailable" resultType="int">
        select
        count(a.id)
        from t_user_coupon_record a
        left join t_company b on (a.companyId = b.id)
        where a.expirationTime >= now()
        <if test="null != uid">
            and a.userId = #{uid}
        </if>
        <if test="null != companyId">
            and a.companyId = #{companyId}
        </if>
        <if test="null != state">
            and a.state = #{state}
        </if>
        <if test="null != couponUseType">
            and a.couponUseType = #{couponUseType}
        </if>
        <if test="null != money">
            and if(a.couponType = 1, a.money &lt;= #{money}, a.fullMoney &lt;= #{money})
        </if>
    </select>
    <select id="queryCoupon" resultType="map">
        select
        a.id as id,
        a.money as money,
        a.couponUseType as userType,
        DATE_FORMAT(a.expirationTime, '%Y-%m-%d') as time,
        a.couponType as `type`,
        a.fullMoney as fullMoney,
        a.state as state,
        b.`name` as `name`
        from t_user_coupon_record a
        left join t_company b on (a.companyId = b.id)
        where a.expirationTime >= now()
        <if test="null != uid">
            and a.userId = #{uid}
        </if>
        <if test="null != companyId">
            and a.companyId = #{companyId}
        </if>
        <if test="null != state">
            and a.state = #{state}
        </if>
        <if test="null != couponUseType">
            and a.couponUseType = #{couponUseType}
        </if>
        <if test="null != money">
            and if(a.couponType = 1, a.money &lt;= #{money}, a.fullMoney &lt;= #{money})
        </if>
        order by a.insertTime desc
        <if test="null != pageNum and null != size">
            limit #{pageNum}, #{size}
        </if>
    </select>
    <select id="queryMyCoupons" resultType="map">
        select
        a.id as id,
        a.money as money,
        a.couponUseType as userType,
        DATE_FORMAT(a.expirationTime, '%Y-%m-%d') as time,
        a.couponType as `type`,
        a.fullMoney as fullMoney,
        a.state as state,
        b.`name` as `name`
        from t_user_coupon_record a
        left join t_company b on (a.companyId = b.id)
        where 1 = 1
        <if test="null != uid">
            and a.userId = #{uid}
        </if>
        <if test="null != state">
            <if test="state == 1">
                and a.state = 1
            </if>
            <if test="state == 2">
                and a.state in (2,3)
            </if>
        </if>
        order by a.insertTime desc
        <if test="null != pageNum and null != size">
            limit #{pageNum}, #{size}
        </if>
    </select>
    <update id="updateTimeOut">
        update t_user_coupon_record set state = 3,endTime = now() where now() > expirationTime and state = 1
    </update>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserInfoMapper.xml
New file
@@ -0,0 +1,192 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.UserInfoMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.UserInfo">
        <id column="id" property="id"/>
        <result column="companyId" property="companyId"/>
        <result column="registIp" property="registIp"/>
        <result column="registAreaCode" property="registAreaCode"/>
        <result column="phone" property="phone"/>
        <result column="nickName" property="nickName"/>
        <result column="avatar" property="avatar"/>
        <result column="birthday" property="birthday"/>
        <result column="sex" property="sex"/>
        <result column="emergencyContact" property="emergencyContact"/>
        <result column="emergencyContactNumber" property="emergencyContactNumber"/>
        <result column="isAuth" property="isAuth"/>
        <result column="name" property="name"/>
        <result column="idCard" property="idCard"/>
        <result column="idCardFront" property="idCardFront"/>
        <result column="idCardReverse" property="idCardReverse"/>
        <result column="consumption" property="consumption"/>
        <result column="balance" property="balance"/>
        <result column="integral" property="integral"/>
        <result column="passWord" property="passWord"/>
        <result column="openId" property="openId"/>
        <result column="appletsOpenId" property="appletsOpenId"/>
        <result column="unionid" property="unionid"/>
        <result column="remark" property="remark"/>
        <result column="state" property="state"/>
        <result column="flag" property="flag"/>
        <result column="insertTime" property="insertTime"/>
        <result column="insertUser" property="insertUser"/>
        <result column="updateTime" property="updateTime"/>
        <result column="updateUser" property="updateUser"/>
    </resultMap>
    <select id="queryByPhone" resultType="UserInfo">
        select
        id as id,
        registIp as registIp,
        registAreaCode as registAreaCode,
        phone as phone,
        nickName as nickName,
        avatar as avatar,
        birthday as birthday,
        sex as sex,
        emergencyContact as emergencyContact,
        emergencyContactNumber as emergencyContactNumber,
        isAuth as isAuth,
        name as name,
        idCard as idCard,
        idCardFront as idCardFront,
        idCardReverse as idCardReverse,
        consumption as consumption,
        balance as balance,
        integral as integral,
        passWord as passWord,
        openId as openId,
        appletsOpenId as appletsOpenId,
        unionid as unionid,
        state as state,
        flag as flag,
        insertTime as insertTime,
        insertUser as insertUser,
        updateTime as updateTime,
        updateUser as updateUser,
        isBlack as isBlack
        from t_user where flag != 3 and phone = #{phone}
    </select>
    <select id="queryByOpenid" resultType="UserInfo">
        select
        id as id,
        registIp as registIp,
        registAreaCode as registAreaCode,
        phone as phone,
        nickName as nickName,
        avatar as avatar,
        birthday as birthday,
        sex as sex,
        emergencyContact as emergencyContact,
        emergencyContactNumber as emergencyContactNumber,
        isAuth as isAuth,
        name as name,
        idCard as idCard,
        idCardFront as idCardFront,
        idCardReverse as idCardReverse,
        consumption as consumption,
        balance as balance,
        integral as integral,
        passWord as passWord,
        openId as openId,
        appletsOpenId as appletsOpenId,
        unionid as unionid,
        state as state,
        flag as flag,
        insertTime as insertTime,
        insertUser as insertUser,
        updateTime as updateTime,
        updateUser as updateUser
        from t_user where flag != 3
        <if test="null != openid">
            and openId = #{openid}
        </if>
    </select>
    <select id="queryByOpenid2" resultType="UserInfo">
        select
        id as id,
        registIp as registIp,
        registAreaCode as registAreaCode,
        phone as phone,
        nickName as nickName,
        avatar as avatar,
        birthday as birthday,
        sex as sex,
        emergencyContact as emergencyContact,
        emergencyContactNumber as emergencyContactNumber,
        isAuth as isAuth,
        name as name,
        idCard as idCard,
        idCardFront as idCardFront,
        idCardReverse as idCardReverse,
        consumption as consumption,
        balance as balance,
        integral as integral,
        passWord as passWord,
        openId as openId,
        appletsOpenId as appletsOpenId,
        unionid as unionid,
        state as state,
        flag as flag,
        insertTime as insertTime,
        insertUser as insertUser,
        updateTime as updateTime,
        updateUser as updateUser
        from t_user where flag != 3
        <if test="null != openid">
            and appletsOpenId = #{openid}
        </if>
    </select>
    <select id="queryUserInfo" resultType="map">
        select
        a.id as id,
        a.phone as phone,
        a.nickName as nickName,
        a.avatar as avatar,
        DATE_FORMAT(a.birthday, '%Y-%m-%d') as birthday,
        a.sex as sex,
        a.isAuth as isAuth,
        (select state from t_verified where userId = a.id order by insertTime desc limit 0,1) as verified,
        a.name as name,
        a.integral as integral,
        a.emergencyContact as emergencyContact,
        a.emergencyContactNumber as emergencyContactNumber,
        a.balance as balance
        from t_user a where 1 = 1
        <if test="null != uid">
            and a.id = #{uid}
        </if>
        <if test="null != phone">
            and a.phone = #{phone}
        </if>
    </select>
    <update id="setUrgentUser">
        update t_user set emergencyContact = #{name}, emergencyContactNumber = #{phone} where id = #{uid}
    </update>
    <select id="queryRealName" resultType="map">
        select
        id as id,
        userId as userId,
        name as name,
        idcode as idcode,
        img1 as img1,
        img2 as img2,
        state as state
        from t_verified where userId = #{uid} order by insertTime desc limit 0,1
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserMapper.xml
New file
@@ -0,0 +1,77 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.UserMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.User">
        <id column="id" property="id" />
        <result column="avatar" property="avatar" />
        <result column="account" property="account" />
        <result column="password" property="password" />
        <result column="salt" property="salt" />
        <result column="name" property="name" />
        <result column="birthday" property="birthday" />
        <result column="sex" property="sex" />
        <result column="email" property="email" />
        <result column="phone" property="phone" />
        <result column="roleid" property="roleid" />
        <result column="deptid" property="deptid" />
        <result column="status" property="status" />
        <result column="createtime" property="createtime" />
        <result column="version" property="version" />
    </resultMap>
    <sql id="Base_Column_List">
        id, account, name, birthday, sex, email, avatar,
        phone, roleid,
        deptid, status,
        createtime, version
    </sql>
    <sql id="Base_Column_List_With_Pwd">
        id, account, name, birthday,password, sex, email, avatar,
        phone, roleid,salt,
        deptid, status,
        createtime, version
    </sql>
    <select id="selectUsers" resultType="map">
        select
        <include refid="Base_Column_List" />
        from sys_user
        where status != 3
        <if test="name != null and name != ''">
            and (phone like CONCAT('%',#{name},'%')
            or account like CONCAT('%',#{name},'%')
            or name like CONCAT('%',#{name},'%'))
        </if>
        <if test="deptid != null and deptid != 0">
            and (deptid = #{deptid} or deptid in ( select id from sys_dept where pids like CONCAT('%[', #{deptid}, ']%') ))
        </if>
        <if test="beginTime != null and beginTime != '' and endTime != null and endTime != ''">
            and (createTime between CONCAT(#{beginTime},' 00:00:00') and CONCAT(#{endTime},' 23:59:59'))
        </if>
    </select>
    <update id="setStatus">
        update sys_user set status = #{status} where id =
        #{userId}
    </update>
    <update id="changePwd">
        update sys_user set password = #{pwd} where id =
        #{userId}
    </update>
    <update id="setRoles">
        update sys_user set roleid = #{roleIds} where id =
        #{userId}
    </update>
    <select id="getByAccount" resultType="user">
        select
        <include refid="Base_Column_List_With_Pwd" />
        from sys_user where account = #{account} and status != 3
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserRedPacketRecordMapper.xml
New file
@@ -0,0 +1,103 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.UserRedPacketRecordMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.UserRedPacketRecord">
        <id column="id" property="id"/>
        <result column="money" property="money"/>
        <result column="expirationTime" property="expirationTime"/>
        <result column="insertTime" property="insertTime"/>
        <result column="companyId" property="companyId"/>
        <result column="state" property="state"/>
        <result column="endTime" property="endTime"/>
        <result column="orderId" property="orderId"/>
        <result column="orderType" property="orderType"/>
        <result column="userId" property="userId"/>
        <result column="redPacketActivityId" property="redPacketActivityId"/>
    </resultMap>
    <select id="query" resultType="UserRedPacketRecord">
        select
        id as id,
        money as money,
        expirationTime as expirationTime,
        insertTime as insertTime,
        companyId as companyId,
        state as state,
        orderId as orderId,
        orderType as orderType,
        userId as userId,
        redPacketActivityId as redPacketActivityId
        from t_user_red_packet_record where 1=1
        <if test="null != uid">
            and userId = #{uid}
        </if>
        <if test="null != companyId">
            and companyId = #{companyId}
        </if>
        <if test="null != state">
            and state = #{state}
        </if>
        <if test="null != orderType">
            and orderType = #{orderType}
        </if>
        <if test="null != money">
            and money &lt; #{money}
        </if>
        order by money desc limit 0, 1
    </select>
    <select id="query_" resultType="UserRedPacketRecord">
        select
        id as id,
        money as money,
        expirationTime as expirationTime,
        insertTime as insertTime,
        companyId as companyId,
        state as state,
        orderId as orderId,
        orderType as orderType,
        userId as userId,
        redPacketActivityId as redPacketActivityId
        from t_user_red_packet_record where 1=1
        <if test="null != uid">
            and userId = #{uid}
        </if>
        <if test="null != companyId">
            and companyId = #{companyId}
        </if>
        <if test="null != state">
            and state = #{state}
        </if>
        <if test="null != orderType">
            and orderType = #{orderType}
        </if>
        <if test="null != money">
            and money &lt; #{money}
        </if>
        order by insertTime desc limit 0, 1
    </select>
    <select id="queryMyRedEnvelope" resultType="map">
        select
        a.id as id,
        a.money as money,
        b.name as name
        from t_user_red_packet_record a
        left join t_company b on (a.companyId = b.id)
        where a.state = 1
        <if test="null != uid">
            and a.userId = #{uid}
        </if>
        order by a.insertTime desc
        <if test="null != pageNum and null != size">
            limit #{pageNum}, #{size}
        </if>
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/VerifiedMapper.xml
New file
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.VerifiedMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Verified">
        <id column="id" property="id"/>
        <result column="userId" property="userId"/>
        <result column="name" property="name"/>
        <result column="idcode" property="idcode"/>
        <result column="img1" property="img1"/>
        <result column="img2" property="img2"/>
        <result column="state" property="state"/>
        <result column="insertTime" property="insertTime"/>
    </resultMap>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/VersionManagementMapper.xml
New file
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.VersionManagementMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.VersionManagement">
        <id column="id" property="id"/>
        <result column="url" property="url"/>
        <result column="version" property="version"/>
        <result column="content" property="content"/>
        <result column="mandatory" property="mandatory"/>
        <result column="insertTime" property="insertTime"/>
        <result column="type" property="type"/>
    </resultMap>
    <select id="queryNewVersion" resultType="map">
        select
        id as id,
        url as url,
        content as content,
        if(mandatory = 1, 1, 0) as mandatory,
        version as version
        from t_version_management where type = #{type} order by insertTime desc limit 0, 1
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/WithdrawalMapper.xml
New file
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.stylefeng.guns.modular.system.dao.WithdrawalMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.Withdrawal">
        <id column="id" property="id" />
        <result column="userId" property="userId" />
        <result column="handleTime" property="handleTime" />
        <result column="balance" property="balance" />
        <result column="money" property="money" />
        <result column="state" property="state" />
        <result column="remark" property="remark" />
        <result column="code" property="code" />
        <result column="name" property="name" />
        <result column="userType" property="userType" />
        <result column="insertTime" property="insertTime" />
        <result column="flag" property="flag" />
        <result column="withdrawalType" property="withdrawalType" />
        <result column="serialNo" property="serialNo" />
    </resultMap>
    <select id="queryWithdrawal" resultType="map">
        select
        id as id,
        DATE_FORMAT(insertTime, '%Y.%m.%d') as insertTime,
        money as money,
        ('银行卡提现') as name,
        remark as remark,
        state as state
        from t_pub_withdrawal where flag != 3 and userType = #{userType} and userId = #{uid} order by insertTime desc limit #{pageNum}, #{size}
    </select>
</mapper>
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/factory/UserFactory.java
New file
@@ -0,0 +1,54 @@
package com.stylefeng.guns.modular.system.factory;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.model.User;
import com.stylefeng.guns.modular.system.transfer.UserDto;
import org.springframework.beans.BeanUtils;
/**
 * 用户创建工厂
 *
 * @author fengshuonan
 * @date 2017-05-05 22:43
 */
public class UserFactory {
    public static User createUser(UserDto userDto) {
        if (userDto == null) {
            return null;
        } else {
            User user = new User();
            BeanUtils.copyProperties(userDto, user);
            return user;
        }
    }
    public static User editUser(UserDto newUser, User oldUser) {
        if (newUser == null || oldUser == null) {
            return oldUser;
        } else {
            if (ToolUtil.isNotEmpty(newUser.getAvatar())) {
                oldUser.setAvatar(newUser.getAvatar());
            }
            if (ToolUtil.isNotEmpty(newUser.getName())) {
                oldUser.setName(newUser.getName());
            }
            if (ToolUtil.isNotEmpty(newUser.getBirthday())) {
                oldUser.setBirthday(newUser.getBirthday());
            }
            if (ToolUtil.isNotEmpty(newUser.getDeptid())) {
                oldUser.setDeptid(newUser.getDeptid());
            }
            if (ToolUtil.isNotEmpty(newUser.getSex())) {
                oldUser.setSex(newUser.getSex());
            }
            if (ToolUtil.isNotEmpty(newUser.getEmail())) {
                oldUser.setEmail(newUser.getEmail());
            }
            if (ToolUtil.isNotEmpty(newUser.getPhone())) {
                oldUser.setPhone(newUser.getPhone());
            }
            return oldUser;
        }
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Advertisement.java
New file
@@ -0,0 +1,127 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
/**
 * 广告
 */
@TableName("t_advertisement")
public class Advertisement extends BaseBean {
    /**
     * 广告名称
     */
    @TableField("name")
    private String name;
    /**
     * 图片路径
     */
    @TableField("imgUrl")
    private String imgUrl;
    /**
     * 广告类型(1:弹窗,2:首页底部)
     */
    @TableField("type")
    private Integer type;
    /**
     * 是否跳转(1:是,2:否)
     */
    @TableField("isJump")
    private Integer isJump;
    /**
     * 跳转类型(1:外部,2:内部)
     */
    @TableField("jumpType")
    private Integer jumpType;
    /**
     * 跳转地址
     */
    @TableField("jumpUrl")
    private String jumpUrl;
    /**
     * 文本内容
     */
    @TableField("content")
    private String content;
    /**
     * 状态(1=已上线,2=已下线)
     * @return
     */
    @TableField("state")
    private Integer state;
    /**
     * 所属省id
     * @return
     */
    @TableField("provinceId")
    private Integer provinceId;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getImgUrl() {
        return imgUrl;
    }
    public void setImgUrl(String imgUrl) {
        this.imgUrl = imgUrl;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Integer getIsJump() {
        return isJump;
    }
    public void setIsJump(Integer isJump) {
        this.isJump = isJump;
    }
    public Integer getJumpType() {
        return jumpType;
    }
    public void setJumpType(Integer jumpType) {
        this.jumpType = jumpType;
    }
    public String getJumpUrl() {
        return jumpUrl;
    }
    public void setJumpUrl(String jumpUrl) {
        this.jumpUrl = jumpUrl;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    @Override
    public String toString() {
        return "Advertisement{" +
                "name='" + name + '\'' +
                ", imgUrl='" + imgUrl + '\'' +
                ", type=" + type +
                ", isJump=" + isJump +
                ", jumpType=" + jumpType +
                ", jumpUrl='" + jumpUrl + '\'' +
                ", content='" + content + '\'' +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Agreement.java
New file
@@ -0,0 +1,59 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
/**
 * 平台协议
 */
@TableName("t_agreement")
public class Agreement extends BaseBean {
    /**
     * 使用范围(1=用户,2=司机)
     */
    @TableField("useType")
    private Integer useType;
    /**
     * 协议内容
     */
    @TableField("content")
    private String content;
    /**
     * 类型(1:隐私协议,2:用户协议,3:用户指南,4:法律条款,5:关于我们,6=注册协议,7=取消订单说明,8=充值领券规则设置,9=司机注册协议,10=改派说明,11=跨城出行乘车须知,12:常见问题,13:计价规则,14:包车协议,15:小件物流协议)
     */
    @TableField("type")
    private Integer type;
    public Integer getUseType() {
        return useType;
    }
    public void setUseType(Integer useType) {
        this.useType = useType;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    @Override
    public String toString() {
        return "Agreement{" +
                "useType=" + useType +
                ", content='" + content + '\'' +
                ", type=" + type +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/BaseBean.java
New file
@@ -0,0 +1,107 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
public class BaseBean {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 1:正常,2:停用,3:删除
     */
    @TableField("flag")
    private Integer flag;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 添加人员
     */
    @TableField("insertUser")
    private Integer insertUser;
    /**
     * 修改时间
     */
    @TableField("updateTime")
    private Date updateTime;
    /**
     * 修改人员
     */
    @TableField("updateUser")
    private Integer updateUser;
    public BaseBean() {
        Date date = new Date();
        this.flag = 1;
        this.insertTime = date;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getFlag() {
        return flag;
    }
    public void setFlag(Integer flag) {
        this.flag = flag;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getInsertUser() {
        return insertUser;
    }
    public void setInsertUser(Integer insertUser) {
        this.insertUser = insertUser;
    }
    public Date getUpdateTime() {
        return updateTime;
    }
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    public Integer getUpdateUser() {
        return updateUser;
    }
    public void setUpdateUser(Integer updateUser) {
        this.updateUser = updateUser;
    }
    @Override
    public String toString() {
        return "BaseBean{" +
                "id=" + id +
                ", flag=" + flag +
                ", insertTime=" + insertTime +
                ", insertUser=" + insertUser +
                ", updateTime=" + updateTime +
                ", updateUser=" + updateUser +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/CancleOrder.java
New file
@@ -0,0 +1,104 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
/**
 * 取消订单设置
 */
@TableName("t_sys_cancle_order")
public class CancleOrder {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 企业id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 时间(分钟)
     */
    @TableField("minuteNum")
    private Integer minuteNum;
    /**
     * 金额
     */
    @TableField("money")
    private Double money;
    /**
     * 类型(1=取消,2=预约取消)
     */
    @TableField("type")
    private Integer type;
    /**
     * 订单类型(1=专车,2=出租车)
     */
    @TableField("orderType")
    private Integer orderType;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    public Integer getMinuteNum() {
        return minuteNum;
    }
    public void setMinuteNum(Integer minuteNum) {
        this.minuteNum = minuteNum;
    }
    public Double getMoney() {
        return money;
    }
    public void setMoney(Double money) {
        this.money = money;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Integer getOrderType() {
        return orderType;
    }
    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }
    @Override
    public String toString() {
        return "CancleOrder{" +
                "id=" + id +
                ", companyId=" + companyId +
                ", minuteNum=" + minuteNum +
                ", money=" + money +
                ", type=" + type +
                ", orderType=" + orderType +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Car.java
New file
@@ -0,0 +1,272 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 车辆
 */
@TableName("t_car")
public class Car {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 是否是平台车辆(1=是,2=否)
     */
    @TableField("isPlatCar")
    private Integer isPlatCar;
    /**
     * 公司id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 加盟商id
     */
    @TableField("franchiseeId")
    private Integer franchiseeId;
    /**
     * 车辆颜色
     */
    @TableField("carColor")
    private String carColor;
    /**
     * 车型id
     */
    @TableField("carModelId")
    private Integer carModelId;
    /**
     * 车辆品牌id
     */
    @TableField("carBrandId")
    private Integer carBrandId;
    /**
     * 车牌号
     */
    @TableField("carLicensePlate")
    private String carLicensePlate;
    /**
     * 车辆照片
     */
    @TableField("carPhoto")
    private String carPhoto;
    /**
     * 行驶证号
     */
    @TableField("drivingLicenseNumber")
    private String drivingLicenseNumber;
    /**
     * 行驶证照片
     */
    @TableField("drivingLicensePhoto")
    private String drivingLicensePhoto;
    /**
     * 年检到期时间
     */
    @TableField("annualInspectionTime")
    private Date annualInspectionTime;
    /**
     * 保险照片
     */
    @TableField("insurancePhoto")
    private String insurancePhoto;
    /**
     * 商业保险到期时间
     */
    @TableField("commercialInsuranceTime")
    private Date commercialInsuranceTime;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 状态(1=正常,2=删除)
     */
    @TableField("state")
    private Integer state;
    /**
     * 添加来源(1=司机注册 2=平台添加 3=分公司添加 4=加盟商添加)
     */
    @TableField("addType")
    private Integer addType;
    /**
     * 公司id
     */
    @TableField("addObjectId")
    private Integer addObjectId;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getIsPlatCar() {
        return isPlatCar;
    }
    public void setIsPlatCar(Integer isPlatCar) {
        this.isPlatCar = isPlatCar;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    public Integer getFranchiseeId() {
        return franchiseeId;
    }
    public void setFranchiseeId(Integer franchiseeId) {
        this.franchiseeId = franchiseeId;
    }
    public String getCarColor() {
        return carColor;
    }
    public void setCarColor(String carColor) {
        this.carColor = carColor;
    }
    public Integer getCarModelId() {
        return carModelId;
    }
    public void setCarModelId(Integer carModelId) {
        this.carModelId = carModelId;
    }
    public Integer getCarBrandId() {
        return carBrandId;
    }
    public void setCarBrandId(Integer carBrandId) {
        this.carBrandId = carBrandId;
    }
    public String getCarLicensePlate() {
        return carLicensePlate;
    }
    public void setCarLicensePlate(String carLicensePlate) {
        this.carLicensePlate = carLicensePlate;
    }
    public String getCarPhoto() {
        return carPhoto;
    }
    public void setCarPhoto(String carPhoto) {
        this.carPhoto = carPhoto;
    }
    public String getDrivingLicenseNumber() {
        return drivingLicenseNumber;
    }
    public void setDrivingLicenseNumber(String drivingLicenseNumber) {
        this.drivingLicenseNumber = drivingLicenseNumber;
    }
    public String getDrivingLicensePhoto() {
        return drivingLicensePhoto;
    }
    public void setDrivingLicensePhoto(String drivingLicensePhoto) {
        this.drivingLicensePhoto = drivingLicensePhoto;
    }
    public Date getAnnualInspectionTime() {
        return annualInspectionTime;
    }
    public void setAnnualInspectionTime(Date annualInspectionTime) {
        this.annualInspectionTime = annualInspectionTime;
    }
    public String getInsurancePhoto() {
        return insurancePhoto;
    }
    public void setInsurancePhoto(String insurancePhoto) {
        this.insurancePhoto = insurancePhoto;
    }
    public Date getCommercialInsuranceTime() {
        return commercialInsuranceTime;
    }
    public void setCommercialInsuranceTime(Date commercialInsuranceTime) {
        this.commercialInsuranceTime = commercialInsuranceTime;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Integer getAddType() {
        return addType;
    }
    public void setAddType(Integer addType) {
        this.addType = addType;
    }
    public Integer getAddObjectId() {
        return addObjectId;
    }
    public void setAddObjectId(Integer addObjectId) {
        this.addObjectId = addObjectId;
    }
    @Override
    public String toString() {
        return "Car{" +
                "id=" + id +
                ", isPlatCar=" + isPlatCar +
                ", companyId=" + companyId +
                ", carColor='" + carColor + '\'' +
                ", carModelId=" + carModelId +
                ", carBrandId=" + carBrandId +
                ", carLicensePlate='" + carLicensePlate + '\'' +
                ", carPhoto='" + carPhoto + '\'' +
                ", drivingLicenseNumber='" + drivingLicenseNumber + '\'' +
                ", drivingLicensePhoto='" + drivingLicensePhoto + '\'' +
                ", annualInspectionTime=" + annualInspectionTime +
                ", commercialInsuranceTime=" + commercialInsuranceTime +
                ", insertTime=" + insertTime +
                ", state=" + state +
                ", addType=" + addType +
                ", addObjectId=" + addObjectId +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/CarService.java
New file
@@ -0,0 +1,76 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
/**
 * 车辆服务
 */
@TableName("t_car_service")
public class CarService {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 车辆id
     */
    @TableField("carId")
    private Integer carId;
    /**
     * 服务类型(1=专车,2=出租车,3=城际,4=小件物流-同城,5=小件物流-跨城,6=包车)
     */
    @TableField("type")
    private Integer type;
    /**
     * 服务车型id
     */
    @TableField("serverCarModelId")
    private Integer serverCarModelId;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getCarId() {
        return carId;
    }
    public void setCarId(Integer carId) {
        this.carId = carId;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Integer getServerCarModelId() {
        return serverCarModelId;
    }
    public void setServerCarModelId(Integer serverCarModelId) {
        this.serverCarModelId = serverCarModelId;
    }
    @Override
    public String toString() {
        return "CarService{" +
                "id=" + id +
                ", carId=" + carId +
                ", type=" + type +
                ", serverCarModelId=" + serverCarModelId +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Company.java
New file
@@ -0,0 +1,694 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 企业信息
 */
@TableName("t_company")
public class Company {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 是否经营专车(1=是,2=否)
     */
    @TableField("isSpe")
    private Integer isSpe;
    /**
     * 是否经营出租车(1=是,2=否)
     */
    @TableField("isTaxi")
    private Integer isTaxi;
    /**
     * 是否经营跨城(1=是,2=否)
     */
    @TableField("isCross")
    private Integer isCross;
    /**
     * 是否经营跨城物流(1=是,2=否)
     */
    @TableField("isCrossLogistics")
    private Integer isCrossLogistics;
    /**
     * 是否经营同城物流(1=是,2=否)
     */
    @TableField("isSameLogistics")
    private Integer isSameLogistics;
    /**
     * 是否经营包车(1=是,2=否)
     */
    @TableField("isCharter")
    private Integer isCharter;
    /**
     * 专车提成方式(1=比例,2=固定)
     */
    @TableField("isSpeFixedOrProportional")
    private Integer isSpeFixedOrProportional;
    /**
     * 出租车提成方式(1=比例,2=固定)
     */
    @TableField("isTaxiFixedOrProportional")
    private Integer isTaxiFixedOrProportional;
    /**
     * 跨城物流提成方式(1=比例,2=固定)
     */
    @TableField("isCrossLogisticsFixedOrProportional")
    private Integer isCrossLogisticsFixedOrProportional;
    /**
     * 同城物流提成方式(1=比例,2=固定)
     */
    @TableField("isSameLogisticsFixedOrProportional")
    private Integer isSameLogisticsFixedOrProportional;
    /**
     * 专车提成数值
     */
    @TableField("speMoney")
    private Double speMoney;
    /**
     * 出租车提成数值
     */
    @TableField("taxiMoney")
    private Double taxiMoney;
    /**
     * 跨城物流提成数值
     */
    @TableField("crossLogisticsMoney")
    private Double crossLogisticsMoney;
    /**
     * 同城物流
     */
    @TableField("sameLogisticsMoney")
    private Double sameLogisticsMoney;
    /**
     * 是否需要摆渡车(1=是,2=否)
     */
    @TableField("isNeedFerry")
    private Integer isNeedFerry;
    /**
     * 企业名称
     */
    @TableField("name")
    private String name;
    /**
     * 企业类型(1=平台,2=分公司,3=加盟商)
     */
    @TableField("type")
    private Integer type;
    /**
     * 上级企业
     */
    @TableField("superiorId")
    private Integer superiorId;
    /**
     * 负责人姓名
     */
    @TableField("principalName")
    private String principalName;
    /**
     * 负责人电话
     */
    @TableField("principalPhone")
    private String principalPhone;
    /**
     * 管理员姓名
     */
    @TableField("adminName")
    private String adminName;
    /**
     * 管理员电话
     */
    @TableField("adminPhone")
    private String adminPhone;
    /**
     * 紧急联系电话
     */
    @TableField("urgentPhoen")
    private String urgentPhoen;
    /**
     * 服务机构设立时间
     */
    @TableField("setupTime")
    private Date setupTime;
    /**
     * 社会统一信用代码
     */
    @TableField("identifier")
    private String identifier;
    /**
     * 注册地行政区域代码
     */
    @TableField("addressCode")
    private String addressCode;
    /**
     * 经营范围
     */
    @TableField("businessScope")
    private String businessScope;
    /**
     * 通信地址
     */
    @TableField("contactAddress")
    private String contactAddress;
    /**
     * 行政文书送达地址
     */
    @TableField("documentAddress")
    private String documentAddress;
    /**
     * 经营业户经济类型
     */
    @TableField("economicType")
    private String economicType;
    /**
     * 注册资本
     */
    @TableField("regCapital")
    private String regCapital;
    /**
     * 法人代表姓名
     */
    @TableField("legalName")
    private String legalName;
    /**
     * 法人代表身份证号码
     */
    @TableField("legalId")
    private String legalId;
    /**
     * 法人代表电话
     */
    @TableField("legalPhone")
    private String legalPhone;
    /**
     * 法人代表身份证图片地址
     */
    @TableField("legalPhotoUrl")
    private String legalPhotoUrl;
    /**
     * 经营许可证发证机构
     */
    @TableField("licensingAgency")
    private String licensingAgency;
    /**
     * 经营许可证初次发证日期
     */
    @TableField("licenseTime")
    private Date licenseTime;
    /**
     * 镜经营许可证有效日期起
     */
    @TableField("licenseStartTime")
    private Date licenseStartTime;
    /**
     * 经营许可证有效日期止
     */
    @TableField("licenseEndTime")
    private Date licenseEndTime;
    /**
     * 网络预约车经营许可证号
     */
    @TableField("licenseNumber")
    private String licenseNumber;
    /**
     * 注册网络预约车数量
     */
    @TableField("carNum")
    private Integer carNum;
    /**
     * 注册网络预约车驾驶员数量
     */
    @TableField("driverNum")
    private Integer driverNum;
    /**
     * 绑定mac地址
     */
    @TableField("mac")
    private String mac;
    /**
     * 状态(1=正常,2=禁用)
     */
    @TableField("state")
    private Integer state;
    /**
     * 1=创建,2=修改,3=删除
     */
    @TableField("flag")
    private Integer flag;
    /**
     * 上传标识(1:未上传,2:已上传)
     */
    @TableField("upload")
    private Integer upload;
    /**
     * 创建日期
     */
    @TableField("insertTime")
    private Date insertTime;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getIsSpe() {
        return isSpe;
    }
    public void setIsSpe(Integer isSpe) {
        this.isSpe = isSpe;
    }
    public Integer getIsTaxi() {
        return isTaxi;
    }
    public void setIsTaxi(Integer isTaxi) {
        this.isTaxi = isTaxi;
    }
    public Integer getIsCross() {
        return isCross;
    }
    public void setIsCross(Integer isCross) {
        this.isCross = isCross;
    }
    public Integer getIsCrossLogistics() {
        return isCrossLogistics;
    }
    public void setIsCrossLogistics(Integer isCrossLogistics) {
        this.isCrossLogistics = isCrossLogistics;
    }
    public Integer getIsSameLogistics() {
        return isSameLogistics;
    }
    public void setIsSameLogistics(Integer isSameLogistics) {
        this.isSameLogistics = isSameLogistics;
    }
    public Integer getIsCharter() {
        return isCharter;
    }
    public void setIsCharter(Integer isCharter) {
        this.isCharter = isCharter;
    }
    public Integer getIsSpeFixedOrProportional() {
        return isSpeFixedOrProportional;
    }
    public void setIsSpeFixedOrProportional(Integer isSpeFixedOrProportional) {
        this.isSpeFixedOrProportional = isSpeFixedOrProportional;
    }
    public Integer getIsTaxiFixedOrProportional() {
        return isTaxiFixedOrProportional;
    }
    public void setIsTaxiFixedOrProportional(Integer isTaxiFixedOrProportional) {
        this.isTaxiFixedOrProportional = isTaxiFixedOrProportional;
    }
    public Integer getIsCrossLogisticsFixedOrProportional() {
        return isCrossLogisticsFixedOrProportional;
    }
    public void setIsCrossLogisticsFixedOrProportional(Integer isCrossLogisticsFixedOrProportional) {
        this.isCrossLogisticsFixedOrProportional = isCrossLogisticsFixedOrProportional;
    }
    public Integer getIsSameLogisticsFixedOrProportional() {
        return isSameLogisticsFixedOrProportional;
    }
    public void setIsSameLogisticsFixedOrProportional(Integer isSameLogisticsFixedOrProportional) {
        this.isSameLogisticsFixedOrProportional = isSameLogisticsFixedOrProportional;
    }
    public Double getSpeMoney() {
        return speMoney;
    }
    public void setSpeMoney(Double speMoney) {
        this.speMoney = speMoney;
    }
    public Double getTaxiMoney() {
        return taxiMoney;
    }
    public void setTaxiMoney(Double taxiMoney) {
        this.taxiMoney = taxiMoney;
    }
    public Double getCrossLogisticsMoney() {
        return crossLogisticsMoney;
    }
    public void setCrossLogisticsMoney(Double crossLogisticsMoney) {
        this.crossLogisticsMoney = crossLogisticsMoney;
    }
    public Double getSameLogisticsMoney() {
        return sameLogisticsMoney;
    }
    public void setSameLogisticsMoney(Double sameLogisticsMoney) {
        this.sameLogisticsMoney = sameLogisticsMoney;
    }
    public Integer getIsNeedFerry() {
        return isNeedFerry;
    }
    public void setIsNeedFerry(Integer isNeedFerry) {
        this.isNeedFerry = isNeedFerry;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Integer getSuperiorId() {
        return superiorId;
    }
    public void setSuperiorId(Integer superiorId) {
        this.superiorId = superiorId;
    }
    public String getPrincipalName() {
        return principalName;
    }
    public void setPrincipalName(String principalName) {
        this.principalName = principalName;
    }
    public String getPrincipalPhone() {
        return principalPhone;
    }
    public void setPrincipalPhone(String principalPhone) {
        this.principalPhone = principalPhone;
    }
    public String getAdminName() {
        return adminName;
    }
    public void setAdminName(String adminName) {
        this.adminName = adminName;
    }
    public String getAdminPhone() {
        return adminPhone;
    }
    public void setAdminPhone(String adminPhone) {
        this.adminPhone = adminPhone;
    }
    public String getUrgentPhoen() {
        return urgentPhoen;
    }
    public void setUrgentPhoen(String urgentPhoen) {
        this.urgentPhoen = urgentPhoen;
    }
    public Date getSetupTime() {
        return setupTime;
    }
    public void setSetupTime(Date setupTime) {
        this.setupTime = setupTime;
    }
    public String getIdentifier() {
        return identifier;
    }
    public void setIdentifier(String identifier) {
        this.identifier = identifier;
    }
    public String getAddressCode() {
        return addressCode;
    }
    public void setAddressCode(String addressCode) {
        this.addressCode = addressCode;
    }
    public String getBusinessScope() {
        return businessScope;
    }
    public void setBusinessScope(String businessScope) {
        this.businessScope = businessScope;
    }
    public String getContactAddress() {
        return contactAddress;
    }
    public void setContactAddress(String contactAddress) {
        this.contactAddress = contactAddress;
    }
    public String getDocumentAddress() {
        return documentAddress;
    }
    public void setDocumentAddress(String documentAddress) {
        this.documentAddress = documentAddress;
    }
    public String getEconomicType() {
        return economicType;
    }
    public void setEconomicType(String economicType) {
        this.economicType = economicType;
    }
    public String getRegCapital() {
        return regCapital;
    }
    public void setRegCapital(String regCapital) {
        this.regCapital = regCapital;
    }
    public String getLegalName() {
        return legalName;
    }
    public void setLegalName(String legalName) {
        this.legalName = legalName;
    }
    public String getLegalId() {
        return legalId;
    }
    public void setLegalId(String legalId) {
        this.legalId = legalId;
    }
    public String getLegalPhone() {
        return legalPhone;
    }
    public void setLegalPhone(String legalPhone) {
        this.legalPhone = legalPhone;
    }
    public String getLegalPhotoUrl() {
        return legalPhotoUrl;
    }
    public void setLegalPhotoUrl(String legalPhotoUrl) {
        this.legalPhotoUrl = legalPhotoUrl;
    }
    public String getLicensingAgency() {
        return licensingAgency;
    }
    public void setLicensingAgency(String licensingAgency) {
        this.licensingAgency = licensingAgency;
    }
    public Date getLicenseTime() {
        return licenseTime;
    }
    public void setLicenseTime(Date licenseTime) {
        this.licenseTime = licenseTime;
    }
    public Date getLicenseStartTime() {
        return licenseStartTime;
    }
    public void setLicenseStartTime(Date licenseStartTime) {
        this.licenseStartTime = licenseStartTime;
    }
    public Date getLicenseEndTime() {
        return licenseEndTime;
    }
    public void setLicenseEndTime(Date licenseEndTime) {
        this.licenseEndTime = licenseEndTime;
    }
    public String getLicenseNumber() {
        return licenseNumber;
    }
    public void setLicenseNumber(String licenseNumber) {
        this.licenseNumber = licenseNumber;
    }
    public Integer getCarNum() {
        return carNum;
    }
    public void setCarNum(Integer carNum) {
        this.carNum = carNum;
    }
    public Integer getDriverNum() {
        return driverNum;
    }
    public void setDriverNum(Integer driverNum) {
        this.driverNum = driverNum;
    }
    public String getMac() {
        return mac;
    }
    public void setMac(String mac) {
        this.mac = mac;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Integer getFlag() {
        return flag;
    }
    public void setFlag(Integer flag) {
        this.flag = flag;
    }
    public Integer getUpload() {
        return upload;
    }
    public void setUpload(Integer upload) {
        this.upload = upload;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    @Override
    public String toString() {
        return "Company{" +
                "id=" + id +
                ", isSpe=" + isSpe +
                ", isTaxi=" + isTaxi +
                ", isCross=" + isCross +
                ", isCrossLogistics=" + isCrossLogistics +
                ", isSameLogistics=" + isSameLogistics +
                ", isCharter=" + isCharter +
                ", isSpeFixedOrProportional=" + isSpeFixedOrProportional +
                ", isTaxiFixedOrProportional=" + isTaxiFixedOrProportional +
                ", isCrossLogisticsFixedOrProportional=" + isCrossLogisticsFixedOrProportional +
                ", isSameLogisticsFixedOrProportional=" + isSameLogisticsFixedOrProportional +
                ", speMoney=" + speMoney +
                ", taxiMoney=" + taxiMoney +
                ", crossLogisticsMoney=" + crossLogisticsMoney +
                ", sameLogisticsMoney=" + sameLogisticsMoney +
                ", isNeedFerry=" + isNeedFerry +
                ", name='" + name + '\'' +
                ", type=" + type +
                ", superiorId=" + superiorId +
                ", principalName='" + principalName + '\'' +
                ", principalPhone='" + principalPhone + '\'' +
                ", adminName='" + adminName + '\'' +
                ", adminPhone='" + adminPhone + '\'' +
                ", urgentPhoen='" + urgentPhoen + '\'' +
                ", setupTime=" + setupTime +
                ", identifier='" + identifier + '\'' +
                ", addressCode='" + addressCode + '\'' +
                ", businessScope='" + businessScope + '\'' +
                ", contactAddress='" + contactAddress + '\'' +
                ", documentAddress='" + documentAddress + '\'' +
                ", economicType='" + economicType + '\'' +
                ", regCapital='" + regCapital + '\'' +
                ", legalName='" + legalName + '\'' +
                ", legalId='" + legalId + '\'' +
                ", legalPhone='" + legalPhone + '\'' +
                ", legalPhotoUrl='" + legalPhotoUrl + '\'' +
                ", licensingAgency='" + licensingAgency + '\'' +
                ", licenseTime=" + licenseTime +
                ", licenseStartTime=" + licenseStartTime +
                ", licenseEndTime=" + licenseEndTime +
                ", licenseNumber='" + licenseNumber + '\'' +
                ", carNum=" + carNum +
                ", driverNum=" + driverNum +
                ", mac='" + mac + '\'' +
                ", state=" + state +
                ", flag=" + flag +
                ", upload=" + upload +
                ", insertTime=" + insertTime +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/CompanyCity.java
New file
@@ -0,0 +1,104 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
/**
 * 企业经营范围
 */
@TableName("t_company_city")
public class CompanyCity {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 企业id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 省编号
     */
    @TableField("provinceCode")
    private String provinceCode;
    /**
     * 市编号
     */
    @TableField("cityCode")
    private String cityCode;
    /**
     * 区编号
     */
    @TableField("areaCode")
    private String areaCode;
    /**
     * 状态(1=正常,2=删除)
     */
    @TableField("state")
    private Integer state;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    public String getProvinceCode() {
        return provinceCode;
    }
    public void setProvinceCode(String provinceCode) {
        this.provinceCode = provinceCode;
    }
    public String getCityCode() {
        return cityCode;
    }
    public void setCityCode(String cityCode) {
        this.cityCode = cityCode;
    }
    public String getAreaCode() {
        return areaCode;
    }
    public void setAreaCode(String areaCode) {
        this.areaCode = areaCode;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    @Override
    public String toString() {
        return "CompanyCity{" +
                "id=" + id +
                ", companyId=" + companyId +
                ", provinceCode='" + provinceCode + '\'' +
                ", cityCode='" + cityCode + '\'' +
                ", areaCode='" + areaCode + '\'' +
                ", state=" + state +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Complaint.java
New file
@@ -0,0 +1,153 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import lombok.Data;
import java.util.Date;
/**
 * 投诉
 */
@TableName("t_complaint")
@Data
public class Complaint {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 用户id
     */
    @TableField("userId")
    private Integer userId;
    /**
     * 投诉原因
     */
    @TableField("reason")
    private String reason;
    /**
     * 司机id
     */
    @TableField("driverId")
    private Integer driverId;
    /**
     * 描述
     */
    @TableField("description")
    private String description;
    /**
     * 处理状态(0=未处理,1=已处理)
     */
    @TableField("isHandle")
    private Integer isHandle;
    /**
     * 添加时间
     */
    @TableField("insert_time")
    private Date insertTime;
    /**
     * 处理结果
     */
    @TableField("handleResult")
    private String handleResult;
    /**
     * 处理人id
     */
    @TableField("handleUserId")
    private Integer handleUserId;
    @TableField("type")
    private Integer type;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    public String getReason() {
        return reason;
    }
    public void setReason(String reason) {
        this.reason = reason;
    }
    public Integer getDriverId() {
        return driverId;
    }
    public void setDriverId(Integer driverId) {
        this.driverId = driverId;
    }
    public String getDescription() {
        return description;
    }
    public void setDescription(String description) {
        this.description = description;
    }
    public Integer getIsHandle() {
        return isHandle;
    }
    public void setIsHandle(Integer isHandle) {
        this.isHandle = isHandle;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public String getHandleResult() {
        return handleResult;
    }
    public void setHandleResult(String handleResult) {
        this.handleResult = handleResult;
    }
    public Integer getHandleUserId() {
        return handleUserId;
    }
    public void setHandleUserId(Integer handleUserId) {
        this.handleUserId = handleUserId;
    }
    @Override
    public String toString() {
        return "Complaint{" +
                "id=" + id +
                ", userId=" + userId +
                ", reason='" + reason + '\'' +
                ", driverId=" + driverId +
                ", description='" + description + '\'' +
                ", isHandle=" + isHandle +
                ", insertTime=" + insertTime +
                ", handleResult='" + handleResult + '\'' +
                ", handleUserId=" + handleUserId +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Dept.java
New file
@@ -0,0 +1,140 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.io.Serializable;
/**
 * <p>
 * 部门表
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
@TableName("sys_dept")
public class Dept extends Model<Dept> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @TableId(value="id", type= IdType.AUTO)
    private Integer id;
    /**
     * 排序
     */
    private Integer num;
    /**
     * 父部门id
     */
    private Integer pid;
    /**
     * 父级ids
     */
    private String pids;
    /**
     * 简称
     */
    private String simplename;
    /**
     * 全称
     */
    private String fullname;
    /**
     * 提示
     */
    private String tips;
    /**
     * 版本(乐观锁保留字段)
     */
    private Integer version;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getNum() {
        return num;
    }
    public void setNum(Integer num) {
        this.num = num;
    }
    public Integer getPid() {
        return pid;
    }
    public void setPid(Integer pid) {
        this.pid = pid;
    }
    public String getPids() {
        return pids;
    }
    public void setPids(String pids) {
        this.pids = pids;
    }
    public String getSimplename() {
        return simplename;
    }
    public void setSimplename(String simplename) {
        this.simplename = simplename;
    }
    public String getFullname() {
        return fullname;
    }
    public void setFullname(String fullname) {
        this.fullname = fullname;
    }
    public String getTips() {
        return tips;
    }
    public void setTips(String tips) {
        this.tips = tips;
    }
    public Integer getVersion() {
        return version;
    }
    public void setVersion(Integer version) {
        this.version = version;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    @Override
    public String toString() {
        return "Dept{" +
            "id=" + id +
            ", num=" + num +
            ", pid=" + pid +
            ", pids=" + pids +
            ", simplename=" + simplename +
            ", fullname=" + fullname +
            ", tips=" + tips +
            ", version=" + version +
            "}";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Dict.java
New file
@@ -0,0 +1,116 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.io.Serializable;
/**
 * <p>
 * 字典表
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
@TableName("sys_dict")
public class Dict extends Model<Dict> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @TableId(value="id", type= IdType.AUTO)
    private Integer id;
    /**
     * 排序
     */
    private Integer num;
    /**
     * 父级字典
     */
    private Integer pid;
    /**
     * 名称
     */
    private String name;
    /**
     * 编码
     */
    private String code;
    /**
     * 提示
     */
    private String tips;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getNum() {
        return num;
    }
    public void setNum(Integer num) {
        this.num = num;
    }
    public Integer getPid() {
        return pid;
    }
    public void setPid(Integer pid) {
        this.pid = pid;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getTips() {
        return tips;
    }
    public void setTips(String tips) {
        this.tips = tips;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    @Override
    public String toString() {
        return "Dict{" +
                "id=" + id +
                ", num=" + num +
                ", pid=" + pid +
                ", name='" + name + '\'' +
                ", code='" + code + '\'' +
                ", tips='" + tips + '\'' +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Driver.java
New file
@@ -0,0 +1,896 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 司机
 */
@TableName("t_driver")
public class Driver extends BaseBean{
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 账号
     */
    @TableField("account")
    private String account;
    /**
     * 工号
     */
    @TableField("jobNumber")
    private String jobNumber;
    /**
     * 电话
     */
    @TableField("phone")
    private String phone;
    /**
     * 登录密码
     */
    @TableField("password")
    private String password;
    /**
     * 姓名
     */
    @TableField("name")
    private String name;
    /**
     * 性别(1=男,2=女)
     */
    @TableField("sex")
    private Integer sex;
    /**
     * 身份证号码
     */
    @TableField("idCard")
    private String idCard;
    /**
     * 公司id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 加盟商id
     */
    @TableField("franchiseeId")
    private Integer franchiseeId;
    /**
     * 头像图片
     */
    @TableField("headImgUrl")
    private String headImgUrl;
    /**
     * 人脸识别照片
     */
    @TableField("faceImgUrl")
    private String faceImgUrl;
    /**
     * 身份证正面照片
     */
    @TableField("idCardImgUrl1")
    private String idCardImgUrl1;
    /**
     * 身份证背面照片
     */
    @TableField("idCardImgUrl2")
    private String idCardImgUrl2;
    /**
     * 网约车注册地
     */
    @TableField("placeOfEmployment")
    private String placeOfEmployment;
    /**
     * 生日
     */
    @TableField("birthday")
    private Date birthday;
    /**
     * 银行卡号
     */
    @TableField("bankCardNumber")
    private String bankCardNumber;
    /**
     * 国籍
     */
    @TableField("driverNationality")
    private String driverNationality;
    /**
     * 民族
     */
    @TableField("driverNation")
    private String driverNation;
    /**
     * 婚姻状况(1:未婚,2:已婚,3:离异)
     */
    @TableField("driverMaritalStatus")
    private Integer driverMaritalStatus;
    /**
     * 外语能力
     */
    @TableField("driverLanguageLevel")
    private String driverLanguageLevel;
    /**
     * 学历
     */
    @TableField("driverEducation")
    private String driverEducation;
    /**
     * 户口登记机关名称
     */
    @TableField("driverCensus")
    private String driverCensus;
    /**
     * 户口地址或常住地址
     */
    @TableField("driverAddress")
    private String driverAddress;
    /**
     * 通信地址
     */
    @TableField("driverContactAddress")
    private String driverContactAddress;
    /**
     * 驾龄
     */
    @TableField("driverAge")
    private Integer driverAge;
    /**
     * 驾驶证号码
     */
    @TableField("driveCard")
    private String driveCard;
    /**
     * 驾驶证照片
     */
    @TableField("driveCardImgUrl")
    private String driveCardImgUrl;
    /**
     * 准驾车型
     */
    @TableField("driverType")
    private String driverType;
    /**
     * 初次领取驾驶证日期
     */
    @TableField("getDriverLicenseDate")
    private Date getDriverLicenseDate;
    /**
     * 驾驶证有效期限起
     */
    @TableField("driverLicenseOn")
    private Date driverLicenseOn;
    /**
     * 驾驶证有效期限止
     */
    @TableField("driverLicenseOff")
    private Date driverLicenseOff;
    /**
     * 是否巡游出租车驾驶员(0:否,1:是)
     */
    @TableField("taxiDriver")
    private Integer taxiDriver;
    /**
     * 出租车资格证号
     */
    @TableField("taxiAptitudeCard")
    private String taxiAptitudeCard;
    /**
     * 网约车资格证照片
     */
    @TableField("networkCarlssueImg")
    private String networkCarlssueImg;
    /**
     * 网络预约出租车驾驶员证发证机构
     */
    @TableField("networkCarlssueOrganization")
    private String networkCarlssueOrganization;
    /**
     * 资格证发证日期
     */
    @TableField("networkCarlssueDate")
    private Date networkCarlssueDate;
    /**
     * 初次认领资格证日期
     */
    @TableField("getNetworkCarProofDate")
    private Date getNetworkCarProofDate;
    /**
     * 资格证有效起始日期
     */
    @TableField("networkCarProofOn")
    private Date networkCarProofOn;
    /**
     * 资格证有效截至日期
     */
    @TableField("networkCarProofOff")
    private Date networkCarProofOff;
    /**
     * 报备日期
     */
    @TableField("registerDate")
    private Date registerDate;
    /**
     * 是否专职驾驶员(0:否,1:是)
     */
    @TableField("fullTimeDriver")
    private Integer fullTimeDriver;
    /**
     * 是否在驾驶员黑名单内(0:否,1:是)
     */
    @TableField("inDriverBlacklist")
    private Integer inDriverBlacklist;
    /**
     * 服务类型(1:网络预约出租汽车,2:巡游出租汽车,3:私人小客车合乘)
     */
    @TableField("commercialType")
    private Integer commercialType;
    /**
     * 驾驶员合同签署公司
     */
    @TableField("contractCompany")
    private String contractCompany;
    /**
     * 合同有效期起
     */
    @TableField("contractOn")
    private Date contractOn;
    /**
     * 合同有效期止
     */
    @TableField("contractOff")
    private Date contractOff;
    /**
     * 紧急联系人
     */
    @TableField("emergencyContact")
    private String emergencyContact;
    /**
     * 紧急联系电话
     */
    @TableField("emergencyContactPhone")
    private String emergencyContactPhone;
    /**
     * 紧急联系地址
     */
    @TableField("emergencyContactAddress")
    private String emergencyContactAddress;
    /**
     * 备注
     */
    @TableField("remark")
    private String remark;
    /**
     * 是否是平台车辆(1=是,2=否)
     */
    @TableField("isPlatCar")
    private Integer isPlatCar;
    /**
     * 司机管理车辆id
     */
    @TableField("carId")
    private Integer carId;
    /**
     * 审核状态(1=待审核,2=正常,3=冻结,4=拒绝)
     */
    @TableField("authState")
    private Integer authState;
    /**
     * 司机状态(1=离线,2=空闲,3=服务中)
     */
    @TableField("state")
    private Integer state;
    /**
     * 添加方式(1=司机注册 2=平台添加 3=分公司添加 4=加盟商添加)
     * @return
     */
    @TableField("addType")
    private Integer addType;
    /**
     * 账户余额
     * @return
     */
    @TableField("balance")
    private Double balance;
    /**
     * 活动总收入
     * @return
     */
    @TableField("activityMoney")
    private Double activityMoney;
    /**
     * 剩余未提现活动总收入
     * @return
     */
    @TableField("laveActivityMoney")
    private Double laveActivityMoney;
    /**
     * 业务总收入
     * @return
     */
    @TableField("businessMoney")
    private Double businessMoney;
    /**
     * 剩余未提现业务总收入
     * @return
     */
    @TableField("laveBusinessMoney")
    private Double laveBusinessMoney;
    /**
     * 小程序openid
     */
    @TableField("appletsOpenId")
    private String appletsOpenId;
    @Override
    public Integer getId() {
        return id;
    }
    @Override
    public void setId(Integer id) {
        this.id = id;
    }
    public String getAccount() {
        return account;
    }
    public void setAccount(String account) {
        this.account = account;
    }
    public String getJobNumber() {
        return jobNumber;
    }
    public void setJobNumber(String jobNumber) {
        this.jobNumber = jobNumber;
    }
    public String getPhone() {
        return phone;
    }
    public void setPhone(String phone) {
        this.phone = phone;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getSex() {
        return sex;
    }
    public void setSex(Integer sex) {
        this.sex = sex;
    }
    public String getIdCard() {
        return idCard;
    }
    public void setIdCard(String idCard) {
        this.idCard = idCard;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    public String getHeadImgUrl() {
        return headImgUrl;
    }
    public void setHeadImgUrl(String headImgUrl) {
        this.headImgUrl = headImgUrl;
    }
    public String getFaceImgUrl() {
        return faceImgUrl;
    }
    public void setFaceImgUrl(String faceImgUrl) {
        this.faceImgUrl = faceImgUrl;
    }
    public String getIdCardImgUrl1() {
        return idCardImgUrl1;
    }
    public void setIdCardImgUrl1(String idCardImgUrl1) {
        this.idCardImgUrl1 = idCardImgUrl1;
    }
    public String getIdCardImgUrl2() {
        return idCardImgUrl2;
    }
    public void setIdCardImgUrl2(String idCardImgUrl2) {
        this.idCardImgUrl2 = idCardImgUrl2;
    }
    public String getPlaceOfEmployment() {
        return placeOfEmployment;
    }
    public void setPlaceOfEmployment(String placeOfEmployment) {
        this.placeOfEmployment = placeOfEmployment;
    }
    public Date getBirthday() {
        return birthday;
    }
    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }
    public String getBankCardNumber() {
        return bankCardNumber;
    }
    public void setBankCardNumber(String bankCardNumber) {
        this.bankCardNumber = bankCardNumber;
    }
    public String getDriverNationality() {
        return driverNationality;
    }
    public void setDriverNationality(String driverNationality) {
        this.driverNationality = driverNationality;
    }
    public String getDriverNation() {
        return driverNation;
    }
    public void setDriverNation(String driverNation) {
        this.driverNation = driverNation;
    }
    public Integer getDriverMaritalStatus() {
        return driverMaritalStatus;
    }
    public void setDriverMaritalStatus(Integer driverMaritalStatus) {
        this.driverMaritalStatus = driverMaritalStatus;
    }
    public String getDriverLanguageLevel() {
        return driverLanguageLevel;
    }
    public void setDriverLanguageLevel(String driverLanguageLevel) {
        this.driverLanguageLevel = driverLanguageLevel;
    }
    public String getDriverEducation() {
        return driverEducation;
    }
    public void setDriverEducation(String driverEducation) {
        this.driverEducation = driverEducation;
    }
    public String getDriverCensus() {
        return driverCensus;
    }
    public void setDriverCensus(String driverCensus) {
        this.driverCensus = driverCensus;
    }
    public String getDriverAddress() {
        return driverAddress;
    }
    public void setDriverAddress(String driverAddress) {
        this.driverAddress = driverAddress;
    }
    public String getDriverContactAddress() {
        return driverContactAddress;
    }
    public void setDriverContactAddress(String driverContactAddress) {
        this.driverContactAddress = driverContactAddress;
    }
    public Integer getDriverAge() {
        return driverAge;
    }
    public void setDriverAge(Integer driverAge) {
        this.driverAge = driverAge;
    }
    public String getDriveCard() {
        return driveCard;
    }
    public void setDriveCard(String driveCard) {
        this.driveCard = driveCard;
    }
    public String getDriveCardImgUrl() {
        return driveCardImgUrl;
    }
    public void setDriveCardImgUrl(String driveCardImgUrl) {
        this.driveCardImgUrl = driveCardImgUrl;
    }
    public String getDriverType() {
        return driverType;
    }
    public void setDriverType(String driverType) {
        this.driverType = driverType;
    }
    public Date getGetDriverLicenseDate() {
        return getDriverLicenseDate;
    }
    public void setGetDriverLicenseDate(Date getDriverLicenseDate) {
        this.getDriverLicenseDate = getDriverLicenseDate;
    }
    public Date getDriverLicenseOn() {
        return driverLicenseOn;
    }
    public void setDriverLicenseOn(Date driverLicenseOn) {
        this.driverLicenseOn = driverLicenseOn;
    }
    public Date getDriverLicenseOff() {
        return driverLicenseOff;
    }
    public void setDriverLicenseOff(Date driverLicenseOff) {
        this.driverLicenseOff = driverLicenseOff;
    }
    public Integer getTaxiDriver() {
        return taxiDriver;
    }
    public void setTaxiDriver(Integer taxiDriver) {
        this.taxiDriver = taxiDriver;
    }
    public String getTaxiAptitudeCard() {
        return taxiAptitudeCard;
    }
    public void setTaxiAptitudeCard(String taxiAptitudeCard) {
        this.taxiAptitudeCard = taxiAptitudeCard;
    }
    public String getNetworkCarlssueOrganization() {
        return networkCarlssueOrganization;
    }
    public void setNetworkCarlssueOrganization(String networkCarlssueOrganization) {
        this.networkCarlssueOrganization = networkCarlssueOrganization;
    }
    public Date getNetworkCarlssueDate() {
        return networkCarlssueDate;
    }
    public void setNetworkCarlssueDate(Date networkCarlssueDate) {
        this.networkCarlssueDate = networkCarlssueDate;
    }
    public Date getGetNetworkCarProofDate() {
        return getNetworkCarProofDate;
    }
    public void setGetNetworkCarProofDate(Date getNetworkCarProofDate) {
        this.getNetworkCarProofDate = getNetworkCarProofDate;
    }
    public Date getNetworkCarProofOn() {
        return networkCarProofOn;
    }
    public void setNetworkCarProofOn(Date networkCarProofOn) {
        this.networkCarProofOn = networkCarProofOn;
    }
    public Date getNetworkCarProofOff() {
        return networkCarProofOff;
    }
    public void setNetworkCarProofOff(Date networkCarProofOff) {
        this.networkCarProofOff = networkCarProofOff;
    }
    public Date getRegisterDate() {
        return registerDate;
    }
    public void setRegisterDate(Date registerDate) {
        this.registerDate = registerDate;
    }
    public Integer getFullTimeDriver() {
        return fullTimeDriver;
    }
    public void setFullTimeDriver(Integer fullTimeDriver) {
        this.fullTimeDriver = fullTimeDriver;
    }
    public Integer getInDriverBlacklist() {
        return inDriverBlacklist;
    }
    public void setInDriverBlacklist(Integer inDriverBlacklist) {
        this.inDriverBlacklist = inDriverBlacklist;
    }
    public Integer getCommercialType() {
        return commercialType;
    }
    public void setCommercialType(Integer commercialType) {
        this.commercialType = commercialType;
    }
    public String getContractCompany() {
        return contractCompany;
    }
    public void setContractCompany(String contractCompany) {
        this.contractCompany = contractCompany;
    }
    public Date getContractOn() {
        return contractOn;
    }
    public void setContractOn(Date contractOn) {
        this.contractOn = contractOn;
    }
    public Date getContractOff() {
        return contractOff;
    }
    public void setContractOff(Date contractOff) {
        this.contractOff = contractOff;
    }
    public String getEmergencyContact() {
        return emergencyContact;
    }
    public void setEmergencyContact(String emergencyContact) {
        this.emergencyContact = emergencyContact;
    }
    public String getEmergencyContactPhone() {
        return emergencyContactPhone;
    }
    public void setEmergencyContactPhone(String emergencyContactPhone) {
        this.emergencyContactPhone = emergencyContactPhone;
    }
    public String getEmergencyContactAddress() {
        return emergencyContactAddress;
    }
    public void setEmergencyContactAddress(String emergencyContactAddress) {
        this.emergencyContactAddress = emergencyContactAddress;
    }
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
    public Integer getIsPlatCar() {
        return isPlatCar;
    }
    public void setIsPlatCar(Integer isPlatCar) {
        this.isPlatCar = isPlatCar;
    }
    public Integer getCarId() {
        return carId;
    }
    public void setCarId(Integer carId) {
        this.carId = carId;
    }
    public Integer getAuthState() {
        return authState;
    }
    public void setAuthState(Integer authState) {
        this.authState = authState;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public String getNetworkCarlssueImg() {
        return networkCarlssueImg;
    }
    public void setNetworkCarlssueImg(String networkCarlssueImg) {
        this.networkCarlssueImg = networkCarlssueImg;
    }
    public Integer getAddType() {
        return addType;
    }
    public void setAddType(Integer addType) {
        this.addType = addType;
    }
    public Double getBalance() {
        return balance;
    }
    public void setBalance(Double balance) {
        this.balance = balance;
    }
    public Double getActivityMoney() {
        return activityMoney;
    }
    public void setActivityMoney(Double activityMoney) {
        this.activityMoney = activityMoney;
    }
    public Double getLaveActivityMoney() {
        return laveActivityMoney;
    }
    public void setLaveActivityMoney(Double laveActivityMoney) {
        this.laveActivityMoney = laveActivityMoney;
    }
    public Double getBusinessMoney() {
        return businessMoney;
    }
    public void setBusinessMoney(Double businessMoney) {
        this.businessMoney = businessMoney;
    }
    public Double getLaveBusinessMoney() {
        return laveBusinessMoney;
    }
    public void setLaveBusinessMoney(Double laveBusinessMoney) {
        this.laveBusinessMoney = laveBusinessMoney;
    }
    public Integer getFranchiseeId() {
        return franchiseeId;
    }
    public void setFranchiseeId(Integer franchiseeId) {
        this.franchiseeId = franchiseeId;
    }
    public String getAppletsOpenId() {
        return appletsOpenId;
    }
    public void setAppletsOpenId(String appletsOpenId) {
        this.appletsOpenId = appletsOpenId;
    }
    @Override
    public String toString() {
        return "Driver{" +
                "account='" + account + '\'' +
                ", jobNumber='" + jobNumber + '\'' +
                ", phone='" + phone + '\'' +
                ", password='" + password + '\'' +
                ", name='" + name + '\'' +
                ", sex=" + sex +
                ", idCard='" + idCard + '\'' +
                ", companyId=" + companyId +
                ", franchiseeId=" + franchiseeId +
                ", headImgUrl='" + headImgUrl + '\'' +
                ", faceImgUrl='" + faceImgUrl + '\'' +
                ", idCardImgUrl1='" + idCardImgUrl1 + '\'' +
                ", idCardImgUrl2='" + idCardImgUrl2 + '\'' +
                ", placeOfEmployment='" + placeOfEmployment + '\'' +
                ", birthday=" + birthday +
                ", bankCardNumber='" + bankCardNumber + '\'' +
                ", driverNationality='" + driverNationality + '\'' +
                ", driverNation='" + driverNation + '\'' +
                ", driverMaritalStatus=" + driverMaritalStatus +
                ", driverLanguageLevel='" + driverLanguageLevel + '\'' +
                ", driverEducation='" + driverEducation + '\'' +
                ", driverCensus='" + driverCensus + '\'' +
                ", driverAddress='" + driverAddress + '\'' +
                ", driverContactAddress='" + driverContactAddress + '\'' +
                ", driverAge=" + driverAge +
                ", driveCard='" + driveCard + '\'' +
                ", driveCardImgUrl='" + driveCardImgUrl + '\'' +
                ", driverType='" + driverType + '\'' +
                ", getDriverLicenseDate=" + getDriverLicenseDate +
                ", driverLicenseOn=" + driverLicenseOn +
                ", driverLicenseOff=" + driverLicenseOff +
                ", taxiDriver=" + taxiDriver +
                ", taxiAptitudeCard='" + taxiAptitudeCard + '\'' +
                ", networkCarlssueImg='" + networkCarlssueImg + '\'' +
                ", networkCarlssueOrganization='" + networkCarlssueOrganization + '\'' +
                ", networkCarlssueDate=" + networkCarlssueDate +
                ", getNetworkCarProofDate=" + getNetworkCarProofDate +
                ", networkCarProofOn=" + networkCarProofOn +
                ", networkCarProofOff=" + networkCarProofOff +
                ", registerDate=" + registerDate +
                ", fullTimeDriver=" + fullTimeDriver +
                ", inDriverBlacklist=" + inDriverBlacklist +
                ", commercialType=" + commercialType +
                ", contractCompany='" + contractCompany + '\'' +
                ", contractOn=" + contractOn +
                ", contractOff=" + contractOff +
                ", emergencyContact='" + emergencyContact + '\'' +
                ", emergencyContactPhone='" + emergencyContactPhone + '\'' +
                ", emergencyContactAddress='" + emergencyContactAddress + '\'' +
                ", remark='" + remark + '\'' +
                ", isPlatCar=" + isPlatCar +
                ", carId=" + carId +
                ", authState=" + authState +
                ", state=" + state +
                ", addType=" + addType +
                ", balance=" + balance +
                ", activityMoney=" + activityMoney +
                ", laveActivityMoney=" + laveActivityMoney +
                ", businessMoney=" + businessMoney +
                ", laveBusinessMoney=" + laveBusinessMoney +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverActivityHistory.java
New file
@@ -0,0 +1,145 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 司机每天活动数量
 */
@TableName("t_driver_activity_history")
public class DriverActivityHistory {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 活动日期
     */
    @TableField("day")
    private Date day;
    /**
     * 司机id
     */
    @TableField("driverId")
    private Integer driverId;
    /**
     * 活动类型(1=邀请司机注册,2=邀请用户注册,3=累计在线,4=订单量)
     */
    @TableField("type")
    private Integer type;
    /**
     * 活动id
     */
    @TableField("activityId")
    private Integer activityId;
    /**
     * 是否完成(1=否,2=完成)
     */
    @TableField("carryOut")
    private Integer carryOut;
    /**
     * 奖励金额
     */
    @TableField("money")
    private Double money;
    //领取时间
    @TableField("collectionTime")
    private Date collectionTime;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Date getDay() {
        return day;
    }
    public void setDay(Date day) {
        this.day = day;
    }
    public Integer getDriverId() {
        return driverId;
    }
    public void setDriverId(Integer driverId) {
        this.driverId = driverId;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Integer getActivityId() {
        return activityId;
    }
    public void setActivityId(Integer activityId) {
        this.activityId = activityId;
    }
    public Integer getCarryOut() {
        return carryOut;
    }
    public void setCarryOut(Integer carryOut) {
        this.carryOut = carryOut;
    }
    public Double getMoney() {
        return money;
    }
    public void setMoney(Double money) {
        this.money = money;
    }
    public Date getCollectionTime() {
        return collectionTime;
    }
    public void setCollectionTime(Date collectionTime) {
        this.collectionTime = collectionTime;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    @Override
    public String toString() {
        return "DriverActivityHistory{" +
                "id=" + id +
                ", day=" + day +
                ", driverId=" + driverId +
                ", type=" + type +
                ", activityId=" + activityId +
                ", carryOut=" + carryOut +
                ", money=" + money +
                ", insertTime=" + insertTime +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverActivityRegistered.java
New file
@@ -0,0 +1,134 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 司机注册活动相关
 */
@TableName("t_driver_activity_registered")
public class DriverActivityRegistered {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 公司id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 司机活动主表id
     */
    @TableField("driverActivityId")
    private Integer driverActivityId;
    /**
     * 类型(1=邀请司机注册奖励,2=邀请用户注册奖励)
     */
    @TableField("type")
    private Integer type;
    /**
     * 奖励金额
     */
    @TableField("money")
    private Double money;
    /**
     * 开始时间
     */
    @TableField("startTime")
    private Date startTime;
    /**
     * 结束时间
     */
    @TableField("endTime")
    private Date endTime;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getDriverActivityId() {
        return driverActivityId;
    }
    public void setDriverActivityId(Integer driverActivityId) {
        this.driverActivityId = driverActivityId;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Double getMoney() {
        return money;
    }
    public void setMoney(Double money) {
        this.money = money;
    }
    public Date getStartTime() {
        return startTime;
    }
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    @Override
    public String toString() {
        return "DriverActivityRegistered{" +
                "id=" + id +
                ", companyId=" + companyId +
                ", driverActivityId=" + driverActivityId +
                ", type=" + type +
                ", money=" + money +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", insertTime=" + insertTime +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverOrders.java
New file
@@ -0,0 +1,62 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
/**
 * 司机接单设置
 */
@TableName("t_driver_orders")
public class DriverOrders {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 司机id
     */
    @TableField("driverId")
    private Integer driverId;
    /**
     * 允许接单类型(1=专车,2=出租车,3=城际,4=小件物流-同城,5=小件物流-跨城,6=包车)
     */
    @TableField("type")
    private Integer type;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getDriverId() {
        return driverId;
    }
    public void setDriverId(Integer driverId) {
        this.driverId = driverId;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    @Override
    public String toString() {
        return "DriverOrders{" +
                "id=" + id +
                ", driverId=" + driverId +
                ", type=" + type +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverService.java
New file
@@ -0,0 +1,62 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
/**
 * 司机可经营的业务类型
 */
@TableName("t_driver_service")
public class DriverService {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 司机id
     */
    @TableField("driverId")
    private Integer driverId;
    /**
     * 业务类型(1=专车,2=出租车,3=城际,4=小件物流-同城,5=小件物流-跨城,6=包车)
     */
    @TableField("type")
    private Integer type;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getDriverId() {
        return driverId;
    }
    public void setDriverId(Integer driverId) {
        this.driverId = driverId;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    @Override
    public String toString() {
        return "DriverService{" +
                "id=" + id +
                ", driverId=" + driverId +
                ", type=" + type +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/DriverWork.java
New file
@@ -0,0 +1,105 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.sql.Date;
/**
 * 司机上下班记录
 */
@TableName("t_driver_work")
public class DriverWork {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 司机id
     */
    @TableField("driverId")
    private Integer driverId;
    /**
     * 上班时间
     */
    @TableField("startTime")
    private Date startTime;
    /**
     * 下班时间
     */
    @TableField("endTime")
    private Date endTime;
    /**
     * 业务类型(1=专车,2=出租车,3=城际,4=小件物流-同城,5=小件物流-跨城,6=包车)
     */
    @TableField("type")
    private String type;
    /**
     * 上下班状态(1=上班,2=下班)
     */
    @TableField("state")
    private Integer state;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getDriverId() {
        return driverId;
    }
    public void setDriverId(Integer driverId) {
        this.driverId = driverId;
    }
    public Date getStartTime() {
        return startTime;
    }
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    public String getType() {
        return type;
    }
    public void setType(String type) {
        this.type = type;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    @Override
    public String toString() {
        return "DriverWork{" +
                "id=" + id +
                ", driverId=" + driverId +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", type=" + type +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Expense.java
New file
@@ -0,0 +1,123 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
 * <p>
 * 报销表
 * </p>
 *
 * @author stylefeng
 * @since 2017-12-05
 */
@TableName("sys_expense")
public class Expense extends Model<Expense> {
    private static final long serialVersionUID = 1L;
    @TableId(value="id", type= IdType.AUTO)
    private Integer id;
    /**
     * 报销金额
     */
    private BigDecimal money;
    /**
     * 描述
     */
    private String desc;
    private Date createtime;
    /**
     * 状态: 1.待提交  2:待审核   3.审核通过
     */
    private Integer state;
    /**
     * 用户id
     */
    private Integer userid;
    /**
     * 流程定义id
     */
    private String processId;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public BigDecimal getMoney() {
        return money;
    }
    public void setMoney(BigDecimal money) {
        this.money = money;
    }
    public String getDesc() {
        return desc;
    }
    public void setDesc(String desc) {
        this.desc = desc;
    }
    public Date getCreatetime() {
        return createtime;
    }
    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Integer getUserid() {
        return userid;
    }
    public void setUserid(Integer userid) {
        this.userid = userid;
    }
    public String getProcessId() {
        return processId;
    }
    public void setProcessId(String processId) {
        this.processId = processId;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    @Override
    public String toString() {
        return "Expense{" +
            "id=" + id +
            ", money=" + money +
            ", desc=" + desc +
            ", createtime=" + createtime +
            ", state=" + state +
            ", userid=" + userid +
            ", processId=" + processId +
            "}";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Feedback.java
New file
@@ -0,0 +1,176 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 反馈
 */
@TableName("t_feedback")
public class Feedback {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 反馈人id
     */
    @TableField("userId")
    private Integer userId;
    /**
     * 处理人id
     */
    @TableField("handleUserId")
    private Integer handleUserId;
    /**
     * 反馈内容
     */
    @TableField("content")
    private String content;
    /**
     * 反馈时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 图片地址
     */
    @TableField("imgUrl")
    private String imgUrl;
    /**
     * 状态(1=正常,2=删除)
     */
    @TableField("flag")
    private Integer flag;
    /**
     * 处理状态(1=未处理,2=已处理)
     */
    @TableField("state")
    private Integer state;
    /**
     * 处理时间
     */
    @TableField("cldate")
    private Date cldate;
    /**
     * 处理备注
     */
    @TableField("remark")
    private String remark;
    /**
     * 1=用户,2=司机
     */
    @TableField("type")
    private Integer type;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    public Integer getHandleUserId() {
        return handleUserId;
    }
    public void setHandleUserId(Integer handleUserId) {
        this.handleUserId = handleUserId;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public String getImgUrl() {
        return imgUrl;
    }
    public void setImgUrl(String imgUrl) {
        this.imgUrl = imgUrl;
    }
    public Integer getFlag() {
        return flag;
    }
    public void setFlag(Integer flag) {
        this.flag = flag;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Date getCldate() {
        return cldate;
    }
    public void setCldate(Date cldate) {
        this.cldate = cldate;
    }
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    @Override
    public String toString() {
        return "Feedback{" +
                "id=" + id +
                ", userId=" + userId +
                ", handleUserId=" + handleUserId +
                ", content='" + content + '\'' +
                ", insertTime=" + insertTime +
                ", imgUrl='" + imgUrl + '\'' +
                ", flag=" + flag +
                ", state=" + state +
                ", cldate=" + cldate +
                ", remark='" + remark + '\'' +
                ", type=" + type +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/GDInterface.java
New file
@@ -0,0 +1,93 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 高德接口统计
 */
@TableName("t_gdinterface")
public class GDInterface {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 接口名称
     */
    @TableField("name")
    private String name;
    /**
     * 接口说明
     */
    @TableField("explanation")
    private String explanation;
    /**
     * 调用次数
     */
    @TableField("num")
    private Integer num;
    /**
     * 调用日期
     */
    @TableField("time")
    private String time;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getExplanation() {
        return explanation;
    }
    public void setExplanation(String explanation) {
        this.explanation = explanation;
    }
    public Integer getNum() {
        return num;
    }
    public void setNum(Integer num) {
        this.num = num;
    }
    public String getTime() {
        return time;
    }
    public void setTime(String time) {
        this.time = time;
    }
    @Override
    public String toString() {
        return "GDInterface{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", explanation='" + explanation + '\'' +
                ", num=" + num +
                ", time=" + time +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Income.java
New file
@@ -0,0 +1,134 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 收入明细
 */
@TableName("t_income")
public class Income {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 收入方类型(1=公司,2=司机)
     */
    @TableField("userType")
    private Integer userType;
    /**
     * 收入对象id
     */
    @TableField("objectId")
    private Integer objectId;
    /**
     * 收入类型(1=活动,2=业务)
     */
    @TableField("type")
    private Integer type;
    /**
     * 收入类型id
     */
    @TableField("incomeId")
    private Integer incomeId;
    /**
     * 订单类型
     */
    @TableField("orderType")
    private Integer orderType;
    /**
     * 收入金额
     */
    @TableField("money")
    private Double money;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getUserType() {
        return userType;
    }
    public void setUserType(Integer userType) {
        this.userType = userType;
    }
    public Integer getObjectId() {
        return objectId;
    }
    public void setObjectId(Integer objectId) {
        this.objectId = objectId;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Integer getIncomeId() {
        return incomeId;
    }
    public void setIncomeId(Integer incomeId) {
        this.incomeId = incomeId;
    }
    public Double getMoney() {
        return money;
    }
    public void setMoney(Double money) {
        this.money = money;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getOrderType() {
        return orderType;
    }
    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }
    @Override
    public String toString() {
        return "Income{" +
                "id=" + id +
                ", userType=" + userType +
                ", objectId=" + objectId +
                ", type=" + type +
                ", incomeId=" + incomeId +
                ", orderType=" + orderType +
                ", money=" + money +
                ", insertTime=" + insertTime +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/IntegralGoods.java
New file
@@ -0,0 +1,148 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 积分兑换商品
 */
@TableName("t_integral_goods")
public class IntegralGoods {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 商品名称
     */
    @TableField("name")
    private String name;
    /**
     * 商品图片
     */
    @TableField("imgUrl")
    private String imgUrl;
    /**
     * 兑换积分
     */
    @TableField("integral")
    private Integer integral;
    /**
     * 商品说明
     */
    @TableField("instructions")
    private String instructions;
    /**
     * 状态(1=正常,2=下架,3=删除)
     */
    @TableField("state")
    private Integer state;
    /**
     * 添加用户id
     */
    @TableField("insertUserId")
    private Integer insertUserId;
    /**
     * 添加用户角色
     */
    @TableField("insertUserRole")
    private Integer insertUserRole;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getImgUrl() {
        return imgUrl;
    }
    public void setImgUrl(String imgUrl) {
        this.imgUrl = imgUrl;
    }
    public Integer getIntegral() {
        return integral;
    }
    public void setIntegral(Integer integral) {
        this.integral = integral;
    }
    public String getInstructions() {
        return instructions;
    }
    public void setInstructions(String instructions) {
        this.instructions = instructions;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Integer getInsertUserId() {
        return insertUserId;
    }
    public void setInsertUserId(Integer insertUserId) {
        this.insertUserId = insertUserId;
    }
    public Integer getInsertUserRole() {
        return insertUserRole;
    }
    public void setInsertUserRole(Integer insertUserRole) {
        this.insertUserRole = insertUserRole;
    }
    @Override
    public String toString() {
        return "IntegralGoods{" +
                "id=" + id +
                ", insertTime=" + insertTime +
                ", name='" + name + '\'' +
                ", imgUrl='" + imgUrl + '\'' +
                ", integral=" + integral +
                ", instructions='" + instructions + '\'' +
                ", state=" + state +
                ", insertUserId=" + insertUserId +
                ", insertUserRole=" + insertUserRole +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/IntegralOrder.java
New file
@@ -0,0 +1,175 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 积分兑换订单
 */
@TableName("t_integral_order")
public class IntegralOrder {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 兑换时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 兑换用户id
     */
    @TableField("userId")
    private Integer userId;
    /**
     * 兑换商品id
     */
    @TableField("goodsId")
    private Integer goodsId;
    /**
     * 兑换积分
     */
    @TableField("integral")
    private Integer integral;
    /**
     * 兑换数量
     */
    @TableField("num")
    private Integer num;
    /**
     * 收货人
     */
    @TableField("consigneeName")
    private String consigneeName;
    /**
     * 收件人电话
     */
    @TableField("consigneePhone")
    private String consigneePhone;
    /**
     * 收货地址
     */
    @TableField("consigneeAddress")
    private String consigneeAddress;
    /**
     * 备注
     */
    @TableField("remark")
    private String remark;
    /**
     * 状态(1=未处理,2=已处理,3=已删除)
     */
    @TableField("state")
    private Integer state;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    public Integer getGoodsId() {
        return goodsId;
    }
    public void setGoodsId(Integer goodsId) {
        this.goodsId = goodsId;
    }
    public Integer getIntegral() {
        return integral;
    }
    public void setIntegral(Integer integral) {
        this.integral = integral;
    }
    public Integer getNum() {
        return num;
    }
    public void setNum(Integer num) {
        this.num = num;
    }
    public String getConsigneeName() {
        return consigneeName;
    }
    public void setConsigneeName(String consigneeName) {
        this.consigneeName = consigneeName;
    }
    public String getConsigneePhone() {
        return consigneePhone;
    }
    public void setConsigneePhone(String consigneePhone) {
        this.consigneePhone = consigneePhone;
    }
    public String getConsigneeAddress() {
        return consigneeAddress;
    }
    public void setConsigneeAddress(String consigneeAddress) {
        this.consigneeAddress = consigneeAddress;
    }
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    @Override
    public String toString() {
        return "IntegralOrder{" +
                "id=" + id +
                ", insertTime=" + insertTime +
                ", userId=" + userId +
                ", goodsId=" + goodsId +
                ", num=" + num +
                ", consigneeName='" + consigneeName + '\'' +
                ", consigneePhone='" + consigneePhone + '\'' +
                ", consigneeAddress='" + consigneeAddress + '\'' +
                ", remark='" + remark + '\'' +
                ", state=" + state +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Invoice.java
New file
@@ -0,0 +1,218 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 发票
 */
@TableName("t_invoice")
public class Invoice {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 开票金额
     */
    @TableField("money")
    private Double money;
    /**
     * 开票订单数量
     */
    @TableField("orderNum")
    private Integer orderNum;
    /**
     * 开票类型(1=个人发票,2=单位发票)
     */
    @TableField("type")
    private Integer type;
    /**
     * 抬头名称(公司名字/个人姓名)
     */
    @TableField("name")
    private String name;
    /**
     * 税号
     */
    @TableField("code")
    private String code;
    /**
     * 发票内容
     */
    @TableField("content")
    private String content;
    /**
     * 备注
     */
    @TableField("remark")
    private String remark;
    /**
     * 地址+电话
     */
    @TableField("address")
    private String address;
    /**
     * 开户行+账号
     */
    @TableField("bank")
    private String bank;
    /**
     * 邮箱地址
     */
    @TableField("email")
    private String email;
    /**
     * 开票用户id
     */
    @TableField("userId")
    private Integer userId;
    /**
     * 状态(1=待开,2=成功,3=失败)
     */
    @TableField("state")
    private Integer state;
    /**
     * 申请时间
     */
    @TableField("insertTime")
    private Date insertTime;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Double getMoney() {
        return money;
    }
    public void setMoney(Double money) {
        this.money = money;
    }
    public Integer getOrderNum() {
        return orderNum;
    }
    public void setOrderNum(Integer orderNum) {
        this.orderNum = orderNum;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
    public String getAddress() {
        return address;
    }
    public void setAddress(String address) {
        this.address = address;
    }
    public String getBank() {
        return bank;
    }
    public void setBank(String bank) {
        this.bank = bank;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    @Override
    public String toString() {
        return "Invoice{" +
                "id=" + id +
                ", money=" + money +
                ", orderNum=" + orderNum +
                ", type=" + type +
                ", name='" + name + '\'' +
                ", code='" + code + '\'' +
                ", content='" + content + '\'' +
                ", remark='" + remark + '\'' +
                ", address='" + address + '\'' +
                ", bank='" + bank + '\'' +
                ", email='" + email + '\'' +
                ", userId=" + userId +
                ", state=" + state +
                ", insertTime=" + insertTime +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/LoginLog.java
New file
@@ -0,0 +1,128 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.io.Serializable;
import java.util.Date;
/**
 * <p>
 * 登录记录
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
@TableName("sys_login_log")
public class LoginLog extends Model<LoginLog> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @TableId(value="id", type= IdType.AUTO)
    private Integer id;
    /**
     * 日志名称
     */
    private String logname;
    /**
     * 管理员id
     */
    private Integer userid;
    /**
     * 创建时间
     */
    private Date createtime;
    /**
     * 是否执行成功
     */
    private String succeed;
    /**
     * 具体消息
     */
    private String message;
    /**
     * 登录ip
     */
    private String ip;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getLogname() {
        return logname;
    }
    public void setLogname(String logname) {
        this.logname = logname;
    }
    public Integer getUserid() {
        return userid;
    }
    public void setUserid(Integer userid) {
        this.userid = userid;
    }
    public Date getCreatetime() {
        return createtime;
    }
    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }
    public String getSucceed() {
        return succeed;
    }
    public void setSucceed(String succeed) {
        this.succeed = succeed;
    }
    public String getMessage() {
        return message;
    }
    public void setMessage(String message) {
        this.message = message;
    }
    public String getIp() {
        return ip;
    }
    public void setIp(String ip) {
        this.ip = ip;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    @Override
    public String toString() {
        return "LoginLog{" +
            "id=" + id +
            ", logname=" + logname +
            ", userid=" + userid +
            ", createtime=" + createtime +
            ", succeed=" + succeed +
            ", message=" + message +
            ", ip=" + ip +
            "}";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Menu.java
New file
@@ -0,0 +1,208 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import org.hibernate.validator.constraints.NotBlank;
import java.io.Serializable;
/**
 * <p>
 * 菜单表
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
@TableName("sys_menu")
public class Menu extends Model<Menu> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 菜单编号
     */
    private String code;
    /**
     * 菜单父编号
     */
    private String pcode;
    /**
     * 当前菜单的所有父菜单编号
     */
    private String pcodes;
    /**
     * 菜单名称
     */
    @NotBlank
    private String name;
    /**
     * 菜单图标
     */
    private String icon;
    /**
     * url地址
     */
    @NotBlank
    private String url;
    /**
     * 菜单排序号
     */
    private Integer num;
    /**
     * 菜单层级
     */
    private Integer levels;
    /**
     * 是否是菜单(1:是  0:不是)
     */
    private Integer ismenu;
    /**
     * 备注
     */
    private String tips;
    /**
     * 菜单状态 :  1:启用   0:不启用
     */
    private Integer status;
    /**
     * 是否打开:    1:打开   0:不打开
     */
    private Integer isopen;
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getPcode() {
        return pcode;
    }
    public void setPcode(String pcode) {
        this.pcode = pcode;
    }
    public String getPcodes() {
        return pcodes;
    }
    public void setPcodes(String pcodes) {
        this.pcodes = pcodes;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getIcon() {
        return icon;
    }
    public void setIcon(String icon) {
        this.icon = icon;
    }
    public String getUrl() {
        return url;
    }
    public void setUrl(String url) {
        this.url = url;
    }
    public Integer getNum() {
        return num;
    }
    public void setNum(Integer num) {
        this.num = num;
    }
    public Integer getLevels() {
        return levels;
    }
    public void setLevels(Integer levels) {
        this.levels = levels;
    }
    public Integer getIsmenu() {
        return ismenu;
    }
    public void setIsmenu(Integer ismenu) {
        this.ismenu = ismenu;
    }
    public String getTips() {
        return tips;
    }
    public void setTips(String tips) {
        this.tips = tips;
    }
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    public Integer getIsopen() {
        return isopen;
    }
    public void setIsopen(Integer isopen) {
        this.isopen = isopen;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    @Override
    public String toString() {
        return "Menu{" +
                "id=" + id +
                ", code=" + code +
                ", pcode=" + pcode +
                ", pcodes=" + pcodes +
                ", name=" + name +
                ", icon=" + icon +
                ", url=" + url +
                ", num=" + num +
                ", levels=" + levels +
                ", ismenu=" + ismenu +
                ", tips=" + tips +
                ", status=" + status +
                ", isopen=" + isopen +
                "}";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Notice.java
New file
@@ -0,0 +1,115 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.io.Serializable;
import java.util.Date;
/**
 * <p>
 * 通知表
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
@TableName("sys_notice")
public class Notice extends Model<Notice> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @TableId(value="id", type= IdType.AUTO)
    private Integer id;
    /**
     * 标题
     */
    private String title;
    /**
     * 类型
     */
    private Integer type;
    /**
     * 内容
     */
    private String content;
    /**
     * 创建时间
     */
    private Date createtime;
    /**
     * 创建人
     */
    private Integer creater;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Date getCreatetime() {
        return createtime;
    }
    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }
    public Integer getCreater() {
        return creater;
    }
    public void setCreater(Integer creater) {
        this.creater = creater;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    @Override
    public String toString() {
        return "Notice{" +
            "id=" + id +
            ", title=" + title +
            ", type=" + type +
            ", content=" + content +
            ", createtime=" + createtime +
            ", creater=" + creater +
            "}";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OpenCity.java
New file
@@ -0,0 +1,115 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
/**
 * 开通城市
 */
@TableName("t_open_city")
public class OpenCity extends BaseBean {
    /**
     * 城市编号(行政编号)
     */
    @TableField("code")
    private String code;
    /**
     * 经度
     */
    @TableField("lon")
    private Double lon;
    /**
     * 纬度
     */
    @TableField("lat")
    private Double lat;
    /**
     * 是否需要网约车资格(1:是,2:否)
     */
    @TableField("isQualifications")
    private Integer isQualifications;
    /**
     * 省名称
     */
    @TableField("areaName")
    private String areaName;
    /**
     * 市名称
     */
    @TableField("cityName")
    private String cityName;
    /**
     * 区县名称
     */
    @TableField("provinceName")
    private String provinceName;
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public Integer getIsQualifications() {
        return isQualifications;
    }
    public void setIsQualifications(Integer isQualifications) {
        this.isQualifications = isQualifications;
    }
    public String getAreaName() {
        return areaName;
    }
    public void setAreaName(String areaName) {
        this.areaName = areaName;
    }
    public String getCityName() {
        return cityName;
    }
    public void setCityName(String cityName) {
        this.cityName = cityName;
    }
    public String getProvinceName() {
        return provinceName;
    }
    public void setProvinceName(String provinceName) {
        this.provinceName = provinceName;
    }
    public Double getLon() {
        return lon;
    }
    public void setLon(Double lon) {
        this.lon = lon;
    }
    public Double getLat() {
        return lat;
    }
    public void setLat(Double lat) {
        this.lat = lat;
    }
    @Override
    public String toString() {
        return "OpenCity{" +
                "code='" + code + '\'' +
                ", lon=" + lon +
                ", lat=" + lat +
                ", isQualifications=" + isQualifications +
                ", areaName='" + areaName + '\'' +
                ", cityName='" + cityName + '\'' +
                ", provinceName='" + provinceName + '\'' +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OpenCityBusiness.java
New file
@@ -0,0 +1,45 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
/**
 * 开通城市业务类型
 */
@TableName("t_open_city_business")
public class OpenCityBusiness extends BaseBean {
    /**
     * 业务类型(1=专车,2=出租车,3=跨城出行,4=同城小件物流,5=跨城小件物流,6=包车)
     */
    @TableField("businessType")
    private Integer businessType;
    /**
     * 排序
     */
    @TableField("sort")
    private Integer sort;
    public Integer getBusinessType() {
        return businessType;
    }
    public void setBusinessType(Integer businessType) {
        this.businessType = businessType;
    }
    public Integer getSort() {
        return sort;
    }
    public void setSort(Integer sort) {
        this.sort = sort;
    }
    @Override
    public String toString() {
        return "OpenCityBusiness{" +
                "businessType=" + businessType +
                ", sort=" + sort +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OperationLog.java
New file
@@ -0,0 +1,154 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.io.Serializable;
import java.util.Date;
/**
 * <p>
 * 操作日志
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
@TableName("sys_operation_log")
public class OperationLog extends Model<OperationLog> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @TableId(value="id", type= IdType.AUTO)
    private Integer id;
    /**
     * 日志类型
     */
    private String logtype;
    /**
     * 日志名称
     */
    private String logname;
    /**
     * 用户id
     */
    private Integer userid;
    /**
     * 类名称
     */
    private String classname;
    /**
     * 方法名称
     */
    private String method;
    /**
     * 创建时间
     */
    private Date createtime;
    /**
     * 是否成功
     */
    private String succeed;
    /**
     * 备注
     */
    private String message;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getLogtype() {
        return logtype;
    }
    public void setLogtype(String logtype) {
        this.logtype = logtype;
    }
    public String getLogname() {
        return logname;
    }
    public void setLogname(String logname) {
        this.logname = logname;
    }
    public Integer getUserid() {
        return userid;
    }
    public void setUserid(Integer userid) {
        this.userid = userid;
    }
    public String getClassname() {
        return classname;
    }
    public void setClassname(String classname) {
        this.classname = classname;
    }
    public String getMethod() {
        return method;
    }
    public void setMethod(String method) {
        this.method = method;
    }
    public Date getCreatetime() {
        return createtime;
    }
    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }
    public String getSucceed() {
        return succeed;
    }
    public void setSucceed(String succeed) {
        this.succeed = succeed;
    }
    public String getMessage() {
        return message;
    }
    public void setMessage(String message) {
        this.message = message;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    @Override
    public String toString() {
        return "OperationLog{" +
            "id=" + id +
            ", logtype=" + logtype +
            ", logname=" + logname +
            ", userid=" + userid +
            ", classname=" + classname +
            ", method=" + method +
            ", createtime=" + createtime +
            ", succeed=" + succeed +
            ", message=" + message +
            "}";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OrderCancel.java
New file
@@ -0,0 +1,178 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 取消订单
 */
@TableName("t_order_cancel")
public class OrderCancel {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 订单id
     */
    @TableField("orderId")
    private Integer orderId;
    /**
     * 订单类型(1=专车,2=出租车,3=城际,4=小件物流-同城,5=小件物流-跨城,6=包车)
     */
    @TableField("orderType")
    private Integer orderType;
    /**
     * 取消原因
     */
    @TableField("reason")
    private String reason;
    /**
     * 备注
     */
    @TableField("remark")
    private String remark;
    /**
     * 支付方式(1=微信,2=支付宝,3=余额)
     */
    @TableField("payType")
    private Integer payType;
    /**
     * 支付金额
     */
    @TableField("money")
    private Double money;
    /**
     * 状态(1=临时,2=正式)
     */
    @TableField("state")
    private Integer state;
    /**
     * 添加时间
     * @return
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 取消人员类型(1=用户,2=后台)
     * @return
     */
    @TableField("userType")
    private Integer userType;
    /**
     * 取消人id
     * @return
     */
    @TableField("userId")
    private Integer userId;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getOrderId() {
        return orderId;
    }
    public void setOrderId(Integer orderId) {
        this.orderId = orderId;
    }
    public Integer getOrderType() {
        return orderType;
    }
    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }
    public String getReason() {
        return reason;
    }
    public void setReason(String reason) {
        this.reason = reason;
    }
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
    public Integer getPayType() {
        return payType;
    }
    public void setPayType(Integer payType) {
        this.payType = payType;
    }
    public Double getMoney() {
        return money;
    }
    public void setMoney(Double money) {
        this.money = money;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getUserType() {
        return userType;
    }
    public void setUserType(Integer userType) {
        this.userType = userType;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    @Override
    public String toString() {
        return "OrderCancel{" +
                "id=" + id +
                ", orderId=" + orderId +
                ", orderType=" + orderType +
                ", reason='" + reason + '\'' +
                ", remark='" + remark + '\'' +
                ", payType=" + payType +
                ", money=" + money +
                ", state=" + state +
                ", insertTime=" + insertTime +
                ", userType=" + userType +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OrderEvaluate.java
New file
@@ -0,0 +1,136 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 订单评价
 */
@TableName("t_order_evaluate")
public class OrderEvaluate {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 订单id
     */
    @TableField("orderId")
    private Integer orderId;
    /**
     * 司机id
     */
    @TableField("driverId")
    private Integer driverId;
    /**
     * 订单类型(1=专车,2=出租车,3=跨城出行,4=同城小件物流,5=跨城小件物流,6=包车)
     */
    @TableField("orderType")
    private Integer orderType;
    /**
     * 评分
     */
    @TableField("fraction")
    private Integer fraction;
    /**
     * 评价内容
     */
    @TableField("content")
    private String content;
    /**
     * 评价时间
     * @return
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 评价用户id
     * @return
     */
    @TableField("userId")
    private Integer userId;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getOrderId() {
        return orderId;
    }
    public void setOrderId(Integer orderId) {
        this.orderId = orderId;
    }
    public Integer getOrderType() {
        return orderType;
    }
    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }
    public Integer getFraction() {
        return fraction;
    }
    public void setFraction(Integer fraction) {
        this.fraction = fraction;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Integer getDriverId() {
        return driverId;
    }
    public void setDriverId(Integer driverId) {
        this.driverId = driverId;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    @Override
    public String toString() {
        return "OrderEvaluate{" +
                "id=" + id +
                ", orderId=" + orderId +
                ", driverId=" + driverId +
                ", orderType=" + orderType +
                ", fraction=" + fraction +
                ", content='" + content + '\'' +
                ", insertTime=" + insertTime +
                ", userId=" + userId +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OrderPosition.java
New file
@@ -0,0 +1,148 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 订单轨迹
 */
@TableName("t_order_position")
public class OrderPosition {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 订单类型
     */
    @TableField("orderType")
    private Integer orderType;
    /**
     * 订单id
     */
    @TableField("orderId")
    private Integer orderId;
    /**
     * 司机id
     */
    @TableField("driverId")
    private Integer driverId;
    /**
     * 经度
     */
    @TableField("lon")
    private String lon;
    /**
     * 纬度
     */
    @TableField("lat")
    private String lat;
    /**
     * 方向角
     */
    @TableField("directionAngle")
    private String directionAngle;
    /**
     * 海拔
     */
    @TableField("altitude")
    private String altitude;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getOrderType() {
        return orderType;
    }
    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }
    public Integer getOrderId() {
        return orderId;
    }
    public void setOrderId(Integer orderId) {
        this.orderId = orderId;
    }
    public Integer getDriverId() {
        return driverId;
    }
    public void setDriverId(Integer driverId) {
        this.driverId = driverId;
    }
    public String getLon() {
        return lon;
    }
    public void setLon(String lon) {
        this.lon = lon;
    }
    public String getLat() {
        return lat;
    }
    public void setLat(String lat) {
        this.lat = lat;
    }
    public String getDirectionAngle() {
        return directionAngle;
    }
    public void setDirectionAngle(String directionAngle) {
        this.directionAngle = directionAngle;
    }
    public String getAltitude() {
        return altitude;
    }
    public void setAltitude(String altitude) {
        this.altitude = altitude;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    @Override
    public String toString() {
        return "OrderPosition{" +
                "id=" + id +
                ", orderType=" + orderType +
                ", orderId=" + orderId +
                ", driverId=" + driverId +
                ", lon='" + lon + '\'' +
                ", lat='" + lat + '\'' +
                ", directionAngle='" + directionAngle + '\'' +
                ", altitude='" + altitude + '\'' +
                ", insertTime=" + insertTime +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Phone.java
New file
@@ -0,0 +1,90 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
/**
 * 系统电话
 */
@TableName("t_phone")
public class Phone {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 数据类型(1:报警电话,2:投诉电话)
     */
    @TableField("type")
    private Integer type;
    /**
     * 是否是平台数据(1=是,2=否)
     */
    @TableField("platform")
    private Integer platform;
    /**
     * 电话
     */
    @TableField("phone")
    private String phone;
    /**
     * 企业id
     */
    @TableField("companyId")
    private Integer companyId;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public String getPhone() {
        return phone;
    }
    public void setPhone(String phone) {
        this.phone = phone;
    }
    public Integer getPlatform() {
        return platform;
    }
    public void setPlatform(Integer platform) {
        this.platform = platform;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    @Override
    public String toString() {
        return "Phone{" +
                "id=" + id +
                ", type=" + type +
                ", platform=" + platform +
                ", phone='" + phone + '\'' +
                ", companyId=" + companyId +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Problem.java
New file
@@ -0,0 +1,134 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 在线客服
 */
@TableName("t_problem")
public class Problem {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 用户id
     */
    @TableField("userId")
    private Integer userId;
    /**
     * 提问内容
     */
    @TableField("content")
    private String content;
    /**
     * 回答内容
     */
    @TableField("answer")
    private String answer;
    /**
     * 处理人
     */
    @TableField("handleUserId")
    private Integer handleUserId;
    /**
     * 处理时间
     */
    @TableField("handleTime")
    private Date handleTime;
    /**
     * 提问时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 状态(1=待处理,2=已处理)
     */
    @TableField("state")
    private Integer state;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public String getAnswer() {
        return answer;
    }
    public void setAnswer(String answer) {
        this.answer = answer;
    }
    public Integer getHandleUserId() {
        return handleUserId;
    }
    public void setHandleUserId(Integer handleUserId) {
        this.handleUserId = handleUserId;
    }
    public Date getHandleTime() {
        return handleTime;
    }
    public void setHandleTime(Date handleTime) {
        this.handleTime = handleTime;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    @Override
    public String toString() {
        return "Problem{" +
                "id=" + id +
                ", userId=" + userId +
                ", content='" + content + '\'' +
                ", answer='" + answer + '\'' +
                ", handleUserId=" + handleUserId +
                ", handleTime=" + handleTime +
                ", insertTime=" + insertTime +
                ", state=" + state +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/PushOrder.java
New file
@@ -0,0 +1,118 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
/**
 * 推单设置
 */
@TableName("t_sys_push_order")
public class PushOrder {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 企业id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 推单距离(公里)
     */
    @TableField("pushDistance")
    private Double pushDistance;
    /**
     * 推单时间(秒)
     */
    @TableField("pushTime")
    private Integer pushTime;
    /**
     * 推单占所有司机百分比
     */
    @TableField("driverProportion")
    private Double driverProportion;
    /**
     * 推单次数(1=第一轮,2=第二轮,3=第三轮)
     */
    @TableField("type")
    private Integer type;
    /**
     * 推单单据类型(1=专车,2=出租车)
     */
    @TableField("pushType")
    private Integer pushType;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    public Double getPushDistance() {
        return pushDistance;
    }
    public void setPushDistance(Double pushDistance) {
        this.pushDistance = pushDistance;
    }
    public Integer getPushTime() {
        return pushTime;
    }
    public void setPushTime(Integer pushTime) {
        this.pushTime = pushTime;
    }
    public Double getDriverProportion() {
        return driverProportion;
    }
    public void setDriverProportion(Double driverProportion) {
        this.driverProportion = driverProportion;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Integer getPushType() {
        return pushType;
    }
    public void setPushType(Integer pushType) {
        this.pushType = pushType;
    }
    @Override
    public String toString() {
        return "PushOrder{" +
                "id=" + id +
                ", companyId=" + companyId +
                ", pushDistance=" + pushDistance +
                ", pushTime=" + pushTime +
                ", driverProportion=" + driverProportion +
                ", type=" + type +
                ", pushType=" + pushType +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/RedPacketRecord.java
New file
@@ -0,0 +1,162 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 系统红包设置
 */
@TableName("t_sys_red_packet_record")
public class RedPacketRecord {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 金额
     */
    @TableField("money")
    private Double money;
    /**
     * 添加时间
     */
    @TableField("insert_time")
    private Date insertTime;
    /**
     * 发放企业id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 红包名称
     */
    @TableField("name")
    private String name;
    /**
     * 红包类型(1=固定金额,2=随机金额)
     */
    @TableField("type")
    private Integer type;
    /**
     * 总金额
     */
    @TableField("totalMoney")
    private Double totalMoney;
    /**
     * 剩余金额
     */
    @TableField("laveMoney")
    private Double laveMoney;
    /**
     * 开始金额
     */
    @TableField("startMoney")
    private Double startMoney;
    /**
     * 结束金额
     */
    @TableField("endMoney")
    private Double endMoney;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Double getMoney() {
        return money;
    }
    public void setMoney(Double money) {
        this.money = money;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Double getTotalMoney() {
        return totalMoney;
    }
    public void setTotalMoney(Double totalMoney) {
        this.totalMoney = totalMoney;
    }
    public Double getLaveMoney() {
        return laveMoney;
    }
    public void setLaveMoney(Double laveMoney) {
        this.laveMoney = laveMoney;
    }
    public Double getStartMoney() {
        return startMoney;
    }
    public void setStartMoney(Double startMoney) {
        this.startMoney = startMoney;
    }
    public Double getEndMoney() {
        return endMoney;
    }
    public void setEndMoney(Double endMoney) {
        this.endMoney = endMoney;
    }
    @Override
    public String toString() {
        return "RedPacketRecord{" +
                "id=" + id +
                ", money=" + money +
                ", insertTime=" + insertTime +
                ", companyId=" + companyId +
                ", name='" + name + '\'' +
                ", type=" + type +
                ", totalMoney=" + totalMoney +
                ", laveMoney=" + laveMoney +
                ", startMoney=" + startMoney +
                ", endMoney=" + endMoney +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Region.java
New file
@@ -0,0 +1,104 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
/**
 * 省市区
 */
@TableName("t_region")
public class Region {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 城市名称
     */
    @TableField("name")
    private String name;
    /**
     * 城市行政code
     */
    @TableField("code")
    private String code;
    /**
     * 区号code
     */
    @TableField("citycode")
    private String citycode;
    /**
     * 父级id
     */
    @TableField("parent_id")
    private Integer parentId;
    /**
     * 英文
     */
    @TableField("english")
    private String english;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getCitycode() {
        return citycode;
    }
    public void setCitycode(String citycode) {
        this.citycode = citycode;
    }
    public Integer getParentId() {
        return parentId;
    }
    public void setParentId(Integer parentId) {
        this.parentId = parentId;
    }
    public String getEnglish() {
        return english;
    }
    public void setEnglish(String english) {
        this.english = english;
    }
    @Override
    public String toString() {
        return "Region{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", code='" + code + '\'' +
                ", citycode='" + citycode + '\'' +
                ", parentId=" + parentId +
                ", english='" + english + '\'' +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Relation.java
New file
@@ -0,0 +1,75 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.io.Serializable;
/**
 * <p>
 * 角色和菜单关联表
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
@TableName("sys_relation")
public class Relation extends Model<Relation> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 菜单id
     */
    private Long menuid;
    /**
     * 角色id
     */
    private Integer roleid;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Long getMenuid() {
        return menuid;
    }
    public void setMenuid(Long menuid) {
        this.menuid = menuid;
    }
    public Integer getRoleid() {
        return roleid;
    }
    public void setRoleid(Integer roleid) {
        this.roleid = roleid;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    @Override
    public String toString() {
        return "Relation{" +
                "id=" + id +
                ", menuid=" + menuid +
                ", roleid=" + roleid +
                "}";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Role.java
New file
@@ -0,0 +1,127 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.io.Serializable;
/**
 * <p>
 * 角色表
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
@TableName("sys_role")
public class Role extends Model<Role> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @TableId(value="id", type= IdType.AUTO)
    private Integer id;
    /**
     * 序号
     */
    private Integer num;
    /**
     * 父角色id
     */
    private Integer pid;
    /**
     * 角色名称
     */
    private String name;
    /**
     * 部门名称
     */
    private Integer deptid;
    /**
     * 提示
     */
    private String tips;
    /**
     * 保留字段(暂时没用)
     */
    private Integer version;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getNum() {
        return num;
    }
    public void setNum(Integer num) {
        this.num = num;
    }
    public Integer getPid() {
        return pid;
    }
    public void setPid(Integer pid) {
        this.pid = pid;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getDeptid() {
        return deptid;
    }
    public void setDeptid(Integer deptid) {
        this.deptid = deptid;
    }
    public String getTips() {
        return tips;
    }
    public void setTips(String tips) {
        this.tips = tips;
    }
    public Integer getVersion() {
        return version;
    }
    public void setVersion(Integer version) {
        this.version = version;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    @Override
    public String toString() {
        return "Role{" +
            "id=" + id +
            ", num=" + num +
            ", pid=" + pid +
            ", name=" + name +
            ", deptid=" + deptid +
            ", tips=" + tips +
            ", version=" + version +
            "}";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SensitiveWords.java
New file
@@ -0,0 +1,64 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 敏感词
 */
@TableName("t_sys_sensitive_words")
public class SensitiveWords {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 添加时间
     */
    @TableField("createTime")
    private Date createTime;
    /**
     * 内容
     */
    @TableField("content")
    private String content;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    @Override
    public String toString() {
        return "SensitiveWords{" +
                "id=" + id +
                ", createTime=" + createTime +
                ", content='" + content + '\'' +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/ServerCarModel.java
New file
@@ -0,0 +1,120 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 服务车型设置
 */
@TableName("t_server_carmodel")
public class ServerCarModel {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 业务类型(1=专车,2=城际,3=包车)
     */
    @TableField("type")
    private Integer type;
    /**
     * 车型名称
     */
    @TableField("name")
    private String name;
    /**
     * 车型照片
     */
    @TableField("img")
    private String img;
    /**
     * 包车价格(100-300)
     */
    @TableField("price")
    private String price;
    /**
     * 状态(1=正常,2=冻结,3=删除)
     */
    @TableField("state")
    private Integer state;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getImg() {
        return img;
    }
    public void setImg(String img) {
        this.img = img;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public String getPrice() {
        return price;
    }
    public void setPrice(String price) {
        this.price = price;
    }
    @Override
    public String toString() {
        return "ServerCarModel{" +
                "id=" + id +
                ", type=" + type +
                ", name='" + name + '\'' +
                ", img='" + img + '\'' +
                ", price='" + price + '\'' +
                ", state=" + state +
                ", insertTime=" + insertTime +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Smsrecord.java
New file
@@ -0,0 +1,106 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 短信记录
 */
@TableName("t_smsrecord")
public class Smsrecord {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 短信类型(1=用户端注册/登录,2=用户端更换手机,3=用户端忘记密码,4=用户修改密码,5=司机注册,6=司机忘记密码,7=司机修改手机号,8=司机修改密码)
     */
    @TableField("type")
    private Integer type;
    /**
     * 发送电话
     */
    @TableField("phone")
    private String phone;
    /**
     * 验证码
     */
    @TableField("code")
    private String code;
    /**
     * 短信内容
     */
    @TableField("content")
    private String content;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public String getPhone() {
        return phone;
    }
    public void setPhone(String phone) {
        this.phone = phone;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    @Override
    public String toString() {
        return "Smsrecord{" +
                "id=" + id +
                ", type=" + type +
                ", phone='" + phone + '\'' +
                ", code='" + code + '\'' +
                ", content='" + content + '\'' +
                ", insertTime=" + insertTime +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SysIntegral.java
New file
@@ -0,0 +1,62 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
/**
 * 系统积分设置
 */
@TableName("t_sys_integral")
public class SysIntegral {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 企业id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 积分
     */
    @TableField("integral")
    private Integer integral;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    public Integer getIntegral() {
        return integral;
    }
    public void setIntegral(Integer integral) {
        this.integral = integral;
    }
    @Override
    public String toString() {
        return "SysIntegral{" +
                "id=" + id +
                ", companyId=" + companyId +
                ", integral=" + integral +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SystemNotice.java
New file
@@ -0,0 +1,147 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 系统通知
 */
@TableName("t_system_notice")
public class SystemNotice {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 类型(1=公告,2=系统消息)
     */
    @TableField("type")
    private Integer type;
    /**
     * 系统消息类型(1=打车业务,2=优惠券)
     */
    @TableField("noticeType")
    private Integer noticeType;
    /**
     * 用户类型(1=用户,2=司机)
     */
    @TableField("userType")
    private Integer userType;
    /**
     * 公告id
     */
    @TableField("noticesId")
    private Integer noticesId;
    /**
     * 消息内容
     */
    @TableField("content")
    private String content;
    /**
     * 接收对象id
     */
    @TableField("userId")
    private Integer userId;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 阅读状态(1=未读,2=已读)
     */
    @TableField("read")
    private Integer read;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getRead() {
        return read;
    }
    public void setRead(Integer read) {
        this.read = read;
    }
    public Integer getUserType() {
        return userType;
    }
    public void setUserType(Integer userType) {
        this.userType = userType;
    }
    public Integer getNoticesId() {
        return noticesId;
    }
    public void setNoticesId(Integer noticesId) {
        this.noticesId = noticesId;
    }
    public Integer getNoticeType() {
        return noticeType;
    }
    public void setNoticeType(Integer noticeType) {
        this.noticeType = noticeType;
    }
    @Override
    public String toString() {
        return "SystemNotice{" +
                "id=" + id +
                ", type=" + type +
                ", userType=" + userType +
                ", noticesId=" + noticesId +
                ", content='" + content + '\'' +
                ", userId=" + userId +
                ", insertTime=" + insertTime +
                ", read=" + read +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SystemPrice.java
New file
@@ -0,0 +1,90 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
/**
 * 服务价格规则
 */
@TableName("t_system_price")
public class SystemPrice {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 业务类型(1=专车,2=出租车,3=城际,4=小件物流-同城,5=小件物流-跨城,6=包车)
     */
    @TableField("type")
    private Integer type;
    /**
     * 企业id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 服务车型设置
     */
    @TableField("serverCarModelId")
    private Integer serverCarModelId;
    /**
     * 价格规则,每个输入框为一个参数{"num1":1,"num2":2.3}
     */
    @TableField("content")
    private String content;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Integer getServerCarModelId() {
        return serverCarModelId;
    }
    public void setServerCarModelId(Integer serverCarModelId) {
        this.serverCarModelId = serverCarModelId;
    }
    @Override
    public String toString() {
        return "SystemPrice{" +
                "id=" + id +
                ", type=" + type +
                ", companyId=" + companyId +
                ", serverCarModelId=" + serverCarModelId +
                ", content='" + content + '\'' +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TNotices.java
New file
@@ -0,0 +1,235 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableName;
import lombok.Data;
import java.io.Serializable;
/**
 * <p>
 * 发布公告和滚动消息
 * </p>
 *
 * @author 吕雪
 * @since 2020-06-10
 */
@TableName("t_notices")
@Data
public class TNotices extends Model<TNotices> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 标题
     */
    private String title;
    /**
     * 内容
     */
    private String content;
    /**
     * 排序
     */
    private Integer sort;
    /**
     * 是否显示/发布(1=是,2=否)
     */
    private Integer isShow;
    /**
     * 是否首页弹框(1=否,2=是)
     */
    private Integer isAlert;
    /**
     * 是否播报(1=是,2=否)
     */
    private Integer isBroadcast;
    /**
     * 公告类型(1=滚动消息,2=公告)
     */
    private Integer type;
    /**
     * 图片路径
     */
    private String imgUrl;
    /**
     * 1:创建,2:修改,3:删除
     */
    private String flag;
    private Date insertTime;
    private Integer insertUser;
    private Date updateTime;
    private Integer updateUser;
    /**
     * 是否删除 1=否 2=是
     */
    private Integer isDelete;
    /**
     * 是否发布用户 1=否  2=是
     */
    private Integer isUser;
    /**
     * 是否发布司机  1=否  2=是
     */
    private Integer isDriver;
    public Integer getIsUser() {
        return isUser;
    }
    public void setIsUser(Integer isUser) {
        this.isUser = isUser;
    }
    public Integer getIsDriver() {
        return isDriver;
    }
    public void setIsDriver(Integer isDriver) {
        this.isDriver = isDriver;
    }
    public Integer getIsDelete() {
        return isDelete;
    }
    public void setIsDelete(Integer isDelete) {
        this.isDelete = isDelete;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Integer getSort() {
        return sort;
    }
    public void setSort(Integer sort) {
        this.sort = sort;
    }
    public Integer getIsShow() {
        return isShow;
    }
    public void setIsShow(Integer isShow) {
        this.isShow = isShow;
    }
    public Integer getIsBroadcast() {
        return isBroadcast;
    }
    public void setIsBroadcast(Integer isBroadcast) {
        this.isBroadcast = isBroadcast;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public String getImgUrl() {
        return imgUrl;
    }
    public void setImgUrl(String imgUrl) {
        this.imgUrl = imgUrl;
    }
    public String getFlag() {
        return flag;
    }
    public void setFlag(String flag) {
        this.flag = flag;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getInsertUser() {
        return insertUser;
    }
    public void setInsertUser(Integer insertUser) {
        this.insertUser = insertUser;
    }
    public Date getUpdateTime() {
        return updateTime;
    }
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    public Integer getUpdateUser() {
        return updateUser;
    }
    public void setUpdateUser(Integer updateUser) {
        this.updateUser = updateUser;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    @Override
    public String toString() {
        return "TNotices{" +
                "id=" + id +
                ", title=" + title +
                ", content=" + content +
                ", sort=" + sort +
                ", isShow=" + isShow +
                ", isBroadcast=" + isBroadcast +
                ", type=" + type +
                ", imgUrl=" + imgUrl +
                ", flag=" + flag +
                ", insertTime=" + insertTime +
                ", insertUser=" + insertUser +
                ", updateTime=" + updateTime +
                ", updateUser=" + updateUser +
                "}";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/User.java
New file
@@ -0,0 +1,232 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.io.Serializable;
import java.util.Date;
/**
 * <p>
 * 管理员表
 * </p>
 *
 * @author stylefeng
 * @since 2017-07-11
 */
@TableName("sys_user")
public class User extends Model<User> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @TableId(value="id", type= IdType.AUTO)
    private Integer id;
    /**
     * 头像
     */
    private String avatar;
    /**
     * 账号
     */
    private String account;
    /**
     * 密码
     */
    private String password;
    /**
     * md5密码盐
     */
    private String salt;
    /**
     * 名字
     */
    private String name;
    /**
     * 生日
     */
    private Date birthday;
    /**
     * 性别(1:男 2:女)
     */
    private Integer sex;
    /**
     * 电子邮件
     */
    private String email;
    /**
     * 电话
     */
    private String phone;
    /**
     * 角色id
     */
    private String roleid;
    /**
     * 部门id
     */
    private Integer deptid;
    /**
     * 状态(1:启用  2:冻结  3:删除)
     */
    private Integer status;
    /**
     * 创建时间
     */
    private Date createtime;
    /**
     * 保留字段
     */
    private Integer version;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getAvatar() {
        return avatar;
    }
    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }
    public String getAccount() {
        return account;
    }
    public void setAccount(String account) {
        this.account = account;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public String getSalt() {
        return salt;
    }
    public void setSalt(String salt) {
        this.salt = salt;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Date getBirthday() {
        return birthday;
    }
    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }
    public Integer getSex() {
        return sex;
    }
    public void setSex(Integer sex) {
        this.sex = sex;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public String getPhone() {
        return phone;
    }
    public void setPhone(String phone) {
        this.phone = phone;
    }
    public String getRoleid() {
        return roleid;
    }
    public void setRoleid(String roleid) {
        this.roleid = roleid;
    }
    public Integer getDeptid() {
        return deptid;
    }
    public void setDeptid(Integer deptid) {
        this.deptid = deptid;
    }
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    public Date getCreatetime() {
        return createtime;
    }
    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }
    public Integer getVersion() {
        return version;
    }
    public void setVersion(Integer version) {
        this.version = version;
    }
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    @Override
    public String toString() {
        return "User{" +
            "id=" + id +
            ", avatar=" + avatar +
            ", account=" + account +
            ", password=" + password +
            ", salt=" + salt +
            ", name=" + name +
            ", birthday=" + birthday +
            ", sex=" + sex +
            ", email=" + email +
            ", phone=" + phone +
            ", roleid=" + roleid +
            ", deptid=" + deptid +
            ", status=" + status +
            ", createtime=" + createtime +
            ", version=" + version +
            "}";
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserActivityBalance.java
New file
@@ -0,0 +1,260 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 充值优惠券活动
 */
@TableName("t_user_activity_balance")
public class UserActivityBalance {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 是否启用(1=不启用,2=启用)
     */
    @TableField("enable")
    private Integer enable;
    /**
     * 活动主表id
     */
    @TableField("userActivityId")
    private Integer userActivityId;
    /**
     * 充值金额
     */
    @TableField("money")
    private Double money;
    /**
     * 通用优惠券数量
     */
    @TableField("generalNum")
    private Integer generalNum;
    /**
     * 通用优惠券id
     */
    @TableField("generalCouponId")
    private Integer generalCouponId;
    /**
     * 专车优惠券数据
     */
    @TableField("specialNum")
    private Integer specialNum;
    /**
     * 专车优惠券id
     */
    @TableField("specialCouponId")
    private Integer specialCouponId;
    /**
     * 出租车优惠券数量
     */
    @TableField("taxiNum")
    private Integer taxiNum;
    /**
     * 出租车优惠券id
     */
    @TableField("taxiCouponId")
    private Integer taxiCouponId;
    /**
     * 跨城优惠券数量
     */
    @TableField("intercityNum")
    private Integer intercityNum;
    /**
     * 跨城优惠券id
     */
    @TableField("intercityCouponId")
    private Integer intercityCouponId;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 有效期开始时间
     */
    @TableField("startTime")
    private Date startTime;
    /**
     * 有效期结束时间
     */
    @TableField("endTime")
    private Date endTime;
    /**
     * 总金额上限
     * @return
     */
    @TableField("totalPrice")
    private Double totalPrice;
    /**
     * 剩余总金额上限
     * @return
     */
    @TableField("lavePrice")
    private Double lavePrice;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getEnable() {
        return enable;
    }
    public void setEnable(Integer enable) {
        this.enable = enable;
    }
    public Integer getUserActivityId() {
        return userActivityId;
    }
    public void setUserActivityId(Integer userActivityId) {
        this.userActivityId = userActivityId;
    }
    public Double getMoney() {
        return money;
    }
    public void setMoney(Double money) {
        this.money = money;
    }
    public Integer getGeneralNum() {
        return generalNum;
    }
    public void setGeneralNum(Integer generalNum) {
        this.generalNum = generalNum;
    }
    public Integer getGeneralCouponId() {
        return generalCouponId;
    }
    public void setGeneralCouponId(Integer generalCouponId) {
        this.generalCouponId = generalCouponId;
    }
    public Integer getSpecialNum() {
        return specialNum;
    }
    public void setSpecialNum(Integer specialNum) {
        this.specialNum = specialNum;
    }
    public Integer getSpecialCouponId() {
        return specialCouponId;
    }
    public void setSpecialCouponId(Integer specialCouponId) {
        this.specialCouponId = specialCouponId;
    }
    public Integer getTaxiNum() {
        return taxiNum;
    }
    public void setTaxiNum(Integer taxiNum) {
        this.taxiNum = taxiNum;
    }
    public Integer getTaxiCouponId() {
        return taxiCouponId;
    }
    public void setTaxiCouponId(Integer taxiCouponId) {
        this.taxiCouponId = taxiCouponId;
    }
    public Integer getIntercityNum() {
        return intercityNum;
    }
    public void setIntercityNum(Integer intercityNum) {
        this.intercityNum = intercityNum;
    }
    public Integer getIntercityCouponId() {
        return intercityCouponId;
    }
    public void setIntercityCouponId(Integer intercityCouponId) {
        this.intercityCouponId = intercityCouponId;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Date getStartTime() {
        return startTime;
    }
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    public Double getTotalPrice() {
        return totalPrice;
    }
    public void setTotalPrice(Double totalPrice) {
        this.totalPrice = totalPrice;
    }
    public Double getLavePrice() {
        return lavePrice;
    }
    public void setLavePrice(Double lavePrice) {
        this.lavePrice = lavePrice;
    }
    @Override
    public String toString() {
        return "UserActivityBalance{" +
                "id=" + id +
                ", enable=" + enable +
                ", userActivityId=" + userActivityId +
                ", money=" + money +
                ", generalNum=" + generalNum +
                ", generalCouponId=" + generalCouponId +
                ", specialNum=" + specialNum +
                ", specialCouponId=" + specialCouponId +
                ", taxiNum=" + taxiNum +
                ", taxiCouponId=" + taxiCouponId +
                ", intercityNum=" + intercityNum +
                ", intercityCouponId=" + intercityCouponId +
                ", insertTime=" + insertTime +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserActivityDiscount1.java
New file
@@ -0,0 +1,134 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 用户折扣活动
 */
@TableName("t_user_activity_discount1")
public class UserActivityDiscount1 {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 活动id
     */
    @TableField("userActivityId")
    private Integer userActivityId;
    /**
     * 专车折扣
     */
    @TableField("special")
    private Double special;
    /**
     * 出租车折扣
     */
    @TableField("taxi")
    private Double taxi;
    /**
     * 小件物流折扣
     */
    @TableField("logistics")
    private Double logistics;
    /**
     * 活动有效开始时间
     */
    @TableField("startTime")
    private Date startTime;
    /**
     * 活动有效结束时间
     */
    @TableField("endTime")
    private Date endTime;
    /**
     * 是否启用(1=不启用,2=启用)
     */
    @TableField("enable")
    private Integer enable;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getUserActivityId() {
        return userActivityId;
    }
    public void setUserActivityId(Integer userActivityId) {
        this.userActivityId = userActivityId;
    }
    public Double getSpecial() {
        return special;
    }
    public void setSpecial(Double special) {
        this.special = special;
    }
    public Double getTaxi() {
        return taxi;
    }
    public void setTaxi(Double taxi) {
        this.taxi = taxi;
    }
    public Double getLogistics() {
        return logistics;
    }
    public void setLogistics(Double logistics) {
        this.logistics = logistics;
    }
    public Date getStartTime() {
        return startTime;
    }
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    public Integer getEnable() {
        return enable;
    }
    public void setEnable(Integer enable) {
        this.enable = enable;
    }
    @Override
    public String toString() {
        return "UserActivityDiscount1{" +
                "id=" + id +
                ", userActivityId=" + userActivityId +
                ", special=" + special +
                ", taxi=" + taxi +
                ", logistics=" + logistics +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", enable=" + enable +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserActivityInvite.java
New file
@@ -0,0 +1,162 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 用户邀请活动
 */
@TableName("t_user_activity_invite")
public class UserActivityInvite {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 用户活动主表
     */
    @TableField("userActivityId")
    private Integer userActivityId;
    /**
     * 优惠券id
     */
    @TableField("couponId")
    private Integer couponId;
    /**
     * 优惠券数量
     */
    @TableField("totalNum")
    private Integer totalNum;
    /**
     * 有效开始时间
     */
    @TableField("startTime")
    private Date startTime;
    /**
     * 有效结束时间
     */
    @TableField("endTime")
    private Date endTime;
    /**
     * 是否启用(1=不启用,2=启用)
     */
    @TableField("enable")
    private Integer enable;
    /**
     * 有效天数
     */
    @TableField("effective")
    private Integer effective;
    /**
     * 总金额上限
     * @return
     */
    @TableField("totalPrice")
    private Double totalPrice;
    /**
     * 剩余总金额上限
     * @return
     */
    @TableField("lavePrice")
    private Double lavePrice;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getUserActivityId() {
        return userActivityId;
    }
    public void setUserActivityId(Integer userActivityId) {
        this.userActivityId = userActivityId;
    }
    public Integer getCouponId() {
        return couponId;
    }
    public void setCouponId(Integer couponId) {
        this.couponId = couponId;
    }
    public Integer getTotalNum() {
        return totalNum;
    }
    public void setTotalNum(Integer totalNum) {
        this.totalNum = totalNum;
    }
    public Date getStartTime() {
        return startTime;
    }
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    public Integer getEnable() {
        return enable;
    }
    public void setEnable(Integer enable) {
        this.enable = enable;
    }
    public Integer getEffective() {
        return effective;
    }
    public void setEffective(Integer effective) {
        this.effective = effective;
    }
    public Double getTotalPrice() {
        return totalPrice;
    }
    public void setTotalPrice(Double totalPrice) {
        this.totalPrice = totalPrice;
    }
    public Double getLavePrice() {
        return lavePrice;
    }
    public void setLavePrice(Double lavePrice) {
        this.lavePrice = lavePrice;
    }
    @Override
    public String toString() {
        return "UserActivityInvite{" +
                "id=" + id +
                ", userActivityId=" + userActivityId +
                ", couponId=" + couponId +
                ", totalNum=" + totalNum +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", enable=" + enable +
                ", effective=" + effective +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserActivityRedenvelope.java
New file
@@ -0,0 +1,162 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 分享红包活动
 */
@TableName("t_user_activity_redenvelope")
public class UserActivityRedenvelope {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 活动id
     */
    @TableField("userActivityId")
    private Integer userActivityId;
    /**
     * 红包id
     */
    @TableField("redEnvelopeId")
    private Integer redEnvelopeId;
    /**
     * 总金额
     */
    @TableField("totalMoney")
    private Double totalMoney;
    /**
     * 剩余金额
     */
    @TableField("laveMoney")
    private Double laveMoney;
    /**
     * 活动开始时间
     */
    @TableField("startTime")
    private Date startTime;
    /**
     * 活动结束时间
     */
    @TableField("endTime")
    private Date endTime;
    /**
     * 是否启用
     */
    @TableField("enable")
    private Integer enable;
    /**
     * 总金额上限
     * @return
     */
    @TableField("totalPrice")
    private Double totalPrice;
    /**
     * 剩余总金额上限
     * @return
     */
    @TableField("lavePrice")
    private Double lavePrice;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getUserActivityId() {
        return userActivityId;
    }
    public void setUserActivityId(Integer userActivityId) {
        this.userActivityId = userActivityId;
    }
    public Integer getRedEnvelopeId() {
        return redEnvelopeId;
    }
    public void setRedEnvelopeId(Integer redEnvelopeId) {
        this.redEnvelopeId = redEnvelopeId;
    }
    public Double getTotalMoney() {
        return totalMoney;
    }
    public void setTotalMoney(Double totalMoney) {
        this.totalMoney = totalMoney;
    }
    public Double getLaveMoney() {
        return laveMoney;
    }
    public void setLaveMoney(Double laveMoney) {
        this.laveMoney = laveMoney;
    }
    public Date getStartTime() {
        return startTime;
    }
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    public Integer getEnable() {
        return enable;
    }
    public void setEnable(Integer enable) {
        this.enable = enable;
    }
    public Double getTotalPrice() {
        return totalPrice;
    }
    public void setTotalPrice(Double totalPrice) {
        this.totalPrice = totalPrice;
    }
    public Double getLavePrice() {
        return lavePrice;
    }
    public void setLavePrice(Double lavePrice) {
        this.lavePrice = lavePrice;
    }
    @Override
    public String toString() {
        return "UserActivityRedenvelope{" +
                "id=" + id +
                ", userActivityId=" + userActivityId +
                ", redEnvelopeId=" + redEnvelopeId +
                ", totalMoney=" + totalMoney +
                ", laveMoney=" + laveMoney +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", enable=" + enable +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserActivityRegistered.java
New file
@@ -0,0 +1,162 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 用户注册活动
 */
@TableName("t_user_activity_registered")
public class UserActivityRegistered {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 用户活动id
     */
    @TableField("userActivityId")
    private Integer userActivityId;
    /**
     * 优惠券id
     */
    @TableField("couponId")
    private Integer couponId;
    /**
     * 优惠券总数量
     */
    @TableField("totalNum")
    private Integer totalNum;
    /**
     * 优惠券剩余数量
     */
    @TableField("laveNum")
    private Integer laveNum;
    /**
     * 开始时间
     */
    @TableField("startTime")
    private Date startTime;
    /**
     * 结束时间
     */
    @TableField("endTime")
    private Date endTime;
    /**
     * 是否启用(1=不启用,2=启用)
     */
    @TableField("enable")
    private Integer enable;
    /**
     * 总金额上限
     * @return
     */
    @TableField("totalPrice")
    private Double totalPrice;
    /**
     * 剩余总金额上限
     * @return
     */
    @TableField("lavePrice")
    private Double lavePrice;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getUserActivityId() {
        return userActivityId;
    }
    public void setUserActivityId(Integer userActivityId) {
        this.userActivityId = userActivityId;
    }
    public Integer getCouponId() {
        return couponId;
    }
    public void setCouponId(Integer couponId) {
        this.couponId = couponId;
    }
    public Integer getTotalNum() {
        return totalNum;
    }
    public void setTotalNum(Integer totalNum) {
        this.totalNum = totalNum;
    }
    public Integer getLaveNum() {
        return laveNum;
    }
    public void setLaveNum(Integer laveNum) {
        this.laveNum = laveNum;
    }
    public Date getStartTime() {
        return startTime;
    }
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    public Integer getEnable() {
        return enable;
    }
    public void setEnable(Integer enable) {
        this.enable = enable;
    }
    public Double getTotalPrice() {
        return totalPrice;
    }
    public void setTotalPrice(Double totalPrice) {
        this.totalPrice = totalPrice;
    }
    public Double getLavePrice() {
        return lavePrice;
    }
    public void setLavePrice(Double lavePrice) {
        this.lavePrice = lavePrice;
    }
    @Override
    public String toString() {
        return "UserActivityRegistered{" +
                "id=" + id +
                ", userActivityId=" + userActivityId +
                ", couponId=" + couponId +
                ", totalNum=" + totalNum +
                ", laveNum=" + laveNum +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", enable=" + enable +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserCouponRecord.java
New file
@@ -0,0 +1,234 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 用户优惠券记录
 */
@TableName("t_user_coupon_record")
public class UserCouponRecord {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 金额
     */
    @TableField("money")
    private Double money;
    /**
     * 满减的满金额
     */
    @TableField("fullMoney")
    private Double fullMoney;
    /**
     * 过期时间
     */
    @TableField("expirationTime")
    private Date expirationTime;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 企业id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 状态(1=未使用,2=已使用,3=已过期)
     */
    @TableField("state")
    private Integer state;
    /**
     * 使用结束时间
     */
    @TableField("endTime")
    private Date endTime;
    /**
     * 优惠券使用类型(0=通用,1=专车,2=出租车,3=城际,4=小件物流)
     */
    @TableField("couponUseType")
    private Integer couponUseType;
    /**
     * 优惠券类型(1=抵扣券,2=满减券)
     */
    @TableField("couponType")
    private Integer couponType;
    /**
     * 用户id
     */
    @TableField("userId")
    private Integer userId;
    /**
     * 优惠券id
     * @return
     */
    @TableField("couponId")
    private Integer couponId;
    /**
     * 活动id
     * @return
     */
    @TableField("couponActivityId")
    private Integer couponActivityId;
    /**
     * 活动类型(1=赠送活动,2=注册,3=邀请,4=充值)
     * @return
     */
    @TableField("activityType")
    private Integer activityType;
    /**
     * 充值记录id
     * @return
     */
    @TableField("paymentRecordId")
    private Integer paymentRecordId;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Double getMoney() {
        return money;
    }
    public void setMoney(Double money) {
        this.money = money;
    }
    public Double getFullMoney() {
        return fullMoney;
    }
    public void setFullMoney(Double fullMoney) {
        this.fullMoney = fullMoney;
    }
    public Date getExpirationTime() {
        return expirationTime;
    }
    public void setExpirationTime(Date expirationTime) {
        this.expirationTime = expirationTime;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Integer getCouponUseType() {
        return couponUseType;
    }
    public void setCouponUseType(Integer couponUseType) {
        this.couponUseType = couponUseType;
    }
    public Integer getCouponType() {
        return couponType;
    }
    public void setCouponType(Integer couponType) {
        this.couponType = couponType;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    public Integer getCouponId() {
        return couponId;
    }
    public void setCouponId(Integer couponId) {
        this.couponId = couponId;
    }
    public Integer getCouponActivityId() {
        return couponActivityId;
    }
    public void setCouponActivityId(Integer couponActivityId) {
        this.couponActivityId = couponActivityId;
    }
    public Integer getActivityType() {
        return activityType;
    }
    public void setActivityType(Integer activityType) {
        this.activityType = activityType;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    public Integer getPaymentRecordId() {
        return paymentRecordId;
    }
    public void setPaymentRecordId(Integer paymentRecordId) {
        this.paymentRecordId = paymentRecordId;
    }
    @Override
    public String toString() {
        return "UserCouponRecord{" +
                "id=" + id +
                ", money=" + money +
                ", fullMoney=" + fullMoney +
                ", expirationTime=" + expirationTime +
                ", insertTime=" + insertTime +
                ", companyId=" + companyId +
                ", state=" + state +
                ", couponUseType=" + couponUseType +
                ", couponType=" + couponType +
                ", userId=" + userId +
                ", couponId=" + couponId +
                ", couponActivityId=" + couponActivityId +
                ", activityType=" + activityType +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserInfo.java
New file
@@ -0,0 +1,361 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
import lombok.Data;
import java.util.Date;
/**
 * 用户
 */
@TableName("t_user")
@Data
public class UserInfo extends BaseBean {
    /**
     * 企业id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 注册id
     */
    @TableField("registIp")
    private String registIp;
    /**
     * 注册地区县行政编号
     */
    @TableField("registAreaCode")
    private String registAreaCode;
    /**
     * 手机号
     */
    @TableField("phone")
    private String phone;
    /**
     * 昵称
     */
    @TableField("nickName")
    private String nickName;
    /**
     * 头像
     */
    @TableField("avatar")
    private String avatar;
    /**
     * 生日
     */
    @TableField("birthday")
    private Date birthday;
    /**
     * 性别(1=男,2=女)
     */
    @TableField("sex")
    private Integer sex;
    @TableField("isBlack")
    private Integer isBlack;
    /**
     * 紧急联系人
     */
    @TableField("emergencyContact")
    private String emergencyContact;
    /**
     * 联系人电话
     */
    @TableField("emergencyContactNumber")
    private String emergencyContactNumber;
    /**
     * 是否已实名(1:否,2:是)
     */
    @TableField("isAuth")
    private Integer isAuth;
    /**
     * 真实姓名
     */
    @TableField("name")
    private String name;
    /**
     * 身份证号码
     */
    @TableField("idCard")
    private String idCard;
    /**
     * 身份证正面
     */
    @TableField("idCardFront")
    private String idCardFront;
    /**
     * 身份证背面
     */
    @TableField("idCardReverse")
    private String idCardReverse;
    /**
     * 历史消费总金额
     */
    @TableField("consumption")
    private Double consumption;
    /**
     * 账户余额
     */
    @TableField("balance")
    private Double balance;
    /**
     * 剩余积分
     */
    @TableField("integral")
    private Integer integral;
    /**
     * 密码
     */
    @TableField("passWord")
    private String passWord;
    /**
     * 微信openid
     */
    @TableField("openId")
    private String openId;
    /**
     * 小程序openid
     */
    @TableField("appletsOpenId")
    private String appletsOpenId;
    /**
     * 微信unionid
     */
    @TableField("unionid")
    private String unionid;
    /**
     * 备注
     * @return
     */
    @TableField("remark")
    private String remark;
    /**
     * 状态(1=正常,2=冻结)
     * @return
     */
    @TableField("state")
    private Integer state;
    public String getRegistIp() {
        return registIp;
    }
    public void setRegistIp(String registIp) {
        this.registIp = registIp;
    }
    public String getRegistAreaCode() {
        return registAreaCode;
    }
    public void setRegistAreaCode(String registAreaCode) {
        this.registAreaCode = registAreaCode;
    }
    public String getPhone() {
        return phone;
    }
    public void setPhone(String phone) {
        this.phone = phone;
    }
    public String getNickName() {
        return nickName;
    }
    public void setNickName(String nickName) {
        this.nickName = nickName;
    }
    public String getEmergencyContact() {
        return emergencyContact;
    }
    public void setEmergencyContact(String emergencyContact) {
        this.emergencyContact = emergencyContact;
    }
    public String getEmergencyContactNumber() {
        return emergencyContactNumber;
    }
    public void setEmergencyContactNumber(String emergencyContactNumber) {
        this.emergencyContactNumber = emergencyContactNumber;
    }
    public String getAvatar() {
        return avatar;
    }
    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }
    public Date getBirthday() {
        return birthday;
    }
    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }
    public Integer getSex() {
        return sex;
    }
    public void setSex(Integer sex) {
        this.sex = sex;
    }
    public Integer getIsAuth() {
        return isAuth;
    }
    public void setIsAuth(Integer isAuth) {
        this.isAuth = isAuth;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getIdCard() {
        return idCard;
    }
    public void setIdCard(String idCard) {
        this.idCard = idCard;
    }
    public String getIdCardFront() {
        return idCardFront;
    }
    public void setIdCardFront(String idCardFront) {
        this.idCardFront = idCardFront;
    }
    public String getIdCardReverse() {
        return idCardReverse;
    }
    public void setIdCardReverse(String idCardReverse) {
        this.idCardReverse = idCardReverse;
    }
    public Double getConsumption() {
        return consumption;
    }
    public void setConsumption(Double consumption) {
        this.consumption = consumption;
    }
    public Double getBalance() {
        return balance;
    }
    public void setBalance(Double balance) {
        this.balance = balance;
    }
    public Integer getIntegral() {
        return integral;
    }
    public void setIntegral(Integer integral) {
        this.integral = integral;
    }
    public String getPassWord() {
        return passWord;
    }
    public void setPassWord(String passWord) {
        this.passWord = passWord;
    }
    public String getOpenId() {
        return openId;
    }
    public void setOpenId(String openId) {
        this.openId = openId;
    }
    public String getUnionid() {
        return unionid;
    }
    public void setUnionid(String unionid) {
        this.unionid = unionid;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public String getAppletsOpenId() {
        return appletsOpenId;
    }
    public void setAppletsOpenId(String appletsOpenId) {
        this.appletsOpenId = appletsOpenId;
    }
    @Override
    public String toString() {
        return "UserInfo{" +
                "companyId=" + companyId +
                ", registIp='" + registIp + '\'' +
                ", registAreaCode='" + registAreaCode + '\'' +
                ", phone='" + phone + '\'' +
                ", nickName='" + nickName + '\'' +
                ", avatar='" + avatar + '\'' +
                ", birthday=" + birthday +
                ", sex=" + sex +
                ", emergencyContact='" + emergencyContact + '\'' +
                ", emergencyContactNumber='" + emergencyContactNumber + '\'' +
                ", isAuth=" + isAuth +
                ", name='" + name + '\'' +
                ", idCard='" + idCard + '\'' +
                ", idCardFront='" + idCardFront + '\'' +
                ", idCardReverse='" + idCardReverse + '\'' +
                ", consumption=" + consumption +
                ", balance=" + balance +
                ", integral=" + integral +
                ", passWord='" + passWord + '\'' +
                ", openId='" + openId + '\'' +
                ", unionid='" + unionid + '\'' +
                ", remark='" + remark + '\'' +
                ", state=" + state +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserRedPacketRecord.java
New file
@@ -0,0 +1,176 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 用户红包记录
 */
@TableName("t_user_red_packet_record")
public class UserRedPacketRecord {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 金额
     */
    @TableField("money")
    private Double money;
    /**
     * 过期时间
     */
    @TableField("expirationTime")
    private Date expirationTime;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 企业id
     */
    @TableField("companyId")
    private Integer companyId;
    /**
     * 状态(0=临时,1=未使用,2=已使用,3=已过期)
     */
    @TableField("state")
    private Integer state;
    /**
     * 使用结束时间
     */
    @TableField("endTime")
    private Date endTime;
    /**
     * 订单id(获取红包的订单)
     */
    @TableField("orderId")
    private Integer orderId;
    /**
     * 订单类型(1=专车,2=出租车,3=城际,4=小件物流)
     */
    @TableField("orderType")
    private Integer orderType;
    /**
     * 用户id
     */
    @TableField("userId")
    private Integer userId;
    /**
     * 活动id
     * @return
     */
    @TableField("redPacketActivityId")
    private Integer redPacketActivityId;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Double getMoney() {
        return money;
    }
    public void setMoney(Double money) {
        this.money = money;
    }
    public Date getExpirationTime() {
        return expirationTime;
    }
    public void setExpirationTime(Date expirationTime) {
        this.expirationTime = expirationTime;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getCompanyId() {
        return companyId;
    }
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Integer getOrderId() {
        return orderId;
    }
    public void setOrderId(Integer orderId) {
        this.orderId = orderId;
    }
    public Integer getOrderType() {
        return orderType;
    }
    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    public Integer getRedPacketActivityId() {
        return redPacketActivityId;
    }
    public void setRedPacketActivityId(Integer redPacketActivityId) {
        this.redPacketActivityId = redPacketActivityId;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    @Override
    public String toString() {
        return "UserRedPacketRecord{" +
                "id=" + id +
                ", money=" + money +
                ", expirationTime=" + expirationTime +
                ", insertTime=" + insertTime +
                ", companyId=" + companyId +
                ", state=" + state +
                ", orderId=" + orderId +
                ", orderType=" + orderType +
                ", userId=" + userId +
                ", redPacketActivityId=" + redPacketActivityId +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Verified.java
New file
@@ -0,0 +1,134 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 实名认证记录
 */
@TableName("t_verified")
public class Verified {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 用户id
     */
    @TableField("userId")
    private Integer userId;
    /**
     * 认证姓名
     */
    @TableField("name")
    private String name;
    /**
     * 身份证号码
     */
    @TableField("idcode")
    private String idcode;
    /**
     * 身份证正面照
     */
    @TableField("img1")
    private String img1;
    /**
     * 身份证背面照
     */
    @TableField("img2")
    private String img2;
    /**
     * 认证结果(1=待认证,2=认证通过,3=认证失败)
     */
    @TableField("state")
    private Integer state;
    /**
     * 请求时间
     */
    @TableField("insertTime")
    private Date insertTime;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getIdcode() {
        return idcode;
    }
    public void setIdcode(String idcode) {
        this.idcode = idcode;
    }
    public String getImg1() {
        return img1;
    }
    public void setImg1(String img1) {
        this.img1 = img1;
    }
    public String getImg2() {
        return img2;
    }
    public void setImg2(String img2) {
        this.img2 = img2;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    @Override
    public String toString() {
        return "Verified{" +
                "id=" + id +
                ", userId=" + userId +
                ", name='" + name + '\'' +
                ", idcode='" + idcode + '\'' +
                ", img1='" + img1 + '\'' +
                ", img2='" + img2 + '\'' +
                ", state=" + state +
                ", insertTime=" + insertTime +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/VersionManagement.java
New file
@@ -0,0 +1,120 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 版本管理
 */
@TableName("t_version_management")
public class VersionManagement {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 包路径
     */
    @TableField("url")
    private String url;
    /**
     * 版本号
     */
    @TableField("version")
    private String version;
    /**
     * 更新说明
     */
    @TableField("content")
    private String content;
    /**
     * 是否强制更新(0=否,1=是)
     */
    @TableField("mandatory")
    private Integer mandatory;
    /**
     * 添加时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 类型(1=用户端,2=司机端)
     */
    @TableField("type")
    private Integer type;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getUrl() {
        return url;
    }
    public void setUrl(String url) {
        this.url = url;
    }
    public String getVersion() {
        return version;
    }
    public void setVersion(String version) {
        this.version = version;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Integer getMandatory() {
        return mandatory;
    }
    public void setMandatory(Integer mandatory) {
        this.mandatory = mandatory;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    @Override
    public String toString() {
        return "VersionManagement{" +
                "id=" + id +
                ", url='" + url + '\'' +
                ", version='" + version + '\'' +
                ", content='" + content + '\'' +
                ", mandatory=" + mandatory +
                ", insertTime=" + insertTime +
                ", type=" + type +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/Withdrawal.java
New file
@@ -0,0 +1,220 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
/**
 * 提现记录
 */
@TableName("t_pub_withdrawal")
public class Withdrawal {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @TableField("id")
    private Integer id;
    /**
     * 用户id
     */
    @TableField("userId")
    private Integer userId;
    /**
     * 处理时间
     */
    @TableField("handleTime")
    private Date handleTime;
    /**
     * 原钱包余额
     */
    @TableField("balance")
    private Double balance;
    /**
     * 提现金额
     */
    @TableField("money")
    private Double money;
    /**
     * 状态(1=待处理,2=处理成功,3=处理失败)
     */
    @TableField("state")
    private Integer state;
    /**
     * 备注
     */
    @TableField("remark")
    private String remark;
    /**
     * 银行账户
     */
    @TableField("code")
    private String code;
    /**
     * 银行卡持有人姓名
     */
    @TableField("name")
    private String name;
    /**
     * 用户类型(1=用户,2=司机)
     */
    @TableField("userType")
    private Integer userType;
    /**
     * 申请时间
     */
    @TableField("insertTime")
    private Date insertTime;
    /**
     * 1:创建,2:修改,3:删除
     */
    @TableField("flag")
    private Integer flag;
    /**
     * 提现方式(1=银行卡,2=线下)
     * @return
     */
    @TableField("withdrawalType")
    private Integer withdrawalType;
    /**
     * 银行提交转账申请后的交易序列号,用于查询交易状态
     * @return
     */
    @TableField("serialNo")
    private String serialNo;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Integer getUserId() {
        return userId;
    }
    public void setUserId(Integer userId) {
        this.userId = userId;
    }
    public Date getHandleTime() {
        return handleTime;
    }
    public void setHandleTime(Date handleTime) {
        this.handleTime = handleTime;
    }
    public Double getBalance() {
        return balance;
    }
    public void setBalance(Double balance) {
        this.balance = balance;
    }
    public Double getMoney() {
        return money;
    }
    public void setMoney(Double money) {
        this.money = money;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getUserType() {
        return userType;
    }
    public void setUserType(Integer userType) {
        this.userType = userType;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getFlag() {
        return flag;
    }
    public void setFlag(Integer flag) {
        this.flag = flag;
    }
    public Integer getWithdrawalType() {
        return withdrawalType;
    }
    public void setWithdrawalType(Integer withdrawalType) {
        this.withdrawalType = withdrawalType;
    }
    public String getSerialNo() {
        return serialNo;
    }
    public void setSerialNo(String serialNo) {
        this.serialNo = serialNo;
    }
    @Override
    public String toString() {
        return "Withdrawal{" +
                "id=" + id +
                ", userId=" + userId +
                ", handleTime=" + handleTime +
                ", balance=" + balance +
                ", money=" + money +
                ", state=" + state +
                ", remark='" + remark + '\'' +
                ", code='" + code + '\'' +
                ", name='" + name + '\'' +
                ", userType=" + userType +
                ", insertTime=" + insertTime +
                ", flag=" + flag +
                ", withdrawalType=" + withdrawalType +
                ", serialNo='" + serialNo + '\'' +
                '}';
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IAdvertisementService.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Advertisement;
import com.stylefeng.guns.modular.system.warpper.AdvertisementWarpper;
import java.util.List;
public interface IAdvertisementService extends IService<Advertisement> {
    /**
     * 获取广告
     * @param type  广告类型(1:弹窗广告,2:底部广告)
     * @return
     * @throws Exception
     */
    List<AdvertisementWarpper> queryAdvertisement(String code, Integer type) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IAgreementService.java
New file
@@ -0,0 +1,16 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Agreement;
public interface IAgreementService extends IService<Agreement> {
    /**
     * 获取协议内容
     * @param type
     * @return
     * @throws Exception
     */
    String queryByType(Integer type) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ICancleOrderService.java
New file
@@ -0,0 +1,18 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.CancleOrder;
public interface ICancleOrderService extends IService<CancleOrder> {
    /**
     * 获取取消订单设置
     * @param type
     * @param orderType
     * @return
     * @throws Exception
     */
    CancleOrder query(Integer type, Integer orderType, Integer companyId) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ICompanyCityService.java
New file
@@ -0,0 +1,27 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Company;
import com.stylefeng.guns.modular.system.model.CompanyCity;
public interface ICompanyCityService extends IService<CompanyCity> {
    /**
     * 根据经纬度获取所属企业
     * @param lon
     * @param lat
     * @return
     * @throws Exception
     */
    Company query(String lon, String lat) throws Exception;
    /**
     * 根据行政编号获取所有企业
     * @param code
     * @return
     * @throws Exception
     */
    Company query(String code) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ICompanyService.java
New file
@@ -0,0 +1,7 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Company;
public interface ICompanyService extends IService<Company> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IComplaintService.java
New file
@@ -0,0 +1,18 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Complaint;
public interface IComplaintService extends IService<Complaint> {
    /**
     * 添加投诉
     * @param driverId      司机id
     * @param reason        投诉原因
     * @param description   描述
     * @param uid           投诉人
     * @throws Exception
     */
    void saveData(Integer driverId, String reason, String description, Integer uid) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IDeptService.java
New file
@@ -0,0 +1,33 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.modular.system.model.Dept;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * 部门服务
 *
 * @author fengshuonan
 * @date 2017-04-27 17:00
 */
public interface IDeptService extends IService<Dept> {
    /**
     * 删除部门
     */
    void deleteDept(Integer deptId);
    /**
     * 获取ztree的节点列表
     */
    List<ZTreeNode> tree();
    /**
     * 获取所有部门列表
     */
    List<Map<String, Object>> list(@Param("condition") String condition);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IDictService.java
New file
@@ -0,0 +1,48 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Dict;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * 字典服务
 *
 * @author fengshuonan
 * @date 2017-04-27 17:00
 */
public interface IDictService extends IService<Dict> {
    /**
     * 添加字典
     */
    void addDict(String dictCode,String dictName,String dictTips, String dictValues);
    /**
     * 编辑字典
     */
    void editDict(Integer dictId,String dictCode, String dictName,String dictTips, String dicts);
    /**
     * 删除字典
     */
    void delteDict(Integer dictId);
    /**
     * 根据编码获取词典列表
     */
    List<Dict> selectByCode(@Param("code") String code);
    /**
     * 根据父类编码获取词典列表
     */
    List<Dict> selectByParentCode(@Param("code") String code);
    /**
     * 查询字典列表
     */
    List<Map<String, Object>> list(@Param("condition") String conditiion);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IDriverOrdersService.java
New file
@@ -0,0 +1,26 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.DriverOrders;
import java.util.List;
public interface IDriverOrdersService extends IService<DriverOrders> {
    /**
     * 接单设置操作
     * @param uid
     * @param type
     * @throws Exception
     */
    void updateOrders(Integer uid, Integer type) throws Exception;
    /**
     * 获取设置的推单规则
     * @param uid
     * @return
     * @throws Exception
     */
    List<Integer> queryOrders(Integer uid) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IDriverService.java
New file
@@ -0,0 +1,64 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Driver;
import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
import java.util.List;
import java.util.Map;
public interface IDriverService extends IService<Driver> {
    /**
     * 获取distance公里内空闲司机数量
     * @param type
     * @param lon
     * @param lat
     * @return
     * @throws Exception
     */
    List<Driver> queryIdleDriver(Integer type, Double lon, Double lat, Double distance, Integer companyId) throws Exception;
    List<Driver> queryIdleDriverAll(Integer type, Double lon, Double lat, Double distance, Integer companyId) throws Exception;
    /**
     * 获取给定车型且空闲的司机
     * @param type
     * @param serverCarModelId
     * @param lon
     * @param lat
     * @param distance
     * @param companyId
     * @return
     * @throws Exception
     */
    List<Driver> queryIdleDriver(Integer type, Integer serverCarModelId, Double lon, Double lat, Double distance, Integer companyId) throws Exception;
    /**
     * 根据订单id获取司机数据
     * @param orderId
     * @return
     * @throws Exception
     */
    Map<String, Object> queryOrderDriver(Integer orderId, Integer orderType) throws Exception;
    /**
     * 获取司机详情
     * @param id
     * @return
     * @throws Exception
     */
    Map<String, Object> queryDriverInfo(Integer id) throws Exception;
    /**
     * 获取司机的业务类型
     * @param uid
     * @return
     * @throws Exception
     */
    List<BaseWarpper> queryBusiness(Integer uid) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IDriverServiceService.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.DriverService;
import java.util.List;
public interface IDriverServiceService extends IService<DriverService> {
    /**
     * 获取司机服务业务
     * @param driverId
     * @param type
     * @return
     * @throws Exception
     */
    List<DriverService> query(Integer driverId, Integer...type) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IFeedbackService.java
New file
@@ -0,0 +1,17 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Feedback;
import com.stylefeng.guns.modular.system.util.ResultUtil;
public interface IFeedbackService extends IService<Feedback> {
    /**
     * 反馈操作
     * @param content
     * @param uid
     * @throws Exception
     */
    ResultUtil feedback(String content, Integer uid) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IGDInterfaceService.java
New file
@@ -0,0 +1,10 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.GDInterface;
public interface IGDInterfaceService extends IService<GDInterface> {
    void saveData(String name, String explanation);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IIncomeService.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Income;
public interface IIncomeService extends IService<Income> {
    /**
     * 添加数据
     * @param userType
     * @param objectId
     * @param type
     * @param incomeId
     * @param money
     * @throws Exception
     */
    void saveData(Integer userType, Integer objectId, Integer type, Integer incomeId, Integer orderType, Double money) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IIntegralGoodsService.java
New file
@@ -0,0 +1,21 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.IntegralGoods;
import java.util.List;
import java.util.Map;
public interface IIntegralGoodsService extends IService<IntegralGoods> {
    /**
     * 获取商品列表
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryGoods(Integer pageNum, Integer size) throws Exception;
    Map<String, Object> queryGoodsInfo(Integer id) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IIntegralOrderService.java
New file
@@ -0,0 +1,30 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.IntegralOrder;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import java.util.List;
import java.util.Map;
public interface IIntegralOrderService extends IService<IntegralOrder> {
    /**
     * 保存订单
     * @param integralOrder
     * @throws Exception
     */
    ResultUtil addIntegralOrder(IntegralOrder integralOrder, Integer uid) throws Exception;
    /**
     * 获取历史记录
     * @param pageNum
     * @param size
     * @param uid
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryConvertHistory(Integer pageNum, Integer size, Integer uid) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IInvoiceService.java
New file
@@ -0,0 +1,29 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Invoice;
import java.util.List;
import java.util.Map;
public interface IInvoiceService extends IService<Invoice> {
    /**
     * 开票操作
     * @param invoice
     * @param order
     * @throws Exception
     */
    void invoicing(Invoice invoice, String order, Integer uid) throws Exception;
    /**
     * 获取发票历史记录
     * @param pageNum
     * @param size
     * @param uid
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryMyInvoice(Integer pageNum, Integer size, Integer uid) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ILoginLogService.java
New file
@@ -0,0 +1,24 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.LoginLog;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 登录记录 服务类
 * </p>
 *
 * @author stylefeng123
 * @since 2018-02-22
 */
public interface ILoginLogService extends IService<LoginLog> {
    /**
     * 获取登录日志列表
     */
    List<Map<String, Object>> getLoginLogs(Page<LoginLog> page, String beginTime, String endTime, String logName, String orderByField, boolean asc);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IMenuService.java
New file
@@ -0,0 +1,94 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.core.node.MenuNode;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.modular.system.model.Menu;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * 菜单服务
 *
 * @author fengshuonan
 * @date 2017-05-05 22:19
 */
public interface IMenuService extends IService<Menu> {
    /**
     * 删除菜单
     *
     * @author stylefeng
     * @Date 2017/5/5 22:20
     */
    void delMenu(Long menuId);
    /**
     * 删除菜单包含所有子菜单
     *
     * @author stylefeng
     * @Date 2017/6/13 22:02
     */
    void delMenuContainSubMenus(Long menuId);
    /**
     * 根据条件查询菜单
     *
     * @return
     * @date 2017年2月12日 下午9:14:34
     */
    List<Map<String, Object>> selectMenus(@Param("condition") String condition, @Param("level") String level);
    /**
     * 根据条件查询菜单
     *
     * @return
     * @date 2017年2月12日 下午9:14:34
     */
    List<Long> getMenuIdsByRoleId(@Param("roleId") Integer roleId);
    /**
     * 获取菜单列表树
     *
     * @return
     * @date 2017年2月19日 下午1:33:51
     */
    List<ZTreeNode> menuTreeList();
    /**
     * 获取菜单列表树
     *
     * @return
     * @date 2017年2月19日 下午1:33:51
     */
    List<ZTreeNode> menuTreeListByMenuIds(List<Long> menuIds);
    /**
     * 删除menu关联的relation
     *
     * @param menuId
     * @return
     * @date 2017年2月19日 下午4:10:59
     */
    int deleteRelationByMenu(Long menuId);
    /**
     * 获取资源url通过角色id
     *
     * @param roleId
     * @return
     * @date 2017年2月19日 下午7:12:38
     */
    List<String> getResUrlsByRoleId(Integer roleId);
    /**
     * 根据角色获取菜单
     *
     * @param roleIds
     * @return
     * @date 2017年2月19日 下午10:35:40
     */
    List<MenuNode> getMenusByRoleIds(List<Integer> roleIds);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/INettyService.java
New file
@@ -0,0 +1,30 @@
package com.stylefeng.guns.modular.system.service;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.warpper.EndPushWarpper;
import com.stylefeng.guns.modular.system.warpper.OrderServerWarpper;
import com.stylefeng.guns.modular.system.warpper.OrderStatusWarpper;
import java.util.List;
public interface INettyService {
    /**
     * 获取下单推送完后没有司机下单的提醒
     * @param uid
     * @return
     * @throws Exception
     */
    ResultUtil<EndPushWarpper> queryEndPush(Integer orderId, Integer orderType, Integer uid) throws Exception;
    /**
     * 获取服务中的订单数据
     * @param uid
     * @return
     * @throws Exception
     */
    ResultUtil<OrderServerWarpper> queryOrderServer(Integer orderId, Integer orderType, Integer uid) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/INoticeService.java
New file
@@ -0,0 +1,23 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Notice;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 通知表 服务类
 * </p>
 *
 * @author stylefeng123
 * @since 2018-02-22
 */
public interface INoticeService extends IService<Notice> {
    /**
     * 获取通知列表
     */
    List<Map<String, Object>> list(String condition);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOpenCityBusinessService.java
New file
@@ -0,0 +1,30 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.OpenCityBusiness;
import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
import java.util.List;
public interface IOpenCityBusinessService extends IService<OpenCityBusiness> {
    /**
     * 获取业务类型
     * @param province  省名
     * @param city      市名称
     * @param district  区县名称
     * @return
     * @throws Exception
     */
    List<BaseWarpper> queryBusiness(String province, String city, String district) throws Exception;
    /**
     * 根据选择的城市id获取业务类型
     * @param id
     * @return
     * @throws Exception
     */
    List<BaseWarpper> queryBusinessById(Integer id) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOpenCityService.java
New file
@@ -0,0 +1,27 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.OpenCity;
import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
import java.util.List;
public interface IOpenCityService extends IService<OpenCity> {
    /**
     * 获取开通城市列表
     * @return
     * @throws Exception
     */
    List<BaseWarpper> queryOpenCity() throws Exception;
    /**
     * 判断是否是开通城市
     * @param code
     * @return
     * @throws Exception
     */
    boolean openCity(String code) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOperationLogService.java
New file
@@ -0,0 +1,24 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.OperationLog;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 操作日志 服务类
 * </p>
 *
 * @author stylefeng123
 * @since 2018-02-22
 */
public interface IOperationLogService extends IService<OperationLog> {
    /**
     * 获取操作日志列表
     */
    List<Map<String, Object>> getOperationLogs(Page<OperationLog> page, String beginTime, String endTime, String logName, String s, String orderByField, boolean asc);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOrderCancelService.java
New file
@@ -0,0 +1,48 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.OrderCancel;
import java.util.List;
import java.util.Map;
public interface IOrderCancelService extends IService<OrderCancel> {
    /**
     * 添加数据
     * @param orderId
     * @param orderType
     * @param reason
     * @param remark
     * @param payType
     * @param money
     * @param state
     * @throws Exception
     */
    Integer saveData(Integer orderId, Integer orderType, String reason, String remark, Integer payType, Double money,
                     Integer state, Integer userType, Integer uid) throws Exception;
    /**
     * 获取取消数据
     * @param orderId
     * @param orderType
     * @param money
     * @param payType
     * @param state
     * @return
     * @throws Exception
     */
    OrderCancel query(Integer orderId, Integer orderType, Double money, Integer payType, Integer state) throws Exception;
    /**
     * 获取用户取消记录
     * @param uid
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryCancel(Integer uid, Integer isPay) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOrderEvaluateService.java
New file
@@ -0,0 +1,31 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.OrderEvaluate;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import java.util.List;
import java.util.Map;
public interface IOrderEvaluateService extends IService<OrderEvaluate> {
    /**
     * 添加评价数据
     * @param orderId
     * @param orderType
     * @param fraction
     * @param content
     * @throws Exception
     */
    ResultUtil saveData(Integer orderId, Integer orderType, Integer fraction, String content) throws Exception;
    /**
     * 获取司机历史评价列表
     * @param driverId
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryOrderEvaluate(Integer driverId, Integer pageNum, Integer size) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOrderPositionService.java
New file
@@ -0,0 +1,31 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.OrderPosition;
import java.util.List;
import java.util.Map;
public interface IOrderPositionService extends IService<OrderPosition> {
    /**
     * 获取轨迹数据
     * @param orderId
     * @param orderType
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryTrack(Integer orderId, Integer orderType) throws Exception;
    /**
     * 获取订单所有坐标
     * @param orderId
     * @param orderType
     * @return
     * @throws Exception
     */
    List<OrderPosition> queryPosition(Integer orderId, Integer orderType) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOrderService.java
New file
@@ -0,0 +1,30 @@
package com.stylefeng.guns.modular.system.service;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
public interface IOrderService {
    /**
     * 获取预计行驶时间
     * @param slon  起点经度
     * @param slat  起点纬度
     * @param elon  终点经度
     * @param elat  终点纬度
     * @return
     * @throws Exception
     */
    ResultUtil<BaseWarpper> queryExpectedTime(Double slon, Double slat, Double elon, Double elat) throws Exception;
    /**
     * APP调用小程序完成微信支付
     * @param orderId
     * @param orderType
     * @param type
     * @return
     * @throws Exception
     */
    ResultUtil weChatPay(Integer orderId, Integer orderType, Integer type, Integer userType, Integer uid, String content) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IPhoneService.java
New file
@@ -0,0 +1,26 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Phone;
import java.util.List;
import java.util.Map;
public interface IPhoneService extends IService<Phone> {
    /**
     * 获取所有的系统电话
     * @return
     * @throws Exception
     */
    List<Phone> queryPhones(String code) throws Exception;
    /**
     * 获取客服电话(个人中心)
     * @param code
     * @return
     * @throws Exception
     */
    Map<String, Object> queryCustomerPhone(String code) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IProblemService.java
New file
@@ -0,0 +1,32 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Problem;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import java.util.List;
import java.util.Map;
public interface IProblemService extends IService<Problem> {
    /**
     * 添加留言
     * @param content
     * @param uid
     * @return
     * @throws Exception
     */
    ResultUtil leaveMessage(String content, Integer uid) throws Exception;
    /**
     * 获取提交的留言列表
     * @param pageNum
     * @param size
     * @param uid
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryProblems(Integer pageNum, Integer size, Integer uid) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IPushOrderService.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.PushOrder;
import java.util.List;
public interface IPushOrderService extends IService<PushOrder> {
    /**
     * 获取推送配置数据
     * @param type
     * @param pushType
     * @return
     * @throws Exception
     */
    List<PushOrder> querys(Integer type, Integer pushType, Integer companyId) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IRedPacketRecordService.java
New file
@@ -0,0 +1,8 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.RedPacketRecord;
public interface IRedPacketRecordService extends IService<RedPacketRecord> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IRelationService.java
New file
@@ -0,0 +1,16 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Relation;
/**
 * <p>
 * 角色和菜单关联表 服务类
 * </p>
 *
 * @author stylefeng123
 * @since 2018-02-22
 */
public interface IRelationService extends IService<Relation> {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IRoleService.java
New file
@@ -0,0 +1,68 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.modular.system.model.Role;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * 角色相关业务
 *
 * @author fengshuonan
 * @Date 2017年1月10日 下午9:11:57
 */
public interface IRoleService extends IService<Role> {
    /**
     * 设置某个角色的权限
     *
     * @param roleId 角色id
     * @param ids    权限的id
     * @date 2017年2月13日 下午8:26:53
     */
    void setAuthority(Integer roleId, String ids);
    /**
     * 删除角色
     *
     * @author stylefeng
     * @Date 2017/5/5 22:24
     */
    void delRoleById(Integer roleId);
    /**
     * 根据条件查询角色列表
     *
     * @return
     * @date 2017年2月12日 下午9:14:34
     */
    List<Map<String, Object>> selectRoles(@Param("condition") String condition);
    /**
     * 删除某个角色的所有权限
     *
     * @param roleId 角色id
     * @return
     * @date 2017年2月13日 下午7:57:51
     */
    int deleteRolesById(@Param("roleId") Integer roleId);
    /**
     * 获取角色列表树
     *
     * @return
     * @date 2017年2月18日 上午10:32:04
     */
    List<ZTreeNode> roleTreeList();
    /**
     * 获取角色列表树
     *
     * @return
     * @date 2017年2月18日 上午10:32:04
     */
    List<ZTreeNode> roleTreeListByRoleId(String[] roleId);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IServerCarModelService.java
New file
@@ -0,0 +1,31 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.ServerCarModel;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.warpper.ServerCarModelWarpper;
import java.util.List;
import java.util.Map;
public interface IServerCarModelService extends IService<ServerCarModel> {
    /**
     * 根据起点和终点获取车型和金额
     * @param startLonLat
     * @param endLonLat
     * @param type          业务类型
     * @return
     * @throws Exception
     */
    ResultUtil<List<ServerCarModelWarpper>> queryServerCarModel(String startLonLat, String endLonLat, Integer type) throws Exception;
    /**
     * 获取业务类型对应的所有车型
     * @param type
     * @return
     */
    List<Map<String, Object>> queryServerCarModels(Integer type);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ISmsrecordService.java
New file
@@ -0,0 +1,17 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Smsrecord;
public interface ISmsrecordService extends IService<Smsrecord> {
    /**
     * 添加数据
     * @param type
     * @param phone
     * @param code
     * @param content
     * @throws Exception
     */
    void saveData(Integer type, String phone, String code, String content) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ISystemNoticeService.java
New file
@@ -0,0 +1,65 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.SystemNotice;
import java.util.List;
import java.util.Map;
public interface ISystemNoticeService extends IService<SystemNotice> {
    /**
     * 添加系统消息
     * @param userType
     * @param content
     * @param userId
     * @throws Exception
     */
    void addSystemNotice(Integer userType, String content, Integer userId, Integer noticeType) throws Exception;
    /**
     * 获取未阅读数据
     * @param uid
     * @return
     * @throws Exception
     */
    int queryNoReadNoticeNum(Integer uid) throws Exception;
    /**
     * 获取消息列列表
     * @param type
     * @param pageNum
     * @param size
     * @param uid
     * @return
     */
    List<Map<String, Object>> queryList(Integer type, Integer pageNum, Integer size, Integer uid);
    /**
     * 阅读操作
     * @param id
     * @param uid
     * @throws Exception
     */
    void readSystemNotice(Integer id, Integer uid) throws Exception;
    /**
     * 删除公告或消息
     * @param id
     * @param uid
     * @throws Exception
     */
    void delSystemNotice(Integer id, Integer uid) throws Exception;
    /**
     * 清空公告或消息
     * @param uid
     * @throws Exception
     */
    void clearSystemNotice(Integer uid) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITNoticesService.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.TNotices;
import com.stylefeng.guns.modular.system.warpper.TNoticeWarpper;
import java.util.List;
public interface ITNoticesService extends IService<TNotices> {
    /**
     * 获取公告列表
     * @param type
     * @return
     * @throws Exception
     */
    List<TNoticeWarpper> queryNotices(Integer type) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserActivityBalanceService.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.UserActivityBalance;
import java.util.List;
import java.util.Map;
public interface IUserActivityBalanceService extends IService<UserActivityBalance> {
    /**
     * 获取满足条件的活动
     * @param companyId
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> query(Double money, Integer companyId) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserActivityRedenvelopeService.java
New file
@@ -0,0 +1,19 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.UserActivityRedenvelope;
import java.util.Date;
import java.util.Map;
public interface IUserActivityRedenvelopeService extends IService<UserActivityRedenvelope> {
    /**
     * 获取红包活动
     * @param companyId
     * @return
     * @throws Exception
     */
    Map<String, Object> query(Integer companyId, Date travelTime) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserActivityRegisteredService.java
New file
@@ -0,0 +1,20 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.UserActivityRegistered;
import java.util.List;
import java.util.Map;
public interface IUserActivityRegisteredService extends IService<UserActivityRegistered> {
    /**
     * 获取当前有效的注册活动
     * @param companyId
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> query(Integer companyId) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserCouponRecordService.java
New file
@@ -0,0 +1,69 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.UserCouponRecord;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import java.util.List;
import java.util.Map;
public interface IUserCouponRecordService extends IService<UserCouponRecord> {
    /**
     * 获取可用优惠券数量
     * @param uid
     * @param companyId
     * @param state
     * @param couponUseType
     * @return
     * @throws Exception
     */
    int queryAvailable(Integer uid, Integer companyId, Integer state, Integer couponUseType, Double money) throws Exception;
    /**
     * 获取优惠券列表
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryCoupon(Integer uid, Integer companyId, Integer state, Integer couponUseType, Double money, Integer pageNum, Integer size) throws Exception;
    /**
     * 获取优惠券列表
     * @param pageNum
     * @param size
     * @param uid
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryMyCoupons(Integer state, Integer pageNum, Integer size, Integer uid) throws Exception;
    /**
     * 删除优惠券
     * @param id
     * @param uid
     * @throws Exception
     */
    ResultUtil delMyCoupon(Integer id, Integer uid) throws Exception;
    /**
     * 赠送优惠券
     * @param id
     * @param uid
     * @param userId
     * @return
     * @throws Exception
     */
    ResultUtil handselCoupon(Integer id, Integer uid, Integer userId) throws Exception;
    /**
     * 修改过期的优惠券状态
     * @throws Exception
     */
    void updateTimeOut() throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserInfoService.java
New file
@@ -0,0 +1,227 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.UserInfo;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.warpper.LoginWarpper;
import javax.servlet.http.HttpServletRequest;
import java.util.Date;
import java.util.Map;
public interface IUserInfoService extends IService<UserInfo> {
    /**
     * 获取短信验证码
     * @param phone
     * @return
     */
    ResultUtil queryCaptcha(String phone, Integer type) throws Exception;
    /**
     * 校验短信验证码
     * @param phone
     * @param code
     * @return
     * @throws Exception
     */
    boolean checkCaptcha(String phone, String code) throws Exception;
    /**
     * 手机验证码登录
     * @param phone
     * @param code
     * @return
     */
    ResultUtil<LoginWarpper> captchaLogin(String phone, String code, String registIp, String registAreaCode,String loginType) throws Exception;
    /**
     * 手机一键登录
     * @param accessToken
     * @param registIp
     * @param registAreaCode
     * @return
     * @throws Exception
     */
    ResultUtil<LoginWarpper> oneClickLogin(String accessToken, String registIp, String registAreaCode,String loginType,String androidOrIos) throws Exception;
    ResultUtil<LoginWarpper> captchaLogin(String phone, String code, Integer uid, Integer type, Integer userType,String loginType) throws Exception;
    /**
     * 手机号码查询用户
     * @param phone
     * @return
     * @throws Exception
     */
    UserInfo queryByPhone(String phone) throws Exception;
    /**
     * 账号密码登录
     * @param phone
     * @param password
     * @return
     * @throws Exception
     */
    ResultUtil<LoginWarpper> userLogin(String phone, String password,String loginType) throws Exception;
    /**
     * 微信授权登录
     * @param type              登录端口(1:APP登录,2:小程序)
     * @param openid            微信openid
     * @param unionid           微信unionid
     * @param jscode            小程序登录时的jscode临时凭证
     * @param registIp          ip地址
     * @param registAreaCode    当前定位区县行政编号(6位)
     * @return
     */
    ResultUtil<LoginWarpper> wxLogin(Integer type, String openid, String unionid, String jscode, String registIp, String registAreaCode, Integer sex, String nickName, String avatar,String loginType) throws Exception;
    /**
     * 忘记密码的操作
     * @param phone
     * @param code
     * @param password
     * @return
     * @throws Exception
     */
    ResultUtil forgetPassword(String phone, String code, String password) throws Exception;
    /**
     * 设置手机号码
     * @param uid
     * @param phone
     * @param code
     * @return
     * @throws Exception
     */
    ResultUtil bindingPhone(Integer uid, String phone, String code,String loginType) throws Exception;
    /**
     * 从redis中获取用户id
     * @param request
     * @return
     * @throws Exception
     */
    Integer getUserIdFormRedis(HttpServletRequest request) throws Exception;
    /**
     * 获取用户详情
     * @param uid
     * @return
     * @throws Exception
     */
    Map<String, Object> queryUserInfo(Integer uid) throws Exception;
    /**
     * 电话号码查询用户
     * @param phone
     * @return
     * @throws Exception
     */
    Map<String, Object> queryUser(String phone) throws Exception;
    /**
     * 设置紧急联系人
     * @param name
     * @param phone
     * @param uid
     * @throws Exception
     */
    void setUrgentUser(String name, String phone, Integer uid) throws Exception;
    /**
     * 充值余额
     * @param payType
     * @param money
     * @param uid
     * @return
     * @throws Exception
     */
    ResultUtil depositBalance(Integer payType, Double money, Integer uid, Integer type) throws Exception;
    /**
     * 修改手机号码
     * @param code
     * @param phone
     * @param uid
     * @return
     * @throws Exception
     */
    ResultUtil updatePhone(String code, String phone, Integer uid) throws Exception;
    /**
     * 修改密码
     * @param password
     * @param uid
     * @return
     * @throws Exception
     */
    ResultUtil updatePass(String password, Integer uid) throws Exception;
    /**
     * 修改个人信息
     * @param avatar
     * @param nickname
     * @param sex
     * @param birthday
     * @param uid
     * @throws Exception
     */
    void updateInfo(String avatar, String nickname, Integer sex, Date birthday, Integer uid) throws Exception;
    /**
     * 获取实名认证数据
     * @param uid
     * @return
     * @throws Exception
     */
    Map<String, Object> queryRealName(Integer uid) throws Exception;
    /**
     * 充值余额完成支付后的处理
     * @param id            用户id
     * @param order_id      工行订单id
     * @param paymentRecordId   预支付订单id
     * @param type          支付类型(1=微信,2=支付宝)
     * @throws Exception
     */
    void payCancelUserBalance(Integer id, String order_id, Integer paymentRecordId, Integer type) throws Exception;
    /**
     * H5接入道行龙城实现登录
     * @param authCode
     * @return
     * @throws Exception
     */
    ResultUtil<LoginWarpper> dxlcLogin(String authCode, String registAreaCode,String loginType) throws Exception;
    /**
     * 小程序中手机号码登录后绑定微信
     * @param userId
     * @param jscode
     * @return
     * @throws Exception
     */
    ResultUtil phoneLoginBindingWeChat(Integer userId, String jscode) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserRedPacketRecordService.java
New file
@@ -0,0 +1,40 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.UserRedPacketRecord;
import java.util.List;
import java.util.Map;
public interface IUserRedPacketRecordService extends IService<UserRedPacketRecord> {
    /**
     * 获取不大于money值的红包数据
     * @param uid
     * @param companyId
     * @param state
     * @param orderType
     * @param money
     * @return
     * @throws Exception
     */
    UserRedPacketRecord query(Integer uid, Integer companyId, Integer state, Integer orderType, Double money) throws Exception;
    UserRedPacketRecord query_(Integer uid, Integer companyId, Integer state, Integer orderType, Double money) throws Exception;
    /**
     * 获取个人红包列表(未使用)
     * @param pageNum
     * @param size
     * @param uid
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryMyRedEnvelope(Integer pageNum, Integer size, Integer uid) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IUserService.java
New file
@@ -0,0 +1,46 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.core.datascope.DataScope;
import com.stylefeng.guns.modular.system.model.User;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 管理员表 服务类
 * </p>
 *
 * @author stylefeng123
 * @since 2018-02-22
 */
public interface IUserService extends IService<User> {
    /**
     * 修改用户状态
     */
    int setStatus(@Param("userId") Integer userId, @Param("status") int status);
    /**
     * 修改密码
     */
    int changePwd(@Param("userId") Integer userId, @Param("pwd") String pwd);
    /**
     * 根据条件查询用户列表
     */
    List<Map<String, Object>> selectUsers(@Param("dataScope") DataScope dataScope, @Param("name") String name, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("deptid") Integer deptid);
    /**
     * 设置用户的角色
     */
    int setRoles(@Param("userId") Integer userId, @Param("roleIds") String roleIds);
    /**
     * 通过账号获取用户
     */
    User getByAccount(@Param("account") String account);
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IVerifiedService.java
New file
@@ -0,0 +1,17 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Verified;
import com.stylefeng.guns.modular.system.util.ResultUtil;
public interface IVerifiedService extends IService<Verified> {
    /**
     * 实名认证操作
     * @param verified
     * @param uid
     * @return
     * @throws Exception
     */
    ResultUtil verified(Verified verified, Integer uid) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IVersionManagementService.java
New file
@@ -0,0 +1,17 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.VersionManagement;
import java.util.Map;
public interface IVersionManagementService extends IService<VersionManagement> {
    /**
     * 获取最新版本数据
     * @return
     * @throws Exception
     */
    Map<String, Object> queryNewVersion() throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IWithdrawalService.java
New file
@@ -0,0 +1,41 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.Withdrawal;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import java.util.List;
import java.util.Map;
public interface IWithdrawalService extends IService<Withdrawal> {
    /**
     * 提现操作
     * @param money
     * @param code
     * @param name
     * @param uid
     * @throws Exception
     */
    ResultUtil withdrawal(Double money, String code, String name, Integer uid) throws Exception;
    /**
     * 获取历史提交数据
     * @param uid
     * @return
     * @throws Exception
     */
    List<Map<String, Object>> queryWithdrawal(Integer uid, Integer pageNum, Integer size) throws Exception;
    /**
     * 提现审核处理
     * @param id
     * @param state
     * @return
     * @throws Exception
     */
    ResultUtil withdrawalAudit(Integer id, Integer state) throws Exception;
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/AdvertisementServiceImpl.java
New file
@@ -0,0 +1,41 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.AdvertisementMapper;
import com.stylefeng.guns.modular.system.model.Advertisement;
import com.stylefeng.guns.modular.system.service.IAdvertisementService;
import com.stylefeng.guns.modular.system.warpper.AdvertisementWarpper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class AdvertisementServiceImpl extends ServiceImpl<AdvertisementMapper, Advertisement> implements IAdvertisementService {
    @Resource
    private AdvertisementMapper advertisementMapper;
    /**
     * 获取广告
     * @param type  广告类型(1:弹窗广告,2:底部广告)
     * @return
     * @throws Exception
     */
    @Override
    public List<AdvertisementWarpper> queryAdvertisement(String code, Integer type) throws Exception {
        if(code.equals(""))code="370500";
        String province = code.substring(0, 2) + "0000";
        String city = code.substring(0, 4) + "00";
        List<AdvertisementWarpper> list = advertisementMapper.queryAdvertisement(code, type);
        if(list.size() == 0){
            list = advertisementMapper.queryAdvertisement(city, type);
        }
        if(list.size() == 0){
            list = advertisementMapper.queryAdvertisement(province, type);
        }
        return list;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/AgreementServiceImpl.java
New file
@@ -0,0 +1,34 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.dao.AgreementMapper;
import com.stylefeng.guns.modular.system.model.Agreement;
import com.stylefeng.guns.modular.system.service.IAgreementService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class AgreementServiceImpl extends ServiceImpl<AgreementMapper, Agreement> implements IAgreementService {
    @Resource
    private AgreementMapper agreementMapper;
    /**
     * 获取协议内容
     * @param type
     * @return
     * @throws Exception
     */
    @Override
    public String queryByType(Integer type) throws Exception {
        String s = agreementMapper.queryByType(type, 1);
        if(ToolUtil.isEmpty(s)){
            s = agreementMapper.queryByType(type, null);
        }
        return s;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CancleOrderServiceImpl.java
New file
@@ -0,0 +1,30 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.CancleOrderMapper;
import com.stylefeng.guns.modular.system.model.CancleOrder;
import com.stylefeng.guns.modular.system.service.ICancleOrderService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class CancleOrderServiceImpl extends ServiceImpl<CancleOrderMapper, CancleOrder> implements ICancleOrderService {
    @Resource
    private CancleOrderMapper cancleOrderMapper;
    /**
     * 获取取消订单配置
     * @param type
     * @param orderType
     * @return
     * @throws Exception
     */
    @Override
    public CancleOrder query(Integer type, Integer orderType, Integer companyId) throws Exception {
        return cancleOrderMapper.query(type, orderType, companyId);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CompanyCityServiceImpl.java
New file
@@ -0,0 +1,71 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.CompanyCityMapper;
import com.stylefeng.guns.modular.system.dao.CompanyMapper;
import com.stylefeng.guns.modular.system.model.Company;
import com.stylefeng.guns.modular.system.model.CompanyCity;
import com.stylefeng.guns.modular.system.service.ICompanyCityService;
import com.stylefeng.guns.modular.system.util.GDMapGeocodingUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
@Service
public class CompanyCityServiceImpl extends ServiceImpl<CompanyCityMapper, CompanyCity> implements ICompanyCityService {
    @Resource
    private CompanyMapper companyMapper;
    @Autowired
    private GDMapGeocodingUtil gdMapGeocodingUtil;
    /**
     * 根据经纬度获取所属企业
     * @param lon
     * @param lat
     * @return
     * @throws Exception
     */
    @Override
    public Company query(String lon, String lat) throws Exception {
        Map<String, String> geocode = gdMapGeocodingUtil.geocode(String.valueOf(lon), String.valueOf(lat));
        String districtCode = geocode.get("districtCode");
        Company query = this.query(districtCode);
        return query;
    }
    /**
     * 根据行政编号获取所属企业
     * @param code
     * @return
     * @throws Exception
     */
    @Override
    public Company query(String code) throws Exception {
        if(code.equals(""))code="370500";
        String province = code.substring(0, 2) + "0000";
        String city = code.substring(0, 4) + "00";
        List<Company> query = companyMapper.query(province, city, code);
        if(query.size() == 0){
            query = companyMapper.query(province, city, null);
        }
        if(query.size() == 0){
            query = companyMapper.query(province, null, null);
        }
        for(int i = 3; i > 0; i--){
            for(Company company : query){
                if(company.getType() == i){
                    return company;
                }
            }
        }
        return null;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CompanyServiceImpl.java
New file
@@ -0,0 +1,12 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.CompanyMapper;
import com.stylefeng.guns.modular.system.model.Company;
import com.stylefeng.guns.modular.system.service.ICompanyService;
import org.springframework.stereotype.Service;
@Service
public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> implements ICompanyService {
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ComplaintServiceImpl.java
New file
@@ -0,0 +1,58 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.dao.ComplaintMapper;
import com.stylefeng.guns.modular.system.dao.SensitiveWordsMapper;
import com.stylefeng.guns.modular.system.model.Complaint;
import com.stylefeng.guns.modular.system.model.SensitiveWords;
import com.stylefeng.guns.modular.system.service.IComplaintService;
import com.stylefeng.guns.modular.system.service.ISystemNoticeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Service
public class ComplaintServiceImpl extends ServiceImpl<ComplaintMapper, Complaint> implements IComplaintService {
    @Resource
    private SensitiveWordsMapper sensitiveWordsMapper;
    @Autowired
    private ISystemNoticeService systemNoticeService;
    /**
     * 添加投诉
     * @param driverId      司机id
     * @param reason        投诉原因
     * @param description   描述
     * @param uid           投诉人
     * @throws Exception
     */
    @Override
    public void saveData(Integer driverId, String reason, String description, Integer uid) throws Exception {
        if(ToolUtil.isNotEmpty(description)){
            List<SensitiveWords> sensitiveWords = sensitiveWordsMapper.selectList(null);
            for(SensitiveWords s : sensitiveWords){
                description = description.replaceAll(s.getContent(), "***");
            }
        }
        Complaint complaint = new Complaint();
        complaint.setInsertTime(new Date());
        complaint.setDriverId(driverId);
        complaint.setReason(reason);
        complaint.setDescription(description);
        complaint.setUserId(uid);
        complaint.setIsHandle(0);
        complaint.setType(1);
        this.insert(complaint);
        systemNoticeService.addSystemNotice(1, "您的投诉已提交成功,我们会尽快处理!", uid, 1);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DeptServiceImpl.java
New file
@@ -0,0 +1,47 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.modular.system.dao.DeptMapper;
import com.stylefeng.guns.modular.system.model.Dept;
import com.stylefeng.guns.modular.system.service.IDeptService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
@Service
@Transactional
public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements IDeptService {
    @Resource
    private DeptMapper deptMapper;
    @Override
    public void deleteDept(Integer deptId) {
        Dept dept = deptMapper.selectById(deptId);
        Wrapper<Dept> wrapper = new EntityWrapper<>();
        wrapper = wrapper.like("pids", "%[" + dept.getId() + "]%");
        List<Dept> subDepts = deptMapper.selectList(wrapper);
        for (Dept temp : subDepts) {
            temp.deleteById();
        }
        dept.deleteById();
    }
    @Override
    public List<ZTreeNode> tree() {
        return this.baseMapper.tree();
    }
    @Override
    public List<Map<String, Object>> list(String condition) {
        return this.baseMapper.list(condition);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DictServiceImpl.java
New file
@@ -0,0 +1,101 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.core.common.exception.BizExceptionEnum;
import com.stylefeng.guns.core.exception.GunsException;
import com.stylefeng.guns.modular.system.dao.DictMapper;
import com.stylefeng.guns.modular.system.model.Dict;
import com.stylefeng.guns.modular.system.service.IDictService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import static com.stylefeng.guns.core.common.constant.factory.MutiStrFactory.*;
@Service
@Transactional
public class DictServiceImpl extends ServiceImpl<DictMapper, Dict> implements IDictService {
    @Resource
    private DictMapper dictMapper;
    @Override
    public void addDict(String dictCode,String dictName,String dictTips, String dictValues) {
        //判断有没有该字典
        List<Dict> dicts = dictMapper.selectList(new EntityWrapper<Dict>().eq("code", dictCode).and().eq("pid", 0));
        if (dicts != null && dicts.size() > 0) {
            throw new GunsException(BizExceptionEnum.DICT_EXISTED);
        }
        //解析dictValues
        List<Map<String, String>> items = parseKeyValue(dictValues);
        //添加字典
        Dict dict = new Dict();
        dict.setName(dictName);
        dict.setCode(dictCode);
        dict.setTips(dictTips);
        dict.setNum(0);
        dict.setPid(0);
        this.dictMapper.insert(dict);
        //添加字典条目
        for (Map<String, String> item : items) {
            String code = item.get(MUTI_STR_CODE);
            String name = item.get(MUTI_STR_NAME);
            String num = item.get(MUTI_STR_NUM);
            Dict itemDict = new Dict();
            itemDict.setPid(dict.getId());
            itemDict.setCode(code);
            itemDict.setName(name);
            try {
                itemDict.setNum(Integer.valueOf(num));
            } catch (NumberFormatException e) {
                throw new GunsException(BizExceptionEnum.DICT_MUST_BE_NUMBER);
            }
            this.dictMapper.insert(itemDict);
        }
    }
    @Override
    public void editDict(Integer dictId,String dictCode, String dictName,String dictTips, String dicts) {
        //删除之前的字典
        this.delteDict(dictId);
        //重新添加新的字典
        this.addDict(dictCode,dictName,dictTips, dicts);
    }
    @Override
    public void delteDict(Integer dictId) {
        //删除这个字典的子词典
        Wrapper<Dict> dictEntityWrapper = new EntityWrapper<>();
        dictEntityWrapper = dictEntityWrapper.eq("pid", dictId);
        dictMapper.delete(dictEntityWrapper);
        //删除这个词典
        dictMapper.deleteById(dictId);
    }
    @Override
    public List<Dict> selectByCode(String code) {
        return this.baseMapper.selectByCode(code);
    }
    @Override
    public List<Dict> selectByParentCode(String code) {
        return this.baseMapper.selectByParentCode(code);
    }
    @Override
    public List<Map<String, Object>> list(String conditiion) {
        return this.baseMapper.list(conditiion);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverOrdersServiceImpl.java
New file
@@ -0,0 +1,50 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.DriverOrdersMapper;
import com.stylefeng.guns.modular.system.model.DriverOrders;
import com.stylefeng.guns.modular.system.service.IDriverOrdersService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class DriverOrdersServiceImpl extends ServiceImpl<DriverOrdersMapper, DriverOrders> implements IDriverOrdersService {
    @Resource
    private DriverOrdersMapper driverOrdersMapper;
    /**
     * 接单设置
     * @param uid
     * @param type
     * @throws Exception
     */
    @Override
    public void updateOrders(Integer uid, Integer type) throws Exception {
        DriverOrders query = driverOrdersMapper.query(uid, type);
        if(null == query){
            query = new DriverOrders();
            query.setDriverId(uid);
            query.setType(type);
            this.insert(query);
        }else{
            this.deleteById(query.getId());
        }
    }
    /**
     * 获取推单设置
     * @param uid
     * @return
     * @throws Exception
     */
    @Override
    public List<Integer> queryOrders(Integer uid) throws Exception {
        return driverOrdersMapper.queryOrders(uid);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
New file
@@ -0,0 +1,180 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.DriverMapper;
import com.stylefeng.guns.modular.system.dao.DriverServiceMapper;
import com.stylefeng.guns.modular.system.model.Company;
import com.stylefeng.guns.modular.system.model.Driver;
import com.stylefeng.guns.modular.system.model.DriverService;
import com.stylefeng.guns.modular.system.service.ICompanyCityService;
import com.stylefeng.guns.modular.system.service.IDriverService;
import com.stylefeng.guns.modular.system.util.GDMapElectricFenceUtil;
import com.stylefeng.guns.modular.system.util.GeodesyUtil;
import com.stylefeng.guns.modular.system.util.RedisUtil;
import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Service
public class DriverServiceImpl extends ServiceImpl<DriverMapper, Driver> implements IDriverService {
    @Resource
    private DriverMapper driverMapper;
    @Resource
    private DriverServiceMapper driverServiceMapper;
    @Autowired
    private RedisUtil redisUtil;
    @Autowired
    private GDMapElectricFenceUtil gdMapElectricFenceUtil;
    @Autowired
    private ICompanyCityService companyCityService;
    @Autowired
    private GeodesyUtil geodesyUtil;
    /**
     * 获取distance公里内空闲司机数量
     * @param type  业务类型(1=专车,2=出租车,3=城际,4=小件物流-同城,5=小件物流-跨城,6=包车)
     * @param lon
     * @param lat
     * @return
     * @throws Exception
     */
    @Override
    public List<Driver> queryIdleDriver(Integer type, Double lon, Double lat, Double distance, Integer companyId) throws Exception {
        List<Driver> drivers = driverMapper.queryIdleDriver(type, companyId);
        System.err.println("-----当前查询到的司机"+drivers);
        List<Driver> list = new ArrayList<>();
        for(Driver driver : drivers){
            String value = redisUtil.getValue("DRIVER" + String.valueOf(driver.getId()));
            if(null != value){
//                Map<String, String> distance1 = gdMapElectricFenceUtil.getDistance(lon + "," + lat, value, 0);//计算距离
                Map<String, Double> distance1 = geodesyUtil.getDistance(lon + "," + lat, value);
                double d = Double.valueOf(distance1.get("WGS84")).doubleValue();
                System.out.println("距离====》"+d+"distance======>"+distance);
                if(d < (distance * 1000)){
                    list.add(driver);
                }
            }
        }
        System.err.println("-----符合条件的司机"+list);
        return list;
    }
    @Override
    public List<Driver> queryIdleDriverAll(Integer type, Double lon, Double lat, Double distance, Integer companyId) throws Exception {
        List<Driver> drivers = driverMapper.queryIdleDriver(type, companyId);
        System.err.println("-----当前查询到的司机"+drivers);
        List<Driver> list = new ArrayList<>();
        for(Driver driver : drivers){
                    list.add(driver);
        }
        System.err.println("-----符合条件的司机"+list);
        return list;
    }
    /**
     * 获取给定车型且空闲的司机
     * @param type
     * @param serverCarModelId
     * @param lon
     * @param lat
     * @param distance
     * @param companyId
     * @return
     * @throws Exception
     */
    @Override
    public List<Driver> queryIdleDriver(Integer type, Integer serverCarModelId, Double lon, Double lat, Double distance, Integer companyId) throws Exception {
        List<Driver> drivers = driverMapper.queryIdleDriver_(type, serverCarModelId, companyId);
        List<Driver> list = new ArrayList<>();
        for(Driver driver : drivers){
            String value = redisUtil.getValue("DRIVER" + String.valueOf(driver.getId()));
            if(null != value){
//                Map<String, String> distance1 = gdMapElectricFenceUtil.getDistance(lon + "," + lat, value, 0);//计算距离
                Map<String, Double> distance1 = geodesyUtil.getDistance(lon + "," + lat, value);
                double d = Double.valueOf(distance1.get("WGS84")).doubleValue();
                if(d < (distance * 1000)){
                    list.add(driver);
                }
            }
        }
        return list;
    }
    /**
     * 根据订单id获取司机数据
     * @param orderId
     * @return
     * @throws Exception
     */
    @Override
    public Map<String, Object> queryOrderDriver(Integer orderId, Integer orderType) throws Exception {
        return driverMapper.queryOrderDriver(orderId, orderType);
    }
    /**
     * 获取司机详情
     * @param id
     * @return
     * @throws Exception
     */
    @Override
    public Map<String, Object> queryDriverInfo(Integer id) throws Exception {
        Map<String, Object> map = driverMapper.queryDriverInfo(id);
        return map;
    }
    /**
     * 获取司机的业务类型
     * @param uid
     * @return
     * @throws Exception
     */
    @Override
    public List<BaseWarpper> queryBusiness(Integer uid) throws Exception {
        List<DriverService> list = driverServiceMapper.queryBusiness(uid, null);
        List<BaseWarpper> maps = new ArrayList<>();
        for (DriverService d : list){
            if(d.getType() == 4 || d.getType() == 5 ||d.getType() == 6){
                continue;
            }
            BaseWarpper baseWarpper = new BaseWarpper();
            baseWarpper.setId(d.getType());
            switch (d.getType()){
                case 1:
                    baseWarpper.setName("专车");
                    break;
                case 2:
                    baseWarpper.setName("出租车");
                    break;
                case 3:
                    baseWarpper.setName("跨城出行");
                    break;
            }
            maps.add(baseWarpper);
        }
        return maps;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceServiceImpl.java
New file
@@ -0,0 +1,31 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.DriverServiceMapper;
import com.stylefeng.guns.modular.system.model.DriverService;
import com.stylefeng.guns.modular.system.service.IDriverServiceService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class DriverServiceServiceImpl extends ServiceImpl<DriverServiceMapper, DriverService> implements IDriverServiceService {
    @Resource
    private DriverServiceMapper driverServiceMapper;
    /**
     * 获取司机服务业务
     * @param driverId
     * @param type
     * @return
     * @throws Exception
     */
    @Override
    public List<DriverService> query(Integer driverId, Integer... type) throws Exception {
        return driverServiceMapper.queryBusiness(driverId, type);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/FeedbackServiceImpl.java
New file
@@ -0,0 +1,62 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.dao.FeedbackMapper;
import com.stylefeng.guns.modular.system.dao.SensitiveWordsMapper;
import com.stylefeng.guns.modular.system.model.Feedback;
import com.stylefeng.guns.modular.system.model.SensitiveWords;
import com.stylefeng.guns.modular.system.service.IFeedbackService;
import com.stylefeng.guns.modular.system.service.ISystemNoticeService;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Service
public class FeedbackServiceImpl extends ServiceImpl<FeedbackMapper, Feedback> implements IFeedbackService {
    @Resource
    private SensitiveWordsMapper sensitiveWordsMapper;
    @Autowired
    private ISystemNoticeService systemNoticeService;
    /**
     * 反馈操作
     * @param content
     * @param uid
     * @throws Exception
     */
    @Override
    public ResultUtil feedback(String content, Integer uid) throws Exception {
        if(ToolUtil.isNotEmpty(content)){
            if(content.length() > 200){
                return ResultUtil.error("反馈内容过长");
            }
            List<SensitiveWords> sensitiveWords = sensitiveWordsMapper.selectList(null);
            for(SensitiveWords s : sensitiveWords){
                content = content.replaceAll(s.getContent(), "***");
            }
        }
        Feedback feedback = new Feedback();
        feedback.setContent(content);
        feedback.setFlag(1);
        feedback.setInsertTime(new Date());
        feedback.setState(1);
        feedback.setType(1);
        feedback.setUserId(uid);
        this.insert(feedback);
        systemNoticeService.addSystemNotice(1, "您的反馈已提交成功,我们会尽快处理!", uid, 1);
        return ResultUtil.success();
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/GDInterfaceServiceImpl.java
New file
@@ -0,0 +1,39 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.GDInterfaceMapper;
import com.stylefeng.guns.modular.system.model.GDInterface;
import com.stylefeng.guns.modular.system.service.IGDInterfaceService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.text.SimpleDateFormat;
import java.util.Date;
@Service
public class GDInterfaceServiceImpl extends ServiceImpl<GDInterfaceMapper, GDInterface> implements IGDInterfaceService {
    @Resource
    private GDInterfaceMapper gdInterfaceMapper;
    @Override
    public void saveData(String name, String explanation) {
        Date date = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-dd");
        GDInterface query = gdInterfaceMapper.query(name, explanation, sdf.format(date));
        if(null == query){
            query = new GDInterface();
            query.setName(name);
            query.setExplanation(explanation);
            query.setTime(sdf.format(date));
            query.setNum(1);
            this.insert(query);
        }else{
            query.setNum(query.getNum() + 1);
            this.updateById(query);
        }
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/IncomeServiceImpl.java
New file
@@ -0,0 +1,37 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.IncomeMapper;
import com.stylefeng.guns.modular.system.model.Income;
import com.stylefeng.guns.modular.system.service.IIncomeService;
import org.springframework.stereotype.Service;
import java.util.Date;
@Service
public class IncomeServiceImpl extends ServiceImpl<IncomeMapper, Income> implements IIncomeService {
    /**
     * 添加数据
     * @param userType
     * @param objectId
     * @param type
     * @param incomeId
     * @param money
     * @throws Exception
     */
    @Override
    public void saveData(Integer userType, Integer objectId, Integer type, Integer incomeId, Integer orderType, Double money) throws Exception {
        Income income = new Income();
        income.setUserType(userType);
        income.setObjectId(objectId);
        income.setType(type);
        income.setIncomeId(incomeId);
        income.setOrderType(orderType);
        income.setMoney(money);
        income.setInsertTime(new Date());
        this.insert(income);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/IntegralGoodsServiceImpl.java
New file
@@ -0,0 +1,44 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.IntegralGoodsMapper;
import com.stylefeng.guns.modular.system.model.IntegralGoods;
import com.stylefeng.guns.modular.system.service.IIntegralGoodsService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
@Service
public class IntegralGoodsServiceImpl extends ServiceImpl<IntegralGoodsMapper, IntegralGoods> implements IIntegralGoodsService {
    @Resource
    private IntegralGoodsMapper integralGoodsMapper;
    /**
     * 获取商品列表
     * @param pageNum
     * @param size
     * @return
     * @throws Exception
     */
    @Override
    public List<Map<String, Object>> queryGoods(Integer pageNum, Integer size) throws Exception {
        pageNum = (pageNum - 1) * size;
        return integralGoodsMapper.queryGoods(pageNum, size);
    }
    /**
     * 获取详情
     * @param id
     * @return
     * @throws Exception
     */
    @Override
    public Map<String, Object> queryGoodsInfo(Integer id) throws Exception {
        return integralGoodsMapper.queryGoodsInfo(id);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/IntegralOrderServiceImpl.java
New file
@@ -0,0 +1,84 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.IntegralOrderMapper;
import com.stylefeng.guns.modular.system.model.IntegralGoods;
import com.stylefeng.guns.modular.system.model.IntegralOrder;
import com.stylefeng.guns.modular.system.model.UserInfo;
import com.stylefeng.guns.modular.system.service.IIntegralGoodsService;
import com.stylefeng.guns.modular.system.service.IIntegralOrderService;
import com.stylefeng.guns.modular.system.service.ISystemNoticeService;
import com.stylefeng.guns.modular.system.service.IUserInfoService;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.taxi.service.ITransactionDetailsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Service
public class IntegralOrderServiceImpl extends ServiceImpl<IntegralOrderMapper, IntegralOrder> implements IIntegralOrderService {
    @Resource
    private IntegralOrderMapper integralOrderMapper;
    @Autowired
    private IUserInfoService userInfoService;
    @Autowired
    private IIntegralGoodsService integralGoodsService;
    @Autowired
    private ISystemNoticeService systemNoticeService;
    @Autowired
    private ITransactionDetailsService transactionDetailsService;
    /**
     * 保存订单
     * @param integralOrder
     * @throws Exception
     */
    @Override
    public ResultUtil addIntegralOrder(IntegralOrder integralOrder, Integer uid) throws Exception {
        IntegralGoods integralGoods = integralGoodsService.selectById(integralOrder.getGoodsId());
        UserInfo userInfo = userInfoService.selectById(uid);
        if(integralGoods.getIntegral().compareTo(userInfo.getIntegral()) > 0){
            return ResultUtil.error("兑换失败,积分不足!");
        }
        integralOrder.setInsertTime(new Date());
        integralGoods.setIntegral(integralGoods.getIntegral());
        integralOrder.setNum(1);
        integralOrder.setState(1);
        integralOrder.setUserId(uid);
        this.insert(integralOrder);
        userInfo.setIntegral(userInfo.getIntegral() - integralGoods.getIntegral());
        userInfoService.updateById(userInfo);
        //添加消息
        systemNoticeService.addSystemNotice(1, "您使用" + integralGoods.getIntegral() + "积分成功兑换" + integralGoods.getName() + "商品!", uid, 1);
        //添加交易明细
        transactionDetailsService.saveData(uid, "积分兑换", integralGoods.getIntegral().doubleValue(), 2, 2, 1, 7, integralOrder.getId());
        return ResultUtil.success();
    }
    /**
     * 获取历史记录
     * @param pageNum
     * @param size
     * @param uid
     * @return
     * @throws Exception
     */
    @Override
    public List<Map<String, Object>> queryConvertHistory(Integer pageNum, Integer size, Integer uid) throws Exception {
        pageNum = (pageNum - 1) * size;
        return integralOrderMapper.queryConvertHistory(pageNum, size, uid);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/InvoiceServiceImpl.java
New file
@@ -0,0 +1,109 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.InvoiceMapper;
import com.stylefeng.guns.modular.system.model.Invoice;
import com.stylefeng.guns.modular.system.service.IInvoiceService;
import com.stylefeng.guns.modular.taxi.model.OrderTaxi;
import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Service
public class InvoiceServiceImpl extends ServiceImpl<InvoiceMapper, Invoice> implements IInvoiceService {
    @Resource
    private InvoiceMapper invoiceMapper;
    @Autowired
    private IOrderTaxiService orderTaxiService;
    /**
     * 申请开票操作
     * @param invoice
     * @param order
     * @throws Exception
     */
    @Override
    public void invoicing(Invoice invoice, String order, Integer uid) throws Exception {
        JSONArray jsonArray = JSON.parseArray(order);
        BigDecimal sum = new BigDecimal(0);
        for(int i = 0; i < jsonArray.size(); i++){
            JSONObject jsonObject = jsonArray.getJSONObject(i);
            Integer orderType = jsonObject.getIntValue("type");
            Integer orderId = jsonObject.getIntValue("id");
            switch (orderType){
                case 1://专车
                    break;
                case 2://出租车
                    OrderTaxi orderTaxi = orderTaxiService.selectById(orderId);
                    sum.add(new BigDecimal(orderTaxi.getPayMoney()));
                    break;
                case 3://跨城出行
                    break;
                case 4://同城小件物流
                    break;
                case 5://跨城小件物流
                    break;
            }
        }
        invoice.setOrderNum(jsonArray.size());
        invoice.setMoney(sum.setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
        invoice.setUserId(uid);
        invoice.setInsertTime(new Date());
        invoice.setState(1);
        this.insert(invoice);
        // TODO: 2020/6/9 调用开发票第三方SDK
        for(int i = 0; i < jsonArray.size(); i++){
            JSONObject jsonObject = jsonArray.getJSONObject(i);
            Integer orderType = jsonObject.getIntValue("type");
            Integer orderId = jsonObject.getIntValue("id");
            switch (orderType){
                case 1://专车
                    break;
                case 2://出租车
                    OrderTaxi orderTaxi = orderTaxiService.selectById(orderId);
                    orderTaxi.setInvoiceId(invoice.getId());
                    orderTaxiService.updateById(orderTaxi);
                    break;
                case 3://跨城出行
                    break;
                case 4://同城小件物流
                    break;
                case 5://跨城小件物流
                    break;
            }
        }
    }
    /**
     * 获取发票历史记录
     * @param pageNum
     * @param size
     * @param uid
     * @return
     * @throws Exception
     */
    @Override
    public List<Map<String, Object>> queryMyInvoice(Integer pageNum, Integer size, Integer uid) throws Exception {
        pageNum = (pageNum - 1) * size;
        return invoiceMapper.queryMyInvoice(pageNum, size, uid);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/LoginLogServiceImpl.java
New file
@@ -0,0 +1,28 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.LoginLogMapper;
import com.stylefeng.guns.modular.system.model.LoginLog;
import com.stylefeng.guns.modular.system.service.ILoginLogService;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 登录记录 服务实现类
 * </p>
 *
 * @author stylefeng123
 * @since 2018-02-22
 */
@Service
public class LoginLogServiceImpl extends ServiceImpl<LoginLogMapper, LoginLog> implements ILoginLogService {
    @Override
    public List<Map<String, Object>> getLoginLogs(Page<LoginLog> page, String beginTime, String endTime, String logName, String orderByField, boolean asc) {
        return this.baseMapper.getLoginLogs(page, beginTime, endTime, logName, orderByField, asc);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/MenuServiceImpl.java
New file
@@ -0,0 +1,90 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.core.node.MenuNode;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.modular.system.dao.MenuMapper;
import com.stylefeng.guns.modular.system.model.Menu;
import com.stylefeng.guns.modular.system.service.IMenuService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
/**
 * 菜单服务
 *
 * @author fengshuonan
 * @date 2017-05-05 22:20
 */
@Service
public class MenuServiceImpl extends ServiceImpl<MenuMapper, Menu> implements IMenuService {
    @Resource
    private MenuMapper menuMapper;
    @Override
    public void delMenu(Long menuId) {
        //删除菜单
        this.menuMapper.deleteById(menuId);
        //删除关联的relation
        this.menuMapper.deleteRelationByMenu(menuId);
    }
    @Override
    public void delMenuContainSubMenus(Long menuId) {
        Menu menu = menuMapper.selectById(menuId);
        //删除当前菜单
        delMenu(menuId);
        //删除所有子菜单
        Wrapper<Menu> wrapper = new EntityWrapper<>();
        wrapper = wrapper.like("pcodes", "%[" + menu.getCode() + "]%");
        List<Menu> menus = menuMapper.selectList(wrapper);
        for (Menu temp : menus) {
            delMenu(temp.getId());
        }
    }
    @Override
    public List<Map<String, Object>> selectMenus(String condition, String level) {
        return this.baseMapper.selectMenus(condition, level);
    }
    @Override
    public List<Long> getMenuIdsByRoleId(Integer roleId) {
        return this.baseMapper.getMenuIdsByRoleId(roleId);
    }
    @Override
    public List<ZTreeNode> menuTreeList() {
        return this.baseMapper.menuTreeList();
    }
    @Override
    public List<ZTreeNode> menuTreeListByMenuIds(List<Long> menuIds) {
        return this.baseMapper.menuTreeListByMenuIds(menuIds);
    }
    @Override
    public int deleteRelationByMenu(Long menuId) {
        return this.baseMapper.deleteRelationByMenu(menuId);
    }
    @Override
    public List<String> getResUrlsByRoleId(Integer roleId) {
        return this.baseMapper.getResUrlsByRoleId(roleId);
    }
    @Override
    public List<MenuNode> getMenusByRoleIds(List<Integer> roleIds) {
        return this.baseMapper.getMenusByRoleIds(roleIds);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/NettyServiceImpl.java
New file
@@ -0,0 +1,76 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.stylefeng.guns.modular.crossCity.server.IOrderCrossCityService;
import com.stylefeng.guns.modular.specialTrain.server.IOrderPrivateCarService;
import com.stylefeng.guns.modular.system.service.INettyService;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.warpper.EndPushWarpper;
import com.stylefeng.guns.modular.system.warpper.OrderServerWarpper;
import com.stylefeng.guns.modular.system.warpper.OrderStatusWarpper;
import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
public class NettyServiceImpl implements INettyService {
    @Autowired
    private IOrderTaxiService orderTaxiService;
    @Autowired
    private IOrderPrivateCarService orderPrivateCarService;
    @Autowired
    private IOrderCrossCityService orderCrossCityService;
    /**
     * 获取下单推送完后没有司机接单的提醒
     * @param uid
     * @return
     * @throws Exception
     */
    @Override
    public ResultUtil<EndPushWarpper> queryEndPush(Integer orderId, Integer orderType, Integer uid) throws Exception {
        EndPushWarpper endPushWarpper = null;
        switch (orderType){
            case 1:
                endPushWarpper = orderPrivateCarService.queryEndPush(uid);
                break;
            case 2:
                endPushWarpper = orderTaxiService.queryEndPush(uid);
                break;
        }
        return ResultUtil.success(endPushWarpper);
    }
    /**
     * 获取服务中的订单数据
     * @param uid
     * @return
     * @throws Exception
     */
    @Override
    public ResultUtil<OrderServerWarpper> queryOrderServer(Integer orderId, Integer orderType, Integer uid) throws Exception {
        OrderServerWarpper orderServerWarpper = null;
        switch (orderType){
            case 1:
                orderServerWarpper = orderPrivateCarService.queryOrderServer(orderId, uid);//专车
                break;
            case 2:
                orderServerWarpper = orderTaxiService.queryOrderServer(orderId, uid);//出租车
                break;
            case 3:
                orderServerWarpper = orderCrossCityService.queryOrderServer(orderId, uid);//出租车
                break;
        }
        return ResultUtil.success(orderServerWarpper);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/NoticeServiceImpl.java
New file
@@ -0,0 +1,27 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.NoticeMapper;
import com.stylefeng.guns.modular.system.model.Notice;
import com.stylefeng.guns.modular.system.service.INoticeService;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 通知表 服务实现类
 * </p>
 *
 * @author stylefeng123
 * @since 2018-02-22
 */
@Service
public class NoticeServiceImpl extends ServiceImpl<NoticeMapper, Notice> implements INoticeService {
    @Override
    public List<Map<String, Object>> list(String condition) {
        return this.baseMapper.list(condition);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityBusinessServiceImpl.java
New file
@@ -0,0 +1,116 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.OpenCityBusinessMapper;
import com.stylefeng.guns.modular.system.model.OpenCityBusiness;
import com.stylefeng.guns.modular.system.service.IOpenCityBusinessService;
import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@Service
public class OpenCityBusinessServiceImpl extends ServiceImpl<OpenCityBusinessMapper, OpenCityBusiness> implements IOpenCityBusinessService {
    @Resource
    private OpenCityBusinessMapper openCityBusinessMapper;
    /**
     * 获取业务类型
     * @param province  省名
     * @param city      市名称
     * @param district  区县名称
     * @return
     * @throws Exception
     */
    @Override
    public List<BaseWarpper> queryBusiness(String province, String city, String district) throws Exception {
        List<OpenCityBusiness> openCityBusinesses = openCityBusinessMapper.queryBusiness(province, city, district);
        if(openCityBusinesses.size() == 0){
            openCityBusinesses = openCityBusinessMapper.queryBusiness(province, city, null);
        }
        if(openCityBusinesses.size() == 0){
            openCityBusinesses = openCityBusinessMapper.queryBusiness(province, null, null);
        }
        List<BaseWarpper> list = new ArrayList<>();
        for(OpenCityBusiness b : openCityBusinesses){
            BaseWarpper baseWarpper = new BaseWarpper();
            switch (b.getBusinessType()){
                case 1:
                    baseWarpper.setName("专车");
                    baseWarpper.setId(1);
                    break;
                case 2:
                    baseWarpper.setName("出租车");
                    baseWarpper.setId(2);
                    break;
                case 3:
                    baseWarpper.setName("跨城出行");
                    baseWarpper.setId(3);
                    break;
                case 4:
                    baseWarpper.setName("同城小件物流");
                    baseWarpper.setId(4);
                    break;
                case 5:
                    baseWarpper.setName("跨城小件物流");
                    baseWarpper.setId(5);
                    break;
                case 6:
                    baseWarpper.setName("包车");
                    baseWarpper.setId(6);
                    break;
            }
            list.add(baseWarpper);
        }
        return list;
    }
    /**
     * 根据开通的城市id获取业务类型
     * @param id
     * @return
     * @throws Exception
     */
    @Override
    public List<BaseWarpper> queryBusinessById(Integer id) throws Exception {
        List<OpenCityBusiness> openCityBusinesses = openCityBusinessMapper.queryBusinessById(id);
        List<BaseWarpper> list = new ArrayList<>();
        for(OpenCityBusiness b : openCityBusinesses){
            BaseWarpper baseWarpper = new BaseWarpper();
            switch (b.getBusinessType()){
                case 1:
                    baseWarpper.setName("专车");
                    baseWarpper.setId(1);
                    break;
                case 2:
                    baseWarpper.setName("出租车");
                    baseWarpper.setId(2);
                    break;
                case 3:
                    baseWarpper.setName("跨城出行");
                    baseWarpper.setId(3);
                    break;
                case 4:
                    baseWarpper.setName("同城小件物流");
                    baseWarpper.setId(4);
                    break;
                case 5:
                    baseWarpper.setName("跨城小件物流");
                    baseWarpper.setId(5);
                    break;
                case 6:
                    baseWarpper.setName("包车");
                    baseWarpper.setId(6);
                    break;
            }
            list.add(baseWarpper);
        }
        return list;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityServiceImpl.java
New file
@@ -0,0 +1,69 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.dao.OpenCityMapper;
import com.stylefeng.guns.modular.system.model.OpenCity;
import com.stylefeng.guns.modular.system.service.IOpenCityService;
import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@Service
public class OpenCityServiceImpl extends ServiceImpl<OpenCityMapper, OpenCity> implements IOpenCityService {
    @Resource
    private OpenCityMapper openCityMapper;
    /**
     * 获取开通城市列表
     * @return
     * @throws Exception
     */
    @Override
    public List<BaseWarpper> queryOpenCity() throws Exception {
        List<OpenCity> openCities = openCityMapper.queryOpenCity();
        List<BaseWarpper> list = new ArrayList<>();
        for(OpenCity c : openCities){
            BaseWarpper baseWarpper = new BaseWarpper();
            baseWarpper.setId(c.getId());
            baseWarpper.setName(ToolUtil.isEmpty(c.getProvinceName())  ?
                    (ToolUtil.isEmpty(c.getCityName()) ? (ToolUtil.isEmpty(c.getAreaName()) ? "" : c.getAreaName()) : c.getCityName()) : c.getProvinceName());
            baseWarpper.setLon(null != c.getLon() ? c.getLon() : 0);
            baseWarpper.setLat(null != c.getLat() ? c.getLat() : 0);
            baseWarpper.setContent(c.getCode());
            baseWarpper.setName(baseWarpper.getName().replaceAll("市辖区", ""));
            list.add(baseWarpper);
        }
        return list;
    }
    /**
     * 判断是否是开通城市
     * @param code
     * @return
     * @throws Exception
     */
    @Override
    public boolean openCity(String code) throws Exception {
        String province = code==""?"":code.substring(0, 2) + "0000";
        String city = code==""?"":code.substring(0, 4) + "00";
        List<OpenCity> openCities = openCityMapper.queryByCode(code);
        if(openCities.size() == 0){
            openCities = openCityMapper.queryByCode(city);
        }
        if(openCities.size() == 0){
            openCities = openCityMapper.queryByCode(province);
        }
        if(openCities.size() == 0){
            return false;
        }
        return true;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OperationLogServiceImpl.java
New file
@@ -0,0 +1,28 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.OperationLogMapper;
import com.stylefeng.guns.modular.system.model.OperationLog;
import com.stylefeng.guns.modular.system.service.IOperationLogService;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 操作日志 服务实现类
 * </p>
 *
 * @author stylefeng123
 * @since 2018-02-22
 */
@Service
public class OperationLogServiceImpl extends ServiceImpl<OperationLogMapper, OperationLog> implements IOperationLogService {
    @Override
    public List<Map<String, Object>> getOperationLogs(Page<OperationLog> page, String beginTime, String endTime, String logName, String s, String orderByField, boolean asc) {
        return this.baseMapper.getOperationLogs(page, beginTime, endTime, logName, s, orderByField, asc);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderCancelServiceImpl.java
New file
@@ -0,0 +1,84 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.OrderCancelMapper;
import com.stylefeng.guns.modular.system.model.OrderCancel;
import com.stylefeng.guns.modular.system.service.IOrderCancelService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Service
@Transactional(isolation = Isolation.READ_UNCOMMITTED, propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class OrderCancelServiceImpl extends ServiceImpl<OrderCancelMapper, OrderCancel> implements IOrderCancelService {
    @Resource
    private OrderCancelMapper orderCancelMapper;
    /**
     * 添加数据
     * @param orderId
     * @param orderType
     * @param reason
     * @param remark
     * @param payType
     * @param money
     * @param state
     * @throws Exception
     */
    @Override
    public Integer saveData(Integer orderId, Integer orderType, String reason, String remark, Integer payType,
                            Double money, Integer state, Integer userType, Integer uid) throws Exception {
        OrderCancel orderCancel = new OrderCancel();
        orderCancel.setOrderId(orderId);
        orderCancel.setOrderType(orderType);
        orderCancel.setReason(reason);
        orderCancel.setRemark(remark);
        orderCancel.setPayType(payType);
        orderCancel.setMoney(money);
        orderCancel.setState(state);
        orderCancel.setInsertTime(new Date());
        orderCancel.setUserType(userType);
        orderCancel.setUserId(uid);
        this.insert(orderCancel);
        return orderCancel.getId();
    }
    /**
     * 获取取消数据
     * @param orderId
     * @param orderType
     * @param money
     * @param payType
     * @param state
     * @return
     * @throws Exception
     */
    @Override
    public OrderCancel query(Integer orderId, Integer orderType, Double money, Integer payType, Integer state) throws Exception {
        return orderCancelMapper.query(orderId, orderType, money, payType, state);
    }
    /**
     * 获取用户取消记录
     * @param uid
     * @param isPay
     * @return
     * @throws Exception
     */
    @Override
    public List<Map<String, Object>> queryCancel(Integer uid, Integer isPay) throws Exception {
        return orderCancelMapper.queryCancel(uid, isPay);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderEvaluateServiceImpl.java
New file
@@ -0,0 +1,117 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.crossCity.model.OrderCrossCity;
import com.stylefeng.guns.modular.crossCity.server.IOrderCrossCityService;
import com.stylefeng.guns.modular.specialTrain.model.OrderPrivateCar;
import com.stylefeng.guns.modular.specialTrain.server.IOrderPrivateCarService;
import com.stylefeng.guns.modular.system.dao.OrderEvaluateMapper;
import com.stylefeng.guns.modular.system.dao.SensitiveWordsMapper;
import com.stylefeng.guns.modular.system.model.OrderEvaluate;
import com.stylefeng.guns.modular.system.model.SensitiveWords;
import com.stylefeng.guns.modular.system.service.IOrderEvaluateService;
import com.stylefeng.guns.modular.system.service.ISystemNoticeService;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.taxi.model.OrderTaxi;
import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Service
public class OrderEvaluateServiceImpl extends ServiceImpl<OrderEvaluateMapper, OrderEvaluate> implements IOrderEvaluateService {
    @Resource
    private OrderEvaluateMapper orderEvaluateMapper;
    @Autowired
    private IOrderTaxiService orderTaxiService;
    @Resource
    private SensitiveWordsMapper sensitiveWordsMapper;
    @Autowired
    private ISystemNoticeService systemNoticeService;
    @Autowired
    private IOrderPrivateCarService orderPrivateCarService;
    @Autowired
    private IOrderCrossCityService orderCrossCityService;
    /**
     * 添加评价数据
     * @param orderId
     * @param orderType
     * @param fraction
     * @param content
     * @throws Exception
     */
    @Override
    public ResultUtil saveData(Integer orderId, Integer orderType, Integer fraction, String content) throws Exception {
        if(ToolUtil.isNotEmpty(content)){
            if(null != content && content.length() > 500){
                return ResultUtil.error("评价内容过长");
            }
            List<SensitiveWords> sensitiveWords = sensitiveWordsMapper.selectList(null);
            for(SensitiveWords s : sensitiveWords){
                content = content.replaceAll(s.getContent(), "***");
            }
        }
        OrderEvaluate orderEvaluate = new OrderEvaluate();
        Integer driverId = null;
        Integer uid = null;
        switch (orderType){
            case 1:
                OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(orderId);
                driverId = orderPrivateCar.getDriverId();
                uid = orderPrivateCar.getUserId();
                break;
            case 2:
                OrderTaxi orderTaxi = orderTaxiService.selectById(orderId);
                driverId = orderTaxi.getDriverId();
                uid = orderTaxi.getUserId();
                break;
            case 3:
                OrderCrossCity orderCrossCity = orderCrossCityService.selectById(orderId);
                driverId = orderCrossCity.getDriverId();
                uid = orderCrossCity.getUserId();
                break;
        }
        orderEvaluate.setOrderId(orderId);
        orderEvaluate.setDriverId(driverId);
        orderEvaluate.setOrderType(orderType);
        orderEvaluate.setFraction(fraction);
        orderEvaluate.setContent(content);
        orderEvaluate.setInsertTime(new Date());
        orderEvaluate.setUserId(uid);
        this.insert(orderEvaluate);
        systemNoticeService.addSystemNotice(1, "您已成功添加订单评价,谢谢使用!", uid, 1);
        return ResultUtil.success(orderEvaluate.getId());
    }
    /**
     * 获取司机的历史评价数据
     * @param driverId
     * @return
     * @throws Exception
     */
    @Override
    public List<Map<String, Object>> queryOrderEvaluate(Integer driverId, Integer pageNum, Integer size) throws Exception {
        pageNum = (pageNum - 1) * size;
        return orderEvaluateMapper.queryOrderEvaluate(driverId, pageNum, size);
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderPositionServiceImpl.java
New file
@@ -0,0 +1,98 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.dao.OrderPositionMapper;
import com.stylefeng.guns.modular.system.model.OrderPosition;
import com.stylefeng.guns.modular.system.service.IOrderPositionService;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class OrderPositionServiceImpl extends ServiceImpl<OrderPositionMapper, OrderPosition> implements IOrderPositionService {
    @Resource
    private OrderPositionMapper orderPositionMapper;
    @Value("${filePath}")
    private String filePath;
    /**
     * 获取轨迹数据
     * @param orderId
     * @param orderType
     * @return
     * @throws Exception
     */
    @Override
    public List<Map<String, Object>> queryTrack(Integer orderId, Integer orderType) throws Exception {
//        return orderPositionMapper.queryTrack(orderId, orderType);
        //将数据存储到文件中
        File file = new File(filePath + orderId + "_" + orderType + ".txt");
        if(!file.exists()){
            return new ArrayList<>();
        }
        //读取文件(字符流)
        BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(file),"UTF-8"));
        //循环取出数据
        String str = null;
        StringBuffer sb = new StringBuffer();
        while ((str = in.readLine()) != null) {
            sb.append(str);
        }
        List<OrderPosition> list = JSONArray.parseArray(sb.toString(), OrderPosition.class);
        List<Map<String, Object>> lonlat = new ArrayList<>();
        for(OrderPosition orderPosition : list){
            Map<String, Object> map = new HashMap<>();
            map.put("lon", orderPosition.getLon());
            map.put("lat", orderPosition.getLat());
            lonlat.add(map);
        }
        return lonlat;
    }
    /**
     * 获取坐标文件中的坐标数据
     * @param orderId
     * @param orderType
     * @return
     * @throws Exception
     */
    @Override
    public List<OrderPosition> queryPosition(Integer orderId, Integer orderType) throws Exception{
        //将数据存储到文件中
        File file = new File(filePath + orderId + "_" + orderType + ".txt");
        if(!file.exists()){
            return new ArrayList<>();
        }
        //读取文件(字符流)
        BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(file),"UTF-8"));
        //循环取出数据
        String str = null;
        StringBuffer sb = new StringBuffer();
        while ((str = in.readLine()) != null) {
            sb.append(str);
        }
        List<OrderPosition> list = new ArrayList<>();
        if(ToolUtil.isNotEmpty(sb.toString())){
            list = JSONArray.parseArray(sb.toString(), OrderPosition.class);
        }
        System.err.println("坐标:" + sb);
        return list;
    }
}
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
New file
@@ -0,0 +1,136 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.stylefeng.guns.modular.crossCity.server.IOrderCrossCityService;
import com.stylefeng.guns.modular.smallLogistics.server.IOrderLogisticsService;
import com.stylefeng.guns.modular.specialTrain.server.IOrderPrivateCarService;
import com.stylefeng.guns.modular.system.service.IOrderService;
import com.stylefeng.guns.modular.system.service.IUserInfoService;
import com.stylefeng.guns.modular.system.util.ChinaMobileUtil;
import com.stylefeng.guns.modular.system.util.GDMapElectricFenceUtil;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Service;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.client.RestTemplate;
import java.util.Map;
@Service
public class OrderServiceImpl implements IOrderService {
    @Autowired
    private IOrderTaxiService orderTaxiService;
    @Autowired
    private RestTemplate internalRestTemplate;
    @Autowired
    private ChinaMobileUtil chinaMobileUtil;
    @Autowired
    private IUserInfoService userInfoService;
    @Autowired
    private GDMapElectricFenceUtil gdMapElectricFenceUtil;
    @Autowired
    private IOrderCrossCityService orderCrossCityService;
    @Autowired
    private IOrderPrivateCarService orderPrivateCarService;
    @Autowired
    private IOrderLogisticsService orderLogisticsService;
    /**
     * 获取预计行驶时间
     * @param slon  起点经度
     * @param slat  起点纬度
     * @param elon  终点经度
     * @param elat  终点纬度
     * @return
     * @throws Exception
     */
    @Override
    public ResultUtil<BaseWarpper> queryExpectedTime(Double slon, Double slat, Double elon, Double elat) throws Exception {
        Map<String, String> distance = gdMapElectricFenceUtil.getDistance(slon + "," + slat, elon + "," + elat, 1);
        int duration = Integer.valueOf(distance.get("duration")) / 60;
        BaseWarpper baseWarpper = new BaseWarpper();
        baseWarpper.setMinute(duration);
        return ResultUtil.success(baseWarpper);
    }
    /**
     * APP调用微信小程序完成支付
     * @param orderId
     * @param orderType
     * @param type
     * @return
     * @throws Exception
     */
    @Override
    public ResultUtil weChatPay(Integer orderId, Integer orderType, Integer type, Integer userType, Integer uid, String content) throws Exception {
        JSONObject jsonObject = JSON.parseObject(content);
        switch (type){
            case 1://订单完成支付
                switch (orderType){
                    case 1:
                        return orderPrivateCarService.payPrivateCarOrder(1, orderId, (null == jsonObject ? null : jsonObject.getIntValue("couponId")), 3);
                    case 2:
                        return orderTaxiService.payTaxiOrder(1, orderId, (null == jsonObject ? null : jsonObject.getIntValue("couponId")), 3);
                    case 3:
                        return orderCrossCityService.payCrossCityOrder(1, orderId, (null == jsonObject ? null : jsonObject.getIntValue("couponId")), 3);
                    case 4:
                        return orderLogisticsService.payLogisticsOrder(1, orderId, 3);
                    case 5:
                        return orderLogisticsService.payLogisticsOrder(1, orderId, 3);
                }
            case 2://订单取消支付
                switch (orderType){
                    case 1:
                        return orderPrivateCarService.cancleOrderPrivateCar(orderId, 1, null == jsonObject ? null : jsonObject.getIntValue("cancelId"), 3);
                    case 2:
                        return orderTaxiService.cancleOrderTaxi(orderId, 1, null == jsonObject ? null : jsonObject.getIntValue("cancelId"), 3);
                    case 3:
                        return orderCrossCityService.cancleOrderCrossCity(orderId, 1, null == jsonObject ? null : jsonObject.getIntValue("cancelId"), 3);
                }
            case 3://司机端改派支付
                HttpHeaders headers = new HttpHeaders();
                // 以表单的方式提交
                headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
                //将请求头部和参数合成一个请求
                MultiValueMap<String, Object> params = new LinkedMultiValueMap<>();
                params.add("orderId", orderId.toString());
                params.add("orderType", orderType.toString());
                params.add("payType", "1");
                params.add("reason", null == jsonObject ? "" : jsonObject.getString("reason"));
                params.add("remark", null == jsonObject ? "" : jsonObject.getString("remark"));
                params.add("uid", jsonObject.getString("uid"));
                HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(params, headers);
                String s = internalRestTemplate.postForObject("http://driver-server/base/order/reassign_", requestEntity, String.class);
                JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class);
                return ResultUtil.success(jsonObject1.getString("msg"), jsonObject1.getString("data"));
            case 4://余额充值
                if(userType == 1){
                    return userInfoService.depositBalance(1, jsonObject.getDoubleValue("money"), uid, 3);
                }
                if(userType == 2){
                }
            case 5://小件物流补差价
                return orderLogisticsService.payLogisticsOrder_(1, orderId, 3);
        }
        return ResultUtil.success();
    }
}
Diff truncated after the above file
UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/PhoneServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ProblemServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/PushOrderServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/RedPacketRecordServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/RelationServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/RoleServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ServerCarModelServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/SmsrecordServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/SystemNoticeServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TNoticesServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserActivityBalanceServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserActivityRedenvelopeServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserActivityRegisteredServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserCouponRecordServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserRedPacketRecordServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/VerifiedServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/VersionManagementServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/WithdrawalServiceImpl.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/transfer/ManagerUser.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/transfer/ReqAddManager.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/transfer/ReqEditManager.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/transfer/UserDto.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ALiApiUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ALiSendSms.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ApplicationRunnerUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ChinaMobileUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/DateUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDFalconUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapGeocodingUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GeodesyUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/HttpClientUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/HttpTool.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ICBCPayUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/JuHeUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/MD5AndKL.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/MD5Util.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/MinistryOfTransport.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/MsgUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/OssUploadUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PayMoneyUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushMinistryOfTransportUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/RedisUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ResultUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SendRequestDto.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SignUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SignVerificationUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SystemException.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/UUIDUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/UploadUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/WeChatUtil.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/AdvertisementWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/BaseWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/CouponWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/DeptWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/DictWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/DriverInfoWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/EndPushWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/IntegralGoodsWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/IntegralOrderWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/InvoiceWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/LogWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/LoginWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/MenuWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/NoticeWrapper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderDriverWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderEvaluateWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderInfoWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderServerWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderStatusWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/ProblemWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/RoleWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/ServerCarModelWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/SystemNoticeWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/TNoticeWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/TravelRecordWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/UserInfoWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/UserWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/VerifiedWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/VersionWarpper.java UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/WithdrawalWarpper.java