广州本田整车销售管理系统技术分析(四)
2、外调商品车
外调商品车接车包括:查询、新增、删除、修改等功能
A、外调商品车接车界面:
图:2.1
新增外调商品车界面:
图:2.2
图:2.3
数据库表与表之间的关系图:
以上的关系图用到的表:
dbo.CarList (车辆表)
PrimaryKey(s): CarID
Field | Type | Nulls? | 主键/外键 | Comments | |
CarID | int - Identity | No | 主键 | 车辆ID
| |
FreightInvoicesDetailID | int | Yes | 外键 | 货运单明细ID
| |
CarTypeID | int | Yes | 外键 | 车辆类型ID
| |
CarFrameNumber | nchar (60) | Yes |
| 车架号
| |
CarEngineNumber | nchar (60) | Yes |
| 发动机号
| |
CarKindID | int | Yes | 外键 | 车种ID
| |
CarMondelID | int | Yes | 外键 | 车型ID
| |
CarBodyColorID | int | Yes | 外键 | 车身颜色ID
| |
CarUnderOrnamentsColorID | int | Yes | 外键 | 内饰颜色ID
| |
CarTransmissionID | int | Yes | 外键 | 变速箱ID
| |
CarKeyNumber | nchar (20) | Yes |
| 钥匙号
| |
CarStockPrice | decimal (18, 3) | Yes |
| 进货价格
| |
ProductionManufacturersID | int | Yes |
| 生产厂家ID
| |
CarPDIWhetherDetection | bit | Yes |
| PDI检查否
| |
CarStatusID | int | Yes | 外键 | 车辆状态ID
| |
OldCarID | int | Yes | 外键 | 原车辆ID
| |
OutSurveyCommodityCarID | int | Yes | 外键 | 外调商品车ID
| |
WhetherSchedule | bit | Yes |
| 是否预定
| |
ThoughtCarPDIWhetherDetection | bit | Yes |
| 通过PDI检查否
| |
WhetherStraightMelt | bit | Yes |
| 直销车否
| |
WhetherConnectCar | bit | Yes |
| 是否接车
|
外调商品车表:
dbo.OutSurveyCommodityCarLList (外调商品车表)
PrimaryKey(s): OutSurveyCommodityCarID
Field | Type | Nulls? | 主键/外键 | Comments | |
OutSurveyCommodityCarID | int - Identity | No | 主键 | 外调商品车ID
| |
OutSurveyCommodityCarFrameNumber | nchar (60) | Yes |
| 外调商品车车架号
| |
OutSurveyCommodityCarEngineNumber | nchar (60) | Yes |
| 外调商品车发动机号
| |
OutSurveyCommodityCarKindID | int | Yes | 外键 | 外调商品车车种ID
| |
OutSurveyCommodityCarMondelID | int | Yes | 外键 | 外调商品车车型ID
| |
OutSurveyCommodityCarBodyColorID | int | Yes | 外键 | 外调商品车车身颜色ID
| |
OutSurveyCommodityCarUnderOrnamentsColorID | int | Yes | 外键 | 外调商品车内饰颜色ID
| |
OutSurveyCommodityCarTransmissionID | int | Yes | 外键 | 外调商品车变速箱ID
| |
OutSurveyCommodityCarKeyNumber | nchar (60) | Yes |
| 外调商品车钥匙号
| |
OutSurveyCommodityCarPrice | decimal (18, 3) | Yes |
| 外调商品车价格
| |
OutSurveyCommodityCarProductionManufacturersID | int | Yes | 外键 | 外调商品车生产厂家ID
| |
WhetherConnectCar | bit | Yes |
|
| |
KeYongFou | bit | Yes |
|
|
接车检查项目记录表:
dbo.ConnectCarCheckProjctRecordList (接车检查项目记录表)
PrimaryKey(s): ConnectCarCheckProjctRecordID
Field | Type | Nulls? | Comments |
ConnectCarCheckProjctRecordID | int - Identity | No | 接车检查项目记录ID
|
CarID | int | Yes | 车辆ID
|
CheckProjectID | int | Yes | 检查项目ID
|
CheckResult | nchar (40) | Yes | 检查结果
|
DiposeMethod | nchar (100) | Yes | 处理方法
|
Valuation | decimal (18, 3) | Yes | 估计
|
CheckerID | int | Yes | 检查人ID
|
SignDate | datetime | Yes | 签字日期
|
查询功能:
思路分析:第一步查询所有外调商品车数据---->根据输入的查询条件筛选数据----->将筛选的数据绑定对应的dgv中
注:在查询全部打钩---->撤消查询条件---->再点击查询按钮(查询全部)
第一步:写储存过程
</pre><pre name="code" class="sql">----查询外调商品车信息
if(@Type='frm_JieCheGuanLi_Load_Select_WaiDiaoShangPingCheLiang')
begin
SELECT OutSurveyCommodityCarLList.OutSurveyCommodityCarID, OutSurveyCommodityCarLList.OutSurveyCommodityCarFrameNumber,
OutSurveyCommodityCarLList.OutSurveyCommodityCarEngineNumber, OutSurveyCommodityCarLList.OutSurveyCommodityCarKeyNumber,
OutSurveyCommodityCarLList.OutSurveyCommodityCarPrice, AttributeGatherDetailList.AttributeGatherDetail AS Wai_CheZhong, AttributeGatherDetailList_1.AttributeGatherDetail AS Wai_CheXing,
AttributeGatherDetailList_2.AttributeGatherDetail AS Wai_CheShenYanShe, AttributeGatherDetailList_3.AttributeGatherDetail AS Wai_NeiShiYanShe,
AttributeGatherDetailList_4.AttributeGatherDetail AS Wai_BianSuXiang, AttributeGatherDetailList_5.AttributeGatherDetail AS Wai_ShenChanChangJia,
OutSurveyCommodityCarLList.OutSurveyCommodityCarProductionManufacturersID, OutSurveyCommodityCarLList.OutSurveyCommodityCarMondelID,
OutSurveyCommodityCarLList.WhetherConnectCar, ConnectCarCheckProjctRecordList.SignDate
FROM ConnectCarCheckProjctRecordList RIGHT OUTER JOIN
CarList ON ConnectCarCheckProjctRecordList.CarID = CarList.CarID RIGHT OUTER JOIN
AttributeGatherDetailList INNER JOIN
OutSurveyCommodityCarLList ON AttributeGatherDetailList.AttributeGatherDetailID = OutSurveyCommodityCarLList.OutSurveyCommodityCarKindID INNER JOIN
AttributeGatherDetailList AS AttributeGatherDetailList_1 ON OutSurveyCommodityCarLList.OutSurveyCommodityCarMondelID = AttributeGatherDetailList_1.AttributeGatherDetailID INNER JOIN
AttributeGatherDetailList AS AttributeGatherDetailList_2 ON OutSurveyCommodityCarLList.OutSurveyCommodityCarBodyColorID = AttributeGatherDetailList_2.AttributeGatherDetailID INNER JOIN
AttributeGatherDetailList AS AttributeGatherDetailList_3 ON
OutSurveyCommodityCarLList.OutSurveyCommodityCarUnderOrnamentsColorID = AttributeGatherDetailList_3.AttributeGatherDetailID INNER JOIN
AttributeGatherDetailList AS AttributeGatherDetailList_4 ON OutSurveyCommodityCarLList.OutSurveyCommodityCarTransmissionID = AttributeGatherDetailList_4.AttributeGatherDetailID INNER JOIN
AttributeGatherDetailList AS AttributeGatherDetailList_5 ON
OutSurveyCommodityCarLList.OutSurveyCommodityCarProductionManufacturersID = AttributeGatherDetailList_5.AttributeGatherDetailID ON
CarList.OutSurveyCommodityCarID = OutSurveyCommodityCarLList.OutSurveyCommodityCarID
WHERE (OutSurveyCommodityCarLList.KeYongFou = 1)
group by OutSurveyCommodityCarLList.OutSurveyCommodityCarID, OutSurveyCommodityCarLList.OutSurveyCommodityCarFrameNumber,
OutSurveyCommodityCarLList.OutSurveyCommodityCarEngineNumber, OutSurveyCommodityCarLList.OutSurveyCommodityCarKeyNumber,
OutSurveyCommodityCarLList.OutSurveyCommodityCarPrice, AttributeGatherDetailList.AttributeGatherDetail , AttributeGatherDetailList_1.AttributeGatherDetail,
AttributeGatherDetailList_2.AttributeGatherDetail , AttributeGatherDetailList_3.AttributeGatherDetail ,
AttributeGatherDetailList_4.AttributeGatherDetail, AttributeGatherDetailList_5.AttributeGatherDetail,
OutSurveyCommodityCarLList.OutSurveyCommodityCarProductionManufacturersID, OutSurveyCommodityCarLList.OutSurveyCommodityCarMondelID,
OutSurveyCommodityCarLList.WhetherConnectCar,ConnectCarCheckProjctRecordList.SignDate
order by ConnectCarCheckProjctRecordList.SignDate desc
End
第二步:写逻辑层
#region 查询外调商品车数据
[OperationContract]
public DataSet frm_JieCheGuanLi_Load_Select_WaiDiaoShangPingCheLiang()
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char)
};
mySqlParameters[0].Value = "frm_JieCheGuanLi_Load_Select_WaiDiaoShangPingCheLiang";
DataTable dt = myDALMethod.QueryDataTable("接车管理_frm_JieCheGuanLi", mySqlParameters);
DataSet ds = new DataSet();
ds.Tables.Add(dt);
return ds;
}
#endregion
第三步:写界面层
在Load事件写代码调用 WaiDiaoShangPinChe();//自定义一个绑定外调商品车的方法
A、:
/// <summary>
/// 自定义一个绑定外调商品车的方法
/// </summary>
public void WaiDiaoShangPinChe()
{
dgvCar_Wai.Rows.Clear();//清空dgvCar_Wai
dtWaiDiaoShangPinChe = myfrm_JieCheGuanLi_JieCheClient.frm_JieCheGuanLi_Load_Select_WaiDiaoShangPingCheLiang().Tables[0];
for (int i = 0; i < dtWaiDiaoShangPinChe.Rows.Count; i++)
{
dgvCar_Wai.Rows.Add(1);
dgvCar_Wai.Rows[i].Cells["外调商品车ID"].Value = dtWaiDiaoShangPinChe.Rows[i]["OutSurveyCommodityCarID"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调_车型ID"].Value = dtWaiDiaoShangPinChe.Rows[i]["OutSurveyCommodityCarMondelID"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调_生产厂家ID"].Value = dtWaiDiaoShangPinChe.Rows[i]["OutSurveyCommodityCarProductionManufacturersID"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调商品车车架号"].Value = dtWaiDiaoShangPinChe.Rows[i]["OutSurveyCommodityCarFrameNumber"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调商品车发动机号"].Value = dtWaiDiaoShangPinChe.Rows[i]["OutSurveyCommodityCarEngineNumber"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调商品车车种MC"].Value = dtWaiDiaoShangPinChe.Rows[i]["Wai_CheZhong"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调商品车车型MC"].Value = dtWaiDiaoShangPinChe.Rows[i]["Wai_CheXing"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调商品车车身颜色MC"].Value = dtWaiDiaoShangPinChe.Rows[i]["Wai_CheShenYanShe"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调商品车内饰颜色MC"].Value = dtWaiDiaoShangPinChe.Rows[i]["Wai_NeiShiYanShe"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调商品车变速箱MC"].Value = dtWaiDiaoShangPinChe.Rows[i]["Wai_BianSuXiang"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调商品车钥匙号"].Value = dtWaiDiaoShangPinChe.Rows[i]["OutSurveyCommodityCarKeyNumber"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调商品车价格"].Value = dtWaiDiaoShangPinChe.Rows[i]["OutSurveyCommodityCarPrice"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["外调商品车生产厂家MC"].Value = dtWaiDiaoShangPinChe.Rows[i]["Wai_ShenChanChangJia"].ToString().Trim();
dgvCar_Wai.Rows[i].Cells["接车时间"].Value = dtWaiDiaoShangPinChe.Rows[i]["SignDate"].ToString().Trim();
if (Convert.ToBoolean(dtWaiDiaoShangPinChe.Rows[i]["WhetherConnectCar"]) == true)//判断该车是否已接车,若已接车,则改变该行颜色
{
dgvCar_Wai.Rows[i].DefaultCellStyle.ForeColor = Color.Blue;//改变该行颜色
}
}
}
/// <summary>
/// 外调商品车查询按钮事件
/// </summary>
/// <param name="sender">触发者</param>
/// <param name="e">触发环境</param>
private void btnSelect_Wai_Click(object sender, EventArgs e)
{
string strRongQi="";
System.Data.DataTable dtNewWaiDiaoShangPinChe;
dgvCar_Wai.DataSource = dtWaiDiaoShangPinChe;
DataView dv = new DataView(dtWaiDiaoShangPinChe);//将dtYouTiaoJianChaXunHuoYunDan绑定dv视图(目的为了后面的数据筛选)
if (dtWaiDiaoShangPinChe.Rows.Count == 0)
{
MessageBox.Show("抱歉,没要检测到您要的数据!!!");
return;
}
if (cboCarFrameNumber.SelectedIndex >= 0)
{
strRongQi += " OutSurveyCommodityCarFrameNumber like '%" + cboCarFrameNumber.Text + "%' and";
}
if (cboCarMondel.SelectedIndex >= 0)
{
strRongQi += " Wai_CheXing like '%" + cboCarMondel.Text + "%' and";
}
if (cboCarBodyColor.SelectedIndex >= 0)
{
strRongQi += " Wai_CheShenYanShe like '%" + cboCarBodyColor.Text + "%' and";
}
if (cboCarUnderOrnamentsColor.SelectedIndex >= 0)
{
strRongQi += " Wai_NeiShiYanShe like '%" + cboCarUnderOrnamentsColor.Text + "%' and";
}
if (cboCarProductionManufacturers.SelectedIndex >= 0)
{
strRongQi += " Wai_ShenChanChangJia like '%" + cboCarProductionManufacturers.Text + "%' and";
}
if (cboCarTransmission.SelectedIndex >= 0)
{
strRongQi += " Wai_BianSuXiang like '%" + cboCarTransmission.Text + "%' and";
}
if (dtpConnectCarKaiShi.ShowCheckBox == true)
{
strRongQi += " SignDate>='" + dtpConnectCarKaiShi.Value + "'AND SignDate<='" + dtpConnectCarJieShu.Value + "'and";
}
if (strRongQi.Length < 3)//没进行多条件查询操作
{ }
else//进行多条件操作
{
dv.RowFilter = strRongQi.Remove(strRongQi.Length - 3);//移除strRongQi中的“and”,并且根据strRongQi移除后的结果筛选数据
dtNewWaiDiaoShangPinChe = dv.ToTable();//将筛选后的结果赋值给dtNewHuoYunDan
if (dtNewWaiDiaoShangPinChe.Rows.Count == 0)//判断dtNewHuoYunDan存在数据,若没数据则提示!
{
MessageBox.Show("抱歉,没要检测到您要的数据!!!");
return;
}
dgvCar_Wai.DataSource = dtNewWaiDiaoShangPinChe;//将根据条件查出的数据绑定到dgvFreightInvoices中
}
}
外调商品车新增功能的实现:
<p><pre name="code" class="sql">----新增外调商品车
if(@Type='btnBaoCun_Click_WaiDiaoShangPingCheLiang_Insert')
begin
insert into OutSurveyCommodityCarLList(OutSurveyCommodityCarFrameNumber, OutSurveyCommodityCarEngineNumber, OutSurveyCommodityCarKindID, OutSurveyCommodityCarMondelID, OutSurveyCommodityCarBodyColorID,
OutSurveyCommodityCarUnderOrnamentsColorID, OutSurveyCommodityCarTransmissionID, OutSurveyCommodityCarKeyNumber, OutSurveyCommodityCarPrice,
OutSurveyCommodityCarProductionManufacturersID, WhetherConnectCar,KeYongFou)
values (@OutSurveyCommodityCarFrameNumber, @OutSurveyCommodityCarEngineNumber, @OutSurveyCommodityCarKindID, @OutSurveyCommodityCarMondelID, @OutSurveyCommodityCarBodyColorID,
@OutSurveyCommodityCarUnderOrnamentsColorID, @OutSurveyCommodityCarTransmissionID, @OutSurveyCommodityCarKeyNumber, @OutSurveyCommodityCarPrice,
@OutSurveyCommodityCarProductionManufacturersID, 0,1)
end
第二步:写逻辑层
#region 新增外调商品车辆表
[OperationContract]
public int btnBaoCun_Click_WaiDiaoShangPingCheLiang_Insert(string OutSurveyCommodityCarFrameNumber, string OutSurveyCommodityCarEngineNumber, int OutSurveyCommodityCarKindID, int OutSurveyCommodityCarMondelID, int OutSurveyCommodityCarBodyColorID
, int OutSurveyCommodityCarUnderOrnamentsColorID, int OutSurveyCommodityCarTransmissionID, string OutSurveyCommodityCarKeyNumber, decimal OutSurveyCommodityCarPrice, int OutSurveyCommodityCarProductionManufacturersID)
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@OutSurveyCommodityCarFrameNumber",SqlDbType.Char),
new SqlParameter("@OutSurveyCommodityCarEngineNumber",SqlDbType.Char),
new SqlParameter("@OutSurveyCommodityCarKindID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarMondelID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarBodyColorID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarUnderOrnamentsColorID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarTransmissionID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarKeyNumber",SqlDbType.Char),
new SqlParameter("@OutSurveyCommodityCarPrice",SqlDbType.Decimal),
new SqlParameter("@OutSurveyCommodityCarProductionManufacturersID",SqlDbType.Int)
};
mySqlParameters[0].Value = "btnBaoCun_Click_WaiDiaoShangPingCheLiang_Insert";
mySqlParameters[1].Value = OutSurveyCommodityCarFrameNumber;
mySqlParameters[2].Value = OutSurveyCommodityCarEngineNumber;
mySqlParameters[3].Value = OutSurveyCommodityCarKindID;
mySqlParameters[4].Value = OutSurveyCommodityCarMondelID;
mySqlParameters[5].Value = OutSurveyCommodityCarBodyColorID;
mySqlParameters[6].Value = OutSurveyCommodityCarUnderOrnamentsColorID;
mySqlParameters[7].Value = OutSurveyCommodityCarTransmissionID;
mySqlParameters[8].Value = OutSurveyCommodityCarKeyNumber;
mySqlParameters[9].Value = OutSurveyCommodityCarPrice;
mySqlParameters[10].Value = OutSurveyCommodityCarProductionManufacturersID;
int dt = myDALMethod.UpdateData("接车管理_frm_JieCheGuanLi", mySqlParameters);
return dt;
}
#endregion
第三步:写界面层
/// <summary>
/// 新增外调商品车代码
/// </summary>
/// <param name="sender">触发者</param>
/// <param name="e">触发环境</param>
private void btnBaoCun_Click(object sender, EventArgs e)
{
if (txtJinHuoJia.Text != "")
{
#region 字段的声明与赋值
int intShengChanChangJiaID = Convert.ToInt32(cboShengChanChangJia.SelectedValue);
string strCheJiaHao = txtCheJiaHao.Text;
int intCheZhongID = Convert.ToInt32(cboCheZhong.SelectedValue);
int intCheXingID = Convert.ToInt32(cboCheXing.SelectedValue);
int intCheShenYanSheID = Convert.ToInt32(cboCheShengYanShe.SelectedValue);
int intNeiShiYanSheID = Convert.ToInt32(cboNeiShiYanShe.SelectedValue);
int intBianShuXiangID = Convert.ToInt32(cboBianShuXiangHao.SelectedValue);
string strFaDongJiHao = txtFaDongJiHao.Text;
string strYaoShiHao = txtYaoShiHao.Text;
decimal decJinHuoJia = Convert.ToDecimal(txtJinHuoJia.Text);
#endregion
int intWaiDiaoShangPinChe = myfrm_JieCheGuanLi_JieCheClient.btnBaoCun_Click_WaiDiaoShangPingCheLiang_Insert(strCheJiaHao, strFaDongJiHao, intCheZhongID, intCheXingID, intCheShenYanSheID,
intNeiShiYanSheID, intBianShuXiangID, strYaoShiHao, decJinHuoJia, intShengChanChangJiaID);
if (intWaiDiaoShangPinChe > 0)
{
MessageBox.Show("保存成功!!!");
//接车管理.frm_JieCheGuanLi myfrm_JieCheGuanLi = new frm_JieCheGuanLi();
//myfrm_JieCheGuanLi.ShuaXin();
this.Close();
}
else
{
MessageBox.Show("保存失败!!!");
}
}
else
{
MessageBox.Show("您还没有输入完整数据,请核对后再继续!!!");
}
}
修改功能:
实现步骤:先绑定原先的数据--->修改数据---->保存
第一步:写储存过程
第一步:写储存过程
--修改外调商品车
if(@Type='btnXiuGai_Click_WaiDiaoShangPingCheLiang_Update')
begin
Update OutSurveyCommodityCarLList
Set OutSurveyCommodityCarFrameNumber=@OutSurveyCommodityCarFrameNumber, OutSurveyCommodityCarEngineNumber=@OutSurveyCommodityCarEngineNumber, OutSurveyCommodityCarKindID=@OutSurveyCommodityCarKindID, OutSurveyCommodityCarMondelID=@OutSurveyCommodityCarMondelID, OutSurveyCommodityCarBodyColorID=@OutSurveyCommodityCarBodyColorID,
OutSurveyCommodityCarUnderOrnamentsColorID=@OutSurveyCommodityCarUnderOrnamentsColorID, OutSurveyCommodityCarTransmissionID=@OutSurveyCommodityCarTransmissionID, OutSurveyCommodityCarKeyNumber=@OutSurveyCommodityCarKeyNumber, OutSurveyCommodityCarPrice=@OutSurveyCommodityCarPrice,
OutSurveyCommodityCarProductionManufacturersID=@OutSurveyCommodityCarProductionManufacturersID, WhetherConnectCar=0
WHERE OutSurveyCommodityCarLList.OutSurveyCommodityCarID=@OutSurveyCommodityCarID
End
第二步:写逻辑层
#region 有条件查询外调商品车数据
[OperationContract]
public DataSet frm_JieCheGuanLi_WaiDiaoShangPingChe_Updatecs_Load_Select_WaiDiaoShangPingCheLiang(int OutSurveyCommodityCarID)
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@OutSurveyCommodityCarID",SqlDbType.Int)
};
mySqlParameters[0].Value = "frm_JieCheGuanLi_WaiDiaoShangPingChe_Updatecs_Load_Select_WaiDiaoShangPingCheLiang";
mySqlParameters[1].Value = OutSurveyCommodityCarID;
DataTable dt = myDALMethod.QueryDataTable("接车管理_frm_JieCheGuanLi", mySqlParameters);
DataSet ds = new DataSet();
ds.Tables.Add(dt);
return ds;
}
#endregion
#region 修改外调商品车辆表
[OperationContract]
public int btnXiuGai_Click_WaiDiaoShangPingCheLiang_Update(string OutSurveyCommodityCarFrameNumber, string OutSurveyCommodityCarEngineNumber, int OutSurveyCommodityCarKindID, int OutSurveyCommodityCarMondelID, int OutSurveyCommodityCarBodyColorID
, int OutSurveyCommodityCarUnderOrnamentsColorID, int OutSurveyCommodityCarTransmissionID, string OutSurveyCommodityCarKeyNumber, decimal OutSurveyCommodityCarPrice, int OutSurveyCommodityCarProductionManufacturersID,int OutSurveyCommodityCarID)
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@OutSurveyCommodityCarFrameNumber",SqlDbType.Char),
new SqlParameter("@OutSurveyCommodityCarEngineNumber",SqlDbType.Char),
new SqlParameter("@OutSurveyCommodityCarKindID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarMondelID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarBodyColorID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarUnderOrnamentsColorID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarTransmissionID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarKeyNumber",SqlDbType.Char),
new SqlParameter("@OutSurveyCommodityCarPrice",SqlDbType.Decimal),
new SqlParameter("@OutSurveyCommodityCarProductionManufacturersID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarID",SqlDbType.Int)
};
mySqlParameters[0].Value = "btnXiuGai_Click_WaiDiaoShangPingCheLiang_Update";
mySqlParameters[1].Value = OutSurveyCommodityCarFrameNumber;
mySqlParameters[2].Value = OutSurveyCommodityCarEngineNumber;
mySqlParameters[3].Value = OutSurveyCommodityCarKindID;
mySqlParameters[4].Value = OutSurveyCommodityCarMondelID;
mySqlParameters[5].Value = OutSurveyCommodityCarBodyColorID;
mySqlParameters[6].Value = OutSurveyCommodityCarUnderOrnamentsColorID;
mySqlParameters[7].Value = OutSurveyCommodityCarTransmissionID;
mySqlParameters[8].Value = OutSurveyCommodityCarKeyNumber;
mySqlParameters[9].Value = OutSurveyCommodityCarPrice;
mySqlParameters[10].Value = OutSurveyCommodityCarProductionManufacturersID;
mySqlParameters[11].Value = OutSurveyCommodityCarID;
int dt = myDALMethod.UpdateData("接车管理_frm_JieCheGuanLi", mySqlParameters);
return dt;
}
#endregion
第三步:写界面层
绑定数据:
在Load事件写代码:
/// <summary>
/// 修改界面的Load事件
/// </summary>
/// <param name="sender">触发者</param>
/// <param name="e">触发环境</param>
private void frm_JieCheGuanLi_WaiDiaoShangPingChe_Updatecs_Load(object sender, EventArgs e)
{
//禁用发票控件和订单编号
txtFaPiao.Enabled = false;
txtDingDanBiaoHao.Enabled = false;
txtFaPiao.Enabled = false;
txtDingDanBiaoHao.Enabled = false;
WaiDiaoShangPingCheXiaLaKuanDeBangDing();//调用自定义的绑定下拉框方法
YuanXianShuJuDeBangDing();//调用自定义的绑定数据方法
}
/// <summary>
/// 自定义的绑定数据方法
/// </summary>
public void YuanXianShuJuDeBangDing()
{
System.Data.DataTable dtWaiDiaoShangPingChe = myfrm_JieCheGuanLi_JieCheClient.frm_JieCheGuanLi_WaiDiaoShangPingChe_Updatecs_Load_Select_WaiDiaoShangPingCheLiang(intWaiDiaoShangPingCheID).Tables[0];
//字段的声明与赋值
int intShengChanChangJiaID = Convert.ToInt32(dtWaiDiaoShangPingChe.Rows[0]["OutSurveyCommodityCarProductionManufacturersID"]);
string strCheJiaHao = Convert.ToString(dtWaiDiaoShangPingChe.Rows[0]["OutSurveyCommodityCarFrameNumber"]);
int intCheXingID = Convert.ToInt32(dtWaiDiaoShangPingChe.Rows[0]["OutSurveyCommodityCarMondelID"]);
int intCheZhongID = Convert.ToInt32(dtWaiDiaoShangPingChe.Rows[0]["OutSurveyCommodityCarKindID"]);
int intChengShengYanSheID = Convert.ToInt32(dtWaiDiaoShangPingChe.Rows[0]["OutSurveyCommodityCarBodyColorID"]);
int intNeiShiYanSheID = Convert.ToInt32(dtWaiDiaoShangPingChe.Rows[0]["OutSurveyCommodityCarUnderOrnamentsColorID"]);
int intBianShuXiangID = Convert.ToInt32(dtWaiDiaoShangPingChe.Rows[0]["OutSurveyCommodityCarTransmissionID"]);
string strFaDongJiHaO = Convert.ToString(dtWaiDiaoShangPingChe.Rows[0]["OutSurveyCommodityCarEngineNumber"]);
string strYaoShiHao = Convert.ToString(dtWaiDiaoShangPingChe.Rows[0]["OutSurveyCommodityCarKeyNumber"]);
decimal decJinHuoJia = Convert.ToDecimal(dtWaiDiaoShangPingChe.Rows[0]["OutSurveyCommodityCarPrice"]);
//绑定数据
cboShengChanChangJia.SelectedValue = intShengChanChangJiaID;
txtCheJiaHao.Text = strCheJiaHao;
cboCheXing.SelectedValue = intCheXingID;
cboCheZhong.SelectedValue = intCheZhongID;
cboCheShengYanShe.SelectedValue = intChengShengYanSheID;
cboNeiShiYanShe.SelectedValue = intNeiShiYanSheID;
cboBianShuXiangHao.SelectedValue = intBianShuXiangID;
txtFaDongJiHao.Text = strFaDongJiHaO;
txtYaoShiHao.Text = strYaoShiHao;
txtJinHuoJia.Text = Convert.ToString(decJinHuoJia);
}
/// <summary>
/// 自定义的绑定下拉框方法
/// </summary>
public void WaiDiaoShangPingCheXiaLaKuanDeBangDing()
{
#region 下拉框的绑定
//获取数据源
System.Data.DataTable dtShengChangChanJia = my公共方法_Combox绑定Client.Select_ShengChangChangJia().Tables[0];
System.Data.DataTable dtCheXing = my公共方法_Combox绑定Client.Select_CboCheXing().Tables[0];
System.Data.DataTable dtYanShe = my公共方法_Combox绑定Client.Select_CboYanSe().Tables[0];
System.Data.DataTable dtCheZhong = my公共方法_Combox绑定Client.Select_CboCheZhong().Tables[0];
System.Data.DataTable dtBianShuXiangHao = my公共方法_Combox绑定Client.Select_BianSuXiang().Tables[0];
//绑定车型
cboCheXing.DataSource = dtCheXing;
cboCheXing.DisplayMember = "AttributeGatherDetail";
cboCheXing.ValueMember = "AttributeGatherDetailID";
//绑定生产厂家
cboShengChanChangJia.DataSource = dtShengChangChanJia;
cboShengChanChangJia.DisplayMember = "AttributeGatherDetail";
cboShengChanChangJia.ValueMember = "AttributeGatherDetailID";
//车身颜色
cboCheShengYanShe.DataSource = dtYanShe;
cboCheShengYanShe.DisplayMember = "ColorName";
cboCheShengYanShe.ValueMember = "ColorID";
//内饰颜色
cboNeiShiYanShe.DataSource = dtYanShe.Copy();
cboNeiShiYanShe.DisplayMember = "ColorName";
cboNeiShiYanShe.ValueMember = "ColorID";
//车种
cboCheZhong.DataSource = dtCheZhong;
cboCheZhong.DisplayMember = "AttributeGatherDetail";
cboCheZhong.ValueMember = "AttributeGatherDetailID";
//变速箱号
cboBianShuXiangHao.DataSource = dtBianShuXiangHao;
cboBianShuXiangHao.DisplayMember = "AttributeGatherDetail";
cboBianShuXiangHao.ValueMember = "AttributeGatherDetailID";
#endregion
}
/// <summary>
/// 外调商品车修改按钮单击事件
/// </summary>
/// <param name="sender">触发者</param>
/// <param name="e">触发环境</param>
private void btnBaoCun_Click(object sender, EventArgs e)
{
//字段的声明与赋值
int intShengChanChangJiaID = Convert.ToInt32(cboShengChanChangJia.SelectedValue);
string strCheJiaHao = txtCheJiaHao.Text;
int intCheXingID = Convert.ToInt32(cboCheXing.SelectedValue);
int intCheZhongID = Convert.ToInt32( cboCheZhong.SelectedValue);
int intChengShengYanSheID = Convert.ToInt32(cboCheShengYanShe.SelectedValue);
int intNeiShiYanSheID = Convert.ToInt32(cboNeiShiYanShe.SelectedValue);
int intBianShuXiangID =Convert.ToInt32( cboBianShuXiangHao.SelectedValue);
string strFaDongJiHaO = txtFaDongJiHao.Text ;
string strYaoShiHao = txtYaoShiHao.Text;
decimal decJinHuoJia =Convert.ToDecimal(txtJinHuoJia.Text);
int intXiuGaiWaiDiaoShangPinChe = myfrm_JieCheGuanLi_JieCheClient.btnXiuGai_Click_WaiDiaoShangPingCheLiang_Update(strCheJiaHao, strFaDongJiHaO, intCheZhongID, intCheXingID, intChengShengYanSheID,
intNeiShiYanSheID, intBianShuXiangID, strYaoShiHao, decJinHuoJia, intShengChanChangJiaID,intWaiDiaoShangPingCheID);
if (intXiuGaiWaiDiaoShangPinChe > 0)
{
MessageBox.Show("修改成功!!!");
this.Close();
}
else
{
MessageBox.Show("修改失败!!!");
}
}
删除功能:
注:当车辆被销售后,那么该车就不能在修改
第一步:写储存过程
--根据外调商品车ID查询车辆表
if(@Type='btnShanChu_Click_Select_CheLiaoBiao')
begin
SELECT CarList.CarStatusID
FROM CarList
where CarList.OutSurveyCommodityCarID =@OutSurveyCommodityCarID
end
--将外调商品车的可用否改为假
if(@Type='btnShanChu_Click_UpdateWaiDiaoShangPinChe')
begin
update OutSurveyCommodityCarLList
set OutSurveyCommodityCarLList.KeYongFou=0
where OutSurveyCommodityCarLList.OutSurveyCommodityCarID=@OutSurveyCommodityCarID
end
第二步:写逻辑层
#region 根据外调商品车ID查询车辆表
[OperationContract]
public DataSet btnShanChu_Click_Select_CheLiaoBiao(int OutSurveyCommodityCarID)
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@OutSurveyCommodityCarID",SqlDbType.Int)
};
mySqlParameters[0].Value = "btnShanChu_Click_Select_CheLiaoBiao";
mySqlParameters[1].Value = OutSurveyCommodityCarID;
DataTable dt = myDALMethod.QueryDataTable("接车管理_frm_JieCheGuanLi", mySqlParameters);
DataSet ds = new DataSet();
ds.Tables.Add(dt);
return ds;
}
#endregion
#region 根据外调车辆ID删除外调商品车表
[OperationContract]
public int btnShanChu_Click_UpdateWaiDiaoShangPinChe(int OutSurveyCommodityCarID)
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@OutSurveyCommodityCarID",SqlDbType.Int)
};
mySqlParameters[0].Value = "btnShanChu_Click_UpdateWaiDiaoShangPinChe";
mySqlParameters[1].Value = OutSurveyCommodityCarID;
int dt = myDALMethod.UpdateData("接车管理_frm_JieCheGuanLi", mySqlParameters);
return dt;
}
#endregion
第三步:写界面层
/// <summary>
/// 删除按钮事件(外调商品车)
/// </summary>
/// <param name="sender">触发者</param>
/// <param name="e">触发环境</param>
private void btnShanChu_Click(object sender, EventArgs e)
{
if (intWaiDianShngPingCheID == 0)//判断是否已选择要删除的车辆
{
MessageBox.Show("当前您还没有选择要删除的车辆,请选择后再继续。。。。");
return;
}
//根据外调商品车ID查询车辆表
DataTable dtYiGouCheDengJi = myfrm_JieCheGuanLi_JieCheClient.btnShanChu_Click_Select_CheLiaoBiao(intWaiDianShngPingCheID).Tables[0];
if (dtYiGouCheDengJi.Rows.Count > 0)//判断dtYiGouCheDengJi是否有值
{
if (Convert.ToInt32(dtYiGouCheDengJi.Rows[0]["CarStatusID"]) == 37)//判断该商品车是否已销售
{
MessageBox.Show("抱歉该车已经出售,不能删除,请选择其他车辆。。。。");
return;
}
}
int intShanChuWaiDiaoShangPinChe = myfrm_JieCheGuanLi_JieCheClient.btnShanChu_Click_UpdateWaiDiaoShangPinChe(intWaiDianShngPingCheID);
if (intShanChuWaiDiaoShangPinChe > 0)//判断是否成功
{
MessageBox.Show("删除成功!!!!!");
dgvCar_Wai.Rows.Remove(dgvCar_Wai.CurrentRow);//在dgvCar_Wai移除该车辆
}
else
{
MessageBox.Show("删除失败!!!!!");
}
}
接车确认/修改接车功能:
A、接车确认:
实现功能步骤:选择一条还没进行接车操作的车辆(已销售的车辆步能再修改接车)---->点击接车确认按钮---->接车界面---->有问题就录入接车问题否则直接保存
思路分析:单击车辆列表获取车型ID及生产厂家ID和车辆ID,将获取的ID传值到接车界面,在接车界面的Load事件查询接车检查项目信息,然后绑定到相对应的dgv中,在检查车辆时录入相关信息,最后按保存按钮(具体思路:1、新增车辆表2、新增车辆库存表3、在车辆表插入外调商品车ID 4、新增接车检查项目表)完成接车功能。
注:如果该车还没接车,则按钮就显示为“接车确认”,否则就显示“修改接车”
B、修改接车:
实现功能步骤:单击车辆列表获取车型ID及生产厂家ID和车辆ID,将获取的ID传值到接车界面,在修改接车界面的Load事件查询接车检车项目记录表并绑定,让然后修改有关信息,最后按保存按钮完成修改接车功能。
第一步:写储存过程
此储存过程的意思就是:根据车辆ID查询接车检查项目表,若有值则执行第一段储存过程,否则就执行第二段储存过程
--查询检查项目表
if(@Type='Select_JianChaXiangMuXinXi')
begin
IF EXISTS ( SELECT ConnectCarCheckProjctRecordList.CarID
FROM ConnectCarCheckProjctRecordList
where ConnectCarCheckProjctRecordList.CarID=@CarID
)
begin
SELECT ConnectCarCheckProjctList.ConnectCarCheckProjctID, ConnectCarCheckProjctList.ProductionManufacturersID, ConnectCarCheckProjctList.CarMondelID, ConnectCarCheckProjctList.CheckProjectID,
LTRIM(RTRIM(CheckProjectList.CheckProjectName)) AS CheckProjectName, LTRIM(RTRIM(CheckProjectList.CheckProjectNumber)) AS CheckProjectNumber,
ConnectCarCheckProjctRecordList.CheckResult, ConnectCarCheckProjctRecordList.DiposeMethod, ConnectCarCheckProjctRecordList.Valuation, ConnectCarCheckProjctRecordList.SignDate,
ConnectCarCheckProjctRecordList.CheckerID, ConnectCarCheckProjctRecordList.ConnectCarCheckProjctRecordID
FROM CheckProjectList LEFT OUTER JOIN
ConnectCarCheckProjctRecordList ON CheckProjectList.CheckProjectID = ConnectCarCheckProjctRecordList.CheckProjectID RIGHT OUTER JOIN
ConnectCarCheckProjctList ON CheckProjectList.CheckProjectID = ConnectCarCheckProjctList.CheckProjectID
where ConnectCarCheckProjctList.CarMondelID=@CarMondelID and ConnectCarCheckProjctList.ProductionManufacturersID=@ProductionManufacturersID
and ConnectCarCheckProjctRecordList.CarID=@CarID
end
ELSE
BEGIN
SELECT ConnectCarCheckProjctList.ConnectCarCheckProjctID, ConnectCarCheckProjctList.ProductionManufacturersID, ConnectCarCheckProjctList.CarMondelID, ConnectCarCheckProjctList.CheckProjectID,
LTRIM(RTRIM(CheckProjectList.CheckProjectName)) AS CheckProjectName, LTRIM(RTRIM(CheckProjectList.CheckProjectNumber)) AS CheckProjectNumber
FROM CheckProjectList RIGHT OUTER JOIN
ConnectCarCheckProjctList ON CheckProjectList.CheckProjectID = ConnectCarCheckProjctList.CheckProjectID
where ConnectCarCheckProjctList.CarMondelID=@CarMondelID and ConnectCarCheckProjctList.ProductionManufacturersID=@ProductionManufacturersID
end
End
--新增库存表
if(@Type='bSave_Click_CheLiangKuCun_Insert')
begin
insert into CarInventoryList(CarID, PutHouseDay, InventoryReasonID,InInventoryDate)
values (@CarID, 1, @InventoryReasonID,@InInventoryDate)
end
--新增车辆表
if(@Type='CheLiang_Insert')
begin
begin tran
insert into CarList(FreightInvoicesDetailID, CarTypeID, CarFrameNumber, CarEngineNumber, CarKindID, CarMondelID, CarBodyColorID, CarUnderOrnamentsColorID, CarTransmissionID, CarKeyNumber,
CarStockPrice, ProductionManufacturersID, CarPDIWhetherDetection, CarStatusID, OldCarID, OutSurveyCommodityCarID, WhetherSchedule, ThoughtCarPDIWhetherDetection)
Values(@FreightInvoicesDetailID, @CarTypeID, @CarFrameNumber, @CarEngineNumber, @CarKindID, @CarMondelID, @CarBodyColorID, @CarUnderOrnamentsColorID, @CarTransmissionID, @CarKeyNumber,
@CarStockPrice, @ProductionManufacturersID, @CarPDIWhetherDetection, 36, 0, @OutSurveyCommodityCarID, 0, 0)
select @@IDENTITY
commit tran
End
--修改车辆表(插入外调商品车ID)
if(@Type='CheLiangBiao(ChaRuWaiShangPinCheID)_Update')
begin
UPDATE CarList
set CarList.OutSurveyCommodityCarID =@OutSurveyCommodityCarID
where CarList.CarID=@CarID
end
--新增接车记录表
if(@Type='bSave_Click_JieCheJianChaXiangMuJiLu_Insert')
begin
insert into ConnectCarCheckProjctRecordList(CarID, CheckProjectID, CheckResult, DiposeMethod, Valuation, CheckerID, SignDate)
values (@CarID, @CheckProjectID, @CheckResult, @DiposeMethod, @Valuation, @CheckerID, @SignDate)
end
--修改接车记录表
if(@Type='bSave_Click_JieCheJianChaXiangMuJiLu_Update')
begin
update ConnectCarCheckProjctRecordList
set CarID=@CarID, CheckProjectID=@CheckProjectID, CheckResult=@CheckResult, DiposeMethod=@DiposeMethod,
Valuation=@Valuation, CheckerID=@CheckerID, SignDate=@SignDate
where ConnectCarCheckProjctRecordList.ConnectCarCheckProjctRecordID=@ConnectCarCheckProjctRecordID
End
第二步:写逻辑层
#region 查询检查项目信息
[OperationContract]
public DataSet Select_JianChaXiangMuXinXi(int CarMondelID, int ProductionManufacturersID, int CarID)
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@CarMondelID",SqlDbType.Int),
new SqlParameter("@ProductionManufacturersID",SqlDbType.Int),
new SqlParameter("@CarID",SqlDbType.Int)
};
mySqlParameters[0].Value = "Select_JianChaXiangMuXinXi";
mySqlParameters[1].Value = CarMondelID;
mySqlParameters[2].Value = ProductionManufacturersID;
mySqlParameters[3].Value =CarID;
DataTable dt = myDALMethod.QueryDataTable("接车管理_frm_JieCheGuanLi", mySqlParameters);
DataSet ds = new DataSet();
ds.Tables.Add(dt);
return ds;
}
#endregion
#region 新增车辆表
[OperationContract]
public DataSet CheLiang_Insert(int FreightInvoicesDetailID, string CarFrameNumber, string CarEngineNumber, int CarKindID, int CarMondelID
, int CarBodyColorID, int CarTransmissionID, decimal CarStockPrice, int ProductionManufacturersID, string CarKeyNumber, int CarUnderOrnamentsColorID, int CarTypeID, int OutSurveyCommodityCarID)
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@FreightInvoicesDetailID",SqlDbType.Int),
new SqlParameter("@CarFrameNumber",SqlDbType.Char),
new SqlParameter("@CarEngineNumber",SqlDbType.Char),
new SqlParameter("@CarKindID",SqlDbType.Int),
new SqlParameter("@CarMondelID",SqlDbType.Int),
new SqlParameter("@CarBodyColorID",SqlDbType.Int),
new SqlParameter("@CarTransmissionID",SqlDbType.Int),
new SqlParameter("@CarStockPrice",SqlDbType.Decimal),
new SqlParameter("@ProductionManufacturersID",SqlDbType.Int),
new SqlParameter("@CarKeyNumber",SqlDbType.Char),
new SqlParameter("@CarUnderOrnamentsColorID",SqlDbType.Int),
new SqlParameter("@CarTypeID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarID",SqlDbType.Int)
};
mySqlParameters[0].Value = "CheLiang_Insert";
mySqlParameters[1].Value = FreightInvoicesDetailID;
mySqlParameters[2].Value = CarFrameNumber;
mySqlParameters[3].Value = CarEngineNumber;
mySqlParameters[4].Value = CarKindID;
mySqlParameters[5].Value = CarMondelID;
mySqlParameters[6].Value = CarBodyColorID;
mySqlParameters[7].Value = CarTransmissionID;
mySqlParameters[8].Value = CarStockPrice;
mySqlParameters[9].Value = ProductionManufacturersID;
mySqlParameters[10].Value = CarKeyNumber;
mySqlParameters[11].Value = CarUnderOrnamentsColorID;
mySqlParameters[12].Value = CarTypeID;
mySqlParameters[13].Value = OutSurveyCommodityCarID;
DataTable dt = myDALMethod.QueryDataTable("接车管理_frm_JieCheGuanLi", mySqlParameters);
DataSet ds = new DataSet();
ds.Tables.Add(dt);
return ds;
}
#endregion
#region 新增库存表
[OperationContract]
public int bSave_Click_CheLiangKuCun_Insert(int CarID, int InventoryReasonID, DateTime InInventoryDate)
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@CarID",SqlDbType.Int),
new SqlParameter("@InventoryReasonID",SqlDbType.Int),
new SqlParameter("@InInventoryDate",SqlDbType.Date)
};
mySqlParameters[0].Value = "bSave_Click_CheLiangKuCun_Insert";
mySqlParameters[1].Value = CarID;
mySqlParameters[2].Value = InventoryReasonID;
mySqlParameters[3].Value = InInventoryDate;
int dt = myDALMethod.UpdateData("接车管理_frm_JieCheGuanLi", mySqlParameters);
return dt;
}
#endregion
#region 修改车辆表(插入外调车辆表)
[OperationContract]
public int CheLiangBiaoChaRuWaiShangPinCheID_Update(int CarID, int OutSurveyCommodityCarID)
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@CarID",SqlDbType.Int),
new SqlParameter("@OutSurveyCommodityCarID",SqlDbType.Int)
};
mySqlParameters[0].Value = "CheLiangBiao(ChaRuWaiShangPinCheID)_Update";
mySqlParameters[1].Value = CarID;
mySqlParameters[2].Value = OutSurveyCommodityCarID;
int dt = myDALMethod.UpdateData("接车管理_frm_JieCheGuanLi", mySqlParameters);
return dt;
}
#endregion
#region 新增接车检查项目表
[OperationContract]
public int bSave_Click_JieCheJianChaXiangMuJiLu_Insert(int CarID, int CheckProjectID, string CheckResult, string DiposeMethod, decimal Valuation, int CheckerID, DateTime SignDate)
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@CarID",SqlDbType.Int),
new SqlParameter("@CheckProjectID",SqlDbType.Int),
new SqlParameter("@CheckResult",SqlDbType.Char),
new SqlParameter("@DiposeMethod",SqlDbType.Char),
new SqlParameter("@Valuation",SqlDbType.Decimal),
new SqlParameter("@CheckerID",SqlDbType.Int),
new SqlParameter("@SignDate",SqlDbType.DateTime)
};
mySqlParameters[0].Value = "bSave_Click_JieCheJianChaXiangMuJiLu_Insert";
mySqlParameters[1].Value = CarID;
mySqlParameters[2].Value = CheckProjectID;
mySqlParameters[3].Value = CheckResult;
mySqlParameters[4].Value = DiposeMethod;
mySqlParameters[5].Value = Valuation;
mySqlParameters[6].Value = CheckerID;
mySqlParameters[7].Value = SignDate;
int dt = myDALMethod.UpdateData("接车管理_frm_JieCheGuanLi", mySqlParameters);
return dt;
}
#endregion
#region 修改接车检查项目表
[OperationContract]
public int bSave_Click_JieCheJianChaXiangMuJiLu_Update(int CarID, int CheckProjectID, string CheckResult, string DiposeMethod, decimal Valuation, int CheckerID, DateTime SignDate, int ConnectCarCheckProjctRecordID)
{
SqlParameter[] mySqlParameters = {
new SqlParameter("@Type",SqlDbType.Char),
new SqlParameter("@CarID",SqlDbType.Int),
new SqlParameter("@CheckProjectID",SqlDbType.Int),
new SqlParameter("@CheckResult",SqlDbType.Char),
new SqlParameter("@DiposeMethod",SqlDbType.Char),
new SqlParameter("@Valuation",SqlDbType.Decimal),
new SqlParameter("@CheckerID",SqlDbType.Int),
new SqlParameter("@SignDate",SqlDbType.DateTime),
new SqlParameter("@ConnectCarCheckProjctRecordID",SqlDbType.Int)
};
mySqlParameters[0].Value = "bSave_Click_JieCheJianChaXiangMuJiLu_Update";
mySqlParameters[1].Value = CarID;
mySqlParameters[2].Value = CheckProjectID;
mySqlParameters[3].Value = CheckResult;
mySqlParameters[4].Value = DiposeMethod;
mySqlParameters[5].Value = Valuation;
mySqlParameters[6].Value = CheckerID;
mySqlParameters[7].Value = SignDate;
mySqlParameters[8].Value = ConnectCarCheckProjctRecordID;
int dt = myDALMethod.UpdateData("接车管理_frm_JieCheGuanLi", mySqlParameters);
return dt;
}
#endregion
<pre name="code" class="csharp">第三步:写界面层
A、接车确认按钮代码:
/// <summary>
/// 接车确认按钮事件
/// </summary>
/// <param name="sender">触发者</param>
/// <param name="e">触发环境</param>
private void btnQueRen_Click(object sender, EventArgs e)
{
int intCheXingID = Convert.ToInt32(dgvCar_Wai.CurrentRow.Cells["外调_车型ID"].Value.ToString().Trim());//获取车型ID
int intShengChanChangJiaID = Convert.ToInt32(dgvCar_Wai.CurrentRow.Cells["外调_生产厂家ID"].Value.ToString().Trim());//获取车身颜色ID
frm_JieCheGuanLi_WaiDiaoShangPinCheQueRen myWaiDiaoShangPinCheQueRen = new frm_JieCheGuanLi_WaiDiaoShangPinCheQueRen(intCheXingID, intShengChanChangJiaID, intWaiDianShngPingCheID, strFaDongJiHao, strCheJiaHao, intCheLiangID_Xiu, strXiuGaiJieChe);
myWaiDiaoShangPinCheQueRen.ShowDialog();
WaiDiaoShangPinChe();//刷新
}
B、界面与界面有关数据的传值
#region 声明字段
int intCheXinID_Xiu = 0;
int intShengChanChangJiaID = 0;
int intWaiDiaoShangPinCheID = 0;
int intCheLiangID_Xiu = 0;
int intXiuGaiChengGongTiaoShu = 0;
string strFaDongJiHao = "";
string strCheJiaHao = "";
string strXiuGaiJieChe;
#endregion
public frm_JieCheGuanLi_WaiDiaoShangPinCheQueRen(int CheXinID,int ShengChangChanJiaID,int WaiDiaoShangPinCheID,string FaDongJiHao,string CheJiaHao,int intCarID,string strXiuGai)
{
#region 界面之间的传值
intCheXinID_Xiu = CheXinID;
intCheLiangID_Xiu = intCarID;
strFaDongJiHao=FaDongJiHao;
strCheJiaHao = CheJiaHao;
strXiuGaiJieChe = strXiuGai;
intShengChanChangJiaID = ShengChangChanJiaID;
intWaiDiaoShangPinCheID = WaiDiaoShangPinCheID;
#endregion
InitializeComponent();
}
C、接车界面的Load事件
/// <summary>
/// 接车界面Load事件
/// </summary>
/// <param name="sender">触发者</param>
/// <param name="e">触发环境</param>
private void frm_JieCheGuanLi_WaiDiaoShangPinCheQueRen_Load(object sender, EventArgs e)
{
dgvJianChaXiangMu.AutoGenerateColumns = false;
dtpChengYunFangQianZiRiQI.Enabled = false;//禁用乘运方签字日期控件
System.Data.DataTable dtJianChaZhe = my公共方法_Combox绑定Client.Select_CboJingBanRen().Tables[0]; //获取数据
cboJianChaZhe.DataSource = dtJianChaZhe;
cboJianChaZhe.DisplayMember = "StaffName";
cboJianChaZhe.ValueMember = "StaffID";
System.Data.DataTable dtWaiDiaoShangPinCheJianChaXiangMuXinXi = myfrm_JieCheGuanLi_JieCheClient.Select_JianChaXiangMuXinXi(intCheXinID_Xiu, intShengChanChangJiaID, intCheLiangID_Xiu).Tables[0];
dgvJianChaXiangMu.DataSource = dtWaiDiaoShangPinCheJianChaXiangMuXinXi;
if (dtWaiDiaoShangPinCheJianChaXiangMuXinXi.Rows.Count > 0)//判断dtWaiDiaoShangPinCheJianChaXiangMuXinXi的行数
{
if (strXiuGaiJieChe == "修改接车")
{
dtpQianZiRiQi.Enabled = true;
cboJianChaZhe.SelectedValue=Convert.ToInt32(dtWaiDiaoShangPinCheJianChaXiangMuXinXi.Rows[0]["CheckerID"]);//绑定检查人
dtpQianZiRiQi.Value = Convert.ToDateTime(dtWaiDiaoShangPinCheJianChaXiangMuXinXi.Rows[0]["SignDate"]);//绑定签字日期
}
}
}
D、dgvJianChaXiangMu开始编辑事件(目的是当你在dgvJianChaXiangMu.CurrentRow.Cells["处理方法"].Value输入时则dgvJianChaXiangMu.CurrentRow.Cells["检查结果"].Value赋值为“OK”)
/// <summary>
/// dgvJianChaXiangMu开始编辑事件
/// </summary>
/// <param name="sender">触发者</param>
/// <param name="e">触发环境</param>
private void dgvJianChaXiangMu_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
if (dgvJianChaXiangMu.CurrentRow.Cells["处理方法"].Value == null)
{
dgvJianChaXiangMu.CurrentRow.Cells["检查结果"].Value = "Ok";
}
}
E、以上面对的事件效果相反
/// <summary>
/// dgvJianChaXiangMu停止编辑事件
/// </summary>
/// <param name="sender">触发者</param>
/// <param name="e">触发环境</param>
private void dgvJianChaXiangMu_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
{
dgvJianChaXiangMu.CurrentRow.Cells["检查结果"].Value = "No";
}
F、保存按钮代码(接车保存代码和修改接车保存代码)
/// <summary>
/// btnBaoCun按钮单击事件
/// </summary>
/// <param name="sender">触发者</param>
/// <param name="e">触发环境</param>
private void btnBaoCun_Click(object sender, EventArgs e)
{
//判断是否选择车辆
if (intWaiDiaoShangPinCheID == 0)
{
MessageBox.Show("你还没有选择车辆,请选择后再继续。。。。。");
return;
}
#region 字段的声明与赋值
System.Data.DataTable dtCheLiangShuJu = myfrm_JieCheGuanLi_JieCheClient.frm_JieCheGuanLi_WaiDiaoShangPingChe_Updatecs_Load_Select_WaiDiaoShangPingCheLiang(intWaiDiaoShangPinCheID).Tables[0];
int intCheZhongID = Convert.ToInt32(dtCheLiangShuJu.Rows[0]["OutSurveyCommodityCarKindID"]);
int intCheXingID = Convert.ToInt32(dtCheLiangShuJu.Rows[0]["OutSurveyCommodityCarMondelID"]);
int intCheShengYanSheID = Convert.ToInt32(dtCheLiangShuJu.Rows[0]["OutSurveyCommodityCarBodyColorID"]);
int intNeiShiYanSheID = Convert.ToInt32(dtCheLiangShuJu.Rows[0]["OutSurveyCommodityCarUnderOrnamentsColorID"]);
int intBianShuXiangID = Convert.ToInt32(dtCheLiangShuJu.Rows[0]["OutSurveyCommodityCarTransmissionID"]);
decimal decJingHuoDanJian = Convert.ToDecimal(dtCheLiangShuJu.Rows[0]["OutSurveyCommodityCarPrice"]);
int intShengChanChangJiaID = Convert.ToInt32(dtCheLiangShuJu.Rows[0]["OutSurveyCommodityCarProductionManufacturersID"]);
string strYanShiHao = dtCheLiangShuJu.Rows[0]["OutSurveyCommodityCarKeyNumber"].ToString();
string strWaiDiaoShangPinCheCheJiaHao = dtCheLiangShuJu.Rows[0]["OutSurveyCommodityCarFrameNumber"].ToString();
string strWaiDiaoShangPinFaDongJiHao = dtCheLiangShuJu.Rows[0]["OutSurveyCommodityCarEngineNumber"].ToString();
#endregion
if (strXiuGaiJieChe == "修改接车")
{
for (int x = 0; x < dgvJianChaXiangMu.Rows.Count; x++)
{
int intJianChaXiangMuID = Convert.ToInt32(dgvJianChaXiangMu.Rows[x].Cells["检查项目ID"].Value.ToString().Trim());
string strJianChaJieGuo = dgvJianChaXiangMu.Rows[x].Cells["检查结果"].Value.ToString().Trim();
string strChuLiFangFa = dgvJianChaXiangMu.Rows[x].Cells["处理方法"].Value.ToString().Trim();
decimal decGuJia = Convert.ToDecimal(dgvJianChaXiangMu.Rows[x].Cells["估价"].Value.ToString().Trim());
int intJianChaRenID = Convert.ToInt32(cboJianChaZhe.SelectedValue);
int intJieCheJianChaXianMuID = Convert.ToInt32(dgvJianChaXiangMu.Rows[x].Cells["接车检项目ID"].Value);
DateTime dtQianZiRiQi = dtpQianZiRiQi.Value;
//新增接车检查记录表
int intJianChaJiLuBiao = myfrm_JieCheGuanLi_JieCheClient.bSave_Click_JieCheJianChaXiangMuJiLu_Update(intCheLiangID_Xiu, intJianChaXiangMuID, strJianChaJieGuo, strChuLiFangFa, decGuJia, intJianChaRenID, dtQianZiRiQi, intJieCheJianChaXianMuID);
if (intJianChaJiLuBiao > 0)
{
intXiuGaiChengGongTiaoShu++;
}
}
if (intXiuGaiChengGongTiaoShu == dgvJianChaXiangMu.Rows.Count)
{
MessageBox.Show("修改成功!!!");
this.Close();
return;
}
else
{
MessageBox.Show("修改失败!!!");
this.Close();
return;
}
}
#region 车辆表的新增、车辆库存表的新增、接车检查项目记录表的新增
//新增车辆表
int intCheLiangID = Convert.ToInt32(myfrm_JieCheGuanLi_JieCheClient.CheLiang_Insert(0, strWaiDiaoShangPinCheCheJiaHao, strWaiDiaoShangPinFaDongJiHao, intCheZhongID, intCheXingID, intCheShengYanSheID,
intBianShuXiangID, decJingHuoDanJian, intShengChanChangJiaID, strYanShiHao, intNeiShiYanSheID, 35, intWaiDiaoShangPinCheID).Tables[0].Rows[0][0]);
if (intCheLiangID > 0)//判断新增车辆是否成功
{
int intKuCunBiao = myfrm_JieCheGuanLi_JieCheClient.bSave_Click_CheLiangKuCun_Insert(intCheLiangID, 33, DateTime.Now);//新增库存
if (intKuCunBiao > 0)
{
int n = myfrm_JieCheGuanLi_JieCheClient.CheLiangBiaoChaRuWaiShangPinCheID_Update(intCheLiangID, intWaiDiaoShangPinCheID);
if (n > 0)
{
for (int x = 0; x < dgvJianChaXiangMu.Rows.Count; x++)
{
int intJianChaXiangMuID = Convert.ToInt32(dgvJianChaXiangMu.Rows[x].Cells["检查项目ID"].Value.ToString().Trim());
if (dgvJianChaXiangMu.Rows[x].Cells["检查结果"].Value == null)
{
dgvJianChaXiangMu.Rows[x].Cells["检查结果"].Value = "OK";
}
string strJianChaJieGuo = dgvJianChaXiangMu.Rows[x].Cells["检查结果"].Value.ToString().Trim();
if (dgvJianChaXiangMu.Rows[x].Cells["处理方法"].Value == null)
{
dgvJianChaXiangMu.Rows[x].Cells["处理方法"].Value = "无需处理";
}
string strChuLiFangFa = dgvJianChaXiangMu.Rows[x].Cells["处理方法"].Value.ToString().Trim();
if (dgvJianChaXiangMu.Rows[x].Cells["估价"].Value == null)
{
dgvJianChaXiangMu.Rows[x].Cells["估价"].Value = "0.00";
}
decimal decGuJia = Convert.ToDecimal(dgvJianChaXiangMu.Rows[x].Cells["估价"].Value.ToString().Trim());
int intJianChaRenID = Convert.ToInt32(cboJianChaZhe.SelectedValue);
DateTime dtQianZiRiQi = dtpQianZiRiQi.Value;
//新增接车检查记录表
int intJianChaJiLuBiao = myfrm_JieCheGuanLi_JieCheClient.bSave_Click_JieCheJianChaXiangMuJiLu_Insert(intCheLiangID, intJianChaXiangMuID, strJianChaJieGuo, strChuLiFangFa, decGuJia, intJianChaRenID, dtQianZiRiQi);
if (intJianChaJiLuBiao > 0)
{
//修改外调商品车接车否状态
intXiuGaiWaiDiaoShangPingChe = myfrm_JieCheGuanLi_JieCheClient.btnBaoCun_Click_WaiDiaoShangPinCheBiao_Update(intWaiDiaoShangPinCheID);
}
}
}
}
}
if (intXiuGaiWaiDiaoShangPingChe > 0)
{
MessageBox.Show("接车成功!!!");
this.Close();
}
else
{
MessageBox.Show("接车失败!!!");
}
#endregion
}
注:仅提供于学习用途,禁止用于商业用途!