From 1a0c0fc8b02415e919e17c0b6ffbf99d08dec8f5 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期五, 07 四月 2023 17:40:53 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TComplaintMapper.xml | 6 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TMainContentMapper.xml | 19 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderMapper.java | 27 management/guns-admin/src/main/webapp/static/modular/system/tSystemConfig/tSystemConfig.js | 12 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITMainContentService.java | 16 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCommercialController.java | 39 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCommercialMapper.java | 2 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java | 17 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBillServiceImpl.java | 23 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCommercialServiceImpl.java | 33 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRechargeRecordServiceImpl.java | 12 management/guns-admin/src/main/webapp/WEB-INF/view/system/tSystemConfig/tSystemConfigPriceRules.html | 56 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderController.java | 23 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCashWithdrawalMapper.java | 18 management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgent_add.html | 6 management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tripRecordingExplain.html | 41 management/guns-admin/src/main/webapp/static/modular/system/tImg/tImg.js | 100 management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial_add.html | 164 + management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TAgent.java | 14 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TMainContentController.java | 253 ++ management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBroadcastController.java | 45 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TRevenueMapper.java | 3 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent.html | 38 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRevenueServiceImpl.java | 14 management/guns-admin/src/main/webapp/WEB-INF/view/system/tRechargeRecord/tRechargeRecordAgent.html | 6 management/guns-admin/src/main/webapp/WEB-INF/view/system/tAppUser/tAppUser.html | 14 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent_edit.html | 30 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TComplaintMapper.java | 3 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAppUserServiceImpl.java | 43 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TMainContent.java | 101 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TComplaintServiceImpl.java | 6 management/guns-admin/src/main/webapp/static/modular/system/tImg/tImg_info.js | 216 ++ management/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver.html | 24 management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/requirementsJoinExplain.html | 72 management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/agreementExplain.html | 124 + management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TImg.java | 88 management/guns-admin/src/main/webapp/WEB-INF/view/system/tBroadcast/tBroadcast_edit.html | 74 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TCommercial.java | 13 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TAppUserResp.java | 12 management/guns-admin/src/main/webapp/static/modular/system/tCommercial/tCommercial.js | 152 + management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCashWithdrawalMapper.xml | 23 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/enums/HtmlTypeEnum.java | 63 management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml.html | 38 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderService.java | 39 management/guns-admin/src/main/webapp/static/modular/system/tCommercial/tCommercial_info.js | 90 management/guns-admin/src/main/webapp/static/modular/system/tHtml/tHtml_info.js | 99 management/guns-admin/src/main/webapp/WEB-INF/view/system/tRechargeRecord/tRechargeRecordUser.html | 6 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITAgentService.java | 7 management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOffice.html | 4 management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgent.html | 6 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TImgServiceImpl.java | 20 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBillService.java | 13 management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial_edit.html | 176 + management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITCashWithdrawalService.java | 16 management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg.html | 116 + management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITAppUserService.java | 12 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAppUserController.java | 72 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITCommercialService.java | 9 management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/integralExplain.html | 41 management/guns-admin/src/main/webapp/static/modular/system/tBroadcast/tBroadcast.js | 61 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/THtmlMapper.java | 16 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TOrderServerResp.java | 18 management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgentDetail.html | 7 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent_add.html | 30 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TImgMapper.java | 16 management/guns-admin/src/main/webapp/static/modular/system/tMainContent/tMainContent_info.js | 288 ++ management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml_edit.html | 29 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrderUpdate.html | 34 management/guns-admin/src/main/webapp/WEB-INF/view/system/tRevenue/tRevenue.html | 6 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TBillMapper.java | 21 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrderAdd.html | 34 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TDriverServiceImpl.java | 59 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TBillMapper.xml | 30 management/guns-admin/src/main/webapp/static/modular/system/tAppUser/tAppUserException.js | 14 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/DataStatisticsController.java | 34 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCashWithdrawalServiceImpl.java | 20 management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/estimatedPriceExplain.html | 41 management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml_add.html | 29 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITHtmlService.java | 16 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/PerformanceTableResp.java | 43 management/guns-admin/src/main/webapp/static/modular/system/tBroadcast/tBroadcast_info.js | 68 management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/commissionRuleExplain.html | 41 management/guns-admin/src/main/webapp/static/modular/system/tAgent/tAgent.js | 1 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrderAdd.html | 34 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCashWithdrawalController.java | 104 + management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/DataStatisticsOrderYearResp.java | 32 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TCashWithdrawal.java | 154 + management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TBillResp.java | 12 management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/aboutUs.html | 41 management/guns-admin/src/main/webapp/static/modular/system/tHtml/tHtml.js | 159 + management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TMainContentServiceImpl.java | 20 management/guns-admin/src/main/webapp/WEB-INF/view/system/tEvaluate/tEvaluate.html | 6 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITRevenueService.java | 9 management/guns-admin/src/main/webapp/WEB-INF/view/system/tOrder/tOrder.html | 18 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TOrder.java | 21 management/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriverCommission.html | 6 management/guns-admin/src/main/webapp/static/modular/system/tDriver/tDriver.js | 2 management/guns-admin/src/main/webapp/WEB-INF/view/system/tBroadcast/tBroadcast_add.html | 72 management/guns-admin/src/main/webapp/WEB-INF/view/system/tBill/tBill.html | 6 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THtmlController.java | 237 ++ management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TMainContentMapper.java | 16 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrderAdd.html | 34 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TSystemConfigController.java | 38 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrderUpdate.html | 34 management/guns-admin/src/main/webapp/static/modular/system/tMainContent/tMainContent.js | 206 ++ management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/cancellationAgreement.html | 41 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBroadcastServiceImpl.java | 8 management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg_add.html | 29 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TImgController.java | 148 + management/guns-admin/src/main/webapp/WEB-INF/view/system/tComplaint/tComplaint.html | 4 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml | 111 + management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/enums/MainContentTypeEnum.java | 52 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrder.html | 44 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgentController.java | 23 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBroadcastService.java | 2 management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/startingFareExplain.html | 41 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java | 74 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/THtml.java | 88 management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial.html | 4 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TRevenueMapper.xml | 38 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java | 43 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TImgMapper.xml | 18 management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg_edit.html | 29 management/guns-admin/src/main/resources/application.yml | 2 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBillController.java | 19 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/THtmlMapper.xml | 18 management/guns-admin/src/main/webapp/WEB-INF/view/system/tAppUser/tAppUserException.html | 4 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITImgService.java | 16 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/THtmlServiceImpl.java | 20 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrder.html | 44 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/exports/TAppUserExceptionExport.java | 36 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrder.html | 64 management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrderUpdate.html | 34 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TBroadcast.java | 26 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITDriverService.java | 7 135 files changed, 5,787 insertions(+), 326 deletions(-) diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/DataStatisticsController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/DataStatisticsController.java new file mode 100644 index 0000000..ba84da1 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/DataStatisticsController.java @@ -0,0 +1,34 @@ +package com.stylefeng.guns.modular.system.controller.general; + +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.stylefeng.guns.core.base.controller.BaseController; +import com.stylefeng.guns.modular.system.model.THtml; +import com.stylefeng.guns.modular.system.service.ITHtmlService; +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.ResponseBody; + +/** + * 数据统计 控制器 + * + * @author fengshuonan + * @Date 2023-03-24 10:50:08 + */ +@Controller +@RequestMapping("/dataStatistics") +public class DataStatisticsController extends BaseController { + + @Autowired + private ITHtmlService tHtmlService; + + /** + * 代理商统计 + */ + @RequestMapping(value = "/agentData") + @ResponseBody + public Object list(String condition) { + return tHtmlService.selectList(null); + } + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgentController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgentController.java index 4cd62ee..2ab5aa8 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgentController.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgentController.java @@ -249,7 +249,7 @@ DateFormat format = new SimpleDateFormat("yyyyMMdd"); String time1 = format.format(date); String fileName = "Agent"+time1+".xls"; - String[] title = new String[] {"时间","姓名","联系电话","代理区域","订单数量", + String[] title = new String[] {"时间","姓名","联系电话","代理区域","客服电话","订单数量", "有效订单","已发放优惠券","已使用优惠券","累计优惠券金额","司机充值","司机数","状态"}; EntityWrapper<TAgent> wrapper = tAgentService.getAgentWrapper(principal,principalPhone,createTime); // 是否异常 @@ -265,20 +265,21 @@ values[i][1] = d.getPrincipal(); values[i][2] = d.getPrincipalPhone(); values[i][3] = d.getProvinceName()+d.getCityName(); - values[i][4] = String.valueOf(d.getOrderSum()); - values[i][5] = String.valueOf(d.getValidOrder()); - values[i][6] = String.valueOf(d.getIssuedCoupon()); - values[i][7] = String.valueOf(d.getUsedCoupon()); - values[i][8] = String.valueOf(d.getCouponPriceSum()); - values[i][9] = String.valueOf(d.getDriverRecharge() == null ? "0":d.getDriverRecharge()); - values[i][10] = String.valueOf(d.getDriverCount()); + values[i][4] = StringUtils.hasLength(d.getServiceCalls())?d.getServiceCalls():""; + values[i][5] = String.valueOf(d.getOrderSum()); + values[i][6] = String.valueOf(d.getValidOrder()); + values[i][7] = String.valueOf(d.getIssuedCoupon()); + values[i][8] = String.valueOf(d.getUsedCoupon()); + values[i][9] = String.valueOf(d.getCouponPriceSum()); + values[i][10] = String.valueOf(d.getDriverRecharge() == null ? "0":d.getDriverRecharge()); + values[i][11] = String.valueOf(d.getDriverCount()); Integer status1 = d.getStatus(); if(1 == status1){ - values[i][11] = "正常"; + values[i][12] = "正常"; }else if(2 == status1){ - values[i][11] = "冻结"; + values[i][12] = "冻结"; }else { - values[i][11] = "删除"; + values[i][12] = "删除"; } } HSSFWorkbook wb = ExcelUtil.getHSSFWorkbook("Variance"+time1, title, values, null); diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAppUserController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAppUserController.java index f707d54..f23ebd0 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAppUserController.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAppUserController.java @@ -176,36 +176,8 @@ // 是否异常 wrapper.eq("is_exception",2); List<TAppUser> tAppUsers = tAppUserService.selectList(wrapper); - List<TAppUserResp> tAppUserRespList = new ArrayList<>(tAppUsers.size()); - for (TAppUser tAppUser : tAppUsers) { - TAppUserResp tAppUserResp = new TAppUserResp(); - BeanUtils.copyProperties(tAppUser,tAppUserResp); - // 查询当前用户优惠券数量 - List<TUserToCoupon> tUserToCoupons = tUserToCouponService.selectList(new EntityWrapper<TUserToCoupon>().eq("userId", tAppUser.getId())); - - int couponTotal = tUserToCoupons.stream().mapToInt(TUserToCoupon::getCouponTotal).sum(); - int validCount = tUserToCoupons.stream().mapToInt(TUserToCoupon::getValidCount).sum(); - -// List<TCoupon> tCoupons = tCouponService.selectList(new EntityWrapper<TCoupon>().eq("user_id", tAppUser.getId())); -// List<TCoupon> notUsedList = tCoupons.stream().filter(coupon -> coupon.getCouponStatus().equals(CouponStatusEnum.NOT_USED.getCode())).collect(Collectors.toList()); - tAppUserResp.setCouponSum(couponTotal); - tAppUserResp.setNotUsedCount(validCount); - List<TOrder> orders = tOrderService.selectList(new EntityWrapper<TOrder>().eq("userId", tAppUser.getId()).orderBy(true,"createTime",false)); - if(!CollectionUtils.isEmpty(orders)){ - List<TOrder> collect1 = orders.stream().filter(order->Objects.nonNull(order.getState())) - .filter(order -> OrderStateEnum.WAIT_EVALUATED.getCode() == order.getState() || - OrderStateEnum.FINISH.getCode() == order.getState()).collect(Collectors.toList()); - if(!CollectionUtils.isEmpty(collect1)) { - tAppUserResp.setConsumeSum(collect1.size()); - // 总消费金额 - collect1.stream().map(TOrder::getPayMoney).reduce(BigDecimal::add) - .ifPresent(tAppUserResp::setConsumePrice); - } - } - tAppUserRespList.add(tAppUserResp); - } - return tAppUserRespList; + return tAppUserService.getTAppUserResp(tAppUsers); } @@ -320,14 +292,16 @@ for (int i = 0; i < list.size(); i++) { TAppUser d = list.get(i); values[i] = new String[title.length]; - values[i][0] = d.getId().toString(); + values[i][0] = String.valueOf(d.getId()); values[i][1] = d.getNickname(); values[i][2] = d.getPhone(); Integer sex = d.getSex(); - if(1 == sex){ - values[i][3] = "男"; - }else if(2 == sex){ - values[i][3] = "女"; + if(Objects.nonNull(sex)){ + if(1 == sex){ + values[i][3] = "男"; + }else if(2 == sex){ + values[i][3] = "女"; + } }else { values[i][3] = "未知"; } @@ -336,8 +310,8 @@ values[i][6] = d.getUnionid(); values[i][7] = d.getEmergencyContact(); values[i][8] = d.getEmergencyPhone(); - values[i][9] = d.getAccountBalance().toString(); - values[i][10] = d.getUserTagId().toString(); + values[i][9] = String.valueOf(d.getAccountBalance()); + values[i][10] = String.valueOf(d.getUserTagId()); Integer status1 = d.getStatus(); if(1 == status1){ values[i][11] = "正常"; @@ -383,7 +357,7 @@ wrapper.eq("is_exception",2); List<TAppUser> list = tAppUserService.selectList(wrapper); - List<TAppUserExceptionExport> exportList = new ArrayList<>(list.size()); + /*List<TAppUserExceptionExport> exportList = new ArrayList<>(list.size()); for (TAppUser tAppUser : list) { TAppUserExceptionExport export = new TAppUserExceptionExport(); BeanUtils.copyProperties(tAppUser,export); @@ -394,7 +368,21 @@ tCoupons = tCoupons.stream().filter(coupon->coupon.getCouponStatus().equals(CouponStatusEnum.NOT_USED.getCode())).collect(Collectors.toList()); // 剩余优惠券 export.setRemainingCoupons(tCoupons.size()); - // TODO 查询消费记录 + // 查询消费记录 + exportList.add(export); + }*/ + List<TAppUserResp> tAppUserRespList = tAppUserService.getTAppUserResp(list); + List<TAppUserExceptionExport> exportList = new ArrayList<>(list.size()); + for (TAppUserResp tAppUserResp : tAppUserRespList) { + TAppUserExceptionExport export = new TAppUserExceptionExport(); + BeanUtils.copyProperties(tAppUserResp,export); + // 优惠券总数 + export.setCouponsSum(tAppUserResp.getCouponSum()); + // 剩余优惠券 + export.setRemainingCoupons(tAppUserResp.getNotUsedCount()); + export.setConsumptionTimes(tAppUserResp.getConsumeSum()); + export.setHistoricalConsumption(tAppUserResp.getConsumePrice()); + export.setLastConsumptionTime(tAppUserResp.getLastConsumptionTime()); exportList.add(export); } String[][] values = new String[list.size()][]; @@ -405,10 +393,10 @@ values[i][1] = d.getId().toString(); values[i][2] = d.getNickname(); values[i][3] = d.getPhone(); - values[i][4] = d.getRemainingCoupons().toString(); - values[i][5] = d.getCouponsSum().toString(); - values[i][6] = d.getConsumptionTimes().toString(); - values[i][7] = d.getHistoricalConsumption().toString(); + values[i][4] = String.valueOf(d.getRemainingCoupons()); + values[i][5] = String.valueOf(d.getCouponsSum()); + values[i][6] = String.valueOf(Objects.nonNull(d.getConsumptionTimes())?d.getConsumptionTimes():0); + values[i][7] = String.valueOf(Objects.nonNull(d.getHistoricalConsumption())?d.getHistoricalConsumption():0); if(Objects.nonNull(d.getLastConsumptionTime())){ values[i][8] = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(d.getLastConsumptionTime()); }else { diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBillController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBillController.java index e35af56..6c00995 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBillController.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBillController.java @@ -6,11 +6,14 @@ import com.stylefeng.guns.modular.system.controller.util.ExcelUtil; import com.stylefeng.guns.modular.system.enums.TBillStateEnum; import com.stylefeng.guns.modular.system.model.TDriver; +import com.stylefeng.guns.modular.system.model.TOrder; +import com.stylefeng.guns.modular.system.service.ITOrderService; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.springframework.stereotype.Controller; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; @@ -45,6 +48,8 @@ @Autowired private ITBillService tBillService; + @Autowired + private ITOrderService tOrderService; /** * 跳转到首页 @@ -79,12 +84,13 @@ @RequestMapping(value = "/list") @ResponseBody public Object list(String createTime,String addresseePhone,Integer state,Integer billType,Integer billHeaderType) { - EntityWrapper<TBill> wrapper = tBillService.getPageListWrapper(createTime,addresseePhone,state,billType,billHeaderType); - return tBillService.selectList(wrapper); +// EntityWrapper<TBill> wrapper = tBillService.getPageListWrapper(createTime,addresseePhone,state,billType,billHeaderType); +// return tBillService.selectList(wrapper); + return tBillService.getPageList(createTime,addresseePhone,state,billType,billHeaderType); } /** - * 详情 + * 确认通过发票 */ @RequestMapping(value = "/confirm") @ResponseBody @@ -96,7 +102,7 @@ } /** - * 详情 + * 开通发票失败 */ @RequestMapping(value = "/cancel") @ResponseBody @@ -104,6 +110,11 @@ TBill tBill = tBillService.selectById(tBillId); tBill.setState(TBillStateEnum.FAIL_BILL.getCode()); tBillService.updateById(tBill); + TOrder tOrder = tOrderService.selectById(tBill.getOrderId()); + if(Objects.nonNull(tOrder)){ + tOrder.setIsInvoice(0); + tOrderService.updateById(tOrder); + } return SUCCESS_TIP; } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBroadcastController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBroadcastController.java index 3b9f7dd..e1daf8e 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBroadcastController.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBroadcastController.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.stylefeng.guns.core.base.controller.BaseController; +import com.stylefeng.guns.core.base.tips.SuccessTip; import com.stylefeng.guns.core.util.DateUtil; import com.stylefeng.guns.modular.system.enums.StatusEnum; import com.stylefeng.guns.modular.system.model.TSystemBulletin; @@ -98,6 +99,12 @@ @RequestMapping(value = "/add") @ResponseBody public Object add(TBroadcast tBroadcast) { + Boolean exit = tBroadcastService.isExit(tBroadcast.getId(), tBroadcast.getSort()); + if(exit){ + return new SuccessTip(500,"该排序已存在!"); + } + tBroadcast.setStatus(StatusEnum.NORMAL.getCode()); + tBroadcast.setCreateTime(new Date()); tBroadcastService.insert(tBroadcast); return SUCCESS_TIP; } @@ -109,6 +116,9 @@ @ResponseBody public Object delete(@RequestParam Integer tBroadcastId) { TBroadcast tBroadcast = tBroadcastService.selectById(tBroadcastId); + if(1 == tBroadcast.getUpDown()){ + return new SuccessTip(500,"上架中的广播不可删除!"); + } tBroadcast.setStatus(StatusEnum.DELETE.getCode()); tBroadcastService.updateById(tBroadcast); return SUCCESS_TIP; @@ -120,6 +130,41 @@ @RequestMapping(value = "/update") @ResponseBody public Object update(TBroadcast tBroadcast) { + Boolean exit = tBroadcastService.isExit(tBroadcast.getId(), tBroadcast.getSort()); + if(exit){ + return new SuccessTip(500,"该排序已存在!"); + } + tBroadcastService.updateById(tBroadcast); + return SUCCESS_TIP; + } + + /** + * 上架 + */ + @RequestMapping(value = "/up") + @ResponseBody + public Object up(Integer id) { + + int count = tBroadcastService.selectCount(new EntityWrapper<TBroadcast>() + .eq("upDown", 1) + .ne("status", StatusEnum.DELETE.getCode())); + if(count>4){ + return new SuccessTip(500,"最多可上架5条广播!"); + } + TBroadcast tBroadcast = tBroadcastService.selectById(id); + tBroadcast.setUpDown(1); + tBroadcastService.updateById(tBroadcast); + return SUCCESS_TIP; + } + + /** + * 下架 + */ + @RequestMapping(value = "/down") + @ResponseBody + public Object down(Integer id) { + TBroadcast tBroadcast = tBroadcastService.selectById(id); + tBroadcast.setUpDown(2); tBroadcastService.updateById(tBroadcast); return SUCCESS_TIP; } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCashWithdrawalController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCashWithdrawalController.java new file mode 100644 index 0000000..b19a18d --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCashWithdrawalController.java @@ -0,0 +1,104 @@ +package com.stylefeng.guns.modular.system.controller.general; + +import com.stylefeng.guns.core.base.controller.BaseController; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.beans.factory.annotation.Autowired; +import com.stylefeng.guns.core.log.LogObjectHolder; +import org.springframework.web.bind.annotation.RequestParam; +import com.stylefeng.guns.modular.system.model.TCashWithdrawal; +import com.stylefeng.guns.modular.system.service.ITCashWithdrawalService; + +/** + * 控制器 + * + * @author fengshuonan + * @Date 2023-03-23 10:14:44 + */ +@Controller +@RequestMapping("/tCashWithdrawal") +public class TCashWithdrawalController extends BaseController { + + private String PREFIX = "/system/tCashWithdrawal/"; + + @Autowired + private ITCashWithdrawalService tCashWithdrawalService; + + /** + * 跳转到首页 + */ + @RequestMapping("") + public String index() { + return PREFIX + "tCashWithdrawal.html"; + } + + /** + * 跳转到添加 + */ + @RequestMapping("/tCashWithdrawal_add") + public String tCashWithdrawalAdd() { + return PREFIX + "tCashWithdrawal_add.html"; + } + + /** + * 跳转到修改 + */ + @RequestMapping("/tCashWithdrawal_update/{tCashWithdrawalId}") + public String tCashWithdrawalUpdate(@PathVariable Integer tCashWithdrawalId, Model model) { + TCashWithdrawal tCashWithdrawal = tCashWithdrawalService.selectById(tCashWithdrawalId); + model.addAttribute("item",tCashWithdrawal); + LogObjectHolder.me().set(tCashWithdrawal); + return PREFIX + "tCashWithdrawal_edit.html"; + } + + /** + * 获取列表 + */ + @RequestMapping(value = "/list") + @ResponseBody + public Object list(String condition) { + return tCashWithdrawalService.selectList(null); + } + + /** + * 新增 + */ + @RequestMapping(value = "/add") + @ResponseBody + public Object add(TCashWithdrawal tCashWithdrawal) { + tCashWithdrawalService.insert(tCashWithdrawal); + return SUCCESS_TIP; + } + + /** + * 删除 + */ + @RequestMapping(value = "/delete") + @ResponseBody + public Object delete(@RequestParam Integer tCashWithdrawalId) { + tCashWithdrawalService.deleteById(tCashWithdrawalId); + return SUCCESS_TIP; + } + + /** + * 修改 + */ + @RequestMapping(value = "/update") + @ResponseBody + public Object update(TCashWithdrawal tCashWithdrawal) { + tCashWithdrawalService.updateById(tCashWithdrawal); + return SUCCESS_TIP; + } + + /** + * 详情 + */ + @RequestMapping(value = "/detail/{tCashWithdrawalId}") + @ResponseBody + public Object detail(@PathVariable("tCashWithdrawalId") Integer tCashWithdrawalId) { + return tCashWithdrawalService.selectById(tCashWithdrawalId); + } +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCommercialController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCommercialController.java index 85fa9f5..684eb4a 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCommercialController.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCommercialController.java @@ -1,6 +1,8 @@ package com.stylefeng.guns.modular.system.controller.general; import com.stylefeng.guns.core.base.controller.BaseController; +import com.stylefeng.guns.core.base.tips.SuccessTip; +import com.stylefeng.guns.modular.system.controller.util.LabelReplaceUtil; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; @@ -11,6 +13,8 @@ import org.springframework.web.bind.annotation.RequestParam; import com.stylefeng.guns.modular.system.model.TCommercial; import com.stylefeng.guns.modular.system.service.ITCommercialService; + +import java.util.Date; /** * 控制器 @@ -69,6 +73,8 @@ @RequestMapping(value = "/add") @ResponseBody public Object add(TCommercial tCommercial) { + tCommercial.setHtml(LabelReplaceUtil.replace(tCommercial.getHtml())); + tCommercial.setCreateTime(new Date()); tCommercialService.insert(tCommercial); return SUCCESS_TIP; } @@ -84,11 +90,44 @@ } /** + * 上线 + */ + @RequestMapping(value = "/onLine") + @ResponseBody + public Object onLine(@RequestParam Integer tCommercialId) { + TCommercial tCommercial = tCommercialService.selectById(tCommercialId); + Boolean exit = tCommercialService.isExit(tCommercialId, 1); + if(exit){ + return new SuccessTip(500,"最多可上架4个弹窗广告!"); + } + tCommercial.setOnOffLine(1); + tCommercialService.updateById(tCommercial); + return SUCCESS_TIP; + } + + /** + * 下线 + */ + @RequestMapping(value = "/offLine") + @ResponseBody + public Object offLine(@RequestParam Integer tCommercialId) { + TCommercial tCommercial = tCommercialService.selectById(tCommercialId); + tCommercial.setOnOffLine(2); + tCommercialService.updateById(tCommercial); + return SUCCESS_TIP; + } + + /** * 修改 */ @RequestMapping(value = "/update") @ResponseBody public Object update(TCommercial tCommercial) { + if(0 == tCommercial.getIsJump()){ + tCommercial.setJumpType(0); + tCommercial.setJumpUrl(""); + } + tCommercial.setHtml(LabelReplaceUtil.replace(tCommercial.getHtml())); tCommercialService.updateById(tCommercial); return SUCCESS_TIP; } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java index 4e36492..982c9e1 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java @@ -1,8 +1,15 @@ package com.stylefeng.guns.modular.system.controller.general; +import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.stylefeng.guns.core.base.controller.BaseController; +import com.stylefeng.guns.core.common.constant.state.Order; import com.stylefeng.guns.core.shiro.ShiroKit; -import com.stylefeng.guns.modular.system.service.IUserService; +import com.stylefeng.guns.modular.system.controller.resp.TOrderServerResp; +import com.stylefeng.guns.modular.system.enums.OrderStateEnum; +import com.stylefeng.guns.modular.system.model.TAgent; +import com.stylefeng.guns.modular.system.model.TDriver; +import com.stylefeng.guns.modular.system.model.TOrder; +import com.stylefeng.guns.modular.system.service.*; import com.stylefeng.guns.modular.system.util.DateUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @@ -10,8 +17,8 @@ import org.springframework.web.bind.annotation.RequestMapping; import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.Objects; +import java.time.LocalDate; +import java.util.*; /** * 控制器 @@ -25,6 +32,14 @@ @Autowired private IUserService userService; + @Autowired + private ITAgentService tAgentService; + @Autowired + private ITDriverService tDriverService; + @Autowired + private ITOrderService tOrderService; + @Autowired + private ITRevenueService tRevenueService; private String PREFIX = "/system/tHomePage/"; @@ -32,17 +47,64 @@ * 跳转到地图 */ @RequestMapping("/map") - public String map() { + public String map(Integer agentId,Integer type,Model model) { + + if(Objects.nonNull(agentId)){ + // 查询统计在线司机,待接单,服务中,已完成,已取消 + Map<String,Integer> map = new HashMap<>(4); + int serverCount = tDriverService.selectCount(new EntityWrapper<TDriver>() + .eq("agentId", agentId) + .eq("serverStatus", 2)); + tOrderService.getDataStatisticsCount(agentId,map); + model.addAttribute("map",map); + + // 查询服务中的订单列表 + List<TOrderServerResp> orderServerRespList = tOrderService.getDataStatisticsServerList(agentId); + model.addAttribute("serverList",orderServerRespList); + + // 查询今天所有订单 + List<TOrder> allList = tOrderService.getDataStatisticsAllList(agentId); + + // TODO 拿到所有司机地址 + + }else { + // TODO 查询广东全区域数据 + } + return PREFIX + "tHomePageMap.html"; } /** - * 跳转到地图 + * 跳转到首页统计 */ @RequestMapping("/statistics") - public String statistics(Model model) { + public String statistics(Integer agentId,String dayDate,String yearDate,String monthDate,Integer type,Model model) { model.addAttribute("txt",new SimpleDateFormat("yyyy年MM月dd日").format(new Date()) + DateUtil.getWeekDay(new Date()) + ",欢迎" + Objects.requireNonNull(ShiroKit.getUser()).getName() + "登录"); + if(Objects.nonNull(agentId)){ + // 统计代理商 + tAgentService.getDataStatistics(agentId,model); + + // 统计司机数 + tDriverService.getDataStatistics(agentId,model); + + // TODO 订单统计:按今天,昨天,本周,本月 + + // 订单统计,每年按月份 + tOrderService.getDataStatisticsByYear(agentId,yearDate,model); + + // 业绩排名 performanceTable + if (1 == type){ + // 单量 + tOrderService.getDataStatisticsOrderCount(agentId,monthDate,model); + }else { + // 收入、佣金 + tRevenueService.getDataStatisticsIncomeOrCommission(agentId,monthDate,type,model); + } + + }else { + // TODO 查询广东全区域数据 + } return PREFIX + "tHomePageStatistics.html"; } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THtmlController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THtmlController.java new file mode 100644 index 0000000..9f27ad3 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THtmlController.java @@ -0,0 +1,237 @@ +package com.stylefeng.guns.modular.system.controller.general; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.stylefeng.guns.core.base.controller.BaseController; +import com.stylefeng.guns.modular.system.controller.util.LabelReplaceUtil; +import com.stylefeng.guns.modular.system.enums.HtmlTypeEnum; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.beans.factory.annotation.Autowired; +import com.stylefeng.guns.core.log.LogObjectHolder; +import org.springframework.web.bind.annotation.RequestParam; +import com.stylefeng.guns.modular.system.model.THtml; +import com.stylefeng.guns.modular.system.service.ITHtmlService; + +import java.util.Objects; + +/** + * 控制器 + * + * @author fengshuonan + * @Date 2023-03-24 10:50:08 + */ +@Controller +@RequestMapping("/tHtml") +public class THtmlController extends BaseController { + + private String PREFIX = "/system/tHtml/"; + + @Autowired + private ITHtmlService tHtmlService; + + /** + * 跳转到首页 + */ + @RequestMapping("") + public String index() { + return PREFIX + "tHtml.html"; + } + + /** + * 跳转到添加 + */ + @RequestMapping("/tHtml_add") + public String tHtmlAdd() { + return PREFIX + "tHtml_add.html"; + } + + /** + * 跳转到修改 + */ + @RequestMapping("/tHtml_update/{tHtmlId}") + public String tHtmlUpdate(@PathVariable Integer tHtmlId, Model model) { + THtml tHtml = tHtmlService.selectById(tHtmlId); + model.addAttribute("item",tHtml); + LogObjectHolder.me().set(tHtml); + return PREFIX + "tHtml_edit.html"; + } + + /** + * 跳转到积分说明 + */ + @RequestMapping("/integralExplain") + public String integralExplain(Model model) { + THtml html = queryHtmlByType(HtmlTypeEnum.INTEGRAL_EXPLAIN.getCode()); + model.addAttribute("html",html); + return PREFIX + "integralExplain.html"; + } + + /** + * 跳转到佣金规则说明 + */ + @RequestMapping("/commissionRuleExplain") + public String commissionRuleExplain(Model model) { + THtml html = queryHtmlByType(HtmlTypeEnum.COMMISSION_RULE_EXPLAIN.getCode()); + model.addAttribute("html",html); + return PREFIX + "commissionRuleExplain.html"; + } + + /** + * 跳转到行程录音说明 + */ + @RequestMapping("/tripRecordingExplain") + public String tripRecordingExplain(Model model) { + THtml html = queryHtmlByType(HtmlTypeEnum.TRIP_RECORDING_EXPLAIN.getCode()); + model.addAttribute("html",html); + return PREFIX + "tripRecordingExplain.html"; + } + + /** + * 跳转到预估价格说明 + */ + @RequestMapping("/estimatedPriceExplain") + public String estimatedPriceExplain(Model model) { + THtml html = queryHtmlByType(HtmlTypeEnum.ESTIMATED_PRICE_EXPLAIN.getCode()); + model.addAttribute("html",html); + return PREFIX + "estimatedPriceExplain.html"; + } + + /** + * 跳转到起步价说明 + */ + @RequestMapping("/startingFareExplain") + public String startingFareExplain(Model model) { + THtml html = queryHtmlByType(HtmlTypeEnum.SPECIFICATION_STARTING_PRICE.getCode()); + model.addAttribute("html",html); + return PREFIX + "estimatedPriceExplain.html"; + } + + /** + * 跳转到注销协议 + */ + @RequestMapping("/cancellationAgreement") + public String cancellationAgreement(Model model) { + THtml html = queryHtmlByType(HtmlTypeEnum.CANCELLATION_AGREEMENT.getCode()); + model.addAttribute("html",html); + return PREFIX + "cancellationAgreement.html"; + } + + /** + * 跳转到关于我们 + */ + @RequestMapping("/aboutUs") + public String aboutUs(Model model) { + THtml html = queryHtmlByType(HtmlTypeEnum.ABOUT_US.getCode()); + model.addAttribute("html",html); + return PREFIX + "aboutUs.html"; + } + + /** + * 跳转到代驾服务协议与隐私政策保护,法律条款,个人信息处理规则 + */ + @RequestMapping("/agreementExplain") + public String agentDrivingServiceExplain(Integer type,Model model) { + THtml one = queryHtmlByType(HtmlTypeEnum.AGENT_DRIVING_SERVICE_EXPLAIN.getCode()); + model.addAttribute("one",one); + THtml two = queryHtmlByType(HtmlTypeEnum.CLAUSE.getCode()); + model.addAttribute("two",two); + THtml three = queryHtmlByType(HtmlTypeEnum.PERSONAL_INFORMATION_RULES.getCode()); + model.addAttribute("three",three); + return PREFIX + "agreementExplain.html"; + } + + /** + * 跳转到加盟基本要求 + */ + @RequestMapping("/requirementsJoinExplain") + public String requirementsJoinExplain(Model model) { + THtml tHtml = queryHtmlByType(HtmlTypeEnum.BASIC_REQUIREMENTS_JOINING.getCode()); + JSONObject jsonObject = JSONObject.parseObject(tHtml.getHtml()); + JSONArray rules = jsonObject.getJSONArray("rules"); + JSONArray objects = new JSONArray(); + for (int i = 0; i < rules.size(); i++) { + JSONObject jsonObject1 = JSONObject.parseObject(JSONObject.toJSONString(rules.get(i))); + if(i == 0){ + jsonObject1.put("key",0); + }else { + jsonObject1.put("key",1); + } + objects.add(jsonObject1); + } + model.addAttribute("array",objects); + model.addAttribute("id",tHtml.getId()); + return PREFIX + "requirementsJoinExplain.html"; + } + + /** + * 跳转到代驾服务协议与隐私政策保护,法律条款,个人信息处理规则 + */ + @RequestMapping("/agreement") + @ResponseBody + public Object agreement(Integer type) { + return queryHtmlByType(type); + } + + /** + * 获取列表 + */ + @RequestMapping(value = "/list") + @ResponseBody + public Object list(String condition) { + return tHtmlService.selectList(null); + } + + /** + * 通过类型查询配置 + */ + @RequestMapping(value = "/queryHtmlByType") + @ResponseBody + public THtml queryHtmlByType(Integer type) { + return tHtmlService.selectOne(new EntityWrapper<THtml>().eq("type", type).last("LIMIT 1")); + } + + /** + * 新增 + */ + @RequestMapping(value = "/add") + @ResponseBody + public Object add(THtml tHtml) { + tHtmlService.insert(tHtml); + return SUCCESS_TIP; + } + + /** + * 删除 + */ + @RequestMapping(value = "/delete") + @ResponseBody + public Object delete(@RequestParam Integer tHtmlId) { + tHtmlService.deleteById(tHtmlId); + return SUCCESS_TIP; + } + + /** + * 修改 + */ + @RequestMapping(value = "/update") + @ResponseBody + public Object update(THtml tHtml) { + tHtml.setHtml(LabelReplaceUtil.replace(tHtml.getHtml())); + tHtmlService.updateById(tHtml); + return SUCCESS_TIP; + } + + /** + * 详情 + */ + @RequestMapping(value = "/detail/{tHtmlId}") + @ResponseBody + public Object detail(@PathVariable("tHtmlId") Integer tHtmlId) { + return tHtmlService.selectById(tHtmlId); + } +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TImgController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TImgController.java new file mode 100644 index 0000000..7706dbe --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TImgController.java @@ -0,0 +1,148 @@ +package com.stylefeng.guns.modular.system.controller.general; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.stylefeng.guns.core.base.controller.BaseController; +import com.stylefeng.guns.modular.system.model.TSystemConfig; +import com.stylefeng.guns.modular.system.service.ITSystemConfigService; +import org.springframework.stereotype.Controller; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.beans.factory.annotation.Autowired; +import com.stylefeng.guns.core.log.LogObjectHolder; +import org.springframework.web.bind.annotation.RequestParam; +import com.stylefeng.guns.modular.system.model.TImg; +import com.stylefeng.guns.modular.system.service.ITImgService; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * 控制器 + * + * @author fengshuonan + * @Date 2023-03-28 10:01:31 + */ +@Controller +@RequestMapping("/tImg") +public class TImgController extends BaseController { + + private String PREFIX = "/system/tImg/"; + + @Autowired + private ITImgService tImgService; + @Autowired + private ITSystemConfigService tSystemConfigService; + + /** + * 跳转到首页 + */ + @RequestMapping("") + public String index(Model model) { + TSystemConfig config = tSystemConfigService.selectOne(new EntityWrapper<TSystemConfig>().eq("type", 8) + .last("LIMIT 1")); + JSONObject jsonObject = JSONObject.parseObject(config.getContent()); + model.addAttribute("num2",jsonObject.getInteger("num2")); + List<TImg> tImgList = tImgService.selectList(new EntityWrapper<TImg>() + .eq("type", 1)); + model.addAttribute("imgList",tImgList); + return PREFIX + "tImg.html"; + } + + /** + * 跳转到添加 + */ + @RequestMapping("/tImg_add") + public String tImgAdd() { + return PREFIX + "tImg_add.html"; + } + + /** + * 跳转到修改 + */ + @RequestMapping("/tImg_update/{tImgId}") + public String tImgUpdate(@PathVariable Integer tImgId, Model model) { + TImg tImg = tImgService.selectById(tImgId); + model.addAttribute("item",tImg); + LogObjectHolder.me().set(tImg); + return PREFIX + "tImg_edit.html"; + } + + /** + * 获取列表 + */ + @RequestMapping(value = "/list") + @ResponseBody + public Object list(String condition) { + return tImgService.selectList(null); + } + + /** + * 新增 + */ + @RequestMapping(value = "/add") + @ResponseBody + public Object add(TImg tImg) { + tImgService.insert(tImg); + return SUCCESS_TIP; + } + + /** + * 删除 + */ + @RequestMapping(value = "/delete") + @ResponseBody + public Object delete(@RequestParam Integer tImgId) { + tImgService.deleteById(tImgId); + return SUCCESS_TIP; + } + + /** + * 修改 + */ + @RequestMapping(value = "/update") + @ResponseBody + public Object update(TImg tImg) { + tImgService.updateById(tImg); + return SUCCESS_TIP; + } + + /** + * 修改图片 + */ + @RequestMapping(value = "/updateSubmit") + @ResponseBody + public Object updateSubmit(String tImg) { + System.err.println(tImg); + // 删除所有图片 + tImgService.delete(new EntityWrapper<TImg>() + .eq("type",1)); + if(StringUtils.hasLength(tImg)){ + String[] split = tImg.split(","); + List<TImg> tImgList = new ArrayList<>(split.length); + for (String s : split) { + TImg tImg1 = new TImg(); + // 保存所有图片 + tImg1.setType(1); + tImg1.setCreateTime(new Date()); + tImg1.setImg(s); + tImgList.add(tImg1); + } + tImgService.insertBatch(tImgList); + } + return SUCCESS_TIP; + } + + /** + * 详情 + */ + @RequestMapping(value = "/detail/{tImgId}") + @ResponseBody + public Object detail(@PathVariable("tImgId") Integer tImgId) { + return tImgService.selectById(tImgId); + } +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TMainContentController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TMainContentController.java new file mode 100644 index 0000000..f7b96ac --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TMainContentController.java @@ -0,0 +1,253 @@ +package com.stylefeng.guns.modular.system.controller.general; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.stylefeng.guns.core.base.controller.BaseController; +import com.stylefeng.guns.modular.system.enums.HtmlTypeEnum; +import com.stylefeng.guns.modular.system.enums.MainContentTypeEnum; +import com.stylefeng.guns.modular.system.enums.StatusEnum; +import com.stylefeng.guns.modular.system.model.THtml; +import com.stylefeng.guns.modular.system.service.ITHtmlService; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.*; +import org.springframework.ui.Model; +import org.springframework.beans.factory.annotation.Autowired; +import com.stylefeng.guns.core.log.LogObjectHolder; +import com.stylefeng.guns.modular.system.model.TMainContent; +import com.stylefeng.guns.modular.system.service.ITMainContentService; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * 控制器 + * + * @author fengshuonan + * @Date 2023-03-28 10:09:47 + */ +@Controller +@RequestMapping("/tMainContent") +public class TMainContentController extends BaseController { + + private String PREFIX = "/system/tMainContent/"; + + @Autowired + private ITMainContentService tMainContentService; + @Autowired + private ITHtmlService tHtmlService; + + /** + * 跳转到首页 + */ + @RequestMapping("") + public String index() { + return PREFIX + "tMainContent.html"; + } + + /** + * 跳转到添加 + */ + @RequestMapping("/tMainContent_add") + public String tMainContentAdd() { + return PREFIX + "tMainContent_add.html"; + } + + /** + * 跳转到转单添加 + */ + @RequestMapping("/transferOrder/add") + public String transferOrderAdd(Model model) { + model.addAttribute("key",0); + return PREFIX + "transferOrderAdd.html"; + } + + /** + * 跳转到转单修改 + */ + @RequestMapping("/transferOrder/update") + public String transferOrderUpdate(Model model) { + List<TMainContent> list = tMainContentService.selectList(new EntityWrapper<TMainContent>() + .eq("type", MainContentTypeEnum.TRANSFER_ORDER.getCode())); + model.addAttribute("list",list); + return PREFIX + "transferOrderUpdate.html"; + } + + /** + * 跳转到消单添加 + */ + @RequestMapping("/driverCancelOrder/add") + public String driverCancelOrderAdd(Model model) { + model.addAttribute("key",0); + return PREFIX + "driverCancelOrderAdd.html"; + } + + /** + * 跳转到消单修改 + */ + @RequestMapping("/driverCancelOrder/update") + public String driverCancelOrderUpdate(Model model) { + List<TMainContent> list = tMainContentService.selectList(new EntityWrapper<TMainContent>() + .eq("type", MainContentTypeEnum.DRIVER_CANCEL_ORDER.getCode())); + model.addAttribute("list",list); + return PREFIX + "driverCancelOrderUpdate.html"; + } + + /** + * 跳转到转单添加 + */ + @RequestMapping("/userCancelOrder/add") + public String userCancelOrderAdd(Model model) { + model.addAttribute("key",0); + return PREFIX + "userCancelOrderAdd.html"; + } + + /** + * 跳转到转单修改 + */ + @RequestMapping("/userCancelOrder/update") + public String userCancelOrderUpdate(Model model) { + List<TMainContent> list = tMainContentService.selectList(new EntityWrapper<TMainContent>() + .eq("type", MainContentTypeEnum.USER_CANCEL_ORDER.getCode())); + model.addAttribute("list",list); + return PREFIX + "userCancelOrderUpdate.html"; + } + + /** + * 跳转到修改 + */ + @RequestMapping("/tMainContent_update/{tMainContentId}") + public String tMainContentUpdate(@PathVariable Integer tMainContentId, Model model) { + TMainContent tMainContent = tMainContentService.selectById(tMainContentId); + model.addAttribute("item",tMainContent); + LogObjectHolder.me().set(tMainContent); + return PREFIX + "tMainContent_edit.html"; + } + + /** + * 跳转到转单 + */ + @RequestMapping("/transferOrder") + public String transferOrder(Model model) { + List<TMainContent> list = tMainContentService.selectList(new EntityWrapper<TMainContent>() + .eq("type", MainContentTypeEnum.TRANSFER_ORDER.getCode())); + model.addAttribute("list",list); + return PREFIX + "transferOrder.html"; + } + + /** + * 跳转到司机消单 + */ + @RequestMapping("/driverCancelOrder") + public String driverCancelOrder(Model model) { + List<TMainContent> list = tMainContentService.selectList(new EntityWrapper<TMainContent>() + .eq("type", MainContentTypeEnum.DRIVER_CANCEL_ORDER.getCode())); + model.addAttribute("list",list); + THtml html = tHtmlService.selectOne(new EntityWrapper<THtml>().eq("type", HtmlTypeEnum.DRIVER_EXPLAIN_CANCELLATION.getCode()).last("LIMIT 1")); + model.addAttribute("html",html); + return PREFIX + "driverCancelOrder.html"; + } + + /** + * 跳转到用户取消订单 + */ + @RequestMapping("/userCancelOrder") + public String userCancelOrder(Model model) { + List<TMainContent> list = tMainContentService.selectList(new EntityWrapper<TMainContent>() + .eq("type", MainContentTypeEnum.USER_CANCEL_ORDER.getCode())); + model.addAttribute("list",list); + return PREFIX + "userCancelOrder.html"; + } + + /** + * 获取列表 + */ + @RequestMapping(value = "/list") + @ResponseBody + public Object list(String condition) { + return tMainContentService.selectList(null); + } + + /** + * 新增 + */ + @RequestMapping(value = "/add") + @ResponseBody + public Object add( String tMainContents,Integer type) { + String[] split = tMainContents.split(","); + List<TMainContent> tMainContents1 = new ArrayList<>(split.length); + for (String s : split) { + TMainContent tMainContent = new TMainContent(); + tMainContent.setContent(s); + tMainContent.setType(type); + tMainContent.setStatus(StatusEnum.NORMAL.getCode()); + tMainContent.setCreateTime(new Date()); + tMainContents1.add(tMainContent); + } + tMainContentService.insertBatch(tMainContents1); + return SUCCESS_TIP; + } + + /** + * 新增 + */ + @RequestMapping(value = "/add-back") + @ResponseBody + public Object addBack(TMainContent tMainContent) { + tMainContentService.insert(tMainContent); + return SUCCESS_TIP; + } + + /** + * 删除 + */ + @RequestMapping(value = "/delete") + @ResponseBody + public Object delete(@RequestParam Integer tMainContentId) { + tMainContentService.deleteById(tMainContentId); + return SUCCESS_TIP; + } + + /** + * 修改 + */ + @RequestMapping(value = "/update") + @ResponseBody + public Object update(String tMainContents,Integer type) { + + tMainContentService.delete(new EntityWrapper<TMainContent>() + .eq("type",type)); + + String[] split = tMainContents.split(","); + List<TMainContent> tMainContents1 = new ArrayList<>(split.length); + for (String s : split) { + TMainContent tMainContent = new TMainContent(); + tMainContent.setContent(s); + tMainContent.setType(type); + tMainContent.setStatus(StatusEnum.NORMAL.getCode()); + tMainContent.setCreateTime(new Date()); + tMainContents1.add(tMainContent); + } + tMainContentService.insertBatch(tMainContents1); + return SUCCESS_TIP; + } + /** + * 修改 + */ + @RequestMapping(value = "/update-back") + @ResponseBody + public Object updateBack(TMainContent tMainContent) { + tMainContentService.updateById(tMainContent); + return SUCCESS_TIP; + } + + /** + * 详情 + */ + @RequestMapping(value = "/detail/{tMainContentId}") + @ResponseBody + public Object detail(@PathVariable("tMainContentId") Integer tMainContentId) { + return tMainContentService.selectById(tMainContentId); + } +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderController.java index 8fb8b15..31bf8a2 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderController.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderController.java @@ -204,11 +204,16 @@ TAppUserDetailOrderResp tAppUserDetailOrderResp = new TAppUserDetailOrderResp(); BeanUtils.copyProperties(tOrder,tAppUserDetailOrderResp); - // TODO 计算总里程 - + // 计算总里程 + if(Objects.nonNull(tOrder.getActualMileage())){ + tAppUserDetailOrderResp.setMileageSum(tOrder.getActualMileage()/1000); + } // 计算总时长 - long travelTimeSum = DateUtil.between(tAppUserDetailOrderResp.getBoardingTime(), tAppUserDetailOrderResp.getGetoffTime(), DateUnit.MINUTE); + long travelTimeSum = 0; + if(Objects.nonNull(tAppUserDetailOrderResp.getBoardingTime()) && Objects.nonNull(tAppUserDetailOrderResp.getGetoffTime())){ + travelTimeSum = DateUtil.between(tAppUserDetailOrderResp.getBoardingTime(), tAppUserDetailOrderResp.getGetoffTime(), DateUnit.MINUTE); + } tAppUserDetailOrderResp.setTravelTimeSum(Integer.valueOf(Long.toString(travelTimeSum))); list.add(tAppUserDetailOrderResp); @@ -295,7 +300,11 @@ }else if(2 == source1){ values[i][2] = "司机创建"; } - values[i][3] = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d.getStartTime()); + if(Objects.nonNull(d.getStartTime())){ + values[i][3] = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d.getStartTime()); + }else { + values[i][3] = ""; + } values[i][4] = d.getUserName(); values[i][5] = d.getUserPhone(); values[i][6] = d.getStartAddress(); @@ -372,7 +381,11 @@ }else if(2 == source1){ values[i][2] = "司机创建"; } - values[i][3] = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d.getStartTime()); + if(Objects.nonNull(d.getStartTime())){ + values[i][3] = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d.getStartTime()); + }else { + values[i][3] = ""; + } values[i][4] = d.getUserName(); values[i][5] = d.getUserPhone(); values[i][6] = d.getStartAddress(); diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TSystemConfigController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TSystemConfigController.java index 3242865..4599961 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TSystemConfigController.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TSystemConfigController.java @@ -148,6 +148,12 @@ } objects.add(jsonObject1); } + + TSystemConfig config = tSystemConfigService.selectOne(new EntityWrapper<TSystemConfig>().eq("type", 8) + .last("LIMIT 1")); + JSONObject jsonObj = JSONObject.parseObject(config.getContent()); + Integer zcOne = jsonObj.getInteger("num1"); + model.addAttribute("zcOne",zcOne); model.addAttribute("array",objects); JSONObject extraCost = JSONObject.parseObject(jsonObject.getString("ExtraCost")); model.addAttribute("ExtraCost",extraCost); @@ -234,6 +240,38 @@ } /** + * 修改价格规则开关 + */ + @RequestMapping(value = "/openOrClose") + @ResponseBody + public Object openOrClose(Integer num1) { + TSystemConfig config = tSystemConfigService.selectOne(new EntityWrapper<TSystemConfig>().eq("type", 8) + .last("LIMIT 1")); + JSONObject jsonObject = JSONObject.parseObject(config.getContent()); + jsonObject.remove(jsonObject.getString("num1")); + jsonObject.put("num1",num1); + config.setContent(JSONObject.toJSONString(jsonObject)); + tSystemConfigService.updateById(config); + return SUCCESS_TIP; + } + + /** + * 修改启动页状态 + */ + @RequestMapping(value = "/updateStartState") + @ResponseBody + public Object updateStartState(Integer num2) { + TSystemConfig config = tSystemConfigService.selectOne(new EntityWrapper<TSystemConfig>().eq("type", 8) + .last("LIMIT 1")); + JSONObject jsonObject = JSONObject.parseObject(config.getContent()); + jsonObject.remove(jsonObject.getString("num2")); + jsonObject.put("num2",num2); + config.setContent(JSONObject.toJSONString(jsonObject)); + tSystemConfigService.updateById(config); + return SUCCESS_TIP; + } + + /** * 详情 */ @RequestMapping(value = "/detail/{tSystemConfigId}") diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/DataStatisticsOrderYearResp.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/DataStatisticsOrderYearResp.java new file mode 100644 index 0000000..0e0c2c9 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/DataStatisticsOrderYearResp.java @@ -0,0 +1,32 @@ +package com.stylefeng.guns.modular.system.controller.resp; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +import java.io.Serializable; + +@ApiModel(value = "首页数据统计(查询每年每月订单数量)") +public class DataStatisticsOrderYearResp implements Serializable { + + @ApiModelProperty(value = "月份") + private String month; + + @ApiModelProperty(value = "数量") + private Integer orderCount; + + public String getMonth() { + return month; + } + + public void setMonth(String month) { + this.month = month; + } + + public Integer getOrderCount() { + return orderCount; + } + + public void setOrderCount(Integer orderCount) { + this.orderCount = orderCount; + } +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/PerformanceTableResp.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/PerformanceTableResp.java new file mode 100644 index 0000000..1bda7c6 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/PerformanceTableResp.java @@ -0,0 +1,43 @@ +package com.stylefeng.guns.modular.system.controller.resp; + +import io.swagger.annotations.ApiModelProperty; + +import java.io.Serializable; +import java.math.BigDecimal; + +public class PerformanceTableResp implements Serializable { + + + @ApiModelProperty(value = "时间") + private String monthTime; + + @ApiModelProperty(value = "姓名") + private String userName; + + @ApiModelProperty(value = "单量/收入/佣金") + private BigDecimal amount; + + public String getMonthTime() { + return monthTime; + } + + public void setMonthTime(String monthTime) { + this.monthTime = monthTime; + } + + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + + public BigDecimal getAmount() { + return amount; + } + + public void setAmount(BigDecimal amount) { + this.amount = amount; + } +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TAppUserResp.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TAppUserResp.java index 2522e2f..bdbc5ca 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TAppUserResp.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TAppUserResp.java @@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty; import java.math.BigDecimal; +import java.util.Date; public class TAppUserResp extends TAppUser { @@ -20,6 +21,17 @@ @ApiModelProperty(value = "历史消费") private BigDecimal consumePrice; + @ApiModelProperty(value = "最后一次消费时间") + private Date lastConsumptionTime; + + public Date getLastConsumptionTime() { + return lastConsumptionTime; + } + + public void setLastConsumptionTime(Date lastConsumptionTime) { + this.lastConsumptionTime = lastConsumptionTime; + } + public Integer getCouponSum() { return couponSum; } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TBillResp.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TBillResp.java new file mode 100644 index 0000000..3761291 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TBillResp.java @@ -0,0 +1,12 @@ +package com.stylefeng.guns.modular.system.controller.resp; + +import com.stylefeng.guns.modular.system.model.TAgent; +import io.swagger.annotations.ApiModelProperty; + +import java.math.BigDecimal; + +public class TBillResp extends TAgent { + + + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TOrderServerResp.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TOrderServerResp.java new file mode 100644 index 0000000..9110375 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TOrderServerResp.java @@ -0,0 +1,18 @@ +package com.stylefeng.guns.modular.system.controller.resp; + +import com.stylefeng.guns.modular.system.model.TOrder; +import io.swagger.annotations.ApiModelProperty; + +public class TOrderServerResp extends TOrder { + + @ApiModelProperty(value = "司机姓名") + private String driverName; + + public String getDriverName() { + return driverName; + } + + public void setDriverName(String driverName) { + this.driverName = driverName; + } +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TBillMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TBillMapper.java index 87bc846..ebc1780 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TBillMapper.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TBillMapper.java @@ -2,6 +2,10 @@ import com.stylefeng.guns.modular.system.model.TBill; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * <p> @@ -11,6 +15,23 @@ * @author stylefeng * @since 2023-03-14 */ +@Mapper public interface TBillMapper extends BaseMapper<TBill> { + /** + * 获取列表 + * @param startTime + * @param endTime + * @param addresseePhone + * @param state + * @param billType + * @param billHeaderType + * @param roleType + * @param objectId + * @return + */ + List<TBill> getPageList(@Param("startTime") String startTime, @Param("endTime")String endTime, @Param("addresseePhone")String addresseePhone, + @Param("state")Integer state, @Param("billType")Integer billType, @Param("billHeaderType")Integer billHeaderType, + @Param("roleType")Integer roleType, @Param("objectId")Integer objectId); + } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCashWithdrawalMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCashWithdrawalMapper.java new file mode 100644 index 0000000..3347e88 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCashWithdrawalMapper.java @@ -0,0 +1,18 @@ +package com.stylefeng.guns.modular.system.dao; + +import com.stylefeng.guns.modular.system.model.TCashWithdrawal; +import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + * <p> + * 提现记录 Mapper 接口 + * </p> + * + * @author stylefeng + * @since 2023-03-23 + */ +@Mapper +public interface TCashWithdrawalMapper extends BaseMapper<TCashWithdrawal> { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCommercialMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCommercialMapper.java index 7d3b3d0..c085f52 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCommercialMapper.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCommercialMapper.java @@ -2,6 +2,7 @@ import com.stylefeng.guns.modular.system.model.TCommercial; import com.baomidou.mybatisplus.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; /** * <p> @@ -11,6 +12,7 @@ * @author stylefeng * @since 2023-03-16 */ +@Mapper public interface TCommercialMapper extends BaseMapper<TCommercial> { } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TComplaintMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TComplaintMapper.java index bad622f..b09a599 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TComplaintMapper.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TComplaintMapper.java @@ -30,6 +30,7 @@ * @return */ List<TComplaintResp> getPageList(@Param("startTime") String startTime,@Param("endTime") String endTime, @Param("userName")String userName, - @Param("userPhone")String userPhone, @Param("driverPhone")String driverPhone, @Param("state")Integer state); + @Param("userPhone")String userPhone, @Param("driverPhone")String driverPhone, @Param("state")Integer state, + @Param("roleType")Integer roleType,@Param("objectId")Integer objectId); } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/THtmlMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/THtmlMapper.java new file mode 100644 index 0000000..fa2d934 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/THtmlMapper.java @@ -0,0 +1,16 @@ +package com.stylefeng.guns.modular.system.dao; + +import com.stylefeng.guns.modular.system.model.THtml; +import com.baomidou.mybatisplus.mapper.BaseMapper; + +/** + * <p> + * H5富文本 Mapper 接口 + * </p> + * + * @author stylefeng + * @since 2023-03-24 + */ +public interface THtmlMapper extends BaseMapper<THtml> { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TImgMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TImgMapper.java new file mode 100644 index 0000000..3acfb69 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TImgMapper.java @@ -0,0 +1,16 @@ +package com.stylefeng.guns.modular.system.dao; + +import com.stylefeng.guns.modular.system.model.TImg; +import com.baomidou.mybatisplus.mapper.BaseMapper; + +/** + * <p> + * 系统图片 Mapper 接口 + * </p> + * + * @author stylefeng + * @since 2023-03-28 + */ +public interface TImgMapper extends BaseMapper<TImg> { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TMainContentMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TMainContentMapper.java new file mode 100644 index 0000000..99dc323 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TMainContentMapper.java @@ -0,0 +1,16 @@ +package com.stylefeng.guns.modular.system.dao; + +import com.stylefeng.guns.modular.system.model.TMainContent; +import com.baomidou.mybatisplus.mapper.BaseMapper; + +/** + * <p> + * 事由管理 Mapper 接口 + * </p> + * + * @author stylefeng + * @since 2023-03-28 + */ +public interface TMainContentMapper extends BaseMapper<TMainContent> { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderMapper.java index 9a2e7bb..13c22e2 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderMapper.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderMapper.java @@ -1,11 +1,15 @@ package com.stylefeng.guns.modular.system.dao; +import com.stylefeng.guns.modular.system.controller.resp.DataStatisticsOrderYearResp; +import com.stylefeng.guns.modular.system.controller.resp.PerformanceTableResp; import com.stylefeng.guns.modular.system.controller.resp.TOrderResp; +import com.stylefeng.guns.modular.system.controller.resp.TOrderServerResp; import com.stylefeng.guns.modular.system.model.TOrder; import com.baomidou.mybatisplus.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import java.time.LocalDate; import java.util.List; /** @@ -35,4 +39,27 @@ @Param("source") Integer source,@Param("userName")String userName, @Param("userPhone")String userPhone, @Param("state")Integer state,@Param("driverName")String driverName,@Param("isException") Integer isException, @Param("roleType")Integer roleType,@Param("objectId")Integer objectId); + + /** + * 通过年份查询订单数量 + * @param agentId + * @return + */ + List<DataStatisticsOrderYearResp> getDataStatisticsByYear(@Param("agentId") Integer agentId,@Param("yearDate")String yearDate); + + /** + * 单量 + * @param agentId + * @param monthDate + * @return + */ + List<PerformanceTableResp> getDataStatisticsOrderCount(@Param("agentId")Integer agentId, @Param("monthDate")String monthDate); + + Integer getDataStatisticsCount(@Param("agentId")Integer agentId, @Param("type")Integer type, @Param("localDate")LocalDate localDate); + + Integer getDataStatisticsServerCount(@Param("agentId")Integer agentId, @Param("localDate") LocalDate localDate); + + List<TOrderServerResp> getDataStatisticsServerList(@Param("agentId")Integer agentId,@Param("localDate") LocalDate localDate); + + List<TOrder> getDataStatisticsAllList(@Param("agentId")Integer agentId,@Param("localDate") LocalDate localDate); } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TRevenueMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TRevenueMapper.java index 2f26bd4..dff5c9c 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TRevenueMapper.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TRevenueMapper.java @@ -1,5 +1,6 @@ package com.stylefeng.guns.modular.system.dao; +import com.stylefeng.guns.modular.system.controller.resp.PerformanceTableResp; import com.stylefeng.guns.modular.system.controller.resp.RevenueExpenditureResp; import com.stylefeng.guns.modular.system.model.TRevenue; import com.baomidou.mybatisplus.mapper.BaseMapper; @@ -42,4 +43,6 @@ * @return */ RevenueExpenditureResp commissionOrBalanceDetail(@Param("code")String code, @Param("type")Integer type); + + List<PerformanceTableResp> getDataStatisticsIncomeOrCommission(@Param("agentId")Integer agentId,@Param("type") Integer type, @Param("monthDate")String monthDate); } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TBillMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TBillMapper.xml index 66bba2d..ef6f6e9 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TBillMapper.xml +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TBillMapper.xml @@ -24,5 +24,35 @@ <sql id="Base_Column_List"> id, orderId, billType, billHeaderType, companyName, companyTaxNumber, billContent, moreContent, billAmount, addresseeName, addresseePhone, addresseeEmail, state, createTime </sql> + <select id="getPageList" resultType="com.stylefeng.guns.modular.system.model.TBill"> + SELECT b.id, b.orderId, b.billType, b.billHeaderType, b.companyName, b.companyTaxNumber, b.billContent, b.moreContent, b.billAmount, b.addresseeName, b.addresseePhone, + b.addresseeEmail, b.state, b.createTime + FROM t_bill b + LEFT JOIN t_order o ON b.orderId = o.id + <where> + <if test="startTime != null and startTime != '' and endTime != null and endTime != ''"> + AND b.createTime BETWEEN #{startTime} AND #{endTime} + </if> + <if test="addresseePhone != null and addresseePhone != ''"> + AND b.addresseePhone LIKE concat('%',#{addresseePhone},'%') + </if> + <if test="state != null"> + AND b.state = #{state} + </if> + <if test="billType != null"> + AND b.billType = #{billType} + </if> + <if test="billHeaderType != null"> + AND b.billHeaderType = #{addresseePhone} + </if> + <if test="roleType != null and roleType == 2"> + AND o.branchOfficeId = #{objectId} + </if> + <if test="roleType != null and roleType == 3"> + AND o.agentId = #{objectId} + </if> + </where> + ORDER BY b.createTime DESC + </select> </mapper> diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCashWithdrawalMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCashWithdrawalMapper.xml new file mode 100644 index 0000000..4eb2338 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCashWithdrawalMapper.xml @@ -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.TCashWithdrawalMapper"> + + <!-- 通用查询映射结果 --> + <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.TCashWithdrawal"> + <id column="id" property="id" /> + <result column="type" property="type" /> + <result column="userDriverId" property="userDriverId" /> + <result column="code" property="code" /> + <result column="businessType" property="businessType" /> + <result column="amount" property="amount" /> + <result column="state" property="state" /> + <result column="orderNumber" property="orderNumber" /> + <result column="createTime" property="createTime" /> + </resultMap> + + <!-- 通用查询结果列 --> + <sql id="Base_Column_List"> + id, type, userDriverId, code, businessType, amount, state, orderNumber, createTime + </sql> + +</mapper> diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TComplaintMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TComplaintMapper.xml index 3baaa02..d31d259 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TComplaintMapper.xml +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TComplaintMapper.xml @@ -43,6 +43,12 @@ <if test="state != null"> AND c.state = #{state} </if> + <if test="roleType != null and roleType == 2"> + AND d.branchOfficeId = #{objectId} + </if> + <if test="roleType != null and roleType == 3"> + AND d.agentId = #{objectId} + </if> </where> ORDER BY c.state </select> diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/THtmlMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/THtmlMapper.xml new file mode 100644 index 0000000..53d2f41 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/THtmlMapper.xml @@ -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.THtmlMapper"> + + <!-- 通用查询映射结果 --> + <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.THtml"> + <id column="id" property="id" /> + <result column="type" property="type" /> + <result column="html" property="html" /> + <result column="createTime" property="createTime" /> + </resultMap> + + <!-- 通用查询结果列 --> + <sql id="Base_Column_List"> + id, type, html, createTime + </sql> + +</mapper> diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TImgMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TImgMapper.xml new file mode 100644 index 0000000..5f9050e --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TImgMapper.xml @@ -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.TImgMapper"> + + <!-- 通用查询映射结果 --> + <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.TImg"> + <id column="id" property="id" /> + <result column="type" property="type" /> + <result column="img" property="img" /> + <result column="createTime" property="createTime" /> + </resultMap> + + <!-- 通用查询结果列 --> + <sql id="Base_Column_List"> + id, type, img, createTime + </sql> + +</mapper> diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TMainContentMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TMainContentMapper.xml new file mode 100644 index 0000000..b422ed6 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TMainContentMapper.xml @@ -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.TMainContentMapper"> + + <!-- 通用查询映射结果 --> + <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.TMainContent"> + <id column="id" property="id" /> + <result column="type" property="type" /> + <result column="content" property="content" /> + <result column="status" property="status" /> + <result column="createTime" property="createTime" /> + </resultMap> + + <!-- 通用查询结果列 --> + <sql id="Base_Column_List"> + id, type, content, status, createTime + </sql> + +</mapper> diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml index 0a1fd14..3312641 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml @@ -58,10 +58,18 @@ <sql id="Base_Column_Order"> o.id, o.code, o.userId, o.driverId, o.`source`, o.agentId, o.branchOfficeId, o.startTime, o.startAddress, o.startLat, o.startLng, o.endAddress, o.endLat, o.endLng, - o.boardingTime, o.getoffTime, o.estimatedPrice, o.orderMoney, o.payMoney, o.discountedPrice, o.couponId, o.payType, o.payTime, o.`state`, o.status, o.createTime, - o.startDistance,o.startPrice,o.overDriveDistance,o.overDrivePrice,o.longDistance,o.longDistancePrice,o.overLongDistance,o.overLongDistancePrice, -o.waitTime,o.waitTimePrice,o.outWaitTime,o.outWaitTimePrice,o.badWeatherDistance,o.badWeatherPrice,o.overBadWeatherDistance,o.overBadWeatherPrice,a.nickname AS userName, - a.phone AS userPhone,a.cancelCount,a.status AS userStatus,d.name AS driverName,d.phone AS driverPhone + o.boardingTime, o.getoffTime, o.estimatedPrice, o.orderMoney, o.payMoney, o.discountedPrice, o.couponId, o.payType, o.payTime, o.`state`, o.status, o.createTime, + o.startDistance,o.startPrice,o.overDriveDistance,o.overDrivePrice,o.longDistance,o.longDistancePrice,o.overLongDistance,o.overLongDistancePrice, + o.waitTime,o.waitTimePrice,o.outWaitTime,o.outWaitTimePrice,o.badWeatherDistance,o.badWeatherPrice,o.overBadWeatherDistance,o.overBadWeatherPrice,a.nickname AS userName, + a.phone AS userPhone,a.cancelCount,a.status AS userStatus,d.name AS driverName,d.phone AS driverPhone + </sql> + + <sql id="Base_Column_Server_Order"> + o.id, o.code, o.userId, o.driverId, o.`source`, o.agentId, o.branchOfficeId, o.startTime, o.startAddress, o.startLat, o.startLng, o.endAddress, o.endLat, o.endLng, + o.boardingTime, o.getoffTime, o.estimatedPrice, o.orderMoney, o.payMoney, o.discountedPrice, o.couponId, o.payType, o.payTime, o.`state`, o.status, o.createTime, + o.startDistance,o.startPrice,o.overDriveDistance,o.overDrivePrice,o.longDistance,o.longDistancePrice,o.overLongDistance,o.overLongDistancePrice, + o.waitTime,o.waitTimePrice,o.outWaitTime,o.outWaitTimePrice,o.badWeatherDistance,o.badWeatherPrice,o.overBadWeatherDistance,o.overBadWeatherPrice, + d.name AS driverName,d.phone AS driverPhone </sql> <select id="getOrderList" resultType="com.stylefeng.guns.modular.system.controller.resp.TOrderResp"> @@ -103,5 +111,100 @@ </where> ORDER BY o.createTime </select> + <select id="getDataStatisticsByYear" resultType="com.stylefeng.guns.modular.system.controller.resp.DataStatisticsOrderYearResp"> + SELECT createTime AS `month`,COUNT(id) AS orderCount + FROM t_order + <where> + <if test="agentId != null"> + AND agentId = #{agentId} + </if> + <if test="yearDate != null and yearDate != ''"> + AND date_format(createTime, '%Y') LIKE concat('',#{yearDate},'%') + </if> + </where> + GROUP BY date_format(createTime, '%Y-%m') + </select> + <select id="getDataStatisticsOrderCount" resultType="com.stylefeng.guns.modular.system.controller.resp.PerformanceTableResp"> + SELECT date_format(o.createTime, '%Y-%m') AS monthTime,COUNT(o.id) AS amount,d.name AS userName + FROM t_order o + LEFT JOIN t_driver d ON o.driverId = d.id + <where> + <if test="agentId != null"> + AND o.agentId = #{agentId} + </if> + <if test="monthDate != null and monthDate != ''"> + AND date_format(o.createTime, '%Y-%m') LIKE concat('',#{monthDate},'%') + </if> + AND (o.`state` = 108 OR o.`state` = 109) + </where> + GROUP BY monthTime,userName + ORDER BY amount DESC + </select> + <select id="getDataStatisticsCount" resultType="java.lang.Integer"> + SELECT COUNT(id) + FROM t_order + <where> + <if test="agentId != null"> + AND agentId = #{agentId} + </if> + <if test="type != null"> + AND `state` = #{type} + </if> + <if test="localDate != null"> + AND date_format(createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%') + </if> + </where> + </select> + <select id="getDataStatisticsServerCount" resultType="java.lang.Integer"> + SELECT COUNT(id) + FROM t_order + <where> + <if test="agentId != null"> + AND agentId = #{agentId} + </if> + <if test="localDate != null"> + AND date_format(createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%') + </if> + AND (`state` = 102 + OR `state` = 103 + OR `state` = 104 + OR `state` = 105 + OR `state` = 106 + OR `state` = 107 + ) + </where> + </select> + <select id="getDataStatisticsServerList" resultType="com.stylefeng.guns.modular.system.controller.resp.TOrderServerResp"> + select <include refid="Base_Column_Server_Order"></include> + FROM t_order o + LEFT JOIN t_driver d ON o.driverId = d.id + <where> + <if test="agentId != null"> + AND o.agentId = #{agentId} + </if> + <if test="localDate != null"> + AND date_format(o.createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%') + </if> + AND (o.`state` = 102 + OR o.`state` = 103 + OR o.`state` = 104 + OR o.`state` = 105 + OR o.`state` = 106 + OR o.`state` = 107 + ) + </where> + </select> + <select id="getDataStatisticsAllList" resultType="com.stylefeng.guns.modular.system.model.TOrder"> + select <include refid="Base_Column_List"></include> + FROM t_order + <where> + <if test="agentId != null"> + AND agentId = #{agentId} + </if> + <if test="localDate != null"> + AND date_format(createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%') + </if> + </where> + </select> </mapper> diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TRevenueMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TRevenueMapper.xml index 70c34c8..d36f124 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TRevenueMapper.xml +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TRevenueMapper.xml @@ -125,5 +125,43 @@ WHERE cw.type = 2 AND cw.businessType = #{type} AND cw.code = #{code} </select> + <select id="getDataStatisticsIncomeOrCommission" resultType="com.stylefeng.guns.modular.system.controller.resp.PerformanceTableResp"> + SELECT date_format(r.createTime, '%Y-%m') AS monthTime,COUNT(o.id) AS amount,d.name AS userName + FROM t_revenue r + LEFT JOIN t_driver d ON r.userId = d.id + LEFT JOIN t_order o ON r.orderId = o.id + <where> + <if test="agentId != null"> + AND o.agentId = #{agentId} + </if> + <if test="monthDate != null and monthDate != ''"> + AND date_format(r.createTime, '%Y-%m') LIKE concat('',#{monthDate},'%') + </if> + AND r.type = 1 + AND r.userType = 2 + </where> + GROUP BY monthTime,userName + </select> + + <select id="getDataStatisticsCommission" resultType="com.stylefeng.guns.modular.system.controller.resp.PerformanceTableResp"> + SELECT date_format(r.createTime, '%Y-%m') AS monthTime,SUM(r.amount) AS amount,d.name AS userName + FROM t_revenue r + LEFT JOIN t_driver d ON r.userId = d.id + LEFT JOIN t_order o ON r.orderId = o.id + <where> + <if test="agentId != null"> + AND o.agentId = #{agentId} + </if> + <if test="monthDate != null and monthDate != ''"> + AND date_format(r.createTime, '%Y-%m') LIKE concat('',#{monthDate},'%') + </if> + <if test="type != null"> + AND r.type = #{type} + </if> + AND r.userType = 2 + </where> + GROUP BY monthTime,userName + ORDER BY amount DESC + </select> </mapper> diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/enums/HtmlTypeEnum.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/enums/HtmlTypeEnum.java new file mode 100644 index 0000000..0285c97 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/enums/HtmlTypeEnum.java @@ -0,0 +1,63 @@ +package com.stylefeng.guns.modular.system.enums; + + + +/** + * @Description H5富文本枚举 + * @Author xiaochen + * @Date 2023/02/15 9:42 + */ +public enum HtmlTypeEnum { + + /*类型(1=代驾服务协议与隐私政策保护,2=法律条款,3=个人信息处理规则,4=积分说明,5=佣金规则说明,6=行程录音说明,7=预估价格说明,8=加盟基本要求,9=加盟流程,10=起步价说明,11=注销协议,12=关于我们,13=司机消单说明)*/ + + AGENT_DRIVING_SERVICE_EXPLAIN(1, "代驾服务协议与隐私政策保护"), + CLAUSE(2, "法律条款"), + PERSONAL_INFORMATION_RULES(3, "个人信息处理规则"), + INTEGRAL_EXPLAIN(4, "积分说明"), + COMMISSION_RULE_EXPLAIN(5, "佣金规则说明"), + TRIP_RECORDING_EXPLAIN(6, "行程录音说明"), + ESTIMATED_PRICE_EXPLAIN(7,"预估价格说明"), + BASIC_REQUIREMENTS_JOINING(8, "加盟基本要求"), + JOINING_PROCESS(9, "加盟流程"), + SPECIFICATION_STARTING_PRICE(10, "起步价说明"), + CANCELLATION_AGREEMENT(11,"注销协议"), + ABOUT_US(12,"关于我们"), + DRIVER_EXPLAIN_CANCELLATION(13,"司机消单说明"); + + private String desc; + + + private int code; + + + HtmlTypeEnum(int code, String desc) { + this.code = code; + this.desc = desc; + } + + public String getDesc() { + return desc; + } + + public int getCode() { + return code; + } + + /** + * 通过code获取枚举 + * + * @param code + * @return + */ + public static HtmlTypeEnum fromCode(Integer code) { + HtmlTypeEnum[] resultTypes = HtmlTypeEnum.values(); + for (HtmlTypeEnum resultType : resultTypes) { + if (code.equals(resultType.getCode())) { + return resultType; + } + } + return null; + } + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/enums/MainContentTypeEnum.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/enums/MainContentTypeEnum.java new file mode 100644 index 0000000..3194ddb --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/enums/MainContentTypeEnum.java @@ -0,0 +1,52 @@ +package com.stylefeng.guns.modular.system.enums; + + + +/** + * @Description 事由管理类型枚举 + * @Author xiaochen + * @Date 2023/02/15 9:42 + */ +public enum MainContentTypeEnum { + + + TRANSFER_ORDER(1, "转单"), + DRIVER_CANCEL_ORDER(2, "司机消单"), + USER_CANCEL_ORDER(3, "用户取消订单"); + + private String desc; + + + private int code; + + + MainContentTypeEnum(int code, String desc) { + this.code = code; + this.desc = desc; + } + + public String getDesc() { + return desc; + } + + public int getCode() { + return code; + } + + /** + * 通过code获取枚举 + * + * @param code + * @return + */ + public static MainContentTypeEnum fromCode(Integer code) { + MainContentTypeEnum[] resultTypes = MainContentTypeEnum.values(); + for (MainContentTypeEnum resultType : resultTypes) { + if (code.equals(resultType.getCode())) { + return resultType; + } + } + return null; + } + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/exports/TAppUserExceptionExport.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/exports/TAppUserExceptionExport.java index e357e73..92f2172 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/exports/TAppUserExceptionExport.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/exports/TAppUserExceptionExport.java @@ -30,13 +30,29 @@ private Integer couponsSum; @ApiModelProperty(value = "消费次数") - private Integer ConsumptionTimes = 0; + private Integer consumptionTimes = 0; @ApiModelProperty(value = "历史消费") - private BigDecimal HistoricalConsumption = new BigDecimal("0.00"); + private BigDecimal historicalConsumption = new BigDecimal("0.00"); @ApiModelProperty(value = "最后一次消费时间") private Date lastConsumptionTime; + + public Integer getConsumptionTimes() { + return consumptionTimes; + } + + public void setConsumptionTimes(Integer consumptionTimes) { + this.consumptionTimes = consumptionTimes; + } + + public BigDecimal getHistoricalConsumption() { + return historicalConsumption; + } + + public void setHistoricalConsumption(BigDecimal historicalConsumption) { + this.historicalConsumption = historicalConsumption; + } public Integer getId() { return id; @@ -92,22 +108,6 @@ public void setCouponsSum(Integer couponsSum) { this.couponsSum = couponsSum; - } - - public Integer getConsumptionTimes() { - return ConsumptionTimes; - } - - public void setConsumptionTimes(Integer consumptionTimes) { - ConsumptionTimes = consumptionTimes; - } - - public BigDecimal getHistoricalConsumption() { - return HistoricalConsumption; - } - - public void setHistoricalConsumption(BigDecimal historicalConsumption) { - HistoricalConsumption = historicalConsumption; } public Date getLastConsumptionTime() { diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TAgent.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TAgent.java index 1cedeb9..0747152 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TAgent.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TAgent.java @@ -79,6 +79,12 @@ @ApiModelProperty(value = "银行账户") private String bankAccount; + @TableField(value = "serviceCalls") + @ApiModelProperty(value = "客服电话") + private String serviceCalls; + + + @TableField(exist = false) @ApiModelProperty(value = "区域") @@ -88,6 +94,14 @@ @ApiModelProperty(value = "区域id") private String areaId; + public String getServiceCalls() { + return serviceCalls; + } + + public void setServiceCalls(String serviceCalls) { + this.serviceCalls = serviceCalls; + } + public String getAreaId() { return areaId; } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TBroadcast.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TBroadcast.java index f085790..e5fd009 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TBroadcast.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TBroadcast.java @@ -42,6 +42,32 @@ */ private Date createTime; + /** + * 是否显示 1是 0否 + */ + private Boolean show; + + /** + * 上下架 1上架 2下架 + */ + private Integer upDown; + + public Boolean getShow() { + return show; + } + + public void setShow(Boolean show) { + this.show = show; + } + + + public Integer getUpDown() { + return upDown; + } + + public void setUpDown(Integer upDown) { + this.upDown = upDown; + } public Integer getId() { return id; diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TCashWithdrawal.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TCashWithdrawal.java new file mode 100644 index 0000000..5e600d6 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TCashWithdrawal.java @@ -0,0 +1,154 @@ +package com.stylefeng.guns.modular.system.model; + +import com.baomidou.mybatisplus.enums.IdType; +import java.math.BigDecimal; +import java.util.Date; +import com.baomidou.mybatisplus.annotations.TableId; +import com.baomidou.mybatisplus.activerecord.Model; +import com.baomidou.mybatisplus.annotations.TableName; +import java.io.Serializable; + +/** + * <p> + * 提现记录 + * </p> + * + * @author stylefeng + * @since 2023-03-23 + */ +@TableName("t_cash_withdrawal") +public class TCashWithdrawal extends Model<TCashWithdrawal> { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 类型(1=用户,2=司机) + */ + private Integer type; + /** + * 用户或司机id + */ + private Integer userDriverId; + /** + * 提现编号 + */ + private String code; + /** + * 交易类型 11佣金提现 12余额提现 + */ + private Integer businessType; + /** + * 提现金额 + */ + private BigDecimal amount; + /** + * 提现状态 1未成功 2成功 + */ + private Integer state; + /** + * 第三方流水号 + */ + private String orderNumber; + /** + * 添加时间 + */ + private Date createTime; + + + 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 getUserDriverId() { + return userDriverId; + } + + public void setUserDriverId(Integer userDriverId) { + this.userDriverId = userDriverId; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public Integer getBusinessType() { + return businessType; + } + + public void setBusinessType(Integer businessType) { + this.businessType = businessType; + } + + public BigDecimal getAmount() { + return amount; + } + + public void setAmount(BigDecimal amount) { + this.amount = amount; + } + + public Integer getState() { + return state; + } + + public void setState(Integer state) { + this.state = state; + } + + public String getOrderNumber() { + return orderNumber; + } + + public void setOrderNumber(String orderNumber) { + this.orderNumber = orderNumber; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + protected Serializable pkVal() { + return this.id; + } + + @Override + public String toString() { + return "TCashWithdrawal{" + + "id=" + id + + ", type=" + type + + ", userDriverId=" + userDriverId + + ", code=" + code + + ", businessType=" + businessType + + ", amount=" + amount + + ", state=" + state + + ", orderNumber=" + orderNumber + + ", createTime=" + createTime + + "}"; + } +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TCommercial.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TCommercial.java index b294cd7..7208b1a 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TCommercial.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TCommercial.java @@ -83,6 +83,19 @@ private Integer updateUserId; + /** + * 上下线 1上线 2下线 + */ + private Integer onOffLine; + + public Integer getOnOffLine() { + return onOffLine; + } + + public void setOnOffLine(Integer onOffLine) { + this.onOffLine = onOffLine; + } + public Integer getId() { return id; } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/THtml.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/THtml.java new file mode 100644 index 0000000..9d39a21 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/THtml.java @@ -0,0 +1,88 @@ +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 java.io.Serializable; + +/** + * <p> + * H5富文本 + * </p> + * + * @author stylefeng + * @since 2023-03-24 + */ +@TableName("t_html") +public class THtml extends Model<THtml> { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 类型(1=代驾服务协议与隐私政策保护,2=法律条款,3=个人信息处理规则,4=积分说明,5=佣金规则说明,6=行程录音说明,7=预估价格说明,8=加盟基本要求,9=加盟流程,10=起步价说明,11=注销协议,12=关于我们,13=司机消单说明) + */ + private Integer type; + /** + * H5内容 + */ + private String html; + /** + * 添加时间 + */ + private Date createTime; + + + 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 getHtml() { + return html; + } + + public void setHtml(String html) { + this.html = html; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + protected Serializable pkVal() { + return this.id; + } + + @Override + public String toString() { + return "THtml{" + + "id=" + id + + ", type=" + type + + ", html=" + html + + ", createTime=" + createTime + + "}"; + } +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TImg.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TImg.java new file mode 100644 index 0000000..9bc6fab --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TImg.java @@ -0,0 +1,88 @@ +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 java.io.Serializable; + +/** + * <p> + * 系统图片 + * </p> + * + * @author stylefeng + * @since 2023-03-28 + */ +@TableName("t_img") +public class TImg extends Model<TImg> { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 数据类型(1=启动页) + */ + private Integer type; + /** + * 图片地址 + */ + private String img; + /** + * 添加时间 + */ + private Date createTime; + + + 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 getImg() { + return img; + } + + public void setImg(String img) { + this.img = img; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + protected Serializable pkVal() { + return this.id; + } + + @Override + public String toString() { + return "TImg{" + + "id=" + id + + ", type=" + type + + ", img=" + img + + ", createTime=" + createTime + + "}"; + } +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TMainContent.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TMainContent.java new file mode 100644 index 0000000..34643e8 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TMainContent.java @@ -0,0 +1,101 @@ +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 java.io.Serializable; + +/** + * <p> + * 事由管理 + * </p> + * + * @author stylefeng + * @since 2023-03-28 + */ +@TableName("t_main_content") +public class TMainContent extends Model<TMainContent> { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 数据类型(1=转单,2=司机消单,3=用户取消订单) + */ + private Integer type; + /** + * 内容 + */ + private String content; + /** + * 状态(1=正常,2=冻结,3=删除) + */ + private Integer status; + /** + * 添加时间 + */ + private Date createTime; + + + 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 getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + protected Serializable pkVal() { + return this.id; + } + + @Override + public String toString() { + return "TMainContent{" + + "id=" + id + + ", type=" + type + + ", content=" + content + + ", status=" + status + + ", createTime=" + createTime + + "}"; + } +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TOrder.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TOrder.java index 8bf3d43..07a9452 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TOrder.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TOrder.java @@ -184,6 +184,27 @@ @ApiModelProperty(value = "折扣优惠金额") private BigDecimal discountAmount; + @ApiModelProperty(value = "实际里程(米)") + private Integer actualMileage; + + @ApiModelProperty(value = "是否已开票 1是 0否") + private Integer isInvoice; + + public Integer getIsInvoice() { + return isInvoice; + } + + public void setIsInvoice(Integer isInvoice) { + this.isInvoice = isInvoice; + } + + public Integer getActualMileage() { + return actualMileage; + } + + public void setActualMileage(Integer actualMileage) { + this.actualMileage = actualMileage; + } public String getRouteRecord() { return routeRecord; diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITAgentService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITAgentService.java index 1499b4a..b8392ed 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITAgentService.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITAgentService.java @@ -35,4 +35,11 @@ void detail(Integer agentId, Model model); List<TAgentResp> getAgentResp(List<TAgent> tAgents); + + /** + * 统计代理商 + * @param agentId + * @param model + */ + void getDataStatistics(Integer agentId, Model model); } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITAppUserService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITAppUserService.java index 4c79c9b..f7b4641 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITAppUserService.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITAppUserService.java @@ -1,9 +1,12 @@ package com.stylefeng.guns.modular.system.service; import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.stylefeng.guns.modular.system.controller.resp.TAppUserResp; import com.stylefeng.guns.modular.system.model.TAppUser; import com.baomidou.mybatisplus.service.IService; import org.springframework.ui.Model; + +import java.util.List; /** * <p> @@ -32,4 +35,13 @@ * @return */ EntityWrapper<TAppUser> getUserListWrapper(String createTime, String nickname, String phone, Integer id, Integer status); + + /** + * 用户异常列表封装返回数据 + * @param tAppUsers + * @return + */ + List<TAppUserResp> getTAppUserResp(List<TAppUser> tAppUsers); + + } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBillService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBillService.java index 67359ac..162452a 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBillService.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBillService.java @@ -4,6 +4,8 @@ import com.stylefeng.guns.modular.system.model.TBill; import com.baomidou.mybatisplus.service.IService; +import java.util.List; + /** * <p> * 发票管理 服务类 @@ -25,4 +27,15 @@ */ EntityWrapper<TBill> getPageListWrapper(String createTime, String addresseePhone, Integer state, Integer billType, Integer billHeaderType); + /** + * 获取列表 + * @param createTime + * @param addresseePhone + * @param state + * @param billType + * @param billHeaderType + * @return + */ + List<TBill> getPageList(String createTime, String addresseePhone, Integer state, Integer billType, Integer billHeaderType); + } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBroadcastService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBroadcastService.java index 15b32fb..3634a98 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBroadcastService.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBroadcastService.java @@ -18,6 +18,6 @@ * * @return */ - Boolean isExit(String id, Integer sort); + Boolean isExit(Integer id, Integer sort); } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITCashWithdrawalService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITCashWithdrawalService.java new file mode 100644 index 0000000..0c47c87 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITCashWithdrawalService.java @@ -0,0 +1,16 @@ +package com.stylefeng.guns.modular.system.service; + +import com.stylefeng.guns.modular.system.model.TCashWithdrawal; +import com.baomidou.mybatisplus.service.IService; + +/** + * <p> + * 提现记录 服务类 + * </p> + * + * @author stylefeng + * @since 2023-03-23 + */ +public interface ITCashWithdrawalService extends IService<TCashWithdrawal> { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITCommercialService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITCommercialService.java index a1d208d..c1354e4 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITCommercialService.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITCommercialService.java @@ -1,7 +1,7 @@ package com.stylefeng.guns.modular.system.service; -import com.stylefeng.guns.modular.system.model.TCommercial; import com.baomidou.mybatisplus.service.IService; +import com.stylefeng.guns.modular.system.model.TCommercial; /** * <p> @@ -13,4 +13,11 @@ */ public interface ITCommercialService extends IService<TCommercial> { + /** + * 判断存在多少个弹窗广告 + * + * @return + */ + Boolean isExit(Integer id, Integer onOffLine); + } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITDriverService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITDriverService.java index 7303cfc..c073086 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITDriverService.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITDriverService.java @@ -78,4 +78,11 @@ * @param model */ void driverCommissionDetail(Integer tDriverId, Model model); + + /** + * 统计司机数 + * @param agentId + * @param model + */ + void getDataStatistics(Integer agentId, Model model); } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITHtmlService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITHtmlService.java new file mode 100644 index 0000000..ea7f946 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITHtmlService.java @@ -0,0 +1,16 @@ +package com.stylefeng.guns.modular.system.service; + +import com.stylefeng.guns.modular.system.model.THtml; +import com.baomidou.mybatisplus.service.IService; + +/** + * <p> + * H5富文本 服务类 + * </p> + * + * @author stylefeng + * @since 2023-03-24 + */ +public interface ITHtmlService extends IService<THtml> { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITImgService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITImgService.java new file mode 100644 index 0000000..ddf42ba --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITImgService.java @@ -0,0 +1,16 @@ +package com.stylefeng.guns.modular.system.service; + +import com.stylefeng.guns.modular.system.model.TImg; +import com.baomidou.mybatisplus.service.IService; + +/** + * <p> + * 系统图片 服务类 + * </p> + * + * @author stylefeng + * @since 2023-03-28 + */ +public interface ITImgService extends IService<TImg> { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITMainContentService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITMainContentService.java new file mode 100644 index 0000000..114d7b8 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITMainContentService.java @@ -0,0 +1,16 @@ +package com.stylefeng.guns.modular.system.service; + +import com.stylefeng.guns.modular.system.model.TMainContent; +import com.baomidou.mybatisplus.service.IService; + +/** + * <p> + * 事由管理 服务类 + * </p> + * + * @author stylefeng + * @since 2023-03-28 + */ +public interface ITMainContentService extends IService<TMainContent> { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderService.java index a8306be..cff3c39 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderService.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderService.java @@ -2,11 +2,13 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.stylefeng.guns.modular.system.controller.resp.TOrderResp; +import com.stylefeng.guns.modular.system.controller.resp.TOrderServerResp; import com.stylefeng.guns.modular.system.model.TOrder; import com.baomidou.mybatisplus.service.IService; import org.springframework.ui.Model; import java.util.List; +import java.util.Map; /** * <p> @@ -44,4 +46,41 @@ * @param model */ void orderExceptionDetail(Integer orderId, Model model); + + /** + * 订单统计,每年按月份 + * @param agentId + * @param model + */ + void getDataStatisticsByYear(Integer agentId,String yearDate, Model model); + + /** + * 单量 + * @param agentId + * @param monthDate + * @param model + */ + void getDataStatisticsOrderCount(Integer agentId, String monthDate, Model model); + + /** + * 查询统计待接单,服务中,已完成,已取消 + * @param agentId + * @param map + */ + void getDataStatisticsCount(Integer agentId, Map<String, Integer> map); + + /** + * 查询服务中的订单列表 + * @param agentId + * @return + */ + List<TOrderServerResp> getDataStatisticsServerList(Integer agentId); + + /** + * 查询今天所有订单 + * @param agentId + * @return + */ + List<TOrder> getDataStatisticsAllList(Integer agentId); + } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITRevenueService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITRevenueService.java index 9423118..5c97d8f 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITRevenueService.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITRevenueService.java @@ -52,4 +52,13 @@ * @param model */ void orderDetail(String code, Model model); + + /** + * 查询收入或佣金 + * @param agentId + * @param monthDate + * @param type + * @param model + */ + void getDataStatisticsIncomeOrCommission(Integer agentId, String monthDate, Integer type, Model model); } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java index 341d03a..9c49cd6 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java @@ -21,6 +21,7 @@ import java.math.BigDecimal; import java.text.SimpleDateFormat; +import java.time.LocalDate; import java.util.*; import java.util.stream.Collectors; @@ -89,6 +90,7 @@ model.addAttribute("principal",tAgent.getPrincipal()); model.addAttribute("principalPhone",tAgent.getPrincipalPhone()); model.addAttribute("email",tAgent.getEmail()); + model.addAttribute("serviceCalls",tAgent.getServiceCalls()); model.addAttribute("area",tAgent.getProvinceName()+tAgent.getCityName()); // 订单信息 // 订单总量 @@ -189,4 +191,19 @@ } return tAgentRespList; } + + @Override + public void getDataStatistics(Integer agentId, Model model) { + // 代理商总数 + Integer agentTotal = tAgentMapper.selectCount(new EntityWrapper<TAgent>() + .eq("id", agentId)); + // 代理商最近一个月新增数量 + LocalDate now = LocalDate.now(); + LocalDate localDate = now.plusMonths(1); + Integer agentMonthTotal = tAgentMapper.selectCount(new EntityWrapper<TAgent>() + .eq("id", agentId) + .between("createTime", localDate, now)); + model.addAttribute("agentTotal",agentTotal); + model.addAttribute("agentMonthTotal",agentMonthTotal); + } } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAppUserServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAppUserServiceImpl.java index e4091f2..632cd90 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAppUserServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAppUserServiceImpl.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.stylefeng.guns.core.util.DateUtil; +import com.stylefeng.guns.modular.system.controller.resp.TAppUserResp; import com.stylefeng.guns.modular.system.dao.TCouponMapper; import com.stylefeng.guns.modular.system.dao.TOrderMapper; import com.stylefeng.guns.modular.system.dao.TUserToCouponMapper; @@ -15,6 +16,7 @@ import com.stylefeng.guns.modular.system.model.TUserToCoupon; import com.stylefeng.guns.modular.system.service.ITAppUserService; import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.ui.Model; @@ -22,10 +24,7 @@ import org.springframework.util.StringUtils; import java.math.BigDecimal; -import java.util.Date; -import java.util.List; -import java.util.Objects; -import java.util.Optional; +import java.util.*; import java.util.stream.Collectors; /** @@ -155,4 +154,40 @@ wrapper.ne("status", StatusEnum.DELETE.getCode()); return wrapper; } + + @Override + public List<TAppUserResp> getTAppUserResp(List<TAppUser> tAppUsers) { + List<TAppUserResp> tAppUserRespList = new ArrayList<>(tAppUsers.size()); + for (TAppUser tAppUser : tAppUsers) { + TAppUserResp tAppUserResp = new TAppUserResp(); + BeanUtils.copyProperties(tAppUser,tAppUserResp); + + // 查询当前用户优惠券数量 + List<TUserToCoupon> tUserToCoupons = tUserToCouponMapper.selectList(new EntityWrapper<TUserToCoupon>().eq("userId", tAppUser.getId())); + + int couponTotal = tUserToCoupons.stream().mapToInt(TUserToCoupon::getCouponTotal).sum(); + int validCount = tUserToCoupons.stream().mapToInt(TUserToCoupon::getValidCount).sum(); + +// List<TCoupon> tCoupons = tCouponService.selectList(new EntityWrapper<TCoupon>().eq("user_id", tAppUser.getId())); +// List<TCoupon> notUsedList = tCoupons.stream().filter(coupon -> coupon.getCouponStatus().equals(CouponStatusEnum.NOT_USED.getCode())).collect(Collectors.toList()); + tAppUserResp.setCouponSum(couponTotal); + tAppUserResp.setNotUsedCount(validCount); + List<TOrder> orders = tOrderMapper.selectList(new EntityWrapper<TOrder>().eq("userId", tAppUser.getId()).orderBy(true,"createTime",false)); + if(!CollectionUtils.isEmpty(orders)){ + // 最后一次消费时间 + tAppUserResp.setLastConsumptionTime(orders.get(0).getCreateTime()); + List<TOrder> collect1 = orders.stream().filter(order->Objects.nonNull(order.getState())) + .filter(order -> OrderStateEnum.WAIT_EVALUATED.getCode() == order.getState() || + OrderStateEnum.FINISH.getCode() == order.getState()).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(collect1)) { + tAppUserResp.setConsumeSum(collect1.size()); + // 总消费金额 + collect1.stream().map(TOrder::getPayMoney).reduce(BigDecimal::add) + .ifPresent(tAppUserResp::setConsumePrice); + } + } + tAppUserRespList.add(tAppUserResp); + } + return tAppUserRespList; + } } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBillServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBillServiceImpl.java index 239d2a4..c1ebb08 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBillServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBillServiceImpl.java @@ -1,16 +1,21 @@ package com.stylefeng.guns.modular.system.service.impl; import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.stylefeng.guns.core.shiro.ShiroKit; import com.stylefeng.guns.core.util.DateUtil; +import com.stylefeng.guns.modular.system.controller.resp.TRechargeRecordUserResp; import com.stylefeng.guns.modular.system.model.TBill; import com.stylefeng.guns.modular.system.dao.TBillMapper; import com.stylefeng.guns.modular.system.service.ITBillService; import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.StringUtils; import java.util.Date; +import java.util.List; import java.util.Objects; +import java.util.stream.Collectors; /** * <p> @@ -22,6 +27,9 @@ */ @Service public class TBillServiceImpl extends ServiceImpl<TBillMapper, TBill> implements ITBillService { + + @Autowired + private TBillMapper tBillMapper; @Override public EntityWrapper<TBill> getPageListWrapper(String createTime, String addresseePhone, Integer state, Integer billType, Integer billHeaderType) { @@ -47,4 +55,19 @@ } return wrapper; } + + @Override + public List<TBill> getPageList(String createTime, String addresseePhone, Integer state, Integer billType, Integer billHeaderType) { + String startTime = null; + String endTime = null; + // 开始,结束时间 + if(StringUtils.hasLength(createTime)){ + String[] split = createTime.split(" - "); + startTime = split[0]; + endTime = split[1]; + } + Integer roleType = Objects.requireNonNull(ShiroKit.getUser()).getRoleType(); + Integer objectId = Objects.requireNonNull(ShiroKit.getUser()).getObjectId(); + return tBillMapper.getPageList(startTime, endTime, addresseePhone,state,billType,billHeaderType,roleType,objectId); + } } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBroadcastServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBroadcastServiceImpl.java index 18b0e00..8acc288 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBroadcastServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBroadcastServiceImpl.java @@ -1,6 +1,7 @@ package com.stylefeng.guns.modular.system.service.impl; import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.stylefeng.guns.modular.system.enums.StatusEnum; import com.stylefeng.guns.modular.system.model.TBroadcast; import com.stylefeng.guns.modular.system.dao.TBroadcastMapper; import com.stylefeng.guns.modular.system.service.ITBroadcastService; @@ -26,10 +27,11 @@ private TBroadcastMapper tBroadcastMapper; @Override - public Boolean isExit(String id, Integer sort) { + public Boolean isExit(Integer id, Integer sort) { Integer count = tBroadcastMapper.selectCount(new EntityWrapper<TBroadcast>() - .eq("sort", sort)); - if (StringUtils.hasLength(id)) { + .eq("sort", sort) + .ne("status", StatusEnum.DELETE.getCode())); + if (Objects.nonNull(id)) { // 修改 TBroadcast tBroadcast = tBroadcastMapper.selectById(id); return Objects.nonNull(tBroadcast) && !tBroadcast.getSort().equals(sort) && count > 0; diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCashWithdrawalServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCashWithdrawalServiceImpl.java new file mode 100644 index 0000000..113323b --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCashWithdrawalServiceImpl.java @@ -0,0 +1,20 @@ +package com.stylefeng.guns.modular.system.service.impl; + +import com.stylefeng.guns.modular.system.model.TCashWithdrawal; +import com.stylefeng.guns.modular.system.dao.TCashWithdrawalMapper; +import com.stylefeng.guns.modular.system.service.ITCashWithdrawalService; +import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + * <p> + * 提现记录 服务实现类 + * </p> + * + * @author stylefeng + * @since 2023-03-23 + */ +@Service +public class TCashWithdrawalServiceImpl extends ServiceImpl<TCashWithdrawalMapper, TCashWithdrawal> implements ITCashWithdrawalService { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCommercialServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCommercialServiceImpl.java index 5d4afae..f4257f0 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCommercialServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCommercialServiceImpl.java @@ -1,10 +1,20 @@ package com.stylefeng.guns.modular.system.service.impl; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.stylefeng.guns.modular.system.dao.TBroadcastMapper; +import com.stylefeng.guns.modular.system.enums.StatusEnum; +import com.stylefeng.guns.modular.system.model.TBroadcast; import com.stylefeng.guns.modular.system.model.TCommercial; import com.stylefeng.guns.modular.system.dao.TCommercialMapper; import com.stylefeng.guns.modular.system.service.ITCommercialService; import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; /** * <p> @@ -17,4 +27,27 @@ @Service public class TCommercialServiceImpl extends ServiceImpl<TCommercialMapper, TCommercial> implements ITCommercialService { + @Autowired + private TCommercialMapper tCommercialMapper; + + @Override + public Boolean isExit(Integer id,Integer onOffLine) { + List<TCommercial> list = tCommercialMapper.selectList(new EntityWrapper<TCommercial>() + .eq("type", 1) + .eq("onOffLine", onOffLine) + .ne("status", StatusEnum.DELETE.getCode())); + if (Objects.nonNull(id)) { + if(!CollectionUtils.isEmpty(list)){ + List<Integer> ids = list.stream().map(TCommercial::getId).collect(Collectors.toList()); + // 修改 + TCommercial tCommercial = tCommercialMapper.selectById(id); + return Objects.nonNull(tCommercial) && !ids.contains(id) && list.size() > 3; + }else { + return false; + } + } else { + // 新增 + return list.size() > 3; + } + } } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TComplaintServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TComplaintServiceImpl.java index fca4d93..a5a56be 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TComplaintServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TComplaintServiceImpl.java @@ -1,5 +1,6 @@ package com.stylefeng.guns.modular.system.service.impl; +import com.stylefeng.guns.core.shiro.ShiroKit; import com.stylefeng.guns.modular.system.controller.resp.TComplaintResp; import com.stylefeng.guns.modular.system.dao.TAppUserMapper; import com.stylefeng.guns.modular.system.dao.TDriverMapper; @@ -12,6 +13,7 @@ import org.springframework.util.StringUtils; import java.util.List; +import java.util.Objects; /** * <p> @@ -37,6 +39,8 @@ startTime = split[0]; endTime = split[1]; } - return tComplaintMapper.getPageList(startTime,endTime,userName,userPhone,driverPhone,state); + Integer roleType = Objects.requireNonNull(ShiroKit.getUser()).getRoleType(); + Integer objectId = Objects.requireNonNull(ShiroKit.getUser()).getObjectId(); + return tComplaintMapper.getPageList(startTime,endTime,userName,userPhone,driverPhone,state,roleType,objectId); } } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TDriverServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TDriverServiceImpl.java index bc2b295..f4da8ea 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TDriverServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TDriverServiceImpl.java @@ -11,11 +11,14 @@ import com.stylefeng.guns.modular.system.controller.util.UUIDUtil; import com.stylefeng.guns.modular.system.dao.*; import com.stylefeng.guns.modular.system.enums.OrderStateEnum; +import com.stylefeng.guns.modular.system.enums.PayStatusEnum; import com.stylefeng.guns.modular.system.enums.StatusEnum; +import com.stylefeng.guns.modular.system.enums.UserTypeEnum; import com.stylefeng.guns.modular.system.model.*; import com.stylefeng.guns.modular.system.service.ITDriverService; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.stylefeng.guns.modular.system.service.ITRegionService; +import org.apache.poi.hdf.extractor.TC; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,10 +32,7 @@ import java.time.LocalDate; import java.time.Period; import java.time.ZoneId; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Objects; +import java.util.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Collectors; @@ -66,6 +66,11 @@ private ITRegionService itRegionService; @Autowired private HttpUtils httpUtils; + + @Autowired + private TRechargeRecordMapper tRechargeRecordMapper; + @Autowired + private TCashWithdrawalMapper tCashWithdrawalMapper; @Override public EntityWrapper<TDriver> getPageList(String createTime, String phone, Integer status) { @@ -234,19 +239,42 @@ if(!CollectionUtils.isEmpty(tOrders)){ //累计订单量 - List<TOrder> cumulativeOrderCount = tOrders.stream().filter(order -> order.getDriverId().equals(tDriver.getId()) + List<TOrder> cumulativeOrderCount = tOrders.stream().filter(order -> tDriver.getId().equals(order.getDriverId()) && order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode()) && order.getState().equals(OrderStateEnum.FINISH.getCode())).collect(Collectors.toList()); model.addAttribute("cumulativeOrderCount",cumulativeOrderCount.size()); //当月订单量 - List<TOrder> monthOrderCount = tOrders.stream().filter(order -> order.getDriverId().equals(tDriver.getId()) + List<TOrder> monthOrderCount = tOrders.stream().filter(order -> tDriver.getId().equals(order.getDriverId()) && order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode()) && order.getState().equals(OrderStateEnum.FINISH.getCode()) && new SimpleDateFormat("yyyyMM").format(order.getCreateTime()).equals(monthDate)).collect(Collectors.toList()); model.addAttribute("monthOrderCount",monthOrderCount.size()); // 拒单次数 List<TOrderRefusal> driverRefusalList = tOrderRefusalMapper.selectList(new EntityWrapper<TOrderRefusal>().eq("driver_id", tDriver.getId())); model.addAttribute("refusalCount",driverRefusalList.size()); - // todo 累计收入 - model.addAttribute("cumulativeIncome",0); + // 累计收入 司机提现记录加上余额减去充值金额,为累计收入 + List<TCashWithdrawal> tCashWithdrawals = tCashWithdrawalMapper.selectList(new EntityWrapper<TCashWithdrawal>() + .eq("type", UserTypeEnum.DRIVER.getCode()) + .eq("userDriverId", tDriver.getId()) + .eq("state", 2)); + BigDecimal balance = tDriver.getBalance(); + if(!CollectionUtils.isEmpty(tCashWithdrawals)){ + Optional<BigDecimal> reduce = tCashWithdrawals.stream().map(TCashWithdrawal::getAmount).reduce(BigDecimal::add); + if(reduce.isPresent()){ + balance = balance.add(reduce.get()); + } + } + List<TRechargeRecord> tRechargeRecords = tRechargeRecordMapper.selectList(new EntityWrapper<TRechargeRecord>() + .eq("type", UserTypeEnum.DRIVER.getCode()) + .eq("userId", tDriver.getId()) + .eq("payType", 1) + .eq("payStatus", PayStatusEnum.FINISH.getCode())); + if(!CollectionUtils.isEmpty(tRechargeRecords)){ + Optional<BigDecimal> reduce = tRechargeRecords.stream().map(TRechargeRecord::getAmount).reduce(BigDecimal::add); + if(reduce.isPresent()){ + balance = balance.subtract(reduce.get()); + } + } + // 减去充值金额 + model.addAttribute("cumulativeIncome",balance); }else { model.addAttribute("cumulativeOrderCount",0); model.addAttribute("monthOrderCount",0); @@ -458,4 +486,19 @@ // commissionResp.setAccumulatedCommission(BigDecimal.ZERO); } + + @Override + public void getDataStatistics(Integer agentId, Model model) { + // 司机总数 + Integer driverTotal = tDriverMapper.selectCount(new EntityWrapper<TDriver>() + .eq("agentId", agentId)); + // 司机最近一月数量 + LocalDate now = LocalDate.now(); + LocalDate localDate = now.plusMonths(1); + Integer driverMonthTotal = tDriverMapper.selectCount(new EntityWrapper<TDriver>() + .eq("agentId", agentId) + .between("createTime", localDate, now)); + model.addAttribute("driverTotal",driverTotal); + model.addAttribute("driverMonthTotal",driverMonthTotal); + } } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/THtmlServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/THtmlServiceImpl.java new file mode 100644 index 0000000..ccfd7d9 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/THtmlServiceImpl.java @@ -0,0 +1,20 @@ +package com.stylefeng.guns.modular.system.service.impl; + +import com.stylefeng.guns.modular.system.model.THtml; +import com.stylefeng.guns.modular.system.dao.THtmlMapper; +import com.stylefeng.guns.modular.system.service.ITHtmlService; +import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + * <p> + * H5富文本 服务实现类 + * </p> + * + * @author stylefeng + * @since 2023-03-24 + */ +@Service +public class THtmlServiceImpl extends ServiceImpl<THtmlMapper, THtml> implements ITHtmlService { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TImgServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TImgServiceImpl.java new file mode 100644 index 0000000..d485582 --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TImgServiceImpl.java @@ -0,0 +1,20 @@ +package com.stylefeng.guns.modular.system.service.impl; + +import com.stylefeng.guns.modular.system.model.TImg; +import com.stylefeng.guns.modular.system.dao.TImgMapper; +import com.stylefeng.guns.modular.system.service.ITImgService; +import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + * <p> + * 系统图片 服务实现类 + * </p> + * + * @author stylefeng + * @since 2023-03-28 + */ +@Service +public class TImgServiceImpl extends ServiceImpl<TImgMapper, TImg> implements ITImgService { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TMainContentServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TMainContentServiceImpl.java new file mode 100644 index 0000000..f7884cb --- /dev/null +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TMainContentServiceImpl.java @@ -0,0 +1,20 @@ +package com.stylefeng.guns.modular.system.service.impl; + +import com.stylefeng.guns.modular.system.model.TMainContent; +import com.stylefeng.guns.modular.system.dao.TMainContentMapper; +import com.stylefeng.guns.modular.system.service.ITMainContentService; +import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + * <p> + * 事由管理 服务实现类 + * </p> + * + * @author stylefeng + * @since 2023-03-28 + */ +@Service +public class TMainContentServiceImpl extends ServiceImpl<TMainContentMapper, TMainContent> implements ITMainContentService { + +} diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java index 01bdb4c..3b2ee6f 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java @@ -3,10 +3,14 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.stylefeng.guns.core.shiro.ShiroKit; import com.stylefeng.guns.core.util.DateUtil; +import com.stylefeng.guns.modular.system.controller.resp.DataStatisticsOrderYearResp; +import com.stylefeng.guns.modular.system.controller.resp.PerformanceTableResp; import com.stylefeng.guns.modular.system.controller.resp.TOrderResp; +import com.stylefeng.guns.modular.system.controller.resp.TOrderServerResp; import com.stylefeng.guns.modular.system.dao.TAppUserMapper; import com.stylefeng.guns.modular.system.dao.TBranchOfficeMapper; import com.stylefeng.guns.modular.system.dao.TDriverMapper; +import com.stylefeng.guns.modular.system.enums.OrderStateEnum; import com.stylefeng.guns.modular.system.model.TAppUser; import com.stylefeng.guns.modular.system.model.TBranchOffice; import com.stylefeng.guns.modular.system.model.TDriver; @@ -21,8 +25,10 @@ import java.math.BigDecimal; import java.text.SimpleDateFormat; +import java.time.LocalDate; import java.util.Date; import java.util.List; +import java.util.Map; import java.util.Objects; /** @@ -137,4 +143,41 @@ this.orderDetail(orderId,model); model.addAttribute("orderId",orderId); } + + @Override + public void getDataStatisticsByYear(Integer agentId,String yearDate, Model model) { + List<DataStatisticsOrderYearResp> data = tOrderMapper.getDataStatisticsByYear(agentId,yearDate); + System.err.println(data); + model.addAttribute("yearResp",data); + } + + @Override + public void getDataStatisticsOrderCount(Integer agentId, String monthDate, Model model) { + List<PerformanceTableResp> list = tOrderMapper.getDataStatisticsOrderCount(agentId,monthDate); + model.addAttribute("performanceResp",list); + } + + @Override + public void getDataStatisticsCount(Integer agentId, Map<String, Integer> map) { + Integer pendingOrderCount = tOrderMapper.getDataStatisticsCount(agentId, OrderStateEnum.PENDING_ORDER.getCode(), LocalDate.now()); + Integer finishCount = tOrderMapper.getDataStatisticsCount(agentId, OrderStateEnum.FINISH.getCode(),LocalDate.now()); + Integer cancelCount = tOrderMapper.getDataStatisticsCount(agentId, OrderStateEnum.CANCELED.getCode(),LocalDate.now()); + + Integer serverCount = tOrderMapper.getDataStatisticsServerCount(agentId, LocalDate.now()); + + map.put("pendingOrderCount",pendingOrderCount); + map.put("finishCount",finishCount); + map.put("cancelCount",cancelCount); + map.put("serverCount",serverCount); + } + + @Override + public List<TOrderServerResp> getDataStatisticsServerList(Integer agentId) { + return tOrderMapper.getDataStatisticsServerList(agentId,LocalDate.now()); + } + + @Override + public List<TOrder> getDataStatisticsAllList(Integer agentId) { + return tOrderMapper.getDataStatisticsAllList(agentId,LocalDate.now()); + } } diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRechargeRecordServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRechargeRecordServiceImpl.java index 09aff6d..c839d3c 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRechargeRecordServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRechargeRecordServiceImpl.java @@ -13,6 +13,7 @@ import java.util.List; import java.util.Objects; +import java.util.stream.Collectors; /** * <p> @@ -38,7 +39,16 @@ startTime = split[0]; endTime = split[1]; } - return tRechargeRecordMapper.userRecharge(startTime,endTime,userName,userPhone,code); + Integer roleType = Objects.requireNonNull(ShiroKit.getUser()).getRoleType(); + Integer objectId = Objects.requireNonNull(ShiroKit.getUser()).getObjectId(); + List<TRechargeRecordUserResp> userRecharge = tRechargeRecordMapper.userRecharge(startTime, endTime, userName, userPhone, code); + if(3 == roleType){ + userRecharge = userRecharge.stream().filter(recharge -> recharge.getAgentId().equals(objectId)).collect(Collectors.toList()); + } +// if(2 == roleType){ +// userRecharge = userRecharge.stream().filter(recharge -> recharge.getBranchOfficeId().equals(objectId)).collect(Collectors.toList()); +// } + return userRecharge; } @Override diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRevenueServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRevenueServiceImpl.java index fbfa5e0..56f66a0 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRevenueServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRevenueServiceImpl.java @@ -3,6 +3,7 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.stylefeng.guns.core.shiro.ShiroKit; +import com.stylefeng.guns.modular.system.controller.resp.PerformanceTableResp; import com.stylefeng.guns.modular.system.controller.resp.RevenueExpenditureResp; import com.stylefeng.guns.modular.system.dao.*; import com.stylefeng.guns.modular.system.enums.CashWithdrawalTypeEnum; @@ -22,6 +23,7 @@ import java.math.BigDecimal; import java.text.SimpleDateFormat; +import java.util.ArrayList; import java.util.List; import java.util.Objects; import java.util.Optional; @@ -128,4 +130,16 @@ model.addAttribute("evaluateContent",""); } } + + @Override + public void getDataStatisticsIncomeOrCommission(Integer agentId, String monthDate, Integer type, Model model) { + List<PerformanceTableResp> list = new ArrayList<>(); + if(2 == type){ + list = tRevenueMapper.getDataStatisticsIncomeOrCommission(agentId,1,monthDate); + } + if (3 == type){ + list = tRevenueMapper.getDataStatisticsIncomeOrCommission(agentId,2,monthDate); + } + model.addAttribute("performanceResp",list); + } } diff --git a/management/guns-admin/src/main/resources/application.yml b/management/guns-admin/src/main/resources/application.yml index abbfe9c..e85eaca 100644 --- a/management/guns-admin/src/main/resources/application.yml +++ b/management/guns-admin/src/main/resources/application.yml @@ -78,7 +78,7 @@ spring: profiles: local datasource: - url: jdbc:mysql://192.168.0.80:3306/super_save_driving?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B8 + url: jdbc:mysql://192.168.110.80:3306/super_save_driving?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B8 username: root password: 123456 db-name: super_save_driving #用来搜集数据库的所有表 diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgent.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgent.html index ba18273..c2690a2 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgent.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgent.html @@ -31,9 +31,9 @@ <#button name="重置" icon="fa-trash" clickFun="TAgent.resetSearch()" space="true"/> </div> <div class="col-sm-3"> - <button type="button" class="btn btn-primary " onclick="TAgent.export()" id="export"> - <i class="fa "></i> 导出 - </button> + @if(shiro.hasPermission("/tAgent/export")){ + <#button name="导出" icon="" clickFun="TAgent.export()"/> + @} @if(shiro.hasPermission("/tAgent/add")){ <#button name="添加" icon="fa-plus" clickFun="TAgent.openAddTAgent()"/> @} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgentDetail.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgentDetail.html index 54c7024..7728be1 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgentDetail.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgentDetail.html @@ -38,6 +38,13 @@ </div> </div> + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <label class="control-label" >客服电话:</label> + <label>${serviceCalls}</label> + </div> + </div> + <hr/> <div class="initialLevel col-sm-12 control-label form-group" > <div style="background-color: gray;height: 35px;line-height: 35px"> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgent_add.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgent_add.html index 4261860..eae4274 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgent_add.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAgent/tAgent_add.html @@ -49,6 +49,12 @@ <input id="bankAccount" name="bankAccount" type="number" maxlength="20" placeholder="请输入" style="height: 30px"> </div> </div> + <div class="initialLevel col-sm-12 control-label form-group"> + <div class="initialLevel col-sm-6 control-label form-group" > + <label class="control-label" >客服电话:</label> + <input id="serviceCalls" name="serviceCalls" type="number" maxlength="20" placeholder="请输入" style="height: 30px"> + </div> + </div> </div> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAppUser/tAppUser.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAppUser/tAppUser.html index 05ae027..8b60e4a 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAppUser/tAppUser.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAppUser/tAppUser.html @@ -33,13 +33,15 @@ <#button name="重置" icon="fa-trash" clickFun="TAppUser.resetSearch()" space="true"/> </div> <div class="col-sm-3"> - <button type="button" class="btn btn-primary " onclick="TAppUser.export()" id="export"> - <i class="fa "></i> 导出 - </button> + @if(shiro.hasPermission("/tAppUser/export-userInfo")){ + <#button name="导出" icon="" clickFun="TAppUser.export()"/> + @} + @if(shiro.hasPermission("/tAppUser/add")){ <#button name="异常" icon="" clickFun="TAppUserException.tAppUserException()"/> - <button type="button" class="btn btn-primary " onclick="TAppUser.searchCoupon()" id=""> - <i class="fa "></i> 赠送优惠劵 - </button> + @} + @if(shiro.hasPermission("/tAppUser/sendCoupon")){ + <#button name="赠送优惠劵" icon="" clickFun="TAppUser.searchCoupon()"/> + @} </div> </div> <!--<div class="hidden-xs" id="TAppUserTableToolbar" role="group"> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAppUser/tAppUserException.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAppUser/tAppUserException.html index e18d0cc..a1e6517 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAppUser/tAppUserException.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tAppUser/tAppUserException.html @@ -39,7 +39,7 @@ </button> </div> </div> - <div class="hidden-xs" id="TAppUserTableToolbar" role="group"> + <!--<div class="hidden-xs" id="TAppUserTableToolbar" role="group"> @if(shiro.hasPermission("/tAppUser/add")){ <#button name="添加" icon="fa-plus" clickFun="TAppUser.openAddTAppUser()"/> @} @@ -49,7 +49,7 @@ @if(shiro.hasPermission("/tAppUser/delete")){ <#button name="删除" icon="fa-remove" clickFun="TAppUser.delete()" space="true"/> @} - </div> + </div>--> <#table id="TAppUserExceptionTable"/> </div> </div> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBill/tBill.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBill/tBill.html index bc0ead3..7a2ad09 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBill/tBill.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBill/tBill.html @@ -41,9 +41,9 @@ <#button name="重置" icon="fa-trash" clickFun="TBill.resetSearch()" space="true"/> </div> <div class="col-sm-12"> - <button type="button" class="btn btn-primary " onclick="TBill.export()" id="export"> - <i class="fa "></i> 导出 - </button> + @if(shiro.hasPermission("/tBill/export")){ + <#button name="导出" icon="" clickFun="TBill.export()"/> + @} </div> </div> <div class="hidden-xs" id="TBillTableToolbar" role="group"> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOffice.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOffice.html index 944fcb5..9d4f6ff 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOffice.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOffice.html @@ -48,8 +48,12 @@ @if(shiro.hasPermission("/tBranchOffice/update")){ <#button name="编辑" icon="fa-edit" clickFun="TBranchOffice.openTBranchOfficeDetail()" space="true"/> @} + @if(shiro.hasPermission("/tBranchOffice/stop")){ <#button name="冻结" icon="fa-edit" clickFun="TBranchOffice.stop()" space="true"/> + @} + @if(shiro.hasPermission("/tBranchOffice/start")){ <#button name="启动" icon="fa-edit" clickFun="TBranchOffice.start()" space="true"/> + @} </div> </div> <!--<div class="hidden-xs" id="TBranchOfficeTableToolbar" role="group"> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBroadcast/tBroadcast_add.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBroadcast/tBroadcast_add.html index ed37e07..dd6f32b 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBroadcast/tBroadcast_add.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBroadcast/tBroadcast_add.html @@ -1,29 +1,61 @@ @layout("/common/_container.html"){ -<div class="ibox float-e-margins"> - <div class="ibox-content"> - <div class="form-horizontal"> - - <div class="row"> - <div class="col-sm-6 b-r"> - <#input id="id" name="主键" underline="true"/> - <#input id="content" name="消息内容" underline="true"/> - <#input id="sort" name="排序"/> - </div> - - <div class="col-sm-6"> - <#input id="status" name="状态(1=正常,2=冻结,3=删除)" underline="true"/> - <#input id="createTime" name="添加时间" underline="true"/> - </div> +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>添加</h5> </div> + <div class="ibox-content" id="broadcastInfoForm"> + <div class="row row-lg"> + <div class="col-sm-12"> - <div class="row btn-group-m-t"> - <div class="col-sm-10"> - <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TBroadcastInfoDlg.addSubmit()"/> - <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TBroadcastInfoDlg.close()"/> + <div class="col-sm-12" style="cursor: pointer;text-align: right;"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label >滚动消息</label> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >消息内容:</label> + <input id="content" name="content" type="text" maxlength="200" placeholder="请输入" style="height: 30px" required="required"> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >排序:</label> + <input id="sort" name="sort" type="number" style="height: 30px" maxlength="4" placeholder="请输入" required="required"> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >是否显示:</label> + <select id="show" style="width: 180px;height: 30px" name="show"> + <option value="">选择是否显示</option> + <option value="true">是</option> + <option value="false">否</option> + </select> + </div> + </div> + + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TBroadcastInfoDlg.close()"/> + <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TBroadcastInfoDlg.addSubmit()"/> + </div> </div> </div> </div> - </div> </div> <script src="${ctxPath}/static/modular/system/tBroadcast/tBroadcast_info.js"></script> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBroadcast/tBroadcast_edit.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBroadcast/tBroadcast_edit.html index cd848d4..2fd0cb2 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBroadcast/tBroadcast_edit.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBroadcast/tBroadcast_edit.html @@ -1,29 +1,63 @@ @layout("/common/_container.html"){ -<div class="ibox float-e-margins"> - <div class="ibox-content"> - <div class="form-horizontal"> - - <div class="row"> - <div class="col-sm-6 b-r"> - <#input id="id" name="主键" value="${item.id}" underline="true"/> - <#input id="content" name="消息内容" value="${item.content}" underline="true"/> - <#input id="sort" name="排序" value="${item.sort}" /> - </div> - - <div class="col-sm-6"> - <#input id="status" name="状态(1=正常,2=冻结,3=删除)" value="${item.status}" underline="true"/> - <#input id="createTime" name="添加时间" value="${item.createTime}" /> - </div> +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>编辑</h5> </div> + <div class="ibox-content" id="broadcastInfoForm"> + <div class="row row-lg"> + <div class="col-sm-12"> + <div class="col-sm-12" style="cursor: pointer;text-align: right;"> - <div class="row btn-group-m-t"> - <div class="col-sm-10"> - <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TBroadcastInfoDlg.editSubmit()"/> - <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TBroadcastInfoDlg.close()"/> + <input hidden id="id" value="${item.id}"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div style="background-color: gray;height: 35px;line-height: 35px"> + <label style="color: #0C0C0C">滚动消息</label> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >消息内容:</label> + <input id="content" value="${item.content}" type="text" maxlength="200" style="height: 30px" required="required"> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >排序:</label> + <input id="sort" value="${item.sort}" type="number" style="height: 30px" maxlength="4" placeholder="请输入" required="required"> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >是否显示:</label> + <select id="show" style="width: 180px;height: 30px"> + <option value="true"${item.show == true ? 'selected=selected' : ''}>是</option> + <option value="false"${item.show == false ? 'selected=selected' : ''}>否</option> + </select> + </div> + </div> + + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TBroadcastInfoDlg.close()"/> + <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TBroadcastInfoDlg.editSubmit()"/> + </div> </div> </div> </div> - </div> </div> <script src="${ctxPath}/static/modular/system/tBroadcast/tBroadcast_info.js"></script> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial.html index 32072cb..9843abe 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial.html @@ -8,14 +8,14 @@ <div class="ibox-content"> <div class="row row-lg"> <div class="col-sm-12"> - <div class="row"> + <!--<div class="row"> <div class="col-sm-3"> <#NameCon id="condition" name="名称" /> </div> <div class="col-sm-3"> <#button name="搜索" icon="fa-search" clickFun="TCommercial.search()"/> </div> - </div> + </div>--> <div class="hidden-xs" id="TCommercialTableToolbar" role="group"> @if(shiro.hasPermission("/tCommercial/add")){ <#button name="添加" icon="fa-plus" clickFun="TCommercial.openAddTCommercial()"/> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial_add.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial_add.html index 4012ef4..3fbd7c3 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial_add.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial_add.html @@ -1,40 +1,144 @@ @layout("/common/_container.html"){ -<div class="ibox float-e-margins"> - <div class="ibox-content"> - <div class="form-horizontal"> - - <div class="row"> - <div class="col-sm-6 b-r"> - <#input id="id" name="主键" underline="true"/> - <#input id="type" name="类型(1=弹窗广告,2=底部广告)" underline="true"/> - <#input id="name" name="名称" underline="true"/> - <#input id="url" name="广告地址" underline="true"/> - <#input id="device" name="设备(1=小程序,2=司机端)" underline="true"/> - <#input id="isJump" name="是否跳转(0=否,1=是)" underline="true"/> - <#input id="jumpType" name="跳转类型(1=内部跳转,2=外部跳转)" underline="true"/> - <#input id="jumpUrl" name="跳转连接"/> - </div> - - <div class="col-sm-6"> - <#input id="html" name="富文本" underline="true"/> - <#input id="sort" name="排序" underline="true"/> - <#input id="status" name="状态(1=正常,2=冻结,3=删除)" underline="true"/> - <#input id="createTime" name="添加时间" underline="true"/> - <#input id="createUserId" name="添加人员id" underline="true"/> - <#input id="updateTime" name="更新时间" underline="true"/> - <#input id="updateUserId" name="更新人员id" underline="true"/> - </div> +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>添加</h5> </div> + <div class="ibox-content" id="commercialInfoForm"> + <div class="row row-lg"> + <div class="col-sm-12"> - <div class="row btn-group-m-t"> - <div class="col-sm-10"> - <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TCommercialInfoDlg.addSubmit()"/> - <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TCommercialInfoDlg.close()"/> + <div class="col-sm-12" style="cursor: pointer;text-align: left;"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >广告图名称:</label> + <input id="name" name="name" type="text" maxlength="40" placeholder="请输入广告图名称" style="height: 30px" required="required"> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >广告图图片:</label> + <#uploadImg id="url" /> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >端  口: </label> + <select id="device" style="width: 180px;height: 30px" name="device"> + <option value="">选择端口</option> + <option value="2">司机端</option> + <option value="1">小程序端</option> + </select> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >广告类型: </label> + <select id="type" style="width: 180px;height: 30px" name="type"> + <option value="">选择广告类型</option> + <option value="1">弹窗广告</option> + <option value="2" id="homePageBanner">首页底部广告</option> + </select> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >是否跳转: </label> + <select id="isJump" style="width: 180px;height: 30px" name="isJump"> + <option value="">选择是否跳转</option> + <option value="1">是</option> + <option value="0">否</option> + </select> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" id="jumpTypeIsShow" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >跳转类型: </label> + <select id="jumpType" style="width: 180px;height: 30px" name="jumpType"> + <option value="">选择跳转类型</option> + <option value="1">内部跳转</option> + <option value="2">外部跳转</option> + </select> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" id="jumpUrlIsShow" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >跳转链接: </label> + <input id="jumpUrl" name="jumpUrl" type="number" style="height: 30px" maxlength="200" placeholder="请输入跳转链接" required="required"> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >排  序: </label> + <input id="sort" name="sort" type="number" style="height: 30px" maxlength="4" placeholder="请输入排序" required="required"> + </div> + </div> + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-6 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >详情内容: </label> + <textarea type="text/plain" id="html" style="width:100%;height:350px;"></textarea> + </div> + </div> + + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TCommercialInfoDlg.close()"/> + <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TCommercialInfoDlg.addSubmit()"/> + </div> </div> </div> </div> - </div> </div> <script src="${ctxPath}/static/modular/system/tCommercial/tCommercial_info.js"></script> +<script type="text/javascript"> + $(function () { + var idCardPositive = new $WebUpload("url"); + idCardPositive.setUploadBarId("progressBar"); + idCardPositive.init(); + }); + //监听下拉菜单的变动操作 + $("#isJump").change(function(){ + if(this.value == 1){ + $("#jumpTypeIsShow").show() + $("#jumpUrlIsShow").show() + } + if(this.value == 0){ + $("#jumpTypeIsShow").hide() + $("#jumpUrlIsShow").hide() + } + }) + //监听下拉菜单的变动操作 + $("#device").change(function(){ + if(this.value == 1){ + $("#homePageBanner").show() + } + if(this.value == 2){ + $("#homePageBanner").hide() + } + }) +</script> @} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial_edit.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial_edit.html index 3382f17..bd552cb 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial_edit.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tCommercial/tCommercial_edit.html @@ -1,40 +1,156 @@ @layout("/common/_container.html"){ -<div class="ibox float-e-margins"> - <div class="ibox-content"> - <div class="form-horizontal"> - - <div class="row"> - <div class="col-sm-6 b-r"> - <#input id="id" name="主键" value="${item.id}" underline="true"/> - <#input id="type" name="类型(1=弹窗广告,2=底部广告)" value="${item.type}" underline="true"/> - <#input id="name" name="名称" value="${item.name}" underline="true"/> - <#input id="url" name="广告地址" value="${item.url}" underline="true"/> - <#input id="device" name="设备(1=小程序,2=司机端)" value="${item.device}" underline="true"/> - <#input id="isJump" name="是否跳转(0=否,1=是)" value="${item.isJump}" underline="true"/> - <#input id="jumpType" name="跳转类型(1=内部跳转,2=外部跳转)" value="${item.jumpType}" underline="true"/> - <#input id="jumpUrl" name="跳转连接" value="${item.jumpUrl}" /> - </div> - - <div class="col-sm-6"> - <#input id="html" name="富文本" value="${item.html}" underline="true"/> - <#input id="sort" name="排序" value="${item.sort}" underline="true"/> - <#input id="status" name="状态(1=正常,2=冻结,3=删除)" value="${item.status}" underline="true"/> - <#input id="createTime" name="添加时间" value="${item.createTime}" underline="true"/> - <#input id="createUserId" name="添加人员id" value="${item.createUserId}" underline="true"/> - <#input id="updateTime" name="更新时间" value="${item.updateTime}" underline="true"/> - <#input id="updateUserId" name="更新人员id" value="${item.updateUserId}" /> - </div> +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>添加</h5> </div> + <div class="ibox-content" id="commercialInfoForm"> + <div class="row row-lg"> + <div class="col-sm-12"> - <div class="row btn-group-m-t"> - <div class="col-sm-10"> - <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TCommercialInfoDlg.editSubmit()"/> - <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TCommercialInfoDlg.close()"/> + <input hidden id="id" value="${item.id}"> + <div class="col-sm-12" style="cursor: pointer;text-align: left;"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >广告图名称:</label> + <input id="name" value="${item.name}" type="text" maxlength="40" placeholder="请输入广告图名称" style="height: 30px" required="required"> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >广告图图片:</label> + <#uploadImg id="url" fileImg="${item.url}"/> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >端  口: </label> + <select id="device" style="width: 180px;height: 30px" name="device"> + <option value="2"${item.device == 2 ? 'selected=selected' : ''}>司机端</option> + <option value="1"${item.device == 1 ? 'selected=selected' : ''}>小程序端</option> + </select> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >广告类型: </label> + <select id="type" style="width: 180px;height: 30px" name="type"> + <option value="1"${item.type == 1 ? 'selected=selected' : ''}>弹窗广告</option> + <option id="homePageBanner" value="2"${item.type == 2 ? 'selected=selected' : ''}>首页底部广告</option> + </select> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >是否跳转: </label> + <select id="isJump" style="width: 180px;height: 30px" name="isJump"> + <option value="1"${item.isJump == 1 ? 'selected=selected' : ''}>是</option> + <option value="0"${item.isJump == 0 ? 'selected=selected' : ''}>否</option> + </select> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" id="jumpTypeIsShow" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >跳转类型: </label> + <select id="jumpType" style="width: 180px;height: 30px" name="jumpType"> + <option value="1"${item.jumpType == 1 ? 'selected=selected' : ''}>内部跳转</option> + <option value="2"${item.jumpType == 2 ? 'selected=selected' : ''}>外部跳转</option> + </select> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" id="jumpUrlIsShow" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >跳转链接: </label> + <input id="jumpUrl" value="${item.jumpUrl}" type="text" style="height: 30px" maxlength="200" placeholder="请输入跳转链接" required="required"> + </div> + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-3 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >排  序: </label> + <input id="sort" value="${item.sort}" type="number" style="height: 30px" maxlength="4" placeholder="请输入排序" required="required"> + </div> + </div> + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-6 control-label form-group" > + <span style="color:red">*</span> + <label class="control-label" >详情内容: </label> + <textarea type="text/plain" id="html" style="width:100%;height:350px;">${item.html}</textarea> + </div> + </div> + + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TCommercialInfoDlg.close()"/> + <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TCommercialInfoDlg.editSubmit()"/> + </div> </div> </div> </div> - </div> </div> <script src="${ctxPath}/static/modular/system/tCommercial/tCommercial_info.js"></script> +<script type="text/javascript"> + $(function () { + var idCardPositive = new $WebUpload("url"); + idCardPositive.setUploadBarId("progressBar"); + idCardPositive.init(); + + if(1 == $("#isJump").val()){ + $("#jumpTypeIsShow").show() + $("#jumpUrlIsShow").show() + }else { + $("#jumpTypeIsShow").hide() + $("#jumpUrlIsShow").hide() + } + + if(1 == $("#device").val()){ + $("#homePageBanner").show() + }else { + $("#homePageBanner").hide() + } + + }); + //监听下拉菜单的变动操作 + $("#isJump").change(function(){ + if(this.value == 1){ + $("#jumpTypeIsShow").show() + $("#jumpUrlIsShow").show() + } + if(this.value == 0){ + $("#jumpTypeIsShow").hide() + $("#jumpUrlIsShow").hide() + } + }) + //监听下拉菜单的变动操作 + $("#device").change(function(){ + if(this.value == 1){ + $("#homePageBanner").show() + } + if(this.value == 2){ + $("#homePageBanner").hide() + } + }) +</script> @} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tComplaint/tComplaint.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tComplaint/tComplaint.html index 2ed53d8..06db201 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tComplaint/tComplaint.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tComplaint/tComplaint.html @@ -33,7 +33,9 @@ <#button name="重置" icon="fa-trash" clickFun="TComplaint.resetSearch()" space="true"/> </div> <div class="col-sm-12"> - <#button name="立即处理" icon="" clickFun="TComplaint.immediatelyAudit()"/> + @if(shiro.hasPermission("/tComplaint/immediatelyAudit")){ + <#button name="立即处理" icon="fa-edit" clickFun="TComplaint.immediatelyAudit()"/> + @} @if(shiro.hasPermission("/tComplaint/delete")){ <#button name="删除" icon="fa-remove" clickFun="TComplaint.delete()" space="true"/> @} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver.html index 3e78867..e63bedd 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver.html @@ -27,18 +27,18 @@ <#button name="重置" icon="fa-trash" clickFun="TDriver.resetSearch()" space="true"/> </div> <div class="col-sm-12"> - <button type="button" class="btn btn-primary " onclick="TDriver.auditPage()" id="audit"> - <i class="fa "></i> 立即审核 - </button> - <button type="button" class="btn btn-primary " onclick="TDriver.export()" id="export"> - <i class="fa "></i> 导出 - </button> - <button type="button" class="btn btn-primary " onclick="TDriverException.tDriverException()" id="driverException"> - <i class="fa "></i> 异常 - </button> - <button type="button" class="btn btn-primary " onclick="TDriver.rechargeBalancePage()" id="recharge"> - <i class="fa "></i> 充值 - </button> + @if(shiro.hasPermission("/tDriver/auditPage")){ + <#button name="立即审核" icon="fa-edit" clickFun="TDriver.auditPage()"/> + @} + @if(shiro.hasPermission("/tDriver/export")){ + <#button name="导出" icon="" clickFun="TDriver.export()"/> + @} + @if(shiro.hasPermission("/tDriver/tDriver_exception")){ + <#button name="异常" icon="" clickFun="TDriverException.tDriverException()"/> + @} + @if(shiro.hasPermission("/tDriver/rechargeBalancePage")){ + <#button name="充值" icon="fa-edit" clickFun="TDriver.rechargeBalancePage()"/> + @} @if(shiro.hasPermission("/tAgent/add")){ <#button name="添加" icon="fa-plus" clickFun="TDriver.openAddTDriver()"/> @} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriverCommission.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriverCommission.html index 5fb163e..57ed60d 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriverCommission.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriverCommission.html @@ -27,9 +27,9 @@ <#button name="重置" icon="fa-trash" clickFun="TDriverCommission.resetSearch()" space="true"/> </div> <div class="col-sm-3"> - <button type="button" class="btn btn-primary " onclick="TDriverCommission.export()" id="export"> - <i class="fa "></i> 导出 - </button> + @if(shiro.hasPermission("/tDriver/export-commission")){ + <#button name="导出" icon="" clickFun="TDriverCommission.export()"/> + @} </div> </div> <!--<div class="hidden-xs" id="TDriverTableToolbar" role="group"> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tEvaluate/tEvaluate.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tEvaluate/tEvaluate.html index 47aaa96..5cc6243 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tEvaluate/tEvaluate.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tEvaluate/tEvaluate.html @@ -38,9 +38,9 @@ <#button name="重置" icon="fa-trash" clickFun="TEvaluate.resetSearch()" space="true"/> </div> <div class="col-sm-12"> - <button type="button" class="btn btn-primary " onclick="TEvaluate.export()" id="export"> - <i class="fa "></i> 导出 - </button> + @if(shiro.hasPermission("/tEvaluate/export")){ + <#button name="导出" icon="" clickFun="TEvaluate.export()"/> + @} </div> </div> <div class="hidden-xs" id="TEvaluateTableToolbar" role="group"> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/aboutUs.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/aboutUs.html new file mode 100644 index 0000000..5f6b358 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/aboutUs.html @@ -0,0 +1,41 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>关于我们</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="col-sm-12" style="cursor: pointer;text-align: left;"> + + <input hidden id="id" value="${html.id}"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label>关于我们</label> + </div> + + <div class="initialLevel col-sm-12 control-label form-group"> + <div class="initialLevel col-sm-6 control-label form-group" > + <textarea type="text/plain" id="html" name="html" style="width:100%;height:350px;">${html.html}</textarea> + </div> + </div> + + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="THtmlInfoDlg.editSubmit()"/> + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/agreementExplain.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/agreementExplain.html new file mode 100644 index 0000000..d6fb3ef --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/agreementExplain.html @@ -0,0 +1,124 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>协议管理</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + <div class="tabs-container"> + <ul class="nav nav-tabs"> + <li class="active"><a data-toggle="tab" href="#tab-1" aria-expanded="true">代驾服务协议与隐私政策保护</a></li> + <li class=""><a data-toggle="tab" href="#tab-2" aria-expanded="false">法律条款</a></li> + <li class=""><a data-toggle="tab" href="#tab-3" aria-expanded="false">个人信息处理规则</a></li> + </ul> + <div class="tab-content"> + <div id="tab-1" class="tab-pane active"> + <div class="panel-body"> + <textarea id="editor_1" type="text/plain" style="width:1200px;height:400px;">${one.html}</textarea> + <div class="row btn-group-m-t"> + <div class="col-sm-10 col-sm-offset-5"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="update_1(${one.id});"/> + </div> + </div> + </div> + </div> + <div id="tab-2" class="tab-pane"> + <div class="panel-body"> + <textarea type="text/plain" id="editor_2" style="width:1200px;height:400px;">${two.html}</textarea> + <div class="row btn-group-m-t"> + <div class="col-sm-10 col-sm-offset-5"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="update_2(${two.id});"/> + </div> + </div> + </div> + </div> + <div id="tab-3" class="tab-pane"> + <div class="panel-body"> + <textarea type="text/plain" id="editor_3" style="width:1200px;height:400px;">${three.html}</textarea> + <div class="row btn-group-m-t"> + <div class="col-sm-10 col-sm-offset-5"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="update_3(${three.id});"/> + </div> + </div> + </div> + </div> + + </div> + </div> + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml.js"></script> +<style type="text/css"> + .agentDriver{ + height: 30px; + width: 200px; + background-color: white; + border-radius: 6px; + } + .clause{ + height: 30px; + width: 80px; + background-color: white; + border-radius: 6px; + } + .personalRules{ + height: 30px; + width: 180px; + background-color: white; + border-radius: 6px; + } +</style> +<script type="text/javascript"> + var editor_1 = null; + var editor_2 = null; + var editor_3 = null; + $(function () { + //初始化编辑器 + editor_1 = UE.getEditor('editor_1'); + editor_2 = UE.getEditor('editor_2'); + editor_3 = UE.getEditor('editor_3'); + }); + + function update_1(id){ + if (editor_1.getContentTxt() == ""){ + Feng.error("内容不能为空!"); + return; + } + submitData(editor_1.getContent(),id); + } + function update_2(id){ + if (editor_2.getContentTxt() == ""){ + Feng.error("内容不能为空!"); + return; + } + submitData(editor_2.getContent(),id); + } + function update_3(id){ + if (editor_3.getContentTxt() == ""){ + Feng.error("内容不能为空!"); + return; + } + submitData(editor_3.getContent(),id); + } + + function submitData(content,id) { + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tHtml/update", function(data){ + Feng.success("编辑成功!"); + },function(data){ + Feng.error("编辑失败!" + data.responseJSON.message + "!"); + }); + ajax.set("html", content); + ajax.set("id", id); + ajax.start(); + } +</script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/cancellationAgreement.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/cancellationAgreement.html new file mode 100644 index 0000000..0723ecc --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/cancellationAgreement.html @@ -0,0 +1,41 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>注销协议</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="col-sm-12" style="cursor: pointer;text-align: left;"> + + <input hidden id="id" value="${html.id}"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label>注销协议</label> + </div> + + <div class="initialLevel col-sm-12 control-label form-group"> + <div class="initialLevel col-sm-6 control-label form-group" > + <textarea type="text/plain" id="html" name="html" style="width:100%;height:350px;">${html.html}</textarea> + </div> + </div> + + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="THtmlInfoDlg.editSubmit()"/> + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/commissionRuleExplain.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/commissionRuleExplain.html new file mode 100644 index 0000000..906485b --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/commissionRuleExplain.html @@ -0,0 +1,41 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>佣金规则说明</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="col-sm-12" style="cursor: pointer;text-align: left;"> + + <input hidden id="id" value="${html.id}"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label>佣金规则说明</label> + </div> + + <div class="initialLevel col-sm-12 control-label form-group"> + <div class="initialLevel col-sm-6 control-label form-group" > + <textarea type="text/plain" id="html" name="html" style="width:100%;height:350px;">${html.html}</textarea> + </div> + </div> + + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="THtmlInfoDlg.editSubmit()"/> + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/estimatedPriceExplain.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/estimatedPriceExplain.html new file mode 100644 index 0000000..0ffcfed --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/estimatedPriceExplain.html @@ -0,0 +1,41 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>预估价格说明</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="col-sm-12" style="cursor: pointer;text-align: left;"> + + <input hidden id="id" value="${html.id}"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label>预估价格说明</label> + </div> + + <div class="initialLevel col-sm-12 control-label form-group"> + <div class="initialLevel col-sm-6 control-label form-group" > + <textarea type="text/plain" id="html" name="html" style="width:100%;height:350px;">${html.html}</textarea> + </div> + </div> + + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="THtmlInfoDlg.editSubmit()"/> + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/integralExplain.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/integralExplain.html new file mode 100644 index 0000000..779690d --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/integralExplain.html @@ -0,0 +1,41 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>积分说明</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="col-sm-12" style="cursor: pointer;text-align: left;"> + + <input hidden id="id" value="${html.id}"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label>积分说明</label> + </div> + + <div class="initialLevel col-sm-12 control-label form-group"> + <div class="initialLevel col-sm-6 control-label form-group" > + <textarea type="text/plain" id="html" name="html" style="width:100%;height:350px;">${html.html}</textarea> + </div> + </div> + + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="THtmlInfoDlg.editSubmit()"/> + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/requirementsJoinExplain.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/requirementsJoinExplain.html new file mode 100644 index 0000000..c77f3d9 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/requirementsJoinExplain.html @@ -0,0 +1,72 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>加盟基本要求设置</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label style="color: #0C0C0C">加盟基本要求</label> + </div> + + <input hidden id="id" value="${id}"> + <input hidden id="array" value="${array}"> + + <div class="initialLevel col-sm-12 control-label form-group" id="rules" style="text-align: left" > + @for(ChargeStandard in array){ + <div name="rulesForm"> + <div class="initialLevel col-sm-12 control-label form-group" > + <span class="control-label" >要求1</span> + <input class="control-label" id="num1" name="num1" value="${ChargeStandard.num1}" type="text" placeholder="单行输入" style="height: 30px;width: 180px"> + @if(ChargeStandard.key == 0){ + <span class="fa fa-plus" onclick="THtml.addBox()"></span> + @} + @if(ChargeStandard.key == 1){ + <span class="fa fa-remove" onclick="THtml.delBox(this)"></span> + @} + </div> + </div> + @} + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="THtml.priceRulesSubmit()"/> + </div> + </div> + + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml.js"></script> +<style type="text/css"> + .agentDriver{ + height: 30px; + width: 200px; + background-color: white; + border-radius: 6px; + } + .clause{ + height: 30px; + width: 80px; + background-color: white; + border-radius: 6px; + } + .personalRules{ + height: 30px; + width: 180px; + background-color: white; + border-radius: 6px; + } +</style> +<script type="text/javascript"> +</script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/startingFareExplain.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/startingFareExplain.html new file mode 100644 index 0000000..72a1668 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/startingFareExplain.html @@ -0,0 +1,41 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>起步价说明</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="col-sm-12" style="cursor: pointer;text-align: left;"> + + <input hidden id="id" value="${html.id}"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label>起步价说明</label> + </div> + + <div class="initialLevel col-sm-12 control-label form-group"> + <div class="initialLevel col-sm-6 control-label form-group" > + <textarea type="text/plain" id="html" name="html" style="width:100%;height:350px;">${html.html}</textarea> + </div> + </div> + + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="THtmlInfoDlg.editSubmit()"/> + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml.html new file mode 100644 index 0000000..f6b6948 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml.html @@ -0,0 +1,38 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>管理</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + <div class="row"> + <div class="col-sm-3"> + <#NameCon id="condition" name="名称" /> + </div> + <div class="col-sm-3"> + <#button name="搜索" icon="fa-search" clickFun="THtml.search()"/> + </div> + </div> + <div class="hidden-xs" id="THtmlTableToolbar" role="group"> + @if(shiro.hasPermission("/tHtml/add")){ + <#button name="添加" icon="fa-plus" clickFun="THtml.openAddTHtml()"/> + @} + @if(shiro.hasPermission("/tHtml/update")){ + <#button name="修改" icon="fa-edit" clickFun="THtml.openTHtmlDetail()" space="true"/> + @} + @if(shiro.hasPermission("/tHtml/delete")){ + <#button name="删除" icon="fa-remove" clickFun="THtml.delete()" space="true"/> + @} + </div> + <#table id="THtmlTable"/> + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml_add.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml_add.html new file mode 100644 index 0000000..2cfa1da --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml_add.html @@ -0,0 +1,29 @@ +@layout("/common/_container.html"){ +<div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="form-horizontal"> + + <div class="row"> + <div class="col-sm-6 b-r"> + <#input id="id" name="主键" underline="true"/> + <#input id="type" name="类型(1=代驾服务协议与隐私政策保护,2=法律条款,3=个人信息处理规则,4=积分说明,5=佣金规则说明,6=行程录音说明,7=预估价格说明,8=加盟基本要求,9=加盟流程,10=起步价说明,11=注销协议,12=关于我们,13=司机消单说明)"/> + </div> + + <div class="col-sm-6"> + <#input id="html" name="H5内容" underline="true"/> + <#input id="createTime" name="添加时间" underline="true"/> + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10"> + <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="THtmlInfoDlg.addSubmit()"/> + <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="THtmlInfoDlg.close()"/> + </div> + </div> + </div> + + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml_edit.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml_edit.html new file mode 100644 index 0000000..ed0c89b --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tHtml_edit.html @@ -0,0 +1,29 @@ +@layout("/common/_container.html"){ +<div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="form-horizontal"> + + <div class="row"> + <div class="col-sm-6 b-r"> + <#input id="id" name="主键" value="${item.id}" underline="true"/> + <#input id="type" name="类型(1=代驾服务协议与隐私政策保护,2=法律条款,3=个人信息处理规则,4=积分说明,5=佣金规则说明,6=行程录音说明,7=预估价格说明,8=加盟基本要求,9=加盟流程,10=起步价说明,11=注销协议,12=关于我们,13=司机消单说明)" value="${item.type}" /> + </div> + + <div class="col-sm-6"> + <#input id="html" name="H5内容" value="${item.html}" underline="true"/> + <#input id="createTime" name="添加时间" value="${item.createTime}" /> + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10"> + <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="THtmlInfoDlg.editSubmit()"/> + <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="THtmlInfoDlg.close()"/> + </div> + </div> + </div> + + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tripRecordingExplain.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tripRecordingExplain.html new file mode 100644 index 0000000..15e4ab9 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tHtml/tripRecordingExplain.html @@ -0,0 +1,41 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>行程录音说明</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="col-sm-12" style="cursor: pointer;text-align: left;"> + + <input hidden id="id" value="${html.id}"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label>行程录音说明</label> + </div> + + <div class="initialLevel col-sm-12 control-label form-group"> + <div class="initialLevel col-sm-6 control-label form-group" > + <textarea type="text/plain" id="html" name="html" style="width:100%;height:350px;">${html.html}</textarea> + </div> + </div> + + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="THtmlInfoDlg.editSubmit()"/> + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg.html new file mode 100644 index 0000000..a9e5fd0 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg.html @@ -0,0 +1,116 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>启动页管理</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12" style="text-align: left" > + + <input hidden id="num2" value="${num2}"> + <div class="initialLevel col-sm-12 control-label form-group" > + <div class="initialLevel col-sm-12 control-label form-group" > + <label>状态</label> + <input type="radio" class="control-label" id="start" name="content" style="width: 2%" + @if(isNotEmpty(num2)){ + ${1 == num2 ? 'checked=checked' : ''} + @} + /> 开启 + <input type="radio" class="control-label" id="end" name="content" style="width: 2%" + @if(isNotEmpty(num2)){ + ${0 == num2 ? 'checked=checked' : ''} + @} + /> 关闭 + </div> + </div> + +<!-- <div class="initialLevel col-sm-12 control-label form-group" >--> +<!-- <div class="initialLevel col-sm-3 control-label form-group" >--> +<!-- <span style="color:red">*</span>--> +<!-- <label class="control-label" >图片:</label>--> +<!-- <#uploadImg id="img" fileImg=""/>--> +<!-- </div>--> +<!-- </div>--> + + <div class="row picture"> + <div class="col-sm-12"> + <div class="form-group"> + <label class="col-sm-1 control-label" style="width: 4%">图片</label> + <div class="col-sm-9"> + <div id="imgPreIds"> + <div id="imgs" style="float: left;"> + @if(isNotEmpty(imgList)){ + @for(img in imgList){ + <div style="float: left;margin-right: 20px;"> + <img name="startImg" src="${img.img}" style="width: 100px"> + <i class="fa fa-close" onclick="delImg(this)" style="color: red;font-size: 18px;position: absolute;"></i> + </div> + @} + @} + </div> + <div style="float: left;" id="imgUpload"> + <img width="100px" height="100px" + src="https://guangzhiyu-1311825864.cos.ap-chengdu.myqcloud.com/shangchuanpic.png" + onclick="TImgInfoDlg.uploadPhoto(this);"> + </div> + <input type="file" id="btn_file" name="schoolimg" + style="display: none" onchange="TImgInfoDlg.schoolprow()"> + <div id="divHidden"> + <!--隐藏上传回调后的图片路径--> + </div> + </div> + </div> + </div> + </div> + </div> + + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-12" style="text-align: center"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="TImgInfoDlg.updateSubmit()"/> + </div> + </div> + + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tImg/tImg.js"></script> +<script src="${ctxPath}/static/modular/system/tImg/tImg_info.js"></script> +<script type="text/javascript"> + $(function () { + var idCardPositive = new $WebUpload("img"); + idCardPositive.setUploadBarId("progressBar"); + idCardPositive.init(); + }); + $("#start").change(function(){ + var ajax = new $ax(Feng.ctxPath + "/tSystemConfig/updateStartState", function (data) { + Feng.success("修改成功!"); + location.reload() + TSystemConfig.table.refresh(); + }, function (data) { + Feng.error("修改失败!" + data.responseJSON.message + "!"); + }); + console.log($("#num2").val()) + ajax.set("num2",1); + ajax.start(); + }) + $("#end").change(function(){ + var ajax = new $ax(Feng.ctxPath + "/tSystemConfig/updateStartState", function (data) { + Feng.success("修改成功!"); + location.reload() + TSystemConfig.table.refresh(); + }, function (data) { + Feng.error("修改失败!" + data.responseJSON.message + "!"); + }); + console.log($("#num2").val()) + ajax.set("num2",0); + ajax.start(); + }) + +</script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg_add.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg_add.html new file mode 100644 index 0000000..85b16b8 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg_add.html @@ -0,0 +1,29 @@ +@layout("/common/_container.html"){ +<div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="form-horizontal"> + + <div class="row"> + <div class="col-sm-6 b-r"> + <#input id="id" name="主键" underline="true"/> + <#input id="type" name="数据类型(1=启动页)"/> + </div> + + <div class="col-sm-6"> + <#input id="img" name="图片地址" underline="true"/> + <#input id="createTime" name="添加时间" underline="true"/> + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10"> + <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TImgInfoDlg.addSubmit()"/> + <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TImgInfoDlg.close()"/> + </div> + </div> + </div> + + </div> +</div> +<script src="${ctxPath}/static/modular/system/tImg/tImg_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg_edit.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg_edit.html new file mode 100644 index 0000000..dad4ef8 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tImg/tImg_edit.html @@ -0,0 +1,29 @@ +@layout("/common/_container.html"){ +<div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="form-horizontal"> + + <div class="row"> + <div class="col-sm-6 b-r"> + <#input id="id" name="主键" value="${item.id}" underline="true"/> + <#input id="type" name="数据类型(1=启动页)" value="${item.type}" /> + </div> + + <div class="col-sm-6"> + <#input id="img" name="图片地址" value="${item.img}" underline="true"/> + <#input id="createTime" name="添加时间" value="${item.createTime}" /> + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10"> + <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TImgInfoDlg.editSubmit()"/> + <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TImgInfoDlg.close()"/> + </div> + </div> + </div> + + </div> +</div> +<script src="${ctxPath}/static/modular/system/tImg/tImg_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrder.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrder.html new file mode 100644 index 0000000..608cdd5 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrder.html @@ -0,0 +1,64 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>消单设置</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label style="color: #0C0C0C">消单原因</label> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-2" style="text-align: center"> + @if(shiro.hasPermission("/tMainContent/driverCancelOrder/add")){ + <#button btnCss="info" name="新增" id="ensure" icon="fa-check" clickFun="TMainContent.driverCancelOrderAdd()"/> + @} + @if(shiro.hasPermission("/tMainContent/driverCancelOrder/update")){ + <#button btnCss="info" name="编辑" id="ensure" icon="fa-check" clickFun="TMainContent.driverCancelOrderUpdate()"/> + @} + </div> + </div> + + <input hidden id="list" value="${list}"> + + <div class="initialLevel col-sm-12 control-label form-group" id="rules" style="text-align: left" > + @for(driverCancelOrder in list){ + <div class="initialLevel col-sm-12 control-label form-group" > + <input type="checkbox" class="control-label" id="content" name="content" style="width: 4%" checked>${driverCancelOrder.content}</input> + </div> + @} + </div> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label style="color: #0C0C0C">取单说明</label> + </div> + + <input hidden id="id" value="${html.id}"> + + <div class="initialLevel col-sm-12 control-label form-group"> + <div class="initialLevel col-sm-6 control-label form-group" > + <textarea type="text/plain" id="html" name="html" style="width:100%;height:350px;">${html.html}</textarea> + </div> + </div> + + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10" style="text-align: center"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="THtmlInfoDlg.editSubmit()"/> + </div> + </div> + + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent.js"></script> +<script src="${ctxPath}/static/modular/system/tHtml/tHtml_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrderAdd.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrderAdd.html new file mode 100644 index 0000000..98bf03c --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrderAdd.html @@ -0,0 +1,34 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="initialLevel col-sm-12 control-label form-group" id="rules" style="text-align: center" > + <div class="initialLevel col-sm-12 control-label form-group" > + <input class="control-label" id="content" name="content" placeholder="请输入" style="width: 180px;height: 30px"> + @if(key == 0){ + <span class="fa fa-plus" onclick="TMainContent.addBox()"></span> + @}else { + <span class="fa fa-remove" onclick="TMainContent.delBox(this)"></span> + @} + </div> + </div> + + </div> + </div> + </div> + <div class="row btn-group-m-t"> + <div class="col-sm-12" style="text-align: center"> + <#button btnCss="info" name="取消" id="cancel" icon="fa-check" clickFun="TMainContentInfoDlg.close()"/> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="TMainContentInfoDlg.driverCancelOrderAddSubmit()"/> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent.js"></script> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrderUpdate.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrderUpdate.html new file mode 100644 index 0000000..daea4ec --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/driverCancelOrderUpdate.html @@ -0,0 +1,34 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="initialLevel col-sm-12 control-label form-group" id="rules" style="text-align: center" > + <div class="initialLevel col-sm-12 control-label form-group" > + @for(transferOrder in list){ + <div class="initialLevel col-sm-12 control-label form-group" > + <input class="control-label" id="content" name="content" value="${transferOrder.content}" style="width: 180px;height: 30px"> + <span class="fa fa-remove" onclick="TMainContent.delBox(this)"></span> + </div> + @} + </div> + </div> + + </div> + </div> + </div> + <div class="row btn-group-m-t"> + <div class="col-sm-12" style="text-align: center"> + <#button btnCss="info" name="取消" id="cancel" icon="fa-check" clickFun="TMainContentInfoDlg.close()"/> + <#button btnCss="info" name="确定" id="ensure" icon="fa-check" clickFun="TMainContentInfoDlg.driverCancelOrderUpdateSubmit()"/> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent.js"></script> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent.html new file mode 100644 index 0000000..770d4ef --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent.html @@ -0,0 +1,38 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>管理</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + <div class="row"> + <div class="col-sm-3"> + <#NameCon id="condition" name="名称" /> + </div> + <div class="col-sm-3"> + <#button name="搜索" icon="fa-search" clickFun="TMainContent.search()"/> + </div> + </div> + <div class="hidden-xs" id="TMainContentTableToolbar" role="group"> + @if(shiro.hasPermission("/tMainContent/add")){ + <#button name="添加" icon="fa-plus" clickFun="TMainContent.openAddTMainContent()"/> + @} + @if(shiro.hasPermission("/tMainContent/update")){ + <#button name="修改" icon="fa-edit" clickFun="TMainContent.openTMainContentDetail()" space="true"/> + @} + @if(shiro.hasPermission("/tMainContent/delete")){ + <#button name="删除" icon="fa-remove" clickFun="TMainContent.delete()" space="true"/> + @} + </div> + <#table id="TMainContentTable"/> + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent_add.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent_add.html new file mode 100644 index 0000000..b300cfa --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent_add.html @@ -0,0 +1,30 @@ +@layout("/common/_container.html"){ +<div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="form-horizontal"> + + <div class="row"> + <div class="col-sm-6 b-r"> + <#input id="id" name="主键" underline="true"/> + <#input id="type" name="数据类型(1=转单,2=司机消单,3=用户取消订单)" underline="true"/> + <#input id="content" name="内容"/> + </div> + + <div class="col-sm-6"> + <#input id="status" name="状态(1=正常,2=冻结,3=删除)" underline="true"/> + <#input id="createTime" name="添加时间" underline="true"/> + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10"> + <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TMainContentInfoDlg.addSubmit()"/> + <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TMainContentInfoDlg.close()"/> + </div> + </div> + </div> + + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent_edit.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent_edit.html new file mode 100644 index 0000000..9ed74f6 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/tMainContent_edit.html @@ -0,0 +1,30 @@ +@layout("/common/_container.html"){ +<div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="form-horizontal"> + + <div class="row"> + <div class="col-sm-6 b-r"> + <#input id="id" name="主键" value="${item.id}" underline="true"/> + <#input id="type" name="数据类型(1=转单,2=司机消单,3=用户取消订单)" value="${item.type}" underline="true"/> + <#input id="content" name="内容" value="${item.content}" /> + </div> + + <div class="col-sm-6"> + <#input id="status" name="状态(1=正常,2=冻结,3=删除)" value="${item.status}" underline="true"/> + <#input id="createTime" name="添加时间" value="${item.createTime}" /> + </div> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-10"> + <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TMainContentInfoDlg.editSubmit()"/> + <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TMainContentInfoDlg.close()"/> + </div> + </div> + </div> + + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrder.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrder.html new file mode 100644 index 0000000..aaba869 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrder.html @@ -0,0 +1,44 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>转单设置</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label style="color: #0C0C0C">转单原因</label> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-2" style="text-align: center"> + @if(shiro.hasPermission("/tMainContent/transferOrder/add")){ + <#button btnCss="info" name="新增" id="ensure" icon="fa-check" clickFun="TMainContent.transferOrderAdd()"/> + @} + @if(shiro.hasPermission("/tMainContent/transferOrder/update")){ + <#button btnCss="info" name="编辑" id="ensure" icon="fa-check" clickFun="TMainContent.transferOrderUpdate()"/> + @} + </div> + </div> + + <input hidden id="list" value="${list}"> + + <div class="initialLevel col-sm-12 control-label form-group" id="rules" style="text-align: left" > + @for(transferOrder in list){ + <div class="initialLevel col-sm-12 control-label form-group" > + <input type="checkbox" class="control-label" id="content" name="content" style="width: 4%" checked>${transferOrder.content}</input> + </div> + @} + </div> + + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrderAdd.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrderAdd.html new file mode 100644 index 0000000..72b3eac --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrderAdd.html @@ -0,0 +1,34 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="initialLevel col-sm-12 control-label form-group" id="rules" style="text-align: center" > + <div class="initialLevel col-sm-12 control-label form-group" > + <input class="control-label" id="content" name="content" placeholder="请输入" style="width: 180px;height: 30px"> + @if(key == 0){ + <span class="fa fa-plus" onclick="TMainContent.addBox()"></span> + @}else { + <span class="fa fa-remove" onclick="TMainContent.delBox(this)"></span> + @} + </div> + </div> + + </div> + </div> + </div> + <div class="row btn-group-m-t"> + <div class="col-sm-12" style="text-align: center"> + <#button btnCss="info" name="取消" id="cancel" icon="fa-check" clickFun="TMainContentInfoDlg.close()"/> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="TMainContentInfoDlg.transferOrderAddSubmit()"/> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent.js"></script> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrderUpdate.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrderUpdate.html new file mode 100644 index 0000000..1a2cded --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/transferOrderUpdate.html @@ -0,0 +1,34 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="initialLevel col-sm-12 control-label form-group" id="rules" style="text-align: center" > + <div class="initialLevel col-sm-12 control-label form-group" > + @for(transferOrder in list){ + <div class="initialLevel col-sm-12 control-label form-group" > + <input class="control-label" id="content" name="content" value="${transferOrder.content}" style="width: 180px;height: 30px"> + <span class="fa fa-remove" onclick="TMainContent.delBox(this)"></span> + </div> + @} + </div> + </div> + + </div> + </div> + </div> + <div class="row btn-group-m-t"> + <div class="col-sm-12" style="text-align: center"> + <#button btnCss="info" name="取消" id="cancel" icon="fa-check" clickFun="TMainContentInfoDlg.close()"/> + <#button btnCss="info" name="确定" id="ensure" icon="fa-check" clickFun="TMainContentInfoDlg.transferOrderUpdateSubmit()"/> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent.js"></script> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrder.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrder.html new file mode 100644 index 0000000..6d706c1 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrder.html @@ -0,0 +1,44 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-title"> + <h5>取消订单设置</h5> + </div> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="initialLevel col-sm-12 control-label form-group" > + <label style="color: #0C0C0C">取消订单原因</label> + </div> + + <div class="row btn-group-m-t"> + <div class="col-sm-2" style="text-align: center"> + @if(shiro.hasPermission("/tMainContent/userCancelOrder/add")){ + <#button btnCss="info" name="新增" id="ensure" icon="fa-check" clickFun="TMainContent.userCancelOrderAdd()"/> + @} + @if(shiro.hasPermission("/tMainContent/userCancelOrder/update")){ + <#button btnCss="info" name="编辑" id="ensure" icon="fa-check" clickFun="TMainContent.userCancelOrderUpdate()"/> + @} + </div> + </div> + + <input hidden id="list" value="${list}"> + + <div class="initialLevel col-sm-12 control-label form-group" id="rules" style="text-align: left" > + @for(userCancelOrder in list){ + <div class="initialLevel col-sm-12 control-label form-group" > + <input type="checkbox" class="control-label" id="content" name="content" style="width: 4%" checked>${userCancelOrder.content}</input> + </div> + @} + </div> + + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrderAdd.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrderAdd.html new file mode 100644 index 0000000..2ca430a --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrderAdd.html @@ -0,0 +1,34 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="initialLevel col-sm-12 control-label form-group" id="rules" style="text-align: center" > + <div class="initialLevel col-sm-12 control-label form-group" > + <input class="control-label" id="content" name="content" placeholder="请输入" style="width: 180px;height: 30px"> + @if(key == 0){ + <span class="fa fa-plus" onclick="TMainContent.addBox()"></span> + @}else { + <span class="fa fa-remove" onclick="TMainContent.delBox(this)"></span> + @} + </div> + </div> + + </div> + </div> + </div> + <div class="row btn-group-m-t"> + <div class="col-sm-12" style="text-align: center"> + <#button btnCss="info" name="取消" id="cancel" icon="fa-check" clickFun="TMainContentInfoDlg.close()"/> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="TMainContentInfoDlg.userCancelOrderAddSubmit()"/> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent.js"></script> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrderUpdate.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrderUpdate.html new file mode 100644 index 0000000..837f8a5 --- /dev/null +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tMainContent/userCancelOrderUpdate.html @@ -0,0 +1,34 @@ +@layout("/common/_container.html"){ +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + + <div class="initialLevel col-sm-12 control-label form-group" id="rules" style="text-align: center" > + <div class="initialLevel col-sm-12 control-label form-group" > + @for(transferOrder in list){ + <div class="initialLevel col-sm-12 control-label form-group" > + <input class="control-label" id="content" name="content" value="${transferOrder.content}" style="width: 180px;height: 30px"> + <span class="fa fa-remove" onclick="TMainContent.delBox(this)"></span> + </div> + @} + </div> + </div> + + </div> + </div> + </div> + <div class="row btn-group-m-t"> + <div class="col-sm-12" style="text-align: center"> + <#button btnCss="info" name="取消" id="cancel" icon="fa-check" clickFun="TMainContentInfoDlg.close()"/> + <#button btnCss="info" name="确定" id="ensure" icon="fa-check" clickFun="TMainContentInfoDlg.userCancelOrderUpdateSubmit()"/> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent.js"></script> +<script src="${ctxPath}/static/modular/system/tMainContent/tMainContent_info.js"></script> +@} diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tOrder/tOrder.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tOrder/tOrder.html index 9f0fd9b..81e2201 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tOrder/tOrder.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tOrder/tOrder.html @@ -54,15 +54,15 @@ <#button name="重置" icon="fa-trash" clickFun="TOrder.resetSearch()" space="true"/> </div> <div class="col-sm-12"> - <button type="button" class="btn btn-primary " onclick="TOrder.cancelOrder()" id="cancelOrder"> - <i class="fa "></i> 取消订单 - </button> - <button type="button" class="btn btn-primary " onclick="TOrder.tOrderException()" id="orderException"> - <i class="fa "></i> 异常 - </button> - <button type="button" class="btn btn-primary " onclick="TOrder.export()" id="export"> - <i class="fa "></i> 导出 - </button> + @if(shiro.hasPermission("/tOrder/cancelOrder")){ + <#button name="取消订单" icon="" clickFun="TOrder.cancelOrder()"/> + @} + @if(shiro.hasPermission("/tOrder/tOrder-exception")){ + <#button name="异常" icon="" clickFun="TOrder.tOrderException()"/> + @} + @if(shiro.hasPermission("/tOrder/export")){ + <#button name="导出" icon="" clickFun="TOrder.export()"/> + @} </div> <div class="hidden-xs" id="TOrderTableToolbar" role="group"> @if(shiro.hasPermission("/tOrder/add")){ diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRechargeRecord/tRechargeRecordAgent.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRechargeRecord/tRechargeRecordAgent.html index 20a852f..ccf2591 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRechargeRecord/tRechargeRecordAgent.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRechargeRecord/tRechargeRecordAgent.html @@ -23,9 +23,9 @@ <#button name="重置" icon="fa-trash" clickFun="TRechargeRecordAgent.resetSearch()" space="true"/> </div> <div class="col-sm-12"> - <button type="button" class="btn btn-primary " onclick="TRechargeRecordAgent.export()" id="export"> - <i class="fa "></i> 导出 - </button> + @if(shiro.hasPermission("/tRechargeRecord/exportAgentRecharge")){ + <#button name="导出" icon="" clickFun="TRechargeRecordAgent.export()"/> + @} </div> </div> <!--<div class="hidden-xs" id="TRechargeRecordTableToolbar" role="group"> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRechargeRecord/tRechargeRecordUser.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRechargeRecord/tRechargeRecordUser.html index b438d4d..b6fdb69 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRechargeRecord/tRechargeRecordUser.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRechargeRecord/tRechargeRecordUser.html @@ -26,9 +26,9 @@ <#button name="重置" icon="fa-trash" clickFun="TRechargeRecordUser.resetSearch()" space="true"/> </div> <div class="col-sm-12"> - <button type="button" class="btn btn-primary " onclick="TRechargeRecordUser.export()" id="export"> - <i class="fa "></i> 导出 - </button> + @if(shiro.hasPermission("/tRechargeRecord/exportUserRecharge")){ + <#button name="导出" icon="" clickFun="TRechargeRecordUser.export()"/> + @} </div> </div> <div class="hidden-xs" id="TRechargeRecordTableToolbar" role="group"> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRevenue/tRevenue.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRevenue/tRevenue.html index e13daed..8fca86a 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRevenue/tRevenue.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tRevenue/tRevenue.html @@ -39,9 +39,9 @@ <#button name="重置" icon="fa-trash" clickFun="TRevenue.resetSearch()" space="true"/> </div> <div class="col-sm-12"> - <button type="button" class="btn btn-primary " onclick="TRevenue.export()" id="export"> - <i class="fa "></i> 导出 - </button> + @if(shiro.hasPermission("/tRevenue/export")){ + <#button name="导出" icon="" clickFun="TRevenue.export()"/> + @} </div> </div> <div class="hidden-xs" id="TRevenueTableToolbar" role="group"> diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tSystemConfig/tSystemConfigPriceRules.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tSystemConfig/tSystemConfigPriceRules.html index c26285f..f670f7f 100644 --- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tSystemConfig/tSystemConfigPriceRules.html +++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tSystemConfig/tSystemConfigPriceRules.html @@ -83,18 +83,30 @@ <input class="control-label" id="num16" name="num16" value="${ExtraCost.num4}" type="number" style="height: 30px;width: 80px"> <span class="control-label" >元/分钟</span> </div> + <input hidden id="zcOne" value="${zcOne}"> <div class="initialLevel col-sm-12 control-label form-group" > - <span class="control-label" >恶劣天气</span> - <input class="control-label" id="num17" name="num17" value="${ExtraCost.num5}" type="number" style="height: 30px;width: 80px"> - <span class="control-label" >公里以内,加收</span> - <input class="control-label" id="num18" name="num18" value="${ExtraCost.num6}" type="number" style="height: 30px;width: 80px"> - <span class="control-label" >元,超出</span> - <input class="control-label" id="num19" name="num19" value="${ExtraCost.num7}" type="number" style="height: 30px;width: 80px"> - <span class="control-label" >公里,收取订单的</span> - <input class="control-label" id="num20" name="num20" value="${ExtraCost.num8}" type="number" style="height: 30px;width: 80px"> - <span class="control-label" >倍计费,最高收取</span> - <input class="control-label" id="num21" name="num21" value="${ExtraCost.num9}" type="number" style="height: 30px;width: 80px"> - <span class="control-label" >元</span> + <div class="col-sm-1"> + <input type="checkbox" class="js-switch1" id="isTaxiCar" + @if(isNotEmpty(zcOne)){ + ${1 == zcOne ? 'checked=checked' : ''} + @} + /> + </div> + @if(1 == zcOne){ + <div class="initialLevel col-sm-10 control-label form-group" > + <span class="control-label" >恶劣天气</span> + <input class="control-label" id="num17" name="num17" value="${ExtraCost.num5}" type="number" style="height: 30px;width: 80px"> + <span class="control-label" >公里以内,加收</span> + <input class="control-label" id="num18" name="num18" value="${ExtraCost.num6}" type="number" style="height: 30px;width: 80px"> + <span class="control-label" >元,超出</span> + <input class="control-label" id="num19" name="num19" value="${ExtraCost.num7}" type="number" style="height: 30px;width: 80px"> + <span class="control-label" >公里,收取订单的</span> + <input class="control-label" id="num20" name="num20" value="${ExtraCost.num8}" type="number" style="height: 30px;width: 80px"> + <span class="control-label" >倍计费,最高收取</span> + <input class="control-label" id="num21" name="num21" value="${ExtraCost.num9}" type="number" style="height: 30px;width: 80px"> + <span class="control-label" >元</span> + </div> + @} </div> </div> @@ -113,4 +125,26 @@ </div> <script src="${ctxPath}/static/modular/system/tSystemConfig/tSystemConfig.js"></script> <script src="${ctxPath}/static/modular/system/tSystemConfig/tSystemConfig_info.js"></script> +<script type="text/javascript"> + var elem1 = document.querySelector(".js-switch1"); + var init1 = new Switchery(elem1); + + + $("#isTaxiCar").change(function(){ + var ajax = new $ax(Feng.ctxPath + "/tSystemConfig/openOrClose", function (data) { + Feng.success("修改成功!"); + location.reload() + TSystemConfig.table.refresh(); + }, function (data) { + Feng.error("修改失败!" + data.responseJSON.message + "!"); + }); + console.log($("#zcOne").val()) + if(1 == $("#zcOne").val()){ + ajax.set("num1",0); + }else { + ajax.set("num1",1); + } + ajax.start(); + }) +</script> @} diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tAgent/tAgent.js b/management/guns-admin/src/main/webapp/static/modular/system/tAgent/tAgent.js index 044ec4d..f815e7a 100644 --- a/management/guns-admin/src/main/webapp/static/modular/system/tAgent/tAgent.js +++ b/management/guns-admin/src/main/webapp/static/modular/system/tAgent/tAgent.js @@ -19,6 +19,7 @@ {title: '姓名', field: 'principal', visible: true, align: 'center', valign: 'middle'}, {title: '联系电话', field: 'principalPhone', visible: true, align: 'center', valign: 'middle'}, {title: '代理区域', field: 'area', visible: true, align: 'center', valign: 'middle'}, + {title: '客服电话', field: 'serviceCalls', visible: true, align: 'center', valign: 'middle'}, {title: '订单数量', field: 'orderSum', visible: true, align: 'center', valign: 'middle'}, {title: '有效订单', field: 'validOrder', visible: true, align: 'center', valign: 'middle'}, {title: '已发放优惠券', field: 'issuedCoupon', visible: true, align: 'center', valign: 'middle'}, diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tAppUser/tAppUserException.js b/management/guns-admin/src/main/webapp/static/modular/system/tAppUser/tAppUserException.js index b5c7014..2083ba3 100644 --- a/management/guns-admin/src/main/webapp/static/modular/system/tAppUser/tAppUserException.js +++ b/management/guns-admin/src/main/webapp/static/modular/system/tAppUser/tAppUserException.js @@ -22,8 +22,18 @@ {title: '优惠券总数', field: 'couponSum', visible: true, align: 'center', valign: 'middle'}, {title: '消费次数', field: 'consumeSum', visible: true, align: 'center', valign: 'middle'}, {title: '历史消费', field: 'consumePrice', visible: true, align: 'center', valign: 'middle'}, - {title: '最后一次消费时间', field: 'emergencyContact', visible: true, align: 'center', valign: 'middle'}, - {title: '状态', field: 'status', visible: true, align: 'center', valign: 'middle'}, + {title: '最后一次消费时间', field: 'lastConsumptionTime', visible: true, align: 'center', valign: 'middle'}, + {title: '状态', field: 'status', visible: true, align: 'center', valign: 'middle', + formatter: function (value, row) { + if (row.status === 1){ + return '<span>正常</span>' + }else if (row.status === 2){ + return '<span>冻结</span>' + }else if (row.status === 3){ + return '<span>已删除</span>' + } + } + }, {title: '操作', visible: true, align: 'center', valign: 'middle',width:150, formatter: function (value, row) { if (row.status === 1){ diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tBroadcast/tBroadcast.js b/management/guns-admin/src/main/webapp/static/modular/system/tBroadcast/tBroadcast.js index 5734e4d..2257664 100644 --- a/management/guns-admin/src/main/webapp/static/modular/system/tBroadcast/tBroadcast.js +++ b/management/guns-admin/src/main/webapp/static/modular/system/tBroadcast/tBroadcast.js @@ -17,9 +17,9 @@ {title: '主键', field: 'id', visible: false, align: 'center', valign: 'middle'}, {title: '添加时间', field: 'createTime', visible: true, align: 'center', valign: 'middle'}, {title: '消息内容', field: 'content', visible: true, align: 'center', valign: 'middle'}, - {title: '是否显示', field: 'isShow', visible: true, align: 'center', valign: 'middle', + {title: '是否显示', field: 'show', visible: true, align: 'center', valign: 'middle', formatter: function (value, row) { - if (row.isShow){ + if (row.show){ return '<span>是</span>' }else { return '<span>否</span>' @@ -30,10 +30,10 @@ {title: '状态(1=正常,2=冻结,3=删除)', field: 'status', visible: false, align: 'center', valign: 'middle'}, {title: '操作', visible: true, align: 'center', valign: 'middle',width:150, formatter: function (value, row) { - if (row.isShow){ - return '<a href="#" onclick="TBroadcast.updateStatus('+row.id+')" style="color:red">下架</a>' + if (row.upDown === 1){ + return '<a href="#" onclick="TBroadcast.down('+row.id+')" style="color:red">下架</a>' }else{ - return '<a href="#" onclick="TBroadcast.updateStatus('+row.id+')" style="color:blue">上架</a>' +' ' + + return '<a href="#" onclick="TBroadcast.up('+row.id+')" style="color:blue">上架</a>' +' ' + '<a href="#" onclick="TBroadcast.delete('+row.id+')" style="color:red">删除</a>' } } @@ -62,7 +62,7 @@ var index = layer.open({ type: 2, title: '添加', - area: ['800px', '420px'], //宽高 + area: ['100%', '100%'], //宽高 fix: false, //不固定 maxmin: true, content: Feng.ctxPath + '/tBroadcast/tBroadcast_add' @@ -78,7 +78,7 @@ var index = layer.open({ type: 2, title: '详情', - area: ['800px', '420px'], //宽高 + area: ['100%', '100%'], //宽高 fix: false, //不固定 maxmin: true, content: Feng.ctxPath + '/tBroadcast/tBroadcast_update/' + TBroadcast.seItem.id @@ -92,8 +92,13 @@ */ TBroadcast.delete = function (id) { var ajax = new $ax(Feng.ctxPath + "/tBroadcast/delete", function (data) { - Feng.success("删除成功!"); - TBroadcast.table.refresh(); + if(500 == data.code){ + Feng.error(data.message); + return; + }else { + Feng.success("删除成功!"); + TBroadcast.table.refresh(); + } }, function (data) { Feng.error("删除失败!" + data.responseJSON.message + "!"); }); @@ -102,6 +107,44 @@ }; /** + * 上架 + */ +TBroadcast.up = function (id) { + var ajax = new $ax(Feng.ctxPath + "/tBroadcast/up", function (data) { + if(500 == data.code){ + Feng.error(data.message); + return; + }else { + Feng.success("上架成功!"); + TBroadcast.table.refresh(); + } + }, function (data) { + Feng.error("上架失败!" + data.responseJSON.message + "!"); + }); + ajax.set("id",id); + ajax.start(); +}; + +/** + * 下架 + */ +TBroadcast.down = function (id) { + var ajax = new $ax(Feng.ctxPath + "/tBroadcast/down", function (data) { + if(500 == data.code){ + Feng.error(data.message); + return; + }else { + Feng.success("下架成功!"); + TBroadcast.table.refresh(); + } + }, function (data) { + Feng.error("下架失败!" + data.responseJSON.message + "!"); + }); + ajax.set("id",id); + ajax.start(); +}; + +/** * 查询列表 */ TBroadcast.search = function () { diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tBroadcast/tBroadcast_info.js b/management/guns-admin/src/main/webapp/static/modular/system/tBroadcast/tBroadcast_info.js index 54f4bdf..af3a5f2 100644 --- a/management/guns-admin/src/main/webapp/static/modular/system/tBroadcast/tBroadcast_info.js +++ b/management/guns-admin/src/main/webapp/static/modular/system/tBroadcast/tBroadcast_info.js @@ -2,7 +2,39 @@ * 初始化详情对话框 */ var TBroadcastInfoDlg = { - tBroadcastInfoData : {} + tBroadcastInfoData : {}, + validateFields: { + content: { + validators: { + notEmpty: { + message: '消息内容不能为空' + } + } + }, + sort: { + validators: { + notEmpty: { + message: '排序不能为空' + } + } + }, + show: { + validators: { + notEmpty: { + message: '请选择是否显示' + } + } + }, + } +}; + +/** + * 验证数据是否为空 + */ +TBroadcastInfoDlg.validate = function () { + $('#broadcastInfoForm').data("bootstrapValidator").resetForm(); + $('#broadcastInfoForm').bootstrapValidator('validate'); + return $("#broadcastInfoForm").data('bootstrapValidator').isValid(); }; /** @@ -49,6 +81,8 @@ .set('content') .set('sort') .set('status') + .set('show') + .set('upDown') .set('createTime'); } @@ -60,11 +94,20 @@ this.clearData(); this.collectData(); + if(!this.validate()){ + return ; + } + //提交信息 var ajax = new $ax(Feng.ctxPath + "/tBroadcast/add", function(data){ - Feng.success("添加成功!"); - window.parent.TBroadcast.table.refresh(); - TBroadcastInfoDlg.close(); + if(500 == data.code){ + Feng.error(data.message); + return; + }else { + Feng.success("添加成功!"); + window.parent.TBroadcast.table.refresh(); + TBroadcastInfoDlg.close(); + } },function(data){ Feng.error("添加失败!" + data.responseJSON.message + "!"); }); @@ -80,11 +123,20 @@ this.clearData(); this.collectData(); + if(!this.validate()){ + return ; + } + //提交信息 var ajax = new $ax(Feng.ctxPath + "/tBroadcast/update", function(data){ - Feng.success("修改成功!"); - window.parent.TBroadcast.table.refresh(); - TBroadcastInfoDlg.close(); + if(500 == data.code){ + Feng.error(data.message); + return; + }else { + Feng.success("修改成功!"); + window.parent.TBroadcast.table.refresh(); + TBroadcastInfoDlg.close(); + } },function(data){ Feng.error("修改失败!" + data.responseJSON.message + "!"); }); @@ -93,5 +145,5 @@ } $(function() { - + Feng.initValidator("broadcastInfoForm", TBroadcastInfoDlg.validateFields); }); diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tCommercial/tCommercial.js b/management/guns-admin/src/main/webapp/static/modular/system/tCommercial/tCommercial.js index 8209a62..2c5dda3 100644 --- a/management/guns-admin/src/main/webapp/static/modular/system/tCommercial/tCommercial.js +++ b/management/guns-admin/src/main/webapp/static/modular/system/tCommercial/tCommercial.js @@ -14,21 +14,73 @@ TCommercial.initColumn = function () { return [ {field: 'selectItem', radio: true}, - {title: '主键', field: 'id', visible: true, align: 'center', valign: 'middle'}, - {title: '类型(1=弹窗广告,2=底部广告)', field: 'type', visible: true, align: 'center', valign: 'middle'}, - {title: '名称', field: 'name', visible: true, align: 'center', valign: 'middle'}, - {title: '广告地址', field: 'url', visible: true, align: 'center', valign: 'middle'}, - {title: '设备(1=小程序,2=司机端)', field: 'device', visible: true, align: 'center', valign: 'middle'}, - {title: '是否跳转(0=否,1=是)', field: 'isJump', visible: true, align: 'center', valign: 'middle'}, - {title: '跳转类型(1=内部跳转,2=外部跳转)', field: 'jumpType', visible: true, align: 'center', valign: 'middle'}, - {title: '跳转连接', field: 'jumpUrl', visible: true, align: 'center', valign: 'middle'}, - {title: '富文本', field: 'html', visible: true, align: 'center', valign: 'middle'}, - {title: '排序', field: 'sort', visible: true, align: 'center', valign: 'middle'}, - {title: '状态(1=正常,2=冻结,3=删除)', field: 'status', visible: true, align: 'center', valign: 'middle'}, - {title: '添加时间', field: 'createTime', visible: true, align: 'center', valign: 'middle'}, - {title: '添加人员id', field: 'createUserId', visible: true, align: 'center', valign: 'middle'}, - {title: '更新时间', field: 'updateTime', visible: true, align: 'center', valign: 'middle'}, - {title: '更新人员id', field: 'updateUserId', visible: true, align: 'center', valign: 'middle'} + {title: '主键', field: 'id', visible: false, align: 'center', valign: 'middle'}, + {title: '添加时间', field: 'createTime', visible: true, align: 'center', valign: 'middle'}, + {title: '广告图名称', field: 'name', visible: true, align: 'center', valign: 'middle'}, + {title: '广告类型', field: 'type', visible: true, align: 'center', valign: 'middle', + formatter: function (value, row) { + if (row.type === 1){ + return '<span>弹窗广告</span>' + }else if(row.type === 2){ + return '<span>底部广告</span>' + } + } + }, + {title: '广告图图片', field: 'url', visible: true, align: 'center', valign: 'middle'}, + {title: '端口(设备)', field: 'device', visible: true, align: 'center', valign: 'middle', + formatter: function (value, row) { + if (row.device === 1){ + return '<span>小程序</span>' + }else if(row.device === 2){ + return '<span>司机端</span>' + } + } + }, + {title: '是否跳转', field: 'isJump', visible: true, align: 'center', valign: 'middle', + formatter: function (value, row) { + if (row.isJump === 0){ + return '<span>否</span>' + }else if(row.isJump === 1){ + return '<span>是</span>' + } + } + }, + {title: '跳转类型', field: 'jumpType', visible: true, align: 'center', valign: 'middle', + formatter: function (value, row) { + if (row.jumpType === 1){ + return '<span>内部跳转</span>' + }else if(row.jumpType === 2){ + return '<span>外部跳转</span>' + } + } + }, + {title: '跳转内容', field: 'jumpUrl', visible: true, align: 'center', valign: 'middle'}, + {title: '状态', field: 'onOffLine', visible: true, align: 'center', valign: 'middle', + formatter: function (value, row) { + if (row.onOffLine === 1){ + return '<span>已上线</span>' + }else if(row.onOffLine === 2){ + return '<span>已下线</span>' + } + } + }, + {title: '富文本', field: 'html', visible: false, align: 'center', valign: 'middle'}, + {title: '排序', field: 'sort', visible: false, align: 'center', valign: 'middle'}, + {title: '状态(1=正常,2=冻结,3=删除)', field: 'status', visible: false, align: 'center', valign: 'middle'}, + {title: '添加人员id', field: 'createUserId', visible: false, align: 'center', valign: 'middle'}, + {title: '更新时间', field: 'updateTime', visible: false, align: 'center', valign: 'middle'}, + {title: '更新人员id', field: 'updateUserId', visible: false, align: 'center', valign: 'middle'}, + {title: '操作', visible: true, align: 'center', valign: 'middle',width:150, + formatter: function (value, row) { + if (row.onOffLine === 1){ + return '<a href="#" onclick="TCommercial.offLineState('+row.id+')" style="color:red">下线</a>' +' ' + + '<a href="#" onclick="TCommercial.delete('+row.id+','+row.onOffLine+')" style="color:red">删除</a>' + }else if(row.onOffLine === 2){ + return '<a href="#" onclick="TCommercial.onLineState('+row.id+')" style="color:blue">上线</a>' +' ' + + '<a href="#" onclick="TCommercial.delete('+row.id+','+row.onOffLine+')" style="color:red">删除</a>' + } + } + } ]; }; @@ -53,7 +105,7 @@ var index = layer.open({ type: 2, title: '添加', - area: ['800px', '420px'], //宽高 + area: ['100%', '100%'], //宽高 fix: false, //不固定 maxmin: true, content: Feng.ctxPath + '/tCommercial/tCommercial_add' @@ -64,12 +116,12 @@ /** * 打开查看详情 */ -TCommercial.openTCommercialDetail = function () { - if (this.check()) { +TCommercial.openTCommercialDetail = function (id) { + if(this.check()){ var index = layer.open({ type: 2, title: '详情', - area: ['800px', '420px'], //宽高 + area: ['100%', '100%'], //宽高 fix: false, //不固定 maxmin: true, content: Feng.ctxPath + '/tCommercial/tCommercial_update/' + TCommercial.seItem.id @@ -81,19 +133,61 @@ /** * 删除 */ -TCommercial.delete = function () { - if (this.check()) { - var ajax = new $ax(Feng.ctxPath + "/tCommercial/delete", function (data) { - Feng.success("删除成功!"); - TCommercial.table.refresh(); - }, function (data) { - Feng.error("删除失败!" + data.responseJSON.message + "!"); - }); - ajax.set("tCommercialId",this.seItem.id); - ajax.start(); +TCommercial.delete = function (id,onOffLine) { + if(1 == onOffLine){ + Feng.error("已上线广告不可删除!"); + return; } + var ajax = new $ax(Feng.ctxPath + "/tCommercial/delete", function (data) { + Feng.success("删除成功!"); + TCommercial.table.refresh(); + }, function (data) { + Feng.error("删除失败!" + data.responseJSON.message + "!"); + }); + ajax.set("tCommercialId",id); + ajax.start(); }; + +/** + * 上线 + */ +TCommercial.onLineState = function (id) { + var ajax = new $ax(Feng.ctxPath + "/tCommercial/onLine", function (data) { + if(500 == data.code){ + Feng.error(data.message) + return; + }else { + Feng.success("上线成功!"); + TCommercial.table.refresh(); + } + }, function (data) { + Feng.error("上线失败!" + data.responseJSON.message + "!"); + }); + ajax.set("tCommercialId",id); + ajax.start(); +}; + +/** + * 下线 + */ +TCommercial.offLineState = function (id) { + var ajax = new $ax(Feng.ctxPath + "/tCommercial/offLine", function (data) { + if(500 == data.code){ + Feng.error(data.message) + return; + }else { + Feng.success("下线成功!"); + TCommercial.table.refresh(); + } + }, function (data) { + Feng.error("下线失败!" + data.responseJSON.message + "!"); + }); + ajax.set("tCommercialId",id); + ajax.start(); +}; + + /** * 查询列表 */ diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tCommercial/tCommercial_info.js b/management/guns-admin/src/main/webapp/static/modular/system/tCommercial/tCommercial_info.js index 6b62b9a..90a2add 100644 --- a/management/guns-admin/src/main/webapp/static/modular/system/tCommercial/tCommercial_info.js +++ b/management/guns-admin/src/main/webapp/static/modular/system/tCommercial/tCommercial_info.js @@ -2,7 +2,74 @@ * 初始化详情对话框 */ var TCommercialInfoDlg = { - tCommercialInfoData : {} + tCommercialInfoData : {}, + validateFields: { + name: { + validators: { + notEmpty: { + message: '广告图名称不能为空' + } + } + }, + device: { + validators: { + notEmpty: { + message: '请选择端口' + } + } + }, + type: { + validators: { + notEmpty: { + message: '请选择广告类型' + } + } + }, + isJump: { + validators: { + notEmpty: { + message: '请选择是否跳转' + } + } + }, + jumpType: { + validators: { + notEmpty: { + message: '请选择跳转类型' + } + } + }, + jumpUrl: { + validators: { + notEmpty: { + message: '跳转链接不能为空' + } + } + }, + sort: { + validators: { + notEmpty: { + message: '排序不能为空' + } + } + }, + html: { + validators: { + notEmpty: { + message: '详情内容不能为空' + } + } + }, + } +}; + +/** + * 验证数据是否为空 + */ +TCommercialInfoDlg.validate = function () { + $('#commercialInfoForm').data("bootstrapValidator").resetForm(); + $('#commercialInfoForm').bootstrapValidator('validate'); + return $("#commercialInfoForm").data('bootstrapValidator').isValid(); }; /** @@ -44,6 +111,9 @@ * 收集数据 */ TCommercialInfoDlg.collectData = function() { + if(UE.getEditor('html').hasContents()){ + $('#html').val(UE.getEditor('html').getContent()); + } this .set('id') .set('type') @@ -56,6 +126,7 @@ .set('html') .set('sort') .set('status') + .set('onOffLine') .set('createTime') .set('createUserId') .set('updateTime') @@ -69,6 +140,16 @@ this.clearData(); this.collectData(); + + if(!this.validate()){ + return ; + } + + var url = $("#url").val(); + if ("" == url){ + Feng.info("请上传广告图图片"); + return; + } //提交信息 var ajax = new $ax(Feng.ctxPath + "/tCommercial/add", function(data){ @@ -90,6 +171,10 @@ this.clearData(); this.collectData(); + if(!this.validate()){ + return ; + } + //提交信息 var ajax = new $ax(Feng.ctxPath + "/tCommercial/update", function(data){ Feng.success("修改成功!"); @@ -103,5 +188,6 @@ } $(function() { - + TCommercialInfoDlg.editor = UE.getEditor('html'); + Feng.initValidator("commercialInfoForm", TCommercialInfoDlg.validateFields); }); diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tDriver/tDriver.js b/management/guns-admin/src/main/webapp/static/modular/system/tDriver/tDriver.js index 9bbeebf..092cc58 100644 --- a/management/guns-admin/src/main/webapp/static/modular/system/tDriver/tDriver.js +++ b/management/guns-admin/src/main/webapp/static/modular/system/tDriver/tDriver.js @@ -72,7 +72,7 @@ return '<a href="#" onclick="TDriver.searchTDriverDetail('+row.id+')" style="color:green">详情</a>' +' ' + '<a href="#" onclick="TDriver.stop('+row.id+','+row.status+')" style="color:red">冻结</a>' +' ' + '<a href="#" onclick="TDriver.updateInfo('+row.id+')" style="color:green">编辑</a>' - }else if (row.status === 2){ + }else if (row.status === 2 || row.approvalStatus === 2){ return '<a href="#" onclick="TDriver.searchTDriverDetail('+row.id+')" style="color:green">详情</a>' +' ' + '<a href="#" onclick="TDriver.start('+row.id+','+row.status+')" style="color:green">解冻</a>' } diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tHtml/tHtml.js b/management/guns-admin/src/main/webapp/static/modular/system/tHtml/tHtml.js new file mode 100644 index 0000000..1ae2acd --- /dev/null +++ b/management/guns-admin/src/main/webapp/static/modular/system/tHtml/tHtml.js @@ -0,0 +1,159 @@ +/** + * 管理初始化 + */ +var THtml = { + id: "THtmlTable", //表格id + seItem: null, //选中的条目 + table: null, + layerIndex: -1 +}; + +/** + * 初始化表格的列 + */ +THtml.initColumn = function () { + return [ + {field: 'selectItem', radio: true}, + {title: '主键', field: 'id', visible: true, align: 'center', valign: 'middle'}, + {title: '类型(1=代驾服务协议与隐私政策保护,2=法律条款,3=个人信息处理规则,4=积分说明,5=佣金规则说明,6=行程录音说明,7=预估价格说明,8=加盟基本要求,9=加盟流程,10=起步价说明,11=注销协议,12=关于我们,13=司机消单说明)', field: 'type', visible: true, align: 'center', valign: 'middle'}, + {title: 'H5内容', field: 'html', visible: true, align: 'center', valign: 'middle'}, + {title: '添加时间', field: 'createTime', visible: true, align: 'center', valign: 'middle'} + ]; +}; + +/** + * 检查是否选中 + */ +THtml.check = function () { + var selected = $('#' + this.id).bootstrapTable('getSelections'); + if(selected.length == 0){ + Feng.info("请先选中表格中的某一记录!"); + return false; + }else{ + THtml.seItem = selected[0]; + return true; + } +}; + +/** + * 点击添加 + */ +THtml.openAddTHtml = function () { + var index = layer.open({ + type: 2, + title: '添加', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tHtml/tHtml_add' + }); + this.layerIndex = index; +}; + +/** + * 打开查看详情 + */ +THtml.openTHtmlDetail = function () { + if (this.check()) { + var index = layer.open({ + type: 2, + title: '详情', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tHtml/tHtml_update/' + THtml.seItem.id + }); + this.layerIndex = index; + } +}; + +/** + * 加盟基本要求 + */ +THtml.priceRulesSubmit = function () { + var ajax = new $ax(Feng.ctxPath + "/tHtml/update", function (data) { + Feng.success("保存成功!"); + THtml.table.refresh(); + }, function (data) { + Feng.error("保存失败!" + data.responseJSON.message + "!"); + }); + + var json1=[]; + for (let i = 0; i < $('input[name="num1"]').length; i++) { + var arr = {} + arr['num1'] = $($('input[name="num1"]')[i]).val(); + json1.push(arr) + } + var reqData = {}; + reqData['rules'] = json1; + ajax.set("html",JSON.stringify(reqData)); + ajax.set("id",$('#id').val()); + ajax.start(); +}; + +THtml.addBox = function (){ + var i = $('input[name="num1"]').length + 1; + var a ="<div name=\"rulesForm\">\n" + + " <div class=\"initialLevel col-sm-12 control-label form-group\" >\n" + + " <span class=\"control-label\" >要求"+i+"</span>\n" + + " <input class=\"control-label\" id=\"num1-"+i+"\" name=\"num1\" type=\"text\" placeholder=\"单行输入\" style=\"height: 30px;width: 180px\">\n" + + " <span class=\"fa fa-remove\" onclick=\"THtml.delBox(this)\"></span>\n" + + " </div>\n" + + " </div>" + + $("#rules").append($(a)) +} + +THtml.delBox = function (o) { + $(o).parent("div").parent("div").remove() +}; + + + +/** + * 删除 + */ +THtml.delete = function () { + if (this.check()) { + var ajax = new $ax(Feng.ctxPath + "/tHtml/delete", function (data) { + Feng.success("删除成功!"); + THtml.table.refresh(); + }, function (data) { + Feng.error("删除失败!" + data.responseJSON.message + "!"); + }); + ajax.set("tHtmlId",this.seItem.id); + ajax.start(); + } +}; + +/** + * 查询html + */ +THtml.queryHtml = function (type) { + var ajax = new $ax(Feng.ctxPath + "/tHtml/agreement", function (data) { + console.log(data) + var html = document.getElementById("html"); + html.innerHTML = data.html + THtml.table.refresh(); + }, function (data) { + Feng.error("失败!" + data.responseJSON.message + "!"); + }); + ajax.set("type",type); + ajax.start(); +}; + +/** + * 查询列表 + */ +THtml.search = function () { + var queryData = {}; + queryData['condition'] = $("#condition").val(); + THtml.table.refresh({query: queryData}); +}; + +$(function () { + var defaultColunms = THtml.initColumn(); + var table = new BSTable(THtml.id, "/tHtml/list", defaultColunms); + table.setPaginationType("client"); + THtml.table = table.init(); +}); diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tHtml/tHtml_info.js b/management/guns-admin/src/main/webapp/static/modular/system/tHtml/tHtml_info.js new file mode 100644 index 0000000..9b6ba02 --- /dev/null +++ b/management/guns-admin/src/main/webapp/static/modular/system/tHtml/tHtml_info.js @@ -0,0 +1,99 @@ +/** + * 初始化详情对话框 + */ +var THtmlInfoDlg = { + tHtmlInfoData : {} +}; + +/** + * 清除数据 + */ +THtmlInfoDlg.clearData = function() { + this.tHtmlInfoData = {}; +} + +/** + * 设置对话框中的数据 + * + * @param key 数据的名称 + * @param val 数据的具体值 + */ +THtmlInfoDlg.set = function(key, val) { + this.tHtmlInfoData[key] = (typeof val == "undefined") ? $("#" + key).val() : val; + return this; +} + +/** + * 设置对话框中的数据 + * + * @param key 数据的名称 + * @param val 数据的具体值 + */ +THtmlInfoDlg.get = function(key) { + return $("#" + key).val(); +} + +/** + * 关闭此对话框 + */ +THtmlInfoDlg.close = function() { + parent.layer.close(window.parent.THtml.layerIndex); +} + +/** + * 收集数据 + */ +THtmlInfoDlg.collectData = function() { + if(UE.getEditor('html').hasContents()){ + $('#html').val(UE.getEditor('html').getContent()); + } + this + .set('id') + .set('type') + .set('html') + .set('createTime'); +} + +/** + * 提交添加 + */ +THtmlInfoDlg.addSubmit = function() { + + this.clearData(); + this.collectData(); + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tHtml/add", function(data){ + Feng.success("添加成功!"); + window.parent.THtml.table.refresh(); + THtmlInfoDlg.close(); + },function(data){ + Feng.error("添加失败!" + data.responseJSON.message + "!"); + }); + ajax.set(this.tHtmlInfoData); + ajax.start(); +} + +/** + * 提交修改 + */ +THtmlInfoDlg.editSubmit = function() { + + this.clearData(); + this.collectData(); + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tHtml/update", function(data){ + Feng.success("修改成功!"); + window.parent.THtml.table.refresh(); + THtmlInfoDlg.close(); + },function(data){ + Feng.error("修改失败!" + data.responseJSON.message + "!"); + }); + ajax.set(this.tHtmlInfoData); + ajax.start(); +} + +$(function() { + THtmlInfoDlg.editor = UE.getEditor('html'); +}); diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tImg/tImg.js b/management/guns-admin/src/main/webapp/static/modular/system/tImg/tImg.js new file mode 100644 index 0000000..b920ff9 --- /dev/null +++ b/management/guns-admin/src/main/webapp/static/modular/system/tImg/tImg.js @@ -0,0 +1,100 @@ +/** + * 管理初始化 + */ +var TImg = { + id: "TImgTable", //表格id + seItem: null, //选中的条目 + table: null, + layerIndex: -1 +}; + +/** + * 初始化表格的列 + */ +TImg.initColumn = function () { + return [ + {field: 'selectItem', radio: true}, + {title: '主键', field: 'id', visible: true, align: 'center', valign: 'middle'}, + {title: '数据类型(1=启动页)', field: 'type', visible: true, align: 'center', valign: 'middle'}, + {title: '图片地址', field: 'img', visible: true, align: 'center', valign: 'middle'}, + {title: '添加时间', field: 'createTime', visible: true, align: 'center', valign: 'middle'} + ]; +}; + +/** + * 检查是否选中 + */ +TImg.check = function () { + var selected = $('#' + this.id).bootstrapTable('getSelections'); + if(selected.length == 0){ + Feng.info("请先选中表格中的某一记录!"); + return false; + }else{ + TImg.seItem = selected[0]; + return true; + } +}; + +/** + * 点击添加 + */ +TImg.openAddTImg = function () { + var index = layer.open({ + type: 2, + title: '添加', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tImg/tImg_add' + }); + this.layerIndex = index; +}; + +/** + * 打开查看详情 + */ +TImg.openTImgDetail = function () { + if (this.check()) { + var index = layer.open({ + type: 2, + title: '详情', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tImg/tImg_update/' + TImg.seItem.id + }); + this.layerIndex = index; + } +}; + +/** + * 删除 + */ +TImg.delete = function () { + if (this.check()) { + var ajax = new $ax(Feng.ctxPath + "/tImg/delete", function (data) { + Feng.success("删除成功!"); + TImg.table.refresh(); + }, function (data) { + Feng.error("删除失败!" + data.responseJSON.message + "!"); + }); + ajax.set("tImgId",this.seItem.id); + ajax.start(); + } +}; + +/** + * 查询列表 + */ +TImg.search = function () { + var queryData = {}; + queryData['condition'] = $("#condition").val(); + TImg.table.refresh({query: queryData}); +}; + +$(function () { + var defaultColunms = TImg.initColumn(); + var table = new BSTable(TImg.id, "/tImg/list", defaultColunms); + table.setPaginationType("client"); + TImg.table = table.init(); +}); diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tImg/tImg_info.js b/management/guns-admin/src/main/webapp/static/modular/system/tImg/tImg_info.js new file mode 100644 index 0000000..cfa1a31 --- /dev/null +++ b/management/guns-admin/src/main/webapp/static/modular/system/tImg/tImg_info.js @@ -0,0 +1,216 @@ +/** + * 初始化详情对话框 + */ +var TImgInfoDlg = { + tImgInfoData : {} +}; + +/** + * 清除数据 + */ +TImgInfoDlg.clearData = function() { + this.tImgInfoData = {}; +} + +/** + * 设置对话框中的数据 + * + * @param key 数据的名称 + * @param val 数据的具体值 + */ +TImgInfoDlg.set = function(key, val) { + this.tImgInfoData[key] = (typeof val == "undefined") ? $("#" + key).val() : val; + return this; +} + +/** + * 设置对话框中的数据 + * + * @param key 数据的名称 + * @param val 数据的具体值 + */ +TImgInfoDlg.get = function(key) { + return $("#" + key).val(); +} + +/** + * 关闭此对话框 + */ +TImgInfoDlg.close = function() { + parent.layer.close(window.parent.TImg.layerIndex); +} + +/** + * 收集数据 + */ +TImgInfoDlg.collectData = function() { + this + .set('id') + .set('type') + .set('img') + .set('createTime'); +} + +/** + * 提交添加 + */ +TImgInfoDlg.addSubmit = function() { + + this.clearData(); + this.collectData(); + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tImg/add", function(data){ + Feng.success("添加成功!"); + window.parent.TImg.table.refresh(); + TImgInfoDlg.close(); + },function(data){ + Feng.error("添加失败!" + data.responseJSON.message + "!"); + }); + ajax.set(this.tImgInfoData); + ajax.start(); +} + +/** + * 提交修改 + */ +TImgInfoDlg.editSubmit = function() { + + this.clearData(); + this.collectData(); + + console.log(11111) + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tImg/update", function(data){ + Feng.success("修改成功!"); + window.parent.TImg.table.refresh(); + TImgInfoDlg.close(); + },function(data){ + Feng.error("修改失败!" + data.responseJSON.message + "!"); + }); + ajax.set(this.tImgInfoData); + ajax.start(); +} + +/** + * 提交图片 + */ +TImgInfoDlg.updateSubmit = function() { + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tImg/updateSubmit", function(data){ + Feng.success("修改成功!"); + window.parent.TImg.table.refresh(); + TImgInfoDlg.close(); + },function(data){ + Feng.error("修改失败!" + data.responseJSON.message + "!"); + }); + var reqData = ""; + var n = $('img[name="startImg"]').length + for (let i = 0; i < n; i++) { + if(i == (n-1)){ + reqData += $('img[name="startImg"]')[i].src + }else { + reqData += $('img[name="startImg"]')[i].src + ","; + } + } + console.log(reqData) + ajax.set("tImg",reqData); + ajax.start(); +} + +let thisImg; +TImgInfoDlg.uploadPhoto = function(e) { + thisImg = $(e); + $("#btn_file").click(); +} +TImgInfoDlg.schoolprow = function() { + let file = document.querySelector('input[name=schoolimg]').files[0]; + // let reader = new FileReader(); + if (file) { + let inputList = $("#imgs div"); + let index = inputList.length + if(index > 10){ + Feng.error("图片不能超过10张"); + return + } + upload(file, thisImg); + // reader.readAsDataURL(file); + //获取已上传的图片数从第二张开始算 + // if (index < 9) { + // let imgHtml = "<img width=\"100px\" height=\"100px\" src=\"https://guangzhiyu-1311825864.cos.ap-chengdu.myqcloud.com/shangchuanpic.png\"\n" + + // "onclick=\"TbCommodityInfoDlg.uploadPhoto(this);\">"; + // $("#imgUpload").append(imgHtml); + // } + } +} + +function upload(file, thisImg) { + let formData = new FormData(); + formData.append("myfile", file); + $.ajax({ + url: Feng.ctxPath + "/mgr/saveApk", + type: "POST", + data: formData, + contentType: false, + processData: false, + success: function (data) { + /*$(thisImg).attr("src", data); + $(thisImg).addClass("imgP"); + //图片 + $("#divHidden").empty();*/ + $('#imgs').append('<div style="float: left;margin-right: 20px;"><img name="startImg" src="' + data + '" style="width: 100px"> <i class="fa fa-close" onclick="delImg(this)" style="color: red;font-size: 18px;position: absolute;"></i></div>') + + // $(".imgP").each(function (r, v) { + // $("#imgUpload").append("<div style=\"width: 110px;height: 110px;float: left;\"><input class='imgHidden' type='hidden' value='"+v.src+"'><div style=width: 110px;height: 110px;float: left;><img src="+v.src+" width=\"100px\" class=\"describeImgUrl\"></div>+") + // }); + layer.msg('上传成功!', { + icon: 6 + }); + }, + error: function () { + layer.msg('上传失败!', { + icon: 5 + }); + } + }) +} + +$(function() { + + + + var avatarUp = new $WebUpload("detailsImg"); + avatarUp.setUploadBarId("progressBar"); + avatarUp.init(); + + var avatarUp = new $WebUpload("goodsImg"); + avatarUp.setUploadBarId("progressBar"); + avatarUp.init(); + // 手动指定上传文件调用的接口(不同文件类型不同接口) + // UE.Editor.prototype._bkGetActionUrl = UE.Editor.prototype.getActionUrl; + // UE.Editor.prototype.getActionUrl = function (action) { + + // 这里很重要,很重要,很重要,要和配置中的imageActionName值一样 + // if (action == 'uploadimage') { + // // 这里调用后端我们写的图片上传接口 + // return '/ueditor/uploadFileData'; + // } else if (action == 'uploadvideo') { + // return '/ueditor/uploadFileData'; + // } else { + // return this._bkGetActionUrl.call(this, action); + // } + // }; + let urls = $("#urls").val() + let id= $("#id").val(); + if (id!=null&&id!=""){ + $("#category").val($("#category_").val()); + + let s1_= $("#s1_").val(); + $("#s1").val(s1_); + } + +}); +function delImg(e){ + $(e).parent().remove(); +} diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tMainContent/tMainContent.js b/management/guns-admin/src/main/webapp/static/modular/system/tMainContent/tMainContent.js new file mode 100644 index 0000000..27a49b9 --- /dev/null +++ b/management/guns-admin/src/main/webapp/static/modular/system/tMainContent/tMainContent.js @@ -0,0 +1,206 @@ +/** + * 管理初始化 + */ +var TMainContent = { + id: "TMainContentTable", //表格id + seItem: null, //选中的条目 + table: null, + layerIndex: -1 +}; + +/** + * 初始化表格的列 + */ +TMainContent.initColumn = function () { + return [ + {field: 'selectItem', radio: true}, + {title: '主键', field: 'id', visible: true, align: 'center', valign: 'middle'}, + {title: '数据类型(1=转单,2=司机消单,3=用户取消订单)', field: 'type', visible: true, align: 'center', valign: 'middle'}, + {title: '内容', field: 'content', visible: true, align: 'center', valign: 'middle'}, + {title: '状态(1=正常,2=冻结,3=删除)', field: 'status', visible: true, align: 'center', valign: 'middle'}, + {title: '添加时间', field: 'createTime', visible: true, align: 'center', valign: 'middle'} + ]; +}; + +/** + * 检查是否选中 + */ +TMainContent.check = function () { + var selected = $('#' + this.id).bootstrapTable('getSelections'); + if(selected.length == 0){ + Feng.info("请先选中表格中的某一记录!"); + return false; + }else{ + TMainContent.seItem = selected[0]; + return true; + } +}; + +/** + * 点击添加 + */ +TMainContent.openAddTMainContent = function () { + var index = layer.open({ + type: 2, + title: '添加', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tMainContent/tMainContent_add' + }); + this.layerIndex = index; +}; + +/** + * 转单添加 + */ +TMainContent.transferOrderAdd = function () { + var index = layer.open({ + type: 2, + title: '新增原因', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tMainContent/transferOrder/add' + }); + this.layerIndex = index; +}; + +/** + * 转单修改 + */ +TMainContent.transferOrderUpdate = function () { + var index = layer.open({ + type: 2, + title: '编辑原因', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tMainContent/transferOrder/update' + }); + this.layerIndex = index; +}; + +/** + * 消单添加 + */ +TMainContent.driverCancelOrderAdd = function () { + var index = layer.open({ + type: 2, + title: '新增原因', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tMainContent/driverCancelOrder/add' + }); + this.layerIndex = index; +}; + +/** + * 消单修改 + */ +TMainContent.driverCancelOrderUpdate = function () { + var index = layer.open({ + type: 2, + title: '编辑原因', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tMainContent/driverCancelOrder/update' + }); + this.layerIndex = index; +}; + +/** + * 用户取消订单添加 + */ +TMainContent.userCancelOrderAdd = function () { + var index = layer.open({ + type: 2, + title: '新增原因', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tMainContent/userCancelOrder/add' + }); + this.layerIndex = index; +}; + +/** + * 用户取消订单修改 + */ +TMainContent.userCancelOrderUpdate = function () { + var index = layer.open({ + type: 2, + title: '编辑原因', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tMainContent/userCancelOrder/update' + }); + this.layerIndex = index; +}; + +TMainContent.addBox = function (){ + var i = $('input[name="num1"]').length + 1; + var a ="<div class=\"initialLevel col-sm-12 control-label form-group\" >\n" + + " <input class=\"control-label\" id=\"content-"+i+"\" name=\"content\" placeholder=\"请输入\" style=\"width: 180px;height: 30px\">\n" + + " <span class=\"fa fa-remove\" onclick=\"TMainContent.delBox(this)\"></span>\n" + + " </div>" + + $("#rules").append($(a)) +} + +TMainContent.delBox = function (o) { + $(o).parent("div").remove() +}; + + +/** + * 打开查看详情 + */ +TMainContent.openTMainContentDetail = function () { + if (this.check()) { + var index = layer.open({ + type: 2, + title: '详情', + area: ['800px', '420px'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/tMainContent/tMainContent_update/' + TMainContent.seItem.id + }); + this.layerIndex = index; + } +}; + +/** + * 删除 + */ +TMainContent.delete = function () { + if (this.check()) { + var ajax = new $ax(Feng.ctxPath + "/tMainContent/delete", function (data) { + Feng.success("删除成功!"); + TMainContent.table.refresh(); + }, function (data) { + Feng.error("删除失败!" + data.responseJSON.message + "!"); + }); + ajax.set("tMainContentId",this.seItem.id); + ajax.start(); + } +}; + +/** + * 查询列表 + */ +TMainContent.search = function () { + var queryData = {}; + queryData['condition'] = $("#condition").val(); + TMainContent.table.refresh({query: queryData}); +}; + +$(function () { + var defaultColunms = TMainContent.initColumn(); + var table = new BSTable(TMainContent.id, "/tMainContent/list", defaultColunms); + table.setPaginationType("client"); + TMainContent.table = table.init(); +}); diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tMainContent/tMainContent_info.js b/management/guns-admin/src/main/webapp/static/modular/system/tMainContent/tMainContent_info.js new file mode 100644 index 0000000..bb7c1ac --- /dev/null +++ b/management/guns-admin/src/main/webapp/static/modular/system/tMainContent/tMainContent_info.js @@ -0,0 +1,288 @@ +/** + * 初始化详情对话框 + */ +var TMainContentInfoDlg = { + tMainContentInfoData : {} +}; + +/** + * 清除数据 + */ +TMainContentInfoDlg.clearData = function() { + this.tMainContentInfoData = {}; +} + +/** + * 设置对话框中的数据 + * + * @param key 数据的名称 + * @param val 数据的具体值 + */ +TMainContentInfoDlg.set = function(key, val) { + this.tMainContentInfoData[key] = (typeof val == "undefined") ? $("#" + key).val() : val; + return this; +} + +/** + * 设置对话框中的数据 + * + * @param key 数据的名称 + * @param val 数据的具体值 + */ +TMainContentInfoDlg.get = function(key) { + return $("#" + key).val(); +} + +/** + * 关闭此对话框 + */ +TMainContentInfoDlg.close = function() { + parent.layer.close(window.parent.TMainContent.layerIndex); +} + +/** + * 收集数据 + */ +TMainContentInfoDlg.collectData = function() { + this + .set('id') + .set('type') + .set('content') + .set('status') + .set('createTime'); +} + +/** + * 提交添加 + */ +TMainContentInfoDlg.addSubmit = function() { + + this.clearData(); + this.collectData(); + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tMainContent/add", function(data){ + Feng.success("添加成功!"); + window.parent.TMainContent.table.refresh(); + TMainContentInfoDlg.close(); + },function(data){ + Feng.error("添加失败!" + data.responseJSON.message + "!"); + }); + ajax.set(this.tMainContentInfoData); + ajax.start(); +} +/** + * 转单添加提交 + */ +TMainContentInfoDlg.transferOrderAddSubmit = function() { + + this.clearData(); + this.collectData(); + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tMainContent/add", function(data){ + Feng.success("添加成功!"); + parent.location.reload() + TMainContent.table.refresh(); + TMainContentInfoDlg.close(); + },function(data){ + Feng.error("添加失败!" + data.responseJSON.message + "!"); + }); + + var reqData = ""; + var n = $('input[name="content"]').length; + for (let i = 0; i < n; i++) { + if(i == (n-1)){ + reqData += $($('input[name="content"]')[i]).val() + }else { + reqData += $($('input[name="content"]')[i]).val() + ","; + } + } + ajax.set("tMainContents",reqData); + ajax.set("type",1); + ajax.start(); +} + +/** + * 转单修改提交 + */ +TMainContentInfoDlg.transferOrderUpdateSubmit = function() { + + this.clearData(); + this.collectData(); + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tMainContent/update", function(data){ + Feng.success("添加成功!"); + parent.location.reload() + TMainContent.table.refresh(); + TMainContentInfoDlg.close(); + },function(data){ + Feng.error("添加失败!" + data.responseJSON.message + "!"); + }); + + var reqData = ""; + var n = $('input[name="content"]').length; + for (let i = 0; i < n; i++) { + if(i == (n-1)){ + reqData += $($('input[name="content"]')[i]).val() + }else { + reqData += $($('input[name="content"]')[i]).val() + ","; + } + } + ajax.set("tMainContents",reqData); + ajax.set("type",1); + ajax.start(); +} + +/** + * 消单添加提交 + */ +TMainContentInfoDlg.driverCancelOrderAddSubmit = function() { + + this.clearData(); + this.collectData(); + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tMainContent/add", function(data){ + Feng.success("添加成功!"); + parent.location.reload() + TMainContent.table.refresh(); + TMainContentInfoDlg.close(); + },function(data){ + Feng.error("添加失败!" + data.responseJSON.message + "!"); + }); + + var reqData = ""; + var n = $('input[name="content"]').length; + for (let i = 0; i < n; i++) { + if(i == (n-1)){ + reqData += $($('input[name="content"]')[i]).val() + }else { + reqData += $($('input[name="content"]')[i]).val() + ","; + } + } + ajax.set("tMainContents",reqData); + ajax.set("type",2); + ajax.start(); +} + +/** + * 消单修改提交 + */ +TMainContentInfoDlg.driverCancelOrderUpdateSubmit = function() { + + this.clearData(); + this.collectData(); + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tMainContent/update", function(data){ + Feng.success("添加成功!"); + parent.location.reload() + TMainContent.table.refresh(); + TMainContentInfoDlg.close(); + },function(data){ + Feng.error("添加失败!" + data.responseJSON.message + "!"); + }); + + var reqData = ""; + var n = $('input[name="content"]').length; + for (let i = 0; i < n; i++) { + if(i == (n-1)){ + reqData += $($('input[name="content"]')[i]).val() + }else { + reqData += $($('input[name="content"]')[i]).val() + ","; + } + } + ajax.set("tMainContents",reqData); + ajax.set("type",2); + ajax.start(); +} + +/** + * 取消订单添加提交 + */ +TMainContentInfoDlg.userCancelOrderAddSubmit = function() { + + this.clearData(); + this.collectData(); + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tMainContent/add", function(data){ + Feng.success("添加成功!"); + parent.location.reload() + TMainContent.table.refresh(); + TMainContentInfoDlg.close(); + },function(data){ + Feng.error("添加失败!" + data.responseJSON.message + "!"); + }); + + var reqData = ""; + var n = $('input[name="content"]').length; + for (let i = 0; i < n; i++) { + if(i == (n-1)){ + reqData += $($('input[name="content"]')[i]).val() + }else { + reqData += $($('input[name="content"]')[i]).val() + ","; + } + } + ajax.set("tMainContents",reqData); + ajax.set("type",3); + ajax.start(); +} + +/** + * 取消订单修改提交 + */ +TMainContentInfoDlg.userCancelOrderUpdateSubmit = function() { + + this.clearData(); + this.collectData(); + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tMainContent/update", function(data){ + Feng.success("添加成功!"); + parent.location.reload() + TMainContent.table.refresh(); + TMainContentInfoDlg.close(); + },function(data){ + Feng.error("添加失败!" + data.responseJSON.message + "!"); + }); + + var reqData = ""; + var n = $('input[name="content"]').length; + for (let i = 0; i < n; i++) { + if(i == (n-1)){ + reqData += $($('input[name="content"]')[i]).val() + }else { + reqData += $($('input[name="content"]')[i]).val() + ","; + } + } + ajax.set("tMainContents",reqData); + ajax.set("type",3); + ajax.start(); +} + +/** + * 提交修改 + */ +TMainContentInfoDlg.editSubmit = function() { + + this.clearData(); + this.collectData(); + + //提交信息 + var ajax = new $ax(Feng.ctxPath + "/tMainContent/update", function(data){ + Feng.success("修改成功!"); + window.parent.TMainContent.table.refresh(); + TMainContentInfoDlg.close(); + },function(data){ + Feng.error("修改失败!" + data.responseJSON.message + "!"); + }); + ajax.set(this.tMainContentInfoData); + ajax.start(); +} + +$(function() { + +}); diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tSystemConfig/tSystemConfig.js b/management/guns-admin/src/main/webapp/static/modular/system/tSystemConfig/tSystemConfig.js index 808eb76..0375706 100644 --- a/management/guns-admin/src/main/webapp/static/modular/system/tSystemConfig/tSystemConfig.js +++ b/management/guns-admin/src/main/webapp/static/modular/system/tSystemConfig/tSystemConfig.js @@ -296,6 +296,18 @@ $(o).parent("div").parent("div").remove() }; +TSystemConfig.openOrClose = function () { + console.log(111111111111) + var ajax = new $ax(Feng.ctxPath + "/tSystemConfig/openOrClose", function (data) { + Feng.success("修改成功!"); + TSystemConfig.table.refresh(); + }, function (data) { + Feng.error("修改失败!" + data.responseJSON.message + "!"); + }); + ajax.set("num1",$("#zcOne").val()); + ajax.start(); +}; + /** * 查询列表 */ -- Gitblit v1.7.1