| | |
| | | |
| | | #region è°ç¨éè¶webapiæ¥å£åæ¥åºç¡èµææ¹æ³ |
| | | |
| | | #region å°éè¶åæ®æ¥è¯¢WEBAPIæ¥å£è¿åç纯æ°ç»è½¬æ¢ä¸ºå¸¦å段åç对象å表 |
| | | public static JArray ConvertKingdeeResultToObjects(string rawJson, string fieldKeys) |
| | | { |
| | | // <param name="rawJson">API è¿åçåå§ JSON å符串ï¼å¦ [[...],[...]]ï¼</param> |
| | | // <param name="fieldKeys">æ¥è¯¢æ¶ä¼ å
¥ç FieldKeys å符串ï¼éå·åéï¼</param> |
| | | |
| | | // 1. è§£æåå§æ°æ®ä¸º JArrayï¼äºç»´æ°ç»ï¼ |
| | | JArray rawData = JArray.Parse(rawJson); |
| | | |
| | | // 2. æååæ®µåæ°ç» |
| | | string[] fieldNames = fieldKeys.Split(',') |
| | | .Select(f => f.Trim()) |
| | | .ToArray(); |
| | | |
| | | // 3. åå»ºç»ææ°ç» |
| | | JArray result = new JArray(); |
| | | |
| | | // 4. é忝ä¸è¡æ°æ® |
| | | foreach (JArray row in rawData) |
| | | { |
| | | JObject obj = new JObject(); |
| | | |
| | | // 5. æç´¢å¼ä½ç½®æ å°å段ååå¼ |
| | | for (int i = 0; i < fieldNames.Length && i < row.Count; i++) |
| | | { |
| | | obj[fieldNames[i]] = row[i]; |
| | | } |
| | | |
| | | result.Add(obj); |
| | | } |
| | | |
| | | return result; |
| | | } |
| | | #endregion |
| | | |
| | | #region ç©æåºç¡èµæåæ¥ |
| | | [Route("WEBSController/MaterialDataToLocalByKDWebApi")] |
| | | [HttpGet] |
| | |
| | | |
| | | #endregion |
| | | |
| | | #region å°éè¶åæ®æ¥è¯¢WEBAPIæ¥å£è¿åç纯æ°ç»è½¬æ¢ä¸ºå¸¦å段åç对象å表 |
| | | public static JArray ConvertKingdeeResultToObjects(string rawJson, string fieldKeys) |
| | | #region é¨é¨åºç¡èµæåæ¥ |
| | | [Route("WEBSController/DepartmentDataToLocalByKDWebApi")] |
| | | [HttpGet] |
| | | public object DepartmentDataToLocalByKDWebApi(string HDate, int limit) |
| | | { |
| | | // <param name="rawJson">API è¿åçåå§ JSON å符串ï¼å¦ [[...],[...]]ï¼</param> |
| | | // <param name="fieldKeys">æ¥è¯¢æ¶ä¼ å
¥ç FieldKeys å符串ï¼éå·åéï¼</param> |
| | | |
| | | // 1. è§£æåå§æ°æ®ä¸º JArrayï¼äºç»´æ°ç»ï¼ |
| | | JArray rawData = JArray.Parse(rawJson); |
| | | |
| | | // 2. æååæ®µåæ°ç» |
| | | string[] fieldNames = fieldKeys.Split(',') |
| | | .Select(f => f.Trim()) |
| | | .ToArray(); |
| | | |
| | | // 3. åå»ºç»ææ°ç» |
| | | JArray result = new JArray(); |
| | | |
| | | // 4. é忝ä¸è¡æ°æ® |
| | | foreach (JArray row in rawData) |
| | | bool hasMore = true;//æ¯å¦å¾ªç¯æ¥è¯¢ |
| | | try |
| | | { |
| | | JObject obj = new JObject(); |
| | | //访é®éè¶ |
| | | string sCLOUDUseName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "UserName"); |
| | | string sCLOUDPsd = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "PassWord"); |
| | | string dbId = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DbId"); |
| | | ApiClient client = new ApiClient(Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "KDApiUrl")); |
| | | bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052); |
| | | string HReturn; |
| | | int startRow = 0;//å页ï¼ä»ç¬¬1æ¡å¼å§æ¥è¯¢ |
| | | List<JObject> allData = new List<JObject>();//æ¥æ¶åå¨æææ¥è¯¢å°çæ°æ® |
| | | |
| | | // 5. æç´¢å¼ä½ç½®æ å°å段ååå¼ |
| | | for (int i = 0; i < fieldNames.Length && i < row.Count; i++) |
| | | if (!bLogin) |
| | | { |
| | | obj[fieldNames[i]] = row[i]; |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "忥åºç¡èµæå¤±è´¥,éè¶è´¦å·ç»å½å¼å¸¸ã"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //è¦éè¿æ¥å£æ¥è¯¢çåæ®µ |
| | | string fieldKeys = "FDEPTID,FNumber,FName,FFORBIDSTATUS,FCREATEORGID,FUSEORGID"; |
| | | |
| | | oCn.BeginTran();//å¼å§äºå¡ |
| | | |
| | | while (hasMore) //循ç¯åç»æ¥è¯¢ï¼é¿å
æ¼åæ¥ |
| | | { |
| | | //æ¼æ¥åæ®æ¥è¯¢æ¥å£åæ° |
| | | string sJson = $"{{\"FormId\":\"BD_Department\",\"FieldKeys\":\"{fieldKeys}\",\"FilterString\":\"FAuditDate >= '{HDate}' and FLOCALEID = 2052\",\"Limit\":{limit},\"StartRow\":{startRow},\"TopRowCount\":0}}"; |
| | | |
| | | //è°ç¨éè¶webapiåæ®æ¥è¯¢æ¥å£ |
| | | var HReurnData = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery", |
| | | new object[] { sJson }); |
| | | |
| | | //å°éè¶åæ®æ¥è¯¢WEBAPIæ¥å£è¿åç纯æ°ç»è½¬æ¢ä¸ºå¸¦å段åç对象å表 |
| | | JArray formattedData = ConvertKingdeeResultToObjects(HReurnData, fieldKeys); |
| | | |
| | | if (formattedData.Count < limit) |
| | | { |
| | | hasMore = false; // å¦ææ¬æ¬¡è¿åçæ°éå°äºè¯·æ±ç limitï¼è¯´æå·²ç»æ¯æåä¸é¡µäº |
| | | } |
| | | else |
| | | { |
| | | startRow += limit; // å¦åï¼å¢å èµ·å§è¡ç´¢å¼ï¼åå¤è¯·æ±ä¸ä¸é¡µ |
| | | } |
| | | |
| | | foreach (JObject item in formattedData) |
| | | { |
| | | //å é¤åæè®°å½ |
| | | oCn.RunProc($"delete from Gy_Department where HItemID = {item["FDEPTID"]?.ToString()}"); |
| | | |
| | | oCn.RunProc("set identity_insert Gy_Department on"); |
| | | |
| | | //éæ°åå
¥è¡¨ |
| | | oCn.RunProc("Insert Into Gy_Department " + |
| | | "(HItemID,HNumber,HShortNumber,HName,HParentID" + |
| | | ",HLevel,HEndFlag,HRemark,HStopFlag,HUseFlag" + |
| | | ",HCREATEORGID,HUSEORGID,HERPItemID" + |
| | | ") " + |
| | | " values('" + item["FDEPTID"] + "','" + item["FNumber"] + "','" + item["FNumber"] + "','" + item["FName"] + "',0" + |
| | | ",'',0,'" + "CLD-ERP导å
¥" + "',0,''" + |
| | | "," + item["FCREATEORGID"] + "," + item["FCREATEORGID"] + "," + item["FDEPTID"] + |
| | | ") "); |
| | | |
| | | oCn.RunProc("set identity_insert Gy_Department off"); |
| | | } |
| | | } |
| | | |
| | | result.Add(obj); |
| | | oCn.Commit(); //æäº¤äºå¡ |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "é¨é¨ä¿¡æ¯åæ¥æå"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | return result; |
| | | catch (Exception e) |
| | | { |
| | | hasMore = false; |
| | | oCn.RollBack();//åæ»äºå¡ |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "åæ®æ¥è¯¢é¨é¨ä¿¡æ¯åçå¼å¸¸ï¼" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #endregion |
| | | |
| | | #region ä»åºåºç¡èµæåæ¥ |
| | | [Route("WEBSController/StockDataToLocalByKDWebApi")] |
| | | [HttpGet] |
| | | public object StockDataToLocalByKDWebApi(string HDate, int limit) |
| | | { |
| | | bool hasMore = true;//æ¯å¦å¾ªç¯æ¥è¯¢ |
| | | try |
| | | { |
| | | //访é®éè¶ |
| | | string sCLOUDUseName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "UserName"); |
| | | string sCLOUDPsd = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "PassWord"); |
| | | string dbId = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DbId"); |
| | | ApiClient client = new ApiClient(Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "KDApiUrl")); |
| | | bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052); |
| | | string HReturn; |
| | | int startRow = 0;//å页ï¼ä»ç¬¬1æ¡å¼å§æ¥è¯¢ |
| | | List<JObject> allData = new List<JObject>();//æ¥æ¶åå¨æææ¥è¯¢å°çæ°æ® |
| | | |
| | | if (!bLogin) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "忥åºç¡èµæå¤±è´¥,éè¶è´¦å·ç»å½å¼å¸¸ã"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //è¦éè¿æ¥å£æ¥è¯¢çåæ®µ |
| | | string fieldKeys = "FSTOCKID,FNumber,FName,FUSEORGID,FCREATEORGID,FFORBIDSTATUS,FIsOpenLocation,FAllowMinusQty,FSTOCKPROPERTY"; |
| | | |
| | | oCn.BeginTran();//å¼å§äºå¡ |
| | | |
| | | while (hasMore) //循ç¯åç»æ¥è¯¢ï¼é¿å
æ¼åæ¥ |
| | | { |
| | | //æ¼æ¥åæ®æ¥è¯¢æ¥å£åæ° |
| | | string sJson = $"{{\"FormId\":\"BD_STOCK\",\"FieldKeys\":\"{fieldKeys}\",\"FilterString\":\"FAuditDate >= '{HDate}' and FLOCALEID = 2052\",\"Limit\":{limit},\"StartRow\":{startRow},\"TopRowCount\":0}}"; |
| | | |
| | | //è°ç¨éè¶webapiåæ®æ¥è¯¢æ¥å£ |
| | | var HReurnData = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery", |
| | | new object[] { sJson }); |
| | | |
| | | //å°éè¶åæ®æ¥è¯¢WEBAPIæ¥å£è¿åç纯æ°ç»è½¬æ¢ä¸ºå¸¦å段åç对象å表 |
| | | JArray formattedData = ConvertKingdeeResultToObjects(HReurnData, fieldKeys); |
| | | |
| | | if (formattedData.Count < limit) |
| | | { |
| | | hasMore = false; // å¦ææ¬æ¬¡è¿åçæ°éå°äºè¯·æ±ç limitï¼è¯´æå·²ç»æ¯æåä¸é¡µäº |
| | | } |
| | | else |
| | | { |
| | | startRow += limit; // å¦åï¼å¢å èµ·å§è¡ç´¢å¼ï¼åå¤è¯·æ±ä¸ä¸é¡µ |
| | | } |
| | | |
| | | foreach (JObject item in formattedData) |
| | | { |
| | | //å é¤åæè®°å½ |
| | | oCn.RunProc($"delete from Gy_Warehouse where HItemID = {item["FSTOCKID"]?.ToString()}"); |
| | | |
| | | oCn.RunProc("set identity_insert Gy_Warehouse on"); |
| | | |
| | | //éæ°åå
¥è¡¨ |
| | | oCn.RunProc("Insert into Gy_Warehouse " + |
| | | " (HItemID,HNumber,HName,HHelpCode,HShortNumber,HParentID" + |
| | | ",HLevel,HEndFlag,HStopflag,HRemark,HEmpID,HAddress,HPhone,HUSEORGID,HCREATEORGID,HSPFlag,HSPGroupID,HUnderStock,HSTOCKPROPERTY,HERPItemID) " + |
| | | " Values('" + item["FSTOCKID"] + "','" + item["FNumber"] + "','" + item["FName"] + "','" +0 + "','" + item["FNumber"] + "'," + 1 + |
| | | "," + 1 + "," + "'true'" + "," + Convert.ToString(item["FFORBIDSTATUS"].ToString()=="A" ? 0 : 1) + ",'" + "CLD-ERP导å
¥" + "'," + 0 + ",'" + item["FAddress"] + "','" + item["FTel"] + "','" + item["FUSEORGID"] + "','" + item["FUSEORGID"] + "','" + item["FIsOpenLocation"] + "','" + item["FSTOCKID"] + "','" + item["FAllowMinusQty"] + "','" + item["FSTOCKPROPERTY"] + "'," + item["FSTOCKID"] + ")", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | |
| | | oCn.RunProc("set identity_insert Gy_Warehouse off"); |
| | | } |
| | | } |
| | | |
| | | oCn.Commit(); //æäº¤äºå¡ |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "ä»åºä¿¡æ¯åæ¥æå"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | hasMore = false; |
| | | oCn.RollBack();//åæ»äºå¡ |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "åæ®æ¥è¯¢ä»åºä¿¡æ¯åçå¼å¸¸ï¼" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | |
| | | #region ä¾åºååºç¡èµæåæ¥ |
| | | [Route("WEBSController/SupplierDataToLocalByKDWebApi")] |
| | | [HttpGet] |
| | | public object SupplierDataToLocalByKDWebApi(string HDate, int limit) |
| | | { |
| | | bool hasMore = true;//æ¯å¦å¾ªç¯æ¥è¯¢ |
| | | try |
| | | { |
| | | //访é®éè¶ |
| | | string sCLOUDUseName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "UserName"); |
| | | string sCLOUDPsd = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "PassWord"); |
| | | string dbId = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DbId"); |
| | | ApiClient client = new ApiClient(Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "KDApiUrl")); |
| | | bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052); |
| | | string HReturn; |
| | | int startRow = 0;//å页ï¼ä»ç¬¬1æ¡å¼å§æ¥è¯¢ |
| | | List<JObject> allData = new List<JObject>();//æ¥æ¶åå¨æææ¥è¯¢å°çæ°æ® |
| | | |
| | | if (!bLogin) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "忥åºç¡èµæå¤±è´¥,éè¶è´¦å·ç»å½å¼å¸¸ã"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //è¦éè¿æ¥å£æ¥è¯¢çåæ®µ |
| | | string fieldKeys = "FSUPPLIERID,FNumber,FName,FUSEORGID,FCREATEORGID,FFORBIDSTATUS,FAddress,FContact,FMobile,FLocNewContact ,FFax,FEMail ,FBankCode ,FBankHolder,FTaxType,FTaxRateId ,FCountry ,FPayCurrencyId"; |
| | | |
| | | oCn.BeginTran();//å¼å§äºå¡ |
| | | |
| | | while (hasMore) //循ç¯åç»æ¥è¯¢ï¼é¿å
æ¼åæ¥ |
| | | { |
| | | //æ¼æ¥åæ®æ¥è¯¢æ¥å£åæ° |
| | | string sJson = $"{{\"FormId\":\"BD_Supplier\",\"FieldKeys\":\"{fieldKeys}\",\"FilterString\":\"FAuditDate >= '{HDate}' and FLOCALEID = 2052\",\"Limit\":{limit},\"StartRow\":{startRow},\"TopRowCount\":0}}"; |
| | | |
| | | //è°ç¨éè¶webapiåæ®æ¥è¯¢æ¥å£ |
| | | var HReurnData = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery", |
| | | new object[] { sJson }); |
| | | |
| | | //å°éè¶åæ®æ¥è¯¢WEBAPIæ¥å£è¿åç纯æ°ç»è½¬æ¢ä¸ºå¸¦å段åç对象å表 |
| | | JArray formattedData = ConvertKingdeeResultToObjects(HReurnData, fieldKeys); |
| | | |
| | | if (formattedData.Count < limit) |
| | | { |
| | | hasMore = false; // å¦ææ¬æ¬¡è¿åçæ°éå°äºè¯·æ±ç limitï¼è¯´æå·²ç»æ¯æåä¸é¡µäº |
| | | } |
| | | else |
| | | { |
| | | startRow += limit; // å¦åï¼å¢å èµ·å§è¡ç´¢å¼ï¼åå¤è¯·æ±ä¸ä¸é¡µ |
| | | } |
| | | |
| | | foreach (JObject item in formattedData) |
| | | { |
| | | //å é¤åæè®°å½ |
| | | oCn.RunProc($"delete from Gy_Supplier where HItemID = {item["FSUPPLIERID"]?.ToString()}"); |
| | | |
| | | oCn.RunProc("set identity_insert Gy_Supplier on"); |
| | | |
| | | oCn.RunProc("Insert Into Gy_Supplier " + |
| | | "(HItemID,HNumber,HName,HHelpCode,HShortNumber,HParentID" + |
| | | ",HLevel,HEndFlag,HStopflag,HRemark" + |
| | | ",HShortName,HAddress,HLinkMan,HLinkPhone,HMobilePhone" + |
| | | ",HFax,HPostalCode,HEmail,HBank,HBankAccount" + |
| | | ",HTaxNum,HTaxRate,HCountry,HCorMan,HEnglishName" + |
| | | ",HEnglishAddress,HCurID,HSSID,HAreaID,HMaterClass,HERPItemID,HUseOrgID,HCreateOrgID) " + |
| | | " values('" + item["FSUPPLIERID"] + "','" + item["FNumber"] + "','" + item["FName"] + "','" + 1 + "','" + item["FNumber"] + "','" + 1 + "'" + |
| | | "," + 1+ ",0,'" + (item["FFORBIDSTATUS"].ToString() == "A" ? 0 : 1) + "','" + "CLD-ERP导å
¥" + "'" + |
| | | ",'" + item["FName"] + "','" + item["FAddress"] + "','" + item["FLocNewContact"] + "','" + item["FMobile"] + "','" + item["FMobile"] + "'" + |
| | | ",'" + item["FFax"] + "','" + 0 + "','" + item["FEMail "] + "','" + item["FBankHolder"] + "','" + item["FBankCode"] + "'" + |
| | | ",'" + item["FTaxType"] + "','" + item["FTaxRateId "] + "','" + item["FCountry "] + "','" + "" + "','" + "" + "'" + |
| | | ",'" + item["FAddress"] + "'," + item["FPayCurrencyId"] + "," + 0 + "," + 0 + ",'" + 0 + |
| | | "'," + item["FSUPPLIERID"] + ",'" + item["FCREATEORGID"] + "','" + item["FCREATEORGID"] + |
| | | "') "); |
| | | oCn.RunProc("set identity_insert Gy_Supplier off"); |
| | | } |
| | | } |
| | | |
| | | oCn.Commit(); //æäº¤äºå¡ |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "ä¾åºåä¿¡æ¯åæ¥æå"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | hasMore = false; |
| | | oCn.RollBack();//åæ»äºå¡ |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "åæ®æ¥è¯¢ä¾åºåä¿¡æ¯åçå¼å¸¸ï¼" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region å使¢ç®åºç¡èµæåæ¥ |
| | | [Route("WEBSController/UnitConvertRateDataToLocalByKDWebApi")] |
| | | [HttpGet] |
| | | public object UnitConvertRateDataToLocalByKDWebApi(string HDate, int limit) |
| | | { |
| | | bool hasMore = true;//æ¯å¦å¾ªç¯æ¥è¯¢ |
| | | try |
| | | { |
| | | //访é®éè¶ |
| | | string sCLOUDUseName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "UserName"); |
| | | string sCLOUDPsd = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "PassWord"); |
| | | string dbId = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DbId"); |
| | | ApiClient client = new ApiClient(Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "KDApiUrl")); |
| | | bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052); |
| | | string HReturn; |
| | | int startRow = 0;//å页ï¼ä»ç¬¬1æ¡å¼å§æ¥è¯¢ |
| | | List<JObject> allData = new List<JObject>();//æ¥æ¶åå¨æææ¥è¯¢å°çæ°æ® |
| | | |
| | | if (!bLogin) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "忥åºç¡èµæå¤±è´¥,éè¶è´¦å·ç»å½å¼å¸¸ã"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //è¦éè¿æ¥å£æ¥è¯¢çåæ®µ |
| | | string fieldKeys = "FUNITCONVERTRATEID,FUSEORGID,FCREATEORGID,FFORBIDSTATUS,FBILLNO,FMATERIALID,FCURRENTUNITID,FDESTUNITID,FCONVERTTYPE,FCONVERTNUMERATOR,FCONVERTDENOMINATOR,FCREATORID,FCREATEDATE,FAPPROVERID,FAPPROVEDATE,FMODIFIERID,FMODIFYDATE,FFORBIDDERID,FFORBIDDATE"; |
| | | |
| | | oCn.BeginTran();//å¼å§äºå¡ |
| | | |
| | | while (hasMore) //循ç¯åç»æ¥è¯¢ï¼é¿å
æ¼åæ¥ |
| | | { |
| | | //æ¼æ¥åæ®æ¥è¯¢æ¥å£åæ° |
| | | string sJson = $"{{\"FormId\":\"BD_MATERIALUNITCONVERT\",\"FieldKeys\":\"{fieldKeys}\",\"FilterString\":\"FApproveDate >= '{HDate}'\",\"Limit\":{limit},\"StartRow\":{startRow},\"TopRowCount\":0}}"; |
| | | |
| | | //è°ç¨éè¶webapiåæ®æ¥è¯¢æ¥å£ |
| | | var HReurnData = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery", |
| | | new object[] { sJson }); |
| | | |
| | | //å°éè¶åæ®æ¥è¯¢WEBAPIæ¥å£è¿åç纯æ°ç»è½¬æ¢ä¸ºå¸¦å段åç对象å表 |
| | | JArray formattedData = ConvertKingdeeResultToObjects(HReurnData, fieldKeys); |
| | | |
| | | if (formattedData.Count < limit) |
| | | { |
| | | hasMore = false; // å¦ææ¬æ¬¡è¿åçæ°éå°äºè¯·æ±ç limitï¼è¯´æå·²ç»æ¯æåä¸é¡µäº |
| | | } |
| | | else |
| | | { |
| | | startRow += limit; // å¦åï¼å¢å èµ·å§è¡ç´¢å¼ï¼åå¤è¯·æ±ä¸ä¸é¡µ |
| | | } |
| | | |
| | | foreach (JObject item in formattedData) |
| | | { |
| | | //å é¤åæè®°å½ |
| | | oCn.RunProc($"delete from Gy_UnitConvertRate where HItemID = {item["FUNITCONVERTRATEID"]?.ToString()}"); |
| | | |
| | | oCn.RunProc("set identity_insert Gy_UnitConvertRate on"); |
| | | |
| | | string sql = "Insert into Gy_UnitConvertRate " + |
| | | "(HItemID,HNumber,HName,HShortNumber,HParentID,HLevel," + |
| | | "HEndFlag,HStopflag,HRemark,HUseFlag,HUSEORGID,HCREATEORGID," + |
| | | "HBILLNO,HMATERID,HCURRENTUNITID,HDESTUNITID,HCONVERTTYPE,HCONVERTNUMERATOR," + |
| | | "HCONVERTDENOMINATOR,HFORBIDSTATUS,HUnitID,HMaterNumber," + |
| | | "HMakeEmp,HMakeTime,HCheckEmp,HCheckTime,HModifyEmp,HModifyTime,HStopEmp,HStopTime) " + |
| | | "values('" + item["FUNITCONVERTRATEID"] + "','" + "','" + "','" + "'," + 1 + "," + 1 + ",'" + |
| | | "true" + "','" + (item["FFORBIDSTATUS"].ToString()=="A"?0:1) + "','CLD-ERP导å
¥','已使ç¨','" + item["FUSEORGID"] + "','" + item["FUSEORGID"] + "'" + |
| | | ",'" + item["FBILLNO"] + "','" + item["FMATERIALID"] + "','" + item["FCURRENTUNITID"] + "','" + item["FDESTUNITID"] + "','" + item["FCONVERTTYPE"] + "','" + item["FCONVERTNUMERATOR"] + "'" + |
| | | ",'" + item["FCONVERTDENOMINATOR"] + "','" + item["FFORBIDSTATUS"] + "','" + 0 + "','" + "'" + |
| | | ",'" + item["FCREATORID"] + "','" + item["FCREATEDATE"] + "','" + item["FAPPROVERID"] + "','" + item["FAPPROVEDATE"] + "','" + |
| | | item["FMODIFIERID"] + "','" + item["FMODIFYDATE"] + "','" + item["FFORBIDDERID"] + "','" + item["FFORBIDDATE"] + "')"; |
| | | oCn.RunProc(sql); |
| | | oCn.RunProc("set identity_insert Gy_UnitConvertRate off"); |
| | | } |
| | | } |
| | | |
| | | oCn.Commit(); //æäº¤äºå¡ |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "å使¢ç®ä¿¡æ¯åæ¥æå"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | hasMore = false; |
| | | oCn.RollBack();//åæ»äºå¡ |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "åæ®æ¥è¯¢å使¢ç®ä¿¡æ¯åçå¼å¸¸ï¼" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region åå·¥åºç¡èµæåæ¥ |
| | | [Route("WEBSController/StaffDataToLocalByKDWebApi")] |
| | | [HttpGet] |
| | | public object StaffDataToLocalByKDWebApi(string HDate, int limit) |
| | | { |
| | | bool hasMore = true;//æ¯å¦å¾ªç¯æ¥è¯¢ |
| | | try |
| | | { |
| | | //访é®éè¶ |
| | | string sCLOUDUseName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "UserName"); |
| | | string sCLOUDPsd = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "PassWord"); |
| | | string dbId = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DbId"); |
| | | ApiClient client = new ApiClient(Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "KDApiUrl")); |
| | | bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052); |
| | | string HReturn; |
| | | int startRow = 0;//å页ï¼ä»ç¬¬1æ¡å¼å§æ¥è¯¢ |
| | | List<JObject> allData = new List<JObject>();//æ¥æ¶åå¨æææ¥è¯¢å°çæ°æ® |
| | | |
| | | if (!bLogin) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "忥åºç¡èµæå¤±è´¥,éè¶è´¦å·ç»å½å¼å¸¸ã"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //è¦éè¿æ¥å£æ¥è¯¢çåæ®µ |
| | | string fieldKeys = "FPERSONID,FNumber,FName,FUSEORGID,FCREATEORGID,FPOSTID,FFIRSTCARDID,FSTAFFNUMBER"; |
| | | |
| | | oCn.BeginTran();//å¼å§äºå¡ |
| | | |
| | | while (hasMore) //循ç¯åç»æ¥è¯¢ï¼é¿å
æ¼åæ¥ |
| | | { |
| | | //æ¼æ¥åæ®æ¥è¯¢æ¥å£åæ° |
| | | string sJson = $"{{\"FormId\":\"BD_Empinfo\",\"FieldKeys\":\"{fieldKeys}\",\"FilterString\":\"FAuditDate >= '{HDate}' and FLOCALEID = 2052\",\"Limit\":{limit},\"StartRow\":{startRow},\"TopRowCount\":0}}"; |
| | | |
| | | //è°ç¨éè¶webapiåæ®æ¥è¯¢æ¥å£ |
| | | var HReurnData = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery", |
| | | new object[] { sJson }); |
| | | |
| | | //å°éè¶åæ®æ¥è¯¢WEBAPIæ¥å£è¿åç纯æ°ç»è½¬æ¢ä¸ºå¸¦å段åç对象å表 |
| | | JArray formattedData = ConvertKingdeeResultToObjects(HReurnData, fieldKeys); |
| | | |
| | | if (formattedData.Count < limit) |
| | | { |
| | | hasMore = false; // å¦ææ¬æ¬¡è¿åçæ°éå°äºè¯·æ±ç limitï¼è¯´æå·²ç»æ¯æåä¸é¡µäº |
| | | } |
| | | else |
| | | { |
| | | startRow += limit; // å¦åï¼å¢å èµ·å§è¡ç´¢å¼ï¼åå¤è¯·æ±ä¸ä¸é¡µ |
| | | } |
| | | |
| | | foreach (JObject item in formattedData) |
| | | { |
| | | //å é¤åæè®°å½ |
| | | oCn.RunProc($"delete from Gy_Staff where HItemID = {item["FPERSONID"]?.ToString()}"); |
| | | |
| | | oCn.RunProc("set identity_insert Gy_Staff on"); |
| | | |
| | | oCn.RunProc($@"insert into Gy_Staff(HItemID,HNumber,HName,HHelpCode,HShortNumber,HParentID |
| | | ,HLevel,HEndFlag,HStopflag,HRemark,HUseFlag,HUSEORGID |
| | | ,HCREATEORGID,HPERSONID,HPOSTID,HFIRSTCARDID,HDEPTID,HSTAFFNUMBER) |
| | | values({item["FPERSONID"]},'{item["FNUMBER"]}','{item["FNAME"]}','{""}','{item["FNUMBER"]}', |
| | | {1},{1},{"'true'"},{ 0 }, |
| | | '{"CLD-ERP"}','{""}',{item["FUSEORGID"]},{item["FCREATEORGID"]},{item["FPERSONID"]}, |
| | | {item["FPOSTID"]},{item["FFIRSTCARDID"]},{0},'{item["FSTAFFNUMBER"]}')", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | |
| | | oCn.RunProc("set identity_insert Gy_Staff off"); |
| | | } |
| | | } |
| | | |
| | | oCn.Commit(); //æäº¤äºå¡ |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "å工信æ¯åæ¥æå"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | hasMore = false; |
| | | oCn.RollBack();//åæ»äºå¡ |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "åæ®æ¥è¯¢å工信æ¯åçå¼å¸¸ï¼" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | |
| | | #region 客æ·åºç¡èµæåæ¥ |
| | | [Route("WEBSController/CustomerDataToLocalByKDWebApi")] |
| | | [HttpGet] |
| | | public object CustomerDataToLocalByKDWebApi(string HDate, int limit) |
| | | { |
| | | bool hasMore = true;//æ¯å¦å¾ªç¯æ¥è¯¢ |
| | | try |
| | | { |
| | | //访é®éè¶ |
| | | string sCLOUDUseName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "UserName"); |
| | | string sCLOUDPsd = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "PassWord"); |
| | | string dbId = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DbId"); |
| | | ApiClient client = new ApiClient(Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "KDApiUrl")); |
| | | bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052); |
| | | string HReturn; |
| | | int startRow = 0;//å页ï¼ä»ç¬¬1æ¡å¼å§æ¥è¯¢ |
| | | List<JObject> allData = new List<JObject>();//æ¥æ¶åå¨æææ¥è¯¢å°çæ°æ® |
| | | |
| | | if (!bLogin) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "忥åºç¡èµæå¤±è´¥,éè¶è´¦å·ç»å½å¼å¸¸ã"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //è¦éè¿æ¥å£æ¥è¯¢çåæ®µ |
| | | string fieldKeys = "FCUSTID,FNUMBER,FName,FUSEORGID,FCREATEORGID,FFORBIDSTATUS,FLOCATIONSTATUS,FADDRESS,FTContact,FMOBILE ,FTAXRATE1,FZIP,FTEL,FEMail ,FINVOICEBANKNAME,FINVOICEBANKACCOUNT,FTaxRate ,FTAXREGISTERCODE ,FCOUNTRY ,FTRADINGCURRID ,FSETTLETYPEID ,FSELLER ,FCustTypeId "; |
| | | |
| | | oCn.BeginTran();//å¼å§äºå¡ |
| | | |
| | | while (hasMore) //循ç¯åç»æ¥è¯¢ï¼é¿å
æ¼åæ¥ |
| | | { |
| | | //æ¼æ¥åæ®æ¥è¯¢æ¥å£åæ° |
| | | string sJson = $"{{\"FormId\":\"BD_Customer\",\"FieldKeys\":\"{fieldKeys}\",\"FilterString\":\"FAPPROVEDATE >= '{HDate}' and FLOCALEID = 2052\",\"Limit\":{limit},\"StartRow\":{startRow},\"TopRowCount\":0}}"; |
| | | |
| | | //è°ç¨éè¶webapiåæ®æ¥è¯¢æ¥å£ |
| | | var HReurnData = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery", |
| | | new object[] { sJson }); |
| | | |
| | | //å°éè¶åæ®æ¥è¯¢WEBAPIæ¥å£è¿åç纯æ°ç»è½¬æ¢ä¸ºå¸¦å段åç对象å表 |
| | | JArray formattedData = ConvertKingdeeResultToObjects(HReurnData, fieldKeys); |
| | | |
| | | if (formattedData.Count < limit) |
| | | { |
| | | hasMore = false; // å¦ææ¬æ¬¡è¿åçæ°éå°äºè¯·æ±ç limitï¼è¯´æå·²ç»æ¯æåä¸é¡µäº |
| | | } |
| | | else |
| | | { |
| | | startRow += limit; // å¦åï¼å¢å èµ·å§è¡ç´¢å¼ï¼åå¤è¯·æ±ä¸ä¸é¡µ |
| | | } |
| | | |
| | | foreach (JObject item in formattedData) |
| | | { |
| | | //å é¤åæè®°å½ |
| | | oCn.RunProc($"delete from Gy_Customer where HItemID = {item["FCUSTID"]?.ToString()}"); |
| | | |
| | | oCn.RunProc("set identity_insert Gy_Customer on"); |
| | | |
| | | oCn.RunProc("Insert into Gy_Customer " + |
| | | " (HItemID,HNumber,HName,HHelpCode,HShortNumber,HParentID" + |
| | | ",HLevel,HEndFlag,HStopflag,HRemark" + |
| | | ",HShortName,HAddress,HLinkMan,HLinkPhone,HMobilePhone" + |
| | | ",HFax,HPostalCode,HEmail,HBank,HBankAccount" + |
| | | ",HTaxNum,HTaxRate,HCountry,HCorMan,HEnglishName" + |
| | | ",HEnglishAddress,HCurID,HSSID,HAreaID,HCusStatus" + |
| | | ",HEmpID,HCreditDate,HCreditRatingDate,HMaxCreditRatingDate" + |
| | | ",HMonthUseQty,HForecastCreditRating,HCreditLevelID,HCountAccrualRating" + |
| | | ",HSubsidyAccrualRating,HCreditRating,HMaxCreditRating" + |
| | | ",HCusTypeID,HERPItemID,HUseOrgID,HCreateOrgID) " + |
| | | " Values('" + item["FCUSTID"] + "','" + item["FNUMBER"] + "','" + item["FName"] + "','" + 1 + "','" + item["FNUMBER"] + "'," + 1 + |
| | | ", " + 1 + ",0,'" + (item["FFORBIDSTATUS"].ToString()=="A"?0:1) + "','" + "ERP导å
¥" + "'" + |
| | | ",'" + item["FName"] + "','" + item["FADDRESS"] + "','" + item["FTContact"] + "','" + item["FMOBILE"] + "','" + item["FTEL"] + "'" + |
| | | ",'" + item["FTAXRATE1"] + "','" + item["FZIP"] + "','" + item["FEMail"] + "','" + item["FINVOICEBANKNAME"] + "','" + item["FINVOICEBANKACCOUNT"] + "'" + |
| | | ",'" + item["FTAXREGISTERCODE"] + "'," + item["FTaxRate"] + ",'" + item["FCOUNTRY"] + "','','','','" + item["FTRADINGCURRID"] + "','" + item["FSETTLETYPEID"] + "'," + 0 + ",'" + "åæ ¼" + "'" + |
| | | ",'" + 0+ "'," + 0 + "," + 0 + "," + 0 + |
| | | "," + 0 + "," + 0 + "," + 0+ "," + 0 + |
| | | "," + 0 + "," + 0 + "," + 0 + |
| | | ", '" + 0 + "','" + item["FCUSTID"] + "','" + item["FUSEORGID"] + "','" + item["FCREATEORGID"] + "')"); |
| | | string sql = "set identity_insert gy_Customer off"; |
| | | oCn.RunProc(sql); |
| | | } |
| | | } |
| | | |
| | | oCn.Commit(); //æäº¤äºå¡ |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "客æ·ä¿¡æ¯åæ¥æå"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | hasMore = false; |
| | | oCn.RollBack();//åæ»äºå¡ |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "åæ®æ¥è¯¢å®¢æ·ä¿¡æ¯åçå¼å¸¸ï¼" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | |
| | | #region ç»ç»åºç¡èµæåæ¥ |
| | | [Route("WEBSController/ORGANIZATIONSDataToLocalByKDWebApi")] |
| | | [HttpGet] |
| | | public object ORGANIZATIONSDataToLocalByKDWebApi(string HDate, int limit) |
| | | { |
| | | bool hasMore = true;//æ¯å¦å¾ªç¯æ¥è¯¢ |
| | | try |
| | | { |
| | | //访é®éè¶ |
| | | string sCLOUDUseName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "UserName"); |
| | | string sCLOUDPsd = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "PassWord"); |
| | | string dbId = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DbId"); |
| | | ApiClient client = new ApiClient(Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "KDApiUrl")); |
| | | bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052); |
| | | string HReturn; |
| | | int startRow = 0;//å页ï¼ä»ç¬¬1æ¡å¼å§æ¥è¯¢ |
| | | List<JObject> allData = new List<JObject>();//æ¥æ¶åå¨æææ¥è¯¢å°çæ°æ® |
| | | |
| | | if (!bLogin) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "忥åºç¡èµæå¤±è´¥,éè¶è´¦å·ç»å½å¼å¸¸ã"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //è¦éè¿æ¥å£æ¥è¯¢çåæ®µ |
| | | string fieldKeys = "FORGID,FNUMBER,FName,FParentid,FFORBIDSTATUS"; |
| | | |
| | | oCn.BeginTran();//å¼å§äºå¡ |
| | | |
| | | while (hasMore) //循ç¯åç»æ¥è¯¢ï¼é¿å
æ¼åæ¥ |
| | | { |
| | | //æ¼æ¥åæ®æ¥è¯¢æ¥å£åæ° |
| | | string sJson = $"{{\"FormId\":\"ORG_Organizations\",\"FieldKeys\":\"{fieldKeys}\",\"FilterString\":\"FAUDITDATE >= '{HDate}' and FLOCALEID = 2052\",\"Limit\":{limit},\"StartRow\":{startRow},\"TopRowCount\":0}}"; |
| | | |
| | | //è°ç¨éè¶webapiåæ®æ¥è¯¢æ¥å£ |
| | | var HReurnData = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery", |
| | | new object[] { sJson }); |
| | | |
| | | //å°éè¶åæ®æ¥è¯¢WEBAPIæ¥å£è¿åç纯æ°ç»è½¬æ¢ä¸ºå¸¦å段åç对象å表 |
| | | JArray formattedData = ConvertKingdeeResultToObjects(HReurnData, fieldKeys); |
| | | |
| | | if (formattedData.Count < limit) |
| | | { |
| | | hasMore = false; // å¦ææ¬æ¬¡è¿åçæ°éå°äºè¯·æ±ç limitï¼è¯´æå·²ç»æ¯æåä¸é¡µäº |
| | | } |
| | | else |
| | | { |
| | | startRow += limit; // å¦åï¼å¢å èµ·å§è¡ç´¢å¼ï¼åå¤è¯·æ±ä¸ä¸é¡µ |
| | | } |
| | | |
| | | foreach (JObject item in formattedData) |
| | | { |
| | | //å é¤åæè®°å½ |
| | | oCn.RunProc($"delete from Xt_ORGANIZATIONS where HItemID = {item["FORGID"]?.ToString()}"); |
| | | |
| | | // oCn.RunProc("set identity_insert Xt_ORGANIZATIONS on"); |
| | | |
| | | string sql = "Insert into Xt_ORGANIZATIONS (HItemID,HNumber,HName,HParentID,HStopflag,HMakeTime,HRemark)" + |
| | | " values('" + item["FORGID"] + "','" + item["FNUMBER"] + "','" + item["FNAME"] + "','" + item["FParentid"] + "','" + (item["FFORBIDSTATUS"].ToString()=="A"?0:1) + "'," + |
| | | "getdate(),'" + "CLD导å
¥" + |
| | | "') "; |
| | | oCn.RunProc(sql); |
| | | //oCn.RunProc("set identity_insert Xt_ORGANIZATIONS off"); |
| | | } |
| | | } |
| | | |
| | | oCn.Commit(); //æäº¤äºå¡ |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "ç»ç»ä¿¡æ¯åæ¥æå"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | hasMore = false; |
| | | oCn.RollBack();//åæ»äºå¡ |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "åæ®æ¥è¯¢ç»ç»ä¿¡æ¯åçå¼å¸¸ï¼" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | |
| | | #region è¾
å©å±æ§åºç¡èµæåæ¥ |
| | | [Route("WEBSController/PropertyDataToLocalByKDWebApi")] |
| | | [HttpGet] |
| | | public object PropertyDataToLocalByKDWebApi(string HDate, int limit) |
| | | { |
| | | bool hasMore = true;//æ¯å¦å¾ªç¯æ¥è¯¢ |
| | | try |
| | | { |
| | | //访é®éè¶ |
| | | string sCLOUDUseName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "UserName"); |
| | | string sCLOUDPsd = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "PassWord"); |
| | | string dbId = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DbId"); |
| | | ApiClient client = new ApiClient(Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "KDApiUrl")); |
| | | bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052); |
| | | string HReturn; |
| | | int startRow = 0;//å页ï¼ä»ç¬¬1æ¡å¼å§æ¥è¯¢ |
| | | List<JObject> allData = new List<JObject>();//æ¥æ¶åå¨æææ¥è¯¢å°çæ°æ® |
| | | |
| | | if (!bLogin) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "忥åºç¡èµæå¤±è´¥,éè¶è´¦å·ç»å½å¼å¸¸ã"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //è¦éè¿æ¥å£æ¥è¯¢çåæ®µ |
| | | string fieldKeys = "FAuxPtyValueID,FAuxPtyNumber,FAuxPtyName,FBillNo,FFORBIDSTATUS"; |
| | | |
| | | oCn.BeginTran();//å¼å§äºå¡ |
| | | |
| | | while (hasMore) //循ç¯åç»æ¥è¯¢ï¼é¿å
æ¼åæ¥ |
| | | { |
| | | //æ¼æ¥åæ®æ¥è¯¢æ¥å£åæ° |
| | | string sJson = $"{{\"FormId\":\"BD_AuxPtyValue\",\"FieldKeys\":\"{fieldKeys}\",\"FilterString\":\"\",\"Limit\":{limit},\"StartRow\":{startRow},\"TopRowCount\":0}}"; |
| | | |
| | | //è°ç¨éè¶webapiåæ®æ¥è¯¢æ¥å£ |
| | | var HReurnData = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery", |
| | | new object[] { sJson }); |
| | | |
| | | //å°éè¶åæ®æ¥è¯¢WEBAPIæ¥å£è¿åç纯æ°ç»è½¬æ¢ä¸ºå¸¦å段åç对象å表 |
| | | JArray formattedData = ConvertKingdeeResultToObjects(HReurnData, fieldKeys); |
| | | |
| | | if (formattedData.Count < limit) |
| | | { |
| | | hasMore = false; // å¦ææ¬æ¬¡è¿åçæ°éå°äºè¯·æ±ç limitï¼è¯´æå·²ç»æ¯æåä¸é¡µäº |
| | | } |
| | | else |
| | | { |
| | | startRow += limit; // å¦åï¼å¢å èµ·å§è¡ç´¢å¼ï¼åå¤è¯·æ±ä¸ä¸é¡µ |
| | | } |
| | | |
| | | foreach (JObject item in formattedData) |
| | | { |
| | | //å é¤åæè®°å½ |
| | | oCn.RunProc($"delete from Gy_Property where HItemID = {item["FAuxPtyValueID"]?.ToString()}"); |
| | | |
| | | oCn.RunProc("set identity_insert Gy_Property on"); |
| | | |
| | | oCn.RunProc($@"insert into Gy_Property(HItemID,HNumber,HShortNumber,HName,HHelpCode,HParentID |
| | | ,HLevel,HEndFlag,HStopflag,HRemark,HPropertyTypeID,HUseFlag,HERPItemID,HMakeTime) |
| | | values({item["FAuxPtyValueID"]},'{item["FAuxPtyNumber"]}','{item["FAuxPtyNumber"]}','{item["FAuxPtyName"]}','{1}',{1},{1} |
| | | ,{ 1},{Convert.ToString(item["FFORBIDSTATUS"].ToString()=="A" ? 0 : 1) },'{"ERP导å
¥"}',{1},'{1}',{item["FAuxPtyValueID"]},{"getdate()"})", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | |
| | | oCn.RunProc("set identity_insert Gy_Property off"); |
| | | } |
| | | } |
| | | |
| | | oCn.Commit(); //æäº¤äºå¡ |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "è¾
å©å±æ§ä¿¡æ¯åæ¥æå"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | hasMore = false; |
| | | oCn.RollBack();//åæ»äºå¡ |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "åæ®æ¥è¯¢è¾
å©å±æ§ä¿¡æ¯åçå¼å¸¸ï¼" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | #endregion |
| | | |
| | | } |
| | | } |