青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

::^喬喬^::明鏡臺(tái)::原創(chuàng)空間::C#.NET2.0,C++技術(shù)BLOG
人最重要的是心境,一顆平靜安穩(wěn)的心才能更好的進(jìn)步,保持自己的心態(tài).成為夢(mèng)想中的高手QQ群:8664695
posts - 17,comments - 32,trackbacks - 0

執(zhí)行審核上則是每處理一個(gè)環(huán)節(jié),就插入一個(gè)環(huán)節(jié)的信息.


我個(gè)人認(rèn)為實(shí)現(xiàn)審核的代碼使用存儲(chǔ)過(guò)程去實(shí)現(xiàn)要比用C#代碼去實(shí)現(xiàn)要好,至于用事務(wù)處理感覺(jué)還是差點(diǎn),因?yàn)槿绻粋€(gè)系統(tǒng)的事務(wù)處理過(guò)多,會(huì)造成處理緩慢,而用C#代碼去實(shí)現(xiàn),則需要進(jìn)行多次的查詢數(shù)據(jù)庫(kù),操作過(guò)程也比較復(fù)雜..所以我覺(jué)得還是用存儲(chǔ)過(guò)程去實(shí)現(xiàn)是最理想的.


?1 Create ?? procedure ?ExecFlowAuditPass
?2 (
?3 @AuditMainID ? int ,
?4 @UserID ? varchar ( 100 ),
?5 @AuditOpinion ? ntext ,
?6 @Auditstatus ? int
?7 )
?8 As
?9 -- 獲取最后審核的節(jié)點(diǎn)
10 declare ? @posid ? int
11 select ? @posid ? = ? max (Sequence)? from ?審核子表? where ?MainID = ? @AuditMainID
12 -- 獲取最大審核的節(jié)點(diǎn)
13 declare ? @maxposid ? int
14 select ? @maxposid = max (Sequence)? from ?流程子表? where ?MainID = ? @AuditMainID
15 -- 獲取將審核節(jié)點(diǎn)角色資料
16 declare ? @UserGroupID ? int
17 select ? @UserGroupID ? = ?UserGroupID? from ?審核子表? where ?MainID = ? @AuditMainID ? and ?Sequence = @posid + 1
18 -- 角色不符
19 if ?( select ? count ( * )? from ?員工表? where ?員工ID = @UserID ? and ?角色I(xiàn)D? = ? @UserGroupID ) = 0
20 begin
21 ?? select ? * ? from ?審核子表? where ??MainID = ? @AuditMainID
22 ?? print ? - 1 ;
23 ?? return ? - 1 ;
24 end
25 -- 角色符合執(zhí)行
26 if ? @Auditstatus ? = 1
27 begin
28 insert? into ?流程子表(MainID,AuditOpinion,Auditstatus,Sequence,AuditID,CreateDate,角色I(xiàn)D)? values ( @AuditMainID , @AuditOpinion , 1 , @posid + 1 , @UserID , getdate (), @UserGroupID )
29 ??????????? if ? @posid ? + 1 ? = ? @maxposid
30 ???????????? begin
31 ????????????????? update ?審核主表? set ?Auditstatus? = ? 3 ? where ? [ ID ] = @AuditMainID ?
32 ????????????? end
33 end
34 else
35 begin
36 ?????????????????? insert? into ?流程子表(MainID,AuditOpinion,Auditstatus,Sequence,AuditID,CreateDate,角色I(xiàn)D)? values ( @AuditMainID , @AuditOpinion , 0 , @posid + 1 , @UserID , getdate (), @UserGroupID )
37 ???????????????? update ?審核主表? set ?Auditstatus? = ? 2 ? where ? [ ID ] = @AuditMainID ?
38 end

這個(gè)就是執(zhí)行審核的存儲(chǔ)過(guò)程,

現(xiàn)在主任C1打開審核系統(tǒng),根據(jù)需要,他只能看到它能看的審核.

?1 Create ? procedure ?GetListAudit
?2 (
?3 ? @userid ? varchar ( 100 ),
?4 ? @statusid ? int ? -- 0待審核,1已審核,2歷史記錄
?5 )
?6
?7 AS
?8 if ? @statusid ? = 1
?9 begin ?
10 ?? select ? * ?
11 ?? from ?審核主表?
12 ?? where ? [ ID ] ? in ?
13 ??(
14 ???? Select ?MainID? from ?審核子表?
15 ???? where ?AuditID? = ? @userid
16 ???)
17 end
18 if ? @statusid ? = 0
19 begin
20 ?? select ? *
21 ?? from ?審核主表?
22 ?? where ? [ ID ] ? not ? in
23 ??(
24 ????? select ?MainID? from ?審核子表?
25 ?????? where ?AuditID? = ? @userid
26 ??)
27 ?? and ?ProcessID? in ?
28 ??(
29 ???? Select ?MainID? from ?流程子表
30 ????? where ?UserGroupID? in ?
31 ?????(
32 ?????? select ?角色I(xiàn)D? from ?員工表
33 ??????? where ?員工ID = @userid
34 ??????)
35 ??)
36 end
37 if ? @statusid ? = 2
38 begin ?
39 ?? select ? *
40 ?? from ?審核主表?
41 ?? where ?Auditstatus? in ( 2 , 3 )
42 ?? and ?ProcessID? in
43 ??(
44 ???? Select ?MainID? from ?流程子表
45 ????? where ?UserGroupID? in ?
46 ?????(
47 ?????? select ?角色I(xiàn)D? from ?員工表
48 ??????? where ?員工ID = @userid
49 ??????)
50 ??)
51 end

上面的存儲(chǔ)過(guò)程還可以增加未提交的列表
只需要一個(gè)存儲(chǔ)過(guò)程就實(shí)現(xiàn)了,未提交,已經(jīng)審核,未審核,和歷史審核記錄,
并將這些不同的狀態(tài)定義為一個(gè)枚舉類型.

我們實(shí)現(xiàn)了,審核操作,和查看審核信息,還缺少什么呢?還缺少一個(gè)文件跟蹤功能,就是審核流程走到哪個(gè)角色的功能

?1 Create ? procedure ?GetListAuditTrail
?2 (
?3 ?? @AuditMainID ? int ? -- 審核單號(hào)
?4 )
?5 AS
?6
?7 Select ?a. * ?b.AuditID,b.CreateDate?Dates
?8 from ?流程子表?a? left ? join ?審核子表?b
?9 on ?a.Sequence? = ?b.Sequence
10 where ?b.MainID = @AuditMainID ? and ?
11 ???a.MainID? in ?( select ?ProcessID? from ?審核主表? where ? [ ID ] = @AuditMainID ?)


從安全性來(lái)說(shuō),我覺(jué)得應(yīng)該進(jìn)行下用戶權(quán)限檢驗(yàn)的.
其實(shí)我個(gè)人寫存儲(chǔ)過(guò)程有個(gè)習(xí)慣的,如果這個(gè)存儲(chǔ)過(guò)程是返回一個(gè)列表的,我喜歡用GetList為開頭,如果執(zhí)行性存儲(chǔ)過(guò)程則喜歡Exec,如果只是返回一個(gè)值的用則是GetOnly開頭,

明鏡臺(tái)

posted on 2009-05-09 15:37 ^喬喬^ 閱讀(2461) 評(píng)論(2)  編輯 收藏 引用 所屬分類: c#

FeedBack:
# re: 自定義審核流程(二)[未登錄](méi)
2009-06-09 11:25 | michael
很好 受益了 還有沒(méi)有下文?  回復(fù)  更多評(píng)論
  
