Commit acaa60ef authored by shigemi miura's avatar shigemi miura

Merge fix-task into develop

parents 884ca2d0 a31f3a2d
...@@ -1234,7 +1234,7 @@ ...@@ -1234,7 +1234,7 @@
"$(inherited)", "$(inherited)",
"@executable_path/Frameworks", "@executable_path/Frameworks",
); );
MARKETING_VERSION = 0.9.4; MARKETING_VERSION = 0.9.5;
OTHER_SWIFT_FLAGS = "-D CANARY -D COCOAPODS"; OTHER_SWIFT_FLAGS = "-D CANARY -D COCOAPODS";
PRODUCT_BUNDLE_IDENTIFIER = com.jrc.sailassist.canary; PRODUCT_BUNDLE_IDENTIFIER = com.jrc.sailassist.canary;
PRODUCT_NAME = "Sail Assist"; PRODUCT_NAME = "Sail Assist";
...@@ -1277,7 +1277,7 @@ ...@@ -1277,7 +1277,7 @@
"$(inherited)", "$(inherited)",
"@executable_path/Frameworks", "@executable_path/Frameworks",
); );
MARKETING_VERSION = 0.9.4; MARKETING_VERSION = 0.9.5;
OTHER_SWIFT_FLAGS = "-D COCOAPODS"; OTHER_SWIFT_FLAGS = "-D COCOAPODS";
PRODUCT_BUNDLE_IDENTIFIER = com.jrc.sailassist; PRODUCT_BUNDLE_IDENTIFIER = com.jrc.sailassist;
PRODUCT_NAME = "Sail Assist"; PRODUCT_NAME = "Sail Assist";
...@@ -1463,7 +1463,7 @@ ...@@ -1463,7 +1463,7 @@
"$(inherited)", "$(inherited)",
"@executable_path/Frameworks", "@executable_path/Frameworks",
); );
MARKETING_VERSION = 0.9.4; MARKETING_VERSION = 0.9.5;
OTHER_SWIFT_FLAGS = "-D QC -D COCOAPODS"; OTHER_SWIFT_FLAGS = "-D QC -D COCOAPODS";
PRODUCT_BUNDLE_IDENTIFIER = com.jrc.sailassist.qc; PRODUCT_BUNDLE_IDENTIFIER = com.jrc.sailassist.qc;
PRODUCT_NAME = "Sail Assist"; PRODUCT_NAME = "Sail Assist";
......
This diff is collapsed.
...@@ -256,6 +256,9 @@ struct LoginView: View { ...@@ -256,6 +256,9 @@ struct LoginView: View {
// let ecaArea = EcaArea() // let ecaArea = EcaArea()
// ecaArea.start() // ecaArea.start()
let eca = EcaTask()
eca.start()
timer = Timer.scheduledTimer(withTimeInterval: TimerInterval, repeats: true) { _ in timer = Timer.scheduledTimer(withTimeInterval: TimerInterval, repeats: true) { _ in
print(debug: "called timer") print(debug: "called timer")
let eca = EcaTask() let eca = EcaTask()
......
...@@ -32,8 +32,8 @@ struct MapRepresentable: UIViewControllerRepresentable{ ...@@ -32,8 +32,8 @@ struct MapRepresentable: UIViewControllerRepresentable{
if let focusEcaName = ecaData.focusEca, let focusEca = ecaData.ecaArea[focusEcaName]{ if let focusEcaName = ecaData.focusEca, let focusEca = ecaData.ecaArea[focusEcaName]{
mapVC.updateCamera(location: focusEca.centerPosition, zoomlevel: focusEca.zoomLevel) mapVC.updateCamera(location: focusEca.centerPosition, zoomlevel: focusEca.zoomLevel)
mapVC.updateOneTimeEca(eca: focusEca.points) mapVC.updateOneTimeEca(eca: focusEca.points)
//5秒後削除 //10秒後削除
DispatchQueue.main.asyncAfter(deadline: .now() + 5.0) { DispatchQueue.main.asyncAfter(deadline: .now() + 10.0) {
do{ do{
mapVC.updateOneTimeEca(eca: nil) mapVC.updateOneTimeEca(eca: nil)
}catch{ }catch{
......
...@@ -81,31 +81,15 @@ struct MapTaskView: View { ...@@ -81,31 +81,15 @@ struct MapTaskView: View {
Spacer() Spacer()
.frame(height: 55) .frame(height: 55)
} }
.onAppear{ .onAppear{
EcaCoordinatesTable().setEcaData() EcaCoordinatesTable().setEcaData()
} }
.alert("", isPresented: $eca.isShowEcaAlert) { .alert("", isPresented: $eca.isShowEcaAlert) {
if let ecaArea = eca.ecaArea.map({ $0.1 }).filter({ $0.isRunning }).first{ if let ecaArea = eca.ecaArea.map({ $0.1 }).filter({ $0.isRunning }).first{
if SharingData.my.ecaStatus == .finishPass{ Button("OK"){
Button("Yes"){ let ecaTask = EcaTask()
var newData = ecaArea ecaTask.chengeEcaStatus(eca: ecaArea)
newData.isRunning = false
newData.status = EcaState.end
SharingData.eca.editEcaArea(key: ecaArea.name, value: newData, type: EcaOperation.Finish)
}
Button("No"){
var newData = ecaArea
newData.isRunning = false
newData.status = EcaState.incomplete
SharingData.eca.editEcaArea(key: ecaArea.name, value: newData, type: EcaOperation.Incomplete)
}
}else{
Button("OK"){
let ecaTask = EcaTask()
ecaTask.chengeEcaStatus(eca: ecaArea)
}
} }
} }
} message: { } message: {
...@@ -117,7 +101,7 @@ struct MapTaskView: View { ...@@ -117,7 +101,7 @@ struct MapTaskView: View {
case .startPass: case .startPass:
Text("Arrived at switching start point.") Text("Arrived at switching start point.")
case .finishPass: case .finishPass:
Text("Have you finished \(ecaArea.name) fuel switching?") Text("Have you finished \(ecaArea.name) fuel switching?\nIf you finish, you disable it.")
case .incomplete: case .incomplete:
Text("Have you finished \(ecaArea.name) fuel switching?\nIf you finish, you disable it.") Text("Have you finished \(ecaArea.name) fuel switching?\nIf you finish, you disable it.")
default: default:
......
...@@ -7,16 +7,18 @@ ...@@ -7,16 +7,18 @@
import SwiftUI import SwiftUI
enum EcaAlertType: String { //enum EcaAlertType: String {
case ecaDelete // case ecaDelete
case ecaRunningStop // case ecaRunningStop
} //}
struct TaskSwitchingMenuView: View { struct TaskSwitchingMenuView: View {
@ObservedObject var taskViewModel: TaskViewModel @ObservedObject var taskViewModel: TaskViewModel
@ObservedObject var ecaData = SharingData.eca @ObservedObject var ecaData = SharingData.eca
@State var isEcaAlert : Bool = false // @State var isEcaAlert : Bool = false
@State var ecaAlertType: EcaAlertType = .ecaDelete // @State var ecaAlertType: EcaAlertType = .ecaDelete
@State var isDeleteAlert: Bool = false
@State var isRunningStopAlert: Bool = false
let deleteEcaArea = DeleteEcaArea() let deleteEcaArea = DeleteEcaArea()
var body: some View { var body: some View {
...@@ -29,10 +31,9 @@ struct TaskSwitchingMenuView: View { ...@@ -29,10 +31,9 @@ struct TaskSwitchingMenuView: View {
for runningEca in ecaData.ecaArea.map({ $0.1 }).filter({ $0.isRunning }){ for runningEca in ecaData.ecaArea.map({ $0.1 }).filter({ $0.isRunning }){
taskViewModel.edittingEcaArea = runningEca taskViewModel.edittingEcaArea = runningEca
taskViewModel.ecaName = runningEca.name taskViewModel.ecaName = runningEca.name
isEcaAlert = true isRunningStopAlert = true
ecaAlertType = .ecaRunningStop
} }
if isEcaAlert == false { if isRunningStopAlert == false {
var newData = eca var newData = eca
newData.isRunning = true newData.isRunning = true
newData.status = EcaState.running newData.status = EcaState.running
...@@ -54,9 +55,9 @@ struct TaskSwitchingMenuView: View { ...@@ -54,9 +55,9 @@ struct TaskSwitchingMenuView: View {
.onTapGesture { .onTapGesture {
ecaData.focusEca = eca.name ecaData.focusEca = eca.name
} }
Spacer() Spacer()
Menu { Menu {
Text(eca.name) Text(eca.name)
...@@ -67,12 +68,11 @@ struct TaskSwitchingMenuView: View { ...@@ -67,12 +68,11 @@ struct TaskSwitchingMenuView: View {
} label: { } label: {
Text("Edit Notice Setting") Text("Edit Notice Setting")
} }
Button{ Button{
taskViewModel.edittingEcaArea = eca taskViewModel.edittingEcaArea = eca
taskViewModel.ecaName = eca.name taskViewModel.ecaName = eca.name
isEcaAlert = true isDeleteAlert = true
ecaAlertType = .ecaDelete
} label: { } label: {
Text("Delete ECA Task") Text("Delete ECA Task")
} }
...@@ -82,37 +82,44 @@ struct TaskSwitchingMenuView: View { ...@@ -82,37 +82,44 @@ struct TaskSwitchingMenuView: View {
.foregroundColor(eca.isRunning ? ColorSet.Splash.color : ColorSet.Slidebar.color) .foregroundColor(eca.isRunning ? ColorSet.Splash.color : ColorSet.Slidebar.color)
} }
.disabled(eca.isRunning) .disabled(eca.isRunning)
.alert(isPresented: $isEcaAlert) { .alert("Delete", isPresented: $isDeleteAlert) {
switch ecaAlertType { Button("Yes") {
case .ecaDelete: if let ecaArea = taskViewModel.edittingEcaArea {
return Alert(title: Text("Delete"), var newData = ecaArea
message: Text("Do you delete " + taskViewModel.ecaName + "?"), newData.isEnable = false
primaryButton: .default(Text("No")), newData.status = EcaState.cancel
secondaryButton: .cancel(Text("Yes"), action: {
if let ecaArea = taskViewModel.edittingEcaArea {
var newData = ecaArea
newData.isEnable = false
newData.status = EcaState.cancel
ecaData.editEcaArea(key: ecaArea.name, value: newData, type: EcaOperation.Delete) ecaData.editEcaArea(key: ecaArea.name, value: newData, type: EcaOperation.Delete)
deleteEcaArea.start(ecaId: ecaArea.id) deleteEcaArea.start(ecaId: ecaArea.id)
} }
taskViewModel.edittingEcaArea = nil taskViewModel.edittingEcaArea = nil
})) }
case .ecaRunningStop: Button("No"){}
return Alert(title: Text("Stop"), } message: {
message: Text("Do you want to stop " + taskViewModel.ecaName + "?"), Text("Do you delete " + taskViewModel.ecaName + "?")
primaryButton: .default(Text("Cancel")), }
secondaryButton: .cancel(Text("Stop"), action: { .alert("Fuel Switching", isPresented:$isRunningStopAlert) {
if let ecaArea = taskViewModel.edittingEcaArea { Button("Yes") {
var newData = ecaArea if let ecaArea = taskViewModel.edittingEcaArea {
newData.isRunning = false var newData = ecaArea
newData.status = EcaState.cancel newData.isRunning = false
ecaData.editEcaArea(key: ecaArea.name, value: newData, type: EcaOperation.Cancel) newData.status = EcaState.end
} ecaData.editEcaArea(key: ecaArea.name, value: newData, type: EcaOperation.End)
taskViewModel.edittingEcaArea = nil }
})) taskViewModel.edittingEcaArea = nil
} }
Button("No"){}
// Button("Cancel"){¥
// if let ecaArea = taskViewModel.edittingEcaArea {
// var newData = ecaArea
// newData.isRunning = false
// newData.status = EcaState.cancel
// ecaData.editEcaArea(key: ecaArea.name, value: newData, type: EcaOperation.Cancel)
// }
// taskViewModel.edittingEcaArea = nil
// }
} message: {
Text("Do you delete " + taskViewModel.ecaName + "?")
} }
} }
.frame(height: 60) .frame(height: 60)
......
...@@ -14,6 +14,7 @@ enum EcaOperation { ...@@ -14,6 +14,7 @@ enum EcaOperation {
case Notice case Notice
case Start case Start
case Finish case Finish
case End
case Incomplete case Incomplete
case Change case Change
case Cancel case Cancel
...@@ -186,6 +187,16 @@ class SharingData{ ...@@ -186,6 +187,16 @@ class SharingData{
task.status = setEcaStatus(eca: value) task.status = setEcaStatus(eca: value)
} }
setEcaArea.start(eca: task) setEcaArea.start(eca: task)
case EcaOperation.End:
task.areaId = value.id
task.taskName = value.name
task.noticeRange = value.swNotice
task.startRange = value.swStart
task.finishRange = value.swFinish
if value.isEnable {
task.status = setEcaStatus(eca: value)
}
setEcaArea.start(eca: task)
case EcaOperation.Incomplete: case EcaOperation.Incomplete:
task.areaId = value.id task.areaId = value.id
task.taskName = value.name task.taskName = value.name
......
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