Пример #1
0
        public static WFExchangeData PostModirAction(ActionMethodParams actionMethodParams)
        {
            int contractId = actionMethodParams.InitialExchangeData[WfConstants.RelatedRecordIdKey].ConvertTo <int>();

            WFExchangeData ex = (WFExchangeData)actionMethodParams.WorkflowInstanceState.ExchangeData;

            ContractRule contractRule = new ContractRule(UnitOfWork);

            DomainClasses.Contract.Contract contract = contractRule.Find(contractId);



            if (contract == null)
            {
                throw new OMFValidationException($" قرارداد با شناسه ثبت شده یافت نشد. شناسه: {contractId}");
            }


            if (actionMethodParams.ContinueInfo.ActionId == (int)WorkFlowActionType.Taeed)
            {
                contract.Status = Status.ConfirmationContract;
                contractRule.Update(contract);
                contractRule.SaveChanges();

                InvoiceRule invoiceRule = new InvoiceRule(UnitOfWork);
                invoiceRule.ConvertContractToInvoice(contract.ID, NoeFactor.RentFrom);
            }
            return(ex);
        }
Пример #2
0
        public static WFExchangeData PostModirDakhiliAction(ActionMethodParams actionMethodParams)
        {
            try
            {
                int contractId = actionMethodParams.InitialExchangeData[WfConstants.RelatedRecordIdKey].ConvertTo <int>();

                WFExchangeData ex = (WFExchangeData)actionMethodParams.WorkflowInstanceState.ExchangeData;

                ContractRule contractRule = new ContractRule(UnitOfWork);
                DomainClasses.Contract.Contract contract = contractRule.Find(contractId);



                if (contract == null)
                {
                    throw new OMFValidationException($" قرارداد با شناسه ثبت شده یافت نشد. شناسه: {contractId}");
                }


                if (actionMethodParams.ContinueInfo.ActionId == (int)WorkFlowActionType.TabdelPishghrardadBeGharardad)
                {
                    using (var uow = new UnitOfWork())
                    {
                        contract.Status       = Status.ConfirmationPreContract;
                        contract.ContractType = ContractType.RentTo;

                        // var contract_Sazes = uow.Repository<Contract_Saze>().Queryable().Where(x => x.ContractID == contract.ID).ToList();

                        foreach (var contract_Saze in contract.Contract_Sazes ?? new List <Contract_Saze>())
                        {
                            contract_Saze.Status      = Status.ConfirmationPreContract;
                            contract_Saze.ObjectState = OMF.Common.Enums.ObjectState.Modified;
                        }

                        uow.Repository <DomainClasses.Contract.Contract>().Update(contract);


                        uow.SaveChanges();
                    }


                    InvoiceRule invoiceRule = new InvoiceRule(UnitOfWork);
                    var         invoice     = invoiceRule.ConvertContractToInvoice(contract.ID, NoeFactor.RentTo);

                    var document = invoiceRule.RegisterDocument(invoice, invoice.OrganId);

                    DocumentRule documentRule = new DocumentRule();
                    documentRule.Insert(document, invoice.OrganId);
                    documentRule.SaveChanges();
                }
                return(ex);
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Пример #3
0
        public static int ViseAuditForCreateContractChange(int Code, string UserCode, List <LocaleViseCostModel> CostList)
        {
            int        num     = 0;
            DataTable  table   = new DataTable();
            DataColumn column  = new DataColumn("Code", Type.GetType("System.String"));
            DataColumn column2 = new DataColumn("Type", Type.GetType("System.String"));

            table.Columns.Add(column);
            table.Columns.Add(column2);
            DataRow row = table.NewRow();

            row["Code"] = Code;
            row["Type"] = "Vise";
            table.Rows.Add(row);
            using (SqlConnection connection = new SqlConnection(FunctionRule.GetConnectionString()))
            {
                connection.Open();
                SqlTransaction transaction = connection.BeginTransaction();
                try
                {
                    try
                    {
                        LocaleViseBLL ebll = new LocaleViseBLL();
                        foreach (LocaleViseCostModel model in CostList)
                        {
                            ebll.UpdateCost(model, transaction);
                        }
                        num = ebll.PassAudit(Code, transaction);
                        ebll.Balance(Code, transaction);
                        string viseContractCode = ebll.GetModel(Code, transaction).ViseContractCode;
                        if (viseContractCode != "")
                        {
                            ContractRule.BuildContractChangeByNexusCodeType(viseContractCode, table, transaction, UserCode);
                        }
                        transaction.Commit();
                    }
                    catch (SqlException exception)
                    {
                        transaction.Rollback();
                        connection.Close();
                        throw exception;
                    }
                    return(num);
                }
                finally
                {
                    connection.Close();
                }
            }
            return(num);
        }
Пример #4
0
        public static WFExchangeData PostModirAction(ActionMethodParams actionMethodParams)
        {
            int contractSazeId = actionMethodParams.InitialExchangeData[WfConstants.RelatedRecordIdKey].ConvertTo <int>();

            WFExchangeData ex = (WFExchangeData)actionMethodParams.WorkflowInstanceState.ExchangeData;

            Contract_SazeRule contract_SazeRule = new Contract_SazeRule(UnitOfWork);
            Contract_Saze     contract_Saze     = contract_SazeRule.Find(contractSazeId);



            if (contract_Saze == null)
            {
                throw new OMFValidationException($"رسانه قرارداد با شناسه ثبت شده یافت نشد. شناسه: {contractSazeId}");
            }

            ContractRule contractRule = new ContractRule(UnitOfWork);

            DomainClasses.Contract.Contract contract = contractRule.Find(contract_Saze.ContractID);


            if (actionMethodParams.ContinueInfo.ActionId == (int)WorkFlowActionType.TaeedVaKhateme)
            {
                contract_Saze.Status = Status.ConfirmationContract;
                contract_SazeRule.Update(contract_Saze);
                contract_SazeRule.SaveChanges();

                if (contract.Contract_Sazes.All(x => x.Status == Status.ConfirmationContract))
                {
                    contract.Status = Status.ConfirmationContract;
                    contractRule.Update(contract);
                    contractRule.SaveChanges();
                }
            }
            return(ex);
        }
Пример #5
0
        /// <summary>
        /// 删除冲帐记录数据
        /// </summary>
        /// <param name="nId"></param>
        /// <param name="nOpStaffId"></param>
        /// <param name="strOpStaffName"></param>
        /// <param name="strErrText"></param>
        /// <returns></returns>
        public bool DeleteContractReverse(long nId, long nOpStaffId, string strOpStaffName, out string strErrText)
        {
            ContractRule rule = new ContractRule();

            return(rule.DeleteContractReverse(nId, nOpStaffId, strOpStaffName, out strErrText));
        }
Пример #6
0
        /// <summary>
        /// 合同退回修改
        /// </summary>
        /// <param name="nId"></param>
        /// <param name="nOpStaffId"></param>
        /// <param name="strOpStaffName"></param>
        /// <param name="strErrText"></param>
        /// <returns></returns>
        public bool ReturnModifyContract(long nId, long nOpStaffId, string strOpStaffName, out string strErrText)
        {
            ContractRule rule = new ContractRule();

            return(rule.ReturnModifyContract(nId, nOpStaffId, strOpStaffName, out strErrText));
        }
Пример #7
0
        /// <summary>
        /// 合同罚款处理
        /// </summary>
        /// <param name="listContract"></param>
        /// <param name="nOpStaffId"></param>
        /// <param name="strOpStaffName"></param>
        /// <param name="strErrText"></param>
        /// <returns></returns>
        public bool FineContracts(List <Contract> listContract, long nOpStaffId, string strOpStaffName, out string strErrText)
        {
            ContractRule rule = new ContractRule();

            return(rule.FineContracts(listContract, nOpStaffId, strOpStaffName, out strErrText));
        }
Пример #8
0
        /// <summary>
        /// 新增冲帐记录
        /// </summary>
        /// <param name="data"></param>
        /// <param name="listDetail"></param>
        /// <param name="nOpStaffId"></param>
        /// <param name="strOpStaffName"></param>
        /// <param name="strErrText"></param>
        /// <returns></returns>
        public long InsertContractReverse(ContractReverse data, List <ContractReverseDetail> listDetail, long nOpStaffId, string strOpStaffName, out string strErrText)
        {
            ContractRule rule = new ContractRule();

            return(rule.InsertContractReverse(data, listDetail, nOpStaffId, strOpStaffName, out strErrText));
        }
Пример #9
0
        /// <summary>
        /// 审批合同价格数据
        /// </summary>
        /// <param name="nId"></param>
        /// <param name="listPlan"></param>
        /// <param name="nOpStaffId"></param>
        /// <param name="strOpStaffName"></param>
        /// <param name="strMessage"></param>
        /// <returns></returns>
        public bool ApproveContract(long nId, List <ContractDeliverPlan> listPlan, long nOpStaffId, string strOpStaffName, out string strMessage)
        {
            ContractRule rule = new ContractRule();

            return(rule.ApproveContract(nId, listPlan, nOpStaffId, strOpStaffName, out strMessage));
        }
Пример #10
0
        /// <summary>
        /// 提交打印合同数据
        /// </summary>
        /// <param name="nId"></param>
        /// <param name="nOpStaffId"></param>
        /// <param name="strOpStaffName"></param>
        /// <param name="strMessage"></param>
        /// <returns></returns>
        public bool SubmitPrintContract(long nId, long nOpStaffId, string strOpStaffName, out string strMessage)
        {
            ContractRule rule = new ContractRule();

            return(rule.SubmitPrintContract(nId, nOpStaffId, strOpStaffName, out strMessage));
        }
Пример #11
0
        /// <summary>
        /// 新增合同数据
        /// </summary>
        /// <param name="data"></param>
        /// <param name="listPlan"></param>
        /// <param name="nOpStaffId"></param>
        /// <param name="strOpStaffName"></param>
        /// <param name="strErrText"></param>
        /// <returns></returns>
        public long InsertContract(Contract data, List <ContractDeliverPlan> listPlan, long nOpStaffId, string strOpStaffName, out string strErrText)
        {
            ContractRule rule = new ContractRule();

            return(rule.InsertContract(data, listPlan, nOpStaffId, strOpStaffName, out strErrText));
        }
Пример #12
0
        /// <summary>
        /// 修改合同发货数据
        /// </summary>
        /// <param name="data"></param>
        /// <param name="listGoods"></param>
        /// <param name="nOpStaffId"></param>
        /// <param name="strOpStaffName"></param>
        /// <param name="strErrText"></param>
        /// <returns></returns>
        public bool UpdateContractDeliverPlan(ContractDeliverPlan data, List <ContractGoods> listGoods, long nOpStaffId, string strOpStaffName, out string strErrText)
        {
            ContractRule rule = new ContractRule();

            return(rule.UpdateContractDeliverPlan(data, listGoods, nOpStaffId, strOpStaffName, out strErrText));
        }