# re: 自定義審核流程(二)
2009-11-09 21:51 | Hu Leon
收益匪淺,提幾點(diǎn)個(gè)人意見,
1. procedure ExecFlowAuditPass中28行和36行應(yīng)該是insert into 審批子表,我的理解是流程表中的流程應(yīng)該是預(yù)設(shè)好的,不應(yīng)該insert,而且從列名看,博主的意思也是插入審批表。
2.審批流程中還可以考慮并列審批情況,就是流程序列Sequence的值相同的情況,并列時(shí),是或通過(guò)還是與通過(guò)。  回復(fù)  更多評(píng)論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲第一精品电影| 国产精品99免费看| 久久综合中文字幕| 欧美在线三级| 久久精品视频网| 久久国产视频网站| 午夜精品一区二区三区在线| 91久久久在线| 美女图片一区二区| 午夜精品福利电影| 久久精品成人一区二区三区蜜臀| 亚洲一区观看| 在线精品在线| 日韩一级裸体免费视频| 亚洲免费一在线| 欧美α欧美αv大片| 日韩视频在线免费| 久久久久久9| 国产精品毛片a∨一区二区三区| 国产精品美女久久久久久2018| 狠狠色丁香婷婷综合| 亚洲精品国产系列| 久久精品女人| 亚洲精品一区在线观看香蕉| 久久国产精品一区二区| 欧美理论电影网| 亚洲国产高清一区二区三区| 久久激五月天综合精品| 亚洲午夜精品久久久久久浪潮 | 亚洲国产精品久久精品怡红院| 亚洲精品乱码久久久久久黑人 | 欧美怡红院视频一区二区三区| 亚洲国产视频一区二区| 久久久999精品视频| 国产精品国产精品| 亚洲欧美中文日韩在线| 亚洲欧美一区二区原创| 亚洲一区二区三区视频播放| 欧美精选一区| 欧美一级在线播放| 午夜久久久久久| 亚洲国产成人高清精品| 亚洲精品国产精品国自产观看| 欧美大片国产精品| 亚洲综合视频网| 亚洲香蕉成视频在线观看 | 欧美成人综合一区| 性欧美videos另类喷潮| 国产日韩欧美在线视频观看| 麻豆成人精品| 国产精品高潮呻吟久久av黑人| 久久久久久久久岛国免费| 久久久久.com| 亚洲欧美一级二级三级| 久久精品国产在热久久| 亚洲视频免费观看| 翔田千里一区二区| 国产精品99久久99久久久二8| 亚洲一区区二区| 一本久道久久综合中文字幕| 欧美自拍偷拍| 久久精品成人欧美大片古装| 欧美交受高潮1| 欧美成人一二三| 在线精品国产成人综合| 亚洲伊人一本大道中文字幕| 一区二区欧美在线| 欧美精品一区二区三区在线播放 | 国产三级精品在线不卡| 一区二区三区视频观看| 最近中文字幕mv在线一区二区三区四区| 国内偷自视频区视频综合| 日韩亚洲精品电影| 正在播放亚洲| 欧美日韩视频在线一区二区| 亚洲免费成人| 亚洲视频播放| 国产精品成人免费精品自在线观看| 亚洲久久一区二区| 亚洲一区二区成人在线观看| 欧美日韩午夜精品| 亚洲一区二区av电影| 午夜欧美不卡精品aaaaa| 国产视频不卡| 欧美激情网站在线观看| 亚洲美女电影在线| 久久久精品网| 亚洲一区二区三区视频播放| 国产欧美短视频| 欧美激情欧美狂野欧美精品| 中文一区二区| 欧美成人xxx| 亚洲午夜精品久久久久久app| 黄色成人91| 国产精品网站在线播放| 欧美成人嫩草网站| 久久福利一区| 亚洲欧美日韩视频二区| 日韩视频专区| 亚洲第一主播视频| 久久成人精品电影| 亚洲在线日韩| 亚洲午夜电影| aa级大片欧美| 99精品国产热久久91蜜凸| 精品99一区二区三区| 国产精品羞羞答答xxdd| 欧美性视频网站| 欧美三级电影大全| 欧美日韩成人精品| 亚洲日本久久| 久热精品视频在线| 欧美成人激情视频| 亚洲精选大片| 91久久综合亚洲鲁鲁五月天| 欧美va天堂va视频va在线| 亚洲午夜在线观看视频在线| 久久国产精品99精品国产| 中文精品在线| 久久午夜电影网| 香蕉久久精品日日躁夜夜躁| 欧美高清视频在线| 久久久久久久91| 国产精品一区免费视频| 亚洲高清二区| 揄拍成人国产精品视频| 亚洲欧美三级伦理| 亚洲午夜小视频| 欧美精品一区三区| 欧美国产精品劲爆| 在线观看成人av| 欧美一区二区三区四区在线观看| 亚洲一级电影| 欧美日韩一区精品| 99国产一区| 亚洲午夜久久久久久久久电影院| 欧美激情网友自拍| 亚洲黄色一区二区三区| 亚洲人成亚洲人成在线观看| 久热精品在线| 亚洲福利免费| 日韩一级精品| 欧美视频网址| 在线一区视频| 午夜国产精品视频| 国产精品一区视频网站| 亚洲欧美bt| 久久人体大胆视频| 精品成人一区二区三区四区| 久久久久国产精品一区三寸| 牛牛国产精品| 日韩天天综合| 国产精品乱码久久久久久| 亚洲在线视频| 久久久综合视频| 亚洲国产欧美精品| 欧美日韩p片| 一片黄亚洲嫩模| 久久成人18免费观看| 国产综合色精品一区二区三区| 久久精品麻豆| 亚洲激情社区| 午夜精品久久久久影视| 国产日韩一区二区| 另类综合日韩欧美亚洲| 欧美黑人国产人伦爽爽爽| 99综合视频| 国产日韩欧美视频| 欧美jizzhd精品欧美巨大免费| 99伊人成综合| 免费视频一区| 亚洲欧美国产日韩天堂区| 国产一区二区中文字幕免费看| 美女999久久久精品视频| 亚洲乱码久久| 久久一区二区三区国产精品 | 欧美日韩一区在线观看视频| 亚洲国产高清自拍| 亚洲系列中文字幕| 国内欧美视频一区二区| 欧美国产日韩视频| 欧美亚洲免费电影| 亚洲精品一级| 老司机午夜精品| 亚洲图片在线观看| 在线观看精品| 国产日本欧美视频| 欧美日本高清视频| 久久精品一区二区三区中文字幕| 亚洲精品国产精品国自产在线| 久久精品一区四区| 亚洲一区二区四区| 日韩西西人体444www| 国模私拍视频一区| 国产精品久久一区二区三区| 欧美成人一区二区| 久久亚洲春色中文字幕久久久 | 香蕉久久一区二区不卡无毒影院| 亚洲三级毛片| 欧美激情视频在线播放|