|
@@ -55,12 +55,25 @@ public class ExportServiceImpl implements ExportService {
|
|
private StoragePluginContext storagePluginContext;
|
|
private StoragePluginContext storagePluginContext;
|
|
@Autowired
|
|
@Autowired
|
|
private ManagerDownloadDao managerDownloadDao;
|
|
private ManagerDownloadDao managerDownloadDao;
|
|
|
|
+ @Autowired
|
|
|
|
+ private CooperationOrganDao cooperationOrganDao;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@Async
|
|
@Async
|
|
public void orderList(Map<String, Object> params, ManagerDownload managerDownload) throws Exception {
|
|
public void orderList(Map<String, Object> params, ManagerDownload managerDownload) throws Exception {
|
|
List<StudentPaymentOrderExportDto> studentPaymentOrderExportDtos = studentPaymentOrderService.ExportQueryPage(params);
|
|
List<StudentPaymentOrderExportDto> studentPaymentOrderExportDtos = studentPaymentOrderService.ExportQueryPage(params);
|
|
long i = 1;
|
|
long i = 1;
|
|
|
|
+ Map<Integer, String> cooperationOrganMap = new HashMap<>();
|
|
|
|
+ List<Integer> cooperationOrganIds = studentPaymentOrderExportDtos.stream()
|
|
|
|
+ .filter(e -> OrderTypeEnum.OUTORDER.equals(e.getType()))
|
|
|
|
+ .filter(e -> e.getMusicGroupId() != null)
|
|
|
|
+ .map(e -> Integer.valueOf(e.getMusicGroupId()))
|
|
|
|
+ .distinct()
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
+ if (cooperationOrganIds.size() > 0) {
|
|
|
|
+ List<CooperationOrgan> cooperationOrgans = cooperationOrganDao.getCooperationOrganByIds(cooperationOrganIds);
|
|
|
|
+ cooperationOrganMap = cooperationOrgans.stream().collect(Collectors.toMap(CooperationOrgan::getId, CooperationOrgan::getName));
|
|
|
|
+ }
|
|
for (StudentPaymentOrderExportDto row : studentPaymentOrderExportDtos) {
|
|
for (StudentPaymentOrderExportDto row : studentPaymentOrderExportDtos) {
|
|
if (row.getActualAmount() == null) {
|
|
if (row.getActualAmount() == null) {
|
|
row.setActualAmount(BigDecimal.ZERO);
|
|
row.setActualAmount(BigDecimal.ZERO);
|
|
@@ -145,6 +158,7 @@ public class ExportServiceImpl implements ExportService {
|
|
if (vipGroupInfo != null) {
|
|
if (vipGroupInfo != null) {
|
|
row.setSchoolName(vipGroupInfo.getSchoolName());
|
|
row.setSchoolName(vipGroupInfo.getSchoolName());
|
|
row.setSubjectName(vipGroupInfo.getSubjectName());
|
|
row.setSubjectName(vipGroupInfo.getSubjectName());
|
|
|
|
+ row.setEduTeacher(vipGroupInfo.getEducationalTeacherName());
|
|
}
|
|
}
|
|
} else if (row.getGroupType().equals(GroupType.SPORADIC)) {
|
|
} else if (row.getGroupType().equals(GroupType.SPORADIC)) {
|
|
//考级报名
|
|
//考级报名
|
|
@@ -189,6 +203,7 @@ public class ExportServiceImpl implements ExportService {
|
|
PracticeCourseDto practiceGroup = practiceGroupDao.findByGroupId(Integer.parseInt(row.getMusicGroupId()));
|
|
PracticeCourseDto practiceGroup = practiceGroupDao.findByGroupId(Integer.parseInt(row.getMusicGroupId()));
|
|
if (practiceGroup != null) {
|
|
if (practiceGroup != null) {
|
|
row.setSubjectName(practiceGroup.getSubjectName());
|
|
row.setSubjectName(practiceGroup.getSubjectName());
|
|
|
|
+ row.setEduTeacher(practiceGroup.getEduTeacherName());
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
StudentPaymentOrderExportDto feeByType = sellOrderDao.getFeeByType(row.getId());
|
|
StudentPaymentOrderExportDto feeByType = sellOrderDao.getFeeByType(row.getId());
|
|
@@ -203,6 +218,7 @@ public class ExportServiceImpl implements ExportService {
|
|
row.setSubjectName(studentRegistration.getSubjectName());
|
|
row.setSubjectName(studentRegistration.getSubjectName());
|
|
row.setSchoolName(studentRegistration.getSchoolName());
|
|
row.setSchoolName(studentRegistration.getSchoolName());
|
|
row.setCooperationOrganName(studentRegistration.getRemark());
|
|
row.setCooperationOrganName(studentRegistration.getRemark());
|
|
|
|
+ row.setEduTeacher(studentRegistration.getName());
|
|
}
|
|
}
|
|
row.setMusicGroupCourseFee(feeByType.getActualAmount().subtract(feeByType.getMusicalFee()).subtract(row.getTeachingFee()).subtract(row.getMaintenanceFee()).subtract(row.getMaintenanceProductFee()).subtract(feeByType.getOtherFee()).subtract(row.getLeaseFee()));
|
|
row.setMusicGroupCourseFee(feeByType.getActualAmount().subtract(feeByType.getMusicalFee()).subtract(row.getTeachingFee()).subtract(row.getMaintenanceFee()).subtract(row.getMaintenanceProductFee()).subtract(feeByType.getOtherFee()).subtract(row.getLeaseFee()));
|
|
} else if (row.getType().equals(OrderTypeEnum.REPAIR)) {
|
|
} else if (row.getType().equals(OrderTypeEnum.REPAIR)) {
|
|
@@ -212,11 +228,17 @@ public class ExportServiceImpl implements ExportService {
|
|
row.setTransferFee(BigDecimal.ZERO);
|
|
row.setTransferFee(BigDecimal.ZERO);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- //如果合作单位不存在取学员的第一个乐团的合作单位和教学点
|
|
|
|
|
|
+ //如果合作单位不存在取学员的第一个乐团的合作单位,乐团主管
|
|
if (row.getCooperationOrganName() == null) {
|
|
if (row.getCooperationOrganName() == null) {
|
|
CooperationOrgan cooperationOrgan = musicGroupDao.findUserMusicGroupCooperationOrgan(row.getUserId());
|
|
CooperationOrgan cooperationOrgan = musicGroupDao.findUserMusicGroupCooperationOrgan(row.getUserId());
|
|
if (cooperationOrgan != null) {
|
|
if (cooperationOrgan != null) {
|
|
row.setCooperationOrganName(cooperationOrgan.getName());
|
|
row.setCooperationOrganName(cooperationOrgan.getName());
|
|
|
|
+ row.setEduTeacher(cooperationOrgan.getLinkman() != null ? cooperationOrgan.getLinkman() : row.getEduTeacher());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (row.getType().equals(OrderTypeEnum.OUTORDER) && row.getMusicGroupId() != null) {
|
|
|
|
+ if (cooperationOrganMap.containsKey(Integer.valueOf(row.getMusicGroupId()))) {
|
|
|
|
+ row.setCooperationOrganName(cooperationOrganMap.get(Integer.valueOf(row.getMusicGroupId())));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (row.getMusicGroupId() != null && row.getMusicGroupId().equals("null")) {
|
|
if (row.getMusicGroupId() != null && row.getMusicGroupId().equals("null")) {
|
|
@@ -244,9 +266,9 @@ public class ExportServiceImpl implements ExportService {
|
|
HSSFWorkbook workbook = null;
|
|
HSSFWorkbook workbook = null;
|
|
try {
|
|
try {
|
|
String[] header = {"序号", "学生姓名", "交易流水号", "订单编号", "收款渠道", "收款账户", "应付金额", "现金支付", "余额支付", "乐团课", "VIP课", "网管课", "乐理课", "考级", "维修费用", "押金", "乐器", "教辅费用", "其它", "手续费", "到账时间",
|
|
String[] header = {"序号", "学生姓名", "交易流水号", "订单编号", "收款渠道", "收款账户", "应付金额", "现金支付", "余额支付", "乐团课", "VIP课", "网管课", "乐理课", "考级", "维修费用", "押金", "乐器", "教辅费用", "其它", "手续费", "到账时间",
|
|
- "关联乐团ID/VIP课ID", "课程形态", "零星收款类别", "专业", "分部", "教学点", "合作单位", "备注"};
|
|
|
|
|
|
+ "关联乐团ID/VIP课ID", "课程形态", "零星收款类别", "专业", "分部", "教学点", "合作单位", "乐团主管", "备注"};
|
|
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",
|
|
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"};
|
|
|
|
|
|
+ "groupType.desc", "sporadicType", "subjectName", "organName", "schoolName", "cooperationOrganName", "eduTeacher", "memo"};
|
|
workbook = POIUtil.exportExcel(header, body, studentPaymentOrderExportDtos);
|
|
workbook = POIUtil.exportExcel(header, body, studentPaymentOrderExportDtos);
|
|
workbook.write(fileOutputStream);
|
|
workbook.write(fileOutputStream);
|
|
fileOutputStream.getFD().sync();
|
|
fileOutputStream.getFD().sync();
|
|
@@ -275,6 +297,18 @@ public class ExportServiceImpl implements ExportService {
|
|
@Async
|
|
@Async
|
|
public void routeOrderList(Map<String, Object> params, ManagerDownload managerDownload) throws Exception {
|
|
public void routeOrderList(Map<String, Object> params, ManagerDownload managerDownload) throws Exception {
|
|
List<StudentPaymentOrderExportDto> studentPaymentOrderExportDtos = studentPaymentRouteOrderDao.ExportQueryPage(params);
|
|
List<StudentPaymentOrderExportDto> studentPaymentOrderExportDtos = studentPaymentRouteOrderDao.ExportQueryPage(params);
|
|
|
|
+
|
|
|
|
+ Map<Integer, String> cooperationOrganMap = new HashMap<>();
|
|
|
|
+ List<Integer> cooperationOrganIds = studentPaymentOrderExportDtos.stream()
|
|
|
|
+ .filter(e -> OrderTypeEnum.OUTORDER.equals(e.getType()))
|
|
|
|
+ .filter(e -> e.getMusicGroupId() != null)
|
|
|
|
+ .map(e -> Integer.valueOf(e.getMusicGroupId()))
|
|
|
|
+ .distinct()
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
+ if (cooperationOrganIds.size() > 0) {
|
|
|
|
+ List<CooperationOrgan> cooperationOrgans = cooperationOrganDao.getCooperationOrganByIds(cooperationOrganIds);
|
|
|
|
+ cooperationOrganMap = cooperationOrgans.stream().collect(Collectors.toMap(CooperationOrgan::getId, CooperationOrgan::getName));
|
|
|
|
+ }
|
|
long i = 1;
|
|
long i = 1;
|
|
for (StudentPaymentOrderExportDto row : studentPaymentOrderExportDtos) {
|
|
for (StudentPaymentOrderExportDto row : studentPaymentOrderExportDtos) {
|
|
if (row.getActualAmount() == null) {
|
|
if (row.getActualAmount() == null) {
|
|
@@ -360,6 +394,7 @@ public class ExportServiceImpl implements ExportService {
|
|
if (vipGroupInfo != null) {
|
|
if (vipGroupInfo != null) {
|
|
row.setSchoolName(vipGroupInfo.getSchoolName());
|
|
row.setSchoolName(vipGroupInfo.getSchoolName());
|
|
row.setSubjectName(vipGroupInfo.getSubjectName());
|
|
row.setSubjectName(vipGroupInfo.getSubjectName());
|
|
|
|
+ row.setEduTeacher(vipGroupInfo.getEducationalTeacherName());
|
|
}
|
|
}
|
|
} else if (row.getGroupType().equals(GroupType.SPORADIC)) {
|
|
} else if (row.getGroupType().equals(GroupType.SPORADIC)) {
|
|
//考级报名
|
|
//考级报名
|
|
@@ -404,6 +439,7 @@ public class ExportServiceImpl implements ExportService {
|
|
PracticeCourseDto practiceGroup = practiceGroupDao.findByGroupId(Integer.parseInt(row.getMusicGroupId()));
|
|
PracticeCourseDto practiceGroup = practiceGroupDao.findByGroupId(Integer.parseInt(row.getMusicGroupId()));
|
|
if (practiceGroup != null) {
|
|
if (practiceGroup != null) {
|
|
row.setSubjectName(practiceGroup.getSubjectName());
|
|
row.setSubjectName(practiceGroup.getSubjectName());
|
|
|
|
+ row.setEduTeacher(practiceGroup.getEduTeacherName());
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
StudentPaymentOrderExportDto feeByType = sellOrderDao.getFeeByType(row.getId());
|
|
StudentPaymentOrderExportDto feeByType = sellOrderDao.getFeeByType(row.getId());
|
|
@@ -418,6 +454,7 @@ public class ExportServiceImpl implements ExportService {
|
|
row.setSubjectName(studentRegistration.getSubjectName());
|
|
row.setSubjectName(studentRegistration.getSubjectName());
|
|
row.setSchoolName(studentRegistration.getSchoolName());
|
|
row.setSchoolName(studentRegistration.getSchoolName());
|
|
row.setCooperationOrganName(studentRegistration.getRemark());
|
|
row.setCooperationOrganName(studentRegistration.getRemark());
|
|
|
|
+ row.setEduTeacher(studentRegistration.getName());
|
|
}
|
|
}
|
|
row.setMusicGroupCourseFee(feeByType.getActualAmount().subtract(feeByType.getMusicalFee()).subtract(row.getTeachingFee()).subtract(row.getMaintenanceFee()).subtract(row.getMaintenanceProductFee()).subtract(feeByType.getOtherFee()).subtract(row.getLeaseFee()));
|
|
row.setMusicGroupCourseFee(feeByType.getActualAmount().subtract(feeByType.getMusicalFee()).subtract(row.getTeachingFee()).subtract(row.getMaintenanceFee()).subtract(row.getMaintenanceProductFee()).subtract(feeByType.getOtherFee()).subtract(row.getLeaseFee()));
|
|
} else if (row.getType().equals(OrderTypeEnum.REPAIR)) {
|
|
} else if (row.getType().equals(OrderTypeEnum.REPAIR)) {
|
|
@@ -432,6 +469,12 @@ public class ExportServiceImpl implements ExportService {
|
|
CooperationOrgan cooperationOrgan = musicGroupDao.findUserMusicGroupCooperationOrgan(row.getUserId());
|
|
CooperationOrgan cooperationOrgan = musicGroupDao.findUserMusicGroupCooperationOrgan(row.getUserId());
|
|
if (cooperationOrgan != null) {
|
|
if (cooperationOrgan != null) {
|
|
row.setCooperationOrganName(cooperationOrgan.getName());
|
|
row.setCooperationOrganName(cooperationOrgan.getName());
|
|
|
|
+ row.setEduTeacher(cooperationOrgan.getLinkman() != null ? cooperationOrgan.getLinkman() : row.getEduTeacher());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (row.getType().equals(OrderTypeEnum.OUTORDER) && row.getMusicGroupId() != null) {
|
|
|
|
+ if (cooperationOrganMap.containsKey(Integer.valueOf(row.getMusicGroupId()))) {
|
|
|
|
+ row.setCooperationOrganName(cooperationOrganMap.get(Integer.valueOf(row.getMusicGroupId())));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (row.getMusicGroupId() != null && row.getMusicGroupId().equals("null")) {
|
|
if (row.getMusicGroupId() != null && row.getMusicGroupId().equals("null")) {
|
|
@@ -595,9 +638,9 @@ public class ExportServiceImpl implements ExportService {
|
|
HSSFWorkbook workbook = null;
|
|
HSSFWorkbook workbook = null;
|
|
try {
|
|
try {
|
|
String[] header = {"序号", "学生姓名", "交易流水号", "订单编号", "收款渠道", "收款账户", "应付金额", "现金支付", "余额支付", "分润账户", "分润金额", "分润余额", "乐团课", "VIP课", "网管课", "乐理课", "考级", "维修费用", "押金", "乐器", "教辅费用", "其它", "手续费", "到账时间",
|
|
String[] header = {"序号", "学生姓名", "交易流水号", "订单编号", "收款渠道", "收款账户", "应付金额", "现金支付", "余额支付", "分润账户", "分润金额", "分润余额", "乐团课", "VIP课", "网管课", "乐理课", "考级", "维修费用", "押金", "乐器", "教辅费用", "其它", "手续费", "到账时间",
|
|
- "关联乐团ID/VIP课ID", "课程形态", "零星收款类别", "专业", "分部", "教学点", "合作单位", "备注"};
|
|
|
|
|
|
+ "关联乐团ID/VIP课ID", "课程形态", "零星收款类别", "专业", "分部", "教学点", "合作单位", "乐团主管", "备注"};
|
|
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",
|
|
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"};
|
|
|
|
|
|
+ "groupType.desc", "sporadicType", "subjectName", "organName", "schoolName", "cooperationOrganName", "eduTeacher", "memo"};
|
|
workbook = POIUtil.exportExcel(header, body, studentPaymentOrderExportDtos);
|
|
workbook = POIUtil.exportExcel(header, body, studentPaymentOrderExportDtos);
|
|
workbook.write(fileOutputStream);
|
|
workbook.write(fileOutputStream);
|
|
fileOutputStream.getFD().sync();
|
|
fileOutputStream.getFD().sync();
|