Example #1
0
        protected void RgCheckInfoItemCommand(object sender, GridCommandEventArgs e)
        {
            if (e.CommandName == "Search")
            {
                var ddlStatus       = e.Item.FindControl("DDL_CheckState") as DropDownList;
                var rdpstart        = e.Item.FindControl("RDP_StartTime") as RadDatePicker;
                var rdpend          = e.Item.FindControl("RDP_EndTime") as RadDatePicker;
                var tboxNo          = e.Item.FindControl("TB_CompanyFundReciptNO") as TextBox;
                var ddlType         = e.Item.FindControl("DDL_ReceivePayType") as DropDownList;
                var ddlBank         = e.Item.FindControl("DDL_Bank") as DropDownList;
                var rdpSExecuteTime = e.Item.FindControl("RDP_SExecuteTime") as RadDatePicker;
                var rdpEExecuteTime = e.Item.FindControl("RDP_EExecuteTime") as RadDatePicker;
                var filialeId       = e.Item.FindControl("DdlSaleFiliale") as DropDownList;
                if (filialeId != null && !string.IsNullOrEmpty(filialeId.SelectedValue))
                {
                    SelectSaleFilialeId = filialeId.SelectedValue;
                }

                #region [申请时间段]
                if (rdpstart != null)
                {
                    if (rdpstart.SelectedDate != null)
                    {
                        StartTime = rdpstart.SelectedDate.Value;
                    }
                }
                if (rdpend != null)
                {
                    if (rdpend.SelectedDate != null)
                    {
                        EndTime = Convert.ToDateTime(rdpend.SelectedDate.Value.AddDays(1).ToString("yyyy-MM-dd 00:00:00"));
                    }
                }
                #endregion

                #region [打款时间段]
                if (rdpSExecuteTime != null)
                {
                    if (rdpSExecuteTime.SelectedDate != null)
                    {
                        SExecuteTime = rdpSExecuteTime.SelectedDate.Value;
                    }
                }
                if (rdpEExecuteTime != null)
                {
                    if (rdpEExecuteTime.SelectedDate != null)
                    {
                        EExecuteTime = Convert.ToDateTime(rdpEExecuteTime.SelectedDate.Value.AddDays(1).ToString("yyyy-MM-dd 00:00:00"));
                    }
                }
                #endregion
                if (ddlType != null)
                {
                    Type = (CompanyFundReceiptType)int.Parse(ddlType.SelectedValue);
                }
                if (ddlStatus != null)
                {
                    Status = (CompanyFundReceiptState)int.Parse(ddlStatus.SelectedValue);
                }
                if (tboxNo != null)
                {
                    ReceiptNo = tboxNo.Text;
                }
                if (ddlBank != null)
                {
                    BankId = new Guid(ddlBank.SelectedValue);
                }
                RG_CheckInfo.CurrentPageIndex = 0;
                RG_CheckInfo.Rebind();
            }
            else if (e.CommandName == "AllDo")
            {
                int num = 0;
                foreach (GridDataItem dataItem in RG_CheckInfo.Items)
                {
                    var cbCheck = (CheckBox)dataItem.FindControl("CB_Check");
                    if (!cbCheck.Checked)
                    {
                        continue;
                    }
                    var    receiptId   = new Guid(dataItem.GetDataKeyValue("ReceiptID").ToString());
                    string remark      = WebControl.RetrunUserAndTime("执行");
                    var    receiptInfo = _companyFundReceipt.GetCompanyFundReceiptInfo(receiptId);
                    if (receiptInfo == null || receiptInfo.ReceiptStatus >= (int)CompanyFundReceiptState.Executed ||
                        string.IsNullOrEmpty(receiptInfo.DealFlowNo) || receiptInfo.PayBankAccountsId == Guid.Empty)
                    {
                        continue;
                    }
                    using (var ts = new TransactionScope(TransactionScopeOption.Required))
                    {
                        //付款
                        if (receiptInfo.ReceiptType == (int)CompanyFundReceiptType.Payment)
                        {
                            var accountCount = BankAccountManager.ReadInstance.GetBankAccountsNonce(receiptInfo.PayBankAccountsId);
                            if (accountCount <= 0)
                            {
                                RAM.Alert("帐户余额为0,无法付款!");
                                return;
                            }
                            if (Convert.ToDecimal(accountCount) < receiptInfo.RealityBalance + receiptInfo.Poundage)
                            {
                                RAM.Alert("帐户余额为不足,无法付款!");
                                return;
                            }
                            _companyFundReceipt.UpdateFundReceiptRemark(receiptId, remark);
                            _companyFundReceipt.UpdateFundReceiptState(receiptId, CompanyFundReceiptState.Executed);
                            _companyFundReceipt.SetDateTime(receiptId, 2);
                            if (receiptInfo.Poundage != 0)
                            {
                                _companyFundReceipt.UpdatePoundage(receiptId, receiptInfo.Poundage);
                            }
                        }
                        //收款
                        if (receiptInfo.ReceiptType == (int)CompanyFundReceiptType.Receive)
                        {
                            _companyFundReceipt.UpdateFundReceiptRemark(receiptId, remark);
                            _companyFundReceipt.UpdateFundReceiptState(receiptId, CompanyFundReceiptState.Executed);
                            _companyFundReceipt.SetDateTime(receiptId, 2);
                            if (receiptInfo.Poundage != 0)
                            {
                                _companyFundReceipt.UpdatePoundage(receiptId, receiptInfo.Poundage);
                            }
                        }
                        ts.Complete();
                    }
                    num++;
                }
                if (num == 0)
                {
                    RAM.Alert("请选择");
                }
                RAM.ResponseScripts.Add("setTimeout(function(){ refreshGrid(); }, " + GlobalConfig.PageAutoRefreshDelayTime + ");");
            }
        }
Example #2
0
 public CompanyFundReceiptInfo GetCompanyFundReceiptInfo(Guid receiptId)
 {
     return(_companyFundReceiptDao.GetCompanyFundReceiptInfo(receiptId));
 }