From 2e4640768bec302ed465c9c17002df842c96ee96 Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期二, 10 十月 2023 15:28:37 +0800 Subject: [PATCH] 后台代码 --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RechargeRecordsQuery.java | 1 cloud-server-management/src/main/webapp/WEB-INF/view/system/ticket/ticket_add.html | 2 cloud-server-management/src/main/java/com/dsh/course/feignClient/account/FinanceClient.java | 6 cloud-server-account/src/main/java/com/dsh/account/model/IncomeQuery.java | 2 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java | 21 cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/CompetitionQuery.java | 5 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TDiscountController.java | 4 cloud-server-account/src/main/java/com/dsh/account/controller/FinanceController.java | 21 + cloud-server-account/src/main/java/com/dsh/account/mapper/RechargeRecordsMapper.java | 2 cloud-server-course/src/main/java/com/dsh/course/model/RegisterOrderQuery.java | 1 cloud-server-competition/src/main/java/com/dsh/competition/model/CompetitionQuery.java | 2 cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CourseClient.java | 3 cloud-server-course/src/main/java/com/dsh/course/entity/TAppUser.java | 11 cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/IncomeQuery.java | 2 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java | 89 ++++- cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java | 3 cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/CoursePackage.java | 180 +++++++++++ cloud-server-management/src/main/java/com/dsh/course/feignClient/account/model/RechargeRecords.java | 89 +++++ cloud-server-account/src/main/java/com/dsh/account/model/query/RechargeRecordsQuery.java | 1 cloud-server-account/src/main/resources/mapper/RechargeRecordsMapper.xml | 9 cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java | 7 cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java | 2 cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html | 496 ++++++++++++++---------------- cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RegisterOrderQuery.java | 1 24 files changed, 649 insertions(+), 311 deletions(-) diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/FinanceController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/FinanceController.java index a3e5662..cc1c78b 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/controller/FinanceController.java +++ b/cloud-server-account/src/main/java/com/dsh/account/controller/FinanceController.java @@ -4,16 +4,14 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.dsh.account.entity.CoachType; import com.dsh.account.entity.RechargeRecords; +import com.dsh.account.entity.TAppUser; import com.dsh.account.entity.VipPayment; import com.dsh.account.model.IncomeQuery; import com.dsh.account.model.query.RechargeRecordsQuery; import com.dsh.account.model.query.coachQuery.CoachQuery; import com.dsh.account.model.vo.CoachSerchVO; import com.dsh.account.model.vo.RechargeRecordsVO; -import com.dsh.account.service.CoachService; -import com.dsh.account.service.CoachTypeService; -import com.dsh.account.service.IVipPaymentService; -import com.dsh.account.service.RechargeRecordsService; +import com.dsh.account.service.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -31,7 +29,8 @@ private RechargeRecordsService rechargeRecordsService; @Autowired private IVipPaymentService vipPaymentService; - + @Autowired + private TAppUserService appUserService; /** * 充值记录列表数据 @@ -42,6 +41,18 @@ return rechargeRecordsService.rechargeList(query); } /** + * 数据统计-充值记录列表数据 + */ + @ResponseBody + @RequestMapping("/finance/rechargeList1") + public List<RechargeRecords> rechargeList1(@RequestBody RechargeRecordsQuery query){ + List<RechargeRecords> payStatus = rechargeRecordsService.list(new QueryWrapper<RechargeRecords>().eq("payStatus", 2)); + for (RechargeRecords list : payStatus) { + TAppUser byId = appUserService.getById(list.getAppUserId()); + } + return payStatus; + } + /** * 加入会员列表数据 */ @ResponseBody diff --git a/cloud-server-account/src/main/java/com/dsh/account/mapper/RechargeRecordsMapper.java b/cloud-server-account/src/main/java/com/dsh/account/mapper/RechargeRecordsMapper.java index 42f2e2d..bb0143e 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/mapper/RechargeRecordsMapper.java +++ b/cloud-server-account/src/main/java/com/dsh/account/mapper/RechargeRecordsMapper.java @@ -22,6 +22,6 @@ public interface RechargeRecordsMapper extends BaseMapper<RechargeRecords> { List<RechargeRecordsVO> rechargeList(@Param("query") RechargeRecordsQuery query,@Param("sTime")String sTime,@Param("eTime")String eTime); - List<VipPayment> listAll(@Param("query") IncomeQuery query, @Param("sTime")String sTime, @Param("eTime")String eTime, @Param("amount") BigDecimal amount); + List<VipPayment> listAll(@Param("query") IncomeQuery query, @Param("sTime")String sTime, @Param("eTime")String eTime, @Param("amount") BigDecimal amount,@Param("insertType")Integer insertType); } diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/IncomeQuery.java b/cloud-server-account/src/main/java/com/dsh/account/model/IncomeQuery.java index 0806803..6a56c86 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/model/IncomeQuery.java +++ b/cloud-server-account/src/main/java/com/dsh/account/model/IncomeQuery.java @@ -20,5 +20,5 @@ private BigDecimal amount; // 用户ids private List<Integer> userIds; - + private Integer insertType; } diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/query/RechargeRecordsQuery.java b/cloud-server-account/src/main/java/com/dsh/account/model/query/RechargeRecordsQuery.java index 466050c..f0db8f8 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/model/query/RechargeRecordsQuery.java +++ b/cloud-server-account/src/main/java/com/dsh/account/model/query/RechargeRecordsQuery.java @@ -21,4 +21,5 @@ private Integer type; private List<Integer> userIds; private BigDecimal amount; + private Integer insertType; } diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java index 242d614..01d206d 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java +++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java @@ -376,7 +376,7 @@ STime = query.getTime().split(" - ")[0] + " 00:00:00"; ETime = query.getTime().split(" - ")[1] + " 23:59:59"; } - return rechargeRecordsMapper.listAll(query,STime,ETime,query.getAmount()); + return rechargeRecordsMapper.listAll(query,STime,ETime,query.getAmount(),query.getInsertType()); } public static <T> List<T> pageList(List<T> list, int pageNum, int pageSize) { //计算总页数 diff --git a/cloud-server-account/src/main/resources/mapper/RechargeRecordsMapper.xml b/cloud-server-account/src/main/resources/mapper/RechargeRecordsMapper.xml index 6317187..7792f19 100644 --- a/cloud-server-account/src/main/resources/mapper/RechargeRecordsMapper.xml +++ b/cloud-server-account/src/main/resources/mapper/RechargeRecordsMapper.xml @@ -5,9 +5,13 @@ <select id="rechargeList" resultType="com.dsh.account.model.vo.RechargeRecordsVO"> select t1.* from t_recharge_records t1 + left join t_app_user t2 on t1.appUserId = t2.id <where> <if test="query.amount!=null and query.amount!= ''"> and t1.amount <= #{query.amount} + </if> + <if test="query.insertType!=null and query.insertType!= ''"> + and t2.insertType = #{query.insertType} </if> <if test="query.name!=null and query.name!= ''"> AND t1.name LIKE concat('%',#{query.name},'%') @@ -28,10 +32,14 @@ </select> <select id="listAll" resultType="com.dsh.account.entity.VipPayment"> select t1.* from t_vip_payment t1 + left join t_app_user t2 on t1.appUserId = t2.id <where> <if test="amount!=null and amount!= ''"> and t1.amount <= #{amount} </if> + <if test="query.insertType!=null and query.insertType!= ''"> + and t2.insertType = #{query.insertType} + </if> <if test="query.userIds != null and query.userIds.size()>0"> AND t1.appUserId IN <foreach collection="query.userIds" separator="," item="id" open="(" close=")"> @@ -41,6 +49,7 @@ <if test="sTime !=null and sTime!= '' and eTime !=null and eTime!= ''"> and t1.insertTime between #{sTime} and #{eTime} </if> + and t1.payStatus = 2 </where> </select> </mapper> diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/model/CompetitionQuery.java b/cloud-server-competition/src/main/java/com/dsh/competition/model/CompetitionQuery.java index 8b15910..1f58786 100644 --- a/cloud-server-competition/src/main/java/com/dsh/competition/model/CompetitionQuery.java +++ b/cloud-server-competition/src/main/java/com/dsh/competition/model/CompetitionQuery.java @@ -16,5 +16,5 @@ private BigDecimal amount; // 用户ids private List<Integer> userIds; - + private Integer insertType; } diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java index b3aa303..e4b4470 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java +++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java @@ -454,6 +454,13 @@ TCoursePackage byId1 = coursePackageService.getById(byId.getCoursePackageId()); return byId1; } + @ResponseBody + @PostMapping("/course/queryByDiscountId1") + public TCoursePackage queryByDiscountId1(@RequestBody Integer id){ + TCoursePackageDiscount byId = discountService.getById(id); + TCoursePackage byId1 = coursePackageService.getById(byId.getCoursePackageId()); + return byId1; + } @PostMapping("/course/queryDiscountById") diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java index 2f691bb..58d8396 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java +++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java @@ -370,15 +370,18 @@ List<RegisterOrderVO> res = packagePaymentService.listAllRegister(query); List<RegisterOrderVO> result = new ArrayList<>(); - for (RegisterOrderVO re : res) { - if(re.getSalesName()==null){ + Iterator<RegisterOrderVO> iterator = res.iterator(); + while (iterator.hasNext()) { + RegisterOrderVO re = iterator.next(); + + if (re.getSalesName() == null) { re.setSalesName("无"); } - if(re.getPayType()!=null){ - if (re.getPayType() == 3){ - re.setPayMoneyAndType(re.getPlayPaiCoin()+"玩湃币"); - }else{ - re.setPayMoneyAndType("¥"+re.getMoney()); + if (re.getPayType() != null) { + if (re.getPayType() == 3) { + re.setPayMoneyAndType(re.getPlayPaiCoin() + "玩湃币"); + } else { + re.setPayMoneyAndType("¥" + re.getMoney()); } } Store store = storeClient.queryStoreById(re.getStoreId()); @@ -388,6 +391,10 @@ re.setPayUser(appUser.getName()); re.setPhone(appUser.getPhone()); re.setStoreName(store.getName()); + // 在这里添加条件来删除不满足要求的元素 + if (appUser.getInsertType() != query.getInsertType()) { + iterator.remove(); // 使用迭代器的 remove 方法删除元素 + } } return res; } diff --git a/cloud-server-course/src/main/java/com/dsh/course/entity/TAppUser.java b/cloud-server-course/src/main/java/com/dsh/course/entity/TAppUser.java index edd1d68..b657d88 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/entity/TAppUser.java +++ b/cloud-server-course/src/main/java/com/dsh/course/entity/TAppUser.java @@ -160,6 +160,15 @@ @TableField("insertTime") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date insertTime; - + /** + * 添加人类型 1 = 平台添加 2 = 运营商添加 3 = 门店添加 + */ + @TableField("insertType") + private Integer insertType; + /** + * 添加人ID + */ + @TableField("headImg") + private Integer addUserId; } diff --git a/cloud-server-course/src/main/java/com/dsh/course/model/RegisterOrderQuery.java b/cloud-server-course/src/main/java/com/dsh/course/model/RegisterOrderQuery.java index e264e88..456dcd0 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/model/RegisterOrderQuery.java +++ b/cloud-server-course/src/main/java/com/dsh/course/model/RegisterOrderQuery.java @@ -37,4 +37,5 @@ private Integer orderSource; // 订单金额 private BigDecimal amount; + private Integer insertType; } diff --git a/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/FinanceClient.java b/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/FinanceClient.java index d92e119..c64a996 100644 --- a/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/FinanceClient.java +++ b/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/FinanceClient.java @@ -1,6 +1,7 @@ package com.dsh.course.feignClient.account; import com.dsh.course.feignClient.account.model.CoachType; +import com.dsh.course.feignClient.account.model.RechargeRecords; import com.dsh.guns.modular.system.model.RechargeRecordsQuery; import com.dsh.guns.modular.system.model.RechargeRecordsVO; import org.springframework.cloud.openfeign.FeignClient; @@ -23,4 +24,9 @@ */ @RequestMapping("/finance/rechargeList") List<RechargeRecordsVO> rechargeList(@RequestBody RechargeRecordsQuery query); + /** + * 数据统计-充值记录列表数据 + */ + @RequestMapping("/finance/rechargeList1") + List<RechargeRecords> rechargeList1(@RequestBody RechargeRecordsQuery query); } diff --git a/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/model/RechargeRecords.java b/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/model/RechargeRecords.java new file mode 100644 index 0000000..c921314 --- /dev/null +++ b/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/model/RechargeRecords.java @@ -0,0 +1,89 @@ +package com.dsh.course.feignClient.account.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +/** + * <p> + * 充值记录 + * </p> + * + * @author jqs + * @since 2023-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("t_recharge_records") +public class RechargeRecords extends Model<RechargeRecords> { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(value = "id", type = IdType.NONE) + private Long id; + /** + * 流水号 + */ + @TableField("code") + private String code; + /** + * 用户id + */ + @TableField("appUserId") + private Integer appUserId; + /** + * 充值金额 + */ + @TableField("amount") + private BigDecimal amount; + /** + * 玩湃币 + */ + @TableField("playPaiCoins") + private Integer playPaiCoins; + /** + * 支付状态(1=待支付,2=已支付) + */ + @TableField("payStatus") + private Integer payStatus; + /** + * 支付时间 + */ + @TableField("payTime") + private Date payTime; + /** + * 第三方支付流水号 + */ + @TableField("orderNumber") + private String orderNumber; + /** + * 状态(1=正常,2=冻结,3=删除) + */ + @TableField("state") + private Integer state; + /** + * 添加时间 + */ + @TableField("insertTime") + private Date insertTime; + + + @Override + protected Serializable pkVal() { + return this.id; + } + +} diff --git a/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/CompetitionQuery.java b/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/CompetitionQuery.java index 2076d71..ba14285 100644 --- a/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/CompetitionQuery.java +++ b/cloud-server-management/src/main/java/com/dsh/course/feignClient/competition/model/CompetitionQuery.java @@ -1,5 +1,6 @@ package com.dsh.course.feignClient.competition.model; +import io.swagger.models.auth.In; import lombok.Data; import java.math.BigDecimal; @@ -16,5 +17,7 @@ private BigDecimal amount; // 用户ids private List<Integer> userIds; - + // 筛选是平台 还是运营商 还是门店 + private Integer type; + private Integer insertType; } diff --git a/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CourseClient.java b/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CourseClient.java index 1b0ae84..2908ad2 100644 --- a/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CourseClient.java +++ b/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CourseClient.java @@ -5,6 +5,7 @@ import com.dsh.course.feignClient.course.model.*; import com.dsh.course.model.AuditDiscount; import com.dsh.guns.modular.system.model.*; +import com.dsh.guns.modular.system.model.dto.CoursePackage; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -113,6 +114,8 @@ @PostMapping("/course/queryByDiscountId") TCoursePackage queryByDiscountId(Integer id); + @PostMapping("/course/queryByDiscountId1") + CoursePackage queryByDiscountId1(Integer id); @PostMapping("/course/queryDiscountById") diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java index fcaffb4..ee41af0 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java @@ -3,10 +3,7 @@ import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.dsh.course.feignClient.account.*; -import com.dsh.course.feignClient.account.model.CityManager; -import com.dsh.course.feignClient.account.model.QueryDataFee; -import com.dsh.course.feignClient.account.model.TAppUser; -import com.dsh.course.feignClient.account.model.VipPayment; +import com.dsh.course.feignClient.account.model.*; import com.dsh.course.feignClient.activity.PointMercharsClient; import com.dsh.course.feignClient.competition.CompetitionClient; import com.dsh.course.feignClient.competition.model.Competition; @@ -114,7 +111,7 @@ */ @RequestMapping(value = "/getIncomeData") @ResponseBody - public Object getIncomeData(Integer type) { + public Object getIncomeData(Integer operatorId,Integer storeId) { // 充值记录查询query RechargeRecordsQuery rechargeRecordsQuery = new RechargeRecordsQuery(); // 报名课程查询query @@ -126,6 +123,12 @@ // 场地预约记录查询query SiteBookingQuery siteBookingQuery = new SiteBookingQuery(); Integer roleType = UserExt.getUser().getObjectType(); + rechargeRecordsQuery.setInsertType(roleType); + query.setInsertType(roleType); + competitionQuery.setInsertType(roleType); + incomeQuery.setInsertType(roleType); + incomeQuery.setInsertType(roleType); + IncomeVO incomeVO = new IncomeVO(); List<IncomeVO> incomeVOS = new ArrayList<>(); // 会员支付记录 @@ -142,6 +145,7 @@ } // 充值记录 List<RechargeRecordsVO> rechargeRecordsVOS = financeClient.rechargeList(rechargeRecordsQuery); + List<RechargeRecords> rechargeRecords = financeClient.rechargeList1(rechargeRecordsQuery); for (RechargeRecordsVO rechargeRecordsVO : rechargeRecordsVOS) { IncomeVO temp = new IncomeVO(); temp.setInsertTime(rechargeRecordsVO.getInsertTime()); @@ -223,8 +227,8 @@ // 累加到总金额 totalAmount1 = totalAmount1.add(total); - Date insertTime = incomeVO1.getInsertTime(); // 假设有一个方法用于获取 insertTime - BigDecimal amount1 = incomeVO1.getAmount(); // 假设有一个方法用于获取 amount + Date insertTime = incomeVO1.getInsertTime(); + BigDecimal amount1 = incomeVO1.getAmount(); Calendar calendar = Calendar.getInstance(); calendar.setTime(insertTime); int year = calendar.get(Calendar.YEAR); // 获取年份 @@ -242,8 +246,13 @@ Collections.sort(sortedYears); // 创建一个新的 IncomeVO 列表,包含按年份累计的 amount List<Object> resultIncomeVOS = new ArrayList<>(); - // 循环遍历2023年到2028年的年份 - for (int year = 2023; year <= 2028; year++) { + // 当前年往前推十年 + List<Integer> integers1 = new ArrayList<>(); + int years = DateUtil.year(new Date()); + for (int i = 0; i < 10; i++) { + integers1.add(years-i); + } + for (int year = integers1.get(0); year >= integers1.get(integers1.size()-1); year++) { BigDecimal totalAmount = yearToTotalAmountMap.getOrDefault(year, BigDecimal.ZERO); // 创建一个新的 IncomeVO 对象,并设置年份和累计金额 IncomeVO resultIncomeVO = new IncomeVO(); @@ -276,20 +285,55 @@ int currentMonth = currentDate.getMonthValue(); // 初始化一个长度为当前月份的天数的列表,并将每一天的金额初始化为零 int daysInCurrentMonth = currentDate.lengthOfMonth(); - List<BigDecimal> weekAmount = new ArrayList<>(daysInCurrentMonth); - for (int i = 0; i < daysInCurrentMonth; i++) { - weekAmount.add(BigDecimal.ZERO); - } + List<BigDecimal> weekAmount = new ArrayList<>(); + + // 获取最近四周 + LocalDateTime minNow = LocalDateTime.now().with(LocalTime.MIN); + LocalDateTime maxNow = LocalDateTime.now().with(LocalTime.MAX); + // 周度数据 + LocalDateTime week1Start = minNow.minusDays(6); + LocalDateTime week1End = maxNow; + + LocalDateTime week2Start = minNow.minusDays(13); + LocalDateTime week2End = minNow.minusDays(7); + + LocalDateTime week3Start = minNow.minusDays(20); + LocalDateTime week3End = minNow.minusDays(14); + + LocalDateTime week4Start = minNow.minusDays(27); + LocalDateTime week4End = minNow.minusDays(21); + // 用于存放四个周的数据 + List<Object> objects1 = new ArrayList<>(); + // 计算每个周的amount总和 + BigDecimal tAmount1 = BigDecimal.ZERO; + BigDecimal tAmount2 = BigDecimal.ZERO; + BigDecimal tAmount3 = BigDecimal.ZERO; + BigDecimal tAmount4 = BigDecimal.ZERO; for (IncomeVO incomeVO1 : incomeVOS) { - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String string = dateFormat.format(incomeVO1.getInsertTime()); - LocalDate insertDate = LocalDate.parse(string, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); - if (insertDate.getMonthValue() == currentMonth) { - int dayOfMonth = insertDate.getDayOfMonth(); - BigDecimal currentAmount = weekAmount.get(dayOfMonth - 1); // 列表索引从0开始 - weekAmount.set(dayOfMonth - 1, currentAmount.add(incomeVO1.getAmount())); + Date insertTime = incomeVO1.getInsertTime(); + // 将Date转换为LocalDateTime + Instant instant = insertTime.toInstant(); + ZoneId zoneId = ZoneId.systemDefault(); + LocalDateTime dateTime = instant.atZone(zoneId).toLocalDateTime(); + // 判断该数据属于哪个周 + if (dateTime.isAfter(week1Start) && dateTime.isBefore(week1End)) { + BigDecimal amount1 = incomeVO1.getAmount(); + tAmount1=tAmount1.add(amount1); + } else if (dateTime.isAfter(week2Start) && dateTime.isBefore(week2End)) { + BigDecimal amount1 = incomeVO1.getAmount(); + tAmount2=tAmount2.add(amount1); + } else if (dateTime.isAfter(week3Start) && dateTime.isBefore(week3End)) { + BigDecimal amount1 = incomeVO1.getAmount(); + tAmount4=tAmount3.add(amount1); + } else if (dateTime.isAfter(week4Start) && dateTime.isBefore(week4End)) { + BigDecimal amount1 = incomeVO1.getAmount(); + tAmount4=tAmount4.add(amount1); } } + weekAmount.add(tAmount1); + weekAmount.add(tAmount2); + weekAmount.add(tAmount3); + weekAmount.add(tAmount4); monthlyData.put("weekIncome", Collections.singletonList(weekAmount)); LocalDateTime currentDateTime = LocalDateTime.now(); @@ -311,11 +355,6 @@ } monthlyData.put("dayIncome", Collections.singletonList(amountByDay)); - // 创建一个 Map 用于存储今年本周的累计 amount - Map<Integer, BigDecimal> dayToTotalAmountMap = new HashMap<>(); - BigDecimal yearAmount = BigDecimal.ZERO; // 初始化累加变量为0 - BigDecimal monthAmount = BigDecimal.ZERO; // 初始化累加变量为0 - BigDecimal todayAmount = BigDecimal.ZERO; // 初始化累加变量为0 // 获取当前日期和时间 LocalDateTime now = LocalDateTime.now(); // 今年的起始日期和结束日期 diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java index aa3447b..b8bdf86 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java @@ -230,7 +230,6 @@ user.setName(userName); user.setPhone(phone); user.setObjectType(2); - userService.save(user); TOperator data = new TOperator(); data.setUserId(user.getId()); data.setName(name); @@ -238,6 +237,8 @@ data.setStatus(1); data.setState(1); operatorService.save(data); + user.setObjectId(data.getId()); + userService.save(user); if (SinataUtil.isNotEmpty(comArr)){ JSONArray jsonArray = JSON.parseArray(comArr); int size = jsonArray.size(); diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TDiscountController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TDiscountController.java index 3414c9e..8f39ecc 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TDiscountController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TDiscountController.java @@ -20,6 +20,7 @@ import com.dsh.guns.modular.system.model.DiscountUpdateState; import com.dsh.guns.modular.system.model.TCity; import com.dsh.guns.modular.system.model.TStore; +import com.dsh.guns.modular.system.model.dto.CoursePackage; import com.dsh.guns.modular.system.service.ICityService; import com.dsh.guns.modular.system.service.ICoursePackageService; import com.dsh.guns.modular.system.service.IStoreService; @@ -62,9 +63,6 @@ @Autowired private CourseClient courseClient; - - - /** * 跳转到车辆管理首页 diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/IncomeQuery.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/IncomeQuery.java index 1d65760..ca01165 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/IncomeQuery.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/IncomeQuery.java @@ -20,5 +20,5 @@ private BigDecimal amount; // 用户ids private List<Integer> userIds; - + private Integer insertType; } diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RechargeRecordsQuery.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RechargeRecordsQuery.java index 1f66a7a..77c4dd9 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RechargeRecordsQuery.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RechargeRecordsQuery.java @@ -22,4 +22,5 @@ private Integer type; private List<Integer> userIds; private BigDecimal amount; + private Integer insertType; } diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RegisterOrderQuery.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RegisterOrderQuery.java index 91151ee..f7d5213 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RegisterOrderQuery.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/RegisterOrderQuery.java @@ -36,4 +36,5 @@ private Integer orderSource; // 订单金额 private BigDecimal amount; + private Integer insertType; } diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/CoursePackage.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/CoursePackage.java new file mode 100644 index 0000000..318b7d5 --- /dev/null +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/CoursePackage.java @@ -0,0 +1,180 @@ +package com.dsh.guns.modular.system.model.dto; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import com.dsh.course.feignClient.course.model.TCoursePackage; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.Date; + +/** + * <p> + * 课包 + * </p> + * + * @author administrator + * @since 2023-06-14 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("t_course_package") +public class CoursePackage{ + + + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 省 + */ + @TableField("province") + private String province; + /** + * 省编号 + */ + @TableField("provinceCode") + private String provinceCode; + /** + * 市 + */ + @TableField("city") + private String city; + /** + * 市编号 + */ + @TableField("cityCode") + private String cityCode; + /** + * 门店id + */ + @TableField("storeId") + private Integer storeId; + /** + * 课包类型id + */ + @TableField("coursePackageTypeId") + private Integer coursePackageTypeId; + /** + * 课包名称 + */ + @TableField("name") + private String name; + /** + * 上课场地id + */ + @TableField("siteId") + private Integer siteId; + /** + * 教练id + */ + @TableField("coachId") + private Integer coachId; + /** + * 最多预约人数 + */ + @TableField("maxSubscribeNumber") + private Integer maxSubscribeNumber; + + @TableField("codeTime") + private Integer codeTime; + /** + * 上课开始时间 + */ + @TableField("classStartTime") + private String classStartTime; + /** + * 上课结束时段 + */ + @TableField("classEndTime") + private String classEndTime; + /** + * 上课周,多个分号分隔 + */ + @TableField("classWeeks") + private String classWeeks; + /** + * 封面图 + */ + @TableField("coverDrawing") + private String coverDrawing; + /** + * 详情图 + */ + @TableField("detailDrawing") + private String detailDrawing; + /** + * 介绍图 + */ + @TableField("introduceDrawing") + private String introduceDrawing; + /** + * 排序 + */ + @TableField("sort") + private Integer sort; + /** + * 支付方式(1=现金,2=玩湃币) + */ + @TableField("payType") + private Integer payType; + /** + * 有效天数 + */ + @TableField("validDays") + private Integer validDays; + /** + * 课程状态(1=未开始,2=进行中,3=已结束,4=已取消) + */ + @TableField("status") + private Integer status; + /** + * 审核状态(1=待审核,2=已同意,3=已拒绝) + */ + @TableField("auditStatus") + private Integer auditStatus; + /** + * 审核人id + */ + @TableField("auditUserId") + private Integer auditUserId; + /** + * 审核备注 + */ + @TableField("authRemark") + private String authRemark; + /** + * 状态(1=正常,2=冻结,3=删除) + */ + @TableField("state") + private Integer state; + /** + * 添加时间 + */ + @TableField("insertTime") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date insertTime; + @TableField("type") + private Integer type; + @TableField("needNum") + private Integer needNum; + + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + @TableField("startTime") + private Date startTime; + + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + @TableField("endTime") + private Date endTime; +} diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html index 411caab..b600121 100644 --- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html +++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html @@ -41,6 +41,19 @@ <div class="ibox float-e-margins"> <div class="ibox-content"> <div class="form-horizontal"> + + <input hidden id="day" value="${data.dayone}"> + <input hidden id="month" value="${data.monthone}"> + <input hidden id="quarter" value="${data.quarterone}"> + <input hidden id="year" value="${data.yearone}"> + <input hidden id="age1" value="${stuData.age1}"> + <input hidden id="age2" value="${stuData.age2}"> + <input hidden id="age3" value="${stuData.age3}"> + <input hidden id="age4" value="${stuData.age4}"> + <input hidden id="boy" value="${stuData.boy}"> + <input hidden id="girl" value="${stuData.girl}"> + + <div class="row"> <div class="col-sm-10"> <div style="height: 50px;box-sizing: border-box;background:#f3f3f4;line-height: 50px;border:1px solid;margin-bottom: 20px;width: auto"> @@ -48,21 +61,23 @@ <div id="div2" class='table1' onclick="getContent(2)" style="border-right: 1px solid #333;">运营统计</div> <div id="div3" class='table1' onclick="getContent(3)" style="border-right: 1px solid #333;">教学统计</div> </div> + + <div class="row" id="content1" style="margin-left: 100px;"> <div class="col-sm-11"> <div class="form-group"> <div class="col-sm-10"> <h2>营收数据</h2> </br> - <div id = "money1" style="width: 1500px" > - <span id="totalIncome">总营收:</span> - <span id="yearIncome">本年度营收:</span> - <span id="monthIncome">本月度营收:</span> - <span id="weekIncome">本周营收:</span> - <span id="todayIncome">本日营收:</span> - </br> - </br> - </div> + <div id = "money1" style="width: 1500px" > + <span id="totalIncome">总营收:</span> + <span id="yearIncome">本年度营收:</span> + <span id="monthIncome">本月度营收:</span> + <span id="weekIncome">本周营收:</span> + <span id="todayIncome">本日营收:</span> + </br> + </br> + </div> <div id="main" style="width: 1280px;height:500px;"></div> </div> <div class="col-sm-10"> @@ -71,21 +86,19 @@ </br> <div class="col-sm-3" style="width: 400px;display: flex"> <#TimeCon id="beginTime" name="时间段:" isTime="false"/> - <#button name="搜索" icon="fa-search" clickFun="TCompetition.search()"/> + <#button name="搜索" icon="fa-search" clickFun="search1()"/> </div> </div> <div class="col-sm-10" style="width: 1500px" > </br> </br> - <span>会员费收入:</span> - <span>玩湃币充值收入:</span> - <span>课程收入:</span> - <span>活动收入:</span> - <span>订场收入:</span> - <span>赛事收入:</span> - <span>商品收入:</span> - <span>其他收入:</span> + <span>会员费收入:<label id="fee1">${data.fee1}</label></span> + <span>玩湃币充值收入:<label id="fee2">${data.fee2}</label></span> + <span>课程收入:<label id="fee3">${data.fee3}</label></span> + <span>活动/赛事收入:<label id="fee4">${data.fee4}</label></span> + <span>订场收入:<label id="fee5">${data.fee5}</label></span> + <span>商品收入:<label id="fee7">${data.fee7}</label></span> </br> </br> </br> @@ -239,12 +252,140 @@ </div> </div> </div> + + </div> <script src="${ctxPath}/modular/system/dataStatistics/echarts.min.js"></script> <script src="${ctxPath}/static/js/plugins/switchery/switchery.js"></script> <script> + function search1(){ + var time = $("#beginTime").val() + var ajax = new $ax(Feng.ctxPath + "/data/type1", function (data) { + + $("#fee1").text(data.fee1) + $("#fee2").text(data.fee2) + $("#fee3").text(data.fee3) + $("#fee4").text(data.fee4) + $("#fee5").text(data.fee5) + $("#fee7").text(data.fee7) + $("#day").val(data.dayone) + $("#month").val(data.monthone) + $("#quarter").val(data.quarterone) + $("#year").val(data.yearone) + + + + + + var chartDom = document.getElementById('cookieTicket'); + var myChart = echarts.init(chartDom); + var option; + option = { + title: { + text: '门票收入', + subtext: '', + left: 'center' + }, + tooltip: { + trigger: 'item' + }, + + series: [ + { + name: 'Access From', + type: 'pie', + radius: '50%', + data: [ + { value: data.dayone, name: '日卡' }, + { value: data.monthone, name: '月卡' }, + { value: data.quarterone, name: '季卡' }, + { value: data.yearone, name: '年卡' }, + + ], + emphasis: { + itemStyle: { + shadowBlur: 10, + shadowOffsetX: 0, + shadowColor: 'rgba(0, 0, 0, 0.5)' + } + } + } + ] + }; + myChart.setOption(option); + + var chartDom = document.getElementById('cookieCourse'); + var myChart = echarts.init(chartDom); + var option; + option = { + title: { + text: '课程收入', + subtext: '', + left: 'center' + }, + tooltip: { + trigger: 'item' + }, + + series: [ + { + name: 'Access From', + type: 'pie', + radius: '50%', + data: data.courseData, + emphasis: { + itemStyle: { + shadowBlur: 10, + shadowOffsetX: 0, + shadowColor: 'rgba(0, 0, 0, 0.5)' + } + } + } + ] + }; + myChart.setOption(option); + + + var chartDom = document.getElementById('cookieBooking'); + var myChart = echarts.init(chartDom); + var option; + option = { + title: { + text: '订场收入', + subtext: '', + left: 'center' + }, + tooltip: { + trigger: 'item' + }, + + series: [ + { + name: 'Access From', + type: 'pie', + radius: '50%', + data: data.siteData, + emphasis: { + itemStyle: { + shadowBlur: 10, + shadowOffsetX: 0, + shadowColor: 'rgba(0, 0, 0, 0.5)' + } + } + } + ] + }; + myChart.setOption(option); + + + }, function (data) { + + }); + ajax.set("time",time); + ajax.start(); + } var ans = []; - var weekX = ["1","2","上周","本周"]; + var weekX = ["1周","2周","3周","4周"]; var monthX = ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"]; var yearX = []; var timeX = []; @@ -281,7 +422,6 @@ getContent(1); getContent1(1); getContent2(1); - var ajax = new $ax(Feng.ctxPath + "/data/getIncomeData", function(resp){ yearX=resp.year @@ -301,10 +441,10 @@ var year = resp.yearIncome; var month = resp.monthIncome; var week = resp.weekIncome; + console.log("周度营收") + console.log(year) + console.log(week) var days = week[0].length; - for (let i = 1; i <= days; i++) { - weekX.push(i); - } var day = resp.dayIncome; option = { tooltip: { @@ -361,11 +501,6 @@ stack: 'Total', data: [ week[0][0], week[0][1], week[0][2], week[0][3], week[0][4] - , week[0][5], week[0][6], week[0][7], week[0][8], week[0][9] - , week[0][10], week[0][11], week[0][12], week[0][13], week[0][14] - , week[0][15], week[0][16], week[0][17], week[0][18], week[0][19], week[0][20] - , week[0][21], week[0][22], week[0][23], week[0][24], week[0][25], week[0][26] - , week[0][27], week[0][28], week[0][29], week[0][30], week[0][31] ] }, { @@ -647,138 +782,6 @@ } ] }; - option5 = { - tooltip: { - trigger: 'axis' - }, - legend: { - data: ['年度次数', '月度次数'] - }, - grid: { - left: '3%', - right: '4%', - bottom: '3%', - containLabel: true - }, - toolbox: { - feature: { - saveAsImage: {} - } - }, - xAxis: { - type: 'category', - boundaryGap: false, - data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'] - }, - yAxis: { - type: 'value' - }, - series: [ - { - name: '年度次数', - type: 'line', - stack: 'Total', - data: [120, 132, 101, 394, 980, 2380, 1680, 1190, 1410, 1330, 2110, 1330] - }, - { - name: '月度次数', - type: 'line', - stack: 'Total', - data: [120, 182, 211, 324, 120, 130, 310, 290, 220, 130, 240, 150] - } - ] - }; - option6 = { - tooltip: { - trigger: 'axis' - }, - legend: { - data: ['年度学员数', '月度学员数', '周度学员数', '日度学员数'] - }, - grid: { - left: '3%', - right: '4%', - bottom: '3%', - containLabel: true - }, - toolbox: { - feature: { - saveAsImage: {} - } - }, - xAxis: { - type: 'category', - boundaryGap: false, - data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'] - }, - yAxis: { - type: 'value' - }, - series: [ - { - name: '年度学员数', - type: 'line', - stack: 'Total', - data: [120, 132, 101, 134, 90, 230, 160, 190, 410, 330, 210, 330] - }, - { - name: '月度学员数', - type: 'line', - stack: 'Total', - data: [220, 182, 191, 234, 290, 330, 310, 190, 210, 330, 410, 160] - }, - { - name: '周度学员数', - type: 'line', - stack: 'Total', - data: [150, 232, 201, 154, 190, 330, 410, 160, 210, 195, 210, 188] - }, - { - name: '日度学员数', - type: 'line', - stack: 'Total', - data: [320, 332, 301, 334, 390, 330, 320, 10, 195, 145, 188, 160] - } - ] - }; - option7 = { - tooltip: { - trigger: 'axis' - }, - legend: { - data: ['年度耗课数量', '月度耗课数量', '周度耗课数量', '日度耗课数量'] - }, - grid: { - left: '3%', - right: '4%', - bottom: '3%', - containLabel: true - }, - toolbox: { - feature: { - saveAsImage: {} - } - }, - xAxis: { - type: 'category', - boundaryGap: false, - data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'] - }, - yAxis: { - type: 'value' - }, - series: [ - { - name: '年度耗课数量', - type: 'line', - stack: 'Total', - data: [120, 132, 101, 134, 90, 230, 160, 190, 410, 330, 210, 330] - }, - { - name: '月度耗课数量', - type: 'line', - stack: 'Total', - data: [220, 182, 191, 234, 290, 330, 310, 190, 210, 330, 410, 160] myChart.on('legendselectchanged', obj => { var options = myChart.getOption() //这里是选择切换什么样的x轴,那么他会进行对Y值的切换 @@ -987,6 +990,27 @@ function ptActivity() { var myChart4 = echarts.init(document.getElementById('activity')); var myChart5 = echarts.init(document.getElementById('prepare')); + myChart4.on('legendselectchanged', obj => { + var options = myChart4.getOption() + //这里是选择切换什么样的x轴,那么他会进行对Y值的切换 + if (obj.name == '年度次数') { + options.xAxis[0].data = yearX + } else if (obj.name == '月度次数') { + options.xAxis[0].data = monthX + } + myChart4.setOption(options, true) + }); + + myChart5.on('legendselectchanged', obj => { + var options = myChart5.getOption() + //这里是选择切换什么样的x轴,那么他会进行对Y值的切换 + if (obj.name == '年度次数') { + options.xAxis[0].data = yearX + } else if (obj.name == '月度次数') { + options.xAxis[0].data = monthX + } + myChart5.setOption(options, true) + }); var ajax2 = new $ax(Feng.ctxPath + "/data/actPt", function(data){ console.log(data) @@ -1214,6 +1238,8 @@ ptUser() + ptActivity() + } @@ -1286,12 +1312,12 @@ } } -</script> -<script> $(function(){ + var chartDom = document.getElementById('cookieTicket'); var myChart = echarts.init(chartDom); var option; + option = { title: { text: '门票收入', @@ -1308,8 +1334,10 @@ type: 'pie', radius: '50%', data: [ - { value: 1048, name: '年票' }, - { value: 735, name: '亲子票' }, + { value: $("#day").val(), name: '日卡' }, + { value: $("#month").val(), name: '月卡' }, + { value: $("#quarter").val(), name: '季卡' }, + { value: $("#year").val(), name: '年卡' }, ], emphasis: { @@ -1322,11 +1350,27 @@ } ] }; - myChart.setOption(option); + myChart.setOption(option); }); $(function(){ + var courseData = "${data.courseData}" + courseData =courseData.replace("[","").replace("]","") + courseData = courseData.split('},') + + var a=[]; + for (let j = 0; j <courseData.length; j++) { + if(j<courseData.length-1){ + var d = courseData[j].replace("{","").replace("}","").split(",") + let obj ={ + name:d[0].split("=")[1], + value:d[1].split("=")[1] + } + a.push(obj) + } + } var chartDom = document.getElementById('cookieCourse'); - var myChart = echarts.init(chartDom); + var myChart = echarts.init(chartDom) + var option; option = { title: { @@ -1343,12 +1387,7 @@ name: 'Access From', type: 'pie', radius: '50%', - data: [ - { value: 1048, name: '篮球课' }, - { value: 735, name: '羽毛课' }, - { value: 735, name: '足球课' }, - - ], + data: a, emphasis: { itemStyle: { shadowBlur: 10, @@ -1362,6 +1401,22 @@ myChart.setOption(option); }); $(function(){ + var courseData = "${data.siteData}" + + courseData =courseData.replace("[","").replace("]","") + courseData = courseData.split('},') + + var a=[]; + for (let j = 0; j <courseData.length; j++) { + if(j<courseData.length-1){ + var d = courseData[j].replace("{","").replace("}","").split(",") + let obj ={ + name:d[0].split("=")[1], + value:d[1].split("=")[1] + } + a.push(obj) + } + } var chartDom = document.getElementById('cookieBooking'); var myChart = echarts.init(chartDom); var option; @@ -1380,48 +1435,7 @@ name: 'Access From', type: 'pie', radius: '50%', - data: [ - { value: 1048, name: '激战' }, - { value: 735, name: '篮球场' }, - { value: 735, name: '足球场' }, - - ], - emphasis: { - itemStyle: { - shadowBlur: 10, - shadowOffsetX: 0, - shadowColor: 'rgba(0, 0, 0, 0.5)' - } - } - } - ] - }; - myChart.setOption(option); - }); - $(function(){ - var chartDom = document.getElementById('cookieAge'); - var myChart = echarts.init(chartDom); - var option; - option = { - title: { - text: '年龄分布', - subtext: '', - left: 'center' - }, - tooltip: { - trigger: 'item' - }, - - series: [ - { - name: 'Access From', - type: 'pie', - radius: '50%', - data: [ - { value: 1048, name: '30-35' }, - { value: 735, name: '12-18' }, - - ], + data: a, emphasis: { itemStyle: { shadowBlur: 10, @@ -1454,8 +1468,10 @@ type: 'pie', radius: '50%', data: [ - { value: 1048, name: '30-35' }, - { value: 735, name: '12-18' }, + { value: $("#age1").val(), name: '0-7岁' }, + { value: $("#age2").val(), name: '8-10岁' }, + { value:$("#age3").val(), name: '11-12岁' }, + { value: $("#age4").val(), name: '13岁以上' }, ], emphasis: { @@ -1490,8 +1506,8 @@ type: 'pie', radius: '50%', data: [ - { value: 1048, name: '男' }, - { value: 735, name: '女' }, + { value: $("#boy").val(), name: '男' }, + { value: $("#girl").val(), name: '女' }, ], emphasis: { @@ -1501,50 +1517,6 @@ shadowColor: 'rgba(0, 0, 0, 0.5)' } } - } - ] - }; - myChart.setOption(option); - }); - $(function(){ - var chartDom = document.getElementById('city'); - var myChart = echarts.init(chartDom); - var option; - - option = { - xAxis: { - type: 'category', - data: ['北京', '上海', '广东', '深圳', '成都', '曹县', '奥里给'] - }, - yAxis: { - type: 'value' - }, - series: [ - { - data: [120, 200, 150, 80, 70, 110, 130], - type: 'bar' - } - ] - }; - myChart.setOption(option); - }); - $(function(){ - var chartDom = document.getElementById('cookieTeachCourse'); - var myChart = echarts.init(chartDom); - var option; - - option = { - xAxis: { - type: 'category', - data: ['足球课', '篮球课', '羽毛球课', '网球课', '排球课'] - }, - yAxis: { - type: 'value' - }, - series: [ - { - data: [120, 200, 150, 80, 70, 110, 130], - type: 'bar' } ] }; diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ticket/ticket_add.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ticket/ticket_add.html index 88683dd..113cc50 100644 --- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ticket/ticket_add.html +++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ticket/ticket_add.html @@ -123,7 +123,7 @@ </div> </div> <#input id="startTime" name="有效期" type="text"/> - @if(roletype==3){ + @if(userType==3){ <div class="row" id="belongsCon" > <div class="form-group"> <div class="form-group"> -- Gitblit v1.7.1