public override string InvokeRequest() { int cnt = 0; Resp313B resp = new Resp313B(); DbHelper db = new DbHelper(Common.OracleConnStrLocal, true); try { Criteria c = new Criteria(); c.userid = this.req.data.userid; c.noticeId = this.req.data.noticeid; List <M_T_Notice> etyList = BHelper.FetchNotice(c, db); List <string> parameters = new List <string>(); parameters.Add("NoticeId"); for (int i = 0; i < etyList.Count; i++) { cnt += Common.Delete <M_T_Notice>(etyList[i], db, parameters); } db.Commit(); resp.data.result = "100"; resp.data.message = "接口操作完成(处理了" + cnt.ToString() + "条数据)"; } catch (Exception err) { db.Abort(); resp.data.result = "200"; resp.data.message = err.Message; } return(Common.Serialize <Resp313B>(resp)); }
private void InitialSQLite(string dbName, BHelper bHelper) { if (!string.IsNullOrEmpty(dbName)) { if (!File.Exists(dbName)) { MessageBox.Show(bHelper.InitialDataBaseAndDataTable(tb_DbName.Text)); } } else { MessageBox.Show("初始化数据库失败"); dbStatus = false; } }
private bool UpdateNotice() { DbHelper db = new DbHelper(Common.OracleConnStrLocal, true); try { Criteria c = new Criteria(); c.noticeId = this.req.data.noticeid; List <M_T_Notice> etyList = BHelper.FetchNotice(c, db); if (etyList.Count > 0) { etyList[0].StartDate = DateTime.Parse(this.req.data.startdate); etyList[0].EndDate = DateTime.Parse(this.req.data.enddate); etyList[0].Detail = this.req.data.detail; etyList[0].Title = this.req.data.title; etyList[0].ImgUrlLarge = this.req.data.imgurl; etyList[0].LeaseNumber = this.req.data.userid; etyList[0].UpdateBy = this.req.data.userid; List <string> keys = new List <string>(); keys.Add("NoticeId"); if (Common.Update <M_T_Notice>(etyList[0], db, keys) > 0) { return(true); } else { return(false); } } else { return(false); } } catch (Exception err) { db.Abort(); throw err; } finally { db.Commit(); } }
/// <summary> /// 创建receipt后保存支付信息 /// </summary> private void DAL_Insert_Pay() { DbHelper db = new DbHelper(Common.OracleConnStrLocal, true); try { etyH = new M_T_PAYMENT(); etyH.paymentid = BHelper.FetchPaymentId(db) + 1; etyH.amount = this.req.data.actualamount; etyH.leasenumber = this.req.data.leasenum; etyH.paydate = DateTime.Parse(this.req.data.actualpaydate); etyH.paytype = this.req.data.actualpaytype; etyH.status = "0"; // Status取值定义:0=本地保存完成;1=Receipt创建完成;2=分录创建完成。状态必须从0~2顺序转换。 Common.Insert <M_T_PAYMENT>(etyH, db); Req35_2 detail = null; etyD = new M_T_PAYMENT_INFO(); for (int i = 0; i < this.req.data.actualpayinfo.Count; i++) { detail = this.req.data.actualpayinfo[i]; etyD.actualpay = detail.actualpay; etyD.amount = detail.amount; etyD.chargecode = detail.chargecode; etyD.invoicenumber = detail.transno; etyD.invoicelinenum = detail.invoicelinenum; etyD.paymentid = etyH.paymentid; Common.Insert <M_T_PAYMENT_INFO>(etyD, db); } db.Commit(); } catch (Exception err) { db.Abort(); throw err; } }
public void Test_BHelper() { BHelper bHelper = new BHelper(null); }
public MainForm() { InitializeComponent(); bHelper = new BHelper(new SQLiteHelper($"Data Source={tb_DbName.Text};Version=3;")); }
/// <summary> /// 新增Receipt /// </summary> /// <param name="result">用于创建receipt的支付信息</param> public bool Create(Req35_1 data) { /// 1.检查 /// 2.新增receipt表数据 /// 3.创建ar_application_line /// 4.创建分录 try { #region 1.检查 ///考虑重复创建receipt的情况 /// #endregion #region 2.新增receipt表数据 M_Receipt receipt = new M_Receipt(); receipt.RECEIPT_TYPE = "NL"; receipt.RECEIPT_DATE = "to_date('" + Common.EstrSql(Common.DateFmt(DateTime.Now, "yyyy-MM-dd")) + "','yyyy-MM-dd')"; //need receipt.RECEIVING_COMPANY_CODE = Common.EstrSql(data.receivecompanycode); receipt.PAYMENT_METHOD = Common.GetPaymentNm(data.actualpaytype); receipt.CURRENCY = data.currencycode; receipt.RATE = 1; receipt.AMOUNT = data.actualamount; //实际支付金额,由于不能修改,则一定等于应收金额 receipt.BANK_ACCOUNT = data.bankaccount; receipt.CUSTOMER_NUMBER = data.customercode; receipt.SITE_NUMBER = BHelper.FetchCustSite(data.leasenum, this._db); receipt.VOID_DATE = "null"; receipt.BANK_IN_DATE = "to_date('" + Common.DateFmt10(Common.EstrSql(data.actualpaydate)) + "','yyyy-MM-dd')"; receipt.PDC_RECEIPT_DATE = "null"; receipt.CHEQUE_NUMBER = ""; receipt.BILLING_COMPANY_CODE = ""; receipt.DESCRIPTION = ""; receipt.POST_STATUS = "U"; string maxnumber = Common.GetSingleValue("select max(RECEIPT_NUMBER) from ar_RECEIPT where RECEIPT_NUMBER like '" + data.receivecompanycode + "-" + "NL" + "%'", this._db); //receivecompanycode必须有值 if (maxnumber != null && maxnumber != "") { maxnumber = maxnumber.Substring(8); } else { maxnumber = "0"; } int oldnumber = int.Parse(maxnumber) + 1; string newnum = oldnumber.ToString().PadLeft(7, '0'); //7位字符串左边补零 receipt.RECEIPT_NUMBER = data.receivecompanycode + "-" + "NL" + "-" + newnum; receipt.GL_DATE = "null"; receipt.POSTING_DATE = "null"; receipt.APPLICATION_STATUS = "F"; receipt.RECEIPT_STATUS = "N"; receipt.CREATED_BY = Common.CurrentUser; receipt.LAST_UPDATED_BY = Common.CurrentUser; receipt.APPROVAL_STATUS = "U"; receipt.ACTIVE = "A"; receipt.IDENTIFIED_DATE = "null"; receipt.IND_VOID_RECEIPT_ON_STATEMENT = "N"; receipt.RECEIPT_SOURCE = "M"; receipt.OVERPLUS_AMOUNT = 0; DAL_Receipt_Insert(receipt); this._receipt = receipt; #endregion #region 3.创建ar_application_line int seqNum = 1; Req35_2 detail = null; for (int i = 0; i < data.actualpayinfo.Count; i++) { detail = data.actualpayinfo[i]; if (detail.actualpay <= 0) //如果实际支付金额<=0,则跳过。 { continue; } M_Application_Line Application_Line = new M_Application_Line(); Application_Line.AMOUNT = data.actualpayinfo[i].actualpay.ToString(); Application_Line.APPLICATION_LINE_NUMBER = seqNum.ToString(); //单据序列号 Application_Line.CHARGE_CODE = detail.chargecode; Application_Line.CREATED_BY = Common.CurrentUser; Application_Line.FROM_RECEIPT_NUMBER = receipt.RECEIPT_NUMBER; Application_Line.FROM_RECEIPT_STATUS = receipt.RECEIPT_STATUS; Application_Line.FROM_RECEIPT_TYPE = receipt.RECEIPT_TYPE; Application_Line.INVOICE_LINE_NUMBER = detail.invoicelinenum.ToString(); Application_Line.INVOICE_NUMBER = detail.transno; Application_Line.LAST_UPDATED_BY = Common.CurrentUser; Application_Line.LAST_UPDATED_DATE = "to_date('" + System.DateTime.Now.ToString("yyyy-MM-dd", DateTimeFormatInfo.InvariantInfo) + "','yyyy-MM-dd')"; Application_Line.RECEIPT_NUMBER = receipt.RECEIPT_NUMBER; Application_Line.RECEIPT_STATUS = receipt.RECEIPT_STATUS; Application_Line.RECEIPT_TYPE = receipt.RECEIPT_TYPE; DAL_AppLine_Insert(Application_Line); string paystatus = "U"; string oldoutstandingValue = Common.GetSingleValue("select outstanding_amount from ar_invoice_line where invoice_number='" + Application_Line.INVOICE_NUMBER + "'and invoice_line_number='" + Application_Line.INVOICE_LINE_NUMBER + "'", this._db); string outstandingValue = Convert.ToString(Convert.ToDecimal(oldoutstandingValue) - Convert.ToDecimal(Application_Line.AMOUNT)); if (Convert.ToDecimal(outstandingValue) == 0) { paystatus = "F"; } else if (Convert.ToDecimal(outstandingValue) != 0 && Convert.ToDecimal(Application_Line.AMOUNT) != 0) { paystatus = "P"; } this.UpdateInvice(Application_Line.INVOICE_NUMBER, Application_Line.INVOICE_LINE_NUMBER, outstandingValue, paystatus); this._db.ExecuteNonQuery("update ar_invoice_line a set a.settle_before_due_date='Y' where a.INVOICE_NUMBER = ( select b.INVOICE_NUMBER from ar_invoice b where b.payment_due_date>=to_date('" + Common.DateFmt10(data.actualpaydate) + "','yyyy-MM-dd') and b.invoice_number='" + Application_Line.INVOICE_NUMBER + "') and a.invoice_line_number='" + Application_Line.INVOICE_LINE_NUMBER + "'"); this._db.ExecuteNonQuery("update ar_invoice_line a set a.LAST_APPLICATION_DATE=sysdate where a.invoice_number='" + Application_Line.INVOICE_NUMBER + "' and a.invoice_line_number='" + Application_Line.INVOICE_LINE_NUMBER + "'"); seqNum++; } #endregion return(true); } catch (Exception err) { throw err; } }