|  |  |  | 
|---|
|  |  |  | using Newtonsoft.Json.Linq; | 
|---|
|  |  |  | using Newtonsoft.Json; | 
|---|
|  |  |  | using Newtonsoft.Json.Linq; | 
|---|
|  |  |  | using Pub_Class; | 
|---|
|  |  |  | using System; | 
|---|
|  |  |  | using System.Collections; | 
|---|
|  |  |  | 
|---|
|  |  |  | /// </summary> | 
|---|
|  |  |  | [Route("Gy_Customer/list")] | 
|---|
|  |  |  | [HttpGet] | 
|---|
|  |  |  | public object list(string sWhere) | 
|---|
|  |  |  | public object list(string sWhere, string user, string Organization) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | try | 
|---|
|  |  |  | { | 
|---|
|  |  |  | if (sWhere == null || sWhere.Equals("")) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | ds = oCN.RunProcReturn("select * from h_v_Gy_CustomerList " + sWhere, "h_v_Gy_CustomerList"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | else | 
|---|
|  |  |  | { | 
|---|
|  |  |  | string sql1 = "select * from h_v_Gy_CustomerList where 1 = 1 "; | 
|---|
|  |  |  | string sql = sql1 + sWhere; | 
|---|
|  |  |  | ds = oCN.RunProcReturn(sql, "h_v_Gy_CustomerList"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (ds == null || ds.Tables[0].Rows.Count == 0) | 
|---|
|  |  |  | List<object> columnNameList = new List<object>(); | 
|---|
|  |  |  | //编辑权限 | 
|---|
|  |  |  | if (!DBUtility.ClsPub.Security_Log_second("Crm_CustomerFileList", 1, false, user)) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = "0"; | 
|---|
|  |  |  | objJsonResult.count = 0; | 
|---|
|  |  |  | objJsonResult.Message = "false!"; | 
|---|
|  |  |  | objJsonResult.Message = "无查看权限!"; | 
|---|
|  |  |  | objJsonResult.data = null; | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | string sql1 = string.Format(@"select * from h_v_Gy_CustomerList where 组织名称='" + Organization + "'"); | 
|---|
|  |  |  | if (sWhere == null || sWhere.Equals("")) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | ds = oCN.RunProcReturn(sql1 + sWhere + " order by 客户代码 ", "h_v_Gy_CustomerList"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | else | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = "1"; | 
|---|
|  |  |  | objJsonResult.count = 1; | 
|---|
|  |  |  | objJsonResult.Message = "Sucess!"; | 
|---|
|  |  |  | objJsonResult.data = ds.Tables[0]; | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | string sql = sql1 + sWhere + " order by 客户代码 "; | 
|---|
|  |  |  | ds = oCN.RunProcReturn(sql, "h_v_Gy_CustomerList"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //添加列名 | 
|---|
|  |  |  | 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) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | 
|---|
|  |  |  | { | 
|---|
|  |  |  | try | 
|---|
|  |  |  | { | 
|---|
|  |  |  | ds = oCN.RunProcReturn("select * from Gy_Customer where HItemID=" + HInterID, "Gy_Customer"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | string sql = string.Format(@"select  c.HItemID,c.HNumber 客户代码,c.HName 客户名称,c.HHelpCode  助记码,c.HShortName 简称,c.HAddress 地址,c.HLinkMan 联系人,c.HLinkPhone 联系电话 | 
|---|
|  |  |  | ,c.HMobilePhone 手机,c.HFax 传真,c.HPostalCode 邮编,c.HEmail 电子邮件,c.HCorMan 法人代表,c.HBank 开户银行,c.HBankAccount 银行账号, | 
|---|
|  |  |  | c.HTaxNum 税务登记号,c.HTaxRate 增值税率,c.HEnglishName 英文名称,c.HEngLishAddress 英文地址,c.HCountry 国家,c.HCusStatus 客户状态 | 
|---|
|  |  |  | ,c.HStopflag 禁用标志,c.HRemark 备注,c.HAreaID 地区ID,a.HName 地区名称,c.HCurID 默认货币ID,r.HName 默认货币, | 
|---|
|  |  |  | c.HSSID 结算方式ID,s.HName 结算方式,c.HCusTypeID 客户分类ID,t.HName 客户分类 from Gy_Customer c | 
|---|
|  |  |  | left join Gy_AreaSet a on c.HAreaID=a.HItemID | 
|---|
|  |  |  | left join Gy_Currency r on c.HCurID=r.HItemID | 
|---|
|  |  |  | left  join Gy_SettleStyle s on c.HSSID=s.HItemID | 
|---|
|  |  |  | left  join Gy_CusType t on c.HCusTypeID=t.HItemID | 
|---|
|  |  |  | where c.HItemID='" + HInterID + "'"); | 
|---|
|  |  |  | ds = oCN.RunProcReturn(sql, "Gy_Customer"); | 
|---|
|  |  |  | objJsonResult.code = "1"; | 
|---|
|  |  |  | objJsonResult.count = 1; | 
|---|
|  |  |  | objJsonResult.Message = ""; | 
|---|
|  |  |  | 
|---|
|  |  |  | try | 
|---|
|  |  |  | { | 
|---|
|  |  |  | var _value = oMain["oMain"].ToString(); | 
|---|
|  |  |  | string msg1 = _value.ToString(); | 
|---|
|  |  |  | string msg3 = _value.ToString(); | 
|---|
|  |  |  | string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); | 
|---|
|  |  |  | string msg1 = sArray[0].ToString(); | 
|---|
|  |  |  | string msg2 = sArray[1].ToString(); | 
|---|
|  |  |  | //反序列化 | 
|---|
|  |  |  | msg1 = "[" + msg1.ToString() + "]"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | DAL.ClsGy_Customer_Ctl oDept = new DAL.ClsGy_Customer_Ctl(); | 
|---|
|  |  |  | DAL.ClsGy_Customer_View oDeptHlp = new DAL.ClsGy_Customer_View(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //编辑权限 | 
|---|
|  |  |  | if (!DBUtility.ClsPub.Security_Log_second("Gy_Customer_Edit", 1, false, msg2)) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = "0"; | 
|---|
|  |  |  | objJsonResult.count = 0; | 
|---|
|  |  |  | objJsonResult.Message = "无保存权限!"; | 
|---|
|  |  |  | objJsonResult.data = null; | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<Customer> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Customer>>(msg1); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | ",HSubsidyAccrualRating,HCreditRating,HMaxCreditRating" + | 
|---|
|  |  |  | ",HCusTypeID) " + | 
|---|
|  |  |  | " Values('" + HNumber + "','" + HName + "','" + HHelpCode + "','" + HShortNumber + "'," + HParentID + | 
|---|
|  |  |  | ", " + HLevel + ",0,0,'" + HRemark + "'" + | 
|---|
|  |  |  | ", " + HLevel + ",0,'" + HStopflag + "','" + HRemark + "'" + | 
|---|
|  |  |  | ",'" + HShortName + "','" + HAddress + "','" + HLinkMan + "','" + HLinkPhone + "','" + HMobilePhone + "'" + | 
|---|
|  |  |  | ",'" + HFax + "','" + HPostalCode + "','" + HEmail + "','" + HBank + "','" + HBankAccount + "'" + | 
|---|
|  |  |  | ",'" + HTaxNum + "'," + HTaxRate + ",'" + HCountry + "','" + HCorMan + "','" + HEnglishName + "'" + | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | [Route("Gy_Customer/SaveGy_CustomerListApi")] | 
|---|
|  |  |  | [HttpPost] | 
|---|
|  |  |  | public object SaveGy_CustomerListApi([FromBody] JObject oMain) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | try | 
|---|
|  |  |  | { | 
|---|
|  |  |  | var model = oMain["model"].ToString(); | 
|---|
|  |  |  | var custLocationModel = oMain["model"]["HCustLocationEntry"].ToString(); | 
|---|
|  |  |  | //反序列化 | 
|---|
|  |  |  | model = "[" + model + "]"; | 
|---|
|  |  |  | List<Customer> lsmain = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Customer>>(model); | 
|---|
|  |  |  | List<Model.ClsGy_CustLocation_Model> custLocationls = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsGy_CustLocation_Model>>(custLocationModel); | 
|---|
|  |  |  | string sql = string.Empty; | 
|---|
|  |  |  | oCN.BeginTran(); | 
|---|
|  |  |  | sql = $"delete gy_Customer where HItemID = {lsmain[0].HItemID}"; | 
|---|
|  |  |  | oCN.RunProc(sql); | 
|---|
|  |  |  | sql = "set identity_insert gy_Customer on"; | 
|---|
|  |  |  | oCN.RunProc(sql); | 
|---|
|  |  |  | //主表_客户 | 
|---|
|  |  |  | 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) " + | 
|---|
|  |  |  | " 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 + ",'" + lsmain[0].HCusStatus + "'" + | 
|---|
|  |  |  | "," + lsmain[0].HEmpID + "," + lsmain[0].HCreditDate + "," + lsmain[0].HCreditRatingDate + "," + lsmain[0].HMaxCreditRatingDate + | 
|---|
|  |  |  | "," + lsmain[0].HMonthUseQty + "," + lsmain[0].HForecastCreditRating + "," + lsmain[0].HCreditLevelID + "," + lsmain[0].HCountAccrualRating + | 
|---|
|  |  |  | "," + lsmain[0].HSubsidyAccrualRating + "," + lsmain[0].HCreditRating + "," + lsmain[0].HMaxCreditRating + | 
|---|
|  |  |  | ", " + lsmain[0].HCusTypeID + ")"); | 
|---|
|  |  |  | sql = "set identity_insert gy_Customer off"; | 
|---|
|  |  |  | oCN.RunProc(sql); | 
|---|
|  |  |  | //客户_交货地点 | 
|---|
|  |  |  | sql = $"delete Gy_CustLocation where HItemID = {lsmain[0].HItemID}"; | 
|---|
|  |  |  | oCN.RunProc(sql); | 
|---|
|  |  |  | sql = "set identity_insert Gy_CustLocation on"; | 
|---|
|  |  |  | oCN.RunProc(sql); | 
|---|
|  |  |  | foreach (var item in custLocationls) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | sql = $@"insert into Gy_CustLocation(HItemID,HEntryID,HNumber,HName ,HShortNumber,HParentID ,HLevel | 
|---|
|  |  |  | ,HEndFlag,HStopflag,HRemark ,HHelpCode ,HUseFlag | 
|---|
|  |  |  | ,HMakeTime ,HMakeEmp ,HCheckEmp ,HCheckTime ,HModifyEmp | 
|---|
|  |  |  | ,HModifyTime ,HStopEmp ,HStopTime ,HUSEORGID,HCREATEORGID) | 
|---|
|  |  |  | values({item.HItemID},{item.HENTRYID},'{item.HNumber}','{item.HName}','{item.HShortNumber}',{item.HParentID},{item.HLevel} | 
|---|
|  |  |  | ,{Convert.ToString(item.HEndFlag ? 1 : 0)},{Convert.ToString(item.HStopflag ? 1 : 0) },'{item.HRemark}','{item.HHelpCode}','{item.HUseFlag}' | 
|---|
|  |  |  | ,'{item.HMakeTime}','{item.HMakeEmp}','{item.HCheckEmp}','{item.HCheckTime}','{item.HModifyEmp}' | 
|---|
|  |  |  | ,'{item.HModifyTime}','{item.HStopEmp}',null,{item.HUSEORGID},{item.HCREATEORGID})"; | 
|---|
|  |  |  | oCN.RunProc(sql); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | sql = "set identity_insert Gy_CustLocation off"; | 
|---|
|  |  |  | oCN.RunProc(sql); | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /// <summary> | 
|---|
|  |  |  | /// 修改单据-保存按钮 | 
|---|
|  |  |  | ///参数:string sql。 | 
|---|
|  |  |  | 
|---|
|  |  |  | 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(); | 
|---|
|  |  |  | string msg4 = sArray[2].ToString(); | 
|---|
|  |  |  | string msg5 = sArray[3].ToString(); | 
|---|
|  |  |  | 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<Customer> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Customer>>(msg2); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //判断权限 | 
|---|
|  |  |  | if (!ClsPub.Security_Log(msg5, 1, true, msg4)) | 
|---|
|  |  |  | if (!ClsPub.Security_Log(msg5, 1, false, msg4)) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = "0"; | 
|---|
|  |  |  | objJsonResult.count = 0; | 
|---|
|  |  |  | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (oDept.HavSameNumber(HItemID, HNumber)) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = "0"; | 
|---|
|  |  |  | objJsonResult.count = 0; | 
|---|
|  |  |  | objJsonResult.Message = "代码重复!"; | 
|---|
|  |  |  | objJsonResult.data = null; | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //若MAINDI重复则重新获取 | 
|---|
|  |  |  | 
|---|
|  |  |  | " HNumber='" + HNumber + "'" + | 
|---|
|  |  |  | ",HName='" + HName + "'" + | 
|---|
|  |  |  | ",HShortNumber='" + HShortNumber + "'" + | 
|---|
|  |  |  | ",HParentID=" + HParentID + | 
|---|
|  |  |  | ",HLevel ='" + HLevel + "'" + | 
|---|
|  |  |  | ",HEndFlag  ='" + HEndFlag + "'" + | 
|---|
|  |  |  | ",HParentID='" + HParentID + "'" + | 
|---|
|  |  |  | ",HStopflag ='" + HStopflag + "'" + | 
|---|
|  |  |  | ",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 + "'" + | 
|---|
|  |  |  | ",HCountry ='" + HCountry + "'" + | 
|---|
|  |  |  | ",HEnglishName ='" + HEnglishName + "'" + | 
|---|
|  |  |  | ",HCorMan ='" + HCorMan + "'" + | 
|---|
|  |  |  | ",HEnglishAddress ='" + HEnglishAddress + "'" + | 
|---|
|  |  |  | ",HCurID  ='" + HCurID + "'" + | 
|---|
|  |  |  | ",HSSID  ='" + HSSID + "'" + | 
|---|
|  |  |  | ",HAreaID  ='" + HAreaID + "'" + | 
|---|
|  |  |  | ",HCusStatus  ='" + HCusStatus + "'" + | 
|---|
|  |  |  | ",HCusTypeID  ='" + HCusTypeID + "'" + | 
|---|
|  |  |  | ",HRemark= '" + HRemark + "' Where HItemID=" + HItemID, ref DBUtility.ClsPub.sExeReturnInfo); | 
|---|
|  |  |  | //修改子项目代码 | 
|---|
|  |  |  | //oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_Department,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo); | 
|---|
|  |  |  | 
|---|
|  |  |  | DAL.ClsGy_Customer_View oDeptHlp = new DAL.ClsGy_Customer_View(); | 
|---|
|  |  |  | try | 
|---|
|  |  |  | { | 
|---|
|  |  |  | if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 1, true, User)) | 
|---|
|  |  |  | if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 1, false, User)) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = "0"; | 
|---|
|  |  |  | objJsonResult.count = 0; | 
|---|