anderx 1 год назад
Родитель
Сommit
c221f74e31

+ 1 - 3
src/main/java/com/goafanti/common/dao/TOrderPublicReleaseCountMapper.java

@@ -6,13 +6,11 @@ import org.springframework.data.domain.Pageable;
 
 import java.util.List;
 
-
-
 /**
  * 订单公出信息表(TOrderPublicReleaseCount)表数据库访问层
  *
  * @author makejava
- * @since 2024-09-20 15:06:27
+ * @since 2024-09-20 15:22:04
  */
 public interface TOrderPublicReleaseCountMapper {
 

+ 22 - 10
src/main/java/com/goafanti/common/mapper/TOrderPublicReleaseCountMapper.xml

@@ -10,10 +10,11 @@
         <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
         <result property="maxDuration" column="max_duration" jdbcType="NUMERIC"/>
         <result property="maxProcess" column="max_process" jdbcType="INTEGER"/>
+        <result property="maxType" column="max_type" jdbcType="INTEGER"/>
     </resultMap>
 
     <sql id="TOrderPublicReleaseCountAllSql">
-        id, order_no, actual_duration, people_count, frequency, create_time, max_duration, max_process
+        id, order_no, actual_duration, people_count, frequency, create_time, max_duration, max_process, max_type
     </sql>
 
     <!--查询单个-->
@@ -55,6 +56,9 @@
             <if test="maxProcess != null">
                 and max_process = #{maxProcess}
             </if>
+            <if test="maxType != null">
+                and max_type = #{maxType}
+            </if>
         </where>
         <if test="page_sql != null">
             ${page_sql}
@@ -90,34 +94,37 @@
             <if test="maxProcess != null">
                 and max_process = #{maxProcess}
             </if>
+            <if test="maxType != null">
+                and max_type = #{maxType}
+            </if>
         </where>
     </select>
 
     <!--新增所有列-->
     <insert id="insert" keyProperty="id" useGeneratedKeys="true">
         insert into t_order_public_release_count(order_no, actual_duration, people_count, frequency, create_time,
-                                                 max_duration, max_process)
+                                                 max_duration, max_process, max_type)
         values (#{orderNo}, #{actualDuration}, #{peopleCount}, #{frequency}, #{createTime}, #{maxDuration},
-                #{maxProcess})
+                #{maxProcess}, #{maxType})
     </insert>
 
     <insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
         insert into t_order_public_release_count(order_no, actual_duration, people_count, frequency, create_time,
-        max_duration, max_process)
+        max_duration, max_process, max_type)
         values
         <foreach collection="entities" item="entity" separator=",">
             (#{entity.orderNo}, #{entity.actualDuration}, #{entity.peopleCount}, #{entity.frequency},
-            #{entity.createTime}, #{entity.maxDuration}, #{entity.maxProcess})
+            #{entity.createTime}, #{entity.maxDuration}, #{entity.maxProcess}, #{entity.maxType})
         </foreach>
     </insert>
 
     <insert id="insertOrUpdateBatch" keyProperty="id" useGeneratedKeys="true">
         insert into t_order_public_release_count(order_no, actual_duration, people_count, frequency, create_time,
-        max_duration, max_process)
+        max_duration, max_process, max_type)
         values
         <foreach collection="entities" item="entity" separator=",">
             (#{entity.orderNo}, #{entity.actualDuration}, #{entity.peopleCount}, #{entity.frequency},
-            #{entity.createTime}, #{entity.maxDuration}, #{entity.maxProcess})
+            #{entity.createTime}, #{entity.maxDuration}, #{entity.maxProcess}, #{entity.maxType})
         </foreach>
         on duplicate key update
         order_no = values(order_no),
@@ -126,7 +133,8 @@
         frequency = values(frequency),
         create_time = values(create_time),
         max_duration = values(max_duration),
-        max_process = values(max_process)
+        max_process = values(max_process),
+        max_type = values(max_type)
     </insert>
 
     <!--通过主键修改数据-->
@@ -154,6 +162,9 @@
             <if test="maxProcess != null">
                 max_process = #{maxProcess},
             </if>
+            <if test="maxType != null">
+                max_type = #{maxType},
+            </if>
         </set>
         where id = #{id}
     </update>
@@ -173,13 +184,14 @@
             people_count =  #{peopleCount,jdbcType=INTEGER},
             frequency =  #{frequency,jdbcType=INTEGER},
             max_duration = #{maxDuration},
-            max_process = #{maxProcess}
+            max_process = #{maxProcess},
+            max_type = #{maxType}
         where   order_no =  #{orderNo,jdbcType=VARCHAR}
     </update>
 
     <select id="selectByOrderNo"  resultMap="TOrderPublicReleaseCountMap">
         select
-            id, order_no, actual_duration, people_count, frequency, create_time,max_duration, max_process
+            id, order_no, actual_duration, people_count, frequency, create_time,max_duration, max_process,max_type
         from t_order_public_release_count
         where  order_no =  #{orderNo,jdbcType=VARCHAR}
     </select>

+ 14 - 2
src/main/java/com/goafanti/common/model/TOrderPublicReleaseCount.java

@@ -8,10 +8,10 @@ import java.util.Date;
  * 订单公出信息表(TOrderPublicReleaseCount)实体类
  *
  * @author makejava
- * @since 2024-09-20 15:06:27
+ * @since 2024-09-20 15:22:04
  */
 public class TOrderPublicReleaseCount implements Serializable {
-    private static final long serialVersionUID = -48873019104034328L;
+    private static final long serialVersionUID = -56144493896307473L;
 
     private Integer id;
     /**
@@ -42,6 +42,10 @@ public class TOrderPublicReleaseCount implements Serializable {
      * 最大公出审核 0=未发起,1=技术总监审核中,2=财务总监审核中,3=驳回,4=完成
      */
     private Integer maxProcess;
+    /**
+     * 最大分类 0=不能公出,1=时间内公出,2=未设置公出
+     */
+    private Integer maxType;
 
 
     public Integer getId() {
@@ -108,5 +112,13 @@ public class TOrderPublicReleaseCount implements Serializable {
         this.maxProcess = maxProcess;
     }
 
+    public Integer getMaxType() {
+        return maxType;
+    }
+
+    public void setMaxType(Integer maxType) {
+        this.maxType = maxType;
+    }
+
 }
 

+ 26 - 10
src/main/java/com/goafanti/order/service/impl/OrderNewServiceImpl.java

@@ -726,17 +726,14 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 					}
 					count++;
 		}
