public bool Update(MODELWATERMETERTYPE MODELWATERMETERTYPE) { StringBuilder str = new StringBuilder(); str.Append("UPDATE dbo.waterMeterType SET waterMeterTypeValue=@waterMeterTypeValue,trapezoidPrice=@trapezoidPrice,extraCharge=@extraCharge,MEMO=@MEMO," + "overDuechargeEnable=@overDuechargeEnable,overDuechargeStartMonth=@overDuechargeStartMonth," + "overDuechargeStartDay=@overDuechargeStartDay,overDuechargePercent=@overDuechargePercent,WATERMETERTYPECLASSID=@WATERMETERTYPECLASSID "); str.Append("WHERE waterMeterTypeId=@waterMeterTypeId"); SqlParameter[] para = { new SqlParameter("@waterMeterTypeValue", SqlDbType.VarChar, 50), new SqlParameter("@trapezoidPrice", SqlDbType.VarChar, 300), new SqlParameter("@extraCharge", SqlDbType.VarChar, 300), new SqlParameter("@MEMO", SqlDbType.VarChar, 200), new SqlParameter("@overDuechargeEnable", SqlDbType.VarChar, 10), new SqlParameter("@overDuechargeStartMonth", SqlDbType.Int), new SqlParameter("@overDuechargeStartDay", SqlDbType.Int), new SqlParameter("@overDuechargePercent", SqlDbType.Float), new SqlParameter("@WATERMETERTYPECLASSID", SqlDbType.VarChar, 50), new SqlParameter("@waterMeterTypeId", SqlDbType.VarChar, 30) }; para[0].Value = MODELWATERMETERTYPE.waterMeterTypeValue; para[1].Value = MODELWATERMETERTYPE.trapezoidPrice; para[2].Value = MODELWATERMETERTYPE.extraCharge; para[3].Value = MODELWATERMETERTYPE.MEMO; para[4].Value = MODELWATERMETERTYPE.overDuechargeEnable; para[5].Value = MODELWATERMETERTYPE.overDuechargeStartMonth; para[6].Value = MODELWATERMETERTYPE.overDuechargeStartDay; para[7].Value = MODELWATERMETERTYPE.overDuechargePercent; para[8].Value = MODELWATERMETERTYPE.WATERMETERTYPECLASSID; para[9].Value = MODELWATERMETERTYPE.waterMeterTypeId; if (DBUtility.DbHelperSQL.ExecuteSql(str.ToString(), para) > 0) { return(true); } else { return(false); } }
public bool Insert(MODELWATERMETERTYPE MODELWATERMETERTYPE) { StringBuilder str = new StringBuilder(); str.Append("INSERT INTO dbo.waterMeterType(waterMeterTypeId,waterMeterTypeValue,trapezoidPrice,extraCharge,MEMO," + "overDuechargeEnable,overDuechargeStartMonth,overDuechargeStartDay,overDuechargePercent,WATERMETERTYPECLASSID) "); str.Append("VALUES(@waterMeterTypeId,@waterMeterTypeValue,@trapezoidPrice,@extraCharge,@MEMO," + "@overDuechargeEnable,@overDuechargeStartMonth,@overDuechargeStartDay,@overDuechargePercent,@WATERMETERTYPECLASSID)"); SqlParameter[] para = { new SqlParameter("@waterMeterTypeId", SqlDbType.VarChar, 30), new SqlParameter("@waterMeterTypeValue", SqlDbType.VarChar, 50), new SqlParameter("@trapezoidPrice", SqlDbType.VarChar, 300), new SqlParameter("@extraCharge", SqlDbType.VarChar, 300), new SqlParameter("@MEMO", SqlDbType.VarChar, 200), new SqlParameter("@overDuechargeEnable", SqlDbType.VarChar, 10), new SqlParameter("@overDuechargeStartMonth", SqlDbType.Int), new SqlParameter("@overDuechargeStartDay", SqlDbType.Int), new SqlParameter("@overDuechargePercent", SqlDbType.Float), new SqlParameter("@WATERMETERTYPECLASSID", SqlDbType.VarChar, 30) }; para[0].Value = MODELWATERMETERTYPE.waterMeterTypeId; para[1].Value = MODELWATERMETERTYPE.waterMeterTypeValue; para[2].Value = MODELWATERMETERTYPE.trapezoidPrice; para[3].Value = MODELWATERMETERTYPE.extraCharge; para[4].Value = MODELWATERMETERTYPE.MEMO; para[5].Value = MODELWATERMETERTYPE.overDuechargeEnable; para[6].Value = MODELWATERMETERTYPE.overDuechargeStartMonth; para[7].Value = MODELWATERMETERTYPE.overDuechargeStartDay; para[8].Value = MODELWATERMETERTYPE.overDuechargePercent; para[9].Value = MODELWATERMETERTYPE.WATERMETERTYPECLASSID; if (DBUtility.DbHelperSQL.ExecuteSql(str.ToString(), para) > 0) { return(true); } else { return(false); } }
private void toolSave_Click(object sender, EventArgs e) { if (txtName.Text.Trim() == "") { mes.Show("性质名称不能为空!"); txtName.Focus(); return; } if (dgTrapezoidPrice.Rows.Count == 0) { mes.Show("请添加阶梯水价!"); dgTrapezoidPrice.Focus(); return; } if (cmbWaterMeterTypeClass.SelectedValue == null || cmbWaterMeterTypeClass.SelectedValue == DBNull.Value) { mes.Show("请选择用水性质分类!"); cmbWaterMeterTypeClass.Focus(); return; } #region 阶梯水价验证 dgTrapezoidPrice.EndEdit(); for (int i = 0; i < dgTrapezoidPrice.Rows.Count; i++) { object objL = dgTrapezoidPrice.Rows[i].Cells["lowNumber"].Value; if (objL == null || objL == DBNull.Value) { mes.Show("请输入第 " + (i + 1).ToString() + " 行的阶梯下限!"); dgTrapezoidPrice.CurrentCell = dgTrapezoidPrice.Rows[i].Cells["lowNumber"]; return; } object objT = dgTrapezoidPrice.Rows[i].Cells["trapezoidPriceS"].Value; if (objT == null || objT == DBNull.Value) { mes.Show("请输入第 " + (i + 1).ToString() + " 行的阶梯单价!"); dgTrapezoidPrice.CurrentCell = dgTrapezoidPrice.Rows[i].Cells["trapezoidPriceS"]; return; } else { dgTrapezoidPrice.Rows[i].Cells["trapezoidPriceS"].Value = Convert.ToDecimal(objT); if (Convert.ToDecimal(objT) <= 0) { if (mes.ShowQ("请第 " + (i + 1).ToString() + " 行的阶梯单价为0,确定保存吗?") != DialogResult.OK) { dgTrapezoidPrice.CurrentCell = dgTrapezoidPrice.Rows[i].Cells["trapezoidPriceS"]; return; } } } if (!Information.IsNumeric(objL)) { mes.Show("第 " + (i + 1).ToString() + " 行的阶梯下限只能为整数!"); dgTrapezoidPrice.CurrentCell = dgTrapezoidPrice.Rows[i].Cells["lowNumber"]; return; } object objH = dgTrapezoidPrice.Rows[i].Cells["highNumber"].Value; if (objH == null || objH == DBNull.Value) { mes.Show("请输入第 " + (i + 1).ToString() + " 行的阶梯下限!"); dgTrapezoidPrice.CurrentCell = dgTrapezoidPrice.Rows[i].Cells["highNumber"]; return; } if (!Information.IsNumeric(objH)) { mes.Show("第 " + (i + 1).ToString() + " 行的阶梯上限只能为整数!"); dgTrapezoidPrice.CurrentCell = dgTrapezoidPrice.Rows[i].Cells["highNumber"]; return; } if (Convert.ToDecimal(objL) >= Convert.ToDecimal(objH)) { mes.Show("第 " + (i + 1).ToString() + " 行的阶梯上限应大于阶梯下限!"); dgTrapezoidPrice.CurrentCell = dgTrapezoidPrice.Rows[i].Cells["highNumber"]; return; } if (i > 0) { object objH1 = dgTrapezoidPrice.Rows[i - 1].Cells["highNumber"].Value; object objL2 = dgTrapezoidPrice.Rows[i].Cells["lowNumber"].Value; if (Convert.ToDecimal(objL2) != Convert.ToDecimal(objH1)) { mes.Show("第 " + (i + 1).ToString() + " 行的阶梯下限应等于上一行的阶梯上限!"); dgTrapezoidPrice.CurrentCell = dgTrapezoidPrice.Rows[i].Cells["lowNumber"]; return; } } } #endregion #region 附加费验证 foreach (Control conE in grpDetail.Controls) { if (conE is CheckBox && conE.Name.Contains("chkExtraCharge")) { CheckBox chkE = (CheckBox)conE; if (chkE.Checked) { foreach (Control con in grpDetail.Controls) { if (con is TextBox) { TextBox txt = (TextBox)con; if (txt.Name == "txtExtraCharge" + chkE.Name.Substring(14, 1))//chkExtraCharge1 { if (txt.Text.Trim() == "") { mes.Show("请填写附加费单价!"); txt.Focus(); return; } if (txt.Text.Trim() == "0") { mes.Show("附加费单价只能大于0!"); txt.Focus(); return; } break; } } } } } } #endregion #region 滞纳金验证 if (chkIsEnable.Checked) { if (txtStartMonth.Text.Trim() == "") { mes.Show("请输入开始月份!"); txtStartMonth.Focus(); return; } else { if (!Information.IsNumeric(txtStartMonth.Text.Trim())) { mes.Show("开始月份只能为整数!"); txtStartMonth.Focus(); return; } } if (txtStartDay.Text.Trim() == "") { mes.Show("请输入开始日期!"); txtStartDay.Focus(); return; } else { if (!Information.IsNumeric(txtStartDay.Text.Trim())) { mes.Show("开始日期只能为整数!"); txtStartDay.Focus(); return; } } if (txtPercent.Text.Trim() == "") { mes.Show("请输入滞纳金比率!"); txtPercent.Focus(); return; } else { if (!Information.IsNumeric(txtPercent.Text.Trim())) { mes.Show("滞纳金比率只能为数字!"); txtPercent.Focus(); return; } if (Convert.ToDecimal(txtPercent.Text) <= 0) { mes.Show("滞纳金比率只能大于0!"); txtPercent.Focus(); return; } } } #endregion MODELWATERMETERTYPE MODELWATERMETERTYPE = new MODELWATERMETERTYPE(); MODELWATERMETERTYPE.waterMeterTypeValue = txtName.Text; MODELWATERMETERTYPE.WATERMETERTYPECLASSID = cmbWaterMeterTypeClass.SelectedValue.ToString(); string strTrapezoid = string.Empty; for (int i = 0; i < dgTrapezoidPrice.Rows.Count; i++) { if (i > 0) { strTrapezoid += "|"; } object objL = dgTrapezoidPrice.Rows[i].Cells["lowNumber"].Value; object objH = dgTrapezoidPrice.Rows[i].Cells["highNumber"].Value; object objT = dgTrapezoidPrice.Rows[i].Cells["trapezoidPriceS"].Value; strTrapezoid += objL.ToString() + "-" + objH.ToString() + ":" + objT.ToString(); } MODELWATERMETERTYPE.trapezoidPrice = strTrapezoid; string strExtraCharge = string.Empty; int intSelectedExtraChargeCount = 0;//存储选择的附加费数量,判断是否加‘|’。 for (int i = 1; i <= 8; i++) { foreach (Control con in grpDetail.Controls) { if (con is CheckBox) { CheckBox chk = (CheckBox)con; if (chk.Name == "chkExtraCharge" + i.ToString()) { if (chk.Checked) { if (intSelectedExtraChargeCount > 0) { strExtraCharge += "|"; } foreach (Control conT in grpDetail.Controls) { if (conT is TextBox) { TextBox txt = (TextBox)conT; if (txt.Name == "txtExtraCharge" + i.ToString()) { intSelectedExtraChargeCount++; strExtraCharge += "F" + i.ToString() + ":" + Convert.ToDecimal(txt.Text); break; } } } foreach (Control conChk in grpDetail.Controls) { if (conChk is CheckBox) { CheckBox chkByCharge = (CheckBox)conChk; if (chkByCharge.Name == "chkByMoney" + i.ToString()) { if (!chkByCharge.Checked) { strExtraCharge += ":1"; } else { strExtraCharge += ":2"; } } } } } break; } } } } MODELWATERMETERTYPE.extraCharge = strExtraCharge; if (chkIsEnable.Checked) { MODELWATERMETERTYPE.overDuechargeEnable = "1"; MODELWATERMETERTYPE.overDuechargeStartMonth = Convert.ToInt32(txtStartMonth.Text); MODELWATERMETERTYPE.overDuechargeStartDay = Convert.ToInt32(txtStartDay.Text); MODELWATERMETERTYPE.overDuechargePercent = Convert.ToDecimal(txtPercent.Text); } else { MODELWATERMETERTYPE.overDuechargeEnable = "0"; } MODELWATERMETERTYPE.MEMO = txtMemo.Text; if (isAdd) { MODELWATERMETERTYPE.waterMeterTypeId = GETTABLEID.GetTableID("", "WATERMETERTYPE"); if (BLLWATERMETERTYPE.Insert(MODELWATERMETERTYPE)) { Query(); } else { mes.Show("添加失败,请重新点击保存按钮!"); return; } } else { if (txtID.Text.Trim() == "") { mes.Show("如果要执行添加操作,请先点击添加按钮后再保存!"); return; } MODELWATERMETERTYPE.waterMeterTypeId = txtID.Text; if (BLLWATERMETERTYPE.Update(MODELWATERMETERTYPE)) { Query(); dgList.ClearSelection(); for (int i = 0; i < dgList.Rows.Count; i++) { if (dgList.Rows[i].Cells["waterMeterTypeId"].Value != null && dgList.CurrentRow.Cells["waterMeterTypeId"].Value != DBNull.Value) { string strID = dgList.Rows[i].Cells["waterMeterTypeId"].Value.ToString(); if (MODELWATERMETERTYPE.waterMeterTypeId == strID) { dgList.CurrentCell = dgList.Rows[i].Cells["waterMeterTypeValue"]; dgList_SelectionChanged(null, null); } } } } else { mes.Show("修改失败,请重新点击保存按钮!"); return; } } dgList.Enabled = true; toolDel.Enabled = true; toolAdd.Text = "添加"; isAdd = false; }