Пример #1
0
        private List <NetworkCtrlResult> BatchStartNetCtl(List <string> orgNum)
        {
            if (orgNum == null)
            {
                return(null);
            }
            NetworkCtrlObject        networkCtrlObj = null;
            List <NetworkCtrlResult> list           = null;

            for (int i = 0; i < orgNum.Count; i++)
            {
                networkCtrlObj = NetworkCtrlServiceHelper.AddNetCtrlObj(base.Context, new LocaleValue(base.GetType().Name, 0x804), base.GetType().Name, base.GetType().Name + orgNum[i], NetworkCtrlType.BusinessObjOperateMutex, null, " ", true, true);
                NetworkCtrlServiceHelper.AddMutexNetCtrlObj(base.Context, networkCtrlObj.Id, networkCtrlObj.Id);
                NetWorkRunTimeParam para = new NetWorkRunTimeParam();
                NetworkCtrlResult   item = NetworkCtrlServiceHelper.BeginNetCtrl(base.Context, networkCtrlObj, para);
                if (item.StartSuccess)
                {
                    if (list == null)
                    {
                        list = new List <NetworkCtrlResult>();
                    }
                    list.Add(item);
                }
                else
                {
                    this.View.ShowErrMessage(string.Format(ResManager.LoadKDString("网络冲突:库存组织编码[{0}]正处于关账或反关账,不允许操作!", "004023030002149", SubSystemType.SCM, new object[0]), orgNum[i]), "", MessageBoxType.Notice);
                    return(list);
                }
            }
            return(list);
        }
Пример #2
0
        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);
        }