Просмотр исходного кода

Merge branch 'test' of jishutao/kede-server into prod

anderx лет назад: 6
Родитель
Сommit
f358f854ed
23 измененных файлов с 1788 добавлено и 176 удалено
  1. 16 11
      src/main/java/com/goafanti/common/dao/NewOrderChangeMapper.java
  2. 98 0
      src/main/java/com/goafanti/common/dao/OrderRefundInvoiceMapper.java
  3. 5 0
      src/main/java/com/goafanti/common/dao/TOrderBillNewMapper.java
  4. 6 0
      src/main/java/com/goafanti/common/dao/TOrderInvoiceMapper.java
  5. 2 0
      src/main/java/com/goafanti/common/dao/TOrderTaskMapper.java
  6. 90 32
      src/main/java/com/goafanti/common/mapper/NewOrderChangeMapper.xml
  7. 278 0
      src/main/java/com/goafanti/common/mapper/OrderRefundInvoiceMapper.xml
  8. 9 0
      src/main/java/com/goafanti/common/mapper/TOrderBillNewMapper.xml
  9. 11 3
      src/main/java/com/goafanti/common/mapper/TOrderInvoiceMapper.xml
  10. 5 7
      src/main/java/com/goafanti/common/mapper/TOrderNewMapper.xml
  11. 5 1
      src/main/java/com/goafanti/common/mapper/TOrderTaskMapper.xml
  12. 0 1
      src/main/java/com/goafanti/common/model/BaseModel.java
  13. 141 72
      src/main/java/com/goafanti/common/model/NewOrderChange.java
  14. 196 16
      src/main/java/com/goafanti/common/model/NewOrderChangeExample.java
  15. 149 0
      src/main/java/com/goafanti/common/model/OrderRefundInvoice.java
  16. 554 0
      src/main/java/com/goafanti/common/model/OrderRefundInvoiceExample.java
  17. 28 0
      src/main/java/com/goafanti/order/bo/BillBo.java
  18. 21 0
      src/main/java/com/goafanti/order/bo/InvoiceBo.java
  19. 7 0
      src/main/java/com/goafanti/order/bo/TOrderInvoiceBo.java
  20. 75 6
      src/main/java/com/goafanti/order/controller/OrderChangeApiController.java
  21. 17 3
      src/main/java/com/goafanti/order/service/OrderChangeService.java
  22. 73 22
      src/main/java/com/goafanti/order/service/impl/OrderChangeServiceImpl.java
  23. 2 2
      src/main/resources/props/config_local.properties

+ 16 - 11
src/main/java/com/goafanti/common/dao/NewOrderChangeMapper.java

@@ -4,6 +4,7 @@ import com.goafanti.common.model.NewOrderChange;
 import com.goafanti.common.model.NewOrderChangeExample;
 import com.goafanti.order.bo.NewOrderChangeBo;
 
+import java.math.BigDecimal;
 import java.util.List;
 import org.apache.ibatis.annotations.Param;
 
