Browse Source

部门报销配置开发

anderx 2 years ago
parent
commit
7b42a1b43f

+ 5 - 1
src/main/java/com/goafanti/common/dao/ExpenseConfigDetailsMapper.java

@@ -2,6 +2,8 @@ package com.goafanti.common.dao;
 
 import com.goafanti.common.model.ExpenseConfigDetails;
 
+import java.util.List;
+
 public interface ExpenseConfigDetailsMapper {
     int deleteByPrimaryKey(Integer id);
 
@@ -14,4 +16,6 @@ public interface ExpenseConfigDetailsMapper {
     int updateByPrimaryKeySelective(ExpenseConfigDetails record);
 
     int updateByPrimaryKey(ExpenseConfigDetails record);
-}
+
+    List<ExpenseConfigDetails> selectByDepId(String id);
+}

+ 0 - 17
src/main/java/com/goafanti/common/dao/ExpenseConfigMapper.java

@@ -1,17 +0,0 @@
-package com.goafanti.common.dao;
-
-import com.goafanti.common.model.ExpenseConfig;
-
-public interface ExpenseConfigMapper {
-    int deleteByPrimaryKey(Integer id);
-
-    int insert(ExpenseConfig record);
-
-    int insertSelective(ExpenseConfig record);
-
-    ExpenseConfig selectByPrimaryKey(Integer id);
-
-    int updateByPrimaryKeySelective(ExpenseConfig record);
-
-    int updateByPrimaryKey(ExpenseConfig record);
-}

+ 63 - 23
src/main/java/com/goafanti/common/mapper/DepartmentMapper.xml

@@ -27,14 +27,18 @@
     <result column="approval" jdbcType="INTEGER" property="approval" />
     <result column="approval_aid" jdbcType="VARCHAR" property="approvalAid" />
     <result column="expense_finance_id" jdbcType="VARCHAR" property="expenseFinanceId" />
-    <result column="expense_retrial_finance_id" jdbcType="VARCHAR" property="expenseRetrialFinanceId" />
-    <result column="cashier_id" jdbcType="VARCHAR" property="cashierId" />
+    <result column="expense_retrial_finance_examine" jdbcType="INTEGER" property="expenseRetrialFinanceExamine" />
+    <result column="ceo_examine" jdbcType="INTEGER" property="ceoExamine" />
+    <result column="cfo_examine" jdbcType="INTEGER" property="cfoExamine" />
+    <result column="vice_ceo_examine" jdbcType="INTEGER" property="viceCeoExamine" />
+    <result column="cashier_examine" jdbcType="INTEGER" property="cashierExamine" />
   </resultMap>
   <sql id="Base_Column_List">
     id, create_id, create_time, update_time, deleted_sign, `name`, `type`, manager_id,
     dep_no, super_id, remarks, `status`, abbreviation, finance_id, province, working_hours_type,
     hide_sign, lvl, current_amount, subordinate_amount, total_amount, retrial_finance_id,
-    approval, approval_aid, expense_finance_id, expense_retrial_finance_id, cashier_id
+    approval, approval_aid, expense_finance_id, expense_retrial_finance_examine, ceo_examine,
+    cfo_examine, vice_ceo_examine, cashier_examine
   </sql>
   <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
     select
@@ -55,7 +59,9 @@
       hide_sign, lvl, current_amount,
       subordinate_amount, total_amount, retrial_finance_id,
       approval, approval_aid, expense_finance_id,
-      expense_retrial_finance_id, cashier_id)
+      expense_retrial_finance_examine, ceo_examine,
+      cfo_examine, vice_ceo_examine, cashier_examine
+      )
     values (#{createId,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP},
       #{deletedSign,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR},
       #{managerId,jdbcType=VARCHAR}, #{depNo,jdbcType=VARCHAR}, #{superId,jdbcType=VARCHAR},
@@ -64,7 +70,9 @@
       #{hideSign,jdbcType=INTEGER}, #{lvl,jdbcType=INTEGER}, #{currentAmount,jdbcType=DECIMAL},
       #{subordinateAmount,jdbcType=DECIMAL}, #{totalAmount,jdbcType=DECIMAL}, #{retrialFinanceId,jdbcType=VARCHAR},
       #{approval,jdbcType=INTEGER}, #{approvalAid,jdbcType=VARCHAR}, #{expenseFinanceId,jdbcType=VARCHAR},
-      #{expenseRetrialFinanceId,jdbcType=VARCHAR}, #{cashierId,jdbcType=VARCHAR})
+      #{expenseRetrialFinanceExamine,jdbcType=INTEGER}, #{ceoExamine,jdbcType=INTEGER},
+      #{cfoExamine,jdbcType=INTEGER}, #{viceCeoExamine,jdbcType=INTEGER}, #{cashierExamine,jdbcType=INTEGER}
+      )
   </insert>
   <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.goafanti.common.model.Department" useGeneratedKeys="true">
     insert into department
@@ -141,11 +149,20 @@
       <if test="expenseFinanceId != null">
         expense_finance_id,
       </if>
-      <if test="expenseRetrialFinanceId != null">
-        expense_retrial_finance_id,
+      <if test="expenseRetrialFinanceExamine != null">
+        expense_retrial_finance_examine,
       </if>
-      <if test="cashierId != null">
-        cashier_id,
+      <if test="ceoExamine != null">
+        ceo_examine,
+      </if>
+      <if test="cfoExamine != null">
+        cfo_examine,
+      </if>
+      <if test="viceCeoExamine != null">
+        vice_ceo_examine,
+      </if>
+      <if test="cashierExamine != null">
+        cashier_examine,
       </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
@@ -221,11 +238,20 @@
       <if test="expenseFinanceId != null">
         #{expenseFinanceId,jdbcType=VARCHAR},
       </if>
-      <if test="expenseRetrialFinanceId != null">
-        #{expenseRetrialFinanceId,jdbcType=VARCHAR},
+      <if test="expenseRetrialFinanceExamine != null">
+        #{expenseRetrialFinanceExamine,jdbcType=INTEGER},
+      </if>
+      <if test="ceoExamine != null">
+        #{ceoExamine,jdbcType=INTEGER},
+      </if>
+      <if test="cfoExamine != null">
+        #{cfoExamine,jdbcType=INTEGER},
+      </if>
+      <if test="viceCeoExamine != null">
+        #{viceCeoExamine,jdbcType=INTEGER},
       </if>
-      <if test="cashierId != null">
-        #{cashierId,jdbcType=VARCHAR},
+      <if test="cashierExamine != null">
+        #{cashierExamine,jdbcType=INTEGER},
       </if>
     </trim>
   </insert>
