Commit c774bcc4 by java-温文海

导出,及查询逻辑修改

parent da56fc60
......@@ -193,56 +193,32 @@
foc_airline_sta favt
WHERE
favt.del_flag = #{DEL_FLAG_NORMAL}
<choose>
<!--当出发地不为空,目的地不为空 -->
<when test="(depIata != null and depIata != '') and (arrIata != null and arrIata != '')">
AND ( favt.dep_iata LIKE
<if test="dbName == 'oracle'">'%'||#{depIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{depIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{depIata}, '%')</if>
or favt.arr_iata LIKE
<if test="dbName == 'oracle'">'%'||#{depIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{depIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{depIata}, '%')</if>
)
or ( favt.dep_iata LIKE
<if test="dbName == 'oracle'">'%'||#{arrIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{arrIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{arrIata}, '%')</if>
or favt.arr_iata LIKE
<if test="dbName == 'oracle'">'%'||#{arrIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{arrIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{arrIata}, '%')</if>
)
</when>
<!--当出发地不为空,目的地为空 -->
<when test="(depIata != null and depIata != '') and (arrIata == null and arrIata == '')">
AND ( favt.dep_iata LIKE
<if test="dbName == 'oracle'">'%'||#{depIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{depIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{depIata}, '%')</if>
or favt.arr_iata LIKE
<if test="dbName == 'oracle'">'%'||#{depIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{depIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{depIata}, '%')</if>
)
</when>
<!--当出发地为空,目的地不为空 -->
<when test="(depIata == null and depIata == '') and (arrIata != null and arrIata != '')">
and ( favt.dep_iata LIKE
<if test="dbName == 'oracle'">'%'||#{arrIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{arrIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{arrIata}, '%')</if>
or favt.arr_iata LIKE
<if test="dbName == 'oracle'">'%'||#{arrIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{arrIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{arrIata}, '%')</if>
)
</when>
<otherwise>
</otherwise>
</choose>
<!--当出发地不为空,目的地为空 -->
<if test="(depIata != null and depIata != '') ">
AND ( favt.dep_iata LIKE
<if test="dbName == 'oracle'">'%'||#{depIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{depIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{depIata}, '%')</if>
or favt.arr_iata LIKE
<if test="dbName == 'oracle'">'%'||#{depIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{depIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{depIata}, '%')</if>
)
</if>
<!--当出发地为空,目的地不为空 -->
<if test=" (arrIata != null and arrIata != '')">
and ( favt.dep_iata LIKE
<if test="dbName == 'oracle'">'%'||#{arrIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{arrIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{arrIata}, '%')</if>
or favt.arr_iata LIKE
<if test="dbName == 'oracle'">'%'||#{arrIata}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{arrIata}+'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{arrIata}, '%')</if>
)
</if>
</select>
</mapper>
\ No newline at end of file
......@@ -3,6 +3,7 @@
*/
package com.ejweb.modules.airport.api;
import com.alibaba.fastjson.JSON;
import com.ejweb.core.api.RequestBean;
import com.ejweb.core.api.ResponseBean;
import com.ejweb.core.base.PageEntity;
......@@ -11,6 +12,7 @@ import com.ejweb.core.conf.GConstants;
import com.ejweb.core.utils.excel.ExportExcel;
import com.ejweb.modules.airport.bean.StatisticalBean;
import com.ejweb.modules.airport.bean.StatisticalListBean;
import com.ejweb.modules.airport.bean.TypeBean;
import com.ejweb.modules.airport.entity.StatisticalEntity;
import com.ejweb.modules.airport.entity.StatisticalListEntity;
import com.ejweb.modules.airport.service.StatisticalService;
......@@ -136,10 +138,25 @@ public class StatisticalController {
List<StatisticalListEntity> list = new ArrayList<StatisticalListEntity>();
if (page != null) {// 查询结果为空
list = page.getList();
String fileName = "航线论证数据统计.xlsx";
for (StatisticalListEntity s:list
) {
//航线状态自定义
if (s.getAirlineStatus() == 0){
s.setStatus("失效");
}
if (s.getAirlineStatus() == 1){
s.setStatus("有效");
}
//机型状态自定义
List<TypeBean> typeBeans = JSON.parseArray(s.getAirlineJson(),TypeBean.class);
s.setTypeOne(typeInfo(typeBeans.get(typeBeans.size()-typeBeans.size()),s.getAirlineStatus()));
s.setTypeTwo(typeInfo(typeBeans.get(typeBeans.size()-3),s.getAirlineStatus()));
s.setTypeThree(typeInfo(typeBeans.get(typeBeans.size()-2),s.getAirlineStatus()));
s.setTypeFour(typeInfo(typeBeans.get(typeBeans.size()-1),s.getAirlineStatus()));
}
String fileName = "航线执行期监控统计.xlsx";
try {
new ExportExcel("航线论证数据统计", StatisticalEntity.class).setDataList(list).write(response, fileName).dispose();
new ExportExcel("航线执行期监控统计", StatisticalListEntity.class).setDataList(list).write(response, fileName).dispose();
} catch (IOException e) {
responseBean.setMessage("导出数据失败" + e.getMessage());
return responseBean;
......@@ -154,4 +171,24 @@ public class StatisticalController {
responseBean.setStatus(ErrorCode.STATUS_CODE_4001);
return responseBean;
}
private String typeInfo(TypeBean s,Integer status){
if (status == 0){
if (s.getStatus() == 3){
return "不可用";
}
return "论证失效";
}else{
if (s.getStatus() == 1){
return s.getLastTime();
}
if (s.getStatus() == 2){
return "可用";
}
if (s.getStatus() == 3){
return "不可用";
}
}
return null;
}
}
package com.ejweb.modules.airport.bean;
import com.ejweb.core.base.BaseEntity;
public class TypeBean extends BaseEntity {
private static final long serialVersionUID = -4211749532324022040L;
private String type;
private Integer status;
private String lastTime;
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public String getLastTime() {
return lastTime;
}
public void setLastTime(String lastTime) {
this.lastTime = lastTime;
}
}
package com.ejweb.modules.airport.entity;
import com.ejweb.core.base.BaseEntity;
import com.ejweb.core.utils.excel.annotation.ExcelField;
import java.util.List;
......@@ -16,6 +17,16 @@ public class StatisticalListEntity extends BaseEntity {
private int airlineStatus;
private String airlineJson;
private String status;
private String typeOne;
private String typeTwo;
private String typeThree;
private String typeFour;
public String getArrIata() {
return arrIata;
}
......@@ -24,6 +35,7 @@ public class StatisticalListEntity extends BaseEntity {
this.arrIata = arrIata;
}
@ExcelField(title="起飞", type=0, align=1, sort=19 )
public String getArrIataName() {
return arrIataName;
}
......@@ -40,6 +52,7 @@ public class StatisticalListEntity extends BaseEntity {
this.depIata = depIata;
}
@ExcelField(title="终点", type=0, align=1, sort=20 )
public String getDepIataName() {
return depIataName;
}
......@@ -48,6 +61,7 @@ public class StatisticalListEntity extends BaseEntity {
this.depIataName = depIataName;
}
@ExcelField(title="最后一班航班时间", type=0, align=1, sort=25 )
public String getLastAirlineTime() {
return lastAirlineTime;
}
......@@ -72,6 +86,7 @@ public class StatisticalListEntity extends BaseEntity {
this.airlineJson = airlineJson;
}
public String getUpdateTime() {
return updateTime;
}
......@@ -79,4 +94,49 @@ public class StatisticalListEntity extends BaseEntity {
public void setUpdateTime(String updateTime) {
this.updateTime = updateTime;
}
@ExcelField(title="A319/A320", type=0, align=1, sort=21 )
public String getTypeOne() {
return typeOne;
}
public void setTypeOne(String typeOne) {
this.typeOne = typeOne;
}
@ExcelField(title="A321", type=0, align=1, sort=22 )
public String getTypeTwo() {
return typeTwo;
}
public void setTypeTwo(String typeTwo) {
this.typeTwo = typeTwo;
}
@ExcelField(title="A320neo", type=0, align=1, sort=23 )
public String getTypeThree() {
return typeThree;
}
public void setTypeThree(String typeThree) {
this.typeThree = typeThree;
}
@ExcelField(title="A330", type=0, align=1, sort=24 )
public String getTypeFour() {
return typeFour;
}
public void setTypeFour(String typeFour) {
this.typeFour = typeFour;
}
@ExcelField(title="航线状态", type=0, align=1, sort=26 )
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
}
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