Xác định đối tượng tham gia hệ thống

Một phần của tài liệu Ứng dụng công nghệ Web 2.0 (AJAX) vào xây dựng cổng thông tin điện tử (Trang 61)

c. Thẻ <NOScript> và </NOSCRIPT>

3.3.3. Xác định đối tượng tham gia hệ thống

3.3.3.1 Xác định đối tượng tham gia:

- Là toàn thể cán bộ, nhân viên của đơn vị.

3.3.3.2. Nguyên tắc quản lý

- Cấp trên quản lý công việc của cấp dưới (có cán bộ Tham mưu tổng hợp giúp việc).

- Lãnh đạo phụ trách lĩnh vực công tác nào thì quản lý lĩnh vực công tác đó.

- Cán bộ chủ trì công việc có trách nhiệm nắm bắt và quản lý toàn bộ công việc được giao.

3.3.3.3. Trách nhiệm và quyền hạn của các đối tượng tham gia

- Cán bộ lãnh đạo trực tiếp chỉ đạo và nắm bắt các công việc trong phạm vi mình quản lý.

- Cán bộ tham mưu có trách nhiệm nắm bắt được tất cả các đầu việc trong đơn vị của mình để có trách nhiệm báo cáo lãnh đạo và kiểm tra, đốc thúc tiến độ thực hiện.

- Cán bộ chủ trì thực hiện có trách nhiệm nắm bắt các công việc mình được giao, đề xuất cách thức thực hiện và tổ chức thực hiện công việc. Trong quá trình thực hiện, cán bộ thực hiện có trách nhiệm báo cáo hướng giải quyết, tiến độ thực hiện và kết quả thực hiện cho các cấp lãnh đạo.

- Trong trường hợp công việc có sự phối hợp giữa nhiều cán bộ chiến sĩ, thì các đồng chí phối hợp thực hiện có trách nhiệm nắm bắt và thực hiện phần việc theo phân công.

3.4. Mô hình CSDL.

Hệ thống quản lý thông tin về công việc bao gồm nhiều thành phần khác nhau, mỗi thành phần có thể coi là một hệ thống độc lập. Nhưng thông

tin được tổng hợp và quản lý chung trên một giao diện web được gọi là cổng thông tin điện tử về công việc.

Với mỗi thành phần trên hệ thống có một thiết kế khác nhau.

3.4.1. Hệ thống quản lý thông tin về công việc.

3.4.1.1. Các bảng danh mục

- Bảng tblChucVu

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính TEN NVARCHAR (100) NOT NULL

- Bảng tblDoMat

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính TEN NVARCHAR(200) NOT NULL

- Bảng tblDoKhan

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính TEN NVARCHAR(200) NOT NULL

- Bảng tblLoaiViec

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính TEN NVARCHAR(300) NOT NULL

- Bảng tblQuyen

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính TEN NVARCHAR(100) NOT NULL

3.4.1.2. Các bảng chính

- Bảng tblCongViec

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính

TEN NVARCHAR

(500)

NOT NULL Tên công việc LOAIVIEC_ID INT Loại việc DOKHAN_ID INT NOT NULL Độ khẩn DOMAT_ID INT NOT NULL Độ mật

DVXULY_ID INT Đơn vị (cán bộ) xử lý

UUTIEN BIT NOT NULL Ưu tiên GHICHU NVARCHAR(800) Ghi chú

NGAYDX DATETIME Ngày đề xuất giải quyết

NOIDUNGDX NVARCHAR(500) Nội dung đề xuất DUKIENTG DATETIME Dự kiến thời gian

hoàn thành KETQUA NVARCHAR(500) Kết quả xử lý NGAYGIAO DATETIME Ngày giao việc NGAYKT DATETIME Ngày hoàn thành NGUOINHAP_ID INT NOT NULL

NGUOISUA_ID INT

NGAYNHAP DATETIME NOT NULL NGAYSUA DATETIME

