Commit 56067a6c by 罗胜

2022-03-24 罗胜

1.油量分析增加获取飞行计划接口睡觉
2.航班执行期监控增加A321neo机型
parent 91606b28
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
<dependency> <dependency>
<groupId>com.alibaba</groupId> <groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId> <artifactId>fastjson</artifactId>
<version>1.2.7</version> <version>1.2.76</version>
</dependency> </dependency>
<dependency> <dependency>
...@@ -72,9 +72,11 @@ ...@@ -72,9 +72,11 @@
<artifactId>slf4j-jdk14</artifactId> <artifactId>slf4j-jdk14</artifactId>
<version>1.8.0-beta4</version> <version>1.8.0-beta4</version>
</dependency> </dependency>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.6.6</version>
</dependency>
</dependencies> </dependencies>
<build> <build>
<plugins> <plugins>
...@@ -104,7 +106,7 @@ ...@@ -104,7 +106,7 @@
<transformers> <transformers>
<transformer <transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.foc.DspReleaseInfoTask</mainClass> <mainClass>com.foc.StatisticalTask</mainClass>
</transformer> </transformer>
</transformers> </transformers>
</configuration> </configuration>
......
...@@ -42,5 +42,7 @@ public class DspReleaseInfoTask { ...@@ -42,5 +42,7 @@ public class DspReleaseInfoTask {
dates.add(LocalDate.now()); dates.add(LocalDate.now());
} }
DspReleaseInfoService.addInfo(dates); DspReleaseInfoService.addInfo(dates);
DspReleaseInfoService.addPltPlan(dates.get(0).plusDays(-1));
// DspReleaseInfoService.addHistoryPltPlan();
} }
} }
...@@ -2,6 +2,7 @@ package com.foc.dao; ...@@ -2,6 +2,7 @@ package com.foc.dao;
import com.foc.entity.DspReleaseInfo; import com.foc.entity.DspReleaseInfo;
import com.foc.entity.Dynamics; import com.foc.entity.Dynamics;
import com.foc.entity.FlightPlan;
import com.foc.entity.StatisticalEntity; import com.foc.entity.StatisticalEntity;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -88,6 +89,13 @@ public interface StatisticalDao { ...@@ -88,6 +89,13 @@ public interface StatisticalDao {
void insertDspReleaseInfo(List<DspReleaseInfo> list); void insertDspReleaseInfo(List<DspReleaseInfo> list);
/** /**
* 批量新增飞行计划
*
* @param list
*/
void insertFltPlanInfo(List<FlightPlan> list);
/**
* 测试批量新增或修改 * 测试批量新增或修改
* *
* @param list * @param list
...@@ -146,7 +154,7 @@ public interface StatisticalDao { ...@@ -146,7 +154,7 @@ public interface StatisticalDao {
* @param acNo * @param acNo
* @return * @return
*/ */
String selectAcTypeNameByAcNo(@Param(value="acNo") String acNo); String selectAcTypeNameByAcNo(@Param(value="acNo") String acNo,@Param("year") int year);
/** /**
* 根据三字码获取四字码 * 根据三字码获取四字码
...@@ -154,4 +162,7 @@ public interface StatisticalDao { ...@@ -154,4 +162,7 @@ public interface StatisticalDao {
* @return * @return
*/ */
String selectIcaoIdByTataId(@Param(value="iataId")String iataId); String selectIcaoIdByTataId(@Param(value="iataId")String iataId);
List<DspReleaseInfo> selectReleaseInfoByDate(@Param("startTime") String startTime,@Param("endTime") String endTime);
} }
...@@ -12,6 +12,8 @@ import java.util.Date; ...@@ -12,6 +12,8 @@ import java.util.Date;
@Data @Data
public class DspReleaseInfo { public class DspReleaseInfo {
private Integer id;
private String sendTime; private String sendTime;
private String flightNo; private String flightNo;
...@@ -71,4 +73,15 @@ public class DspReleaseInfo { ...@@ -71,4 +73,15 @@ public class DspReleaseInfo {
private String arrIcaoId; private String arrIcaoId;
private String depIcaoId; private String depIcaoId;
private String extraOilConclusion;
private String extraOilFuelReasonNew;
private String arrAltIataId;
private String flightTime;
//源系统签派放行ID
// private String orgDispatchInfoId;
} }
package com.foc.entity;
import lombok.Data;
import java.util.Date;
/**
* @author ls
* @date 2022-02-28 14:37
*/
@Data
public class FlightPlan {
private String flightNo;
private String std;
private String depIataId;
private String arrIataId;
private String cfpFlag;
private Integer takeoffWeight;
private Integer landingWeight;
private Integer payloadWeight;
private Integer zeroFuel;
private Integer kalCargoLoad;
private Integer maximumFuelCapacity;
private Integer total;
private String totalTime;
private Integer trip;
private String tripTime;
private Integer tripDist;
private String arrivalTime;
private Integer alternateFuel;
private String alternateTime;
private Integer alternateDist;
private Integer taxiOut;
private String taxiOutTime;
private Integer hold;
private Integer reserve;
private String reserveTime;
private Integer extra;
private String extraTime;
private Integer limitingTakeoffWeight;
private Integer limitingLandingWeight;
private String customExtraTime;
private Integer etop;
private String etopTime;
private Integer planLeftOver;
private Date createDate;
private Date updateDate;
private Integer dynamicsStaId;
}
package com.foc.entity;
import lombok.Data;
/**
*
* @Author luos
* @Date 2022/2/25 15:22
**/
@Data
public class FltPLanInfo {
//飞行计划XML内容
private String planContentsXml;
//起飞地三字码
private String depIataId;
//目的地三字码
private String arrIataId;
//ODS更新时间
private String updatedTime;
//ODS创建时间
private String createdTime;
private String id;
//签派放行信息ID
private String dispatchInfoId;
//计划起飞时间(北京时间)
private String std;
//航班号
private String flightNo;
//飞行计划XML(国际二放)
private String recPlanContentsXml;
//CFP 标志
private String cfpFlag;
}
...@@ -71,14 +71,13 @@ public class DynamicFlightService { ...@@ -71,14 +71,13 @@ public class DynamicFlightService {
return verifyAcTypes; return verifyAcTypes;
} }
public static void public static void sta() {
sta() {
StatisticalDao dao = session.getMapper(StatisticalDao.class); StatisticalDao dao = session.getMapper(StatisticalDao.class);
//总机型集合 //总机型集合
List<String> verifyAcTypes = getVerifyAcType(); List<String> verifyAcTypes = getVerifyAcType();
//获取航班动态表中所有航班性质为A,J,G,状态不为CNL,子机型为319/A320,321,320neo,330的航线的最后一班时间 //获取航班动态表中所有航班性质为A,J,G,状态不为CNL,子机型为319/A320,321,320neo,330,321neo的航线的最后一班时间
//String date = DateUtils.getLastDate(); // String date = DateUtils.getLastDate();
String date=DateUtils.getTime("yyyy-MM-dd 23:59:59"); String date=DateUtils.getTime("yyyy-MM-dd 23:59:59");
List<StatisticalEntity> list = dao.getFlightList(date); List<StatisticalEntity> list = dao.getFlightList(date);
List<StatisticalEntity> slist = new ArrayList<>(); List<StatisticalEntity> slist = new ArrayList<>();
...@@ -175,4 +174,6 @@ public class DynamicFlightService { ...@@ -175,4 +174,6 @@ public class DynamicFlightService {
session.close(); session.close();
} }
} }
...@@ -26,7 +26,7 @@ toEmail=zangtao@bbdtek.com ...@@ -26,7 +26,7 @@ toEmail=zangtao@bbdtek.com
#,lisu@bbdtek.com #,lisu@bbdtek.com
#lisu@bbdtek.com #lisu@bbdtek.com
fromName=sdhkxxaq fromName=sdhkxxaq
verifyAcType=A319/A320,A321,A320neo,A330 verifyAcType=A319/A320,A320neo,A321,321neo,A330
#uat #uat
#esb.security.account=JD_FOCIMC_UAT #esb.security.account=JD_FOCIMC_UAT
#esb.security.key=SkRfRk9DSU1DX1VBVA0ODw== #esb.security.key=SkRfRk9DSU1DX1VBVA0ODw==
......
...@@ -75,8 +75,8 @@ ...@@ -75,8 +75,8 @@
left join foc_airline_verify a on a.id = sc.verif_id left join foc_airline_verify a on a.id = sc.verif_id
left join foc_aircraft_type b on a.aircraft_type = b.id left join foc_aircraft_type b on a.aircraft_type = b.id
where a.verif_type in ('01','02','03','04') AND a.del_flag = 0 AND (a.flight_type='01' or a.flight_type='02' or where a.verif_type in ('01','02','03','04') AND a.del_flag = 0 AND (a.flight_type='01' or a.flight_type='02' or
a.flight_type='03') a.flight_type='03') and ((a.depIata=#{entity.depIata} and a.arrIata=#{entity.arrIata})
and a.depIata=#{entity.depIata} and a.arrIata=#{entity.arrIata} and b.del_flag=0 or (a.depIata=#{entity.arrIata } and a.arrIata=#{entity.depIata})) and b.del_flag=0 and 180-TIMESTAMPDIFF(DAY,a.start_time,CURRENT_TIMESTAMP)>0
<choose> <choose>
<when test="verifyAcType=='A319/A320'"> <when test="verifyAcType=='A319/A320'">
and upper(b.type_name) like concat(upper(#{verifyAcType}),'%') and upper(b.type_name) like concat(upper(#{verifyAcType}),'%')
...@@ -85,6 +85,7 @@ ...@@ -85,6 +85,7 @@
and upper(b.type_name) = upper(#{verifyAcType}) and upper(b.type_name) = upper(#{verifyAcType})
</otherwise> </otherwise>
</choose> </choose>
order by sc.create_date desc limit 1 order by sc.create_date desc limit 1
</select> </select>
...@@ -125,14 +126,15 @@ ...@@ -125,14 +126,15 @@
ffd.flight_no ffd.flight_no
</select> </select>
<insert id="insertDspReleaseInfo" parameterType="java.util.List"> <insert id="insertDspReleaseInfo" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id">
INSERT INTO foc_flight_dynamics_sta ( send_time, flight_no, std, ac_no, dep_iata_id, arr_iata_id, total_oil, dispatcher_name, extra_oil_fuel_reason, e_e_t, weight_unit INSERT INTO foc_flight_dynamics_sta (id, send_time, flight_no, std, ac_no, dep_iata_id, arr_iata_id, total_oil,
dispatcher_name, extra_oil_fuel_reason, e_e_t, weight_unit
, update_time,create_date,update_date, del_flag , update_time,create_date,update_date, del_flag
,airline_oil,remark_msg,alt1_fuel,alt1_time,alt1_distance,alt2_fuel,alt2_time,alt2_distance,cruising_altitude, ,airline_oil,remark_msg,alt1_fuel,alt1_time,alt1_distance,alt2_fuel,alt2_time,alt2_distance,cruising_altitude,
dep_air_port_name,arr_air_port_name,dispatcher_account,ac_type_name,arr_icao_id,dep_icao_id) dep_air_port_name,arr_air_port_name,dispatcher_account,ac_type_name,arr_icao_id,dep_icao_id,extra_oil_fuel_reason_new,extra_oil_conclusion,arr_alt_iata_id,flight_time)
VALUES VALUES
<foreach collection="list" item="item" index="index" separator=","> <foreach collection="list" item="item" index="index" separator=",">
( (null,
#{item.sendTime} #{item.sendTime}
, #{item.flightNo} , #{item.flightNo}
, #{item.std} , #{item.std}
...@@ -163,6 +165,10 @@ ...@@ -163,6 +165,10 @@
, #{item.acTypeName} , #{item.acTypeName}
, #{item.arrIcaoId} , #{item.arrIcaoId}
, #{item.depIcaoId} , #{item.depIcaoId}
, #{item.extraOilFuelReasonNew}
, #{item.extraOilConclusion}
, #{item.arrAltIataId}
, #{item.flightTime}
) )
</foreach> </foreach>
ON DUPLICATE KEY UPDATE ON DUPLICATE KEY UPDATE
...@@ -175,7 +181,8 @@ ...@@ -175,7 +181,8 @@
</insert> </insert>
<insert id="insertDspReleaseInfo1" parameterType="java.util.List"> <insert id="insertDspReleaseInfo1" parameterType="java.util.List">
INSERT INTO foc_flight_dynamics_sta ( send_time, flight_no, std, ac_no, dep_iata_id, arr_iata_id, total_oil, dispatcher_name, extra_oil_fuel_reason, e_e_t, weight_unit, update_time,create_date,update_date, del_flag ) INSERT INTO foc_flight_dynamics_sta ( send_time, flight_no, std, ac_no, dep_iata_id, arr_iata_id, total_oil,
dispatcher_name, extra_oil_fuel_reason, e_e_t, weight_unit, update_time,create_date,update_date, del_flag )
VALUES VALUES
<foreach collection="list" item="item" index="index" separator=","> <foreach collection="list" item="item" index="index" separator=",">
( (
...@@ -236,6 +243,59 @@ ...@@ -236,6 +243,59 @@
, stc = values(stc) , stc = values(stc)
</insert> </insert>
<insert id="insertFltPlanInfo" parameterType="java.util.List">
INSERT INTO foc_flight_plan ( flight_no, std, dep_iata_id, arr_iata_id, cfp_flag,takeoff_weight,landing_weight,
payload_weight,zero_fuel,kal_cargo_load,
maximum_fuel_capacity,total,total_time,trip,trip_time,trip_dist,arrival_time,alternate_fuel,alternate_time,alternate_dist,
taxi_out,taxi_out_time, `hold`,
etop, etop_time,plan_left_over,reserve,reserve_time,extra,extra_time,custom_extra_time,limiting_takeoff_weight,limiting_landing_weight
, update_date,create_date,dynamics_sta_id)
VALUES
<foreach collection="list" item="item" index="index" separator=",">
(
#{item.flightNo}
, #{item.std}
, #{item.depIataId}
, #{item.arrIataId}
, #{item.cfpFlag}
,#{item.takeoffWeight}
,#{item.landingWeight}
,#{item.payloadWeight}
,#{item.zeroFuel}
,#{item.kalCargoLoad}
,#{item.maximumFuelCapacity}
, #{item.total}
,#{item.totalTime}
, #{item.trip}
,#{item.tripTime}
,#{item.tripDist}
,#{item.arrivalTime}
,#{item.alternateFuel}
,#{item.alternateTime}
,#{item.alternateDist}
, #{item.taxiOut}
, #{item.taxiOutTime}
, #{item.hold}
, #{item.etop}
, #{item.etopTime}
, #{item.planLeftOver}
, #{item.reserve}
, #{item.reserveTime}
, #{item.extra}
, #{item.extraTime}
, #{item.customExtraTime}
, #{item.limitingTakeoffWeight}
, #{item.limitingLandingWeight}
, #{item.updateDate}
, #{item.createDate}
, #{item.dynamicsStaId}
)
</foreach>
</insert>
<select id="getFromBackUp" parameterType="com.foc.entity.StatisticalEntity" resultType="string"> <select id="getFromBackUp" parameterType="com.foc.entity.StatisticalEntity" resultType="string">
select datop_chn select datop_chn
from foc_flight_dynamics_backup from foc_flight_dynamics_backup
...@@ -259,10 +319,13 @@ ...@@ -259,10 +319,13 @@
</select> </select>
<select id="selectAcTypeNameByAcNo" resultType="java.lang.String"> <select id="selectAcTypeNameByAcNo" resultType="java.lang.String">
select IFNULL(verify_ac_type,'') from foc_ac_type_oil where ac_no=#{acNo} select IFNULL(verify_ac_type,'') from foc_ac_type_oil where ac_no=#{acNo} and year=#{year}
</select> </select>
<select id="selectIcaoIdByTataId" resultType="java.lang.String"> <select id="selectIcaoIdByTataId" resultType="java.lang.String">
select airport_icao from foc_airports where airport_iata=#{iataId} select airport_icao from foc_airports where airport_iata=#{iataId}
</select> </select>
<select id="selectReleaseInfoByDate" resultType="com.foc.entity.DspReleaseInfo">
select * from foc_flight_dynamics_sta where std BETWEEN #{startTime} and #{endTime}
</select>
</mapper> </mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment