海马汽车经销商管理系统技术解析(七)预约失败处理
2015-06-01 21:37
337 查看
预约失败
预约失败实现作废预约单的功能,插入失败所要记录的信息,改变单据状态。点击预约管理的主界面中的【预约失败】弹出【预约失败】界面。见下图:从预约失败界面可以看到有控件:
控件 | 说明 |
文本框(TextBox) | 控件可以在工具箱直接拖动至窗体,拖至窗体后右击属性可以修改控件的样式和各种属性,还可以编辑事件。 |
按钮(Button) |
第一步:数据库
1、表和关系
表1、预约单表(PW_BespeakBillList)
列名 | 数据类型 | 主键/外键 | 说明 |
BespeakBillID | int - Identity | 主键 | 预约单ID |
BespeakOddNumBer | nchar (20) | 预约单号 | |
CarNewsID | int | 外键 | 车辆信息表,车辆信息ID |
BespeakTime | datetime | 预约时间 | |
AttributeMinuteID_BespeakWay | int | 外键 | 属性明细表,属性明细ID_预约方式 |
BespeakMileage | decimal (18, 2) | 预约里程 | |
BespeakStatus | nchar (20) | 预约状态 | |
Gross | decimal (18, 2) | 总计金额 | |
FailCause | nchar (100) | 失败原因 | |
StaffID_HearPersons | int | 外键 | 员工档案表,员工ID_受理人 |
StaffID_Receiver | int | 外键 | 员工档案表,员工ID_接待人 |
LastTimeInTheFactory | nchar (20) | 上次进厂时间 | |
IfBespeakSucceed | bit | 预约成功否 | |
StaffID_AlterationPerson | nchar (20) | 外键 | 员工档案表,员工ID_变更人 |
BookingCarDeliveryTime | nchar (20) | 预约交车时间 | |
BespeakWarnTime | nchar (20) | 预约提醒时间 | |
ServiceOddNumber | nchar (20) | 外键 | 维修单表,维修单号 |
NewBespeakOddlNumber | nchar (20) | 新预约单号 | |
OldBespeakOddNumber | nchar (20) | 旧预约单号 | |
AlterationTime | nchar (20) | 变更时间 | |
AlterationCauses | nchar (100) | 变更原因 | |
ClientDescribe | nchar (100) | 客户描述 | |
Remarks | nchar (100) | 备注 | |
IfResourceRelease | bit | 资源释放否 |
1、作废预约单
第一步:数据库存储过程
IF(@TYPE='FRM_YuYueGuanLi_btnHeZhun_Click_YuYueShiBai') BEGIN UPDATE PW_BespeakBillList SET IfEffective=@IfEffective, FailCause=@FailCause WHERE PW_BespeakBillList.BespeakBillID=@BespeakBillID END
第二步:逻辑层(BLL)
//作废预约单,插入失败原因、改变单据状态 [OperationContract] public int FRM_YuYueGuanLi_btnHeZhun_Click_YuYueShiBai(bool boolYouXiaoFou, string strShiBaiYuanYin, int intYuYueDanHaoID) { SqlParameter[] mySqlParameters = { //作废预约单所用到的参数 new SqlParameter("@TYPE",SqlDbType.Char), new SqlParameter("@IfEffective",SqlDbType.Bit), new SqlParameter("@FailCause",SqlDbType.NChar), new SqlParameter("@BespeakBillID",SqlDbType.Int) }; mySqlParameters[0].Value = "FRM_YuYueGuanLi_btnHeZhun_Click_YuYueShiBai"; mySqlParameters[1].Value = boolYouXiaoFou; mySqlParameters[2].Value = strShiBaiYuanYin; mySqlParameters[3].Value = intYuYueDanHaoID; return myDALMethod.UpdateData("预约管理_FRM_YuYueGuanLi", mySqlParameters); //如果返回值为1就是正常的,小于0就是异常的了。 }
第三步:界面层(UIL),点击“确定”按钮。
BLL海马汽车销售系统.预约管理.FRM_YuYueGuanLi.FRM_YuYueGuanLiClient myFRM_YuYueGuanLiClient = new BLL海马汽车销售系统.预约管理.FRM_YuYueGuanLi.FRM_YuYueGuanLiClient(); private void btnQueDing_Click(object sender, EventArgs e) { if (txtFailCause.Text.Trim() == "")//如果失败原因不为空 { MessageBox.Show("请填写失败原因!"); } //给各个变量赋值 bool blnYouXiaoFou=true; string strShiBaiYuanYin = txtFailCause.Text; int intYuYueDanHaoID = FRM_YuYueGuanLi.intYuYueDanID; //保存预约失败所需要插入的信息和要修改的信息到数据库 int i=myFRM_YuYueGuanLiClient.FRM_YuYueGuanLi_btnHeZhun_Click_YuYueShiBai(blnYouXiaoFou,strShiBaiYuanYin,intYuYueDanHaoID); //提示对话框,如果点击【是】 if (MessageBox.Show("原预约单‘"+ FRM_YuYueGuanLi.strYuYueDanHao +"’所占用资源已释放", "HaiMa", MessageBoxButtons.OK) == DialogResult.OK) { FRM_YuYueGuanLi_Update myFRM_YuYueGuanLi_Update = new FRM_YuYueGuanLi_Update(); myFRM_YuYueGuanLi_Update.ShowDialog();//显示界面 } this.Close();//关闭当前窗体 }
以上仅供学习参考,禁止用于商业用途!!!
相关文章推荐
- 用gdisk调整gpt/ext4分区大小
- Android开发需要安装的软件或工具
- OpenCV写入AVI视频文件
- mysql安装、数据库、ORM
- 一句bug,差点破产
- Html-input文本框只能输入数字
- 数据隐藏技术解密
- 面试常见问题
- 手动编译链接一个HelloWorld
- 深入探究frame和bounds的区别以及setbounds使用
- Lucene TF-IDF 相关性算分公式
- arm-none-linux-gnueabi-解决make zImage奇怪错误
- lucida
- 攻壳机动队-Ghost Stands Alone(灵魂形单影只)
- Android 代码优化
- 大数阶乘
- 高并发服务器学习之线程类
- 我爱淘二次冲刺阶段3
- symbol lookup error - undefined symbol
- Oracle备份与恢复系列 五 续 EXP/IMP迁移、复制数据库