Sfoglia il codice sorgente

修复离线存在TMP Order并且Order有Model时,清除该Order未清除改Order对应的Model。

Pen Li 9 anni fa
parent
commit
8f9b42c620

BIN
RedAnt ERP Mobile/RedAnt ERP Mobile.xcworkspace/xcuserdata/macmini1.xcuserdatad/UserInterfaceState.xcuserstate


+ 38 - 6
RedAnt ERP Mobile/RedAnt ERP Mobile.xcworkspace/xcuserdata/macmini1.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -11,11 +11,11 @@
             condition = "[nscontact_id isEqualToString:@"ECODYN0001"]"
             continueAfterRunningActions = "No"
             filePath = "common/Functions/offline/OLDataProvider.m"
-            timestampString = "507006778.111966"
+            timestampString = "507027587.197879"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "6358"
-            endingLineNumber = "6358"
+            startingLineNumber = "6361"
+            endingLineNumber = "6361"
             landmarkName = "+offline_contactlist:"
             landmarkType = "7">
             <Actions>
@@ -35,11 +35,11 @@
             ignoreCount = "0"
             continueAfterRunningActions = "No"
             filePath = "common/Functions/offline/OLDataProvider.m"
-            timestampString = "507014199.762394"
+            timestampString = "507027587.197879"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "5669"
-            endingLineNumber = "5669"
+            startingLineNumber = "5672"
+            endingLineNumber = "5672"
             landmarkName = "+offline_getPrice"
             landmarkType = "7">
             <Locations>
@@ -86,5 +86,37 @@
             stopOnStyle = "0">
          </BreakpointContent>
       </BreakpointProxy>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "common/Functions/offline/OLDataProvider.m"
+            timestampString = "507022908.856778"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "3417"
+            endingLineNumber = "3417"
+            landmarkName = "+search:limited:"
+            landmarkType = "7">
+         </BreakpointContent>
+      </BreakpointProxy>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "common/Functions/offline/OLDataProvider.m"
+            timestampString = "507027587.197879"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "9961"
+            endingLineNumber = "9961"
+            landmarkName = "+shippingMethodDic:db:"
+            landmarkType = "7">
+         </BreakpointContent>
+      </BreakpointProxy>
    </Breakpoints>
 </Bucket>

+ 6 - 2
RedAnt ERP Mobile/common/Functions/offline/OLDataProvider.m

