package com.stylefeng.guns.modular.system.controller.general;
|
|
import com.baomidou.mybatisplus.mapper.EntityWrapper;
|
import com.baomidou.mybatisplus.mapper.Wrapper;
|
import com.baomidou.mybatisplus.plugins.Page;
|
import com.stylefeng.guns.core.base.controller.BaseController;
|
import com.stylefeng.guns.core.common.constant.factory.PageFactory;
|
import com.stylefeng.guns.core.shiro.ShiroKit;
|
import com.stylefeng.guns.core.util.ExcelUtil;
|
import com.stylefeng.guns.core.util.SinataUtil;
|
import com.stylefeng.guns.core.util.ToolUtil;
|
import com.stylefeng.guns.modular.system.model.TBalanceModifyRecord;
|
import com.stylefeng.guns.modular.system.model.TDriver;
|
import com.stylefeng.guns.modular.system.service.*;
|
import com.stylefeng.guns.modular.system.util.ResultUtil;
|
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.servlet.http.HttpServletResponse;
|
import java.io.OutputStream;
|
import java.math.BigDecimal;
|
import java.math.RoundingMode;
|
import java.text.DateFormat;
|
import java.text.SimpleDateFormat;
|
import java.util.Date;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.stream.Collectors;
|
|
/**
|
* 收入明细
|
*/
|
@Controller
|
@RequestMapping("/incomeDetail")
|
public class IncomeDetailController extends BaseController {
|
|
private String PREFIX = "/system/incomeDetail/";
|
|
@Autowired
|
private IComplaintDeductmoneyService complaintDeductmoneyService;
|
|
|
@Autowired
|
private ITTaxiCardPaymentService taxiCardPaymentService;
|
|
@Autowired
|
private ITOrderLogisticsService orderLogisticsService;
|
|
@Autowired
|
private ITOrderTaxiService orderTaxiService;
|
|
@Autowired
|
private IIncomeService incomeService;
|
|
|
/**
|
* 跳转到订单收益
|
* @return
|
*/
|
@RequestMapping("order")
|
public String order() {
|
return PREFIX + "order.html";
|
}
|
|
@RequestMapping(value = "/orderList")
|
@ResponseBody
|
public Object orderList(String insertTimeOne,String insertTime,
|
String phone,Integer type,String name,Integer state, Integer income, Integer payType) {
|
if(insertTime==null){
|
insertTime=insertTimeOne;
|
}
|
String beginTime = null;
|
String endTime = null;
|
if (SinataUtil.isNotEmpty(insertTime)){
|
String[] timeArray = insertTime.split(" - ");
|
beginTime = timeArray[0];
|
endTime = timeArray[1];
|
}
|
Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
|
/*if (ShiroKit.getUser().getRoleType() != 1){
|
page.setRecords(null);
|
}else{*/
|
|
List<Map<String,Object>> list = orderTaxiService.getIncomeOrderList(page,beginTime,endTime,phone,name,state,type,ShiroKit.getUser().getObjectId(), income, payType);
|
list = list.stream().filter(e-> ToolUtil.isNotEmpty(e.get("payState"))).collect(Collectors.toList());
|
Page<Map<String,Object>> page1 = new Page<>(0, 1000000);
|
List<Map<String,Object>> list1 = orderTaxiService.getIncomeOrderList(page1,beginTime,endTime,phone,name,state,type,ShiroKit.getUser().getObjectId(), income, payType);
|
list1 = list1.stream().filter(e->ToolUtil.isNotEmpty(e.get("payState"))).collect(Collectors.toList());
|
BigDecimal orderMoney = new BigDecimal("0");
|
BigDecimal money = new BigDecimal("0");
|
BigDecimal payMoney = new BigDecimal("0");
|
BigDecimal couponMoney = new BigDecimal("0");
|
BigDecimal discountAmount = new BigDecimal("0");
|
BigDecimal redPacketMoney = new BigDecimal("0");
|
BigDecimal additionalFee = new BigDecimal("0");
|
BigDecimal other = new BigDecimal("0");
|
for (Map<String, Object> map : list) {
|
Object money1 = map.get("money");
|
BigDecimal bigDecimal = new BigDecimal(money1.toString());
|
BigDecimal bigDecimal1 = bigDecimal.setScale(2, RoundingMode.HALF_UP);
|
map.put("money",bigDecimal1.toString());
|
}
|
for (Map<String, Object> map : list1) {
|
switch (Integer.valueOf(map.get("incomeType").toString())){
|
case 1:
|
map.put("orderMoney", 0);
|
map.put("couponMoney", 0);
|
map.put("discountAmount", 0);
|
map.put("redPacketMoney", 0);
|
map.put("additionalFee", 0);
|
map.put("payMoney", 0);
|
map.put("money", 0);
|
break;
|
case 2:
|
break;
|
case 3:
|
map.put("orderMoney", 0);
|
map.put("couponMoney", 0);
|
map.put("discountAmount", 0);
|
map.put("redPacketMoney", 0);
|
map.put("additionalFee", 0);
|
map.put("payMoney", 0);
|
map.put("money", 0);
|
break;
|
case 4:
|
map.put("orderMoney", 0);
|
map.put("couponMoney", 0);
|
map.put("discountAmount", 0);
|
map.put("redPacketMoney", 0);
|
map.put("additionalFee", 0);
|
map.put("payMoney", 0);
|
map.put("money", 0);
|
break;
|
case 5:
|
map.put("orderMoney", 0);
|
map.put("couponMoney", 0);
|
map.put("discountAmount", 0);
|
map.put("redPacketMoney", 0);
|
map.put("additionalFee", 0);
|
map.put("payMoney", 0);
|
map.put("money", 0);
|
break;
|
case 6:
|
break;
|
case 7:
|
map.put("orderMoney", 0);
|
map.put("couponMoney", 0);
|
map.put("discountAmount", 0);
|
map.put("redPacketMoney", 0);
|
map.put("additionalFee", 0);
|
map.put("payMoney", 0);
|
map.put("money", 0);
|
break;
|
case 8:
|
map.put("orderMoney", 0);
|
map.put("couponMoney", 0);
|
map.put("discountAmount", 0);
|
map.put("redPacketMoney", 0);
|
map.put("additionalFee", 0);
|
map.put("payMoney", 0);
|
map.put("money", 0);
|
break;
|
case 9:
|
break;
|
default:
|
break;
|
}
|
orderMoney = orderMoney.add(new BigDecimal(null == map.get("orderMoney") ? "0" : map.get("orderMoney").toString()));
|
money = money.add(new BigDecimal(null == map.get("money") ? "0" : map.get("money").toString()));
|
payMoney = payMoney.add(new BigDecimal(null == map.get("payMoney") ? "0" : map.get("payMoney").toString()));
|
couponMoney = couponMoney.add(new BigDecimal(null == map.get("couponMoney") ? "0" : map.get("couponMoney").toString()));
|
discountAmount = discountAmount.add(new BigDecimal(null == map.get("discountAmount") ? "0" : map.get("discountAmount").toString()));
|
redPacketMoney = redPacketMoney.add(new BigDecimal(null == map.get("redPacketMoney") ? "0" : map.get("redPacketMoney").toString()));
|
additionalFee = additionalFee.add(new BigDecimal(null == map.get("additionalFee") ? "0" : map.get("additionalFee").toString()));
|
other = other.add(new BigDecimal(null == map.get("other") ? "0" : map.get("other").toString()));
|
}
|
Map<String,Object> map = new HashMap<>();
|
map.put("orderMoney", orderMoney.doubleValue());
|
map.put("money", money.doubleValue());
|
map.put("payMoney", payMoney.doubleValue());
|
map.put("couponMoney", couponMoney.doubleValue());
|
map.put("discountAmount", discountAmount.doubleValue());
|
map.put("redPacketMoney", redPacketMoney.doubleValue());
|
map.put("additionalFee", additionalFee.doubleValue());
|
map.put("other", other.doubleValue());
|
|
// Map<String,Object> map = orderTaxiService.getIncomeOrderSumMoney(beginTime,endTime,phone,name,state,type,ShiroKit.getUser().getObjectId(), income, payType);
|
if(!list.isEmpty() && map!=null){
|
map.put("insertTime","合计");
|
list.add(map);
|
}else {
|
map.put("insertTime","合计");
|
list.add(map);
|
}
|
page.setRecords(list);
|
/*}*/
|
return super.packForBT(page);
|
}
|
|
|
@RequestMapping("/exportOrder")
|
@ResponseBody
|
public Object exportOrder(HttpServletResponse response, String insertTime,
|
String phone,Integer type,String name,Integer state, Integer income, Integer payType){
|
try {
|
Date date = new Date();
|
DateFormat format = new SimpleDateFormat("yyyyMMdd");
|
String time = format.format(date);
|
String fileName = "订单收益"+time+".xls";
|
String[] title = new String[] {"交易时间","收益类型","订单类型","订单ID","下单用户昵称","下单用户手机号","乘车用户姓名","乘车用户手机号","起点","终点"
|
,"司机姓名", "司机手机号", "接单车辆","支付类型","订单原始金额", "优惠券", "打车卡", "红包", "附加费"
|
, "客户支付金额","平台抽佣金额","司机订单收益支出", "其他收入","状态"
|
};
|
|
|
String beginTime = null;
|
String endTime = null;
|
if (SinataUtil.isNotEmpty(insertTime)){
|
String[] timeArray = insertTime.split(" - ");
|
beginTime = timeArray[0];
|
endTime = timeArray[1];
|
}
|
List<Map<String,Object>> mapList = orderTaxiService.getIncomeOrderListEx(beginTime,endTime,phone,name,state,type,ShiroKit.getUser().getObjectId(), income, payType);
|
mapList = mapList.stream().filter(e-> ToolUtil.isNotEmpty(e.get("payState"))).collect(Collectors.toList());
|
String[][] values = new String[mapList.size()][];
|
for (int i = 0; i < mapList.size(); i++) {
|
Map<String,Object> d=mapList.get(i);
|
values[i] = new String[title.length];
|
values[i][0]=d.get("insertTime").toString();
|
values[i][1]=d.get("incomeType")==null?"":
|
d.get("incomeType").toString().equals("1")?"活动收入":
|
d.get("incomeType").toString().equals("2")?"跑单收入":
|
d.get("incomeType").toString().equals("3")?"取消订单收入":
|
d.get("incomeType").toString().equals("4")?"改派订单收入":
|
d.get("incomeType").toString().equals("6")?"感谢费":
|
d.get("incomeType").toString().equals("7")?"超时扣款":
|
d.get("incomeType").toString().equals("8")?"投诉扣款":
|
d.get("incomeType").toString().equals("9")?"小件物流超时退款":"";
|
values[i][2]=null != d.get("type") ? d.get("type").toString().equals("1")?"快车":
|
d.get("type").toString().equals("2")?"出租车":
|
d.get("type").toString().equals("3")?"城际":
|
d.get("type").toString().equals("4")?"同城物流":"跨城物流" : "";
|
values[i][3]=d.get("orderNum") == null ? "" : d.get("orderNum").toString();
|
values[i][4]=null != d.get("userName") ? d.get("userName").toString() : "";
|
values[i][5]=null != d.get("userPhone") ? d.get("userPhone").toString() : "";
|
values[i][6]=null != d.get("passengers") ? d.get("passengers").toString() : "";
|
values[i][7]=null != d.get("passengersPhone") ? d.get("passengersPhone").toString() : "";
|
values[i][8]=null != d.get("startAddress") ? d.get("startAddress").toString() : "";
|
values[i][9]=null != d.get("endAddress") ? d.get("endAddress").toString() : "";
|
values[i][10]=null != d.get("driverName") ? d.get("driverName").toString() : "";
|
values[i][11]=null != d.get("driverPhone") ? d.get("driverPhone").toString() : "";
|
values[i][12]=null != d.get("carLicensePlate") ? d.get("carLicensePlate").toString() : "";
|
|
values[i][13]=null != d.get("payTypeName") ? d.get("payTypeName").toString() : "";
|
|
values[i][14]=d.get("incomeType")==null?(null != d.get("orderMoney") ? d.get("orderMoney").toString() : ""):
|
d.get("incomeType").toString().equals("1")? "":
|
d.get("incomeType").toString().equals("2")?(null != d.get("orderMoney") ? d.get("orderMoney").toString() : ""):
|
d.get("incomeType").toString().equals("3")?"":
|
d.get("incomeType").toString().equals("4")?"":
|
d.get("incomeType").toString().equals("6")?(null != d.get("orderMoney") ? d.get("orderMoney").toString() : ""):
|
d.get("incomeType").toString().equals("7")?"":
|
d.get("incomeType").toString().equals("8")?"":
|
d.get("incomeType").toString().equals("9")?(null != d.get("orderMoney") ? d.get("orderMoney").toString() : ""):"";
|
values[i][15]=d.get("incomeType")==null?(d.get("couponMoney")==null?"":d.get("couponMoney").toString()):
|
d.get("incomeType").toString().equals("1")? "":
|
d.get("incomeType").toString().equals("2")?(d.get("couponMoney")==null?"":d.get("couponMoney").toString()):
|
d.get("incomeType").toString().equals("3")?"":
|
d.get("incomeType").toString().equals("4")?"":
|
d.get("incomeType").toString().equals("6")?(d.get("couponMoney")==null?"":d.get("couponMoney").toString()):
|
d.get("incomeType").toString().equals("7")?"":
|
d.get("incomeType").toString().equals("8")?"":
|
d.get("incomeType").toString().equals("9")?(d.get("couponMoney")==null?"":d.get("couponMoney").toString()):"";
|
values[i][16]=d.get("incomeType")==null?(null != d.get("discountAmount") ? d.get("discountAmount").toString() : ""):
|
d.get("incomeType").toString().equals("1")? "":
|
d.get("incomeType").toString().equals("2")?(null != d.get("discountAmount") ? d.get("discountAmount").toString() : ""):
|
d.get("incomeType").toString().equals("3")?"":
|
d.get("incomeType").toString().equals("4")?"":
|
d.get("incomeType").toString().equals("6")?(null != d.get("discountAmount") ? d.get("discountAmount").toString() : ""):
|
d.get("incomeType").toString().equals("7")?"":
|
d.get("incomeType").toString().equals("8")?"":
|
d.get("incomeType").toString().equals("9")?(null != d.get("discountAmount") ? d.get("discountAmount").toString() : ""):"";
|
values[i][17]=d.get("incomeType")==null?(null != d.get("redPacketMoney") ? d.get("redPacketMoney").toString() : ""):
|
d.get("incomeType").toString().equals("1")? "":
|
d.get("incomeType").toString().equals("2")?(null != d.get("redPacketMoney") ? d.get("redPacketMoney").toString() : ""):
|
d.get("incomeType").toString().equals("3")?"":
|
d.get("incomeType").toString().equals("4")?"":
|
d.get("incomeType").toString().equals("6")?(null != d.get("redPacketMoney") ? d.get("redPacketMoney").toString() : ""):
|
d.get("incomeType").toString().equals("7")?"":
|
d.get("incomeType").toString().equals("8")?"":
|
d.get("incomeType").toString().equals("9")?(null != d.get("redPacketMoney") ? d.get("redPacketMoney").toString() : ""):"";
|
values[i][18]=d.get("incomeType")==null?(null != d.get("additionalFee") ? d.get("additionalFee").toString() : ""):
|
d.get("incomeType").toString().equals("1")? "":
|
d.get("incomeType").toString().equals("2")?(null != d.get("additionalFee") ? d.get("additionalFee").toString() : ""):
|
d.get("incomeType").toString().equals("3")?"":
|
d.get("incomeType").toString().equals("4")?"":
|
d.get("incomeType").toString().equals("6")?(null != d.get("additionalFee") ? d.get("additionalFee").toString() : ""):
|
d.get("incomeType").toString().equals("7")?"":
|
d.get("incomeType").toString().equals("8")?"":
|
d.get("incomeType").toString().equals("9")?(null != d.get("additionalFee") ? d.get("additionalFee").toString() : ""):"";
|
values[i][19]=d.get("incomeType")==null?(null != d.get("payMoney") ? d.get("payMoney").toString() : ""):
|
d.get("incomeType").toString().equals("1")? "":
|
d.get("incomeType").toString().equals("2")?(null != d.get("payMoney") ? d.get("payMoney").toString() : ""):
|
d.get("incomeType").toString().equals("3")?"":
|
d.get("incomeType").toString().equals("4")?"":
|
d.get("incomeType").toString().equals("6")?(null != d.get("payMoney") ? d.get("payMoney").toString() : ""):
|
d.get("incomeType").toString().equals("7")?"":
|
d.get("incomeType").toString().equals("8")?"":
|
d.get("incomeType").toString().equals("9")?(null != d.get("payMoney") ? d.get("payMoney").toString() : ""):"";
|
values[i][20]=d.get("incomeType")==null?(new BigDecimal((null != d.get("orderMoney") ? Double.valueOf(d.get("orderMoney").toString()) : 0D) - (d.get("money")==null?0d:Double.valueOf(d.get("money").toString()))).setScale(2, BigDecimal.ROUND_HALF_EVEN).toPlainString()):
|
d.get("incomeType").toString().equals("1")? "":
|
d.get("incomeType").toString().equals("2")?(new BigDecimal((null != d.get("orderMoney") ? Double.valueOf(d.get("orderMoney").toString()) : 0D) - (d.get("money")==null?0d:Double.valueOf(d.get("money").toString()))).setScale(2, BigDecimal.ROUND_HALF_EVEN).toPlainString()):
|
d.get("incomeType").toString().equals("3")?"":
|
d.get("incomeType").toString().equals("4")?"":
|
d.get("incomeType").toString().equals("6")?(new BigDecimal((null != d.get("orderMoney") ? Double.valueOf(d.get("orderMoney").toString()) : 0D) - (d.get("money")==null?0d:Double.valueOf(d.get("money").toString()))).setScale(2, BigDecimal.ROUND_HALF_EVEN).toPlainString()):
|
d.get("incomeType").toString().equals("7")?"":
|
d.get("incomeType").toString().equals("8")?"":
|
d.get("incomeType").toString().equals("9")?(new BigDecimal((null != d.get("orderMoney") ? Double.valueOf(d.get("orderMoney").toString()) : 0D) - (d.get("money")==null?0d:Double.valueOf(d.get("money").toString()))).setScale(2, BigDecimal.ROUND_HALF_EVEN).toPlainString()):"";
|
values[i][21]=d.get("incomeType")==null?(null != d.get("money") ? new BigDecimal(d.get("money").toString()).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString() : ""):
|
d.get("incomeType").toString().equals("1")? "":
|
d.get("incomeType").toString().equals("2")?(null != d.get("money") ? new BigDecimal(d.get("money").toString()).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString() : ""):
|
d.get("incomeType").toString().equals("3")?"":
|
d.get("incomeType").toString().equals("4")?"":
|
d.get("incomeType").toString().equals("6")?(null != d.get("money") ? new BigDecimal(d.get("money").toString()).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString() : ""):
|
d.get("incomeType").toString().equals("7")?"":
|
d.get("incomeType").toString().equals("8")?"":
|
d.get("incomeType").toString().equals("9")?(null != d.get("money") ? new BigDecimal(d.get("money").toString()).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString() : ""):"";
|
values[i][22]=null != d.get("other") ? d.get("other").toString() : "";
|
if("改派订单收入".equals(values[i][1])){
|
values[i][23]="已支付";
|
}else {
|
|
values[i][23]=null != d.get("payState") ? d.get("payState").toString() : "";
|
}
|
for (int i1 = 14; i1 < 23; i1++) {
|
if(ToolUtil.isEmpty(values[i][i1])){
|
values[i][i1]="0";
|
}
|
}
|
|
}
|
String fileNameTitle="订单收益";
|
HSSFWorkbook wb = ExcelUtil.getHSSFWorkbookTime(fileNameTitle+time, title, values, null,insertTime);
|
this.setResponseHeader(response, fileName);
|
OutputStream os = response.getOutputStream();
|
wb.write(os);
|
os.flush();
|
os.close();
|
|
} catch (Exception e) {
|
e.printStackTrace();
|
/*return ApiUtil.putFailObj("导出失败");*/
|
}
|
return SUCCESS_TIP;
|
}
|
|
|
|
/**
|
* 跳转超时罚款
|
* @return
|
*/
|
@RequestMapping("/timeOut")
|
public String timeOut() {
|
return PREFIX + "timeOut.html";
|
}
|
|
|
@RequestMapping(value = "/timeOutList")
|
@ResponseBody
|
public Object timeOutList(String insertTime,
|
String phone,
|
String name,
|
String id, Integer orderType) {
|
String beginTime = null;
|
String endTime = null;
|
if (SinataUtil.isNotEmpty(insertTime)){
|
String[] timeArray = insertTime.split(" - ");
|
beginTime = timeArray[0];
|
endTime = timeArray[1];
|
}
|
Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
|
/*if (ShiroKit.getUser().getRoleType() != 1){
|
page.setRecords(null);
|
}else{*/
|
|
List<Map<String,Object>> list = orderLogisticsService.getTimeOutOrderList(page,beginTime,endTime,phone,name,id,ShiroKit.getUser().getObjectId(), orderType);
|
Map<String,Object> map = orderLogisticsService.getTimeOutOrderSumMoney(beginTime,endTime,phone,name,id,ShiroKit.getUser().getObjectId(), orderType);
|
if(!list.isEmpty() && map!=null){
|
map.put("id","合计");
|
list.add(map);
|
}
|
page.setRecords(list);
|
/*}*/
|
return super.packForBT(page);
|
}
|
|
|
@RequestMapping("/exportTimeOut")
|
@ResponseBody
|
public Object exportTimeOut(HttpServletResponse response, String insertTime,
|
String phone,
|
String name,
|
String id, Integer orderType){
|
try {
|
Date date = new Date();
|
DateFormat format = new SimpleDateFormat("yyyyMMdd");
|
String time = format.format(date);
|
String fileName = "超时扣款明细"+time+".xls";
|
String[] title = new String[] {"扣款时间","退款时间","订单ID","订单类型","下单用户昵称","下单用户手机号","乘车用户姓名","乘车用户手机号","起点","终点","接单司机姓名","接单司机手机号","接单车辆"
|
,"扣款金额"
|
,"退款金额"
|
,"平台收益金额"
|
,"状态"};
|
|
|
String beginTime = null;
|
String endTime = null;
|
if (SinataUtil.isNotEmpty(insertTime)){
|
String[] timeArray = insertTime.split(" - ");
|
beginTime = timeArray[0];
|
endTime = timeArray[1];
|
}
|
List<Map<String,Object>> mapList = orderLogisticsService.getTimeOutOrderListEx(beginTime,endTime,phone,name,id,ShiroKit.getUser().getObjectId(), orderType);
|
|
String[][] values = new String[mapList.size()][];
|
for (int i = 0; i < mapList.size(); i++) {
|
Map<String,Object> d=mapList.get(i);
|
values[i] = new String[title.length];
|
values[i][0]=d.get("endServiceTime").toString();
|
values[i][1]=d.get("createTime")==null?"":d.get("createTime").toString();
|
values[i][2]=d.get("id").toString();
|
values[i][3]=d.get("type").toString().equals("4")?"同城物流":"跨城物流";
|
values[i][4]=d.get("nickName").toString();
|
values[i][5]=d.get("phone").toString();
|
values[i][6]=d.get("recipient").toString();
|
values[i][7]=d.get("recipientPhone").toString();
|
values[i][8]=d.get("startAddress").toString();
|
values[i][9]=d.get("endAddress").toString();
|
values[i][10]=d.get("name").toString();
|
values[i][11]=d.get("phone").toString();
|
values[i][12]=d.get("carLicensePlate").toString();
|
values[i][13]=null != d.get("timeOutMoney") ? d.get("timeOutMoney").toString() : "";
|
values[i][14]=d.get("returnMoney")==null?"0":d.get("returnMoney").toString();
|
values[i][15]=null != d.get("companyMoney") ? d.get("companyMoney").toString() : "";
|
values[i][16]=d.get("returnMoney")==null || Double.valueOf(d.get("returnMoney").toString()) == 0?"已扣款":"已退款";
|
}
|
String fileNameTitle="超时扣款明细";
|
HSSFWorkbook wb = ExcelUtil.getHSSFWorkbookTime(fileNameTitle+time, title, values, null,insertTime);
|
this.setResponseHeader(response, fileName);
|
OutputStream os = response.getOutputStream();
|
wb.write(os);
|
os.flush();
|
os.close();
|
|
} catch (Exception e) {
|
e.printStackTrace();
|
/*return ApiUtil.putFailObj("导出失败");*/
|
}
|
return SUCCESS_TIP;
|
}
|
|
|
|
/**
|
* 跳转投诉扣款
|
* @return
|
*/
|
@RequestMapping("/complaintDeductmoney")
|
public String complaintDeductmoney() {
|
return PREFIX + "complaintDeductmoney.html";
|
}
|
|
|
|
|
/**
|
* 打车卡
|
* @return
|
*/
|
@RequestMapping("/taxiCardPayment")
|
public String taxiCardPayment() {
|
return PREFIX + "taxiCardPayment.html";
|
}
|
|
@RequestMapping(value = "/taxiCardPaymentList")
|
@ResponseBody
|
public Object taxiCardPaymentList(String insertTime,
|
String type,
|
String phone,
|
String name,
|
String id,
|
String cardName) {
|
String beginTime = null;
|
String endTime = null;
|
if (SinataUtil.isNotEmpty(insertTime)){
|
String[] timeArray = insertTime.split(" - ");
|
beginTime = timeArray[0];
|
endTime = timeArray[1];
|
}
|
Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
|
/*if (ShiroKit.getUser().getRoleType() != 1){
|
page.setRecords(null);
|
}else{*/
|
|
List<Map<String,Object>> list = taxiCardPaymentService.getList(page,beginTime,endTime,null,type,phone,name,id,cardName,ShiroKit.getUser().getObjectId());
|
if(list!=null && list.size()>0){
|
Map<String,Object> map = new HashMap<>();
|
map.put("id","合计");
|
map.put("payMoney",taxiCardPaymentService.getSumMoney(beginTime,endTime,null,type,phone,name,id,cardName,ShiroKit.getUser().getObjectId()));
|
list.add(map);
|
}
|
|
page.setRecords(list);
|
/* }*/
|
return super.packForBT(page);
|
}
|
|
|
@RequestMapping("/exportTaxiCardPayment")
|
@ResponseBody
|
public Object exportTaxiCardPaymentList(HttpServletResponse response, String insertTime,String type,
|
String phone,
|
String name,
|
String id,
|
String cardName){
|
try {
|
Date date = new Date();
|
DateFormat format = new SimpleDateFormat("yyyyMMdd");
|
String time = format.format(date);
|
String fileName = "打车卡"+time+".xls";
|
String[] title = new String[] {"支付时间","流水ID","打车卡名称","打车卡类型","乘客名称","乘客手机号","支付类型","收益金额"};
|
|
|
String beginTime = null;
|
String endTime = null;
|
if (SinataUtil.isNotEmpty(insertTime)){
|
String[] timeArray = insertTime.split(" - ");
|
beginTime = timeArray[0];
|
endTime = timeArray[1];
|
}
|
Page<Map<String,Object>> page = new Page<>(1, 10000000);
|
List<Map<String,Object>> mapList = taxiCardPaymentService.getList(page,beginTime,endTime,null,type,phone,name,id,cardName,ShiroKit.getUser().getObjectId());
|
|
String[][] values = new String[mapList.size()][];
|
for (int i = 0; i < mapList.size(); i++) {
|
Map<String,Object> d=mapList.get(i);
|
values[i] = new String[title.length];
|
values[i][0]=d.get("createTime").toString();
|
values[i][1]=d.get("id").toString();
|
values[i][2]=d.get("cardName").toString();
|
values[i][3]=d.get("typeName").toString();
|
values[i][4]=d.get("nickName")!=null?d.get("nickName").toString():"";
|
values[i][5]=d.get("phone")!=null?d.get("phone").toString():"";
|
String payType = d.get("payType").toString();
|
if("1".equals(payType)){
|
payType="微信";
|
}else if("2".equals(payType)){
|
payType="支付宝";
|
}else if("3".equals(payType)){
|
payType="余额支付";
|
}else if("4".equals(payType)){
|
payType="云闪付";
|
}else {
|
payType="其他";
|
}
|
values[i][6]=payType;
|
values[i][7]=d.get("payMoney").toString();
|
}
|
String fileNameTitle="打车卡";
|
HSSFWorkbook wb = ExcelUtil.getHSSFWorkbookTime(fileNameTitle+time, title, values, null,insertTime);
|
this.setResponseHeader(response, fileName);
|
OutputStream os = response.getOutputStream();
|
wb.write(os);
|
os.flush();
|
os.close();
|
|
} catch (Exception e) {
|
e.printStackTrace();
|
/*return ApiUtil.putFailObj("导出失败");*/
|
}
|
return SUCCESS_TIP;
|
}
|
|
@RequestMapping(value = "/complaintDeductmoneyList")
|
@ResponseBody
|
public Object complaintDeductmoneyList(String insertTime,
|
String userName,
|
String userPhone,
|
String id) {
|
String beginTime = null;
|
String endTime = null;
|
if (SinataUtil.isNotEmpty(insertTime)){
|
String[] timeArray = insertTime.split(" - ");
|
beginTime = timeArray[0];
|
endTime = timeArray[1];
|
}
|
Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
|
|
List<Map<String,Object>> list = complaintDeductmoneyService.getList(page,beginTime,endTime,null,userPhone,userName,id,ShiroKit.getUser().getObjectId());
|
if(list!=null && list.size()>0){
|
Map<String,Object> map = new HashMap<>();
|
map.put("id","合计");
|
map.put("money",complaintDeductmoneyService.getSumMoney(beginTime,endTime,null,userPhone,userName,id,ShiroKit.getUser().getObjectId()));
|
list.add(map);
|
}
|
page.setRecords(list);
|
return super.packForBT(page);
|
}
|
|
@RequestMapping("/exportComplaintDeductmoney")
|
@ResponseBody
|
public Object exportComplaintDeductmoney(HttpServletResponse response, String insertTime,
|
String userName,
|
String userPhone,
|
String id){
|
try {
|
Date date = new Date();
|
DateFormat format = new SimpleDateFormat("yyyyMMdd");
|
String time = format.format(date);
|
String fileName = "投诉扣款"+time+".xls";
|
String[] title = new String[] {"扣款时间","流水ID","司机名称","司机电话","扣款金额"};
|
|
Wrapper wrapper = new EntityWrapper<TBalanceModifyRecord>();
|
|
String beginTime = null;
|
String endTime = null;
|
if (SinataUtil.isNotEmpty(insertTime)){
|
String[] timeArray = insertTime.split(" - ");
|
beginTime = timeArray[0];
|
endTime = timeArray[1];
|
}
|
List<Map<String,Object>> mapList = complaintDeductmoneyService.getListEx(beginTime,endTime,null,userPhone,userName,id,ShiroKit.getUser().getObjectId());
|
|
String[][] values = new String[mapList.size()][];
|
for (int i = 0; i < mapList.size(); i++) {
|
Map<String,Object> d=mapList.get(i);
|
values[i] = new String[title.length];
|
values[i][0]=d.get("createTime").toString();
|
values[i][1]=d.get("id").toString();
|
values[i][2]=d.get("name").toString();
|
values[i][3]=d.get("phone").toString();
|
values[i][4]=d.get("money").toString();
|
}
|
String fileNameTitle="投诉扣款";
|
HSSFWorkbook wb = ExcelUtil.getHSSFWorkbookTime(fileNameTitle+time, title, values, null,insertTime);
|
this.setResponseHeader(response, fileName);
|
OutputStream os = response.getOutputStream();
|
wb.write(os);
|
os.flush();
|
os.close();
|
|
} catch (Exception e) {
|
e.printStackTrace();
|
/*return ApiUtil.putFailObj("导出失败");*/
|
}
|
return SUCCESS_TIP;
|
}
|
@RequestMapping(value = "/delete")
|
@ResponseBody
|
public Object delete(@RequestParam Integer id) {
|
complaintDeductmoneyService.deleteById(id);
|
return SUCCESS_TIP;
|
}
|
|
|
|
/**
|
* 设置文件响应头
|
* @param response
|
* @param fileName
|
*/
|
private void setResponseHeader(HttpServletResponse response, String fileName) {
|
try {
|
response.setContentType("application/octet-stream;charset=UTF-8");
|
response.setHeader("Content-Disposition", "attachment;filename=" + new String(fileName.getBytes(),"iso-8859-1"));
|
response.addHeader("Pargam", "no-cache");
|
response.addHeader("Cache-Control", "no-cache");
|
} catch (Exception ex) {
|
ex.printStackTrace();
|
}
|
}
|
|
|
/**
|
* 平台其他收入明细
|
* @return
|
*/
|
@GetMapping("/showOtherIncomeDetail")
|
public String showOtherIncomeDetail(){
|
return PREFIX + "otherOtherIncomeDetail.html";
|
}
|
|
|
/**
|
* 平台其他收入明细
|
* @param insertTime
|
* @param orderNo
|
* @param name
|
* @param phone
|
* @return
|
*/
|
@ResponseBody
|
@PostMapping("/queryOtherIncomeDetail")
|
public Object queryOtherIncomeDetail(String insertTime, String orderNo, String name, String phone){
|
Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
|
String beginTime = null;
|
String endTime = null;
|
if (SinataUtil.isNotEmpty(insertTime)){
|
String[] timeArray = insertTime.split(" - ");
|
beginTime = timeArray[0];
|
endTime = timeArray[1];
|
}
|
List<Map<String, Object>> list = orderTaxiService.queryOtherIncomeDetail(page, beginTime, endTime, orderNo, name, phone);
|
page.setRecords(list);
|
return super.packForBT(page);
|
}
|
|
|
@ResponseBody
|
@GetMapping("/exportOtherIncomeDetail")
|
public void exportOtherIncomeDetail(String insertTime, String orderNo, String name, String phone, HttpServletResponse response){
|
try {
|
String beginTime = null;
|
String endTime = null;
|
if (SinataUtil.isNotEmpty(insertTime)){
|
String[] timeArray = insertTime.split(" - ");
|
beginTime = timeArray[0];
|
endTime = timeArray[1];
|
}
|
HSSFWorkbook wb = orderTaxiService.exportOtherIncomeDetail(beginTime, endTime, orderNo, name, phone);
|
this.setResponseHeader(response, "平台其他收入明细.xls");
|
OutputStream os = response.getOutputStream();
|
wb.write(os);
|
os.flush();
|
os.close();
|
}catch (Exception e){
|
e.printStackTrace();
|
}
|
}
|
|
|
|
|
/**
|
* 跳转收入明细汇总
|
* @return
|
*/
|
@GetMapping("/showSummaryOfIncomeDetails")
|
public String showSummaryOfIncomeDetails(){
|
return PREFIX + "summaryOfIncomeDetails.html";
|
}
|
|
|
/**
|
* 跳转支出明细汇总
|
* @return
|
*/
|
@GetMapping("/showSummaryOfSpendingDetails")
|
public String showSummaryOfSpendingDetails(){
|
return PREFIX + "summaryOfSpendingDetails.html";
|
}
|
|
/**
|
* 平台收益汇总
|
* @return
|
*/
|
@GetMapping("/showPlatformRevenueSummary")
|
public String showPlatformRevenueSummary(){
|
return PREFIX + "platformRevenueSummary.html";
|
}
|
|
|
/**
|
* 获取企业收入明细汇总列表
|
* @param insertTime
|
* @param offset
|
* @param limit
|
* @return
|
*/
|
@ResponseBody
|
@PostMapping("/summaryOfIncomeDetailsList")
|
public Object summaryOfIncomeDetailsList(String insertTime, Integer orderType, Integer incomeType, String name, String phone, Integer offset, Integer limit){
|
try {
|
return incomeService.summaryOfIncomeDetailsList(insertTime, orderType, incomeType, name, phone, offset, limit);
|
}catch (Exception e){
|
e.printStackTrace();
|
return ResultUtil.runErr();
|
}
|
}
|
|
/**
|
* 导出企业收入明细汇总
|
* @param insertTime
|
* @param response
|
*/
|
@ResponseBody
|
@GetMapping("/exportSummaryOfIncomeDetails")
|
public void exportSummaryOfIncomeDetails(String insertTime, Integer orderType, Integer incomeType, String name, String phone, HttpServletResponse response){
|
try {
|
HSSFWorkbook wb = incomeService.exportSummaryOfIncomeDetails(insertTime, orderType, incomeType, name, phone);
|
this.setResponseHeader(response, "收入明细汇总.xls");
|
OutputStream os = response.getOutputStream();
|
wb.write(os);
|
os.flush();
|
os.close();
|
}catch (Exception e){
|
e.printStackTrace();
|
}
|
}
|
|
|
/**
|
* 获取平台支付明细汇总
|
* @param insertTime
|
* @param offset
|
* @param limit
|
* @return
|
*/
|
@ResponseBody
|
@PostMapping("/summaryOfSpendingDetailsList")
|
public Object summaryOfSpendingDetailsList(String insertTime, Integer orderType, Integer incomeType, String name, String phone, Integer offset, Integer limit){
|
try {
|
return incomeService.summaryOfSpendingDetailsList(insertTime, orderType, incomeType, name, phone, offset, limit);
|
}catch (Exception e){
|
e.printStackTrace();
|
return ResultUtil.runErr();
|
}
|
}
|
|
|
/**
|
* 导出支出明细汇总
|
* @param insertTime
|
* @param response
|
*/
|
@ResponseBody
|
@GetMapping("/exportSummaryOfSpendingDetails")
|
public void exportSummaryOfSpendingDetails(String insertTime, Integer orderType, Integer incomeType, String name, String phone, HttpServletResponse response){
|
try {
|
HSSFWorkbook wb = incomeService.exportSummaryOfSpendingDetails(insertTime, orderType, incomeType, name, phone);
|
this.setResponseHeader(response, "支出明细汇总.xls");
|
OutputStream os = response.getOutputStream();
|
wb.write(os);
|
os.flush();
|
os.close();
|
}catch (Exception e){
|
e.printStackTrace();
|
}
|
}
|
}
|