2 // KenzoMarkCommand.swift
5 // Created by Hori,Masaki on 2017/01/12.
6 // Copyright © 2017年 Hori,Masaki. All rights reserved.
11 final class KenzoMarkCommand: JSONCommand {
13 override func execute() {
15 guard let kdockId = parameter["api_kdock_id"].int else {
17 return Logger.shared.log("api_kdock_id is wrong")
20 let store = ServerDataStore.default
22 guard let kenzoDock = store.kenzoDock(by: kdockId) else {
24 return Logger.shared.log("KenzoDock is not fount")
27 let fuel = kenzoDock.item1
28 let bull = kenzoDock.item2
29 let steel = kenzoDock.item3
30 let bauxite = kenzoDock.item4
31 let kaihatu = kenzoDock.item5
32 let shipId = kenzoDock.created_ship_id
34 guard let flagShip = store.masterShip(by: shipId) else {
36 return Logger.shared.log("MasterShip is not found")
39 let localStore = LocalDataStore.oneTimeEditor()
40 guard let new = localStore.createKenzoHistory() else {
42 return Logger.shared.log("Can not create KenzoHistory")
45 new.name = flagShip.name
46 new.sTypeId = flagShip.stype.id
51 new.kaihatusizai = kaihatu
53 (new.flagShipLv, new.flagShipName, new.commanderLv) =
54 markedValues(fuel: fuel,
63 // swiftlint:disable function_parameter_count
64 private func markedValues(fuel: Int,
70 shipId: Int) -> (Int, String, Int) {
72 let store = LocalDataStore.default
74 if let kenzoMark = store.kenzoMark(fuel: fuel,
78 kaihatusizai: kaihatu,
82 return (kenzoMark.flagShipLv, kenzoMark.flagShipName, kenzoMark.commanderLv)