Browse Source

订单派单触发首期

anderx 4 years ago
parent
commit
2e96e89fc5

+ 2 - 1
.idea/free-mybatis-generator-config.xml

@@ -137,6 +137,7 @@
               <option name="primaryKey" value="id" />
               <option name="projectFolder" value="$PROJECT_DIR$" />
               <option name="tableName" value="t_order_mid" />
+              <option name="useSchemaPrefix" value="true" />
               <option name="xmlMvnPath" value="src/main/java" />
               <option name="xmlPackage" value="com.goafanti.common.mapper" />
             </Config>
@@ -242,11 +243,11 @@
               <option name="daoPostfix" value="mapper" />
               <option name="modelPackage" value="com.goafanti.common.model" />
               <option name="name" value="initConfig" />
+              <option name="needToStringHashcodeEquals" value="true" />
               <option name="overrideJava" value="true" />
               <option name="overrideXML" value="true" />
               <option name="projectFolder" value="$PROJECT_DIR$" />
               <option name="useLombokPlugin" value="true" />
-              <option name="useSchemaPrefix" value="true" />
               <option name="xmlPackage" value="com.goafanti.common.mapper" />
             </Config>
           </value>

+ 18 - 6
src/main/java/com/goafanti/common/mapper/TOrderMidMapper.xml

@@ -20,11 +20,13 @@
     <result column="dep_name" jdbcType="VARCHAR" property="depName" />
     <result column="province_name" jdbcType="VARCHAR" property="provinceName" />
     <result column="legal_affairs" jdbcType="INTEGER" property="legalAffairs" />
+    <result column="dun_start_time" jdbcType="TIMESTAMP" property="dunStartTime" />
   </resultMap>
   <sql id="Base_Column_List">
     id, order_no, salesman_id, finance_id, salesman_name, finance_name, final_receivables, 
     final_Receivables_time, invoice_amount, create_time, buyer_name, order_receivables, 
-    order_arrears, payment_amount, cost_amount, dep_name, province_name, legal_affairs
+    order_arrears, payment_amount, cost_amount, dep_name, province_name, legal_affairs, 
+    dun_start_time
   </sql>
   <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
     select 
@@ -42,15 +44,15 @@
       final_Receivables_time, invoice_amount, 
       create_time, buyer_name, order_receivables, 
       order_arrears, payment_amount, cost_amount, 
-      dep_name, province_name, legal_affairs
-      )
+      dep_name, province_name, legal_affairs, 
+      dun_start_time)
     values (#{orderNo,jdbcType=VARCHAR}, #{salesmanId,jdbcType=VARCHAR}, #{financeId,jdbcType=VARCHAR}, 
       #{salesmanName,jdbcType=VARCHAR}, #{financeName,jdbcType=VARCHAR}, #{finalReceivables,jdbcType=DECIMAL}, 
       #{finalReceivablesTime,jdbcType=TIMESTAMP}, #{invoiceAmount,jdbcType=DECIMAL}, 
       #{createTime,jdbcType=TIMESTAMP}, #{buyerName,jdbcType=VARCHAR}, #{orderReceivables,jdbcType=DECIMAL}, 
       #{orderArrears,jdbcType=DECIMAL}, #{paymentAmount,jdbcType=DECIMAL}, #{costAmount,jdbcType=DECIMAL}, 
-      #{depName,jdbcType=VARCHAR}, #{provinceName,jdbcType=VARCHAR}, #{legalAffairs,jdbcType=INTEGER}
-      )
+      #{depName,jdbcType=VARCHAR}, #{provinceName,jdbcType=VARCHAR}, #{legalAffairs,jdbcType=INTEGER}, 
+      #{dunStartTime,jdbcType=TIMESTAMP})
   </insert>
   <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.goafanti.common.model.TOrderMid" useGeneratedKeys="true">
     insert into t_order_mid
@@ -106,6 +108,9 @@
       <if test="legalAffairs != null">
         legal_affairs,
       </if>
+      <if test="dunStartTime != null">
+        dun_start_time,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
       <if test="orderNo != null">
@@ -159,6 +164,9 @@
       <if test="legalAffairs != null">
         #{legalAffairs,jdbcType=INTEGER},
       </if>
+      <if test="dunStartTime != null">
+        #{dunStartTime,jdbcType=TIMESTAMP},
+      </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.TOrderMid">
@@ -215,6 +223,9 @@
       <if test="legalAffairs != null">
         legal_affairs = #{legalAffairs,jdbcType=INTEGER},
       </if>
+      <if test="dunStartTime != null">
+        dun_start_time = #{dunStartTime,jdbcType=TIMESTAMP},
+      </if>
     </set>
     where id = #{id,jdbcType=INTEGER}
   </update>
@@ -236,7 +247,8 @@
       cost_amount = #{costAmount,jdbcType=DECIMAL},
       dep_name = #{depName,jdbcType=VARCHAR},
       province_name = #{provinceName,jdbcType=VARCHAR},
-      legal_affairs = #{legalAffairs,jdbcType=INTEGER}
+      legal_affairs = #{legalAffairs,jdbcType=INTEGER},
+      dun_start_time = #{dunStartTime,jdbcType=TIMESTAMP}
     where id = #{id,jdbcType=INTEGER}
   </update>
   <select id="selectByOrderNo" resultMap="BaseResultMap">

