开发工具与关键技术:Visual Studio 2015
作者:杨镇虹
撰写时间:2021.05.07
一、保存修改订单
//保存修改订单订货按钮
private void btnSave_Click(object sender, RoutedEventArgs e)
{
try
{
int intcount = 0;//修改订货条数
//判断页面数据是否不为空
if (tex_OrderOdd.Text.ToString().Trim() != "" && tex_OrderDate.Text.ToString().Trim() != "" && Convert.ToInt32(tex_ClientName.SelectedValue) > 0 && Convert.ToInt32(tex_MaterialEtc.SelectedValue) > 0 && tex_Remark.Text.ToString().Trim() != "" && tex_ReachDate.Text.ToString().Trim() != "")
{
//获取页面数据
string strOrderOdd = tex_OrderOdd.Text.ToString().Trim();//订单号
DateTime strOrderDate = Convert.ToDateTime(tex_OrderDate.Text.ToString().Trim());//下单日期
int intClientName = Convert.ToInt32(tex_ClientName.SelectedValue);//订货人
int intMaterialEtc = Convert.ToInt32(tex_MaterialEtc.SelectedValue);//供货单位 DateTime dtReachDate = Convert.ToDateTime(tex_ReachDate.Text.ToString().Trim());//到货日
string strRemark = tex_Remark.Text.ToString().Trim();//备注
int intOrderID = Convert.ToInt32(dtOrder.Rows[0]["OrderID"]);//订单ID
//判断到货日期不能小于下单日期
if (dtReachDate >= strOrderDate)
{
//声明一个变量-接收选中了多少个多选框
int intchked = 0;//项数
//声明一个变量-接收合计金额
int intPerMoney = 0;//每一项的合计金额
int intMoney = 0;//总合计金额
int intPartsID = 0;//零件ID
int intOrderGoodsRequired = 0;//订货数
//for循环-订货零件表的条数 获取选择零件项数和总合计金额
//for循环获取 项数和合计总金额
for (int i = 0; i < dgOrderGoodsParts.Items.Count; i++)
{
//判断是否选中多选框
if (Convert.ToBoolean(dtOrderGoodsParts.Rows[i]["chked"]) == true)
{
intchked++;
intPartsID = Convert.ToInt32(((DataRowView)dgOrderGoodsParts.Items[i]).Row["PartsID"]);//获取零件ID
intOrderGoodsRequired = Convert.ToInt32(((DataRowView)dgOrderGoodsParts.Items[i]).Row["OrderGoodsRequired"]);//订货数
int intPrice = Convert.ToInt32(((DataRowView)dgOrderGoodsParts.Items[i]).Row["Price"]);//订货单价 //判断订货数是否大于零
if (intOrderGoodsRequired > 0)
{
intPerMoney = intOrderGoodsRequired * intPrice;//订货数跟订货单价相乘
intMoney += intPerMoney;//合计金额
}
}
}
string strTermsNumber = tex_TermsNumber.Text = intchked.ToString();//赋值项数
string strMoney = tex_Money.Text = intMoney.ToString();//赋值合计金额
//判断订单状态是否未收货 如果未收货可以进行修改
if(intStatus == 0)
{
int intcounts = myClient.btnSave_Click_UpdateOrder(strOrderOdd, strOrderDate, strTermsNumber, strMoney, dtReachDate, strRemark, intMaterialEtc, intClientName, intOrderID); //执行修改订单表
if (intcounts > 0)
{
int intOGount = 0; //记录批量删除 订货数据的条数
//for 循环批量删除 根据订单ID 查询出的订货数据
for (int i = 0; i < dtOrderGoods.Rows.Count; i++)
{
int intOrderGoodsID = Convert.ToInt32(dtOrderGoods.Rows[i]["OrderGoodsID"]);//获取订货ID
//进行删除 myClient.UserControl_Delete_OrderGoods(intOrderGoodsID);
intOGount++;//删除条数自加1
}
//判断根据订单ID 查询出的订货的数据行数是否等于 批量删除订货数据的条数
if (dtOrderGoods.Rows.Count == intOGount)
{
//for循环页面所有数据 重新 批量新增订货数据
for (int j = 0; j < dgOrderGoodsParts.Items.Count; j++)
{
if (Convert.ToBoolean(dtOrderGoodsParts.Rows[j]["chked"]) == true)
{
int intParts = Convert.ToInt32(((DataRowView)dgOrderGoodsParts.Items[j]).Row["PartsID"]);//获取零件ID
int intOrderGoodsRequireds = Convert.ToInt32(((DataRowView)dgOrderGoodsParts.Items[j]).Row["OrderGoodsRequired"]);//商品数量 //根据零件ID 查询数据转换表格
DataTable dtGoods = myClient.Select_GoodsID(intParts).Tables[0];
for (int g = 0; g < dtGoods.Rows.Count; g++)
{
int intGoodsID = Convert.ToInt32(dtGoods.Rows[0]["GoodsID"]);//获取商品ID
int intp = 1;
//新增订货表
intcount = Convert.ToInt32(myClient.btnSave_Click_OrderGoods(intGoodsID, intOrderID, intp, intOrderGoodsRequireds.ToString()));
}
}
}
//判断是否大于零 修改成功
if (intcounts > 0 || intcount > 0)
{
MessageBoxResult dr = MessageBox.Show("修改订单成功!", "系统提示", MessageBoxButton.OK, MessageBoxImage.Information);
if (dr == MessageBoxResult.OK){
this.Close();//关闭窗口}
}else{
MessageBox.Show("修改失败", "系统提示");}
}
}
}else{
MessageBox.Show("该订单已收货,不能进行修改!", "系统提示", MessageBoxButton.OK, MessageBoxImage.Exclamation);}
}else{
MessageBox.Show("到货日期不能小于下单日期!", "系统提示", MessageBoxButton.OK, MessageBoxImage.Warning);}
}else{
MessageBox.Show("请填写完整页面数据!", "系统提示", MessageBoxButton.OK, MessageBoxImage.Warning); }
}catch (Exception ex) {
MessageBox.Show("数据异常" + ex.ToString(), "系统提示", MessageBoxButton.OK, MessageBoxImage.Error); }
}
06-25
1779
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
04-26
1885
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)