Explorar el Código

费用报销单据列表修改,表单详情修改

yusm hace 1 año
padre
commit
0f449352ff

+ 4 - 4
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ExpenseSheetController.java

@@ -64,7 +64,7 @@ public class ExpenseSheetController {
     }
 
     @RequestMapping("/list")
-    public HttpRespMsg list(ExpenseSheet sheet,Integer sendState,String startDate, String endDate, @RequestParam Integer pageIndex, @RequestParam Integer pageSize) {
+    public HttpRespMsg list(ExpenseSheet sheet,Integer sendState,Integer projectId,String startDate, String endDate, @RequestParam Integer pageIndex, @RequestParam Integer pageSize) {
         String token = request.getHeader("TOKEN");
         User user = userMapper.selectById(token);
         List<SysRichFunction> functionList = sysFunctionMapper.getRoleFunctions(user.getRoleId(), "查看全部报销单");
@@ -75,13 +75,13 @@ public class ExpenseSheetController {
             }
         }
         sheet.setCompanyId(user.getCompanyId());
-        return expenseSheetService.queryList(sheet, startDate, endDate, pageIndex, pageSize);
+        return expenseSheetService.queryList(sheet,projectId, startDate, endDate, pageIndex, pageSize);
     }
 
     @RequestMapping("/getDetail")
-    public HttpRespMsg getDetail(Integer id) {
+    public HttpRespMsg getDetail(Integer id,Integer projectId) {
 
-        return expenseSheetService.getDetail(id);
+        return expenseSheetService.getDetail(id,projectId);
 
     }
 

+ 0 - 3
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/ExpenseSheet.java

@@ -142,9 +142,6 @@ public class ExpenseSheet extends Model<ExpenseSheet> {
     @TableField(exist = false)
     private String secondCheckerName;
 
-    @TableField(exist = false)
-    private Integer projectId;
-
     /**
      * 支付方式id
      */

+ 2 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ExpenseSheetService.java

@@ -21,11 +21,11 @@ public interface ExpenseSheetService extends IService<ExpenseSheet> {
 
     HttpRespMsg delete(Integer id);
 
-    HttpRespMsg queryList(ExpenseSheet sheet, String startDate, String endDate, Integer pageIndex,  Integer pageSize);
+    HttpRespMsg queryList(ExpenseSheet sheet,Integer projectId, String startDate, String endDate, Integer pageIndex,  Integer pageSize);
 
     HttpRespMsg getNextCode(String userId);
 
-    HttpRespMsg getDetail(Integer id);
+    HttpRespMsg getDetail(Integer id ,Integer projectId);
 
     HttpRespMsg approve(Integer id);
 

+ 12 - 6
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ExpenseSheetServiceImpl.java

@@ -413,7 +413,7 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
     }
 
     @Override
-    public HttpRespMsg queryList(ExpenseSheet sheet, String startDate, String endDate, Integer pageIndex, Integer pageSize) {
+    public HttpRespMsg queryList(ExpenseSheet sheet,Integer projectId, String startDate, String endDate, Integer pageIndex, Integer pageSize) {
         QueryWrapper<ExpenseSheet> queryWrapper = new QueryWrapper<ExpenseSheet>();
         //当前用户
         String token = request.getHeader("TOKEN");
@@ -492,9 +492,8 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
         if (!StringUtils.isEmpty(startDate) && !StringUtils.isEmpty(endDate)) {
             queryWrapper.between("create_date", startDate, endDate);
         }
-        if (sheet.getProjectId()!=null){
+        if (projectId!=null){
             QueryWrapper<ExpenseItem> q = new QueryWrapper<ExpenseItem>();
-            Integer projectId = sheet.getProjectId();
             q.eq("project_id",projectId);
             List<ExpenseItem> expenseItems = expenseItemMapper.selectList(q);
             if (expenseItems.size()==0){
@@ -521,7 +520,7 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
                     records.forEach(r->{
                         List<ExpenseItem> items = expenseItems.stream()
                                 .filter(e -> e.getExpenseId().equals(r.getId())&&e.getProjectId().equals(projectId)).collect(Collectors.toList());
-                        double amount = items.stream().mapToDouble(ExpenseItem::getAmount).sum();
+                        double amount = items.stream().mapToDouble(item -> Optional.ofNullable(item.getAmount()).orElse(0.0)).sum();
                         r.setTotalAmount(amount);
                     });
                 }
@@ -575,7 +574,7 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
     }
 
     @Override
-    public HttpRespMsg getDetail(Integer id) {
+    public HttpRespMsg getDetail(Integer id,Integer projectId) {
         String token = request.getHeader("TOKEN");
         ExpenseSheet expenseSheet = expenseSheetMapper.selectById(id);
         if(!StringUtils.isEmpty(expenseSheet.getFirstCheckerId())){
@@ -586,7 +585,12 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
             User user = userMapper.selectById(expenseSheet.getSecondCheckerId());
             expenseSheet.setSecondCheckerName(user.getName());
         }
-        List<ExpenseItem> list = expenseItemMapper.selectList(new QueryWrapper<ExpenseItem>().eq("expense_id", id));
+        QueryWrapper<ExpenseItem> q = new QueryWrapper<ExpenseItem>();
+        q.eq("expense_id", id);
+        if (projectId!=null){
+            q.eq("project_id",projectId);
+        }
+        List<ExpenseItem> list = expenseItemMapper.selectList(q);
         List<Project> Project = projectMapper.selectList(new QueryWrapper<Project>().eq("company_id", expenseSheet.getCompanyId()));
         ExpenseAuditSetting expenseAuditSetting = expenseAuditSettingMapper.selectById(expenseSheet.getCompanyId());
         for (ExpenseItem expenseItem : list) {
@@ -613,6 +617,8 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
             }
         }
         expenseSheet.setInvoiceList(list);
+        double amount = list.stream().mapToDouble(item -> Optional.ofNullable(item.getAmount()).orElse(0.0)).sum();
+        expenseSheet.setTotalAmount(amount);
         HttpRespMsg msg = new HttpRespMsg();
         msg.data = expenseSheet;
         return msg;