Pārlūkot izejas kodu

费用详情列表导出

anderx 2 gadi atpakaļ
vecāks
revīzija
6897dc90d8

+ 1 - 1
src/main/java/com/goafanti/common/mapper/ExpenseRelationshipMapper.xml

@@ -70,7 +70,7 @@
     where id = #{id,jdbcType=INTEGER}
   </update>
 
-  <select id="selectById"parameterType="java.lang.Integer" resultMap="BaseResultMap">
+  <select id="selectById" parameterType="java.lang.Integer" resultMap="BaseResultMap">
     select
     <include refid="Base_Column_List" />
     from expense_relationship

+ 10 - 1
src/main/java/com/goafanti/expenseAccount/Enums/EAsecondaryTypes.java

@@ -4,12 +4,21 @@ import java.util.HashMap;
 import java.util.Map;
 
 public enum EAsecondaryTypes {
+//    0=其他,1=交通费,2=住宿费,3=市内车费,4=餐费,5=出差补贴,6=预借支,7=油费
+//     * 8=招待费,9=办公费,10=福利费,11=物业水电费,12=打印费
+    JTF(1,"交通费"),
+    ZSF(2,"住宿费"),
+    SNCF(3,"市内车费"),
+    CF(4,"餐费"),
+    CCBT(5,"出差补贴"),
+    YJZ(6,"预借支"),
+    YF(7,"油费"),
     ZDF(8,"招待费"),
     BGF(9,"办公费"),
     FLF(10,"福利费"),
     WYSDF(11,"物业水电费"),
     DYF(12,"打印费"),
-    QT(13,"其他");
+    QT(0,"其他");
 
     private Integer code;
     private String desc;

+ 36 - 12
src/main/java/com/goafanti/expenseAccount/bo/OutExpenseAccountDetailsList.java

@@ -1,54 +1,69 @@
 package com.goafanti.expenseAccount.bo;
 
+import com.goafanti.common.utils.excel.Excel;
+
 import java.math.BigDecimal;
 
 public class OutExpenseAccountDetailsList {
 
-    /**
-     * 报销查询编号
-     */
-    private String checkNo;
+
     /**
      * 0=其他,1=交通费,2=住宿费,3=市内车费,4=餐费,5=出差补贴,6=预借支,7=油费
      * 8=招待费,9=办公费,10=福利费,11=物业水电费,12=打印费
      */
     private Integer type;
+    @Excel(name = "类型")
     private String  typeOther;
     private Integer sonType;
     private String  sonTypeOther;
     /**
      * 金额
      */
+    @Excel(name = "报销金额", scale = 2)
     private BigDecimal amount;
     /**
      * 实付金额
      */
+    @Excel(name = "实报金额", scale = 2)
     private BigDecimal realAmount;
     /**
-     * 合同编号
-     */
-    private String contractNo;
-    /**
-     * 申请公司
+     * 报销查询编号
      */
-    private String applyDepName;
+    @Excel(name = "报销编号")
+    private String checkNo;
+    @Excel(name = "报销至订单")
+    private String targetName;
     /**
-     * 支付公司
+     * 合同编号
      */
-    private String payDepName;
+    private String contractNo;
+
     /**
      * 申请人
      */
+    @Excel(name = "报销人")
     private String aname;
     /**
      * 财富负责人
      */
+    @Excel(name = "财务负责人")
     private String financeName;
     /**
      * 状态 0=草稿,1=审核中,2=完成,3=驳回 ,4=撤销
      */
+    @Excel(name = "状态",readConverterExp = "0=草稿,1=审核中,2=完成,3=驳回,4=删除")
     private Integer status;
     /**
+     * 申请公司
+     */
+    @Excel(name = "申请公司")
+    private String applyDepName;
+    /**
+     * 支付公司
+     */
+    @Excel(name = "支付公司")
+    private String payDepName;
+    /**
      * 流程状态 0=巴员发起,1=上级审核,2=财务审核,3=总经理审核,4=董事长审核
      */
     private Integer processStatus;
@@ -63,9 +78,18 @@ public class OutExpenseAccountDetailsList {
     /**
      * 创建时间
      */
+    @Excel(name = "报销时间")
     private String createTimeStr;
     private Integer targetType;
 
+    public String getTargetName() {
+        return targetName;
+    }
+
+    public void setTargetName(String targetName) {
+        this.targetName = targetName;
+    }
+
     public String getTypeOther() {
         return typeOther;
     }

+ 12 - 0
src/main/java/com/goafanti/expenseAccount/controller/ExpenseAccountController.java

@@ -148,6 +148,18 @@ public class ExpenseAccountController extends CertifyApiController {
         return res;
     }
 
+    /**
+     * 费用详情列表导出
+     * @return
+     */
+    @RequestMapping(value = "/detailsListExport",method = RequestMethod.GET)
+    public Result detailsListExport(InputDetailsListBo in ){
+        Result res =new Result();
+        in.setPageSize(999999);
+        res.setData(expenseAccountService.detailsListExport(in));
+        return res;
+    }
+
 
 
 

+ 2 - 0
src/main/java/com/goafanti/expenseAccount/service/ExpenseAccountService.java

@@ -66,4 +66,6 @@ public interface ExpenseAccountService {
     Object delete(String id);
 
     Object pageListExport(InputPageListBo in);
+
+    Object detailsListExport(InputDetailsListBo in);
 }

+ 33 - 2
src/main/java/com/goafanti/expenseAccount/service/impl/ExpenseAccountServiceImpl.java

@@ -317,6 +317,36 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
         return excelUtil.exportExcel(list,"费用单列表",uploadPath);
     }
 
+    @Override
+    public Object detailsListExport(InputDetailsListBo in) {
+        List<OutExpenseAccountDetailsList> list = (List<OutExpenseAccountDetailsList>) detailsList(in).getList();
+        for (OutExpenseAccountDetailsList e : list) {
+            if (e.getTargetType()!=null){
+                if (e.getTargetType()==0){
+                    e.setTargetName("固定费用");
+                }else {
+                    e.setTargetName(e.getContractNo()+"-"+e.getBuyerName());
+                }
+            }
+            if (e.getType()!=0){
+                e.setTypeOther(EAsecondaryTypes.getDescByCode(e.getType()));
+            }else{
+                //如果是其他,又说明显示说明,没有说明显示费用类型
+                if (StringUtils.isBlank(e.getTypeOther())){
+                    if (e.getSonType()!=0){
+                        e.setTypeOther(EATypes.getDescByCode(e.getSonType()));
+                    }else{
+                        e.setTypeOther(String.format("其他(%s)",e.getSonTypeOther()));
+                    }
+                }else {
+                    e.setTypeOther(String.format("其他(%s)",e.getTypeOther()));
+                }
+            }
+        }
+        NewExcelUtil excelUtil=new NewExcelUtil(OutExpenseAccountDetailsList.class);
+        return excelUtil.exportExcel(list,"费用详细列表",uploadPath);
+    }
+
 
     private void pushResettingDebit(InputExpenseAccount in, Integer debitId) {
         ExpenseAccount debit = expenseAccountMapper.selectByPrimaryKey(debitId);
@@ -971,6 +1001,7 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
                 expenseAccountLogMapper.updateUseLogByUseId(e.getEaId(),e.getId());
             }else {
                 List<OutExpenseAccountLog> outExpenseAccountLogs = expenseAccountLogMapper.selectByEaid(in.getId());
+                addExpenseAccountLog(in.getId(),4,0,in.getAid(),"撤销报销审核");
                 for (int i=0;i<list.size();i++){
                     ExpenseRelationship e =list.get(0);
                     for (OutExpenseAccountLog eal : outExpenseAccountLogs) {
@@ -981,7 +1012,7 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
                 expenseAccountLogMapper.deleteByeaid(in.getId());
                 expenseRelationshipMapper.deleteByPrimaryKey(in.getId());
             }
-            addExpenseAccountLog(in.getId(),4,0,in.getAid(),"撤销报销审核");
+            expenseAccountMapper.deleteByPrimaryKey(in.getId());
         }
         return 1;
     }
@@ -1043,7 +1074,7 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
     }
 
     @Override
-    public Object detailsList(InputDetailsListBo in) {
+    public Pagination<?> detailsList(InputDetailsListBo in) {
         Map<String,Object> params = new HashMap<>();
         if(in.getStatus()!=null)params.put("status",in.getStatus());
         if(in.getType()!=null)params.put("type",in.getType());