@@ -3500,6 +3500,7 @@ NSString* gprice = [self get_portfolio_price :appDelegate.contact_id item_id:ite
     AppDelegate *appDelegate = (AppDelegate *)[app delegate];
     
     appDelegate.disable_trigger=true;
+    [iSalesDB execSql:@"delete from offline_cart where so_no in (select so_id from offline_order where status = 0);"];
     [iSalesDB execSql:@"delete from offline_order where status=0;"];
     appDelegate.disable_trigger=false;
     //
@@ -3651,6 +3652,7 @@ NSString* gprice = [self get_portfolio_price :appDelegate.contact_id item_id:ite
     AppDelegate *appDelegate = (AppDelegate *)[app delegate];
     
     appDelegate.disable_trigger=true;
+    [iSalesDB execSql:@"delete from offline_cart where so_no in (select so_id from offline_order where status = 0);"];
     [iSalesDB execSql:@"delete from offline_order where status=0;"];
     appDelegate.disable_trigger=false;
     
@@ -3777,6 +3779,7 @@ NSString* gprice = [self get_portfolio_price :appDelegate.contact_id item_id:ite
     if(![appDelegate.order_code isEqualToString:orderCode]&& appDelegate.order_code.length!=0)
     {
         appDelegate.disable_trigger=true;
+        [iSalesDB execSql:@"delete from offline_cart where so_no in (select so_id from offline_order where status = 0);"];
         [iSalesDB execSql:@"delete from offline_order where status=0;"];
         appDelegate.disable_trigger=false;
     }
@@ -5665,7 +5668,7 @@ NSString* gprice = [self get_portfolio_price :appDelegate.contact_id item_id:ite
 
 + (NSDictionary *)offline_getPrice {
     
-    NSString *sql = [NSString stringWithFormat:@"select _id,name,type,order_by from price;"];
+    NSString *sql = [NSString stringWithFormat:@"select _id,name,type,order_by from price where is_show = 1;"];
     
     NSMutableDictionary *ret = [[iSalesDB jk_query:sql completion:^(sqlite3_stmt *stmt, NSMutableDictionary *container, long *count) {
         
@@ -5698,7 +5701,7 @@ NSString* gprice = [self get_portfolio_price :appDelegate.contact_id item_id:ite
 }
 
 + (NSDictionary *)offline_getContactTypeChecked:(NSString *)type {
-    NSString *sql = @"select _id,type_name from contact_type";
+    NSString *sql = @"select _id,type_name from contact_type where is_show = 1";
     __block NSMutableDictionary *ret = [NSMutableDictionary dictionary];
     [ret setValue:[NSNumber numberWithInt:0] forKey:@"count"];
     
@@ -11329,6 +11332,7 @@ NSString* gprice = [self get_portfolio_price :appDelegate.contact_id item_id:ite
     AppDelegate *appDelegate = (AppDelegate *)[app delegate];
     
     appDelegate.disable_trigger=true;
+    [iSalesDB execSql:@"delete from offline_cart where so_no in (select so_id from offline_order where status = 0);"];
     [iSalesDB execSql:@"delete from offline_order where status=0;"];
     appDelegate.disable_trigger=false;
     

+ 2 - 2
RedAnt ERP Mobile/common/data_provider/iSalesDB.m

@@ -683,7 +683,7 @@ void decryptfield (sqlite3_context *context, int argc, sqlite3_value **argv) {
     
     NSString* create_bundle=@"CREATE TABLE IF NOT EXISTS bundle ( _id INTEGER PRIMARY KEY, product_id integer,product_item_id integer,item_id integer,unit_price double,use_unitprice integer,qty integer);";
     
-    NSString* create_price=@"CREATE TABLE IF NOT EXISTS price ( _id INTEGER PRIMARY KEY, name text,  type integer,  order_by integer);";
+    NSString* create_price=@"CREATE TABLE IF NOT EXISTS price ( _id INTEGER PRIMARY KEY, name text,  type integer,  order_by integer,,is_show integer,create_time TIMESTAMP DEFAULT(datetime('now','localtime')),modify_time TIMESTAMP DEFAULT(datetime('now','localtime')));";
     NSString* create_errlog=@"CREATE TABLE IF NOT EXISTS errlog ( _id INTEGER PRIMARY KEY, errmsg text,module text,params text ,code integer,  create_time TIMESTAMP default (datetime('now', 'localtime')));";
     
     
@@ -730,7 +730,7 @@ void decryptfield (sqlite3_context *context, int argc, sqlite3_value **argv) {
     
     NSString *create_offline_pdf = @"create table if not exists offline_pdf (_id integer primary key,tearsheets_id integer,pdf_path text,create_user text,tear_note text,tear_name text,model_info text,configureParams text,is_delete integer,is_dirty integer,is_local integer,off_params text,createtime timestamp default(datetime('now','localtime')),modify_time timestamp DEFAULT(datetime('now','localtime')));";
     
-    NSString *create_contact_type = @"create table if not exists contact_type (_id integer primary key,type_name text);";
+    NSString *create_contact_type = @"create table if not exists contact_type (_id integer primary key,type_name text,is_show integer,create_time TIMESTAMP DEFAULT(datetime('now','localtime')),modify_time TIMESTAMP DEFAULT(datetime('now','localtime')));";
     
     
     NSString* create_order_trigger=@"CREATE TRIGGER  if not exists offline_order_insert after insert on offline_order BEGIN select offline_dirty();  UPDATE offline_order SET modify_time= datetime('now', 'localtime') WHERE _id=new._id;END;CREATE TRIGGER  if not exists offline_order_update after update on offline_order BEGIN select offline_dirty();  UPDATE offline_order SET modify_time= datetime('now', 'localtime') WHERE _id=new._id;END;CREATE TRIGGER  if not exists offline_order_delete after delete on offline_order BEGIN select offline_dirty();  END;";