/// <summary> /// 发票号码变更,并将发票单号置为正常状态 /// </summary> /// <param name="MODELCHARGEINVOICEPRINT"></param> /// <returns></returns> public bool ChangeInvoiceNO(MODELCHARGEINVOICEPRINT MODELCHARGEINVOICEPRINT) { StringBuilder str = new StringBuilder(); str.Append("UPDATE CHARGEINVOICEPRINT SET INVOICEBATCHID=@INVOICEBATCHID,INVOICEBATCHNAME=@INVOICEBATCHNAME,INVOICENO=@INVOICENO,"); str.Append("INVOICECANCEL='0',INVOICECANCELWORKERID=null,INVOICECANCELWORKERNAME=null,INVOICECANCELDATETIME=null,INVOICECANCELMEMO=null "); str.Append("WHERE CHARGEINVOICEPRINTID=@CHARGEINVOICEPRINTID"); SqlParameter[] para = { new SqlParameter("@INVOICEBATCHID", SqlDbType.VarChar, 30), new SqlParameter("@INVOICEBATCHNAME", SqlDbType.VarChar, 50), new SqlParameter("@INVOICENO", SqlDbType.VarChar, 30), new SqlParameter("@CHARGEINVOICEPRINTID", SqlDbType.VarChar, 50) }; para[0].Value = MODELCHARGEINVOICEPRINT.INVOICEBATCHID; para[1].Value = MODELCHARGEINVOICEPRINT.INVOICEBATCHNAME; para[2].Value = MODELCHARGEINVOICEPRINT.INVOICENO; para[3].Value = MODELCHARGEINVOICEPRINT.CHARGEINVOICEPRINTID; if (DBUtility.DbHelperSQL.ExecuteSql(str.ToString(), para) > 0) { return(true); } else { return(false); } }
/// <summary> /// 根据收费单据ID更新发票表作废状态 /// </summary> /// <param name="MODELCHARGEINVOICEPRINT"></param> /// <returns></returns> public bool UpdateCancelStateByID(MODELCHARGEINVOICEPRINT MODELCHARGEINVOICEPRINT) { StringBuilder str = new StringBuilder(); str.Append("UPDATE CHARGEINVOICEPRINT SET INVOICECANCEL=@INVOICECANCEL,INVOICECANCELWORKERID=@INVOICECANCELWORKERID," + "INVOICECANCELWORKERNAME=@INVOICECANCELWORKERNAME,INVOICECANCELDATETIME=@INVOICECANCELDATETIME,INVOICECANCELMEMO=@INVOICECANCELMEMO "); str.Append("WHERE CHARGEINVOICEPRINTID=@CHARGEINVOICEPRINTID"); SqlParameter[] para = { new SqlParameter("@INVOICECANCEL", SqlDbType.VarChar, 50), new SqlParameter("@INVOICECANCELWORKERID", SqlDbType.VarChar, 50), new SqlParameter("@INVOICECANCELWORKERNAME", SqlDbType.VarChar, 50), new SqlParameter("@INVOICECANCELDATETIME", SqlDbType.DateTime), new SqlParameter("@INVOICECANCELMEMO", SqlDbType.VarChar, 200), new SqlParameter("@CHARGEINVOICEPRINTID", SqlDbType.VarChar, 50) }; para[0].Value = MODELCHARGEINVOICEPRINT.INVOICECANCEL; para[1].Value = MODELCHARGEINVOICEPRINT.INVOICECANCELWORKERID; para[2].Value = MODELCHARGEINVOICEPRINT.INVOICECANCELWORKERNAME; if (MODELCHARGEINVOICEPRINT.INVOICECANCEL == "0") { para[3].Value = null; } else { para[3].Value = MODELCHARGEINVOICEPRINT.INVOICECANCELDATETIME; } para[4].Value = MODELCHARGEINVOICEPRINT.INVOICECANCELMEMO; para[5].Value = MODELCHARGEINVOICEPRINT.CHARGEINVOICEPRINTID; if (DBUtility.DbHelperSQL.ExecuteSql(str.ToString(), para) > 0) { return(true); } else { return(false); } }
/// <summary> /// 插入发票使用记录 /// </summary> /// <param name="MODELCHARGEINVOICEPRINT"></param> /// <returns></returns> public bool Insert(MODELCHARGEINVOICEPRINT MODELCHARGEINVOICEPRINT) { StringBuilder str = new StringBuilder(); str.Append("INSERT INTO CHARGEINVOICEPRINT(CHARGEINVOICEPRINTID,CHARGEID,INVOICEBATCHID,INVOICEBATCHNAME,INVOICENO,INVOICECANCEL,INVOICEPRINTDATETIME,"); str.Append("readMeterRecordYear,readMeterRecordMonth,waterUserName,waterMeterNo,waterUserAddress,waterMeterTypeId,waterMeterTypeName,"); str.Append("waterMeterLastNumber,waterMeterEndNumber,totalNumber,avePrice,waterTotalCharge,extraCharge1,extraCharge2,totalCharge,INVOICEPRINTWORKERID,INVOICEPRINTWORKERNAME)"); str.Append("VALUES(@CHARGEINVOICEPRINTID,@CHARGEID,@INVOICEBATCHID,@INVOICEBATCHNAME,@INVOICENO,@INVOICECANCEL,@INVOICEPRINTDATETIME,"); str.Append("@readMeterRecordYear,@readMeterRecordMonth,@waterUserName,@waterMeterNo,@waterUserAddress,@waterMeterTypeId,@waterMeterTypeName,"); str.Append("@waterMeterLastNumber,@waterMeterEndNumber,@totalNumber,@avePrice,@waterTotalCharge,@extraCharge1,@extraCharge2,@totalCharge,@INVOICEPRINTWORKERID,@INVOICEPRINTWORKERNAME)"); SqlParameter[] para = { new SqlParameter("@CHARGEINVOICEPRINTID", SqlDbType.VarChar, 30), new SqlParameter("@CHARGEID", SqlDbType.VarChar, 30), new SqlParameter("@INVOICEBATCHID", SqlDbType.VarChar, 30), new SqlParameter("@INVOICEBATCHNAME", SqlDbType.VarChar, 50), new SqlParameter("@INVOICENO", SqlDbType.VarChar, 30), new SqlParameter("@INVOICECANCEL", SqlDbType.VarChar, 10), new SqlParameter("@INVOICEPRINTDATETIME", SqlDbType.DateTime), new SqlParameter("@readMeterRecordYear", SqlDbType.Int), new SqlParameter("@readMeterRecordMonth", SqlDbType.Int), new SqlParameter("@waterUserName", SqlDbType.VarChar, 70), new SqlParameter("@waterMeterNo", SqlDbType.VarChar, 30), new SqlParameter("@waterUserAddress", SqlDbType.VarChar, 50), new SqlParameter("@waterMeterTypeId", SqlDbType.VarChar, 30), new SqlParameter("@waterMeterTypeName", SqlDbType.VarChar, 50), new SqlParameter("@waterMeterLastNumber", SqlDbType.Int), new SqlParameter("@waterMeterEndNumber", SqlDbType.Int), new SqlParameter("@totalNumber", SqlDbType.Int), new SqlParameter("@avePrice", SqlDbType.Float), new SqlParameter("@waterTotalCharge", SqlDbType.Float), new SqlParameter("@extraCharge1", SqlDbType.Float), new SqlParameter("@extraCharge2", SqlDbType.Float), new SqlParameter("@totalCharge", SqlDbType.Float), new SqlParameter("@INVOICEPRINTWORKERID", SqlDbType.VarChar, 50), new SqlParameter("@INVOICEPRINTWORKERNAME", SqlDbType.VarChar, 50) }; para[0].Value = MODELCHARGEINVOICEPRINT.CHARGEINVOICEPRINTID; para[1].Value = MODELCHARGEINVOICEPRINT.CHARGEID; para[2].Value = MODELCHARGEINVOICEPRINT.INVOICEBATCHID; para[3].Value = MODELCHARGEINVOICEPRINT.INVOICEBATCHNAME; para[4].Value = MODELCHARGEINVOICEPRINT.INVOICENO; para[5].Value = MODELCHARGEINVOICEPRINT.INVOICECANCEL; para[6].Value = MODELCHARGEINVOICEPRINT.INVOICEPRINTDATETIME; para[7].Value = MODELCHARGEINVOICEPRINT.readMeterRecordYear; para[8].Value = MODELCHARGEINVOICEPRINT.readMeterRecordMonth; para[9].Value = MODELCHARGEINVOICEPRINT.waterUserName; para[10].Value = MODELCHARGEINVOICEPRINT.waterMeterNo; para[11].Value = MODELCHARGEINVOICEPRINT.waterUserAddress; para[12].Value = MODELCHARGEINVOICEPRINT.waterMeterTypeId; para[13].Value = MODELCHARGEINVOICEPRINT.waterMeterTypeName; para[14].Value = MODELCHARGEINVOICEPRINT.waterMeterLastNumber; para[15].Value = MODELCHARGEINVOICEPRINT.waterMeterEndNumber; para[16].Value = MODELCHARGEINVOICEPRINT.totalNumber; para[17].Value = MODELCHARGEINVOICEPRINT.avePrice; para[18].Value = MODELCHARGEINVOICEPRINT.waterTotalCharge; para[19].Value = MODELCHARGEINVOICEPRINT.extraCharge1; para[20].Value = MODELCHARGEINVOICEPRINT.extraCharge2; para[21].Value = MODELCHARGEINVOICEPRINT.totalCharge; para[22].Value = MODELCHARGEINVOICEPRINT.INVOICEPRINTWORKERID; para[23].Value = MODELCHARGEINVOICEPRINT.INVOICEPRINTWORKERNAME; if (DBUtility.DbHelperSQL.ExecuteSql(str.ToString(), para) > 0) { return(true); } else { return(false); } }
private void btInvoiceCancel_Click(object sender, EventArgs e) { if (dgList.CurrentRow == null) { mes.Show("请选择要作废的发票!"); return; } if (cmbInvoiceCancelReason.SelectedIndex < 1) { cmbInvoiceCancelReason.Focus(); mes.Show("请选择发票作废原因!"); return; } object objID = dgList.CurrentRow.Cells["CHARGEINVOICEPRINTID"].FormattedValue; if (objID == null || objID == DBNull.Value) { mes.Show("获取发票单据ID失败,请重新查询后再执行此操作!"); return; } object objState = dgList.CurrentRow.Cells["INVOICECANCEL"].FormattedValue; if (objState != null && objState != DBNull.Value) { if (objState.ToString() != "正常") { mes.Show("该发票已经作废,无需再次作废!"); return; } } string strInvoiceNO = ""; object objInvoiceNO = dgList.CurrentRow.Cells["INVOICENO"].FormattedValue; if (objInvoiceNO != null && objInvoiceNO != DBNull.Value) { strInvoiceNO = objInvoiceNO.ToString(); } if (mes.ShowQ("确定要作废发票号为'" + strInvoiceNO + "'的发票信息吗?") != DialogResult.OK) { return; } try { MODELCHARGEINVOICEPRINT MODELCHARGEINVOICEPRINT = new MODELCHARGEINVOICEPRINT(); MODELCHARGEINVOICEPRINT.CHARGEINVOICEPRINTID = objID.ToString(); MODELCHARGEINVOICEPRINT.INVOICECANCEL = (cmbInvoiceCancelReason.SelectedIndex + 1).ToString();//冲减作废的状态为1,冲减功能将原因自动识别为1 MODELCHARGEINVOICEPRINT.INVOICECANCELWORKERID = strLoginID; MODELCHARGEINVOICEPRINT.INVOICECANCELWORKERNAME = strLoginName; MODELCHARGEINVOICEPRINT.INVOICECANCELDATETIME = mes.GetDatetimeNow(); MODELCHARGEINVOICEPRINT.INVOICECANCELMEMO = cmbInvoiceCancelReason.Text; if (BLLCHARGEINVOICEPRINT.UpdateCancelStateByID(MODELCHARGEINVOICEPRINT)) { dgList.CurrentRow.Cells["INVOICECANCEL"].Value = cmbInvoiceCancelReason.Text; mes.Show("作废成功!"); } else { mes.Show("作废失败,请重试!"); } } catch (Exception ex) { mes.Show(ex.Message); log.Write(ex.ToString(), MsgType.Error); return; } }