private List <StockOrgOperateResult> DoOrgClose(List <long> orgIds, List <string> orgNums, bool isReDoAction) { if (orgIds.Count < 1) { this.View.ShowMessage(ResManager.LoadKDString("请先选择未成功处理过的库存组织", "004023030000247", SubSystemType.SCM, new object[0]), MessageBoxType.Notice); return(null); } DateTime minValue = DateTime.MinValue; object obj2 = this.Model.GetValue("FCLOSEDATE"); if (obj2 != null) { minValue = DateTime.Parse(obj2.ToString()); } if ((minValue == DateTime.MinValue) && !this.isOpenAccount) { this.View.ShowMessage(ResManager.LoadKDString("请先录入关账日期", "004023030000244", SubSystemType.SCM, new object[0]), MessageBoxType.Notice); return(null); } if (this.isbBusiness) { this.View.ShowMessage(ResManager.LoadKDString("上次提交未执行完毕,请稍后再试", "004023030002134", SubSystemType.SCM, new object[0]), MessageBoxType.Notice); return(null); } this.isbBusiness = true; List <StockOrgOperateResult> list = null; List <NetworkCtrlResult> networkCtrlResults = this.BatchStartNetCtl(orgNums); if ((networkCtrlResults != null) && (networkCtrlResults.Count == orgNums.Count)) { try { bool flag = false; bool flag2 = false; bool flag3 = false; if (isReDoAction) { this.ignoreCheckInfo.TryGetValue("Minus" + orgIds[0], out flag); this.ignoreCheckInfo.TryGetValue("CntBillAudit" + orgIds[0], out flag2); this.ignoreCheckInfo.TryGetValue("StkBillDraft" + orgIds[0], out flag3); } list = StockServiceHelper.InvAccountOnOff(base.Context, orgIds, minValue, this.isOpenAccount, !flag, !flag2, !flag3, this.bRecordMidData); } catch (Exception exception) { this.View.ShowErrMessage(exception.Message, string.Format(ResManager.LoadKDString("执行{0}失败", "004023030002137", SubSystemType.SCM, new object[0]), this.isOpenAccount ? ResManager.LoadKDString("反关账", "004023030000238", SubSystemType.SCM, new object[0]) : ResManager.LoadKDString("关账", "004023030000241", SubSystemType.SCM, new object[0])), MessageBoxType.Notice); } } NetworkCtrlServiceHelper.BatchCommitNetCtrl(base.Context, networkCtrlResults); this.isbBusiness = false; return(list); }
public IHttpController Create(HttpRequestMessage request, HttpControllerDescriptor controllerDescriptor, Type controllerType) { if (controllerType == typeof(StockController)) { string connStr = System.Configuration.ConfigurationManager.ConnectionStrings[cConnectionStringKey].ConnectionString; IDataAccess dataAccess = new SqlDataAccess(new SProcNameResolution(), connStr); IStockServiceHelper helper = new StockServiceHelper(dataAccess); return(new StockController(helper)); } else { return(null); } }
public override void CreateNewData(BizDataEventArgs e) { DynamicObjectType dynamicObjectType = this.Model.BillBusinessInfo.GetDynamicObjectType(); Entity entity = this.View.BusinessInfo.Entrys[1]; DynamicObjectType dt = entity.DynamicObjectType; DynamicObject dataEntity = new DynamicObject(dynamicObjectType) { ["CloseDate"] = DateTime.Now.Date }; DynamicObjectCollection objects = entity.DynamicProperty.GetValue <DynamicObjectCollection>(dataEntity); BusinessObject bizObject = new BusinessObject { Id = "STK_Account", PermissionControl = 1, SubSystemId = "STK" }; List <long> valList = PermissionServiceHelper.GetPermissionOrg(base.Context, bizObject, this.isOpenAccount ? "4cc4dea42de6441ebeb21c509358d73d" : "1046d14017fd45dbaff9b1fe4affe0c6"); if ((valList == null) || (valList.Count < 1)) { e.BizDataObject = dataEntity; } else { Dictionary <string, object> batchStockDate = StockServiceHelper.GetBatchStockDate(base.Context, valList); if ((batchStockDate == null) || (batchStockDate.Keys.Count < 1)) { e.BizDataObject = dataEntity; } else { valList.Clear(); foreach (string str in batchStockDate.Keys) { valList.Add(Convert.ToInt64(str)); } List <SelectorItemInfo> list2 = new List <SelectorItemInfo> { new SelectorItemInfo("FORGID"), new SelectorItemInfo("FName"), new SelectorItemInfo("FNumber"), new SelectorItemInfo("FDescription") }; string str2 = this.GetInFilter(" FORGID", valList) + $" AND FDOCUMENTSTATUS = 'C' AND FFORBIDSTATUS = 'A' AND (FORGFUNCTIONS like'%103%') AND EXISTS(SELECT 1 FROM T_BAS_SYSTEMPROFILE BSP WHERE BSP.FCATEGORY = 'STK' AND BSP.FORGID = FORGID AND BSP.FACCOUNTBOOKID = 0 AND BSP.FKEY = 'IsInvEndInitial' AND BSP.FVALUE = '1') {(this.isOpenAccount ? "AND EXISTS(SELECT 1 FROM T_STK_CLOSEPROFILE SCP WHERE SCP.FCATEGORY = 'STK' AND SCP.FORGID = FORGID )" : "")} "; QueryBuilderParemeter para = new QueryBuilderParemeter { FormId = "ORG_Organizations", SelectItems = list2, FilterClauseWihtKey = str2, OrderByClauseWihtKey = "", IsolationOrgList = null, RequiresDataPermission = true }; DynamicObjectCollection source = QueryServiceHelper.GetDynamicObjectCollection(base.Context, para, null); DataTable stockOrgAcctLastCloseDate = CommonServiceHelper.GetStockOrgAcctLastCloseDate(base.Context, ""); Dictionary <long, DateTime> dictionary2 = new Dictionary <long, DateTime>(); foreach (DataRow row in stockOrgAcctLastCloseDate.Rows) { if (!(row["FCLOSEDATE"] is DBNull) && !string.IsNullOrWhiteSpace(row["FCLOSEDATE"].ToString())) { dictionary2[Convert.ToInt64(row["FORGID"])] = Convert.ToDateTime(row["FCLOSEDATE"]); } } int num = 0; if ((source != null) && (source.Count <DynamicObject>() > 0)) { foreach (DynamicObject obj4 in source) { long key = Convert.ToInt64(obj4["FORGID"]); DynamicObject item = new DynamicObject(dt) { ["Check"] = true, ["StockOrgNo"] = obj4["FNumber"].ToString(), ["StockOrgName"] = ((obj4["FName"] == null) || string.IsNullOrEmpty(obj4["FName"].ToString())) ? "" : obj4["FName"].ToString(), ["StockOrgDesc"] = ((obj4["FDescription"] == null) || string.IsNullOrEmpty(obj4["FDescription"].ToString())) ? "" : obj4["FDescription"].ToString(), ["StockOrgID"] = obj4["FORGID"].ToString(), ["Result"] = "", ["RetFlag"] = false, ["Seq"] = num++ }; if (dictionary2.ContainsKey(key)) { item["LastCloseDate"] = dictionary2[key]; } objects.Add(item); } } e.BizDataObject = dataEntity; } } }