F4D2CBC818B0555A000EBC59 /* HMKCManagedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = F4D2CBC718B0555A000EBC59 /* HMKCManagedObject.m */; };
F4D2CBCB18B05E58000EBC59 /* HMMaserShipCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F4D2CBCA18B05E58000EBC59 /* HMMaserShipCommand.m */; };
F4E33B5818BF5F67005B8C07 /* HMMemberSlotItemCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E33B5718BF5F67005B8C07 /* HMMemberSlotItemCommand.m */; };
+ F4E7802818DBD2A00011BC4C /* HMGetShipCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E7802718DBD2A00011BC4C /* HMGetShipCommand.m */; };
F4E7802B18DC3A820011BC4C /* HMLocalDataStore.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E7802A18DC3A820011BC4C /* HMLocalDataStore.m */; };
F4E7802E18DC3AF00011BC4C /* LocalData.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = F4E7802C18DC3AF00011BC4C /* LocalData.xcdatamodeld */; };
F4E7803118DC42680011BC4C /* HMKenzoHistory.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E7803018DC42680011BC4C /* HMKenzoHistory.m */; };
F4D2CBCA18B05E58000EBC59 /* HMMaserShipCommand.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HMMaserShipCommand.m; sourceTree = "<group>"; };
F4E33B5618BF5F67005B8C07 /* HMMemberSlotItemCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HMMemberSlotItemCommand.h; sourceTree = "<group>"; };
F4E33B5718BF5F67005B8C07 /* HMMemberSlotItemCommand.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HMMemberSlotItemCommand.m; sourceTree = "<group>"; };
+ F4E7802618DBD2A00011BC4C /* HMGetShipCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HMGetShipCommand.h; sourceTree = "<group>"; };
+ F4E7802718DBD2A00011BC4C /* HMGetShipCommand.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HMGetShipCommand.m; sourceTree = "<group>"; };
F4E7802918DC3A820011BC4C /* HMLocalDataStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HMLocalDataStore.h; sourceTree = "<group>"; };
F4E7802A18DC3A820011BC4C /* HMLocalDataStore.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HMLocalDataStore.m; sourceTree = "<group>"; };
F4E7802D18DC3AF00011BC4C /* LocalData.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = LocalData.xcdatamodel; sourceTree = "<group>"; };
F4513EF518B9F29800073552 /* HMMemberShipCommand.m */,
F4E33B5618BF5F67005B8C07 /* HMMemberSlotItemCommand.h */,
F4E33B5718BF5F67005B8C07 /* HMMemberSlotItemCommand.m */,
+ F4E7802618DBD2A00011BC4C /* HMGetShipCommand.h */,
+ F4E7802718DBD2A00011BC4C /* HMGetShipCommand.m */,
);
name = Command;
sourceTree = "<group>";
F4513EFA18BB699700073552 /* HMShipWindowController.m in Sources */,
F46F104118A9B85E0063E503 /* HMJSONNode.m in Sources */,
F4513EFE18BB6B0C00073552 /* HMKCShipObject.m in Sources */,
+ F4E7802818DBD2A00011BC4C /* HMGetShipCommand.m in Sources */,
F4513EF618B9F29800073552 /* HMMemberShipCommand.m in Sources */,
F4C1190818A746EB005D5B25 /* HMJSONTracker.m in Sources */,
F4513EDD18B619B600073552 /* HMCoreDataManager.m in Sources */,
--- /dev/null
+//
+// HMGetShipCommand.h
+// KCD
+//
+// Created by Hori,Masaki on 2014/03/21.
+// Copyright (c) 2014年 Hori,Masaki. All rights reserved.
+//
+
+#import "HMJSONCommand.h"
+
+@interface HMGetShipCommand : HMJSONCommand
+
+@end
--- /dev/null
+//
+// HMGetShipCommand.m
+// KCD
+//
+// Created by Hori,Masaki on 2014/03/21.
+// Copyright (c) 2014年 Hori,Masaki. All rights reserved.
+//
+
+#import "HMGetShipCommand.h"
+
+#import "HMCoreDataManager.h"
+#import "HMLocalDataStore.h"
+#import "HMKenzoHistory.h"
+
+
+@implementation HMGetShipCommand
++ (void)load
+{
+ static dispatch_once_t onceToken;
+ dispatch_once(&onceToken, ^{
+ [HMJSONCommand registerClass:self];
+ });
+}
+
++ (BOOL)canExcuteAPI:(NSString *)api
+{
+ if([api isEqualToString:@"/kcsapi/api_req_kousyou/getship"]) return YES;
+
+ return NO;
+}
+- (void)execute
+{
+ NSManagedObjectContext *context = [[HMCoreDataManager defaultManager] managedObjectContext];
+ NSFetchRequest *req = [NSFetchRequest fetchRequestWithEntityName:@"KenzoDock"];
+ NSPredicate *predicate = [NSPredicate predicateWithFormat:@"id = %@", [self.arguments valueForKey:@"api_kdock_id"]];
+ [req setPredicate:predicate];
+
+ NSArray *array = [context executeFetchRequest:req error:NULL];
+ if([array count] == 0) {
+ NSLog(@"KenzoDock data is invalid.");
+ return;
+ }
+
+ id kdock = array[0];
+ NSNumber *item1 = [kdock valueForKey:@"item1"];
+
+ req = [NSFetchRequest fetchRequestWithEntityName:@"MasterShip"];
+ predicate = [NSPredicate predicateWithFormat:@"id = %@", [kdock valueForKey:@"created_ship_id"]];
+ [req setPredicate:predicate];
+
+ array = [context executeFetchRequest:req error:NULL];
+ if([array count] == 0) {
+ NSLog(@"MasterShip data is invalid or ship_id is invalid.");
+ return;
+ }
+
+ HMLocalDataStore *lds = [HMLocalDataStore oneTimeEditor];
+ NSManagedObjectContext *localStoreContext = [lds managedObjectContext];
+ HMKenzoHistory *newObejct = [NSEntityDescription insertNewObjectForEntityForName:@"KenzoHistory"
+ inManagedObjectContext:localStoreContext];
+ newObejct.name = [array[0] valueForKey:@"name"];
+ newObejct.fuel = item1;
+ newObejct.bull = [kdock valueForKey:@"item2"];
+ newObejct.steel = [kdock valueForKey:@"item3"];
+ newObejct.bauxite = [kdock valueForKey:@"item4"];
+ newObejct.kaihatusizai = [kdock valueForKey:@"item5"];
+ newObejct.isLarge = [item1 compare:@1000] == NSOrderedDescending ? @YES : @NO;
+ newObejct.date = [NSDate date];
+}
+
+@end