@@ -304,11 +330,20 @@
       <if test="expenseFinanceId != null">
         expense_finance_id = #{expenseFinanceId,jdbcType=VARCHAR},
       </if>
-      <if test="expenseRetrialFinanceId != null">
-        expense_retrial_finance_id = #{expenseRetrialFinanceId,jdbcType=VARCHAR},
+      <if test="expenseRetrialFinanceExamine != null">
+        expense_retrial_finance_examine = #{expenseRetrialFinanceExamine,jdbcType=INTEGER},
       </if>
-      <if test="cashierId != null">
-        cashier_id = #{cashierId,jdbcType=VARCHAR},
+      <if test="ceoExamine != null">
+        ceo_examine = #{ceoExamine,jdbcType=INTEGER},
+      </if>
+      <if test="cfoExamine != null">
+        cfo_examine = #{cfoExamine,jdbcType=INTEGER},
+      </if>
+      <if test="viceCeoExamine != null">
+        vice_ceo_examine = #{viceCeoExamine,jdbcType=INTEGER},
+      </if>
+      <if test="cashierExamine != null">
+        cashier_examine = #{cashierExamine,jdbcType=INTEGER},
       </if>
     </set>
     where id = #{id,jdbcType=VARCHAR}
@@ -339,10 +374,16 @@
       approval = #{approval,jdbcType=INTEGER},
       approval_aid = #{approvalAid,jdbcType=VARCHAR},
       expense_finance_id = #{expenseFinanceId,jdbcType=VARCHAR},
-      expense_retrial_finance_id = #{expenseRetrialFinanceId,jdbcType=VARCHAR},
-      cashier_id = #{cashierId,jdbcType=VARCHAR}
+      expense_retrial_finance_examine = #{expenseRetrialFinanceExamine,jdbcType=INTEGER},
+      ceo_examine = #{ceoExamine,jdbcType=INTEGER},
+      cfo_examine = #{cfoExamine,jdbcType=INTEGER},
+      vice_ceo_examine = #{viceCeoExamine,jdbcType=INTEGER},
+      cashier_examine = #{cashierExamine,jdbcType=INTEGER}
     where id = #{id,jdbcType=VARCHAR}
   </update>
+
+
+
   <select id="selectOrganizationList" parameterType="java.lang.String" resultType="com.goafanti.organization.bo.OrganizationListOut">
     select
     om.id,om.create_id as createId,om.create_time as createTime,
@@ -450,14 +491,13 @@
     select a.id, a.create_id as createId, a.create_time as createTime, a.update_time as updateTime,a.retrial_finance_id retrialFinanceId,
            d.name retrialFinanceName, a.deleted_sign as deletedSign, a.name, a.type, a.manager_id as managerId, a.dep_no as depNo,
            a.super_id as superId, a.remarks, a.status, a.abbreviation, a.finance_id financeId,a.hide_sign hideSign,
-           a.expense_finance_id expenseFinanceId,f.name expenseFinanceName,a.expense_retrial_finance_id expenseRetrialFinanceId,
-           g.name expenseRetrialFinanceName,a.cashier_id cashierId,h.name cashierName,
+           a.expense_finance_id expenseFinanceId,f.name expenseFinanceName,a.expense_retrial_finance_examine expenseRetrialFinanceExamine,
+           a.ceo_examine ceoExamine,a.cfo_examine cfoExamine ,a.vice_ceo_examine viceCeoExamine,a.cashier_examine cashierExamine,
            a.province, c.name financeName, a.working_hours_type workingHoursType, b.name as managerName,
            a.retrial_finance_id retrialFinanceId, d.name retrialFinanceName,a.approval,a.approval_aid approvalAid,e.name approvalName
     from department a left join admin b on a.manager_id = b.id left join admin c on a.finance_id = c.id
                       left join admin d on a.retrial_finance_id=d.id left join admin e on a.approval_aid =e.id
-                      left join admin f on a.expense_finance_id=f.id left join admin g on a.expense_retrial_finance_id=g.id
-    left join admin h on a.cashier_id=h.id
+                      left join admin f on a.expense_finance_id=f.id
     where a.id=#{id,jdbcType=VARCHAR}
   </select>
   <delete id="deleteById" parameterType="java.lang.String">

+ 13 - 4
src/main/java/com/goafanti/common/mapper/ExpenseConfigDetailsMapper.xml

@@ -13,19 +13,20 @@
     id, `type`, aid, dep_id, admin_name, create_time
   </sql>
   <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
-    select 
+    select
     <include refid="Base_Column_List" />
     from expense_config_details
     where id = #{id,jdbcType=INTEGER}
   </select>
+
   <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
     delete from expense_config_details
     where id = #{id,jdbcType=INTEGER}
   </delete>
   <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.goafanti.common.model.ExpenseConfigDetails" useGeneratedKeys="true">