SUA INT

- Bảng tblDVYC

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính NGAYNHAN DATETIME Ngày nhận NGAYCV DATETIME Ngày công văn SOCV NVARCHAR(50) Số công văn DVYC NVARCHAR(200) Đơn vị yêu cầu CONGVIEC_ID INT NOT NULL

NGUOINHAP_ID INT NOT NULL NGUOISUA_ID INT

NGAY NHAP DATETIME NOT NULL NGAYSUA DATETIME

SUA INT

- Bảng tblDVPhoiHop

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính CONGVIEC_ID INT NOT NULL

DV_ID INT

NGUOINHAP_ID INT NOT NULL NGUOISUA_ID INT

NGAYSUA DATETIME

NGAYNHAP DATETIME NOT NULL

- Bảng tblTiendo

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính NGAY DATETIME NOT NULL Ngày báo cáo NOIDUNG NVARCHAR(500) NOT NULL Nội dung báo cáo TIENDO INT NOT NULL Tiến độ thực hiện:

Chưa thực hiện, đang thực hiện, đã hoàn thành, quá hạn

CONGVIEC_ID INT NOT NULL

GIAHAN DATETIME Ngày xin gia hạn GHICHU NVARCHAR(200)

NGUOINHAP_ID INT NOT NULL NGUOISUA_ID INT

NGAYNHAP DATETIME NOT NULL NGAYSUA DATETIME

SUA INT

- Bảng tblYKienChiDao

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính

NGAY DATETIME Ngày chỉ đạo

NOIDUNG NVARCHAR(500) Nội dung NGUOICD_ID INT Người chỉ đạo CONGVIEC_ID INT NOT NULL

NGUOINHAP_ID INT NOT NULL NGUOISUA_ID INT

NGAYNHAP DATETIME NOT NULL NGAYSUA DATETIME

- Bảng tblBanGiao

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính CONGVIEC_ID INT NOT NULL

DVTHUCHIEN_ID INT Đơn vị (cán bộ) đang thực hiện DVNHAN_ID INT Đơn vị (cán bộ)

nhận bàn giao

NGAY DATETIME Ngày bàn giao

GHICHU NVARCHAR(500) - Bảng tblCB_LV

Tên trường Kiểu dữ liệu Ràng buộc Mô tả

ID INT IDENTITY

DV_ID INT NOT NULL

LOAIVIEC_ID INT NOT NULL NGAYBD DATETIME NOT NULL NGAYKT DATETIME

- Bảng tblDVCanbo

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính SOHIEUCB NVARCHAR(10) NOT NULL Số hiệu cán bộ TEN NVARCHAR(100) NOT NULL Họ tên cán bộ MATKHAU NVARCHAR(100) Mật khẩu

DV_ID INT Đơn vị

CHUCVU_ID INT Chức vụ

EMAIL NVARCHAR(50) Địa chỉ thư nội bộ GHICHU NVARCHAR(500)

CB_DV BIT NOT NULL Cán bộ hay đơn vị - Bảng tblCanbo_Quyen

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính

DV_ID INT NOT NULL

QUYEN_ID INT NOT NULL

3.4.2. Hệ thống quản lý lịch công tác

- Bảng tblTHOIGIAN

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính

TUAN INT NOT NULL

NGAY DATETIME NOT NULL

BUOI INT Sáng, Chiều, Tối

- Bảng tblLich

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính TENVIEC NVARCHAR(200) NOT NULL

GHICHU NVARCHAR(200) NOT NULL THOIGIAN_ID INT NOT NULL

- Bảng tblQuyen

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính VIEC_ID INT NOT NULL

NGUOIDUNG_ID INT NOT NULL

3.4.3. Hệ thống nhắc việc cá nhân

- Bảng tblViecCaNhan

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính TENVIEC NVARCHAR(200) NOT NULL

THOIGIAN DATETIME NOT NULL TINHTRANG INT NOT NULL NGUOIDUNG_ID INT

