C# 样品管理模块和订单模块设计

1.1样品管理模块

1.1.1概述

样品管理模块主要处理样品信息的登记和维护。用户可以通过样品登记模块进行样品基本信息、样机状态信息、主关件信息和技术参数信息录入。登记录入的样品信息可以在临时台帐里进行查看和修改。在接收样机之前,用户可以随时修改样品信息,一旦接收样机,样机信息就不能再修改了。已接收的样机信息可以在已收台帐里查看,拒绝接收的样机信息可以在拒收台帐里查看,退回样机信息可以到已退台帐里查看,已退台帐里的退回样机信息比前面三个台帐里的样机信息多了退回后样机状态信息。

1.1.2模块架构

1.样品登记架构图:如下图所示:

图1-1  样品登记架构图

样品登记包括样品主要信息、样机状态信息、主关件信息和技术参数信息。填写完样品主要信息,保存样品主要信息后,再依次填写样机状态信息、主关件信息和技术参数信息。

2.临时台帐-修改样品信息架构图:如下图所示:

图1-2  临时台帐-修改样品信息架构图

临时台帐-修改样品信息部分可以对已经登记好的样品信息进行修改。

3.已收台帐、拒收台帐和已退台帐-查看样品信息架构图:如下图所示:

图1-3  已收台帐、拒收台帐和已退台帐-查看样品信息架构图

已收台帐、拒收台帐和已退台帐可以查看相应的样品信息。在已退台帐处可以查看退回后的样机状态信息。

1.1.3运行流程

样品管理运行流程:如下图所示:

图1-4 样品管理运行流程

在【样品登记】中录入新的样品信息,录入样机状态的同时需要将样机序列写入样品信息中,同样录入技术参数和主关件时也需把技术参数ID序列,主关件ID序列写入样品信息中。新录入的样品可以在【临时台帐】里修改,修改样品信息后,需同步更新订单样品信息和样机ID序列。已接收的样品在【已收台帐】里查看。“直接接收”动作将样品状态改为’2’;“拒绝接收”动作将样品状态改为’3’; 先点击“修改样机状态”,再执行“修改接收”动作。三种接收动作都将“收样人”和“收样日期”入库。拒绝接收的样品存在【拒收台帐】,【已退台帐】里存着已退样品信息。

1.1.4界面设计

1.样机登记

1) 样品主要信息:如下图所示:

图1-5  样机登记-样品主要信息

样品主要信息包括样品编号、样品名称、产品类别、样品数量、要求试验单位、产品经理、样品等级、样机位置、商标、生产单位、送样人、送样日期、收样单位和型号名称。【样品编号】由系统自动生成,生成方式为登记当天时间加样品序号(例:S20150625002)。【样机位置】默认为“待测样机”,【要求试验单位】默认为登录用户所属部门,【产品经理】默认为登录用户,用户不能修改,【送样人】默认为登录用户,【送样日期】默认为当天,用户可以选择也可以手工输入。后面带有Button按钮的项,可以点击进行选择。每项均为必填项。单击保存按钮,保存已填写的样品主要信息;单击清空按钮,清空已填写的样品主要信息。

2) 技术参数信息:如下图所示:

图1-6  样机登记-技术参数信息

技术参数可以手动添加,也可以点击“初始化参数”按钮初始化一部分,初始化的参数不能删除,手动添加的可以删除。【样机编号】和【产品类别】项继承自样品主要信息,不能修改。系统默认生成的最后一行(“添加”按钮所在的行)不写入!单击保存按钮保存填写的技术参数信息。

3) 主关件信息:如下图所示:

图1-7  样机登记-主关件信息

主关件可以手动添加,也可以点击“初始化参数”按钮初始化一部分,初始化的参数不能删除,手动添加的可以删除。【样机编号】和【产品类别】项继承自样品主要信息,不能修改。系统默认生成的最后一行(“添加”按钮所在的行)不写入!单击保存按钮保存填写的主关件信息。

4) 样机状态信息:如下图所示:

图1-8  样机登记-样机状态信息

【样机编号】和【产品类别】项继承自样品主要信息,不能修改。样机登记状态中每个样机都包括样机序号、整机编码、包装完整、样机状况、附件齐全、包装标识与样机、说明书齐全、包装方式、铭牌齐全和附加说明等10项。单击保存按钮保存填写的样机登记状态信息。