-    insert into expense_config_details (`type`, aid, dep_id, 
+    insert into expense_config_details (`type`, aid, dep_id,
       admin_name, create_time)
-    values (#{type,jdbcType=INTEGER}, #{aid,jdbcType=VARCHAR}, #{depId,jdbcType=VARCHAR}, 
+    values (#{type,jdbcType=INTEGER}, #{aid,jdbcType=VARCHAR}, #{depId,jdbcType=VARCHAR},
       #{adminName,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP})
   </insert>
   <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.goafanti.common.model.ExpenseConfigDetails" useGeneratedKeys="true">
@@ -95,4 +96,12 @@
       create_time = #{createTime,jdbcType=TIMESTAMP}
     where id = #{id,jdbcType=INTEGER}
   </update>
-</mapper>
+
+
+  <select id="selectByDepId"   resultMap="BaseResultMap">
+    select
+    <include refid="Base_Column_List" />
+    from expense_config_details
+    where dep_id = #{id}
+  </select>
+</mapper>

+ 0 - 76
src/main/java/com/goafanti/common/mapper/ExpenseConfigMapper.xml

@@ -1,76 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.goafanti.common.dao.ExpenseConfigMapper">
-  <resultMap id="BaseResultMap" type="com.goafanti.common.model.ExpenseConfig">
-    <id column="id" jdbcType="INTEGER" property="id" />
-    <result column="ceo_examine" jdbcType="INTEGER" property="ceoExamine" />
-    <result column="cfo_examine" jdbcType="INTEGER" property="cfoExamine" />
-    <result column="vice_ceo_examine" jdbcType="INTEGER" property="viceCeoExamine" />
-  </resultMap>
-  <sql id="Base_Column_List">
-    id, ceo_examine, cfo_examine, vice_ceo_examine
-  </sql>
-  <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
-    select 
-    <include refid="Base_Column_List" />
-    from expense_config
-    where id = #{id,jdbcType=INTEGER}
-  </select>
-  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
-    delete from expense_config
-    where id = #{id,jdbcType=INTEGER}
-  </delete>
-  <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.goafanti.common.model.ExpenseConfig" useGeneratedKeys="true">
-    insert into expense_config (ceo_examine, cfo_examine, vice_ceo_examine
-      )
-    values (#{ceoExamine,jdbcType=INTEGER}, #{cfoExamine,jdbcType=INTEGER}, #{viceCeoExamine,jdbcType=INTEGER}
-      )
-  </insert>
-  <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.goafanti.common.model.ExpenseConfig" useGeneratedKeys="true">
-    insert into expense_config
-    <trim prefix="(" suffix=")" suffixOverrides=",">
-      <if test="ceoExamine != null">
-        ceo_examine,
-      </if>
-      <if test="cfoExamine != null">
-        cfo_examine,
-      </if>
-      <if test="viceCeoExamine != null">
-        vice_ceo_examine,
-      </if>
-    </trim>
-    <trim prefix="values (" suffix=")" suffixOverrides=",">
-      <if test="ceoExamine != null">
-        #{ceoExamine,jdbcType=INTEGER},
-      </if>
-      <if test="cfoExamine != null">
-        #{cfoExamine,jdbcType=INTEGER},
-      </if>
-      <if test="viceCeoExamine != null">
-        #{viceCeoExamine,jdbcType=INTEGER},
-      </if>
-    </trim>
-  </insert>
-  <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.ExpenseConfig">
-    update expense_config
-    <set>
-      <if test="ceoExamine != null">
-        ceo_examine = #{ceoExamine,jdbcType=INTEGER},
-      </if>
-      <if test="cfoExamine != null">
-        cfo_examine = #{cfoExamine,jdbcType=INTEGER},
-      </if>
-      <if test="viceCeoExamine != null">
-        vice_ceo_examine = #{viceCeoExamine,jdbcType=INTEGER},
-      </if>
-    </set>
-    where id = #{id,jdbcType=INTEGER}
-  </update>
-  <update id="updateByPrimaryKey" parameterType="com.goafanti.common.model.ExpenseConfig">
-    update expense_config
-    set ceo_examine = #{ceoExamine,jdbcType=INTEGER},
-      cfo_examine = #{cfoExamine,jdbcType=INTEGER},
-      vice_ceo_examine = #{viceCeoExamine,jdbcType=INTEGER}
-    where id = #{id,jdbcType=INTEGER}
-  </update>
-</mapper>

+ 51 - 12
src/main/java/com/goafanti/common/model/Department.java

@@ -135,14 +135,29 @@ public class Department implements Serializable {
     private String expenseFinanceId;
 
     /**
-     * 报销财务复审审核人
+     * 财务复审 0-不需要 ,1-需要
      */
-    private String expenseRetrialFinanceId;
+    private Integer expenseRetrialFinanceExamine;
 
     /**
-     * 出纳人员编号
+     * 董事长审核 0-不需要 ,1-需要
      */
-    private String cashierId;
+    private Integer ceoExamine;
+
+    /**
+     * 财务总监出纳状态 0-不需要 ,1-需要
+     */
+    private Integer cfoExamine;
+
+    /**
+     * 公司副总出纳状态 0-不需要 ,1-需要
+     */
+    private Integer viceCeoExamine;
+
+    /**
+     * 出纳审核 0-不需要 ,1-需要
+     */
+    private Integer cashierExamine;
 
     private static final long serialVersionUID = 1L;
 
@@ -346,19 +361,43 @@ public class Department implements Serializable {
         this.expenseFinanceId = expenseFinanceId;
     }
 
-    public String getExpenseRetrialFinanceId() {
-        return expenseRetrialFinanceId;
+    public Integer getExpenseRetrialFinanceExamine() {
+        return expenseRetrialFinanceExamine;
+    }
+
+    public void setExpenseRetrialFinanceExamine(Integer expenseRetrialFinanceExamine) {
+        this.expenseRetrialFinanceExamine = expenseRetrialFinanceExamine;
+    }
+
+    public Integer getCeoExamine() {
+        return ceoExamine;
+    }
+
+    public void setCeoExamine(Integer ceoExamine) {
+        this.ceoExamine = ceoExamine;
+    }
+
+    public Integer getCfoExamine() {
+        return cfoExamine;
+    }
+
+    public void setCfoExamine(Integer cfoExamine) {
+        this.cfoExamine = cfoExamine;
+    }
+
+    public Integer getViceCeoExamine() {
+        return viceCeoExamine;
     }
 
-    public void setExpenseRetrialFinanceId(String expenseRetrialFinanceId) {
-        this.expenseRetrialFinanceId = expenseRetrialFinanceId;
+    public void setViceCeoExamine(Integer viceCeoExamine) {
+        this.viceCeoExamine = viceCeoExamine;
     }
 
-    public String getCashierId() {
-        return cashierId;
+    public Integer getCashierExamine() {
+        return cashierExamine;
     }
 
-    public void setCashierId(String cashierId) {
-        this.cashierId = cashierId;
+    public void setCashierExamine(Integer cashierExamine) {
+        this.cashierExamine = cashierExamine;
     }
 }

+ 0 - 60
src/main/java/com/goafanti/common/model/ExpenseConfig.java

@@ -1,60 +0,0 @@
-package com.goafanti.common.model;
-
-import java.io.Serializable;
-
-/**
- * expense_config
- * @author 
- */
-public class ExpenseConfig implements Serializable {
-    private Integer id;
-
-    /**
-     * 董事长审核
-     */
-    private Integer ceoExamine;
-
-    /**
-     * 财务总监审核
-     */
-    private Integer cfoExamine;
-
-    /**
-     * 集团副总审核
-     */
-    private Integer viceCeoExamine;
-
-    private static final long serialVersionUID = 1L;
-
-    public Integer getId() {
-        return id;
-    }
-
-    public void setId(Integer id) {
-        this.id = id;
-    }
-
-    public Integer getCeoExamine() {
-        return ceoExamine;
-    }
-
-    public void setCeoExamine(Integer ceoExamine) {
-        this.ceoExamine = ceoExamine;
-    }
-
-    public Integer getCfoExamine() {
-        return cfoExamine;
-    }
-
-    public void setCfoExamine(Integer cfoExamine) {
-        this.cfoExamine = cfoExamine;
-    }
-
-    public Integer getViceCeoExamine() {
-        return viceCeoExamine;
-    }
-
-    public void setViceCeoExamine(Integer viceCeoExamine) {
-        this.viceCeoExamine = viceCeoExamine;
-    }
-}

+ 1 - 3
src/main/java/com/goafanti/expenseAccount/service/impl/ExpenseAccountServiceImpl.java

@@ -136,9 +136,7 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
                 eae.setAuditor(dep.getExpenseFinanceId());
                 eae.setAuditorname(dep.getExpenseFinanceName());
             }else if (i==4){
-                if (StringUtils.isBlank(dep.getExpenseRetrialFinanceId()))throw new BusinessException("报销部门财务复审人不存在。");
-                eae.setAuditor(dep.getExpenseRetrialFinanceId());
-                eae.setAuditorname(dep.getExpenseRetrialFinanceName());
+
             }
             if (StringUtils.isNotEmpty(eae.getAuditor())){
                 if (eae.getAuditor().equals(aid))eae.setStatus(1);

+ 2 - 9
src/main/java/com/goafanti/expenseAccount/service/impl/ExpenseConfigServiceImpl.java

@@ -1,8 +1,6 @@
 package com.goafanti.expenseAccount.service.impl;
 
 import com.goafanti.common.dao.ExpenseConfigDetailsMapper;
-import com.goafanti.common.dao.ExpenseConfigMapper;
-import com.goafanti.common.model.ExpenseConfig;
 import com.goafanti.common.model.ExpenseConfigDetails;
 import com.goafanti.expenseAccount.service.ExpenseConfigService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -11,17 +9,12 @@ import org.springframework.stereotype.Service;
 @Service
 public class ExpenseConfigServiceImpl implements ExpenseConfigService {
 
-    @Autowired
-    private ExpenseConfigMapper expenseConfigMapper;
+
     @Autowired
     private ExpenseConfigDetailsMapper expenseConfigDetailsMapper;
 
 
-    @Override
-    public Integer update(ExpenseConfig config) {
-        config.setId(1);
-        return expenseConfigMapper.updateByPrimaryKeySelective(config);
-    }
+
 
     @Override
     public Object addDeTails(ExpenseConfigDetails details) {

+ 223 - 0
src/main/java/com/goafanti/organization/bo/InputDep.java

@@ -0,0 +1,223 @@
+package com.goafanti.organization.bo;
+
+import com.goafanti.common.constant.ErrorConstants;
+
+import javax.validation.constraints.NotNull;
+
+public class InputDep {
+    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
+    private String name;
+    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
+    private String type;
+    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
+    private String managerId;
+    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
+    private String superId;
+    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
+    private String status;
+    private Integer province;
+    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
+    private String remarks;
+    private String id;
+    private String abbreviation;
+    private String financeId;
+    private Integer workingHoursType;
+    private Integer hideSign;
+    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
+    private String depNo;
+    private Integer approval;
+    private String approvalAid;
+    private String expenseFinanceId;
+    /**
+     * 财务复审 0-不需要 ,1-需要
+     */
+    private Integer expenseRetrialFinanceExamine;
+
+    /**
+     * 董事长审核 0-不需要 ,1-需要
+     */
+    private Integer ceoExamine;
+
+    /**
+     * 财务总监出纳状态 0-不需要 ,1-需要
+     */
+    private Integer cfoExamine;
+
+    /**
+     * 公司副总出纳状态 0-不需要 ,1-需要
+     */
+    private Integer viceCeoExamine;
+
+    /**
+     * 出纳审核 0-不需要 ,1-需要
+     */
+    private Integer cashierExamine;
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
+    public String getManagerId() {
+        return managerId;
+    }
+
+    public void setManagerId(String managerId) {
+        this.managerId = managerId;
+    }
+
+    public String getSuperId() {
+        return superId;
+    }
+
+    public void setSuperId(String superId) {
+        this.superId = superId;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public Integer getProvince() {
+        return province;
+    }
+
+    public void setProvince(Integer province) {
+        this.province = province;
+    }
+
+    public String getRemarks() {
+        return remarks;
+    }
+
+    public void setRemarks(String remarks) {
+        this.remarks = remarks;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getAbbreviation() {
+        return abbreviation;
+    }
+
+    public void setAbbreviation(String abbreviation) {
+        this.abbreviation = abbreviation;
+    }
+
+    public String getFinanceId() {
+        return financeId;
+    }
+
+    public void setFinanceId(String financeId) {
+        this.financeId = financeId;
+    }
+
+    public Integer getWorkingHoursType() {
+        return workingHoursType;
+    }
+
+    public void setWorkingHoursType(Integer workingHoursType) {
+        this.workingHoursType = workingHoursType;
+    }
+
+    public Integer getHideSign() {
+        return hideSign;
+    }
+
+    public void setHideSign(Integer hideSign) {
+        this.hideSign = hideSign;
+    }
+
+    public String getDepNo() {
+        return depNo;
+    }
+
+    public void setDepNo(String depNo) {
+        this.depNo = depNo;
+    }
+
+    public Integer getApproval() {
+        return approval;
+    }
+
+    public void setApproval(Integer approval) {
+        this.approval = approval;
+    }
+
+    public String getApprovalAid() {
+        return approvalAid;
+    }
+
+    public void setApprovalAid(String approvalAid) {
+        this.approvalAid = approvalAid;
+    }
+
+    public String getExpenseFinanceId() {
+        return expenseFinanceId;
+    }
+
+    public void setExpenseFinanceId(String expenseFinanceId) {
+        this.expenseFinanceId = expenseFinanceId;
+    }
+
+    public Integer getExpenseRetrialFinanceExamine() {
+        return expenseRetrialFinanceExamine;
+    }
+
+    public void setExpenseRetrialFinanceExamine(Integer expenseRetrialFinanceExamine) {
+        this.expenseRetrialFinanceExamine = expenseRetrialFinanceExamine;
+    }
+
+    public Integer getCeoExamine() {
+        return ceoExamine;
+    }
+
+    public void setCeoExamine(Integer ceoExamine) {
+        this.ceoExamine = ceoExamine;
+    }
+
+    public Integer getCfoExamine() {
+        return cfoExamine;
+    }
+
+    public void setCfoExamine(Integer cfoExamine) {
+        this.cfoExamine = cfoExamine;
+    }
+
+    public Integer getViceCeoExamine() {
+        return viceCeoExamine;
+    }
+
+    public void setViceCeoExamine(Integer viceCeoExamine) {
+        this.viceCeoExamine = viceCeoExamine;
+    }
+
+    public Integer getCashierExamine() {
+        return cashierExamine;
+    }
+
+    public void setCashierExamine(Integer cashierExamine) {
+        this.cashierExamine = cashierExamine;
+    }
+}

+ 381 - 257
src/main/java/com/goafanti/organization/bo/OrganizationListOut.java

@@ -1,306 +1,430 @@
 package com.goafanti.organization.bo;
 
+import com.goafanti.common.model.ExpenseConfigDetails;
+
 import java.util.List;
 
 public class OrganizationListOut {
-	/**登录用户ID**/
-	private String uid;
-	/**组织ID**/
-	private String id;
-	/**创建人**/
-	private String createId;
-	/**创建时间**/
-	private String createTime;
-	/**更新时间**/
-	private String updateTime;
-	/**删除标识**/
-	private String deletedSign;
-	/**组织名称**/
-	private String name;
-	/**组织类型**/
-	private String type;
-	/** 负责人姓名 **/
-	private String managerName;
-	/**组织负责人ID**/
-	private String managerId;
-	/**组织编号**/
-	private String depNo;
-	/** 上级组织名称 **/
-	private String superName;
-	/**上级组织**/
-	private String superId;
-	/**组织职能说明**/
-	private String remarks;
-	/**组织状态**/
-	private String status;
-	/**
-	 * 缩写
-	 */
-	private String abbreviation;
-	private String financeName;
-	private String financeId;
-
-	private String retrialFinanceId;
-	private String retrialFinanceName;
-
-	private String expenseFinanceId;
-	private String expenseFinanceName;
-	private String expenseRetrialFinanceId;
-	private String expenseRetrialFinanceName;
-	private String cashierId;
-	private String cashierName;
-	private Integer approval;
-	private String approvalAid;
-	private String approvalName;
-	private Integer province;
-	private Integer hideSign;
-	private Integer workingHoursType;
-	private String workingHoursName;
-	private Integer lvl;
-	private List<OrganizationListOut> list;
-
-
-	public String getCashierId() {
-		return cashierId;
+    /**
+     * 登录用户ID
+     **/
+    private String uid;
+    /**
+     * 组织ID
+     **/
+    private String id;
+    /**
+     * 创建人
+     **/
+    private String createId;
+    /**
+     * 创建时间
+     **/
+    private String createTime;
+    /**
+     * 更新时间
+     **/
+    private String updateTime;
+    /**
+     * 删除标识
+     **/
+    private String deletedSign;
+    /**
+     * 组织名称
+     **/
+    private String name;
+    /**
+     * 组织类型
+     **/
+    private String type;
+    /**
+     * 负责人姓名
+     **/
+    private String managerName;
+    /**
+     * 组织负责人ID
+     **/
+    private String managerId;
+    /**
+     * 组织编号
+     **/
+    private String depNo;
+    /**
+     * 上级组织名称
+     **/
+    private String superName;
+    /**
+     * 上级组织
+     **/
+    private String superId;
+    /**
+     * 组织职能说明
+     **/
+    private String remarks;
+    /**
+     * 组织状态
+     **/
+    private String status;
+    /**
+     * 缩写
+     */
+    private String abbreviation;
+    private String financeName;
+    private String financeId;
+
+    private String retrialFinanceId;
+    private String retrialFinanceName;
+
+    private String expenseFinanceId;
+    private String expenseFinanceName;
+
+    private Integer approval;
+    private String approvalAid;
+    private String approvalName;
+    private Integer province;
+    private Integer hideSign;
+    private Integer workingHoursType;
+    private String workingHoursName;
+    private Integer lvl;
+    private List<OrganizationListOut> list;
+    private Integer expenseRetrialFinanceExamine;
+    private Integer ceoExamine;
+    private Integer cfoExamine;
+    private Integer viceCeoExamine;
+    private Integer cashierExamine;
+    private List<ExpenseConfigDetails> expenseRetrialFinanceExamineList;
+    private List<ExpenseConfigDetails> ceoExamineList;
+    private List<ExpenseConfigDetails> cfoExamineList;
+    private List<ExpenseConfigDetails> viceCeoExamineList;
+    private List<ExpenseConfigDetails> cashierExamineList;
+
+    public List<ExpenseConfigDetails> getExpenseRetrialFinanceExamineList() {
+        return expenseRetrialFinanceExamineList;
+    }
+
+    public void setExpenseRetrialFinanceExamineList(List<ExpenseConfigDetails> expenseRetrialFinanceExamineList) {
+        this.expenseRetrialFinanceExamineList = expenseRetrialFinanceExamineList;
+    }
+
+    public List<ExpenseConfigDetails> getCeoExamineList() {
+        return ceoExamineList;
+    }
+
+    public void setCeoExamineList(List<ExpenseConfigDetails> ceoExamineList) {
+        this.ceoExamineList = ceoExamineList;
+    }
+
+    public List<ExpenseConfigDetails> getCfoExamineList() {
+        return cfoExamineList;
+    }
+
+    public void setCfoExamineList(List<ExpenseConfigDetails> cfoExamineList) {
+        this.cfoExamineList = cfoExamineList;
+    }
+
+    public List<ExpenseConfigDetails> getViceCeoExamineList() {
+        return viceCeoExamineList;
+    }
+
+    public void setViceCeoExamineList(List<ExpenseConfigDetails> viceCeoExamineList) {
+        this.viceCeoExamineList = viceCeoExamineList;
+    }
+
+    public List<ExpenseConfigDetails> getCashierExamineList() {
+        return cashierExamineList;
+    }
+
+    public void setCashierExamineList(List<ExpenseConfigDetails> cashierExamineList) {
+        this.cashierExamineList = cashierExamineList;
+    }
+
+    public Integer getExpenseRetrialFinanceExamine() {
+		return expenseRetrialFinanceExamine;
 	}
 
-	public void setCashierId(String cashierId) {
-		this.cashierId = cashierId;
+	public void setExpenseRetrialFinanceExamine(Integer expenseRetrialFinanceExamine) {
+		this.expenseRetrialFinanceExamine = expenseRetrialFinanceExamine;
 	}
 
-	public String getCashierName() {
-		return cashierName;
+	public Integer getCeoExamine() {
+		return ceoExamine;
 	}
 
-	public void setCashierName(String cashierName) {
-		this.cashierName = cashierName;
+	public void setCeoExamine(Integer ceoExamine) {
+		this.ceoExamine = ceoExamine;
 	}
 
-	public String getExpenseRetrialFinanceId() {
-		return expenseRetrialFinanceId;
+	public Integer getCfoExamine() {
+		return cfoExamine;
 	}
 
-	public void setExpenseRetrialFinanceId(String expenseRetrialFinanceId) {
-		this.expenseRetrialFinanceId = expenseRetrialFinanceId;
+	public void setCfoExamine(Integer cfoExamine) {
+		this.cfoExamine = cfoExamine;
 	}
 
-	public String getExpenseRetrialFinanceName() {
-		return expenseRetrialFinanceName;
+	public Integer getViceCeoExamine() {
+		return viceCeoExamine;
 	}
 
-	public void setExpenseRetrialFinanceName(String expenseRetrialFinanceName) {
-		this.expenseRetrialFinanceName = expenseRetrialFinanceName;
+	public void setViceCeoExamine(Integer viceCeoExamine) {
+		this.viceCeoExamine = viceCeoExamine;
 	}
 
-	public String getExpenseFinanceId() {
-		return expenseFinanceId;
+	public Integer getCashierExamine() {
+		return cashierExamine;
 	}
 
-	public void setExpenseFinanceId(String expenseFinanceId) {
-		this.expenseFinanceId = expenseFinanceId;
+	public void setCashierExamine(Integer cashierExamine) {
+		this.cashierExamine = cashierExamine;
 	}
 
-	public String getExpenseFinanceName() {
-		return expenseFinanceName;
-	}
+	public String getExpenseFinanceId() {
+        return expenseFinanceId;
+    }
 
-	public void setExpenseFinanceName(String expenseFinanceName) {
-		this.expenseFinanceName = expenseFinanceName;
-	}
+    public void setExpenseFinanceId(String expenseFinanceId) {
+        this.expenseFinanceId = expenseFinanceId;
+    }
 
-	public String getApprovalName() {
-		return approvalName;
-	}
+    public String getExpenseFinanceName() {
+        return expenseFinanceName;
+    }
 
-	public void setApprovalName(String approvalName) {
-		this.approvalName = approvalName;
-	}
+    public void setExpenseFinanceName(String expenseFinanceName) {
+        this.expenseFinanceName = expenseFinanceName;
+    }
 
-	public Integer getApproval() {
-		return approval;
-	}
+    public String getApprovalName() {
+        return approvalName;
+    }
 
-	public void setApproval(Integer approval) {
-		this.approval = approval;
-	}
+    public void setApprovalName(String approvalName) {
+        this.approvalName = approvalName;
+    }
 
-	public String getApprovalAid() {
-		return approvalAid;
-	}
+    public Integer getApproval() {
+        return approval;
+    }
 
-	public void setApprovalAid(String approvalAid) {
-		this.approvalAid = approvalAid;
-	}
+    public void setApproval(Integer approval) {
+        this.approval = approval;
+    }
 
-	public String getRetrialFinanceId() {
-		return retrialFinanceId;
-	}
+    public String getApprovalAid() {
+        return approvalAid;
+    }
 
-	public void setRetrialFinanceId(String retrialFinanceId) {
-		this.retrialFinanceId = retrialFinanceId;
-	}
+    public void setApprovalAid(String approvalAid) {
+        this.approvalAid = approvalAid;
+    }
 
-	public String getRetrialFinanceName() {
-		return retrialFinanceName;
-	}
+    public String getRetrialFinanceId() {
+        return retrialFinanceId;
+    }
 
-	public void setRetrialFinanceName(String retrialFinanceName) {
-		this.retrialFinanceName = retrialFinanceName;
-	}
+    public void setRetrialFinanceId(String retrialFinanceId) {
+        this.retrialFinanceId = retrialFinanceId;
+    }
 
-	public List<OrganizationListOut> getList() {
-		return list;
-	}
+    public String getRetrialFinanceName() {
+        return retrialFinanceName;
+    }
 
-	public void setList(List<OrganizationListOut> list) {
-		this.list = list;
-	}
+    public void setRetrialFinanceName(String retrialFinanceName) {
+        this.retrialFinanceName = retrialFinanceName;
+    }
 
-	public Integer getLvl() {
-		return lvl;
-	}
+    public List<OrganizationListOut> getList() {
+        return list;
+    }
 
-	public void setLvl(Integer lvl) {
-		this.lvl = lvl;
-	}
+    public void setList(List<OrganizationListOut> list) {
+        this.list = list;
+    }
 
-	public Integer getHideSign() {
-		return hideSign;
-	}
+    public Integer getLvl() {
+        return lvl;
+    }
 
-	public void setHideSign(Integer hideSign) {
-		this.hideSign = hideSign;
-	}
+    public void setLvl(Integer lvl) {
+        this.lvl = lvl;
+    }
 
-	public String getUid() {
-		return uid;
-	}
-	public void setUid(String uid) {
-		this.uid = uid;
-	}
-	public String getId() {
-		return id;
-	}
-	public void setId(String id) {
-		this.id = id;
-	}
-	public String getCreateId() {
-		return createId;
-	}
-	public void setCreateId(String createId) {
-		this.createId = createId;
-	}
-	public String getCreateTime() {
-		return createTime;
-	}
-	public void setCreateTime(String createTime) {
-		this.createTime = createTime;
-	}
-	public String getUpdateTime() {
-		return updateTime;
-	}
-	public void setUpdateTime(String updateTime) {
-		this.updateTime = updateTime;
-	}
-	public String getDeletedSign() {
-		return deletedSign;
-	}
-	public void setDeletedSign(String deletedSign) {
-		this.deletedSign = deletedSign;
-	}
-	public String getName() {
-		return name;
-	}
-	public void setName(String name) {
-		this.name = name;
-	}
-	public String getType() {
-		return type;
-	}
-	public void setType(String type) {
-		this.type = type;
-	}
-	public String getManagerName() {
-		return managerName;
-	}
-	public void setManagerName(String managerName) {
-		this.managerName = managerName;
-	}
-	public String getManagerId() {
-		return managerId;
-	}
-	public void setManagerId(String managerId) {
-		this.managerId = managerId;
-	}
-	public String getDepNo() {
-		return depNo;
-	}
-	public void setDepNo(String depNo) {
-		this.depNo = depNo;
-	}
-	public String getSuperName() {
-		return superName;
-	}
-	public void setSuperName(String superName) {
-		this.superName = superName;
-	}
-	public String getSuperId() {
-		return superId;
-	}
-	public void setSuperId(String superId) {
-		this.superId = superId;
-	}
-	public String getRemarks() {
-		return remarks;
-	}
-	public void setRemarks(String remarks) {
-		this.remarks = remarks;
-	}
-	public String getStatus() {
-		return status;
-	}
-	public void setStatus(String status) {
-		this.status = status;
-	}
-	public String getAbbreviation() {
-		return abbreviation;
-	}
-	public void setAbbreviation(String abbreviation) {
-		this.abbreviation = abbreviation;
-	}
-	public String getFinanceId() {
-		return financeId;
-	}
-	public void setFinanceId(String financeId) {
-		this.financeId = financeId;
-	}
-	public String getFinanceName() {
-		return financeName;
-	}
-	public void setFinanceName(String financeName) {
-		this.financeName = financeName;
-	}
-	public Integer getProvince() {
-		return province;
-	}
-	public void setProvince(Integer province) {
-		this.province = province;
-	}
-	public Integer getWorkingHoursType() {
-		return workingHoursType;
-	}
-	public void setWorkingHoursType(Integer workingHoursType) {
-		this.workingHoursType = workingHoursType;
-	}
-	public String getWorkingHoursName() {
-		return workingHoursName;
-	}
-	public void setWorkingHoursName(String workingHoursName) {
-		this.workingHoursName = workingHoursName;
-	}
+    public Integer getHideSign() {
+        return hideSign;
+    }
+
+    public void setHideSign(Integer hideSign) {
+        this.hideSign = hideSign;
+    }
+
+    public String getUid() {
+        return uid;
+    }
+
+    public void setUid(String uid) {
+        this.uid = uid;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getCreateId() {
+        return createId;
+    }
+
+    public void setCreateId(String createId) {
+        this.createId = createId;
+    }
+
+    public String getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(String createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(String updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public String getDeletedSign() {
+        return deletedSign;
+    }
+
+    public void setDeletedSign(String deletedSign) {
+        this.deletedSign = deletedSign;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
+    public String getManagerName() {
+        return managerName;
+    }
+
+    public void setManagerName(String managerName) {
+        this.managerName = managerName;
+    }
+
+    public String getManagerId() {
+        return managerId;
+    }
+
+    public void setManagerId(String managerId) {
+        this.managerId = managerId;
+    }
+
+    public String getDepNo() {
+        return depNo;
+    }
+
+    public void setDepNo(String depNo) {
+        this.depNo = depNo;
+    }
+
+    public String getSuperName() {
+        return superName;
+    }
+
+    public void setSuperName(String superName) {
+        this.superName = superName;
+    }
+
+    public String getSuperId() {
+        return superId;
+    }
+
+    public void setSuperId(String superId) {
+        this.superId = superId;
+    }
+
+    public String getRemarks() {
+        return remarks;
+    }
+
+    public void setRemarks(String remarks) {
+        this.remarks = remarks;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public String getAbbreviation() {
+        return abbreviation;
+    }
+
+    public void setAbbreviation(String abbreviation) {
+        this.abbreviation = abbreviation;
+    }
+
+    public String getFinanceId() {
+        return financeId;
+    }
+
+    public void setFinanceId(String financeId) {
+        this.financeId = financeId;
+    }
+
+    public String getFinanceName() {
+        return financeName;
+    }
+
+    public void setFinanceName(String financeName) {
+        this.financeName = financeName;
+    }
+
+    public Integer getProvince() {
+        return province;
+    }
+
+    public void setProvince(Integer province) {
+        this.province = province;
+    }
+
+    public Integer getWorkingHoursType() {
+        return workingHoursType;
+    }
 
+    public void setWorkingHoursType(Integer workingHoursType) {
+        this.workingHoursType = workingHoursType;
+    }
 
+    public String getWorkingHoursName() {
+        return workingHoursName;
+    }
 
+    public void setWorkingHoursName(String workingHoursName) {
+        this.workingHoursName = workingHoursName;
+    }
 
 
 }

+ 12 - 13
src/main/java/com/goafanti/organization/controller/AdminOrganizationController.java

@@ -4,10 +4,14 @@ import com.goafanti.common.bo.Result;
 import com.goafanti.common.constant.ErrorConstants;
 import com.goafanti.common.controller.BaseApiController;
 import com.goafanti.common.dao.DepartmentMapper;
+import com.goafanti.common.utils.ParamUtils;
 import com.goafanti.common.utils.StringUtils;
+import com.goafanti.organization.bo.InputDep;
 import com.goafanti.organization.bo.OrganizationListOut;
 import com.goafanti.organization.service.OrganizationService;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
@@ -93,31 +97,26 @@ public class AdminOrganizationController extends BaseApiController{
 	 * 修改部门信息
 	 **/
 	@RequestMapping(value = "/updateOrganization" , method = RequestMethod.POST)
-	public Result updateOrganization(String name, String type, String managerId, String superId, String status,Integer province,String retrialFinanceId,
-									 String remarks,String id,String abbreviation,String financeId,Integer workingHoursType,
-									 Integer hideSign,String depNo,Integer approval,String approvalAid,
-									 String expenseFinanceId){
+	public Result updateOrganization(@Validated InputDep in, BindingResult bindingResult){
 		Result res = new Result();
-		if(StringUtils.isBlank(name) || StringUtils.isBlank(type)
-				|| StringUtils.isBlank(managerId)|| StringUtils.isBlank(superId)
-				|| StringUtils.isBlank(status)|| StringUtils.isBlank(remarks)|| StringUtils.isBlank(depNo)){
-			res.getError().add(buildError(ErrorConstants.PARAM_ERROR,"",""));
+		if (bindingResult.hasErrors()) {
+			res.getError().add(buildErrorByMsg(bindingResult.getFieldError().getDefaultMessage(),
+					ParamUtils.getParamName(in,bindingResult.getFieldError().getField())));
 			return res;
 		}
-		if (id ==superId){
+		if (in.getId() ==in.getSuperId()){
 			res.getError().add(buildError("不能设置自己为上级"));
 			return res;
 		}
-		if (organizationService.checkDepNo(depNo,1)){
+		if (organizationService.checkDepNo(in.getDepNo(),1)){
 			res.getError().add(buildError("","部门编号已存在"));
 			return res;
 		}
-		if (approval==null||(approval==1&&StringUtils.isBlank(approvalAid))){
+		if (in.getApproval()==null||(in.getApproval()==1&&StringUtils.isBlank(in.getApprovalAid()))){
 			res.getError().add(buildError("特批审核开启必须设置特批人"));
 			return res;
 		}
-		int i=organizationService.updateOrganization(name, type, managerId, superId, status, province,
-				retrialFinanceId,remarks,id, abbreviation,financeId,workingHoursType,hideSign,depNo, approval, approvalAid,expenseFinanceId);
+		int i=organizationService.updateOrganization(in);
 		return res.data(i);
 	}
 

+ 2 - 3
src/main/java/com/goafanti/organization/service/OrganizationService.java

@@ -3,6 +3,7 @@ package com.goafanti.organization.service;
 import com.goafanti.admin.bo.AdminListBo;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.organization.bo.DepOut;
+import com.goafanti.organization.bo.InputDep;
 import com.goafanti.organization.bo.OrganizationListOut;
 
 import java.util.List;
@@ -43,9 +44,7 @@ public interface OrganizationService {
 
 	int deleteById(String id);
 
-	int updateOrganization(String name,String type,String managerId,String superId,String status,Integer province,String retrialFinanceId,
-			String remarks,String id,String abbreviation,String financeId,Integer workingHoursType,Integer hideSign,String depNo,
-						   Integer approval,String approvalAid,String expenseFinanceId);
+	int updateOrganization(InputDep in);
 
 	boolean checkDepNo(String depNo,Integer type);
 

+ 48 - 30
src/main/java/com/goafanti/organization/service/impl/OrganizationServiceImpl.java

@@ -2,16 +2,16 @@ package com.goafanti.organization.service.impl;
 
 import com.goafanti.admin.bo.AdminListBo;
 import com.goafanti.common.dao.DepartmentMapper;
-import com.goafanti.common.dao.FinanceCountMapper;
-import com.goafanti.common.dao.TOrderMidMapper;
-import com.goafanti.common.dao.TOrderNewMapper;
+import com.goafanti.common.dao.ExpenseConfigDetailsMapper;
 import com.goafanti.common.model.Department;
+import com.goafanti.common.model.ExpenseConfigDetails;
 import com.goafanti.common.utils.AsyncUtils;
 import com.goafanti.common.utils.StringUtils;
 import com.goafanti.core.mybatis.BaseMybatisDao;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.core.shiro.token.TokenManager;
 import com.goafanti.organization.bo.DepOut;
+import com.goafanti.organization.bo.InputDep;
 import com.goafanti.organization.bo.OrganizationListOut;
 import com.goafanti.organization.service.OrganizationService;
 import net.sourceforge.pinyin4j.PinyinHelper;
@@ -21,19 +21,19 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.*;
+import java.util.stream.Collectors;
+
 @Service
 public class OrganizationServiceImpl extends BaseMybatisDao<DepartmentMapper> implements OrganizationService {
 	@Autowired
 	private DepartmentMapper departmentMapper;
 	@Autowired
-	private TOrderMidMapper	tOrderMidMapper;
-	@Autowired
-	private TOrderNewMapper	tOrderNewMapper;
-	@Autowired
-	private FinanceCountMapper financeCountMapper;
+	private ExpenseConfigDetailsMapper expenseConfigDetailsMapper;
+
 	@Autowired
 	private AsyncUtils asyncUtils;
 
+
 	@Override
 	public Pagination<OrganizationListOut> listOrganizationManagement(OrganizationListOut olo, Integer pageNo,
 			Integer pageSize) {
@@ -184,6 +184,12 @@ public class OrganizationServiceImpl extends BaseMybatisDao<DepartmentMapper> im
 	@Override
 	public OrganizationListOut selectAllById(String id) {
 		OrganizationListOut olo=departmentMapper.selectAllById(id);
+		List<ExpenseConfigDetails> list = expenseConfigDetailsMapper.selectByDepId(id);
+		olo.setExpenseRetrialFinanceExamineList(list.stream().filter(e ->e.getType()==1).collect(Collectors.toList()));
+		olo.setCeoExamineList(list.stream().filter(e ->e.getType()==2).collect(Collectors.toList()));
+		olo.setCfoExamineList(list.stream().filter(e ->e.getType()==3).collect(Collectors.toList()));
+		olo.setViceCeoExamineList(list.stream().filter(e ->e.getType()==4).collect(Collectors.toList()));
+		olo.setCashierExamineList(list.stream().filter(e ->e.getType()==5).collect(Collectors.toList()));
 		olo.setSuperId(departmentMapper.selectNameById(olo.getSuperId()));
 		return olo;
 	}
@@ -193,33 +199,45 @@ public class OrganizationServiceImpl extends BaseMybatisDao<DepartmentMapper> im
 		return 1;
 	}
 	@Override
-	public int updateOrganization(String name, String type, String managerId, String superId, String status,Integer province,String retrialFinanceId,
-			String remarks,String id,String abbreviation,String financeId,Integer workingHoursType,Integer hideSign,String depNo,
-								  Integer approval,String approvalAid,String expenseFinanceId) {
+	public int updateOrganization(InputDep in) {
 		//获取上级编号
-		Department superDep=departmentMapper.selectByPrimaryKey(superId);
+		Department superDep=departmentMapper.selectByPrimaryKey(in.getSuperId());
 		Date now=new Date();
 		Department dep=new Department();
 		dep.setLvl(superDep.getLvl()+1);
-		dep.setName(name);
-		dep.setType(type);
+		dep.setName(in.getName());
+		dep.setType(in.getType());
 		dep.setUpdateTime(now);
-		dep.setManagerId(managerId);
-		dep.setStatus(status);
-		dep.setRemarks(remarks);
-		dep.setId(id);
-		dep.setSuperId(superId);
-		dep.setDepNo(depNo);
-		dep.setAbbreviation(abbreviation);
-		dep.setRetrialFinanceId(retrialFinanceId);
-		dep.setFinanceId(financeId);
-		dep.setProvince(province);
-		dep.setHideSign(hideSign);
-		dep.setWorkingHoursType(workingHoursType);
-		dep.setApproval(approval);
-		dep.setApprovalAid(approvalAid);
-		dep.setExpenseFinanceId(expenseFinanceId);
-		checkFinaceUpdate(id,financeId);
+		dep.setManagerId(in.getManagerId());
+		dep.setStatus(in.getStatus());
+		dep.setRemarks(in.getRemarks());
+		dep.setId(in.getId());
+		dep.setSuperId(in.getSuperId());
+		dep.setDepNo(in.getDepNo());
+		dep.setAbbreviation(in.getAbbreviation());
+		dep.setFinanceId(in.getFinanceId());
+		dep.setProvince(in.getProvince());
+		dep.setHideSign(in.getHideSign());
+		dep.setWorkingHoursType(in.getWorkingHoursType());
+		dep.setApproval(in.getApproval());
+		dep.setApprovalAid(in.getApprovalAid());
+		dep.setExpenseFinanceId(in.getExpenseFinanceId());
+		checkFinaceUpdate(in.getId(),in.getFinanceId());
+		if (in.getExpenseRetrialFinanceExamine()==1){
+			dep.setExpenseRetrialFinanceExamine(in.getExpenseRetrialFinanceExamine());
+		}
+		if (in.getCeoExamine()==1){
+			dep.setCeoExamine(in.getCeoExamine());
+		}
+		if (in.getCfoExamine()==1){
+			 dep.setCfoExamine(in.getCfoExamine());
+		}
+		if (in.getViceCeoExamine()==1){
+			dep.setViceCeoExamine(in.getViceCeoExamine());
+		}
+		if (in.getCashierExamine()==1){
+			dep.setCashierExamine(in.getCashierExamine());
+		}
 		int x=departmentMapper.updateByPrimaryKeySelective(dep);
 		return x;
 	}