3.4.4. Hệ thống quản lý danh bạ điện thoại

- Bảng tblDanhba.

Tên trường Kiểu dữ liệu Ràng buộc Mô tả ID INT IDENTITY Khóa chính TEN NVARCHAR(200) NOT NULL

COQUAN VARCHAR(20) DIDONG VARCHAR(20) NHARIENG VARCHAR(20) NGAYSINH DATETIME DONVI_ID INT

NGUOIDUNG_ID INT NOT NULL TRANGTHAI INT NOT NULL

3.5. Giao diện của hệ thống quản lý thông tin công việc.

3.5.1. Giao diện chính của cổng thông tin về công việc.

Mỗi người dùng tùy theo mức độ quyền hạn và phạm vi quản lý của mình mà khi đăng nhập, hệ thống sẽ lọc các thông tin về công việc trong phạm vi tương ứng.

Thông tin về công việc, lịch công tác là thông tin chung của đơn vị, và được tương tác dưới dạng luồng công việc. Mỗi người dùng tham gia vào luồng công việc ở mức độ nào thì hệ thống sẽ hiển thị thông tin về công việc ở mức độ đó.

- Cán bộ lãnh đạo: Hiển thị các công việc thuộc lĩnh vực quản lý của mình.

- Cán bộ thực hiện: Hiển thị các công việc thuộc phạm vi giải quyết của mình.

- Cán bộ tham mưu, tổng hợp: Được xem hết các công việc thuộc đơn vị mà mình tham mưu, tổng hợp.

Thông tin về nhắc việc cá nhân, danh bạ điện thoại là thông tin riêng của mỗi người dùng. Nó hoàn toàn độc lập giữa các người dùng với nhau.

Hình 2.7: Giao diện chính của cổng thông tin điện tử về công việc

Người dùng có thể tùy chọn giao diện trang chính của mình bằng cách thêm, bớt các chức năng, có thể đặt để lại các thành phần của trang chính chỉ bằng cách kéo thả.

3.5.2. Giao diện về việc nhập thông tin về một công việc.

Công việc được lãnh đạo giao xuống cho cán bộ thực hiện. Có thể lãnh đạo trực tiếp nhập thông tin về công việc vào chương trình hoặc cán bộ trực tiếp thực hiện nhập vào. Nếu lãnh đạo nhập vào và thực hiện giao việc bằng chương trình thì cán bộ thực hiện sẽ nhìn thấy công việc được giao trên màn hình làm việc của mình.

3.5.3. Giao diện chính của một hồ sơ công việc.

Các thông tin về công việc được các cấp thực hiện bổ sung vào trong quá trình thực hiện. Tập hợp các thông tin về xử lý một công việc là một hồ sơ công việc. Lãnh đạo có thể xem hồ sơ của một công việc để kiểm tra việc thực hiện của công việc đó.

Hình 2.9: Giao diện về hồ sơ một công việc

3.5.4. Giao diện về việc cho ý kiến chỉ đạo về công việc.

Lãnh đạo khi duyệt thông tin về công việc có thể trực tiếp cho ý kiến chỉ đạo trên chương trình bằng cách nhập ý kiến chỉ đạo của mình về công việc đó vào chương trình. Cán bộ thực hiện khi đăng nhập sẽ nhìn thấy ý kiến chỉ đạo và thực hiện.

Hình 2.10: Giao diện nhập ý kiến chỉ đạo

3.6. Một số đoạn chương trình mẫu

3.6.1. Kiểm tra quyền của người dùng khi truy nhập hệ thống.

