|
@@ -605,10 +605,10 @@ public class ExportController extends BaseController {
|
|
|
try {
|
|
|
HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部", "学员编号", "学员姓名", "性别", "家长姓名",
|
|
|
"家长联系电话", "是否激活", "是否有课", "是否有网管课", "课程余额(元)", "账户余额(元)",
|
|
|
- "所在乐团", "乐团所属声部", "所在乐团状态", "所在vip课", "所在VIP状态", "服务标签", "运营标签", "指导老师"}, new String[]{
|
|
|
+ "所在乐团", "乐团所属声部", "所在乐团状态", "所在vip课", "所在VIP状态", "服务标签", "运营标签", "指导老师", "是否签订协议"}, new String[]{
|
|
|
"organName", "userId", "username", "gender.description", "parentsName", "parentsPhone",
|
|
|
"isActive.msg", "hasCourse.msg", "hasPracticeCourse.msg", "courseBalance", "balance", "musicGroupName",
|
|
|
- "subjectName", "musicGroupStatus", "vipGroupName", "vipGroupStatus", "serviceTag.msg", "operatingTag.msg", "teacherName"}, rows);
|
|
|
+ "subjectName", "musicGroupStatus", "vipGroupName", "vipGroupStatus", "serviceTag.msg", "operatingTag.msg", "teacherName", "isSignedContract"}, rows);
|
|
|
response.setContentType("application/octet-stream");
|
|
|
response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
|
|
|
response.flushBuffer();
|
|
@@ -1027,15 +1027,15 @@ public class ExportController extends BaseController {
|
|
|
row.setMemo("");
|
|
|
}
|
|
|
BigDecimal transferFee = BigDecimal.ZERO;
|
|
|
- if(row.getPaymentChannel() != null && row.getPaymentChannel().equals("ADAPAY")){
|
|
|
+ if (row.getPaymentChannel() != null && row.getPaymentChannel().equals("ADAPAY")) {
|
|
|
FeeFlagNumDto countFeeFlagNum = studentPaymentRouteOrderDao.getCountFeeFlagNum(row.getOrderNo());
|
|
|
- if(countFeeFlagNum.getTotalNum() > countFeeFlagNum.getYesNum()){
|
|
|
- transferFee = row.getActualAmount().multiply(new BigDecimal("0.28")).divide(new BigDecimal(100),2,BigDecimal.ROUND_HALF_UP);
|
|
|
+ if (countFeeFlagNum.getTotalNum() > countFeeFlagNum.getYesNum()) {
|
|
|
+ transferFee = row.getActualAmount().multiply(new BigDecimal("0.28")).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
- if(countFeeFlagNum.getTotalNum().equals(countFeeFlagNum.getYesNum())){
|
|
|
+ if (countFeeFlagNum.getTotalNum().equals(countFeeFlagNum.getYesNum())) {
|
|
|
List<StudentPaymentRouteOrder> routeOrders = studentPaymentRouteOrderDao.getRouteOrders(row.getOrderNo());
|
|
|
for (StudentPaymentRouteOrder routeOrder : routeOrders) {
|
|
|
- transferFee = transferFee.add(routeOrder.getRouteAmount().multiply(new BigDecimal("0.28")).divide(new BigDecimal(100),2,BigDecimal.ROUND_HALF_UP));
|
|
|
+ transferFee = transferFee.add(routeOrder.getRouteAmount().multiply(new BigDecimal("0.28")).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP));
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1054,15 +1054,18 @@ public class ExportController extends BaseController {
|
|
|
case TRAINING_SINGLE:
|
|
|
case TRAINING_MIX:
|
|
|
case MUSIC_NETWORK:
|
|
|
- row.setMusicGroupCourseFee(row.getMusicGroupCourseFee().add(orderDetail.getPrice()));
|
|
|
- break;
|
|
|
case HIGH:
|
|
|
case HIGH_ONLINE:
|
|
|
case HIGH_ONLINE_COURSE:
|
|
|
- row.setHighCourseFee(row.getHighCourseFee().add(orderDetail.getPrice()));
|
|
|
+ row.setMusicGroupCourseFee(row.getMusicGroupCourseFee().add(orderDetail.getPrice()));
|
|
|
+ break;
|
|
|
case MUSICAL:
|
|
|
if (orderDetail.getKitGroupPurchaseType() != null && orderDetail.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.LEASE)) {
|
|
|
- row.setLeaseFee(orderDetail.getPrice());
|
|
|
+ BigDecimal leaseFee = orderDetail.getPrice();
|
|
|
+ if (row.getExpectAmount().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ leaseFee = orderDetail.getPrice().multiply(row.getActualAmount()).divide(row.getExpectAmount(), 2, BigDecimal.ROUND_DOWN);
|
|
|
+ }
|
|
|
+ row.setLeaseFee(leaseFee);
|
|
|
} else {
|
|
|
row.setMusicalFee(orderDetail.getPrice());
|
|
|
}
|
|
@@ -1103,6 +1106,9 @@ public class ExportController extends BaseController {
|
|
|
continue;
|
|
|
}
|
|
|
BigDecimal typeFee = new BigDecimal(feeTypeStr.substring(index + 1));
|
|
|
+ if (row.getExpectAmount().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ typeFee = typeFee.multiply(row.getActualAmount()).divide(row.getExpectAmount(), 2, BigDecimal.ROUND_DOWN);
|
|
|
+ }
|
|
|
if (feeTypeStr.contains("VIP")) {
|
|
|
row.setVipCourseFee(typeFee);
|
|
|
} else if (feeTypeStr.contains("网管课")) {
|
|
@@ -1111,9 +1117,9 @@ public class ExportController extends BaseController {
|
|
|
row.setTheoryCourseFee(typeFee);
|
|
|
}
|
|
|
}
|
|
|
- row.setDegreeFee(row.getExpectAmount().subtract(row.getVipCourseFee()).subtract(row.getPracticeCourseFee()).subtract(row.getTheoryCourseFee()));
|
|
|
+ row.setDegreeFee(row.getActualAmount().subtract(row.getVipCourseFee()).subtract(row.getPracticeCourseFee()).subtract(row.getTheoryCourseFee()));
|
|
|
} else {
|
|
|
- row.setOtherFee(row.getExpectAmount());
|
|
|
+ row.setOtherFee(row.getActualAmount());
|
|
|
}
|
|
|
if (row.getChargeType() != null) {
|
|
|
for (SporadicChargeTypeEnum chargeType : SporadicChargeTypeEnum.values()) {
|
|
@@ -1137,9 +1143,6 @@ public class ExportController extends BaseController {
|
|
|
}
|
|
|
} else {
|
|
|
StudentPaymentOrderExportDto feeByType = sellOrderDao.getFeeByType(row.getId());
|
|
|
-// if(feeByType.getMusicalFee().add(feeByType.getTeachingFee()).add(feeByType.getRepairFee()).add(feeByType.getOtherFee()).compareTo(BigDecimal.ZERO) <=0){
|
|
|
-// break;
|
|
|
-// }
|
|
|
row.setMusicalFee(feeByType.getMusicalFee());
|
|
|
row.setTeachingFee(feeByType.getTeachingFee());
|
|
|
row.setRepairFee(feeByType.getRepairFee());
|
|
@@ -1151,20 +1154,20 @@ public class ExportController extends BaseController {
|
|
|
row.setSchoolName(studentRegistration.getSchoolName());
|
|
|
row.setCooperationOrganName(studentRegistration.getRemark());
|
|
|
}
|
|
|
- row.setMusicGroupCourseFee(feeByType.getExpectAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getRepairFee()).subtract(feeByType.getOtherFee()).subtract(row.getHighCourseFee()));
|
|
|
+ row.setMusicGroupCourseFee(feeByType.getActualAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getRepairFee()).subtract(feeByType.getOtherFee()).subtract(row.getLeaseFee()));
|
|
|
} else if (row.getType().equals(OrderTypeEnum.REPAIR)) {
|
|
|
- row.setRepairFee(feeByType.getExpectAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getOtherFee()));
|
|
|
+ row.setRepairFee(feeByType.getActualAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getOtherFee()));
|
|
|
} else if (row.getType().equals(OrderTypeEnum.OUTORDER)) {
|
|
|
- row.setMusicGroupCourseFee(feeByType.getExpectAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getRepairFee()).subtract(feeByType.getOtherFee()));
|
|
|
+ row.setMusicGroupCourseFee(feeByType.getActualAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getRepairFee()).subtract(feeByType.getOtherFee()));
|
|
|
row.setTransferFee(BigDecimal.ZERO);
|
|
|
}
|
|
|
}
|
|
|
- if(row.getMusicGroupId()==null){
|
|
|
+ if (row.getMusicGroupId()!= null && row.getMusicGroupId().equals("null")) {
|
|
|
row.setMusicGroupId("");
|
|
|
}
|
|
|
String paymentChannel = "";
|
|
|
- if(row.getPaymentChannel() == null) {
|
|
|
- }else if (row.getPaymentChannel().equals("YQPAY")) {
|
|
|
+ if (row.getPaymentChannel() == null) {
|
|
|
+ } else if (row.getPaymentChannel().equals("YQPAY")) {
|
|
|
paymentChannel = "双乾";
|
|
|
} else if (row.getPaymentChannel().equals("ADAPAY")) {
|
|
|
paymentChannel = "汇付";
|
|
@@ -1177,9 +1180,9 @@ public class ExportController extends BaseController {
|
|
|
}
|
|
|
|
|
|
try {
|
|
|
- String[] header = {"序号", "学生姓名", "交易流水号", "订单编号", "收款渠道", "收款账户", "应付金额", "现金支付", "余额支付", "乐团课", "网络基础训练", "VIP课", "网管课", "乐理课", "考级", "维修费用", "押金", "乐器", "教辅费用", "其它", "手续费", "到账时间",
|
|
|
+ String[] header = {"序号", "学生姓名", "交易流水号", "订单编号", "收款渠道", "收款账户", "应付金额", "现金支付", "余额支付", "乐团课", "VIP课", "网管课", "乐理课", "考级", "维修费用", "押金", "乐器", "教辅费用", "其它", "手续费", "到账时间",
|
|
|
"关联乐团ID/VIP课ID", "课程形态", "零星收款类别", "专业", "分部", "教学点", "合作单位", "备注"};
|
|
|
- String[] body = {"id", "user.username", "transNo", "orderNo", "paymentChannel", "merNos", "expectAmount", "actualAmount", "balancePaymentAmount", "musicGroupCourseFee", "highCourseFee", "vipCourseFee", "practiceCourseFee", "theoryCourseFee", "degreeFee", "repairFee", "leaseFee", "musicalFee", "teachingFee", "otherFee", "transferFee", "payTime", "musicGroupId",
|
|
|
+ String[] body = {"id", "user.username", "transNo", "orderNo", "paymentChannel", "merNos", "expectAmount", "actualAmount", "balancePaymentAmount", "musicGroupCourseFee", "vipCourseFee", "practiceCourseFee", "theoryCourseFee", "degreeFee", "repairFee", "leaseFee", "musicalFee", "teachingFee", "otherFee", "transferFee", "payTime", "musicGroupId",
|
|
|
"groupType.desc", "sporadicType", "subjectName", "organName", "schoolName", "cooperationOrganName", "memo"};
|
|
|
HSSFWorkbook workbook = POIUtil.exportExcel(header, body, studentPaymentOrderExportDtos);
|
|
|
response.setContentType("application/octet-stream");
|
|
@@ -2165,13 +2168,13 @@ public class ExportController extends BaseController {
|
|
|
row.setMemo("");
|
|
|
}
|
|
|
BigDecimal transferFee = BigDecimal.ZERO;
|
|
|
- if(row.getPaymentChannel() != null && row.getPaymentChannel().equals("ADAPAY")){
|
|
|
+ if (row.getPaymentChannel() != null && row.getPaymentChannel().equals("ADAPAY")) {
|
|
|
FeeFlagNumDto countFeeFlagNum = studentPaymentRouteOrderDao.getCountFeeFlagNum(row.getOrderNo());
|
|
|
- if(countFeeFlagNum.getTotalNum() > countFeeFlagNum.getYesNum() && row.getFeeFlag().equals("Y")){
|
|
|
- transferFee = row.getActualAmount().multiply(new BigDecimal("0.28")).divide(new BigDecimal(100),2,BigDecimal.ROUND_HALF_UP);
|
|
|
+ if (countFeeFlagNum.getTotalNum() > countFeeFlagNum.getYesNum() && row.getFeeFlag().equals("Y")) {
|
|
|
+ transferFee = row.getActualAmount().multiply(new BigDecimal("0.28")).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
- if(countFeeFlagNum.getTotalNum().equals(countFeeFlagNum.getYesNum())){
|
|
|
- transferFee = row.getRouteAmount().multiply(new BigDecimal("0.28")).divide(new BigDecimal(100),2,BigDecimal.ROUND_HALF_UP);
|
|
|
+ if (countFeeFlagNum.getTotalNum().equals(countFeeFlagNum.getYesNum())) {
|
|
|
+ transferFee = row.getRouteAmount().multiply(new BigDecimal("0.28")).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
}
|
|
|
row.setTransferFee(transferFee);
|
|
@@ -2189,15 +2192,18 @@ public class ExportController extends BaseController {
|
|
|
case TRAINING_SINGLE:
|
|
|
case TRAINING_MIX:
|
|
|
case MUSIC_NETWORK:
|
|
|
- row.setMusicGroupCourseFee(row.getMusicGroupCourseFee().add(orderDetail.getPrice()));
|
|
|
- break;
|
|
|
case HIGH:
|
|
|
case HIGH_ONLINE:
|
|
|
case HIGH_ONLINE_COURSE:
|
|
|
- row.setHighCourseFee(row.getHighCourseFee().add(orderDetail.getPrice()));
|
|
|
+ row.setMusicGroupCourseFee(row.getMusicGroupCourseFee().add(orderDetail.getPrice()));
|
|
|
+ break;
|
|
|
case MUSICAL:
|
|
|
if (orderDetail.getKitGroupPurchaseType() != null && orderDetail.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.LEASE)) {
|
|
|
- row.setLeaseFee(orderDetail.getPrice());
|
|
|
+ BigDecimal leaseFee = orderDetail.getPrice();
|
|
|
+ if (row.getExpectAmount().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ leaseFee = orderDetail.getPrice().multiply(row.getActualAmount()).divide(row.getExpectAmount(), 2, BigDecimal.ROUND_DOWN);
|
|
|
+ }
|
|
|
+ row.setLeaseFee(leaseFee);
|
|
|
} else {
|
|
|
row.setMusicalFee(orderDetail.getPrice());
|
|
|
}
|
|
@@ -2238,6 +2244,9 @@ public class ExportController extends BaseController {
|
|
|
continue;
|
|
|
}
|
|
|
BigDecimal typeFee = new BigDecimal(feeTypeStr.substring(index + 1));
|
|
|
+ if (row.getExpectAmount().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ typeFee = typeFee.multiply(row.getActualAmount()).divide(row.getExpectAmount(), 2, BigDecimal.ROUND_DOWN);
|
|
|
+ }
|
|
|
if (feeTypeStr.contains("VIP")) {
|
|
|
row.setVipCourseFee(typeFee);
|
|
|
} else if (feeTypeStr.contains("网管课")) {
|
|
@@ -2246,9 +2255,9 @@ public class ExportController extends BaseController {
|
|
|
row.setTheoryCourseFee(typeFee);
|
|
|
}
|
|
|
}
|
|
|
- row.setDegreeFee(row.getExpectAmount().subtract(row.getVipCourseFee()).subtract(row.getPracticeCourseFee()).subtract(row.getTheoryCourseFee()));
|
|
|
+ row.setDegreeFee(row.getActualAmount().subtract(row.getVipCourseFee()).subtract(row.getPracticeCourseFee()).subtract(row.getTheoryCourseFee()));
|
|
|
} else {
|
|
|
- row.setOtherFee(row.getExpectAmount());
|
|
|
+ row.setOtherFee(row.getActualAmount());
|
|
|
}
|
|
|
if (row.getChargeType() != null) {
|
|
|
for (SporadicChargeTypeEnum chargeType : SporadicChargeTypeEnum.values()) {
|
|
@@ -2283,20 +2292,20 @@ public class ExportController extends BaseController {
|
|
|
row.setSchoolName(studentRegistration.getSchoolName());
|
|
|
row.setCooperationOrganName(studentRegistration.getRemark());
|
|
|
}
|
|
|
- row.setMusicGroupCourseFee(feeByType.getExpectAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getRepairFee()).subtract(feeByType.getOtherFee()).subtract(row.getHighCourseFee()));
|
|
|
+ row.setMusicGroupCourseFee(feeByType.getActualAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getRepairFee()).subtract(feeByType.getOtherFee()).subtract(row.getLeaseFee()));
|
|
|
} else if (row.getType().equals(OrderTypeEnum.REPAIR)) {
|
|
|
- row.setRepairFee(feeByType.getExpectAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getOtherFee()));
|
|
|
+ row.setRepairFee(feeByType.getActualAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getOtherFee()));
|
|
|
} else if (row.getType().equals(OrderTypeEnum.OUTORDER)) {
|
|
|
- row.setMusicGroupCourseFee(feeByType.getExpectAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getRepairFee()).subtract(feeByType.getOtherFee()));
|
|
|
+ row.setMusicGroupCourseFee(feeByType.getActualAmount().subtract(feeByType.getMusicalFee()).subtract(feeByType.getTeachingFee()).subtract(feeByType.getRepairFee()).subtract(feeByType.getOtherFee()));
|
|
|
row.setTransferFee(BigDecimal.ZERO);
|
|
|
}
|
|
|
}
|
|
|
- if(row.getMusicGroupId()==null){
|
|
|
+ if (row.getMusicGroupId()!= null && row.getMusicGroupId().equals("null")) {
|
|
|
row.setMusicGroupId("");
|
|
|
}
|
|
|
String paymentChannel = "";
|
|
|
- if(row.getPaymentChannel() == null) {
|
|
|
- }else if (row.getPaymentChannel().equals("YQPAY")) {
|
|
|
+ if (row.getPaymentChannel() == null) {
|
|
|
+ } else if (row.getPaymentChannel().equals("YQPAY")) {
|
|
|
paymentChannel = "双乾";
|
|
|
} else if (row.getPaymentChannel().equals("ADAPAY")) {
|
|
|
paymentChannel = "汇付";
|
|
@@ -2309,9 +2318,9 @@ public class ExportController extends BaseController {
|
|
|
}
|
|
|
|
|
|
try {
|
|
|
- String[] header = {"序号", "学生姓名", "交易流水号", "订单编号", "收款渠道", "收款账户", "应付金额", "现金支付", "余额支付", "分润账户", "分润金额", "分润余额", "乐团课", "网络基础训练", "VIP课", "网管课", "乐理课", "考级", "维修费用", "押金", "乐器", "教辅费用", "其它", "手续费", "到账时间",
|
|
|
+ String[] header = {"序号", "学生姓名", "交易流水号", "订单编号", "收款渠道", "收款账户", "应付金额", "现金支付", "余额支付", "分润账户", "分润金额", "分润余额", "乐团课", "VIP课", "网管课", "乐理课", "考级", "维修费用", "押金", "乐器", "教辅费用", "其它", "手续费", "到账时间",
|
|
|
"关联乐团ID/VIP课ID", "课程形态", "零星收款类别", "专业", "分部", "教学点", "合作单位", "备注"};
|
|
|
- String[] body = {"id", "user.username", "transNo", "orderNo", "paymentChannel", "merNos", "expectAmount", "actualAmount", "balancePaymentAmount", "routeMerNo", "routeAmount", "routeBalance", "musicGroupCourseFee", "highCourseFee", "vipCourseFee", "practiceCourseFee", "theoryCourseFee", "degreeFee", "repairFee", "leaseFee", "musicalFee", "teachingFee", "otherFee", "transferFee", "payTime", "musicGroupId",
|
|
|
+ String[] body = {"id", "user.username", "transNo", "orderNo", "paymentChannel", "merNos", "expectAmount", "actualAmount", "balancePaymentAmount", "routeMerNo", "routeAmount", "routeBalance", "musicGroupCourseFee", "vipCourseFee", "practiceCourseFee", "theoryCourseFee", "degreeFee", "repairFee", "leaseFee", "musicalFee", "teachingFee", "otherFee", "transferFee", "payTime", "musicGroupId",
|
|
|
"groupType.desc", "sporadicType", "subjectName", "organName", "schoolName", "cooperationOrganName", "memo"};
|
|
|
HSSFWorkbook workbook = POIUtil.exportExcel(header, body, studentPaymentOrderExportDtos);
|
|
|
response.setContentType("application/octet-stream");
|