2.修改样品信息

1)修改样品主要信息和登记样机状态信息:如下图所示:

图1-9  修改样品主要信息和登记样机状态信息

本界面可以修改样品主要信息和登记样机状态信息。初始时【样机状态信息】链接为不可用状态,修改样机数量后,该链接变为可用状态。点击删除按钮可以删除该条样品信息,包括关联的技术参数,主关件和样机状态信息。

2) 修改技术参数信息:如下图所示:

图1-10  修改技术参数信息

3) 修改主关件信息:如下图所示:

图1-11  修改主关件信息

3.查看样品信息:

1) 查看样品信息,接收样机如下图所示:

图1-12  查看样品信息,接收样机

收样人核对样品主要信息、样机状态信息、技术参数信息和主关件信息,确认无误后可以“直接接收”;基本符合,需要修改,可以先“修改样机状态”,然后点击“修改接收”按钮修改接收;样品信息存在问题,拒绝接收该样机。

2) 查看样品信息,退回样机如下图所示:

图1-13  查看样品信息,退回样机

退样人核对样品主要信息、样机状态信息、技术参数信息和主关件信息,填写退回样机状态信息,退回样机。退回样机状态包括样机序号、整机编码、包装完整、样机状态、附件齐全、测试外损伤、说明书齐全、铭牌齐全和附加说明等9项。

1.1.5数据结构

1. 样品登记

1) SampleRegister类的方法:如下表:

表1-1  SampleRegister类的方法

序号

方法

1

Public Sub InitSamRegister(ByVal testUnit1 As String, ByVal managerId As String, ByVal sendManId As String, ByVal IsReadOnly As Boolean)

功能

初始化样机登记,设置送样人等默认信息。

参数

testUnit1:要求试验单位;managerId:产品经理ID;sendManId:送样人ID;IsReadOnly:设置控件只读模式,true为只读,false为非只读。

返回值

2

Private Sub dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv.CellClick

功能

处理DataGridView单元格单击事件,用于选择相应的信息。

参数

e: System.Windows.Forms.DataGridViewCellEventArgs

返回值

3

Private Function GetMaxSampleNo(ByVal sampleNo As String) As String

功能

根据查询获得的样品编号生成新的样品编号

参数

sampleNo:样品编号

返回值

新的样品编号

4

Private Sub BtnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnExit.Click

功能

清除样品信息

参数

系统默认生成

返回值

5

Private Sub showFormClosed(ByVal staBo1 As Boolean)

功能

处理样机信息填写窗体关闭事件

参数

系统默认生成

返回值

6

Private Sub BtnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSave.Click

功能

保存样品信息

参数

系统默认生成

返回值

7

Private Sub BtnProCat_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnProCat.Click

功能

选择产品类别

参数

系统默认生成

返回值

8