-		TOrderPublicReleaseCount out = null;
-		out=new TOrderPublicReleaseCount();
+		TOrderPublicReleaseCount out = new TOrderPublicReleaseCount();
 		out.setOrderNo(orderNew.getOrderNo());
 		out.setActualDuration(durationCount.doubleValue());
 		out.setPeopleCount(peopleList.size());
 		out.setFrequency(count);
 		TOrderPublicReleaseCount tOrderPublicReleaseCount = tOrderPublicReleaseCountMapper.selectByOrderNo(orderNew.getOrderNo());
-		//获取最大值
-		BigDecimal maxDuration = pushOrderMaxDuration(orderNew);
-		out.setMaxDuration(maxDuration.doubleValue());
-		out.setMaxProcess(4);
+		//将最大值、审核状态与最大分类传入
+		pushOrderMaxDuration(orderNew,out);
 		if (tOrderPublicReleaseCount!=null){
 			tOrderPublicReleaseCountMapper.updateByOrderNo(out);
 		}else {
@@ -746,7 +743,7 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 
 	}
 
-	private BigDecimal pushOrderMaxDuration(TOrderNew orderNew) {
+	private void pushOrderMaxDuration(TOrderNew orderNew,TOrderPublicReleaseCount out) {
 		BigDecimal maxDuration = BigDecimal.ZERO;
 		//获取会员信息
 		List<TTaskMember> tTaskMembers = tTaskMemberMapper.selectByOrderNo(orderNew.getOrderNo());
@@ -760,9 +757,18 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 			if (maxDuration.compareTo(new BigDecimal(-1))==0){
 				orderYearMaxDuration.setMaxDuration(BigDecimal.ZERO);
 				orderYearMaxDuration.setStatus(1);
+				out.setMaxDuration(BigDecimal.ZERO.doubleValue());
+				out.setMaxType(2);
+			}else if (maxDuration.compareTo(new BigDecimal(0))==0){
+				orderYearMaxDuration.setMaxDuration(BigDecimal.ZERO);
+				orderYearMaxDuration.setStatus(0);
+				out.setMaxDuration(BigDecimal.ZERO.doubleValue());
+				out.setMaxType(0);
 			}else {
 				orderYearMaxDuration.setMaxDuration(maxDuration);
 				orderYearMaxDuration.setStatus(0);
+				out.setMaxDuration(BigDecimal.ZERO.doubleValue());
+				out.setMaxType(1);
 			}
 			orderYearMaxDuration.setOrderNo(orderNew.getOrderNo());
 			orderYearMaxDurationMapper.insert(orderYearMaxDuration);
@@ -785,12 +791,22 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 				for (Integer year : collect) {
 					OrderYearMaxDuration orderYearMaxDuration = new OrderYearMaxDuration();
 					orderYearMaxDuration.setYear(year);
+					//需修改成判定
 					if (maxDuration.compareTo(new BigDecimal(-1))==0){
 						orderYearMaxDuration.setMaxDuration(BigDecimal.ZERO);
 						orderYearMaxDuration.setStatus(1);
+						out.setMaxDuration(BigDecimal.ZERO.doubleValue());
+						out.setMaxType(2);
+					}else if (maxDuration.compareTo(new BigDecimal(0))==0){
+						orderYearMaxDuration.setMaxDuration(BigDecimal.ZERO);
+						orderYearMaxDuration.setStatus(0);
+						out.setMaxDuration(BigDecimal.ZERO.doubleValue());
+						out.setMaxType(0);
 					}else {
-						orderYearMaxDuration.setMaxDuration(maxDuration.multiply(new BigDecimal(i)));
+						orderYearMaxDuration.setMaxDuration(maxDuration);
 						orderYearMaxDuration.setStatus(0);
+						out.setMaxDuration(BigDecimal.ZERO.doubleValue());
+						out.setMaxType(1);
 					}
 					orderYearMaxDuration.setOrderNo(orderNew.getOrderNo());
 					i++;
@@ -826,7 +842,7 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 				}
 			}
 		}
