CommonEditorViewController.h 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. //
  2. // CommonEditorViewController.h
  3. // RedAnt ERP Mobile
  4. //
  5. // Created by Ray on 14-7-16.
  6. // Copyright (c) 2014年 United Software Applications, Inc. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. #import "SignatureViewController.h"
  10. #import "EnumSelectViewController.h"
  11. #import "MonthPickerViewController.h"
  12. #import "CommonEditorTableContainerView.h"
  13. #import "CommonEditorAutoCompleteView.h"
  14. #import "RADataProvider.h"
  15. @interface subitem_data : NSObject
  16. @property (strong, nonatomic) NSMutableDictionary *params;
  17. @property (strong,nonatomic) NSMutableArray * missingfields;
  18. @end
  19. @class CommonEditorViewController;
  20. @protocol CommonEditorViewControllerDelegate <NSObject>
  21. -(void) returnValue:(NSMutableDictionary *)value indexPath :(NSIndexPath*) indexPath;
  22. @end
  23. @interface CommonEditorViewController : UIViewController<AutoCompleteDataSource,UITableViewDataSource,UITableViewDelegate,UITextFieldDelegate,MonthPickerViewControllerDelegate/*,SignatureViewControllerDelegate*/,EnumSelectViewControllerDelegate,CommonEditorViewControllerDelegate,UITextViewDelegate/*,UIAlertViewDelegate*/>
  24. @property (strong,nonatomic) NSMutableDictionary* content_data_download;
  25. @property (strong,nonatomic) NSMutableDictionary* changed_data;
  26. @property (strong,nonatomic) CommonEditorAutoCompleteView * autocompleteView;
  27. @property (strong,nonatomic) NSMutableArray* content_data_control;
  28. @property (strong,nonatomic) NSArray* injectMenu;
  29. @property int url_type;
  30. @property (strong,nonatomic) NSString* request_url;
  31. //@property (strong,nonatomic) NSString* data_url;
  32. //@property bool data_separate;
  33. @property (strong,nonatomic) NSMutableDictionary* params;
  34. @property (strong,nonatomic) NSString* item_ids;
  35. @property (strong,nonatomic) NSString* product_ids;
  36. @property (strong, nonatomic) IBOutlet UITableView *editorTable;
  37. @property (nonatomic, weak) id<CommonEditorViewControllerDelegate> delegate;
  38. @property (nonatomic , copy) void (^returnValue)(NSMutableDictionary* value);
  39. @property (strong,nonatomic) UITextField* lastedit;
  40. @property (strong,nonatomic) NSIndexPath* lastedit_from;
  41. @property (strong,nonatomic) UITextView* lasttextview;
  42. @property (strong,nonatomic) NSIndexPath* lasttextview_from;
  43. @property (strong,nonatomic) UITableViewCell* editingcell;
  44. @property bool cancommit;
  45. @property bool resize;
  46. @property int ioffset;
  47. @property int keyboard_h;
  48. @property (strong,nonatomic) NSMutableDictionary* requried;
  49. //@property (strong,nonatomic) NSLock *switchlock ;
  50. @property (strong,nonatomic) NSIndexPath* first_miss_pos;
  51. //@property (strong,nonatomic) NSMutableDictionary* data_init;
  52. -(void) commonAction:(NSString *)value index:(NSIndexPath*) indexPath data:(NSMutableDictionary*) item_json;
  53. -(void) prepareReturn:(NSMutableDictionary*) value;
  54. -(NSMutableArray*) translate_json: (NSDictionary*) injson changed:(NSDictionary*) changed_value;
  55. //-(NSMutableDictionary*)create_cusromer_info_from_table;
  56. @property (strong,nonatomic) NSIndexPath* from;
  57. -(subitem_data*) subitem_param:(NSDictionary*) itemjson addto:(NSMutableDictionary*) upparam alert:(bool)alert;
  58. -(NSMutableDictionary*) check_cancommit:(bool) alert;
  59. -(NSString*) getValue:(NSString*)name;
  60. -(void) download_success;
  61. @property bool keyboard_show;
  62. - (void)download_failed;
  63. //禁止下拉刷新
  64. @property bool disable_dropdown_refresh;
  65. @property (strong,nonatomic) NSString* loading_msg;
  66. @property (strong,nonatomic) NSString* loading_title;
  67. //-(NSMutableDictionary*) translate_json: (NSDictionary*) injson;
  68. //control cell event;
  69. @property (nonatomic,assign) BOOL editable;
  70. //URL_LOCAL 表单填充函数
  71. - (void) request_fill;
  72. @property (strong,nonatomic) NSMutableDictionary* data_init;
  73. // Public
  74. //-(NSMutableDictionary*)create_value_map:(NSDictionary*)key_map;
  75. -(NSMutableDictionary*) fill_switch_subitem:(NSMutableDictionary *) switch_item subid:(NSArray*) subid source:(NSMutableDictionary*)source mapping:(NSDictionary*)mapping;
  76. -(NSMutableDictionary*) fill_enum_subitem:(NSMutableDictionary *) enum_item subid:(NSArray*) subid source:(NSMutableDictionary*)source mapping:(NSDictionary*)mapping;
  77. //-(void) refresh1:(NSString*) trigger;
  78. -(void) handle_action_return:(NSMutableDictionary *)value indexPath :(NSIndexPath*) indexPath action:(int) action_code;
  79. // Urgency
  80. @property (nonatomic,copy) NSString *class_name;
  81. @property (nonatomic,copy) NSString *urgency_timer_name;
  82. @property (nonatomic,assign) int level;///<CommonEditor窗口层级
  83. #pragma mark - Code TableView Constraint
  84. @property (nonatomic,strong) NSLayoutConstraint *tb_top_constraint;
  85. @property (nonatomic,strong) NSLayoutConstraint *tb_left_constraint;
  86. @property (nonatomic,strong) NSLayoutConstraint *tb_bottom_constraint;
  87. @property (nonatomic,strong) NSLayoutConstraint *tb_right_constraint;
  88. #pragma mark - ==========================
  89. @property (nonatomic,strong) IBOutlet CommonEditorTableContainerView *tableContainer;
  90. //#pragma mark - request Editor
  91. //-(void)request_Editor:(NSString*) request_url params:(NSMutableDictionary*)params completionHandler:(resultHandler)result;
  92. // plae order 有调用
  93. -(NSMutableDictionary*) enum_subitem_changed:(NSMutableDictionary *) item subid:(NSArray*) subid value:(NSMutableDictionary*)value step:(int) step;
  94. #pragma mark 为子类暴露的接口
  95. -(void) handle_editor_cell_select:(UITableView *)tableView IndexPath:(NSIndexPath *)indexPath;
  96. @end