protected void laydieukien() {

switch (chucvuid) {

//Nếu là đồng chí Cục trưởng

case "5":

strsql = " and a.ngaykt is null and a.congviec_id is null ";

break;

//Nếu là đồng chí Cục phó

case "6":

strsql = " and a.ngaykt is null and

((a.nguoigiao_id="+userid+") or (a.dvxuly_id=" + userid + " and a.id not in (select congviec_id from tblCongviec where congviec_id is not null and sua is null)) or (a.congviec_id is null and a.id not in (select

congviec_id from tblCongviec where sua is null and congviec_id is not null))) ";

strsql1 = "select a.id as id from tblCongviec a where a.sua is null and a.ngaykt is null and((a.dvxuly_id=" + userid + ") or (a.nguoigiao_id="+userid+") or (a.loaiviec_id in (select loaiviec_id from tblCB_LV where sua is null and dv_id=" + userid + " and (ngaykt is null or ngaykt>'" + DateTime.Now.ToString() + "')) and a.congviec_id is null and a.id not in (select congviec_id from tblCongviec where sua is null and congviec_id is not null)))";

strsql2 = "select a.id as id from tblCongviec a,tblDVPhoihop b where a.sua is null and b.sua is null and a.id=b.congviec_id and b.dv_id="+userid+"";

break;

//Nếu là tham mưu Cục

case "17":

strsql = " and a.ngaykt is null and ((a.id in (select congviec_id from tblDVPhoihop where sua is null and dv_id=" + userid + ")) or (a.dvxuly_id=" + userid + ") or (a.congviec_id is null)) ";

strsql1 = "select a.id as id from tblCongviec a where a.sua is null and a.ngaykt is null and a.dvxuly_id=" + userid + "";

strsql2 = "select a.id as id from tblCongviec a,tblDVPhoihop b where a.sua is null and b.sua is null and a.id=b.congviec_id and b.dv_id="+userid+"";

break;

//Nếu là Trưởng phòng. Đối với các công việc phối hợp

thì chỉ xem những công phối hợp với đơn vị ngoài

case "7":

strsql = " and a.ngaykt is null and a.id not in (select congviec_id from tblCongviec where congviec_id is not null and

(dvxuly_id="+donvichuquanid+" or dvxuly_id in (select id from tblDVCanbo where sua is null and dv_id = " + donvichuquanid + "))) and

(a.dvxuly_id=" + donvichuquanid + " or dvxuly_id in (select id from tblDVCanbo where dv_id=" + donvichuquanid + " and sua is null) " +

"or (a.id in (select

tblDVPhoihop.congviec_id from tblDVPhoihop, tblCongviec,tblDVCanbo

g,tblDVCanbo h where tblCongviec.sua is null and g.sua is null and h.sua is null and tblDVPhoihop.sua is null and tblDVPhoihop.dv_id=g.id and (g.id=" + donvichuquanid + " or g.dv_id=" + donvichuquanid + ") and tblDVPhoihop.congviec_id=tblCongviec.id and tblCongviec.dvxuly_id=h.id and (h.id<>" + donvichuquanid + " or h.id<>" + donvichuquanid + "))))";

strsql1 = "select a.id as id from tblCongviec a where a.sua is null and a.ngaykt is null and (a.dvxuly_id=" + donvichuquanid + " or a.dvxuly_id in (select id from tblDVCanbo where sua is null and dv_id=" + donvichuquanid + ")) and (a.id not in (select congviec_id from tblCongviec where sua is null and congviec_id is not null and dvxuly_id in (select id from tblDVCanbo where sua is null and dv_id=" +

donvichuquanid + ")) or a.nguoigiao_id in (select id from tblDVCanbo where sua is null and dv_id=" + donvichuquanid + "))";

strsql2 = "select a.id as id from tblCongviec a,tblDVPhoihop b where a.sua is null and b.sua is null and

a.id=b.congviec_id and (b.dv_id=" + donvichuquanid + " or b.dv_id in (select id from tblDVCanbo where sua is null and

dv_id="+donvichuquanid+"))"; break;

//Nếu là Chánh văn phòng

case "13":

strsql = " and a.ngaykt is null and a.id not in (select congviec_id from tblCongviec where congviec_id is not null and