@@ -11,68 +12,68 @@ public interface NewOrderChangeMapper {
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	long countByExample(NewOrderChangeExample example);
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	int deleteByExample(NewOrderChangeExample example);
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	int deleteByPrimaryKey(Integer id);
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	int insert(NewOrderChange record);
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	int insertSelective(NewOrderChange record);
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	List<NewOrderChange> selectByExample(NewOrderChangeExample example);
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	NewOrderChange selectByPrimaryKey(Integer id);
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	int updateByExampleSelective(@Param("record") NewOrderChange record,
 			@Param("example") NewOrderChangeExample example);
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	int updateByExample(@Param("record") NewOrderChange record, @Param("example") NewOrderChangeExample example);
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	int updateByPrimaryKeySelective(NewOrderChange record);
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	int updateByPrimaryKey(NewOrderChange record);
 
@@ -81,4 +82,8 @@ public interface NewOrderChangeMapper {
 	int checkOderNo(String orderNo);
 
 	NewOrderChangeBo selectById(Integer id);
+
+	void addRefundInvoice(@Param("orderNo")String orderNo, @Param("amount")BigDecimal amount);
+
+	void subtractRefundInvoice(@Param("orderNo")String orderNo,@Param("amount")BigDecimal amount);
 }

+ 98 - 0
src/main/java/com/goafanti/common/dao/OrderRefundInvoiceMapper.java

@@ -0,0 +1,98 @@
+package com.goafanti.common.dao;
+
+import com.goafanti.common.model.OrderRefundInvoice;
+import com.goafanti.common.model.OrderRefundInvoiceExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface OrderRefundInvoiceMapper {
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    long countByExample(OrderRefundInvoiceExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    int deleteByExample(OrderRefundInvoiceExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    int deleteByPrimaryKey(Integer id);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    int insert(OrderRefundInvoice record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    int insertSelective(OrderRefundInvoice record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    List<OrderRefundInvoice> selectByExample(OrderRefundInvoiceExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    OrderRefundInvoice selectByPrimaryKey(Integer id);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    int updateByExampleSelective(@Param("record") OrderRefundInvoice record, @Param("example") OrderRefundInvoiceExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    int updateByExample(@Param("record") OrderRefundInvoice record, @Param("example") OrderRefundInvoiceExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    int updateByPrimaryKeySelective(OrderRefundInvoice record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    int updateByPrimaryKey(OrderRefundInvoice record);
+
+	List<OrderRefundInvoice> selectByorderNo(String orderNo);
+}

+ 5 - 0
src/main/java/com/goafanti/common/dao/TOrderBillNewMapper.java

@@ -7,6 +7,7 @@ import org.apache.ibatis.annotations.Param;
 
 import com.goafanti.common.model.TOrderBillNew;
 import com.goafanti.common.model.TOrderBillNewExample;
+import com.goafanti.order.bo.BillBo;
 
 public interface TOrderBillNewMapper {
     /**
@@ -106,4 +107,8 @@ public interface TOrderBillNewMapper {
     List<TOrderBillNew> getDeptBySome(TOrderBillNew ob);
     
     List<TOrderBillNew> getBillData(TOrderBillNew ob);
+
+	BigDecimal conutAmountByOrderNo(String orderNo);
+
+	List<BillBo> selectByOrderNo(String orderNo);
 }

+ 6 - 0
src/main/java/com/goafanti/common/dao/TOrderInvoiceMapper.java

@@ -2,8 +2,10 @@ package com.goafanti.common.dao;
 
 import com.goafanti.common.model.TOrderInvoice;
 import com.goafanti.common.model.TOrderInvoiceExample;
+import com.goafanti.order.bo.InvoiceBo;
 import com.goafanti.order.bo.TOrderInvoiceDetails;
 
+import java.math.BigDecimal;
 import java.util.List;
 import org.apache.ibatis.annotations.Param;
 
@@ -78,4 +80,8 @@ public interface TOrderInvoiceMapper {
 	String checkApplyAmount(@Param("orderNo")String orderNo,@Param("id")Integer id);
 
 	TOrderInvoiceDetails selectByInvoiceDitails(Integer id);
+
+	 BigDecimal conutAmountByOrderNo(String orderNo);
+
+	List<InvoiceBo> selectByOrderNo(String orderNo);
 }

+ 2 - 0
src/main/java/com/goafanti/common/dao/TOrderTaskMapper.java

@@ -102,4 +102,6 @@ public interface TOrderTaskMapper {
 	List<TOrderTask> getReceiverByOid(String oid);
 
 	void updateDimissionTransfer(@Param("aid")String aid, @Param("transferId")String transferId);
+
+	String selectEstimateCost(String orderNo);
 }

+ 90 - 32
src/main/java/com/goafanti/common/mapper/NewOrderChangeMapper.xml

@@ -5,7 +5,7 @@
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     <id column="id" jdbcType="INTEGER" property="id" />
     <result column="order_no" jdbcType="VARCHAR" property="orderNo" />
@@ -31,12 +31,15 @@
     <result column="cw_cost" jdbcType="DECIMAL" property="cwCost" />
     <result column="refundable_amount" jdbcType="DECIMAL" property="refundableAmount" />
     <result column="cw_remarks" jdbcType="VARCHAR" property="cwRemarks" />
+    <result column="estimate_cost" jdbcType="DECIMAL" property="estimateCost" />
+    <result column="estimate_refundable" jdbcType="DECIMAL" property="estimateRefundable" />
+    <result column="refund_Invoice" jdbcType="DECIMAL" property="refundInvoice" />
   </resultMap>
   <sql id="Example_Where_Clause">
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     <where>
       <foreach collection="oredCriteria" item="criteria" separator="or">
@@ -70,7 +73,7 @@
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     <where>
       <foreach collection="example.oredCriteria" item="criteria" separator="or">
@@ -104,18 +107,18 @@
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     id, order_no, process_state, status, type, create_time, remarks, voucher_url, total_amount, 
     settlement_amount, change_amount, applicant, dep_name, project_state, zxs_cost, zxs_remarks, 
     payment_time, payment_amount, invoice_time, invoice_amount, invoice_type, cw_cost, 
-    refundable_amount, cw_remarks
+    refundable_amount, cw_remarks, estimate_cost, estimate_refundable, refund_Invoice
   </sql>
   <select id="selectByExample" parameterType="com.goafanti.common.model.NewOrderChangeExample" resultMap="BaseResultMap">
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     select
     <if test="distinct">
@@ -134,7 +137,7 @@
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     select 
     <include refid="Base_Column_List" />
@@ -145,7 +148,7 @@
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     delete from new_order_change
     where id = #{id,jdbcType=INTEGER}
@@ -154,7 +157,7 @@
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     delete from new_order_change
     <if test="_parameter != null">
@@ -165,7 +168,7 @@
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     insert into new_order_change (id, order_no, process_state, 
       status, type, create_time, 
@@ -174,7 +177,8 @@
       dep_name, project_state, zxs_cost, 
       zxs_remarks, payment_time, payment_amount, 
       invoice_time, invoice_amount, invoice_type, 
-      cw_cost, refundable_amount, cw_remarks
+      cw_cost, refundable_amount, cw_remarks, 
+      estimate_cost, estimate_refundable, refund_Invoice
       )
     values (#{id,jdbcType=INTEGER}, #{orderNo,jdbcType=VARCHAR}, #{processState,jdbcType=INTEGER}, 
       #{status,jdbcType=INTEGER}, #{type,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, 
@@ -183,14 +187,15 @@
       #{depName,jdbcType=VARCHAR}, #{projectState,jdbcType=VARCHAR}, #{zxsCost,jdbcType=DECIMAL}, 
       #{zxsRemarks,jdbcType=VARCHAR}, #{paymentTime,jdbcType=TIMESTAMP}, #{paymentAmount,jdbcType=DECIMAL}, 
       #{invoiceTime,jdbcType=TIMESTAMP}, #{invoiceAmount,jdbcType=DECIMAL}, #{invoiceType,jdbcType=VARCHAR}, 
-      #{cwCost,jdbcType=DECIMAL}, #{refundableAmount,jdbcType=DECIMAL}, #{cwRemarks,jdbcType=VARCHAR}
+      #{cwCost,jdbcType=DECIMAL}, #{refundableAmount,jdbcType=DECIMAL}, #{cwRemarks,jdbcType=VARCHAR}, 
+      #{estimateCost,jdbcType=DECIMAL}, #{estimateRefundable,jdbcType=DECIMAL}, #{refundInvoice,jdbcType=DECIMAL}
       )
   </insert>
   <insert id="insertSelective" parameterType="com.goafanti.common.model.NewOrderChange">
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     insert into new_order_change
     <trim prefix="(" suffix=")" suffixOverrides=",">
@@ -266,6 +271,15 @@
       <if test="cwRemarks != null">
         cw_remarks,
       </if>
+      <if test="estimateCost != null">
+        estimate_cost,
+      </if>
+      <if test="estimateRefundable != null">
+        estimate_refundable,
+      </if>
+      <if test="refundInvoice != null">
+        refund_Invoice,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
       <if test="id != null">
@@ -340,13 +354,22 @@
       <if test="cwRemarks != null">
         #{cwRemarks,jdbcType=VARCHAR},
       </if>
+      <if test="estimateCost != null">
+        #{estimateCost,jdbcType=DECIMAL},
+      </if>
+      <if test="estimateRefundable != null">
+        #{estimateRefundable,jdbcType=DECIMAL},
+      </if>
+      <if test="refundInvoice != null">
+        #{refundInvoice,jdbcType=DECIMAL},
+      </if>
     </trim>
   </insert>
   <select id="countByExample" parameterType="com.goafanti.common.model.NewOrderChangeExample" resultType="java.lang.Long">
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     select count(*) from new_order_change
     <if test="_parameter != null">
@@ -357,7 +380,7 @@
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     update new_order_change
     <set>
@@ -433,6 +456,15 @@
       <if test="record.cwRemarks != null">
         cw_remarks = #{record.cwRemarks,jdbcType=VARCHAR},
       </if>
+      <if test="record.estimateCost != null">
+        estimate_cost = #{record.estimateCost,jdbcType=DECIMAL},
+      </if>
+      <if test="record.estimateRefundable != null">
+        estimate_refundable = #{record.estimateRefundable,jdbcType=DECIMAL},
+      </if>
+      <if test="record.refundInvoice != null">
+        refund_Invoice = #{record.refundInvoice,jdbcType=DECIMAL},
+      </if>
     </set>
     <if test="_parameter != null">
       <include refid="Update_By_Example_Where_Clause" />
@@ -442,7 +474,7 @@
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     update new_order_change
     set id = #{record.id,jdbcType=INTEGER},
@@ -468,7 +500,10 @@
       invoice_type = #{record.invoiceType,jdbcType=VARCHAR},
       cw_cost = #{record.cwCost,jdbcType=DECIMAL},
       refundable_amount = #{record.refundableAmount,jdbcType=DECIMAL},
-      cw_remarks = #{record.cwRemarks,jdbcType=VARCHAR}
+      cw_remarks = #{record.cwRemarks,jdbcType=VARCHAR},
+      estimate_cost = #{record.estimateCost,jdbcType=DECIMAL},
+      estimate_refundable = #{record.estimateRefundable,jdbcType=DECIMAL},
+      refund_Invoice = #{record.refundInvoice,jdbcType=DECIMAL}
     <if test="_parameter != null">
       <include refid="Update_By_Example_Where_Clause" />
     </if>
@@ -477,7 +512,7 @@
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     update new_order_change
     <set>
@@ -550,6 +585,15 @@
       <if test="cwRemarks != null">
         cw_remarks = #{cwRemarks,jdbcType=VARCHAR},
       </if>
+      <if test="estimateCost != null">
+        estimate_cost = #{estimateCost,jdbcType=DECIMAL},
+      </if>
+      <if test="estimateRefundable != null">
+        estimate_refundable = #{estimateRefundable,jdbcType=DECIMAL},
+      </if>
+      <if test="refundInvoice != null">
+        refund_Invoice = #{refundInvoice,jdbcType=DECIMAL},
+      </if>
     </set>
     where id = #{id,jdbcType=INTEGER}
   </update>
@@ -557,7 +601,7 @@
     <!--
       WARNING - @mbg.generated
       This element is automatically generated by MyBatis Generator, do not modify.
-      This element was generated on Thu Aug 22 09:48:19 CST 2019.
+      This element was generated on Wed Sep 18 14:33:46 CST 2019.
     -->
     update new_order_change
     set order_no = #{orderNo,jdbcType=VARCHAR},
@@ -582,7 +626,10 @@
       invoice_type = #{invoiceType,jdbcType=VARCHAR},
       cw_cost = #{cwCost,jdbcType=DECIMAL},
       refundable_amount = #{refundableAmount,jdbcType=DECIMAL},
-      cw_remarks = #{cwRemarks,jdbcType=VARCHAR}
+      cw_remarks = #{cwRemarks,jdbcType=VARCHAR},
+      estimate_cost = #{estimateCost,jdbcType=DECIMAL},
+      estimate_refundable = #{estimateRefundable,jdbcType=DECIMAL},
+      refund_Invoice = #{refundInvoice,jdbcType=DECIMAL}
     where id = #{id,jdbcType=INTEGER}
   </update>
   <select id="selectByorderNo" resultType="com.goafanti.order.bo.NewOrderChangeBo">
@@ -607,7 +654,8 @@ select
 	a.change_amount changeAmount, a.applicant, a.dep_name depName, a.project_state projectState, a.zxs_cost zxsCost,
 	a.zxs_remarks zxsRemarks, date_format(a.payment_time, '%Y-%m-%d')paymentTimes, a.payment_amount paymentAmount,
 	date_format(a. invoice_time, '%Y-%m-%d') invoiceTimes, a.invoice_amount invoiceAmount,a.invoice_type invoiceType,
-	a.cw_remarks cwRemarks from new_order_change a where 1 = 1 and a.id= #{id}
+	a.cw_remarks cwRemarks,a.estimate_cost estimateCost,estimate_refundable estimateRefundable,refund_Invoice refundInvoice
+	from new_order_change a where 1 = 1 and a.id= #{id}
   </select>
   <select id="checkOderNo" resultType="java.lang.Integer">
   select count(*) from new_order_change
@@ -655,7 +703,7 @@ select
 	and d.name like concat('%',#{salesmanName},'%')
 	</if>
 	<if test="complete ==0 and processState != 8">
-	 and a.process_state &gt;= #{processState}
+	 and a.process_state &gt; = #{processState}
 	</if>
 	<if test="complete ==0 and processState == 8">
 	 and a.process_state &gt;= #{processState} and  a.process_state &lt; 9
@@ -667,10 +715,10 @@ select
 	 and a.process_state in(5,9)  and a.status !=4
 	</if>
 	<if test="complete ==1 and processState == 7">
-	 and a.process_state = 7  and  a.status != 4
+	 and a.process_state = 7  and  a.status != 4 and a.status !=2 
 	</if>
 	<if test="complete ==1 and processState == 8">
-	 and a.process_state = #{processState}  and a.status != 4
+	 and a.process_state = #{processState}  and a.status != 4 and a.status !=2
 	</if>
 	<if test="complete ==2 and processState != 5 and processState != 7 and processState != 8">
 	 and a.process_state &gt; #{processState}  
@@ -679,10 +727,10 @@ select
 	 and (a.process_state &gt; 5 and a.process_state &lt; 9) or (a.process_state =9 and a.status=4) 
 	</if>
 	<if test="complete ==2 and processState == 7">
-	 and ((a.process_state = 7  and  a.status = 4)or a.process_state &gt; 7)
+	 and ((a.process_state = 7  and  (a.status = 4 or a.status = 2))or a.process_state &gt; 7)
 	</if>
 	<if test="complete ==2 and processState == 8">
-	 and a.process_state = 8  and  a.status = 4
+	 and a.process_state = 8  and   (a.status = 4 or a.status = 2)
 	</if>
 	order by a.create_time 
 	<if test="page_sql != null">
@@ -729,7 +777,7 @@ select
 	and d.name like concat('%',#{salesmanName},'%')
 	</if>
 	<if test="complete ==0 and processState != 8">
-	 and a.process_state &gt;= #{processState}
+	 and a.process_state &gt; = #{processState}
 	</if>
 	<if test="complete ==0 and processState == 8">
 	 and a.process_state &gt;= #{processState} and  a.process_state &lt; 9
@@ -741,22 +789,32 @@ select
 	 and a.process_state in(5,9)  and a.status !=4
 	</if>
 	<if test="complete ==1 and processState == 7">
-	 and a.process_state = 7  and  a.status != 4
+	 and a.process_state = 7  and  a.status != 4 and a.status !=2 
 	</if>
 	<if test="complete ==1 and processState == 8">
-	 and a.process_state = #{processState}  and a.status != 4
+	 and a.process_state = #{processState}  and a.status != 4 and a.status !=2
 	</if>
 	<if test="complete ==2 and processState != 5 and processState != 7 and processState != 8">
 	 and a.process_state &gt; #{processState}  
 	</if>
 	<if test="complete ==2 and processState == 5">
-	 and ((a.process_state &gt; 5 and  a.status != 4)or  (a.process_state in (5,9) and  a.status = 4))    
+	 and (a.process_state &gt; 5 and a.process_state &lt; 9) or (a.process_state =9 and a.status=4) 
 	</if>
 	<if test="complete ==2 and processState == 7">
-	 and ((a.process_state = 7  and  a.status = 4)or a.process_state &gt; 7)
+	 and ((a.process_state = 7  and  (a.status = 4 or a.status = 2))or a.process_state &gt; 7)
 	</if>
 	<if test="complete ==2 and processState == 8">
-	 and a.process_state = 8  and  a.status = 4
+	 and a.process_state = 8  and  (a.status = 4 or a.status = 2)
 	</if>
 	</select>
+	<update id="addRefundInvoice" >
+	update  new_order_change
+	set `refund_Invoice`=ifnull(`refund_Invoice`,0)+ #{amount}
+	where order_no= #{orderNo}
+	</update>
+	<update id="subtractRefundInvoice">
+	update  new_order_change
+	set `refund_Invoice`=ifnull(`refund_Invoice`,0)- #{amount}
+	where order_no= #{orderNo}
+	</update>
 </mapper>

+ 278 - 0
src/main/java/com/goafanti/common/mapper/OrderRefundInvoiceMapper.xml

@@ -0,0 +1,278 @@
+<?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.OrderRefundInvoiceMapper">
+  <resultMap id="BaseResultMap" type="com.goafanti.common.model.OrderRefundInvoice">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    <id column="id" jdbcType="INTEGER" property="id" />
+    <result column="order_no" jdbcType="VARCHAR" property="orderNo" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="amount" jdbcType="DECIMAL" property="amount" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    id, order_no, create_time, amount
+  </sql>
+  <select id="selectByExample" parameterType="com.goafanti.common.model.OrderRefundInvoiceExample" resultMap="BaseResultMap">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from order_refund_invoice
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    select 
+    <include refid="Base_Column_List" />
+    from order_refund_invoice
+    where id = #{id,jdbcType=INTEGER}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    delete from order_refund_invoice
+    where id = #{id,jdbcType=INTEGER}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.goafanti.common.model.OrderRefundInvoiceExample">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    delete from order_refund_invoice
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.goafanti.common.model.OrderRefundInvoice">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    insert into order_refund_invoice (id, order_no, create_time, 
+      amount)
+    values (#{id,jdbcType=INTEGER}, #{orderNo,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, 
+      #{amount,jdbcType=DECIMAL})
+  </insert>
+  <insert id="insertSelective" parameterType="com.goafanti.common.model.OrderRefundInvoice">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    insert into order_refund_invoice
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="orderNo != null">
+        order_no,
+      </if>
+      <if test="createTime != null">
+        create_time,
+      </if>
+      <if test="amount != null">
+        amount,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=INTEGER},
+      </if>
+      <if test="orderNo != null">
+        #{orderNo,jdbcType=VARCHAR},
+      </if>
+      <if test="createTime != null">
+        #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="amount != null">
+        #{amount,jdbcType=DECIMAL},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.goafanti.common.model.OrderRefundInvoiceExample" resultType="java.lang.Long">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    select count(*) from order_refund_invoice
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    update order_refund_invoice
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=INTEGER},
+      </if>
+      <if test="record.orderNo != null">
+        order_no = #{record.orderNo,jdbcType=VARCHAR},
+      </if>
+      <if test="record.createTime != null">
+        create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.amount != null">
+        amount = #{record.amount,jdbcType=DECIMAL},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    update order_refund_invoice
+    set id = #{record.id,jdbcType=INTEGER},
+      order_no = #{record.orderNo,jdbcType=VARCHAR},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      amount = #{record.amount,jdbcType=DECIMAL}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.OrderRefundInvoice">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    update order_refund_invoice
+    <set>
+      <if test="orderNo != null">
+        order_no = #{orderNo,jdbcType=VARCHAR},
+      </if>
+      <if test="createTime != null">
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="amount != null">
+        amount = #{amount,jdbcType=DECIMAL},
+      </if>
+    </set>
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.goafanti.common.model.OrderRefundInvoice">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Tue Sep 17 16:25:27 CST 2019.
+    -->
+    update order_refund_invoice
+    set order_no = #{orderNo,jdbcType=VARCHAR},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      amount = #{amount,jdbcType=DECIMAL}
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+  
+   <select id="selectByorderNo" parameterType="java.lang.String" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from order_refund_invoice
+    where order_no = #{orderNo}
+  </select>
+</mapper>

+ 9 - 0
src/main/java/com/goafanti/common/mapper/TOrderBillNewMapper.xml

@@ -612,4 +612,13 @@
   	</if>
   	order by b.order_no, b.creater , b.financial_pay_time
  </select>
+ <select id="conutAmountByOrderNo" resultType="java.math.BigDecimal">
+ select ifnull(sum(a.transaction_amount),0) amount from t_order_bill_new a
+where  a.order_no= #{orderNo,jdbcType=VARCHAR};
+ </select>
+ <select id="selectByOrderNo" resultType="com.goafanti.order.bo.BillBo">
+ select date_format(a.financial_pay_time,'%Y-%m-%d') payTime,a.transaction_amount transactionAmount,b.name aName from t_order_bill_new a 
+left join admin b on a.creater=b.id
+where order_no= #{orderNo,jdbcType=VARCHAR};	
+ </select>
 </mapper>

+ 11 - 3
src/main/java/com/goafanti/common/mapper/TOrderInvoiceMapper.xml

@@ -641,11 +641,11 @@
   </select>
   <select id="financeOrderInvoiceList" resultType="com.goafanti.order.bo.TOrderInvoiceBo">
       select a.id,a.unit_name as unitName,a.order_no as orderNo,c.name,b.project_status as projectStatus,a.amount,
-     ifnull(d.sumAmount,0) as sumAmount, date_format(a.create_time,'%Y-%m-%d %H:%i:%S')as createTime ,a.status,
+     ifnull(d.sumAmount,0) as sumAmount, date_format(a.create_time,'%Y-%m-%d %H:%i:%S')as createTime ,a.status,b.process_status processStatus,
      b.settlement_amount as settlementAmount, (b.total_amount-b.settlement_amount) as notAmount from t_order_invoice a 
 	left join t_order_new b on a.order_no=b.order_no left join admin c on b.salesman_id=c.id
 	left join (select order_no,sum(amount)as  sumAmount from t_order_invoice where status =2 group by order_no) d
-	on a.order_no=d.order_no where a.status in (1,2) and a.approval in (0,2)
+	on a.order_no=d.order_no where a.status in (1,2) and a.approval in (0,2) 
 	<if test="type !=null">
 	and a.`type`= #{type,jdbcType=INTEGER} 
 	</if>
@@ -716,7 +716,7 @@
   </select>
   
   <select id="approvalOrderInvoiceList" resultType="com.goafanti.order.bo.TOrderInvoiceBo">
-      	select a.id,a.unit_name as unitName,a.order_no as orderNo,c.name,b.project_status as projectStatus,a.amount,
+      	select a.id,a.unit_name as unitName,a.order_no as orderNo,c.name,b.project_status as projectStatus,a.amount,b.process_status processStatus,
      ifnull(d.sumAmount,0) as sumAmount, date_format(a.create_time,'%Y-%m-%d %H:%i:%S')as createTime ,a.status, a.approval,
      b.settlement_amount as settlementAmount, (b.total_amount-b.settlement_amount) as notAmount from t_order_invoice a 
 	left join t_order_new b on a.order_no=b.order_no left join admin c on b.salesman_id=c.id
@@ -798,4 +798,12 @@
 	left join t_order_new b on a.order_no=b.order_no
     where id = #{id,jdbcType=INTEGER}
   </select>
+  <select id="conutAmountByOrderNo"  resultType="java.math.BigDecimal">
+  select ifnull(sum(a.amount),0) amount from t_order_invoice a
+	where a.status=2 and a.order_no= #{orderNo,jdbcType=VARCHAR}
+  </select>
+  <select id="selectByOrderNo" resultType="com.goafanti.order.bo.InvoiceBo">
+  select date_format(a.create_time,'%Y-%m-%d %H:%i:%S') createTime,a.amount from t_order_invoice a
+where a.status=2 and a.order_no=  #{orderNo,jdbcType=VARCHAR}
+  </select>
 </mapper>

+ 5 - 7
src/main/java/com/goafanti/common/mapper/TOrderNewMapper.xml

@@ -935,13 +935,12 @@
   	<if test="o.outsource == 1">
   	and f.refund_status=1
   	</if>
-  	and process_status &gt;= 2 and process_status &lt; 7
+  	
   	<if test="o.processStatus == 2">
-  	and (o.finance_id is null or o.finance_id='') 
+  	and process_status = 2 
   	</if>
   	<if test="o.processStatus == 3">
-  	and o.finance_id is not null 
-  	and o.finance_id != ''    
+  	and process_status &gt;= 2 and process_status &lt; 7
   	</if>
   	<if test="o.departmentId != null and o.departmentId != &quot;&quot;">
   	and o.order_dep= #{o.departmentId,jdbcType=VARCHAR}
@@ -979,12 +978,11 @@
   	<if test="o.outsource == 1">
   	and f.refund_status=1
   	</if>
-  	and process_status &gt;= 2 and process_status &lt; 7
   	<if test="o.processStatus == 2">
-  	and (o.finance_id is null or o.finance_id='')
+  	and process_status = 2 
   	</if>
   	<if test="o.processStatus == 3">
-  	and o.finance_id is not null and o.finance_id != ''    
+  	and process_status &gt; 2 and process_status &lt; 7
   	</if>
   	<if test="o.departmentId != null and o.departmentId != &quot;&quot;">
   	and o.order_dep= #{o.departmentId,jdbcType=VARCHAR}

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

@@ -1114,5 +1114,9 @@ from t_order_task a left join business_project b on a.commodity_id=b.id
     update t_order_task set task_allocator= #{aid,jdbcType=VARCHAR},task_receiver= #{transferId,jdbcType=VARCHAR}
 	where task_receiver=#{aid,jdbcType=VARCHAR}
   </update>
-  
+  <select id="selectEstimateCost" resultType="java.lang.String">
+  	select sum(a.commodity_quantity * ifnull(b.price,0))   from t_order_task a
+	left join business_project b on a.commodity_id=b.id
+	where order_no= #{orderNo}
+  </select>
 </mapper>

+ 0 - 1
src/main/java/com/goafanti/common/model/BaseModel.java

@@ -11,7 +11,6 @@ public class BaseModel implements Serializable {
 	 * 
 	 */
 	private static final long	serialVersionUID	= 1L;
-
 	private String				id;
 
 	@Override

+ 141 - 72
src/main/java/com/goafanti/common/model/NewOrderChange.java

@@ -7,129 +7,144 @@ public class NewOrderChange {
 
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.id
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private Integer id;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.order_no
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private String orderNo;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.process_state
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private Integer processState;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.status
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private Integer status;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.type
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private Integer type;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.create_time
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private Date createTime;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.remarks
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private String remarks;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.voucher_url
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private String voucherUrl;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.total_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private BigDecimal totalAmount;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.settlement_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private BigDecimal settlementAmount;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.change_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private BigDecimal changeAmount;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.applicant
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private String applicant;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.dep_name
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private String depName;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.project_state
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private String projectState;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.zxs_cost
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private BigDecimal zxsCost;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.zxs_remarks
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private String zxsRemarks;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.payment_time
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private Date paymentTime;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.payment_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private BigDecimal paymentAmount;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.invoice_time
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private Date invoiceTime;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.invoice_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private BigDecimal invoiceAmount;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.invoice_type
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private String invoiceType;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.cw_cost
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private BigDecimal cwCost;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.refundable_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private BigDecimal refundableAmount;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.cw_remarks
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	private String cwRemarks;
+	/**
+	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.estimate_cost
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
+	 */
+	private BigDecimal estimateCost;
+	/**
+	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.estimate_refundable
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
+	 */
+	private BigDecimal estimateRefundable;
+	/**
+	 * This field was generated by MyBatis Generator. This field corresponds to the database column new_order_change.refund_Invoice
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
+	 */
+	private BigDecimal refundInvoice;
 
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.id
 	 * @return  the value of new_order_change.id
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public Integer getId() {
 		return id;
@@ -138,7 +153,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.id
 	 * @param id  the value for new_order_change.id
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setId(Integer id) {
 		this.id = id;
@@ -147,7 +162,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.order_no
 	 * @return  the value of new_order_change.order_no
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public String getOrderNo() {
 		return orderNo;
@@ -156,7 +171,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.order_no
 	 * @param orderNo  the value for new_order_change.order_no
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setOrderNo(String orderNo) {
 		this.orderNo = orderNo;
@@ -165,7 +180,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.process_state
 	 * @return  the value of new_order_change.process_state
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public Integer getProcessState() {
 		return processState;
@@ -174,7 +189,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.process_state
 	 * @param processState  the value for new_order_change.process_state
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setProcessState(Integer processState) {
 		this.processState = processState;
@@ -183,7 +198,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.status
 	 * @return  the value of new_order_change.status
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public Integer getStatus() {
 		return status;
@@ -192,7 +207,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.status
 	 * @param status  the value for new_order_change.status
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setStatus(Integer status) {
 		this.status = status;
@@ -201,7 +216,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.type
 	 * @return  the value of new_order_change.type
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public Integer getType() {
 		return type;
@@ -210,7 +225,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.type
 	 * @param type  the value for new_order_change.type
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setType(Integer type) {
 		this.type = type;
@@ -219,7 +234,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.create_time
 	 * @return  the value of new_order_change.create_time
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public Date getCreateTime() {
 		return createTime;
@@ -228,7 +243,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.create_time
 	 * @param createTime  the value for new_order_change.create_time
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setCreateTime(Date createTime) {
 		this.createTime = createTime;
@@ -237,7 +252,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.remarks
 	 * @return  the value of new_order_change.remarks
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public String getRemarks() {
 		return remarks;
@@ -246,7 +261,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.remarks
 	 * @param remarks  the value for new_order_change.remarks
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setRemarks(String remarks) {
 		this.remarks = remarks;
@@ -255,7 +270,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.voucher_url
 	 * @return  the value of new_order_change.voucher_url
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public String getVoucherUrl() {
 		return voucherUrl;
@@ -264,7 +279,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.voucher_url
 	 * @param voucherUrl  the value for new_order_change.voucher_url
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setVoucherUrl(String voucherUrl) {
 		this.voucherUrl = voucherUrl;
@@ -273,7 +288,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.total_amount
 	 * @return  the value of new_order_change.total_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public BigDecimal getTotalAmount() {
 		return totalAmount;
@@ -282,7 +297,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.total_amount
 	 * @param totalAmount  the value for new_order_change.total_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setTotalAmount(BigDecimal totalAmount) {
 		this.totalAmount = totalAmount;
@@ -291,7 +306,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.settlement_amount
 	 * @return  the value of new_order_change.settlement_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public BigDecimal getSettlementAmount() {
 		return settlementAmount;
@@ -300,7 +315,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.settlement_amount
 	 * @param settlementAmount  the value for new_order_change.settlement_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setSettlementAmount(BigDecimal settlementAmount) {
 		this.settlementAmount = settlementAmount;
@@ -309,7 +324,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.change_amount
 	 * @return  the value of new_order_change.change_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public BigDecimal getChangeAmount() {
 		return changeAmount;
@@ -318,7 +333,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.change_amount
 	 * @param changeAmount  the value for new_order_change.change_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setChangeAmount(BigDecimal changeAmount) {
 		this.changeAmount = changeAmount;
@@ -327,7 +342,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.applicant
 	 * @return  the value of new_order_change.applicant
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public String getApplicant() {
 		return applicant;
@@ -336,7 +351,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.applicant
 	 * @param applicant  the value for new_order_change.applicant
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setApplicant(String applicant) {
 		this.applicant = applicant;
@@ -345,7 +360,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.dep_name
 	 * @return  the value of new_order_change.dep_name
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public String getDepName() {
 		return depName;
@@ -354,7 +369,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.dep_name
 	 * @param depName  the value for new_order_change.dep_name
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setDepName(String depName) {
 		this.depName = depName;
@@ -363,7 +378,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.project_state
 	 * @return  the value of new_order_change.project_state
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public String getProjectState() {
 		return projectState;
@@ -372,7 +387,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.project_state
 	 * @param projectState  the value for new_order_change.project_state
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setProjectState(String projectState) {
 		this.projectState = projectState;
@@ -381,7 +396,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.zxs_cost
 	 * @return  the value of new_order_change.zxs_cost
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public BigDecimal getZxsCost() {
 		return zxsCost;
@@ -390,7 +405,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.zxs_cost
 	 * @param zxsCost  the value for new_order_change.zxs_cost
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setZxsCost(BigDecimal zxsCost) {
 		this.zxsCost = zxsCost;
@@ -399,7 +414,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.zxs_remarks
 	 * @return  the value of new_order_change.zxs_remarks
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public String getZxsRemarks() {
 		return zxsRemarks;
@@ -408,7 +423,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.zxs_remarks
 	 * @param zxsRemarks  the value for new_order_change.zxs_remarks
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setZxsRemarks(String zxsRemarks) {
 		this.zxsRemarks = zxsRemarks;
@@ -417,7 +432,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.payment_time
 	 * @return  the value of new_order_change.payment_time
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public Date getPaymentTime() {
 		return paymentTime;
@@ -426,7 +441,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.payment_time
 	 * @param paymentTime  the value for new_order_change.payment_time
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setPaymentTime(Date paymentTime) {
 		this.paymentTime = paymentTime;
@@ -435,7 +450,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.payment_amount
 	 * @return  the value of new_order_change.payment_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public BigDecimal getPaymentAmount() {
 		return paymentAmount;
@@ -444,7 +459,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.payment_amount
 	 * @param paymentAmount  the value for new_order_change.payment_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setPaymentAmount(BigDecimal paymentAmount) {
 		this.paymentAmount = paymentAmount;
@@ -453,7 +468,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.invoice_time
 	 * @return  the value of new_order_change.invoice_time
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public Date getInvoiceTime() {
 		return invoiceTime;
@@ -462,7 +477,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.invoice_time
 	 * @param invoiceTime  the value for new_order_change.invoice_time
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setInvoiceTime(Date invoiceTime) {
 		this.invoiceTime = invoiceTime;
@@ -471,7 +486,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.invoice_amount
 	 * @return  the value of new_order_change.invoice_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public BigDecimal getInvoiceAmount() {
 		return invoiceAmount;
@@ -480,7 +495,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.invoice_amount
 	 * @param invoiceAmount  the value for new_order_change.invoice_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setInvoiceAmount(BigDecimal invoiceAmount) {
 		this.invoiceAmount = invoiceAmount;
@@ -489,7 +504,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.invoice_type
 	 * @return  the value of new_order_change.invoice_type
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public String getInvoiceType() {
 		return invoiceType;
@@ -498,7 +513,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.invoice_type
 	 * @param invoiceType  the value for new_order_change.invoice_type
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setInvoiceType(String invoiceType) {
 		this.invoiceType = invoiceType;
@@ -507,7 +522,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.cw_cost
 	 * @return  the value of new_order_change.cw_cost
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public BigDecimal getCwCost() {
 		return cwCost;
@@ -516,7 +531,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.cw_cost
 	 * @param cwCost  the value for new_order_change.cw_cost
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setCwCost(BigDecimal cwCost) {
 		this.cwCost = cwCost;
@@ -525,7 +540,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.refundable_amount
 	 * @return  the value of new_order_change.refundable_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public BigDecimal getRefundableAmount() {
 		return refundableAmount;
@@ -534,7 +549,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.refundable_amount
 	 * @param refundableAmount  the value for new_order_change.refundable_amount
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setRefundableAmount(BigDecimal refundableAmount) {
 		this.refundableAmount = refundableAmount;
@@ -543,7 +558,7 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.cw_remarks
 	 * @return  the value of new_order_change.cw_remarks
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public String getCwRemarks() {
 		return cwRemarks;
@@ -552,9 +567,63 @@ public class NewOrderChange {
 	/**
 	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.cw_remarks
 	 * @param cwRemarks  the value for new_order_change.cw_remarks
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setCwRemarks(String cwRemarks) {
 		this.cwRemarks = cwRemarks;
 	}
+
+	/**
+	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.estimate_cost
+	 * @return  the value of new_order_change.estimate_cost
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
+	 */
+	public BigDecimal getEstimateCost() {
+		return estimateCost;
+	}
+
+	/**
+	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.estimate_cost
+	 * @param estimateCost  the value for new_order_change.estimate_cost
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
+	 */
+	public void setEstimateCost(BigDecimal estimateCost) {
+		this.estimateCost = estimateCost;
+	}
+
+	/**
+	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.estimate_refundable
+	 * @return  the value of new_order_change.estimate_refundable
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
+	 */
+	public BigDecimal getEstimateRefundable() {
+		return estimateRefundable;
+	}
+
+	/**
+	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.estimate_refundable
+	 * @param estimateRefundable  the value for new_order_change.estimate_refundable
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
+	 */
+	public void setEstimateRefundable(BigDecimal estimateRefundable) {
+		this.estimateRefundable = estimateRefundable;
+	}
+
+	/**
+	 * This method was generated by MyBatis Generator. This method returns the value of the database column new_order_change.refund_Invoice
+	 * @return  the value of new_order_change.refund_Invoice
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
+	 */
+	public BigDecimal getRefundInvoice() {
+		return refundInvoice;
+	}
+
+	/**
+	 * This method was generated by MyBatis Generator. This method sets the value of the database column new_order_change.refund_Invoice
+	 * @param refundInvoice  the value for new_order_change.refund_Invoice
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
+	 */
+	public void setRefundInvoice(BigDecimal refundInvoice) {
+		this.refundInvoice = refundInvoice;
+	}
 }

+ 196 - 16
src/main/java/com/goafanti/common/model/NewOrderChangeExample.java

@@ -8,23 +8,23 @@ import java.util.List;
 public class NewOrderChangeExample {
     /**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	protected String orderByClause;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	protected boolean distinct;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	protected List<Criteria> oredCriteria;
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public NewOrderChangeExample() {
 		oredCriteria = new ArrayList<Criteria>();
@@ -32,7 +32,7 @@ public class NewOrderChangeExample {
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setOrderByClause(String orderByClause) {
 		this.orderByClause = orderByClause;
@@ -40,7 +40,7 @@ public class NewOrderChangeExample {
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public String getOrderByClause() {
 		return orderByClause;
@@ -48,7 +48,7 @@ public class NewOrderChangeExample {
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void setDistinct(boolean distinct) {
 		this.distinct = distinct;
@@ -56,7 +56,7 @@ public class NewOrderChangeExample {
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public boolean isDistinct() {
 		return distinct;
@@ -64,7 +64,7 @@ public class NewOrderChangeExample {
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public List<Criteria> getOredCriteria() {
 		return oredCriteria;
@@ -72,7 +72,7 @@ public class NewOrderChangeExample {
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void or(Criteria criteria) {
 		oredCriteria.add(criteria);
@@ -80,7 +80,7 @@ public class NewOrderChangeExample {
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public Criteria or() {
 		Criteria criteria = createCriteriaInternal();
@@ -90,7 +90,7 @@ public class NewOrderChangeExample {
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public Criteria createCriteria() {
 		Criteria criteria = createCriteriaInternal();
@@ -102,7 +102,7 @@ public class NewOrderChangeExample {
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	protected Criteria createCriteriaInternal() {
 		Criteria criteria = new Criteria();
@@ -111,7 +111,7 @@ public class NewOrderChangeExample {
 
 	/**
 	 * This method was generated by MyBatis Generator. This method corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public void clear() {
 		oredCriteria.clear();
@@ -121,7 +121,7 @@ public class NewOrderChangeExample {
 
 	/**
 	 * This class was generated by MyBatis Generator. This class corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	protected abstract static class GeneratedCriteria {
 		protected List<Criterion> criteria;
@@ -1693,11 +1693,191 @@ public class NewOrderChangeExample {
 			addCriterion("cw_remarks not between", value1, value2, "cwRemarks");
 			return (Criteria) this;
 		}
+
+		public Criteria andEstimateCostIsNull() {
+			addCriterion("estimate_cost is null");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateCostIsNotNull() {
+			addCriterion("estimate_cost is not null");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateCostEqualTo(BigDecimal value) {
+			addCriterion("estimate_cost =", value, "estimateCost");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateCostNotEqualTo(BigDecimal value) {
+			addCriterion("estimate_cost <>", value, "estimateCost");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateCostGreaterThan(BigDecimal value) {
+			addCriterion("estimate_cost >", value, "estimateCost");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateCostGreaterThanOrEqualTo(BigDecimal value) {
+			addCriterion("estimate_cost >=", value, "estimateCost");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateCostLessThan(BigDecimal value) {
+			addCriterion("estimate_cost <", value, "estimateCost");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateCostLessThanOrEqualTo(BigDecimal value) {
+			addCriterion("estimate_cost <=", value, "estimateCost");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateCostIn(List<BigDecimal> values) {
+			addCriterion("estimate_cost in", values, "estimateCost");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateCostNotIn(List<BigDecimal> values) {
+			addCriterion("estimate_cost not in", values, "estimateCost");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateCostBetween(BigDecimal value1, BigDecimal value2) {
+			addCriterion("estimate_cost between", value1, value2, "estimateCost");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateCostNotBetween(BigDecimal value1, BigDecimal value2) {
+			addCriterion("estimate_cost not between", value1, value2, "estimateCost");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableIsNull() {
+			addCriterion("estimate_refundable is null");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableIsNotNull() {
+			addCriterion("estimate_refundable is not null");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableEqualTo(BigDecimal value) {
+			addCriterion("estimate_refundable =", value, "estimateRefundable");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableNotEqualTo(BigDecimal value) {
+			addCriterion("estimate_refundable <>", value, "estimateRefundable");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableGreaterThan(BigDecimal value) {
+			addCriterion("estimate_refundable >", value, "estimateRefundable");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableGreaterThanOrEqualTo(BigDecimal value) {
+			addCriterion("estimate_refundable >=", value, "estimateRefundable");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableLessThan(BigDecimal value) {
+			addCriterion("estimate_refundable <", value, "estimateRefundable");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableLessThanOrEqualTo(BigDecimal value) {
+			addCriterion("estimate_refundable <=", value, "estimateRefundable");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableIn(List<BigDecimal> values) {
+			addCriterion("estimate_refundable in", values, "estimateRefundable");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableNotIn(List<BigDecimal> values) {
+			addCriterion("estimate_refundable not in", values, "estimateRefundable");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableBetween(BigDecimal value1, BigDecimal value2) {
+			addCriterion("estimate_refundable between", value1, value2, "estimateRefundable");
+			return (Criteria) this;
+		}
+
+		public Criteria andEstimateRefundableNotBetween(BigDecimal value1, BigDecimal value2) {
+			addCriterion("estimate_refundable not between", value1, value2, "estimateRefundable");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceIsNull() {
+			addCriterion("refund_Invoice is null");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceIsNotNull() {
+			addCriterion("refund_Invoice is not null");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceEqualTo(BigDecimal value) {
+			addCriterion("refund_Invoice =", value, "refundInvoice");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceNotEqualTo(BigDecimal value) {
+			addCriterion("refund_Invoice <>", value, "refundInvoice");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceGreaterThan(BigDecimal value) {
+			addCriterion("refund_Invoice >", value, "refundInvoice");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceGreaterThanOrEqualTo(BigDecimal value) {
+			addCriterion("refund_Invoice >=", value, "refundInvoice");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceLessThan(BigDecimal value) {
+			addCriterion("refund_Invoice <", value, "refundInvoice");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceLessThanOrEqualTo(BigDecimal value) {
+			addCriterion("refund_Invoice <=", value, "refundInvoice");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceIn(List<BigDecimal> values) {
+			addCriterion("refund_Invoice in", values, "refundInvoice");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceNotIn(List<BigDecimal> values) {
+			addCriterion("refund_Invoice not in", values, "refundInvoice");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceBetween(BigDecimal value1, BigDecimal value2) {
+			addCriterion("refund_Invoice between", value1, value2, "refundInvoice");
+			return (Criteria) this;
+		}
+
+		public Criteria andRefundInvoiceNotBetween(BigDecimal value1, BigDecimal value2) {
+			addCriterion("refund_Invoice not between", value1, value2, "refundInvoice");
+			return (Criteria) this;
+		}
 	}
 
 	/**
 	 * This class was generated by MyBatis Generator. This class corresponds to the database table new_order_change
-	 * @mbg.generated  Thu Aug 22 09:48:19 CST 2019
+	 * @mbg.generated  Wed Sep 18 14:33:46 CST 2019
 	 */
 	public static class Criterion {
 		private String condition;

+ 149 - 0
src/main/java/com/goafanti/common/model/OrderRefundInvoice.java

@@ -0,0 +1,149 @@
+package com.goafanti.common.model;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+import org.apache.commons.lang3.time.DateFormatUtils;
+
+import com.goafanti.common.constant.AFTConstants;
+
+public class OrderRefundInvoice {
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column order_refund_invoice.id
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    private Integer id;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column order_refund_invoice.order_no
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    private String orderNo;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column order_refund_invoice.create_time
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    private Date createTime;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column order_refund_invoice.amount
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    private BigDecimal amount;
+    
+    
+    
+    public String getCreateTimes() {
+    	if(getCreateTime()!=null)return DateFormatUtils.format(this.getCreateTime(), AFTConstants.YYYYMMDDHHMMSS);
+        return "";
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column order_refund_invoice.id
+     *
+     * @return the value of order_refund_invoice.id
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public Integer getId() {
+        return id;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column order_refund_invoice.id
+     *
+     * @param id the value for order_refund_invoice.id
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public void setId(Integer id) {
+        this.id = id;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column order_refund_invoice.order_no
+     *
+     * @return the value of order_refund_invoice.order_no
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public String getOrderNo() {
+        return orderNo;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column order_refund_invoice.order_no
+     *
+     * @param orderNo the value for order_refund_invoice.order_no
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public void setOrderNo(String orderNo) {
+        this.orderNo = orderNo;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column order_refund_invoice.create_time
+     *
+     * @return the value of order_refund_invoice.create_time
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column order_refund_invoice.create_time
+     *
+     * @param createTime the value for order_refund_invoice.create_time
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column order_refund_invoice.amount
+     *
+     * @return the value of order_refund_invoice.amount
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public BigDecimal getAmount() {
+        return amount;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column order_refund_invoice.amount
+     *
+     * @param amount the value for order_refund_invoice.amount
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public void setAmount(BigDecimal amount) {
+        this.amount = amount;
+    }
+}

+ 554 - 0
src/main/java/com/goafanti/common/model/OrderRefundInvoiceExample.java

@@ -0,0 +1,554 @@
+package com.goafanti.common.model;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class OrderRefundInvoiceExample {
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    protected String orderByClause;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    protected boolean distinct;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    protected List<Criteria> oredCriteria;
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public OrderRefundInvoiceExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(Integer value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(Integer value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(Integer value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(Integer value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(Integer value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<Integer> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<Integer> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(Integer value1, Integer value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(Integer value1, Integer value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoIsNull() {
+            addCriterion("order_no is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoIsNotNull() {
+            addCriterion("order_no is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoEqualTo(String value) {
+            addCriterion("order_no =", value, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoNotEqualTo(String value) {
+            addCriterion("order_no <>", value, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoGreaterThan(String value) {
+            addCriterion("order_no >", value, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoGreaterThanOrEqualTo(String value) {
+            addCriterion("order_no >=", value, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoLessThan(String value) {
+            addCriterion("order_no <", value, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoLessThanOrEqualTo(String value) {
+            addCriterion("order_no <=", value, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoLike(String value) {
+            addCriterion("order_no like", value, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoNotLike(String value) {
+            addCriterion("order_no not like", value, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoIn(List<String> values) {
+            addCriterion("order_no in", values, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoNotIn(List<String> values) {
+            addCriterion("order_no not in", values, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoBetween(String value1, String value2) {
+            addCriterion("order_no between", value1, value2, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNoNotBetween(String value1, String value2) {
+            addCriterion("order_no not between", value1, value2, "orderNo");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNull() {
+            addCriterion("create_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNotNull() {
+            addCriterion("create_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeEqualTo(Date value) {
+            addCriterion("create_time =", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotEqualTo(Date value) {
+            addCriterion("create_time <>", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThan(Date value) {
+            addCriterion("create_time >", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("create_time >=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThan(Date value) {
+            addCriterion("create_time <", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("create_time <=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIn(List<Date> values) {
+            addCriterion("create_time in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotIn(List<Date> values) {
+            addCriterion("create_time not in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeBetween(Date value1, Date value2) {
+            addCriterion("create_time between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("create_time not between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountIsNull() {
+            addCriterion("amount is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountIsNotNull() {
+            addCriterion("amount is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountEqualTo(BigDecimal value) {
+            addCriterion("amount =", value, "amount");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountNotEqualTo(BigDecimal value) {
+            addCriterion("amount <>", value, "amount");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountGreaterThan(BigDecimal value) {
+            addCriterion("amount >", value, "amount");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountGreaterThanOrEqualTo(BigDecimal value) {
+            addCriterion("amount >=", value, "amount");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountLessThan(BigDecimal value) {
+            addCriterion("amount <", value, "amount");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountLessThanOrEqualTo(BigDecimal value) {
+            addCriterion("amount <=", value, "amount");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountIn(List<BigDecimal> values) {
+            addCriterion("amount in", values, "amount");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountNotIn(List<BigDecimal> values) {
+            addCriterion("amount not in", values, "amount");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountBetween(BigDecimal value1, BigDecimal value2) {
+            addCriterion("amount between", value1, value2, "amount");
+            return (Criteria) this;
+        }
+
+        public Criteria andAmountNotBetween(BigDecimal value1, BigDecimal value2) {
+            addCriterion("amount not between", value1, value2, "amount");
+            return (Criteria) this;
+        }
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated do_not_delete_during_merge Tue Sep 17 16:25:27 CST 2019
+     */
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table order_refund_invoice
+     *
+     * @mbg.generated Tue Sep 17 16:25:27 CST 2019
+     */
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 28 - 0
src/main/java/com/goafanti/order/bo/BillBo.java

@@ -0,0 +1,28 @@
+package com.goafanti.order.bo;
+
+import java.math.BigDecimal;
+
+public class BillBo {
+	private String payTime;
+	private BigDecimal transactionAmount;
+	private String aName;
+	public String getPayTime() {
+		return payTime;
+	}
+	public void setPayTime(String payTime) {
+		this.payTime = payTime;
+	}
+	public BigDecimal getTransactionAmount() {
+		return transactionAmount;
+	}
+	public void setTransactionAmount(BigDecimal transactionAmount) {
+		this.transactionAmount = transactionAmount;
+	}
+	public String getaName() {
+		return aName;
+	}
+	public void setaName(String aName) {
+		this.aName = aName;
+	}
+	
+}

+ 21 - 0
src/main/java/com/goafanti/order/bo/InvoiceBo.java

@@ -0,0 +1,21 @@
+package com.goafanti.order.bo;
+
+import java.math.BigDecimal;
+
+public class InvoiceBo {
+	private String createTime;
+	private BigDecimal amount;
+	public String getCreateTime() {
+		return createTime;
+	}
+	public void setCreateTime(String createTime) {
+		this.createTime = createTime;
+	}
+	public BigDecimal getAmount() {
+		return amount;
+	}
+	public void setAmount(BigDecimal amount) {
+		this.amount = amount;
+	}
+	
+}

+ 7 - 0
src/main/java/com/goafanti/order/bo/TOrderInvoiceBo.java

@@ -6,6 +6,7 @@ public class TOrderInvoiceBo {
 	private String orderno;
 	private String name;
 	private Integer projectStatus;
+	private Integer processStatus;
 	private String sumAmount;
 	private String amount;
 	private String createTime;
@@ -93,6 +94,12 @@ public class TOrderInvoiceBo {
 	public void setApproval(Integer approval) {
 		this.approval = approval;
 	}
+	public Integer getProcessStatus() {
+		return processStatus;
+	}
+	public void setProcessStatus(Integer processStatus) {
+		this.processStatus = processStatus;
+	}
 	
 	
 }

+ 75 - 6
src/main/java/com/goafanti/order/controller/OrderChangeApiController.java

@@ -13,6 +13,8 @@ import org.springframework.web.bind.annotation.RestController;
 import com.goafanti.common.bo.Result;
 import com.goafanti.common.constant.ErrorConstants;
 import com.goafanti.common.controller.CertifyApiController;
+import com.goafanti.common.model.OrderRefundInvoice;
+import com.goafanti.common.utils.StringUtils;
 import com.goafanti.order.bo.NewOrderChangeBo;
 import com.goafanti.order.service.OrderChangeService;
 
@@ -28,7 +30,7 @@ public class OrderChangeApiController extends CertifyApiController {
 	 *  新增变更
 	 */
 	@RequestMapping(value = "/addOrderChange", method = RequestMethod.POST)
-	public Result addOrderChange(NewOrderChangeBo t){
+	public Result addOrderChange(NewOrderChangeBo t,String startRemarks){
 		Result res = new Result();
 		if(null==t.getOrderNo()){
 			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "订单编号"));
@@ -38,7 +40,7 @@ public class OrderChangeApiController extends CertifyApiController {
 			res.getError().add(buildError( "", "订单变更未完成"));
 			return res;
 		}
-		res.setData(orderChangeService.addOrderChange(t));
+		res.setData(orderChangeService.addOrderChange(t,startRemarks));
 		return res;
 	}
 	/**
@@ -71,7 +73,7 @@ public class OrderChangeApiController extends CertifyApiController {
 	 * 变更修改
 	 */
 	@RequestMapping(value = "/updateOrderChange", method = RequestMethod.POST)
-	public Result orderChangeDetails(NewOrderChangeBo t ,Integer changeType){
+	public Result orderChangeDetails(NewOrderChangeBo t ,Integer changeType,String startRemarks){
 		Result res = new Result();
 		if(null==t.getId()){
 			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "订单变更id"));
@@ -81,14 +83,14 @@ public class OrderChangeApiController extends CertifyApiController {
 			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "修改变更类型"));
 			return res;
 		}
-		res.setData(orderChangeService.updateOrderChange(t,changeType));
+		res.setData(orderChangeService.updateOrderChange(t,changeType,startRemarks));
 		return res;
 	}
 	/**
 	 *   变更审核
 	 */
 	@RequestMapping(value = "/orderChangeAudit", method = RequestMethod.POST)
-	public Result orderChangeAudit(String orderNo,String remarks,Integer status,Integer processState){
+	public Result orderChangeAudit(String orderNo,String remarks,Integer status,Integer processState,Integer rejectState){
 		Result res = new Result();
 		if(null==orderNo){
 			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "订单编号", "订单编号"));
@@ -102,7 +104,7 @@ public class OrderChangeApiController extends CertifyApiController {
 			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "审核批示", "审核批示"));
 			return res;
 		}
-		res.setData(orderChangeService.pushOrderChangeAudit( orderNo, remarks, status, processState));
+		res.setData(orderChangeService.pushOrderChangeAudit( orderNo, remarks, status, processState,rejectState));
 		return res;
 	}
 	/**
@@ -139,4 +141,71 @@ public class OrderChangeApiController extends CertifyApiController {
 				depId, salesmanName, complete,pageSize,  pageNo));
 		return res;
 	}
+	/**
+	 *  新增回收发票
+	 */
+	@RequestMapping(value ="/addOrderRefundInvoice",method = RequestMethod.POST)
+	public Result addOrderRefundInvoice(OrderRefundInvoice o) {
+		Result res =new Result();
+		if (o.getAmount()==null) {
+			res.getError().add(buildError("金额不能为空", "金额不能为空"));
+			return res;
+		}
+		res.data(orderChangeService.addOrderRefundInvoice(o));
+		return res;
+	}
+	/**
+	 *  删除回收发票
+	 */
+	@RequestMapping(value ="/deleteOrderRefundInvoice",method = RequestMethod.POST)
+	public Result deleteOrderRefundInvoice(Integer id) {
+		Result res =new Result();
+		if (id==null) {
+			res.getError().add(buildError("id不能为空", "id不能为空"));
+			return res;
+		}
+		res.data(orderChangeService.deleteOrderRefundInvoice(id));
+		return res;
+	}
+	/**
+	 *  回收发票列表
+	 */
+	@RequestMapping(value ="/listOrderRefundInvoice",method = RequestMethod.GET)
+	public Result listOrderRefundInvoice(String orderNo) {
+		Result res =new Result();
+		if (StringUtils.isBlank(orderNo)) {
+			res.getError().add(buildError("订单编号不能为空", "订单编号不能为空"));
+			return res;
+		}
+		res.data(orderChangeService.listOrderRefundInvoice(orderNo));
+		return res;
+	}
+	
+	/**
+	 *  回收发票列表
+	 */
+	@RequestMapping(value ="/listOrderInvoiceAndBill",method = RequestMethod.GET)
+	public Result listOrderInvoiceAndBill(String orderNo) {
+		Result res =new Result();
+		if (StringUtils.isBlank(orderNo)) {
+			res.getError().add(buildError("订单编号不能为空", "订单编号不能为空"));
+			return res;
+		}
+		res.data(orderChangeService.listOrderInvoiceAndBill(orderNo));
+		return res;
+	}
+	/**
+	 * 完成变更
+	 */
+	@RequestMapping(value ="/completeOrderChange",method = RequestMethod.GET)
+	public Result completeOrderChange(NewOrderChangeBo nb) {
+		Result res =new Result();
+		if (StringUtils.isBlank(nb.getOrderNo())||nb.getType()==null) {
+			res.getError().add(buildError("订单编号和类型不能为空", "订单编号和类型不能为空"));
+			return res;
+		}
+		res.data(orderChangeService.pushCompleteOrderChange(nb));
+		return res;
+	}
+	
 }

+ 17 - 3
src/main/java/com/goafanti/order/service/OrderChangeService.java

@@ -1,18 +1,21 @@
 package com.goafanti.order.service;
 
 import java.util.List;
+import java.util.Map;
 
+import com.goafanti.common.model.OrderRefundInvoice;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.order.bo.NewOrderChangeBo;
+import com.goafanti.order.bo.OrderChangeBo;
 import com.goafanti.order.bo.OrderChangeLogBo;
 
 public interface OrderChangeService {
 
-	int addOrderChange(NewOrderChangeBo t);
+	int addOrderChange(NewOrderChangeBo t, String startRemarks);
 
 	NewOrderChangeBo orderChangeDetails(String orderNo);
 
-	int pushOrderChangeAudit(String orderNo, String remarks, Integer status,Integer processState);
+	int pushOrderChangeAudit(String orderNo, String remarks, Integer status,Integer processState, Integer rejectState);
 
 	boolean checkOderNo(String orderNo);
 
@@ -21,10 +24,21 @@ public interface OrderChangeService {
 	Pagination<NewOrderChangeBo> selectOrderChangeList(String userName,Integer  processState,Integer timeType,String startTime,String endTime,
 			String depId,String salesmanName,Integer complete,Integer pageSize, Integer pageNo);
 
-	int updateOrderChange(NewOrderChangeBo t, Integer changeType);
+	int updateOrderChange(NewOrderChangeBo t, Integer changeType,String startRemarks);
 
 	NewOrderChangeBo orderChangeDetailsById(Integer id);
 
+	int addOrderRefundInvoice(OrderRefundInvoice o);
+
+	int deleteOrderRefundInvoice(Integer id);
+
+	List<OrderRefundInvoice> listOrderRefundInvoice(String orderNo);
+
+	int pushCompleteOrderChange(NewOrderChangeBo nb);
+
+	Map<String ,Object> listOrderInvoiceAndBill(String orderNo);
+
+
 
 
 }

+ 73 - 22
src/main/java/com/goafanti/order/service/impl/OrderChangeServiceImpl.java

@@ -2,6 +2,7 @@ package com.goafanti.order.service.impl;
 
 import java.math.BigDecimal;
 import java.text.ParseException;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -14,12 +15,16 @@ import com.goafanti.common.bo.Error;
 import com.goafanti.common.constant.AFTConstants;
 import com.goafanti.common.dao.NewOrderChangeMapper;
 import com.goafanti.common.dao.OrderChangeLogMapper;
+import com.goafanti.common.dao.OrderRefundInvoiceMapper;
+import com.goafanti.common.dao.TOrderBillNewMapper;
 import com.goafanti.common.dao.TOrderDunMapper;
+import com.goafanti.common.dao.TOrderInvoiceMapper;
 import com.goafanti.common.dao.TOrderLogMapper;
 import com.goafanti.common.dao.TOrderNewMapper;
 import com.goafanti.common.dao.TOrderTaskMapper;
 import com.goafanti.common.error.BusinessException;
 import com.goafanti.common.model.OrderChangeLog;
+import com.goafanti.common.model.OrderRefundInvoice;
 import com.goafanti.common.model.TOrderDun;
 import com.goafanti.common.model.TOrderNew;
 import com.goafanti.common.model.NewOrderChange;
@@ -29,6 +34,8 @@ import com.goafanti.core.mybatis.BaseMybatisDao;
 import com.goafanti.core.mybatis.JDBCIdGenerator;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.core.shiro.token.TokenManager;
+import com.goafanti.order.bo.BillBo;
+import com.goafanti.order.bo.InvoiceBo;
 import com.goafanti.order.bo.NewOrderChangeBo;
 import com.goafanti.order.bo.OrderChangeLogBo;
 import com.goafanti.order.bo.TOrderLogBo;
@@ -50,6 +57,12 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 	@Autowired
 	private TOrderTaskMapper	tOrderTaskMapper;
 	@Autowired
+	private TOrderBillNewMapper	tOrderBillNewMapper;
+	@Autowired
+	private TOrderInvoiceMapper	tOrderInvoiceMapper;
+	@Autowired
+	private OrderRefundInvoiceMapper	orderRefundInvoiceMapper;
+	@Autowired
 	private OrderService	orderService;
 	@Autowired
 	private JDBCIdGenerator	idGenerator;
@@ -57,23 +70,32 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 	
 	
 	@Override
-	public int addOrderChange(NewOrderChangeBo t) {
+	public int addOrderChange(NewOrderChangeBo t,String startRemarks) {
 		TOrderNew ton=new TOrderNew();
 		ton.setOrderNo(t.getOrderNo());
 		ton.setDeleteSign(2);//将订单置为锁定
 		t.setProcessState(1);//设置营销管理员来审核
 		tOrderNewMapper.updateByPrimaryKeySelective(ton);
+		BigDecimal invoiceAmount=tOrderInvoiceMapper.conutAmountByOrderNo(t.getOrderNo());
+		t.setInvoiceAmount(invoiceAmount);//开票金额
+		BigDecimal paymentAmount=tOrderBillNewMapper.conutAmountByOrderNo(t.getOrderNo());
+		t.setPaymentAmount(paymentAmount);//收款金额
+		//预计成本与预计退款:预计成本=项目价格*数量    预计退款=收款-预计成本
+		BigDecimal estimateCost=new BigDecimal(tOrderTaskMapper.selectEstimateCost(t.getOrderNo()));
+		t.setEstimateCost(estimateCost);
+		t.setEstimateRefundable(paymentAmount.subtract(estimateCost));
 		newOrderChangeMapper.insertSelective(t);
 		NewOrderChangeBo ncb=newOrderChangeMapper.selectByorderNo(t.getOrderNo());
 		OrderChangeLog ocl=new OrderChangeLog();
 		ocl.setAuditor(TokenManager.getAdminId());
 		ocl.setOrderNo(t.getOrderNo());
-		ocl.setRemarks("发起了订单变更");
+		ocl.setRemarks(startRemarks);
 		ocl.setChangeId(ncb.getId());
 		ocl.setStatus(0);
 		orderChangeLogMapper.insertSelective(ocl);
 		return 1;
 	}
+	
 	@Override
 	public NewOrderChangeBo orderChangeDetails(String orderNo) {
 		NewOrderChangeBo nb=newOrderChangeMapper.selectByorderNo(orderNo);
@@ -85,7 +107,7 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 		return nb;
 	}
 	@Override
-	public int pushOrderChangeAudit(String orderNo, String remarks, Integer status,Integer processState) {
+	public int pushOrderChangeAudit(String orderNo, String remarks, Integer status,Integer processState,Integer rejectState) {
 		NewOrderChangeBo nb=newOrderChangeMapper.selectByorderNo(orderNo);
 		if (processState==null||(nb.getProcessState()!=9&&processState !=nb.getProcessState()) ) {
 			throw new BusinessException(new Error( "变更流程与您所操作流程不匹配","变更流程与您所操作流程不匹配"));
@@ -96,10 +118,11 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 		//2通过 3驳回
 		if (status==2) {
 			//变更类型 0退单退款 1项目及金额变更 2仅项目变更 3仅金额变更 4重报 5赠送
-			if(nb.getType()==0){
+			if(nb.getType() !=null){
 				if (nb.getChangeAmount().compareTo(new BigDecimal("0.2"))<0) {//小于则总裁通过,大于则董事长
 					if(nb.getProcessState()==7) {//项目变更通过
-						changgeAdopt(nb);
+						nb.setStatus(2);
+						//changgeAdopt(nb); 取消订单变更完成
 						}else if(nb.getProcessState()==1){
 							nb.setProcessState(3);
 						}else{
@@ -107,21 +130,27 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 							}
 				}else {
 					if(nb.getProcessState()==8) {//项目变更通过
-						changgeAdopt(nb);
+						nb.setStatus(2);
+						//changgeAdopt(nb); 取消订单变更完成
 						}else if(nb.getProcessState()==1){
 							nb.setProcessState(3);
-						} else{
+						}else {
 							nb.setProcessState(nb.getProcessState()+1);
 							}
 				}
-			}else {
-				if(nb.getProcessState()==9) {changgeAdopt(nb);}//项目变更通过
+			}/*else {
+				if(nb.getProcessState()==9) {
+					//changgeAdopt(nb); 取消订单变更完成
+					}
 				//流程状态 0营销员 1营销管理员 2技术员 3技术经理 4技术总监 5财务专员(退单) 6财务总监 7总裁 8董事长 9 财务专员(非退单)
 				if (nb.getProcessState()==1) nb.setProcessState(7);
 				else if (nb.getProcessState()==7)nb.setProcessState(9);
+			}*/ //去掉第二条线
+			if(nb.getStatus()==3) {
+				nb.setStatus(1);//如果驳回数据则改为正常数据
 			}
 		}else {
-			nb.setProcessState(0);
+			nb.setProcessState(rejectState);
 			nb.setStatus(3);//订单变更设置为驳回
 		}
 		OrderChangeLog ocl=new OrderChangeLog();
@@ -214,7 +243,7 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 		return data;
 	}
 	@Override
-	public int updateOrderChange(NewOrderChangeBo t,Integer changeType) {
+	public int updateOrderChange(NewOrderChangeBo t,Integer changeType,String startRemarks) {
 		NewOrderChange  noc=new NewOrderChange();
 		noc.setId(t.getId());
 		if (changeType==0) {
@@ -231,31 +260,53 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 			OrderChangeLog ocl=new OrderChangeLog();
 			ocl.setAuditor(TokenManager.getAdminId());
 			ocl.setOrderNo(t.getOrderNo());
-			ocl.setRemarks("重新发起了订单变更");
+			ocl.setRemarks(startRemarks);
 			ocl.setChangeId(noc.getId());
 			ocl.setStatus(0);
 			orderChangeLogMapper.insertSelective(ocl);
-			
-		}else if(changeType==1) {
-			noc.setProjectState(t.getProjectState());
-			noc.setZxsCost(t.getZxsCost());
-			noc.setZxsRemarks(t.getZxsRemarks());
-		}else if (changeType==2) {
+		}else  if (changeType==2) {
 			try {
 				noc.setPaymentTime(DateUtils.StringToDate(t.getPaymentTimes(), AFTConstants.YYYYMMDD));
 				noc.setInvoiceTime(DateUtils.StringToDate(t.getInvoiceTimes(), AFTConstants.YYYYMMDD));
 			} catch (ParseException e) {
 				e.printStackTrace();
 			}
-			noc.setPaymentAmount(t.getPaymentAmount());
-			noc.setInvoiceAmount(t.getInvoiceAmount());
-			noc.setInvoiceType(t.getInvoiceType());
 			noc.setCwCost(t.getCwCost());
 			noc.setRefundableAmount(t.getRefundableAmount());
-			noc.setCwRemarks(t.getCwRemarks());
 		}
 		return newOrderChangeMapper.updateByPrimaryKeySelective(noc);
 	}
+	@Override
+	public int addOrderRefundInvoice(OrderRefundInvoice o) {
+		o.setCreateTime(new Date());
+		newOrderChangeMapper.addRefundInvoice(o.getOrderNo(),o.getAmount());
+		return orderRefundInvoiceMapper.insertSelective(o);
+	}
+	@Override
+	public int deleteOrderRefundInvoice(Integer id) {
+		OrderRefundInvoice or=orderRefundInvoiceMapper.selectByPrimaryKey(id);
+		newOrderChangeMapper.subtractRefundInvoice(or.getOrderNo(),or.getAmount());
+		return orderRefundInvoiceMapper.deleteByPrimaryKey(id);
+	}
+	@Override
+	public List<OrderRefundInvoice> listOrderRefundInvoice(String orderNo) {
+		return orderRefundInvoiceMapper.selectByorderNo(orderNo);
+	}
+	@Override
+	public int pushCompleteOrderChange(NewOrderChangeBo nb) {
+		changgeAdopt(nb);
+		newOrderChangeMapper.updateByPrimaryKeySelective(nb);
+		return 1;
+	}
+	@Override
+	public Map<String, Object> listOrderInvoiceAndBill(String orderNo) {
+		Map<String, Object> map=new HashMap<>();
+		List<BillBo>list=tOrderBillNewMapper.selectByOrderNo(orderNo);
+		List<InvoiceBo>list2=tOrderInvoiceMapper.selectByOrderNo(orderNo);
+		map.put("bill", list);
+		map.put("invoice", list2);
+		return map;
+	}
 	
 
 }

+ 2 - 2
src/main/resources/props/config_local.properties

@@ -60,12 +60,12 @@ template.cacheable=false
 portal.host=//sf.jishutao.com/portal/2.0.6
 avatar.upload.host=//sb.jishutao.com/upload
 #连接开发
-static.host=//sb.jishutao.com/1.1.17
+static.host=//sb.jishutao.com/1.1.18
 avatar.host=//sb.jishutao.com
 
 #连测试
 #avatar.host=//static.jishutao.com
-#static.host=//static.jishutao.com/1.1.15
+#static.host=//static.jishutao.com/1.1.18
 upload.path=F:/data/public/upload
 upload.private.path=F:/data/private/upload