package com.boying.service.impl; import cn.hutool.http.HttpRequest; import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.boying.common.R; import com.boying.common.ReturnData; import com.boying.common.SystemConfigProperties; import com.boying.entity.Ticket; import com.boying.mapper.TicketMapper; import cn.hutool.core.date.DateUtil; import com.boying.service.TicketService; import com.boying.util.HTTPEntityUtil; import com.google.gson.Gson; import lombok.AllArgsConstructor; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Service; import org.springframework.web.client.RestTemplate; import java.util.Date; import java.util.HashMap; import java.util.Map; /** * @author kdq * @version 1.0.0 * @ClassName TicketServiceImpl.java * @Description TODO * @createTime 2022年11月20日 10:31:00 */ @Service @AllArgsConstructor public class TicketServiceImpl extends ServiceImpl implements TicketService { private final TicketMapper ticketMapper; private SystemConfigProperties systemConfigProperties; @Override public Integer count1() { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.lambda() .between(Ticket::getCreateTime,DateUtil.beginOfDay(new Date()),DateUtil.endOfDay(new Date())) .isNotNull(Ticket::getPayCode); return ticketMapper.selectCount(wrapper); } @Override public int count2() { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.lambda() .between(Ticket::getCreateTime,DateUtil.beginOfDay(new Date()),DateUtil.endOfDay(new Date())) .eq(Ticket::getPayStatus,1); return ticketMapper.selectCount(wrapper); } @Override public double sumByPrice() { Double a = null; QueryWrapper wrapper = new QueryWrapper<>(); wrapper.select("IFNULL(ROUND(SUM(money)),0) as money"); wrapper.lambda().between(Ticket::getCreateTime,DateUtil.beginOfDay(new Date()),DateUtil.endOfDay(new Date())) .eq(Ticket::getPayStatus,1); Map map = getMap(wrapper); a = Double.valueOf(map.get("money").toString()); if(a==null){ return 0.0; }else{ return a; } } @Override public int count3() { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.lambda() .between(Ticket::getCreateTime,DateUtil.beginOfMonth(new Date()),DateUtil.endOfMonth(new Date())); return ticketMapper.selectCount(wrapper); } @Override public double sumByPrice2() { Double a = null; QueryWrapper wrapper = new QueryWrapper<>(); wrapper.select("IFNULL(ROUND(SUM(money)),0) as money"); wrapper.lambda().between(Ticket::getCreateTime,DateUtil.beginOfMonth(new Date()),DateUtil.endOfMonth(new Date())) .eq(Ticket::getPayStatus,1); Map map = getMap(wrapper); a = Double.valueOf(map.get("money").toString()); if(a==null){ return 0; }else{ return a; } } @Override public int count4() { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.lambda() .eq(Ticket::getPayStatus,1); int a = count(wrapper)*100; int b = count(); return (a/b); } @Override public int count5(int type) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.lambda() .between(Ticket::getCreateTime,DateUtil.beginOfDay(new Date()),DateUtil.endOfDay(new Date())) .eq(Ticket::getType,1); if(type==1){ return ticketMapper.selectCount(wrapper); }else{ wrapper.lambda().eq(Ticket::getStatus,1); return ticketMapper.selectCount(wrapper); } } @Override public int count6() { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.lambda() .between(Ticket::getCreateTime,DateUtil.beginOfDay(new Date()),DateUtil.endOfDay(new Date())) .eq(Ticket::getType,1); return ticketMapper.selectCount(wrapper); } @Override public double sumByPrice3() { Double a = null; QueryWrapper wrapper = new QueryWrapper<>(); wrapper.select("IFNULL(ROUND(SUM(money)),0) as money"); wrapper.lambda().between(Ticket::getCreateTime,DateUtil.beginOfDay(new Date()),DateUtil.endOfDay(new Date())) .eq(Ticket::getType,0) .eq(Ticket::getPayStatus,1); Map map = getMap(wrapper); a = Double.valueOf(map.get("money").toString()); if(a==null){ return 0.0; }else{ return a; } } @Override public void uploadInfo(Ticket ticket) { String ffzfIp = systemConfigProperties.getFfzfIp(); String info = systemConfigProperties.getInfo(); Map map = new HashMap<>();; String jsonString = JSONUtil.toJsonStr(ticket); Gson gson = new Gson(); map = gson.fromJson(jsonString, map.getClass()); System.out.println(jsonString); RestTemplate restTemplate = new RestTemplate(); ResponseEntity entity = restTemplate.postForEntity(ffzfIp+info, HTTPEntityUtil.setEntity(map), R.class); } }