(dvxuly_id=" + donvichuquanid + " or dvxuly_id in (select id from tblDVCanbo where sua is null and dv_id = " + donvichuquanid + "))) and (a.dvxuly_id=" + donvichuquanid + " or dvxuly_id in (select id from tblDVCanbo where dv_id=" + donvichuquanid + " and sua is null) " +

"or (a.id in (select

tblDVPhoihop.congviec_id from tblDVPhoihop, tblCongviec,tblDVCanbo

g,tblDVCanbo h where tblCongviec.sua is null and g.sua is null and h.sua is null and tblDVPhoihop.sua is null and tblDVPhoihop.dv_id=g.id and (g.id=" + donvichuquanid + " or g.dv_id=" + donvichuquanid + ") and tblDVPhoihop.congviec_id=tblCongviec.id and tblCongviec.dvxuly_id=h.id and (h.id<>" + donvichuquanid + " or h.id<>" + donvichuquanid + "))))";

strsql1 = "select a.id as id from tblCongviec a where a.sua is null and a.ngaykt is null and (a.dvxuly_id=" +

donvichuquanid + " or a.dvxuly_id in (select id from tblDVCanbo where sua is null and dv_id=" + donvichuquanid + ")) and (a.id not in (select

congviec_id from tblCongviec where sua is null and congviec_id is not null and dvxuly_id in (select id from tblDVCanbo where sua is null and dv_id=" + donvichuquanid + ")) or a.nguoigiao_id in (select id from tblDVCanbo where sua is null and dv_id=" + donvichuquanid + "))";

strsql2 = "select a.id as id from tblCongviec a,tblDVPhoihop b where a.sua is null and b.sua is null and

a.id=b.congviec_id and (b.dv_id=" + donvichuquanid + " or b.dv_id in (select id from tblDVCanbo where sua is null and dv_id=" + donvichuquanid + "))";

break;

//Nếu là phó phòng

case "8":

strsql = " and a.ngaykt is null and a.id not in (select congviec_id from tblCongviec where congviec_id is not null and

(dvxuly_id=" + donvichuquanid + " or dvxuly_id in (select id from tblDVCanbo where sua is null and dv_id = " + donvichuquanid + "))) and (a.dvxuly_id=" + donvichuquanid + " or dvxuly_id in (select id from tblDVCanbo where dv_id=" + donvichuquanid + " and sua is null) " +

"or (a.id in (select

tblDVPhoihop.congviec_id from tblDVPhoihop, tblCongviec,tblDVCanbo

g,tblDVCanbo h where tblCongviec.sua is null and g.sua is null and h.sua is null and tblDVPhoihop.sua is null and tblDVPhoihop.dv_id=g.id and (g.id=" + donvichuquanid + " or g.dv_id=" + donvichuquanid + ") and tblDVPhoihop.congviec_id=tblCongviec.id and tblCongviec.dvxuly_id=h.id and (h.id<>" + donvichuquanid + " or h.id<>" + donvichuquanid + "))))";

strsql1 = "select a.id as id from tblCongviec a where a.sua is null and a.ngaykt is null and ((a.nguoigiao_id="+userid+") or (a.dvxuly_id ="+userid+") or (a.dvxuly_id="+donvichuquanid+") or

(a.dvxuly_id in (select id from tblDVCanbo where sua is null and

dv_id="+donvichuquanid+") and a.loaiviec_id in (select loaiviec_id from tblCB_LV where sua is null and dv_id=" + userid + " and (ngaykt is null or ngaykt>'" + DateTime.Now.ToString() + "'))))";

strsql2 = "select a.id as id from tblCongviec a,tblDVPhoihop b where a.sua is null and b.sua is null and

