|  |  |  | 
|---|
|  |  |  | { | 
|---|
|  |  |  | public class Gy_DepartmentController : ApiController | 
|---|
|  |  |  | { | 
|---|
|  |  |  | //获取系统参数 | 
|---|
|  |  |  | Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); | 
|---|
|  |  |  | public DBUtility.ClsPub.Enum_BillStatus BillStatus; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private json objJsonResult = new json(); | 
|---|
|  |  |  | 
|---|
|  |  |  | long HItemID = list[0].HItemID; | 
|---|
|  |  |  | string HNumber = list[0].HNumber; | 
|---|
|  |  |  | string HName = list[0].HName; | 
|---|
|  |  |  | string HShortNumber = list[0].HShortNumber; | 
|---|
|  |  |  | string HRemark = list[0].HRemark; | 
|---|
|  |  |  | string HUseFlag = list[0].HUseFlag; | 
|---|
|  |  |  | long HParentID = list[0].HParentID; | 
|---|
|  |  |  | string HBarCode = list[0].HBarCode; | 
|---|
|  |  |  | string HHelpCode = list[0].HHelpCode; | 
|---|
|  |  |  | string HUpDater = list[0].HUpDater; | 
|---|
|  |  |  | string HUpDater = msg3; | 
|---|
|  |  |  | long HEmpID = list[0].HEmpID; | 
|---|
|  |  |  | bool HStopflag = list[0].HStopflag; | 
|---|
|  |  |  | long HSecManagerID = list[0].HSecManagerID; | 
|---|
|  |  |  | //string HCreator = list[0].HCreator; | 
|---|
|  |  |  | long HCreateOrgID = list[0].HCreateOrgID; | 
|---|
|  |  |  | //DateTime HCreateDate = list[0].HCreateDate; | 
|---|
|  |  |  | long HUseOrgID = long.Parse(msg4); | 
|---|
|  |  |  | string HUpdater = list[0].HUpDater; | 
|---|
|  |  |  | long HUseOrgID = list[0].HUseOrgID; | 
|---|
|  |  |  | //DateTime HUpdateDate = list[0].HUpDateDate; | 
|---|
|  |  |  | string HChecker = list[0].HChecker; | 
|---|
|  |  |  | //DateTime HCheckDate = list[0].HCheckDate; | 
|---|
|  |  |  | string HDeleteMan = list[0].HDeleteMan; | 
|---|
|  |  |  | //DateTime HDeleteDate = list[0].HDeleteDate; | 
|---|
|  |  |  | long HLevel = 1; | 
|---|
|  |  |  | //末级标志 | 
|---|
|  |  |  | bool HEndFlag = true; | 
|---|
|  |  |  | long HEntityID = 1; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //得到短代码 | 
|---|
|  |  |  | string HShortNumber = DBUtility.ClsPub.GetShortNumber(HNumber); | 
|---|
|  |  |  | if (HShortNumber.Trim() == "") | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = "0"; | 
|---|
|  |  |  | objJsonResult.count = 0; | 
|---|
|  |  |  | objJsonResult.Message = "保存失败!短代码为空!"; | 
|---|
|  |  |  | objJsonResult.data = 1; | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //等级 | 
|---|
|  |  |  | int HLevel = DBUtility.ClsPub.GetLevel(HNumber); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //检查父级是否存在 | 
|---|
|  |  |  | long HParentID = 0; | 
|---|
|  |  |  | string sParent = DBUtility.ClsPub.GetParentCode(HNumber); | 
|---|
|  |  |  | if (sParent.Trim() == "") | 
|---|
|  |  |  | { | 
|---|
|  |  |  | HParentID = 0; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | else | 
|---|
|  |  |  | { | 
|---|
|  |  |  | ds = oCN.RunProcReturn("select * from Gy_Department where HNumber='" + sParent + "' and HStopFlag=0 ", "Gy_Department"); | 
|---|
|  |  |  | if (ds.Tables[0].Rows.Count > 0) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | HParentID = long.Parse(ds.Tables[0].Rows[0]["HItemID"].ToString()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | else | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = "0"; | 
|---|
|  |  |  | objJsonResult.count = 0; | 
|---|
|  |  |  | objJsonResult.Message = "保存失败!上级代码不存在或被禁用!"; | 
|---|
|  |  |  | objJsonResult.data = 1; | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //判断权限 | 
|---|
|  |  |  | //if (!ClsPub.Security_Log(msg5, 1, false, msg4)) | 
|---|
|  |  |  | //{ | 
|---|
|  |  |  | 
|---|
|  |  |  | oCN.BeginTran(); | 
|---|
|  |  |  | oCN.RunProc("Insert into Gy_Department " + | 
|---|
|  |  |  | " (HNumber,HName,HHelpCode,HShortNumber,HParentID" + | 
|---|
|  |  |  | ",HLevel,HEndFlag,HStopflag,HRemark,HEmpID,HBarCodeForBase,HEntityID,HUSEORGID) " + | 
|---|
|  |  |  | ",HLevel,HEndFlag,HStopflag,HRemark,HEmpID,HBarCodeForBase,HEntityID,HUSEORGID,HCREATEORGID,HMaker,HMakeTime) " + | 
|---|
|  |  |  | " Values('" + HNumber + "','" + HName + "','" + HHelpCode + "','" + HShortNumber + "'," + HParentID.ToString() + | 
|---|
|  |  |  | "," + HLevel.ToString() + "," + Convert.ToString(HEndFlag ? 1 : 0) + "," + Convert.ToString(HStopflag ? 1 : 0) + ",'" + HRemark + "'," + HEmpID + ",'" + HBarCode + "'" + | 
|---|
|  |  |  | "," + HEntityID.ToString() + "," + HUseOrgID + ")", ref DBUtility.ClsPub.sExeReturnInfo); | 
|---|
|  |  |  | "," + HEntityID.ToString() + "," + HUseOrgID + ","+ HCreateOrgID + ",'"+ msg3 + "',getdate())", ref DBUtility.ClsPub.sExeReturnInfo); | 
|---|
|  |  |  | //修改上级为非末级代码 | 
|---|
|  |  |  | oCN.RunProc("Update Gy_Department set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo); | 
|---|
|  |  |  | oCN.Commit(); | 
|---|
|  |  |  | 
|---|
|  |  |  | " HNumber='" + HNumber + "'" + | 
|---|
|  |  |  | ",HName='" + HName + "'" + | 
|---|
|  |  |  | ",HHelpCode='" + HHelpCode + "'" + | 
|---|
|  |  |  | ",HLevel='" + HLevel + "'" + | 
|---|
|  |  |  | ",HShortNumber='" + HShortNumber + "'" + | 
|---|
|  |  |  | ",HBarCodeForBase='" + HBarCode + "'" + | 
|---|
|  |  |  | ",HParentID=" + HParentID + | 
|---|
|  |  |  | ",HEmpID=" + HEmpID.ToString() + | 
|---|
|  |  |  | ",HUSEORGID=" + HUseOrgID.ToString() + | 
|---|
|  |  |  | ",HCREATEORGID=" + HCreateOrgID.ToString() + | 
|---|
|  |  |  | ",HStopflag=" + Convert.ToString(HStopflag ? 1 : 0) + | 
|---|
|  |  |  | //",HUpdater='" + HUpdater + "'" + | 
|---|
|  |  |  | //",HUpdateDate= getdate()" + | 
|---|
|  |  |  | ",HUpDater='" + HUpDater + "'" + | 
|---|
|  |  |  | ",HUpDateDate= getdate()" + | 
|---|
|  |  |  | ",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); | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #region [同步基础资料] | 
|---|
|  |  |  | [Route("Gy_Department/Gy_DepartmentViewApi")] | 
|---|
|  |  |  | [HttpGet] | 
|---|
|  |  |  | public json Gy_DepartmentViewApi(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<int>(); | 
|---|
|  |  |  | //判断是否登录成功 | 
|---|
|  |  |  | if (isSuccess < 0) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = "0"; | 
|---|
|  |  |  | objJsonResult.count = 0; | 
|---|
|  |  |  | objJsonResult.Message = loginRet; | 
|---|
|  |  |  | objJsonResult.data = null; | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //查看 获取数据 | 
|---|
|  |  |  | var _result = InvokeHelper.View("BD_Department", 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_Department where HNumber = '" + Number + "'", "Gy_Department"); | 
|---|
|  |  |  | 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"], | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | #endregion | 
|---|
|  |  |  | // 删除主表对应数据 | 
|---|
|  |  |  | sql = $"delete from Gy_Department where HItemID = " + jsonData.HItemID + " and HNumber = '" + Number + "'"; | 
|---|
|  |  |  | oCN.RunProc(sql); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | sql = "set identity_insert Gy_Department on"; | 
|---|
|  |  |  | oCN.RunProc(sql); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //插入表 | 
|---|
|  |  |  | sql = $@" | 
|---|
|  |  |  | insert into Gy_Department | 
|---|
|  |  |  | (HItemID,HERPItemID,HNumber,HName,HShortNumber,HParentID | 
|---|
|  |  |  | ,HLevel,HEndFlag,HStopflag,HRemark,HUseFlag,HMakeTime,HCREATEORGID,HUSEORGID | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | 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})"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | oCN.RunProc(sql); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | sql = "set identity_insert Gy_Department 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 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|