咱們在平常開發項目過程當中每每須要各類訂單單號的產生方法,並且是支持多用戶併發、支持多種數據庫的,咱們並不想爲每一個項目都寫一些獨立的代碼去實現這些功能,每每須要有個通用的函數比較爽一些。html
這裏是具體的頁面上的代碼參考,程序裏只須要一行代碼,就能夠獲取自動流水號、序號、編號等全智能的實現,用起來會很爽,並且能夠生成各類類別的訂單號,甚至能夠講是任意的均可以,不要折騰太多飛機了,並且還支持多種數據庫,不用針對每種數據庫又編寫代碼了,哪一個項目均可以靈活用,所有的源碼也能夠提供。this
//
--------------------------------------------------------------------
//
All Rights Reserved , Copyright (C) 2011 , Hairihan TECH, Ltd.
//
--------------------------------------------------------------------
using
System;
namespace
DotNet.WebForm
{
using
DotNet.Service;
///
<remarks>
///
OrderNumber
///
序號產生方式、併發序號發生、惟一編號產生
///
///
修改紀錄
///
///
版本:1.0 2011.02.28 JiRiGaLa 初步建立。
///
///
版本:1.0
///
<author>
///
<name>
JiRiGaLa
</name>
///
<date>
2011.02.28
</date>
///
</author>
///
</remarks>
public
partial
class
OrderNumber : BasePage
{
protected
void
Page_Load(
object
sender, EventArgs e)
{
}
private
void
GetOrderNumber()
{
string
orderName
=
string
.Empty;
//
1.按年產生訂單序號。
orderName
=
"
Order:
"
+
DateTime.Now.ToString(
"
yyyy
"
);
//
獲取原編號
//
ServiceManager.Instance.SequenceService.GetOldSequence(this.UserInfo, fullName, 0, 5, true);
//
這裏是編號增長一的動做
this
.txtOrderNumber1.Text
=
ServiceManager.Instance.SequenceService.GetNewSequence(
this
.UserInfo, orderName,
0
,
5
,
true
);
//
2.按年月產生訂單序號。
orderName
=
"
Order:
"
+
DateTime.Now.ToString(
"
yyyyMM
"
);
//
ServiceManager.Instance.SequenceService.GetOldSequence(this.UserInfo, fullName, 0, 5, true);
//
這裏是編號增長一的動做
this
.txtOrderNumber2.Text
=
ServiceManager.Instance.SequenceService.GetNewSequence(
this
.UserInfo, orderName,
0
,
5
,
true
);
//
3.按年月日產生訂單序號。
orderName
=
"
Order:
"
+
DateTime.Now.ToString(
"
yyyyMMdd
"
);
//
ServiceManager.Instance.SequenceService.GetOldSequence(this.UserInfo, fullName, 0, 5, true);
//
這裏是編號增長一的動做
this
.txtOrderNumber3.Text
=
ServiceManager.Instance.SequenceService.GetNewSequence(
this
.UserInfo, orderName,
0
,
5
,
true
);
//
4.按類別產生訂單序號。
orderName
=
"
Order:
"
+
"
StockOut
"
;
//
ServiceManager.Instance.SequenceService.GetOldSequence(this.UserInfo, fullName, 0, 5, true);
//
這裏是編號增長一的動做
this
.txtOrderNumber4.Text
=
ServiceManager.Instance.SequenceService.GetNewSequence(
this
.UserInfo, orderName,
0
,
5
,
true
);
}
protected
void
btnGetOrderNumber_Click(
object
sender, EventArgs e)
{
this
.GetOrderNumber();
}
}