Private Sub TBSamNum_KeyUp(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles TBSamNum.KeyUp

Private Sub TBSamNum_KeyPress(sender As System.Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TBSamNum.KeyPress

功能

判断样品数量输入是否合法

参数

系统默认生成

返回值

2) 填写样机信息类SamInfoControl方法:如下表:

表1-2  填写样机信息类SamInfoControl方法

序号

方法

1

Public Sub InitSamInfoControl(ByVal sampleno1 As String, ByVal type1 As String, ByVal amount1 As Integer, ByVal id1 As Integer)

功能

初始化样机信息。

参数

sampleno1:样品编号;type1:样品类别;amount1:样品数量;id1:样品ID。

返回值

2

Private Sub DGVTecPars_CellPainting(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) Handles DGVTecPars.CellPainting

功能

禁用DGVTecPars中某个Button按钮,重绘按钮为Disable状态。

参数

e:System.Windows.Forms.DataGridViewCellPaintingEventArgs

返回值

3

Private Sub TCSampleInfo_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TCSampleInfo.SelectedIndexChanged

功能

TCSampleInfo页面选择切换

参数

系统默认生成

返回值

4

Private Sub BtnSavePars_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSavePars.Click

Private Sub BtnMPSave_Click(sender As System.Object, e As System.EventArgs) Handles BtnMPSave.Click

Private Sub BtnStateSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnStateSave.Click

功能

BtnSavePars_Click保存技术参数信息

BtnMPSave_Click保存主关件信息

BtnStateSave_Click保存样机登记状态信息

参数

系统默认生成

返回值

5

Private Sub SampleInfo_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

功能

类加载初始化

参数

系统默认生成

返回值

6

Private Sub BtnInitTecPars_Click(sender As System.Object, e As System.EventArgs) Handles BtnInitTecPars.Click

Private Sub BtnInitMaPa_Click(sender As System.Object, e As System.EventArgs) Handles BtnInitMaPa.Click

功能

BtnInitTecPars_Click初始化技术参数

BtnInitMaPa_Click初始化主关件信息

参数

系统默认生成

返回值

7

Private Sub DGVTecPars_CellClick(sender As System.Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGVTecPars.CellClick

Private Sub DGVKey_CellClick(sender As System.Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGVKey.CellClick

功能

DGVTecPars_CellClick处理技术参数行添加,删除

DGVKey_CellClick处理主关件行添加,删除

参数

系统默认生成

返回值

3) 样品登记类关系图:如下图所示:

图1-14  样品登记类关系图

SampleRegister类填写样品信息时调用窗体类ShowInfo选择各种样品项信息,样品项信息包括型号名称ModelName、产品经理ManagerInfo、事业部BusiSecInfo、生产单位ProductUnit、产品类别ProductCategory、样品名称SampleName、送样人SendManInfo和收样单位UpLabCompany。各类通过WebService调用各自需使用的信息类,得到相应的数据。ModelName调用ItemType,ManagerInfo和SendManInfo调用StaffInfo,BusiSecInfo和ProductUnit调用BusiSection,ProductCategory调用ProductSort,SampleName调用Sample,UpLabCompany调用UpLabUnit。样品信息类SamInfoControl调用OrderInfo、SendInfo、SampleInfo 、KeyInfo、KeyTemplate、TechInfo和TechStencil类。SampleRegister类调用SampleInfo 、ItemsName和Log类。样机状态ProtoControl类调用Proto类。

2.样品信息修改:

1)临时样品信息类TempSamInfo:如下表:

表1-3  临时样品信息类TempSamInfo

序号

方法

1

Private Function BinSearch(ByVal staffList As List(Of StaffInfo), ByVal key As Integer) As String

功能

职工信息二分查找

参数

staffList:职工信息列表;key:职工ID

返回值

职工名称

2

Public Sub InitTempSamInfo(ByVal samInfoNo1 As String, ByVal ReadOnly1 As Boolean)

功能

初始化临时样品信息。

参数

samInfoNo1:样品编号;ReadOnly1:设置控件只读模式,true为只读,false为非只读。

返回值

3

Private Sub dgvTemp_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvTemp.CellClick

功能

处理DataGridView单元格单击事件,用于选择相应的信息。

参数

e:System.Windows.Forms.DataGridViewCellEventArgs

返回值

4

Private Sub LoadSamStateInfo(ByVal IsReadOnly1 As Boolean

功能

加载样品状态信息

参数

IsReadOnly1:设置控件只读模式,true为只读,false为非只读。

返回值

布尔变量,加载成功:true,加载失败:false

5

Private Sub BtnDelete_Click(sender As System.Object, e As System.EventArgs) Handles BtnDelete.Click

功能

删除样机信息

参数

系统默认生成

返回值

6

Private Sub BtnSave_Click(sender As System.Object, e As System.EventArgs) Handles BtnSave.Click

功能

保存样品和样机状态信息

参数

系统默认生成

返回值

2)临时主关件类TempKeyInfo:如下表:

表1-4  临时主关件类TempKeyInfo

序号

方法

1

Public Sub InitTempKeyInfo(ByVal samInId As Integer, ByVal samInNo As String, ByVal samTy As String, ByVal readOnly2 As Boolean)

功能

初始化临时主关件信息。

参数

samInId: 样品ID;samInNo:样品编号;samTy :样品类别;readOnly2:设置控件只读模式,true为只读,false为非只读。

返回值

3

Private Sub DGVMaPart_CellPainting(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) Handles DGVMaPart.CellPainting

功能

禁用DGVMaPart中某个Button按钮,重绘按钮为Disable状态。

参数

e:System.Windows.Forms.DataGridViewCellPaintingEventArgs

返回值

3)临时技术参数类TempTecPars:如下表:

表1-5  临时技术参数类TempTecPars

序号

方法

1

Public Sub InitTempTecPars(ByVal samInId As Integer, ByVal samInNo As String, ByVal samTy As String, ByVal readOnly3 As Boolean)

功能

初始化临时技术参数信息。

参数

samInId: 样品ID;samInNo:样品编号;samTy :样品类别;readOnly3:设置控件只读模式,true为只读,false为非只读。

返回值

3

Private Sub DGVTecPar_CellPainting(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) Handles DGVTecPar.CellPainting

功能

禁用DGVTecPar中某个Button按钮,重绘按钮为Disable状态。

参数

e:System.Windows.Forms.DataGridViewCellPaintingEventArgs

返回值

4)     样品信息修改类关系图:

图1-15  样品信息修改类关系图

样品信息修改类的类结构与样品登记类的类结构基本相同。修改样品信息时调用窗体类ShowInfo选择各种样品项信息,样品项信息包括收样人RevManInfo、型号名称ModelName、产品经理ManagerInfo、事业部BusiSecInfo、生产单位ProductUnit、产品类别ProductCategory、样品名称SampleName、送样人SendManInfo和收样单位UpLabCompany。各类通过WebService调用各自需使用的信息类,得到相应的数据。ModelName调用ItemType,RevManInfo、ManagerInfo和SendManInfo调用StaffInfo,BusiSecInfo和ProductUnit调用BusiSection,ProductCategory调用ProductSort,SampleName调用Sample,UpLabCompany调用UpLabUnit。临时样品信息类TempSamInfo调用OrderInfo、ItemsName、SendInfo和SampleInfo。临时主关件类TempKeyInfo调用KeyInfo和KeyTemplate。临时技术参数类TempTecPars调用TechInfo和TechStencil类。样机状态ProtoControl类调用Proto类。

1.2 已分配

1.2.1模块架构

已分配订单架构图:如下图所示:

图1-16  已分配订单架构图

已分配订单主界面包括筛选信息栏,“查看订单”按钮,“订单跟踪”按钮和“接收”按钮。可以根据试品名称、试品型号、试验编号、试验目的和委托人进行模糊查询。点击“接收”按钮进入接收订单界面,用户确认订单信息后,填写“接收意见”,接收订单。如若发现订单问题,可以选择修改理由,要求修改订单。

1.2.2运行流程

已分配-订单接收流程:如下图所示:

图1-17  已分配-订单接收流程

接收订单(报告)动作要更新订单状态为“7”,更新样机位置为“在测样机”,同时将试验经理,接收意见和接收时间入库,记录动作“接收订单”。要求修改订单(报告)动作与接收订单(报告)动作类似,需更新订单状态为“4”,将要求修改理由,要求修改人和附加说明入库,记录动作“要求修改订单”。

1.2.3界面设计

接收订单界面:如下图所示:

图1-18  接收订单界面

接收订单界面最上部分为订单信息条目,包括【试验编号】、【要求试验单位】、【委托人(签字)】、【订单委托日期】、【要求完成日期】、【送样人】、【联系方式】、【预算费用合计】、【委托领导签名】和【要求实验依据】11项。中间部分为接收订单条目,包括【接收人(试验经理)】和【意见】2项。最下部分为要求修改条目,包括【接收人(试验经理)】、【要求修改理由】和【附加说明】3项,【要求修改理由】有“测试性质不符“、“测试目的不符”、“测试要求不符”、“测试样机不符”、“测试标准不符”、“测试周期不符”、“能力不具备”和“其他”8个选择框。

1.2.4数据结构

1.已分配界面类Distributed的方法:如下表:

表1-6  已分配界面类Distributed的方法

序号

方法

1

Public Sub InitDistributed(ByVal readOnlyD As Boolean, ByVal loginUserId1 As String)

功能

初始化已分配界面类信息。

参数

loginUserId1: 登录用户ID;readOnlyD:设置控件只读模式,true为只读,false为非只读。

返回值

2

Private Function BinSearch(ByVal staffList As List(Of StaffInfo), ByVal key As Integer) As String

功能

职工信息二分查找

参数

staffList:职工信息列表;key:职工ID

返回值

职工名称

3

