|
@@ -1097,7 +1097,7 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
- public HttpRespMsg exportList(ExpenseSheet sheet, String startDate, String endDate) {
|
|
|
+ public HttpRespMsg exportList(ExpenseSheet sheet,Integer projectId, String startDate, String endDate) {
|
|
|
WxCorpInfo wxCorpInfo = wxCorpInfoMapper.selectOne(new QueryWrapper<WxCorpInfo>().eq("company_id", sheet.getCompanyId()));
|
|
|
QueryWrapper<ExpenseSheet> queryWrapper = new QueryWrapper<ExpenseSheet>();
|
|
|
queryWrapper.eq("company_id", sheet.getCompanyId()).orderByDesc("id");
|
|
@@ -1146,7 +1146,19 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
|
|
|
List<Map> mapList=new ArrayList<>();
|
|
|
for (ExpenseSheet record : records) {
|
|
|
Map map=new HashMap();
|
|
|
- List<ExpenseItem> expenseItems = expenseItemList.stream().filter(el -> el.getExpenseId().equals(record.getId())).collect(Collectors.toList());
|
|
|
+ List<ExpenseItem> expenseItems =new ArrayList<>();
|
|
|
+ if (projectId!=null){
|
|
|
+ expenseItems=expenseItemList.stream()
|
|
|
+ .filter(el -> Optional.ofNullable(el.getExpenseId()).equals(Optional.ofNullable(record.getId())))
|
|
|
+ .filter(el -> Optional.ofNullable(el.getProjectId()).map(p -> p.equals(projectId)).orElse(false))
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ }else {
|
|
|
+ expenseItems=expenseItemList.stream().filter(el -> el.getExpenseId().equals(record.getId())).collect(Collectors.toList());
|
|
|
+ }
|
|
|
+ double amount = 0.0;
|
|
|
+ if (expenseItems.size()>0){
|
|
|
+ amount=expenseItems.stream().mapToDouble(item -> Optional.ofNullable(item.getAmount()).orElse(0.0)).sum();
|
|
|
+ }
|
|
|
map.put("size",expenseItems.size());
|
|
|
mapList.add(map);
|
|
|
for (ExpenseItem expenseItem : expenseItems) {
|
|
@@ -1157,10 +1169,12 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
|
|
|
item.add(record.getOwnerName());
|
|
|
}
|
|
|
item.add(record.getCreateDate()==null?"":record.getCreateDate()+"");
|
|
|
+
|
|
|
item.add(record.getTicketNum()==null?"0":record.getTicketNum()+"");
|
|
|
Optional<ExpenseMainType> first = mainTypes.stream().filter(ms -> ms.getId().equals(record.getType())).findFirst();
|
|
|
item.add(first.isPresent()?first.get().getName():"");
|
|
|
- item.add(record.getTotalAmount()==null?"0":record.getTotalAmount()+"");
|
|
|
+// item.add(record.getTotalAmount()==null?"0":record.getTotalAmount()+"");
|
|
|
+ item.add(amount+"");
|
|
|
item.add(record.getRemark()==null?"":record.getRemark());
|
|
|
switch (expenseItem.getStatus()){
|
|
|
case 0:
|