using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Pub_Class; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Web.Http; using WebAPI.Models; namespace WebAPI.Controllers { public class Gy_SupplierController : ApiController { //获取系统参数 Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); public DBUtility.ClsPub.Enum_BillStatus BillStatus; private json objJsonResult = new json(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); DataSet ds; /// /// 返回供应商列表 ///参数:string sql。 ///返回值:object。 /// [Route("Gy_Supplier/list")] [HttpGet] public object list(string sWhere,string user,string Organization) { try { List columnNameList = new List(); //编辑权限 if (!DBUtility.ClsPub.Security_Log_second("Gy_Supplier", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无查看权限!"; objJsonResult.data = null; return objJsonResult; } string sql1 = string.Format(@"select * from h_v_Gy_SupplierList where 组织名称='" + Organization + "'"); if (sWhere == null || sWhere.Equals("")) { ds = oCN.RunProcReturn(sql1 + sWhere + " order by 供应商代码", "h_v_Gy_SupplierList"); } else { string sql = sql1 + sWhere + " order by 供应商代码 "; ds = oCN.RunProcReturn(sql, "h_v_Gy_SupplierList"); } //添加列名 foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess!"; objJsonResult.data = ds.Tables[0]; objJsonResult.list = columnNameList; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 获取最大基础资料ID ///参数:string sql。 ///返回值:object。 /// [Route("Gy_Supplier/GetMAXBillID")] [HttpGet] public object GetMAXBillID() { try { ds = oCN.RunProcReturn("select max(hitemid)+1 hitemid from Gy_Supplier", "Gy_Supplier"); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = ""; objJsonResult.data = ds.Tables[0]; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 供应商列表修改按钮方法 ///参数:string sql。 ///返回值:object。 /// [Route("Gy_Supplier/xg")] [HttpGet] public object xg(long HInterID) { try { string sql = string.Format(@"select s.HItemID,s.HNumber 编码,s.HName 名称,s.HHelpCode 助记码,s.HShortName 简称,s.HAddress 地址,s.HLinkMan 联系人,s.HLinkPhone 联系电话 ,s.HMobilePhone 手机,s.HFax 传真,s.HPostalCode 邮编,s.HEmail 电子邮件,s.HCorMan 法人代表,s.HBank 开户银行,s.HBankAccount 银行账号, s.HTaxNum 税务登记号,s.HEnglishName 英文名称,s.HEngLishAddress 英文地址,s.HCountry 国家,s.HStopflag 禁用标志 ,s.HRemark 备注,s.HAreaID 地区ID,a.HName 地区名称,s.HTaxRate 增值税率,s.HCurID 默认货币ID,r.HName 默认货币, s.HSSID 结算方式ID,e.HName 结算方式 from Gy_Supplier s left join Gy_AreaSet a on s.HAreaID=a.HItemID left join Gy_Currency r on s.HCurID=r.HItemID left join Gy_SettleStyle e on s.HSSID=e.HItemID where s.HItemID='" + HInterID + "'"); ds = oCN.RunProcReturn(sql, "Gy_Supplier"); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = ""; objJsonResult.data = ds.Tables[0]; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 新增单据-保存按钮 ///参数:string sql。 ///返回值:object。 /// [Route("Gy_Supplier/AddBill")] [HttpPost] public object AddBill([FromBody] JObject oMain) { try { var _value = oMain["oMain"].ToString(); string msg1 = _value.ToString(); //反序列化 msg1 = "[" + msg1.ToString() + "]"; DAL.ClsGy_Supplier_Ctl oDept = new DAL.ClsGy_Supplier_Ctl(); DAL.ClsGy_Supplier_View oDeptHlp = new DAL.ClsGy_Supplier_View(); List list = Newtonsoft.Json.JsonConvert.DeserializeObject>(msg1); long HItemID = list[0].HInterID; string HNumber = list[0].HNumber; string HShortNumber = list[0].HShortNumber; string HName = list[0].HName; long HParentID = list[0].HParentID; long HLevel = list[0].HLevel; string HEndFlag = list[0].HEnfFlag; string HStopflag = list[0].HStopflag; string HHelpCode = list[0].HHelpCode; string HShortName = list[0].HShortName; string HAddress = list[0].HAddress; string HLinkMan = list[0].HLinkMan; string HLinkPhone = list[0].HLinkPhone; string HBankAccount = list[0].HMobilePhone; string HFax = list[0].HFax; string HPostalCode = list[0].HPostalCode; string HEmail = list[0].HEmail; string HBank = list[0].HBank; string HMobilePhone = list[0].HMobilePhone; string HTaxNum = list[0].HTaxNum; Double HTaxRate = list[0].HTaxRate; string HCountry = list[0].HCountry; string HCorMan = list[0].HCorMan; string HEnglishName = list[0].HEnglishName; string HEnglishAddress = list[0].HEnglishAddress; long HCurID = list[0].HCurID; long HSSID = list[0].HSSID; long HAreaID = list[0].HAreaID; string HUseFlag = list[0].HUseFlag; long HERPItemID = list[0].HERPItemID; DateTime HMakeTime = list[0].HMakeTime; long HCreateOrgID = list[0].HCreateOrgID; long HUseOrgID = list[0].HUseOrgID; string HRemark = list[0].HRemark; if (!DBUtility.ClsPub.AllowNumber(HNumber)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "代码中不能出现连续‘.’并且首位末位不能为‘.’!"; objJsonResult.data = null; return objJsonResult; } //若MAINDI重复则重新获取 oCN.BeginTran(); //主表 oCN.RunProc("Insert Into Gy_Supplier " + "(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) " + " values('" + HNumber + "','" + HName + "','" + HHelpCode + "','" + HShortNumber + "','" + HParentID + "'" + "," + HLevel + ",1,'" + HStopflag + "','" + HRemark + "'" + ",'" + HShortName + "','" + HAddress + "','" + HLinkMan + "','" + HLinkPhone + "','" + HMobilePhone + "'" + ",'" + HFax + "','" + HPostalCode + "','" + HEmail + "','" + HBank + "','" + HBankAccount + "'" + ",'" + HTaxNum + "','" + HTaxRate + "','" + HCountry + "','" + HCorMan + "','" + HEnglishName + "'" + ",'" + HEnglishAddress + "'," + HCurID + "," + HSSID + "," + HAreaID + ") "); //修改上级为非末级代码 oCN.RunProc("Update Gy_Supplier set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo); oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "新增单据成功!"; //objJsonResult.data = null; return objJsonResult; } catch (Exception e) { oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.Message; objJsonResult.data = null; return objJsonResult; } } [Route("Gy_Supplier/SaveGy_SupplierListApi")] [HttpPost] public object SaveGy_SupplierListApi([FromBody] JObject msg) { try { var _value = msg["model"].ToString(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); //反序列化 _value = "[" + _value.ToString() + "]"; List lsmain = Newtonsoft.Json.JsonConvert.DeserializeObject>(_value); string sql = string.Empty; //保存 oCN.BeginTran(); sql = $"delete Gy_Supplier where HItemID = {lsmain[0].HItemID}"; oCN.RunProc(sql); sql = "set identity_insert Gy_Supplier on"; oCN.RunProc(sql); 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) " + " values('" + lsmain[0].HItemID + "','" + lsmain[0].HNumber + "','" + lsmain[0].HName + "','" + lsmain[0].HHelpCode + "','" + lsmain[0].HShortNumber + "','" + lsmain[0].HParentID + "'" + "," + lsmain[0].HLevel + ",0,'" + lsmain[0].HStopflag + "','" + lsmain[0].HRemark + "'" + ",'" + lsmain[0].HShortName + "','" + lsmain[0].HAddress + "','" + lsmain[0].HLinkMan + "','" + lsmain[0].HLinkPhone + "','" + lsmain[0].HMobilePhone + "'" + ",'" + lsmain[0].HFax + "','" + lsmain[0].HPostalCode + "','" + lsmain[0].HEmail + "','" + lsmain[0].HBank + "','" + lsmain[0].HBankAccount + "'" + ",'" + lsmain[0].HTaxNum + "','" + lsmain[0].HTaxRate + "','" + lsmain[0].HCountry + "','" + lsmain[0].HCorMan + "','" + lsmain[0].HEnglishName + "'" + ",'" + lsmain[0].HEnglishAddress + "'," + lsmain[0].HCurID + "," + lsmain[0].HSSID + "," + lsmain[0].HAreaID + ") "); //修改上级为非末级代码 sql = "set identity_insert Gy_Supplier off"; oCN.RunProc(sql); oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "保存成功!"; objJsonResult.data = 1; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "保存失败!" + e.ToString(); objJsonResult.data = 1; return objJsonResult; } } /// /// 修改单据-保存按钮 ///参数:string sql。 ///返回值:object。 /// [Route("Gy_Supplier/AddBill1")] [HttpPost] public object AddBill1([FromBody] JObject oMain) { try { DAL.ClsGy_Supplier_Ctl oDept = new DAL.ClsGy_Supplier_Ctl(); DAL.ClsGy_Supplier_View oDeptHlp = new DAL.ClsGy_Supplier_View(); var _value = oMain["oMain"].ToString(); string msg1 = _value.ToString(); string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); string msg2 = sArray[0].ToString(); //表头数据 string msg3 = sArray[1].ToString(); //列表主ID string msg4 = sArray[2].ToString(); //登录人员 string msg5 = sArray[3].ToString(); //权限模块代码 //反序列化 msg2 = "[" + msg2.ToString() + "]"; List list = Newtonsoft.Json.JsonConvert.DeserializeObject>(msg2); long HItemID = list[0].HInterID; string HNumber = list[0].HNumber; string HShortNumber = list[0].HShortNumber; string HName = list[0].HName; long HParentID = list[0].HParentID; long HLevel = list[0].HLevel; string HEndFlag = list[0].HEnfFlag; string HStopflag = list[0].HStopflag; string HHelpCode = list[0].HHelpCode; string HShortName = list[0].HShortName; string HAddress = list[0].HAddress; string HLinkMan = list[0].HLinkMan; string HLinkPhone = list[0].HLinkPhone; string HBankAccount = list[0].HMobilePhone; string HFax = list[0].HFax; string HPostalCode = list[0].HPostalCode; string HEmail = list[0].HEmail; string HBank = list[0].HBank; string HMobilePhone = list[0].HMobilePhone; string HTaxNum = list[0].HTaxNum; Double HTaxRate = list[0].HTaxRate; string HCountry = list[0].HCountry; string HCorMan = list[0].HCorMan; string HEnglishName = list[0].HEnglishName; string HEnglishAddress = list[0].HEnglishAddress; long HCurID = list[0].HCurID; long HSSID = list[0].HSSID; long HAreaID = list[0].HAreaID; string HUseFlag = list[0].HUseFlag; long HERPItemID = list[0].HERPItemID; DateTime HMakeTime = list[0].HMakeTime; long HCreateOrgID = list[0].HCreateOrgID; long HUseOrgID = list[0].HUseOrgID; string HRemark = list[0].HRemark; //判断权限 if (!ClsPub.Security_Log(msg5, 1, false, msg4)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无保存权限!"; objJsonResult.data = null; return objJsonResult; } if (!DBUtility.ClsPub.AllowNumber(HNumber)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "代码中不能出现连续‘.’并且首位末位不能为‘.’!"; objJsonResult.data = null; return objJsonResult; } //若MAINDI重复则重新获取 oCN.BeginTran(); //主表 oCN.RunProc("Update Gy_Supplier set " + " HNumber='" + HNumber + "'" + ",HName='" + HName + "'" + ",HShortNumber='" + HShortNumber + "'" + ",HParentID=" + HParentID.ToString() + ",HLevel=" + HLevel.ToString() + ",HStopflag ='" + HStopflag + "'" + ",HRemark= '" + HRemark + "'" + ",HHelpCode='" + HHelpCode + "'" + ",HShortName='" + HShortName + "'" + ",HAddress='" + HAddress + "'" + ",HLinkMan='" + HLinkMan + "'" + ",HLinkPhone='" + HLinkPhone + "'" + ",HMobilePhone='" + HMobilePhone + "'" + ",HFax='" + HFax + "'" + ",HPostalCode='" + HPostalCode + "'" + ",HEmail='" + HEmail + "'" + ",HBank='" + HBank + "'" + ",HBankAccount='" + HBankAccount + "'" + ",HTaxNum='" + HTaxNum + "'" + ",HTaxRate=" + HTaxRate.ToString() + ",HCountry='" + HCountry + "'" + ",HCorMan='" +HCorMan + "'" + ",HEnglishName='" + HEnglishName + "'" + ",HEnglishAddress='" + HEnglishAddress + "'" + ",HCurID=" + HCurID.ToString() + ",HSSID=" + HSSID.ToString() + ",HAreaID=" + HAreaID.ToString() + "Where HItemID=" + HItemID, ref DBUtility.ClsPub.sExeReturnInfo); //修改子项目代码 //oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_Department,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo); //将上级 为非末级 oCN.RunProc("Update Gy_Supplier set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo); // oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "修改单据成功!"; //objJsonResult.data = null; return objJsonResult; } catch (Exception e) { oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.Message; objJsonResult.data = null; return objJsonResult; } } /// /// 供应商列表删除 /// /// 删除列的ID /// 当前登录用户 /// /// [Route("Gy_Supplier/Delete_Json")] [HttpGet] public object Delete_Json(long HItemID, string User, string ModRightNameDelete) { DAL.ClsGy_Supplier_Ctl oGroup = new DAL.ClsGy_Supplier_Ctl(); DAL.ClsGy_Supplier_View oGroupHlp = new DAL.ClsGy_Supplier_View(); try { if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 1, false, User)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有删除权限"; objJsonResult.data = null; return objJsonResult; } if (oGroupHlp.GetInfoByID(HItemID)) { if (oGroup.HavChildCodes(HItemID)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "此项目存在子项目,不能删除!"; objJsonResult.data = null; return objJsonResult; } //删除前判断是否 已使用 20141020 if (oGroupHlp.omodel.HUseFlag != "未使用") { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "此项目已使用或者未检测,不能删除!请重新检测再删除!"; objJsonResult.data = null; return objJsonResult; } // if (oGroup.DeleteByID(HItemID)) { //写入日志 ClsPub.Add_Log("", "删除项目,代码:" + oGroupHlp.omodel.HNumber + ",名称:" + oGroupHlp.omodel.HName, ClsPub.CurUserName); //更新上级为 末级 objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "删除成功"; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "删除失败"; objJsonResult.data = null; return objJsonResult; } } //ds = oCN.RunProcReturn("delete from Gy_Department where HItemID = " + HItemID, "Gy_Department"); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "删除成功"; objJsonResult.data = null; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #region 供应商审核、反审核 /// /// /// /// 单据ID /// 审核(0),反审核(1) /// 审核人 /// [Route("Gy_Supplier/AuditGy_Supplier")] [HttpGet] public object AuditGy_Material(int HInterID, int IsAudit, string CurUserName) { try { //审核权限 if (!DBUtility.ClsPub.Security_Log_second("Gy_Supplier_Check", 1, false, CurUserName)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "审核失败!无权限!"; objJsonResult.data = null; return objJsonResult; } var ds = oCN.RunProcReturn("select * from Gy_Supplier where HItemID=" + HInterID, "Gy_Supplier"); if (ds.Tables[0].Rows.Count > 0) { if (IsAudit == 0) //审核判断 { if (ds.Tables[0].Rows[0]["HCheckEmp"].ToString() != "") { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "单据已审核!不能再次审核!"; objJsonResult.data = null; return objJsonResult; } } if (IsAudit == 1) //反审核判断 { if (ds.Tables[0].Rows[0]["HCheckEmp"].ToString() == "") { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "单据未审核!不需要反审核!"; objJsonResult.data = null; return objJsonResult; } } } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "单据不存在!"; objJsonResult.data = null; return objJsonResult; } oCN.BeginTran(); if (IsAudit == 0) //审核判断 { oCN.RunProc("update Gy_Supplier set HCheckEmp='" + CurUserName + "',HCheckTime=getdate() where HItemID=" + HInterID); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "审核成功"; objJsonResult.data = null; } if (IsAudit == 1) //反审核判断 { oCN.RunProc("update Gy_Supplier set HCheckEmp='',HCheckTime=null where HItemID=" + HInterID); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "反审核成功"; objJsonResult.data = null; } oCN.Commit(); return objJsonResult; } catch (Exception e) { oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "审核失败或者反审核失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region 供应商禁用、反禁用 /// /// /// /// 单据ID /// 禁用(0),反禁用(1) /// 审核人 /// [Route("Gy_Supplier/StopGy_Supplier")] [HttpGet] public object StopGy_Supplier(int HInterID, int IsStop, string CurUserName) { try { //审核权限 if (!DBUtility.ClsPub.Security_Log_second("Gy_Supplier_Stop", 1, false, CurUserName)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "禁用失败!无权限!"; objJsonResult.data = null; return objJsonResult; } var ds = oCN.RunProcReturn("select * from Gy_Supplier where HItemID=" + HInterID, "Gy_Supplier"); if (ds.Tables[0].Rows.Count > 0) { if (IsStop == 0) //禁用判断 { if (ds.Tables[0].Rows[0]["HStopEmp"].ToString() != "") { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "单据已禁用!不能再次禁用!"; objJsonResult.data = null; return objJsonResult; } } if (IsStop == 1) //反禁用判断 { if (ds.Tables[0].Rows[0]["HStopEmp"].ToString() == "") { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "单据未禁用!不需要反禁用!"; objJsonResult.data = null; return objJsonResult; } } } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "单据不存在!"; objJsonResult.data = null; return objJsonResult; } oCN.BeginTran(); if (IsStop == 0) //禁用判断 { oCN.RunProc("update Gy_Supplier set HStopEmp='" + CurUserName + "',HStopTime=getdate(),HStopflag=1 where HItemID=" + HInterID); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "禁用成功"; objJsonResult.data = null; } if (IsStop == 1) //反禁用判断 { oCN.RunProc("update Gy_Supplier set HStopEmp='',HStopTime=null,HStopflag=0 where HItemID=" + HInterID); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "反禁用成功"; objJsonResult.data = null; } oCN.Commit(); return objJsonResult; } catch (Exception e) { oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "禁用失败或者反禁用失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region [同步基础资料] [Route("Gy_Supplier/Gy_SupplierViewApi")] [HttpGet] public json Gy_SupplierViewApi(string Number, string Type) { string sql = string.Empty; string sReturn = ""; if (oSystemParameter.ShowBill(ref sReturn) == true) { //系统参数是否为私有云模式,N为公有云模式,Y为私有云模式 if (oSystemParameter.omodel.WMS_CloudMode == "Y") { #region [私有云模式,直接调用数据库存储过程更新] try { oCN.BeginTran(); SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); DataSet DS = oCn.RunProcReturn("exec h_p_WMS_ERPBasicInfoToLocal '" + Number + "','" + Type + "'", "h_p_WMS_ERPBasicInfoToLocal"); if (DS == null) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "基础资料同步失败"; objJsonResult.data = null; return objJsonResult; } else { if (DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HBack"]) == "2") { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "ERP中不存在该代码"; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "基础资料同步成功"; objJsonResult.data = null; return objJsonResult; } } } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } #endregion } else { #region [公有云模式,调用WEBAPI的方式进行更新] var json = new { CreateOrgId = 0, Number = Number, Id = "" }; #region [金蝶部分] //登录金蝶 var loginRet = InvokeHelper.Login(); var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value(); //判断是否登录成功 if (isSuccess < 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = loginRet; objJsonResult.data = null; return objJsonResult; } //查看 获取数据 var _result = InvokeHelper.View("BD_Supplier", JsonConvert.SerializeObject(json)); var _saveObj = JObject.Parse(_result); //判断数据是否获取成功 if (_saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE") { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "金蝶供应商同步失败jsonRoot:" + _result; objJsonResult.data = null; return objJsonResult; } #endregion //获取数据 DataSet Ds; Ds = oCN.RunProcReturn("select * from Gy_Supplier where HNumber = '" + Number + "'", "Gy_Supplier"); if (Ds.Tables[0].Rows.Count != 0 && ClsPub.isLong(Ds.Tables[0].Rows[0]["HItemID"].ToString()) != 0) { } #region [表数据赋值] var jsonData = new { HItemID = _saveObj["Result"]["Result"]["Id"], HERPItemID = _saveObj["Result"]["Result"]["Id"], HNumber = _saveObj["Result"]["Result"]["Number"], HName = _saveObj["Result"]["Result"]["Name"][0]["Value"], HShortNumber = _saveObj["Result"]["Result"]["Number"], HParentID = 0, HLevel = 1, HEndFlag = 1, HStopflag = _saveObj["Result"]["Result"]["ForbidStatus"].ToString() == "A" ? 0 : 1, HRemark = "CLD-ERP导入", HUseFlag = "已使用", HMakeTime = _saveObj["Result"]["Result"]["CreateDate"], HCREATEORGID = _saveObj["Result"]["Result"]["CreateOrgId_Id"], HUSEORGID = _saveObj["Result"]["Result"]["UseOrgId_Id"], HPAYCONDITION = _saveObj["Result"]["Result"]["SupplierFinance"][0]["PayCondition_Id"] }; #endregion // 删除主表对应数据 sql = $"delete from Gy_Supplier where HItemID = " + jsonData.HItemID + " and HNumber = '" + Number + "'"; oCN.RunProc(sql); sql = "set identity_insert Gy_Supplier on"; oCN.RunProc(sql); //插入表 sql = $@" insert into Gy_Supplier (HItemID,HERPItemID,HNumber,HName,HShortNumber,HParentID ,HLevel,HEndFlag,HStopflag,HRemark,HUseFlag,HMakeTime,HCREATEORGID,HUSEORGID ,HPAYCONDITION ) values ({jsonData.HItemID},{jsonData.HERPItemID},'{jsonData.HNumber}','{jsonData.HName}', '{jsonData.HShortNumber}',{jsonData.HParentID},{jsonData.HLevel},{jsonData.HEndFlag},{jsonData.HStopflag},'{jsonData.HRemark}','{jsonData.HUseFlag}','{jsonData.HMakeTime}',{jsonData.HCREATEORGID},{jsonData.HUSEORGID},{jsonData.HPAYCONDITION})"; oCN.RunProc(sql); sql = "set identity_insert Gy_Supplier off"; oCN.RunProc(sql); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "供应商同步成功!"; objJsonResult.data = null; return objJsonResult; #endregion } } else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "基础资料读取失败!"; objJsonResult.data = null; return objJsonResult; } } #endregion } }