Private Sub dgvD_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvD.CellClick

功能

处理DataGridView单元格单击事件,用于选择相应的信息。

参数

e:System.Windows.Forms.DataGridViewCellEventArgs

返回值

4

Public Sub AssignDate(ByVal orderInfo As List(Of OrderInfo))

功能

向DataGridView绑定订单数据

参数

orderInfo:订单列表信息

返回值

5

Private Sub cbxPage_SelectionChangeCommitted(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbxPage.SelectionChangeCommitted

功能

DataGridView分页处理

参数

系统默认生成

返回值

6

Private Sub BtnSelect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSelect.Click

功能

实现筛选订单信息

参数

系统默认生成

返回值

2.接收订单界面类OrderReceived的方法:如下表:

表1-7  接收订单界面类OrderReceived的方法

序号

方法

1

Public Sub InitOrderReceived(ByVal accountNo1 As String, ByVal readOnlyOR As Boolean, ByVal LoginUserId2 As String)

功能

初始化接收订单界面类信息。

参数

loginUserId2: 登录用户ID;readOnlyOR:设置控件只读模式,true为只读,false为非只读;accountNo1:试验编号。

返回值

2

Private Sub Btn_Receive_Click(sender As System.Object, e As System.EventArgs) Handles Btn_Receive.Click

功能

接收订单按钮实现

参数

系统默认生成

返回值

3

Private Sub Btn_Modify_Click(sender As System.Object, e As System.EventArgs) Handles Btn_Modify.Click

功能

要求修改按钮实现。

参数

系统默认生成

返回值

1.3 待审批

1.3.1模块架构

待审批架构图:如下图所示:

图1-19  待审批报告架构图

待审批主界面包括筛选信息栏,“查看订单”按钮,“订单跟踪”按钮和“审批”按钮。可以根据试品名称、试品型号、试验编号、试验目的和委托人进行模糊查询。点击“审批”按钮进入审批报告(订单)界面,用户确认信息无误后,批准报告(订单)。如若发现报告(订单)问题,可以选择修改理由,要求修改报告(订单)。

1.3.2运行流程

待审批-报告审批流程:如下图所示:

图1-20  待审批-报告审批流程

报告(订单)合格动作要更新订单状态为“11”,同时将批准人和批准日期入库,记录动作“报告审批合格”。要求修改报告(订单)动作与报告(订单)合格动作类似,需更新订单状态为“10”,将要求修改理由,要求修改人,批准日期和批准人入库,记录动作“报告审批不合格,要求修改”。

1.3.3界面设计

审批报告(订单)界面:如下图所示:

图1-21 审批报告(订单)界面

审批报告(订单)界面顶上部分三个按钮分别为【查看订单】、【查看样机】和【查看报告】,可以分别查看对应的订单、样机和报告信息。【审核人】和【审核日期】在审核报告(订单)处已填写好,这里只能查看。批准人确认所有信息无误后,点击【合格】按钮,审批报告(订单)。如若报告(订单)不合格,填写要求修改理由,点击【要求修改】按钮要求相关责任人修改。

1.3.4数据结构

1.待审批类ReportAuditApprove 的方法:如下表:

表1-8  待审批类ReportAuditApprove 的方法

序号

方法

1

Public Sub InitReportAuditApprove(ByVal orderID1 As String, ByVal accountNo1 As String, ByVal itemNum1 As String, ByVal readOnly1 As Boolean, ByVal aduitMan1 As String, ByVal aduitDate1 As String, ByVal approveManID1 As String, ByVal staffList2 As List(Of StaffInfo))

功能

初始化待审批信息。

参数

orderID1:订单ID;accountNo1:试验编号;itemNum1:试品编号;readOnly1:设置控件只读模式,true为只读,false为非只读;aduitMan1:审核人;aduitDate1:审核日期;approveManID1: 默认为登录用户ID;staffList2:职工信息列表。

返回值

2

Private Sub dgvRAA_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvRAA.CellClick

功能

处理DataGridView单元格单击事件,用于选择相应的信息。

参数

e: System.Windows.Forms.DataGridViewCellEventArgs

返回值

3

Private Sub BtnQualified_Click(sender As System.Object, e As System.EventArgs) Handles BtnQualified.Click

功能

报告(订单)审批合格

参数

系统默认生成

返回值

4

Private Sub BtnAskModify_Click(sender As System.Object, e As System.EventArgs) Handles BtnAskModify.Click

功能

要求修改报告(订单)

参数

系统默认生成

返回值

1.4 待发布

1.4.1模块架构

待发布架构图:如下图所示:

图1-22  待发布架构图

待发布主界面包括筛选信息栏,“查看订单”按钮,“查看报告”按钮,“订单跟踪”按钮和“发布”按钮。可以根据试品名称、试品型号、试验编号、试验目的和委托人进行模糊查询。点击“发布”按钮进入发布报告(订单)界面,用户确认信息无误后,可以点击【发布】按钮发布报告(订单)。如若发现报告(订单)问题,可以点击【待发布】按钮待发布报告(订单),点击【要求修改】按钮要求修改报告(订单)。特别注意:在发布报告之前,必须先点击【退回样机】按钮退回样机。

1.4.2运行流程

待发布-报告发布流程:如下图所示:

图1- 23 待发布-报告发布流程

报告【发布】动作执行前要先执行【退回样机】动作,【退回样机】要更新多台样机的状态,更新的项有“包装完整”、“附件齐全”、“说明书齐全”、“铭牌齐全”、“样机状况”、“测试外损伤”和“附加说明”这7项。还要修改样机位置为“已退样机”,样品状态为’4’。更新订单“试验后样机状态”、“退样人”、“退样日期”、“收样人”和“收样日期”项,并记录动作“退回样机”。【发布】动作更新订单状态为’13’,同时将发布人和发布日期入库,记录动作“发布报告”,同时要判断测试整改表中是否存在对应OrderId的记录,如果存在,修改对应标志flagbit为’1’,记录动作“发布不合格整改单”。【要求修改】动作更新订单状态为“10”,将要求修改理由和要求修改人入库,记录动作“要求修改报告”。【待发布】动作更新订单状态为’12’,将“待发布理由”入库,记录动作“待发布报告”。

1.4.3界面设计

待发布报告(订单)界面:如下图所示:

图1-23 待发布报告(订单)界面

待发布报告(订单)界面顶上部分三个按钮分别为【查看订单】、【查看样机】和【查看报告】,可以分别查看对应的订单、样机和报告信息。发布人确认所有信息无误后,先点击【退回样机】按钮退回样机,在点击【发布】按钮,发布报告(订单)。如若报告(订单)信息有误,填写不发布退回,要求修改理由,点击【要求修改】按钮要求相关责任人修改,也可以填写待发布理由,点击【待发布】按钮待发布报告(订单)。

1.4.4数据结构

1.待发布类ReportPublication 的方法:如下表:

表1-9  待发布类ReportPublication 的方法

序号

方法

1

Public Sub InitReportPublication(ByVal orderID1 As Integer, ByVal orderNo1 As String, ByVal samNo1 As String, ByVal ReadOnly1 As Boolean, ByVal userid As String, ByVal staffList As List(Of StaffInfo))

功能

初始化待发布信息。

参数

orderID1:订单ID;orderNo1:订单编号(试验编号);samNo1:试品编号;ReadOnly1:设置控件只读模式,true为只读,false为非只读;userid : 默认为登录用户ID;staffList:职工信息列表。

返回值

2

Private Sub Btn_BackSample_Click(sender As System.Object, e As System.EventArgs) Handles Btn_BackSample.Click

功能

退回样机

参数

系统默认

返回值

3

Private Sub Btn_Publish_Click(sender As System.Object, e As System.EventArgs) Handles Btn_Publish.Click

功能

发布报告(订单)

参数

系统默认

返回值

4

Private Sub Btn_UnderReleased_Click(sender As System.Object, e As System.EventArgs) Handles Btn_UnderReleased.Click

功能

待发布报告(订单)

参数

系统默认

返回值

5

Private Sub Btn_AskModify_Click(sender As System.Object, e As System.EventArgs) Handles Btn_AskModify.Click

功能

要求修改报告(订单)

参数

系统默认

返回值

1.5 应发未发

1.5.1模块架构

应发未发架构图:如下图所示:

图1-25  应发未发架构图

应发未发主界面包括筛选信息栏,“查看订单”按钮,“查看报告”按钮,“订单跟踪”按钮和“发布”按钮。可以根据试品名称、试品型号、试验编号、试验目的和委托人进行模糊查询。点击“发布”按钮进入发布报告(订单)界面,用户确认信息无误后,可以点击【发布】按钮发布报告(订单)。如若发现报告(订单)问题,可以点击【要求修改】按钮要求修改报告(订单)。特别注意:在发布报告之前,必须先点击【退回样机】按钮退回样机。

1.5.2运行流程

应发未发-报告发布流程:如下图所示:

图1- 26 应发未发-报告发布流程

报告【发布】动作执行前要先执行【退回样机】动作,【退回样机】要更新多台样机的状态,更新的项有“包装完整”、“附件齐全”、“说明书齐全”、“铭牌齐全”、“样机状况”、“测试外损伤”和“附加说明”这7项。还要修改样机位置为“已退样机”,样品状态为’4’。更新订单“试验后样机状态”、“退样人”、“退样日期”、“收样人”和“收样日期”项,并记录动作“退回样机”。【发布】动作更新订单状态为’13’,同时将发布人和发布日期入库,记录动作“发布报告”,同时要判断测试整改表中是否存在对应OrderId的记录,如果存在,修改对应标志flagbit为’1’,记录动作“发布不合格整改单”。【要求修改】动作更新订单状态为“10”,将要求修改理由和要求修改人入库,记录动作“要求修改报告”。

1.5.3界面设计

应发未发报告(订单)界面:如下图所示:

图1-27 应发未发报告(订单)界面

应发未发报告(订单)界面顶上部分三个按钮分别为【查看订单】、【查看样机】和【查看报告】,可以分别查看对应的订单、样机和报告信息。发布人确认所有信息无误后,先点击【退回样机】按钮退回样机,在点击【发布】按钮,发布报告(订单)。如若报告(订单)信息有误,填写不发布退回,要求修改理由,点击【要求修改】按钮要求相关责任人修改。

1.5.4数据结构

1.应发未发类ReportPublication 的方法:如下表:

表1-10  应发未发类ReportPublication 的方法

序号

方法

1

Public Sub InitReportPublication(ByVal orderID1 As Integer, ByVal orderNo1 As String, ByVal samNo1 As String, ByVal ReadOnly1 As Boolean, ByVal userid2 As String, ByVal staffList1 As List(Of StaffInfo), ByVal waitsurRea2 As String)

功能

初始化待发布信息。

参数

orderID1:订单ID;orderNo1:订单编号(试验编号);samNo1:试品编号;ReadOnly1:设置控件只读模式,true为只读,false为非只读;userid2 : 默认为登录用户ID;staffList1:职工信息列表;waitsurRea2:待发布理由

返回值

2

Private Sub Btn_BackSample_Click(sender As System.Object, e As System.EventArgs) Handles Btn_BackSample.Click

功能

退回样机

参数

系统默认

返回值

3

Private Sub Btn_Publish_Click(sender As System.Object, e As System.EventArgs) Handles Btn_Publish.Click

功能

发布报告(订单)

参数

系统默认

返回值

4

Private Sub Btn_AskModify_Click(sender As System.Object, e As System.EventArgs) Handles Btn_AskModify.Click

功能

要求修改报告(订单)

参数

系统默认

返回值

C# 样品管理模块和订单模块设计相关推荐

  1. dj电商-需求分析-购物车模块与订单模块

    购物车 >加入购物车按钮 >用户登陆后显示购物车的数字 >购物车的页面 显示商品的信息 可以增加减少删除操作 订单 place_order.html > 显示用户要购买的商品 ...

  2. 电商数据结构之订单模块(订单模块的数据结构设计)

    订单这里相比 首先第一也是订单详情 将订单的商品信息单独记录一张表 Order_Prodcut 整个表跟OrderInfo是一对多的关系 订单同样需要在购物车里有 退款表 加一张物流表跟物流跟踪表 最 ...

  3. php电商订单模块设计,电商后台订单管理模块

    订单系统是电商系统的核心体系之一,承载用户和商家之间商品及利益交换的过程.订单往往是和业务体系相关,不同的业务体系一般具有不同的订单模式. 当时的业务模式是,用户通过公众号下单,可选微信/支付宝支付. ...

  4. Java生鲜电商平台-订单配送模块的架构与设计

    Java生鲜电商平台-订单配送模块的架构与设计 生鲜电商系统最终的目的还是用户下单支付购买, 所以订单管理系统是电商系统中最为复杂的系统,其作为中枢决定着整个商城的运转, 本文将对于生鲜类电商平台的订 ...

  5. Spring Boot电商项目52:订单模块一:订单模块介绍;(模块介绍;效果演示;数据库设计;9个接口介绍;)

    说明: (1)本篇博客的内容:本篇博客,简单梳理下[订单模块]的基本内容: (2)声明:[订单模块]是一个比较复杂的模块,其中涉及了订单的状态的改变和订单的流转:所以,本篇博客,只是简单介绍了[订单模 ...

  6. java bs架构书_基于BS架构的图书借阅管理模块的分析与设计(JSP+MySQL)(新品)

    基于BS架构的图书借阅管理模块的分析与设计(JSP+MySQL)(新品) 来源:2BYSJ.cn 资料编号:2SJ295500 资料等级:★★★★★ %D7%CA%C1%CF%B1%E0%BA%C5% ...

  7. 10.1 黑马Vue电商后台管理系统之完善订单管理模块--加入修改订单模块

    效果如下: 实现如下: 1.我仍然保留了添加地址这一个对话框,但只是绑定在另一个按钮上面,而点击左侧第一个按钮就会跳转到"修改订单"模块 <template v-slot=& ...

  8. 电子商务(电销)平台中订单模块(Order)数据库设计明细

    电子商务(电销)平台中订单模块(Order)数据库设计明细 以下是自己在电子商务系统设计中的订单模块的数据库设计经验总结,而今发表出来一起分享,如有不当,欢迎跟帖讨论~ 订单表 (order) |-- ...

  9. 电子商务(电销)平台中订单模块(Order)数据库设计明细(转载)

    电子商务(电销)平台中订单模块(Order)数据库设计明细 以下是自己在电子商务系统设计中的订单模块的数据库设计经验总结,而今发表出来一起分享,如有不当,欢迎跟帖讨论~ 订单表 (order) |-- ...

最新文章

  1. 树状数组的理解(前缀和 and 差分)
  2. CMake命令之list
  3. PHP的函数file_get_contents() 把整个文件读入一个字符串中
  4. 之前安装的python环境可以删除吗-在Mac上删除自己安装的Python方法
  5. 开发自上而下的Web服务项目
  6. 分页的limit_20.MySQL中的LIMIT(分页)
  7. cesium坡度坡向分析_景观设计分析图制作技巧到底是什么?
  8. sklearn—特征工程
  9. C#与.net的区别
  10. EPM连接显示服务器不可用,EPM问题汇总之-SmartView没法链接Essbase
  11. 觅风易语言智能辅助开发视频教程(高清带源码)
  12. java安装教程(eclipse)
  13. 英特尔无线蓝牙启动服务器,如何在英特尔Edison上部署蓝牙安全网关
  14. Calc3: Partial Derivative
  15. Scikit-learn学习系列 | 1. sklearn的简要使用介绍与数据集获取
  16. Spring 学习笔记(day02)
  17. SOLIDWORKS提供的“走查”功能,身临其境感受自己的设计 | 操作视频
  18. Win11如何调整鼠标dpi?
  19. 数据文件格式+数据库
  20. 【Pygame实战】飞机射击大作:宇宙激战一触即发...这款超经典的射击游戏也该拿出来重启了~

热门文章

  1. 嵌入式C语言编程规范(个人规约)
  2. Pytorch多次自动求导
  3. 教你怎么用Vulnhub来搭建环境(爸爸再也不用担心我没有靶场练习了)(增加自己的部分)
  4. 上海FRM培训机构哪家好? 评判标准是什么?
  5. MT6757/P20处理器功能资料介绍
  6. 【文献阅读01】动态可重配置数据流的 74TMACS/W CMOS-RRAM 神经突触核以及概率图模型的在线转置权重
  7. 解决华为手机虚拟按键遮挡页面底部tab栏的问题
  8. 计算机功能区各部分,综合布线系统-施耐德.doc
  9. SpringBoot+Mybatis+thymeleaf实现增删改查
  10. 打造自己的centos linux发行版,定制自己的CentOS发行版