-		return maxDuration;
+
 	}
 
 	private  Integer extractYear(String yearStr) {
@@ -906,7 +922,7 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 			res=BigDecimal.valueOf(120);
 
 		} else if (totalAmount.compareTo(BigDecimal.valueOf(10))>=0) {
-			res=BigDecimal.valueOf(-1);
+			res=BigDecimal.ZERO;
 		}
 		return res;
 	}

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

@@ -5,12 +5,12 @@ jdbc.driverClassName=com.mysql.jdbc.Driver
 static.host=//172.16.1.187/1.3.25
 
 #jdbc.url=jdbc\:mysql://localhost:3306/aft20240430?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
-jdbc.url=jdbc\:mysql://localhost:3306/aft?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
-jdbc.username=root
-jdbc.password=123456
-#jdbc.url=jdbc:mysql://101.37.32.31:3306/aft?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
+#jdbc.url=jdbc\:mysql://localhost:3306/aft?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
 #jdbc.username=root
-#jdbc.password=aftdev
+#jdbc.password=123456
+jdbc.url=jdbc:mysql://101.37.32.31:3306/aft?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
+jdbc.username=root
+jdbc.password=aftdev
 jdbc.validationQuery=SELECT 'x'
 jdbc.initialSize=3
 jdbc.maxActive=20