a.id=b.congviec_id and (b.dv_id=" + userid + " or (b.dv_id in (select id from tblDVCanbo where sua is null and dv_id=" + donvichuquanid + ") and a.loaiviec_id in (select loaiviec_id from tblCB_LV where sua is null and dv_id=" + userid + " and (ngaykt is null or ngaykt>'" +

DateTime.Now.ToString() + "'))))"; break;

//Nếu là phó chánh văn phòng

case "14":

strsql = " and a.ngaykt is null and a.id not in (select congviec_id from tblCongviec where congviec_id is not null and

(dvxuly_id=136 or dvxuly_id in (select id from tblDVCanbo where sua is null and dv_id = 136))) and (a.dvxuly_id=136 or dvxuly_id in (select id from tblDVCanbo where dv_id=136 and sua is null) " +

"or (a.id in (select

tblDVPhoihop.congviec_id from tblDVPhoihop, tblCongviec,tblDVCanbo

g,tblDVCanbo h where tblCongviec.sua is null and g.sua is null and h.sua is null and tblDVPhoihop.sua is null and tblDVPhoihop.dv_id=g.id and (g.id=" + donvichuquanid + " or g.dv_id=" + donvichuquanid + ") and tblDVPhoihop.congviec_id=tblCongviec.id and tblCongviec.dvxuly_id=h.id and (h.id<>" + donvichuquanid + " or h.id<>" + donvichuquanid + "))))";

strsql1 = "select a.id as id from tblCongviec a where a.sua is null and a.ngaykt is null and ((a.nguoigiao_id=" + userid + ") or (a.dvxuly_id =" + userid + ") or (a.dvxuly_id=" + donvichuquanid + ") or (a.dvxuly_id in (select id from tblDVCanbo where sua is null and dv_id=" + donvichuquanid + ") and a.loaiviec_id in (select loaiviec_id from tblCB_LV where sua is null and dv_id=" + userid + " and (ngaykt is null or ngaykt>'" + DateTime.Now.ToString() + "'))))";

strsql2 = "select a.id as id from tblCongviec a,tblDVPhoihop b where a.sua is null and b.sua is null and

a.id=b.congviec_id and (b.dv_id=" + userid + " or (b.dv_id in (select id from tblDVCanbo where sua is null and dv_id=" + donvichuquanid + ") and a.loaiviec_id in (select loaiviec_id from tblCB_LV where sua is null and dv_id=" + userid + " and (ngaykt is null or ngaykt>'" +

DateTime.Now.ToString() + "'))))"; break;

case "18":

strsql = " and a.ngaykt is null and a.id not in (select congviec_id from tblCongviec where congviec_id is not null and

null and dv_id = 136))) and (a.dvxuly_id=136 or dvxuly_id in (select id from tblDVCanbo where dv_id=136 and sua is null) " +

"or (a.id in (select

tblDVPhoihop.congviec_id from tblDVPhoihop, tblCongviec,tblDVCanbo

g,tblDVCanbo h where tblCongviec.sua is null and g.sua is null and h.sua is null and tblDVPhoihop.sua is null and tblDVPhoihop.dv_id=g.id and (g.id=" + donvichuquanid + " or g.dv_id=" + donvichuquanid + ") and tblDVPhoihop.congviec_id=tblCongviec.id and tblCongviec.dvxuly_id=h.id and (h.id<>" + donvichuquanid + " or h.id<>" + donvichuquanid + "))))";

strsql1 = "select a.id as id from tblCongviec a where a.sua is null and a.ngaykt is null and a.dvxuly_id=" + userid + "";

strsql2 = "select a.id as id from tblCongviec a,tblDVPhoihop b where a.sua is null and b.sua is null and

a.id=b.congviec_id and b.dv_id=" + userid + ""; break;

default:

strsql = " and a.ngaykt is null and ((a.dvxuly_id=" + this.Session["userid"].ToString() + ") or (a.id in (select congviec_id from tblDVPhoiHop where sua is null and dv_id=" +

Một phần của tài liệu Ứng dụng công nghệ Web 2.0 (AJAX) vào xây dựng cổng thông tin điện tử (Trang 61)

Tải bản đầy đủ (PDF)

(78 trang)