+ 17 - 1
src/main/java/com/goafanti/common/model/TOrderMid.java

@@ -99,6 +99,11 @@ public class TOrderMid implements Serializable {
      */
     private Integer legalAffairs;
 
+    /**
+     * 催款启动日期
+     */
+    private Date dunStartTime;
+
     private static final long serialVersionUID = 1L;
 
     public Integer getId() {
@@ -245,6 +250,14 @@ public class TOrderMid implements Serializable {
         this.legalAffairs = legalAffairs;
     }
 
+    public Date getDunStartTime() {
+        return dunStartTime;
+    }
+
+    public void setDunStartTime(Date dunStartTime) {
+        this.dunStartTime = dunStartTime;
+    }
+
     @Override
     public boolean equals(Object that) {
         if (this == that) {
@@ -274,7 +287,8 @@ public class TOrderMid implements Serializable {
             && (this.getCostAmount() == null ? other.getCostAmount() == null : this.getCostAmount().equals(other.getCostAmount()))
             && (this.getDepName() == null ? other.getDepName() == null : this.getDepName().equals(other.getDepName()))
             && (this.getProvinceName() == null ? other.getProvinceName() == null : this.getProvinceName().equals(other.getProvinceName()))
-            && (this.getLegalAffairs() == null ? other.getLegalAffairs() == null : this.getLegalAffairs().equals(other.getLegalAffairs()));
+            && (this.getLegalAffairs() == null ? other.getLegalAffairs() == null : this.getLegalAffairs().equals(other.getLegalAffairs()))
+            && (this.getDunStartTime() == null ? other.getDunStartTime() == null : this.getDunStartTime().equals(other.getDunStartTime()));
     }
 
     @Override
@@ -299,6 +313,7 @@ public class TOrderMid implements Serializable {
         result = prime * result + ((getDepName() == null) ? 0 : getDepName().hashCode());
         result = prime * result + ((getProvinceName() == null) ? 0 : getProvinceName().hashCode());
         result = prime * result + ((getLegalAffairs() == null) ? 0 : getLegalAffairs().hashCode());
+        result = prime * result + ((getDunStartTime() == null) ? 0 : getDunStartTime().hashCode());
         return result;
     }
 
@@ -326,6 +341,7 @@ public class TOrderMid implements Serializable {
         sb.append(", depName=").append(depName);
         sb.append(", provinceName=").append(provinceName);
         sb.append(", legalAffairs=").append(legalAffairs);
+        sb.append(", dunStartTime=").append(dunStartTime);
         sb.append(", serialVersionUID=").append(serialVersionUID);
         sb.append("]");
         return sb.toString();

+ 16 - 13
src/main/java/com/goafanti/order/service/impl/OrderNewServiceImpl.java

@@ -683,25 +683,28 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 	public void pushOrderDun(String orderNo) {
 		TOrderNew b=tOrderNewMapper.selectByPrimaryKey(orderNo);
 		if(b.getApproval()==0){
+			Date date = new Date();
 			List<OutNewOrderDunBo> list=newOrderDunMapper.selectListNewOrderDun(orderNo,null,0);
 			for (OutNewOrderDunBo o : list) {
 				if (o.getDunType()==1) {	
 					o.setStatus(1);
-					o.setStartTime(new Date());
+					o.setStartTime(date);
 					newOrderDunMapper.updateByPrimaryKeySelective(o);
-					tOrderMidMapper.addOrderReceivables(o.getOrderNo(),o.getMoney());
 					TOrderMid tm=tOrderMidMapper.selectByOrderNo(orderNo);
-						TArrearsDun t=new TArrearsDun();
-						t.setOrderArrears(tm.getOrderArrears());
-						t.setOrderReceivables(tm.getOrderReceivables());
-						if (tArrearsDunMapper.checkOrderNo(orderNo,null)<1) {
-							t.setOrderNo(orderNo);
-							tArrearsDunMapper.insertSelective(t);
-						}else if(tArrearsDunMapper.checkOrderNo(orderNo,0)>0){
-							Integer i=tArrearsDunMapper.selectByStatus(orderNo, 0);
-							t.setId(i);
-							tArrearsDunMapper.updateByPrimaryKeySelective(t);
-						}
+					tm.setOrderArrears(tm.getOrderArrears().add(o.getMoney()));
+					if (tm.getDunStartTime()!=null)tm.setDunStartTime(date);
+					tOrderMidMapper.updateByPrimaryKeySelective(tm);
+					TArrearsDun t=new TArrearsDun();
+					t.setOrderArrears(tm.getOrderArrears());
+					t.setOrderReceivables(tm.getOrderReceivables());
+					if (tArrearsDunMapper.checkOrderNo(orderNo,null)<1) {
+						t.setOrderNo(orderNo);
+						tArrearsDunMapper.insertSelective(t);
+					}else if(tArrearsDunMapper.checkOrderNo(orderNo,0)>0){
+						Integer i=tArrearsDunMapper.selectByStatus(orderNo, 0);
+						t.setId(i);
+						tArrearsDunMapper.updateByPrimaryKeySelective(t);
+					}
 					addNewDunNoticAndSendEmail(orderNo,o);
 				}
 			}