/// <summary> /// 更改订单状态 /// </summary> /// <param name="receiptID"></param> /// <param name="state"></param> /// <param name="remark"></param> /// <param name="personnelId">审核人ID</param> /// <returns></returns> public int UpdateFundReceiptState(Guid receiptID, CompanyFundReceiptState state, string remark, params Guid[] personnelId) { using (var ts = new TransactionScope(TransactionScopeOption.Required)) { try { if (state == CompanyFundReceiptState.Audited) { _companyFundReceiptDao.UpdateFundReceiptAuditorID(receiptID, personnelId[0]); } if (state == CompanyFundReceiptState.HasInvoice) { _companyFundReceiptDao.UpdataFundReceiptInvoicesDemander(receiptID, personnelId[0]); } _companyFundReceiptDao.UpdateFundReceiptState(receiptID, state); _companyFundReceiptDao.UpdateFundReceiptRemark(receiptID, remark); ts.Complete(); } catch { return(0); } } return(1); }
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 + ");"); } }