物流管理系統(tǒng)樣本_第1頁(yè)
物流管理系統(tǒng)樣本_第2頁(yè)
物流管理系統(tǒng)樣本_第3頁(yè)
物流管理系統(tǒng)樣本_第4頁(yè)
物流管理系統(tǒng)樣本_第5頁(yè)
已閱讀5頁(yè),還剩43頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

令第一天國(guó)際物流杰信商貿(mào)+搭建環(huán)境

1.項(xiàng)目背景

杰信商貿(mào)是國(guó)際物流行業(yè)一家專門從事進(jìn)出口玻璃器皿貿(mào)易公司。公司總部位于十一種朝代

帝王之都西安,業(yè)務(wù)遍及歐美。隨著公司不斷發(fā)展壯大,舊信息系統(tǒng)已無法滿足公司迅速發(fā)

展需求,妨礙公司成長(zhǎng),在此背景下,公司領(lǐng)導(dǎo)決定研發(fā)《杰信商貿(mào)綜合管理平臺(tái)》。

《杰信商貿(mào)綜合管理平臺(tái)》分三期完畢。一期完畢倉(cāng)儲(chǔ)管理(涉及:采購(gòu)單、倉(cāng)庫(kù)、貨品、

條形碼、入庫(kù)、出庫(kù)、退貨、盤點(diǎn)、庫(kù)存、庫(kù)存上限報(bào)警、記錄查詢)和展會(huì)管理(涉及:展

會(huì)管理、出單管理),形成貨品統(tǒng)一數(shù)字化管理。二期完畢貨運(yùn)全流程管理,涉及購(gòu)銷合同、

出貨表記錄、出口報(bào)運(yùn)單、HOME裝箱單、裝箱單、委托書、發(fā)票、財(cái)務(wù)記錄等。三期完畢

決策分析(涉及:成本分析圖、銷售狀況記錄、重點(diǎn)客戶、經(jīng)營(yíng)狀況同期比對(duì)記錄、工作績(jī)

效),為公司經(jīng)營(yíng)決策提供數(shù)據(jù)支持。

a)用例圖

2.理解系統(tǒng)是所有功能模塊

運(yùn)用visio畫系統(tǒng)功能構(gòu)造圖,目讓開發(fā)人員理解均有哪些業(yè)務(wù)模塊,以便分工合伙,依照每

個(gè)頁(yè)面模塊難度,復(fù)雜,投入人力狀況來衡最每個(gè)模塊多少錢。驗(yàn)收原則。

3.數(shù)據(jù)庫(kù)建模,業(yè)界都使用PowerDesinger建模

4.系統(tǒng)架構(gòu)

項(xiàng)目框里:SpringMVC?Spring3.2.6?Mybatis322?Maven?//SpringJDBC

PowerDesigner

政據(jù)莊

執(zhí)行SQLa表

a)業(yè)務(wù):生產(chǎn)廠家

b)功能

在貨品模塊和附近模塊,它們均有個(gè)生產(chǎn)廠家,講生產(chǎn)廠家信息提出,成為一種單獨(dú)表,

c)需求調(diào)研《需求闡明書》

生產(chǎn)廠家表FACTORY_C(_C業(yè)務(wù)后綴)

序號(hào)名稱代碼與否類型(長(zhǎng)度)闡明

主鍵

1.編號(hào)FACTORY_ID是VARCHAR2(40)UUID

2.全稱FULL_NAME否VARCHAR2(200)相應(yīng)客戶比較模

糊,翻番2到4

3.簡(jiǎn)稱FACTORY_NAME否VARCHAR2(50)

4.聯(lián)系人CONTACTS否VARCHAR2(30)人名20/30

5.電話PHONE否VARCHAR2(20)

6.手機(jī)MOBILE否VARCHAR2(20)

加“啟用”“停用”功能,修改狀態(tài)。

a)貨運(yùn)管理核心流程:購(gòu)銷合同

b)需求調(diào)研過程

軟件公司就會(huì)到杰信去需求調(diào)研,

項(xiàng)目經(jīng)理,她面對(duì)客戶高層中層領(lǐng)導(dǎo),目跟客戶安排好調(diào)研口程。

c)設(shè)計(jì)人員,帶領(lǐng)初級(jí)程序員到詳細(xì)業(yè)務(wù)部門調(diào)研。聊天,

環(huán)繞項(xiàng)目目的,設(shè)計(jì)人員會(huì)自己記錄談話內(nèi)容,(主

干),初級(jí)程序員(所有內(nèi)容)?;貋碚D筆記,整頓

《需求調(diào)研報(bào)告》

d)報(bào)告中怎么體現(xiàn)紙質(zhì)報(bào)表?初級(jí)程序員將紙質(zhì)報(bào)表

轉(zhuǎn)化成電子。

e)購(gòu)銷合同業(yè)務(wù)分析

2.需求過程

杰信和生產(chǎn)廠家簽到合同,稱為購(gòu)銷合同。一種購(gòu)銷合同中包括各種貨品信息,一種貨品信

息涉及各種附件信息。

報(bào)表打印時(shí),同一種生產(chǎn)廠家貨品信息才干放在同一種頁(yè)上,不同生產(chǎn)廠家貨品信息不能放

在同一種頁(yè)上。

分析階段,摳每個(gè)字段

3.出貨表

設(shè)計(jì)方案一(老式設(shè)計(jì))

合同表,貨品表,附件表多次左連接,SQL極其復(fù)雜,由于附件值特殊,SQL不能直接完畢,還

需要代碼去實(shí)現(xiàn)。

設(shè)計(jì)方案二(冗余設(shè)計(jì))

通過冗余,都在貨品表中,只需要合同表和貨品表左連接即可。

4.分析過程

將顧客需求(大白話)轉(zhuǎn)化為開發(fā)人員看得懂?dāng)?shù)據(jù)庫(kù)表,表之間關(guān)系,業(yè)務(wù)邏輯。給咱們開

發(fā)人員看,開發(fā)人員根據(jù)設(shè)計(jì)來寫代碼。復(fù)雜,大型項(xiàng)目畫類圖,序列圖輔助開發(fā)人員開發(fā)。

購(gòu)銷合同

CJNTRACTIDVARCHAR2(40)<pk>

收購(gòu)方VARCJL\R2(200)

合同號(hào)VARQIAR2(50)

簽單日期TIMESTAMP

制單人VAKCHAR2(30)

審單人VARCHAR2(30)

驗(yàn)貨員VARCIIAR2(3O)

總金額NUMBER(10,2)

重要程度INT

要求VARQIAR2C2000)

客戶名稱VARCHAR2(200)

交貨期限TIMESTAMP

射期TIMESTAMP

貿(mào)易條款VARCHAR2(30)

說明VARCHAR21600)

打印版式CHAR(l)

歸檔前狀態(tài)INT

狀態(tài)INT

走貨狀態(tài)INT

創(chuàng)建人VARCIIAR2(4O)

創(chuàng)建部門VARQ[AR2(40)

創(chuàng)建LI期TIMESTAMP

FKCONTRACTRE網(wǎng)l、CECONTRACT

合同貨物合同附件

CONTRACTPRODUCTIDVARCIL\R2(4O)<pk>EXTCPRODUCTIDVARCHAR2(40)<pk>

CONTRACTIDVARQIAR2(4O)<fkl>CONTRACTPRODUCTIDVARCHAK2(40)<fk2>

FACTORYIDVARCIIAR2(4O)<fk2>FACTORY」DVARCHAR2(40)<fkl>

廠家名稱VARCHAR2(5O)廠家名稱VARCHAR2(50)

貨號(hào)VARC1L\R2(5O)類型INT

貨物照片VAKC1IAR2(2OO)貨號(hào)VARCHAR2(50)

貨物描述VARGIAR2(6OO)貨物照片VARQIAR2(200)

數(shù)世1NT貧物描述VARCHAR2(600)

實(shí)際出貨數(shù)量INT數(shù)最I(lǐng)NT

裝率VAKCIIAR2(10)包裝單位VARCHAR2(10)

箱數(shù)INT單價(jià)NUMBER(10,2)

包裝單位VARCIIAR2(10)總金額NUMBER(10,2)

單價(jià)NUMBER(10,2)要求VARCHAR2(2000)

總金額NUMBER(10,2)排,手號(hào)INT

是否出貨完畢INT

附件VARCHAR2(5O)

排序號(hào)INT

在實(shí)際開發(fā)中,架構(gòu)師搭建項(xiàng)目框架,框架基類均有,基本工具類,統(tǒng)同樣式表,統(tǒng)一公用js,

圖片公司提供一種CVS/SVN賬號(hào),配備環(huán)境,從中檢出你負(fù)責(zé)項(xiàng)目代碼。代碼普通以項(xiàng)目

構(gòu)造。導(dǎo)入工程,在其上面開發(fā)新業(yè)務(wù)模塊。

5.業(yè)務(wù)需求

銷售人員錄入合同步,它為草稿狀態(tài),這時(shí)只能銷售人員自己看到。只有當(dāng)銷售人員檢查合

同無誤,提交,狀態(tài)變成“已上報(bào)”。這時(shí)候,其她人員才可以看到。銷售領(lǐng)導(dǎo)和船務(wù)專責(zé)才

干看到。運(yùn)用這個(gè)狀態(tài)字段來控制對(duì)當(dāng)前顧客與否可見。(細(xì)粒度權(quán)限控制?數(shù)據(jù)權(quán)限)

6.重點(diǎn)知識(shí)回顧

貨運(yùn)管理核心業(yè)務(wù)流程:購(gòu)銷合同

1.定義

購(gòu)銷合同是杰信和生產(chǎn)廠家訂立合同。

2.業(yè)務(wù)復(fù)雜度

購(gòu)銷合同業(yè)務(wù)比較復(fù)雜,它是貨運(yùn)管理一種流程,它涉及三某些內(nèi)容,合同主信息和各種貨

品信息和各種附件信息。合同主信息和貨品是一對(duì)多,貨品和附件信息是?對(duì)多。

3.從業(yè)務(wù)中遷出技術(shù)亮點(diǎn)

前期我參加了業(yè)務(wù)調(diào)研,重點(diǎn)負(fù)責(zé)購(gòu)銷合同。給客戶交流后,我編寫了《需求闡明書》,然

后參數(shù)購(gòu)銷合同表設(shè)計(jì)。從需求闡明書結(jié)合客戶給電子表格,我抽取出數(shù)據(jù)庫(kù)表,運(yùn)月PD

進(jìn)行建模。

設(shè)計(jì):

1.跟客戶聊天,要引導(dǎo)性和她們聊天。業(yè)務(wù)基本術(shù)語,理解業(yè)務(wù)流程

進(jìn)一步內(nèi)容,拿到客戶手中既有某個(gè)模塊表單,電子表格,填寫內(nèi)容,每個(gè)內(nèi)容要注意事項(xiàng)。

來源:手填,從其她模塊來獲取。摳每個(gè)字段,電子表格中每個(gè)內(nèi)容。

《詳細(xì)闡明書》功能細(xì)化,業(yè)務(wù)邏輯說清晰,畫圖輔助開發(fā),UML(類圖、序列圖、狀態(tài)圖)

數(shù)據(jù)庫(kù)建模細(xì)化。

目:開發(fā)人員可以依照詳細(xì)設(shè)計(jì)開始開發(fā)。

詳細(xì)設(shè)計(jì)本意能達(dá)到開發(fā)人員無需和客戶溝通,就可以在設(shè)計(jì)人員指引下就可以直接開發(fā)

出客戶滿意代碼。但實(shí)際中做不到。設(shè)計(jì)不到位。實(shí)際中開發(fā)往復(fù)比較多。

令第三天購(gòu)銷合同+貨品信息+附件信息

a)業(yè)務(wù)需求:上報(bào)、取消

b)功能:

上報(bào)實(shí)現(xiàn)銷售人員擬定購(gòu)銷合同錄入完畢,檢查無誤后,上報(bào)給領(lǐng)導(dǎo),領(lǐng)導(dǎo)審核無誤后,提

交給船運(yùn)部。

取消實(shí)現(xiàn)行船務(wù)專責(zé)未解決此有關(guān)合同步,可以取消這個(gè)合同,重新修改合同內(nèi)容,然后再

次上報(bào)。如果船運(yùn)專費(fèi)已經(jīng)開始解決報(bào)運(yùn)業(yè)務(wù),不能取消,必要走貨品增補(bǔ)流程。

設(shè)計(jì)實(shí)現(xiàn):

在表中增長(zhǎng)狀態(tài)字段,新增時(shí)默認(rèn)狀態(tài)為0草稿,當(dāng)銷售專責(zé)確認(rèn)無誤后,點(diǎn)擊“上報(bào)”狀

態(tài)變?yōu)?己上報(bào)。

當(dāng)船運(yùn)專責(zé)未解決報(bào)運(yùn)時(shí),銷售專責(zé)點(diǎn)擊“取消”狀態(tài)變?yōu)?,草稿。

狀態(tài)為0時(shí),只能銷售專責(zé)自己看到,當(dāng)狀態(tài)為1時(shí),她領(lǐng)導(dǎo)和報(bào)運(yùn)專責(zé)都可以看到。

1.??第四天??購(gòu)銷合同查看??SQL語句Power

2.附件業(yè)務(wù)實(shí)現(xiàn)

隨時(shí)攜帶主表ID

3.購(gòu)銷合同查看

合同下貨品,貨品下面附件,在購(gòu)銷合同中所有瀏覽,體現(xiàn)貨品和附件關(guān)系。

構(gòu)建對(duì)象關(guān)系

4.*細(xì)粒度權(quán)限控制

1)主菜單,左側(cè)菜單,按鈕,URL,辦法,業(yè)界都稱為粗粒度權(quán)限控制。尋常小系統(tǒng),基于顧

客,角色,權(quán)限架構(gòu)足夠用。

2)在實(shí)際大型項(xiàng)目中,光有上面顧客角色,URL這樣控制粒度不夠細(xì)致,尚有數(shù)據(jù)訪問權(quán)

限。

3)對(duì)數(shù)據(jù)訪問列是可以自己定制。

4)例如:訪問一種人員工資信息表,這個(gè)表中具有人員工資。

5)對(duì)數(shù)據(jù)訪問行可以受權(quán)限控制。

例如:工資表中有銷售部人員工資信息,尚有船運(yùn)部人員工資信息。當(dāng)銷售部領(lǐng)導(dǎo)登錄時(shí),

她只能看到銷售人員工資信息,她不能看到船運(yùn)部人員工資信息。

直接瀏覽數(shù)據(jù)庫(kù)表,工資列不能直接看到其值。乂寸這個(gè)數(shù)據(jù)庫(kù)列進(jìn)行加密。

上面統(tǒng)稱為數(shù)據(jù)訪問權(quán)限,這個(gè)權(quán)限加上角色顧客這樣這個(gè)系統(tǒng)才比較安全。也稱為細(xì)粒度

權(quán)限控制。

列訪問控制:

單獨(dú)建立表,權(quán)限分派某個(gè)角色能訪問哪些列:

1)行訪問控制:

只能看自己創(chuàng)立記錄,不能看到別人創(chuàng)立記錄

Wherecreate_by=當(dāng)前登陸人ID

部門領(lǐng)導(dǎo)看到,她能看到本部門人員創(chuàng)立記錄,不能看到其她部門人員創(chuàng)立記錄

Wherecreate_dept=當(dāng)前登陸人部門IDanduserjevel<4

跨部門訪問權(quán)限,分管領(lǐng)導(dǎo)跨部門,跨人員

再加一種配備表,分管領(lǐng)導(dǎo)可以管理人和部門;

分管領(lǐng)導(dǎo)

財(cái)務(wù)部

'社保組

工資組

令第七天異構(gòu)數(shù)據(jù)庫(kù)支持+出口報(bào)運(yùn)核心業(yè)務(wù)

a)核心業(yè)務(wù):貨運(yùn)管理第二個(gè)流程,出口報(bào)運(yùn)

b)定義:

做國(guó)際物流,貨品要運(yùn)往國(guó)外之前,向海關(guān)申報(bào)。向海美申報(bào)符合國(guó)標(biāo)貨品,和貨品體積和

重量信息。除了在合同中貨品基本信息外,在報(bào)運(yùn)時(shí)新增7個(gè)字段,長(zhǎng),寬,高,毛重,凈重,

出口單價(jià),含稅。

分次報(bào)運(yùn)

一種可以可以分多次來報(bào)運(yùn),體當(dāng)前運(yùn)送貨品數(shù)上。

例如:10000貨品,第一次報(bào)運(yùn)運(yùn)送6000,第二次報(bào)運(yùn)運(yùn)送4000.

可以多次報(bào)運(yùn),這種狀況很少。尋常大多是一次報(bào)運(yùn)。

C)分析設(shè)計(jì)

一種出口報(bào)運(yùn)單來自各種購(gòu)銷合同(一對(duì)多);給貨品信息新增7個(gè)字段內(nèi)容。

創(chuàng)立一種出口報(bào)運(yùn)單表

d)冗余設(shè)計(jì)

e)將貨品信息冗余到報(bào)運(yùn)單下貨品信息中。一種實(shí)現(xiàn)讀

取數(shù)據(jù)迅速,減小業(yè)務(wù)復(fù)雜度,業(yè)務(wù)邏輯簡(jiǎn)樸。

f)打斷設(shè)計(jì)實(shí)現(xiàn)跳躍查詢

避免關(guān)聯(lián)層級(jí)過多,數(shù)據(jù)量大了后,訪問奇慢。打斷設(shè)計(jì)。(表設(shè)計(jì)不成為文規(guī)定,表之

間關(guān)聯(lián)關(guān)系不超過4層)在設(shè)計(jì)時(shí)使用一種虛線箭頭來表達(dá)表之間是存在關(guān)聯(lián)關(guān)系,在設(shè)計(jì)

時(shí),不是往常外鍵關(guān)系。運(yùn)用一種字段來存儲(chǔ)主表和子表之間關(guān)系。X,Y

WherecontractJdin('x'y')。通過打斷設(shè)計(jì),表之間關(guān)系不存在,跳躍查詢。無需查詢

合同表,直接查詢合同下貨品表。(新增)

通過上面設(shè)計(jì),后續(xù)業(yè)務(wù)變更加簡(jiǎn)樸。

DatabaseGeneration-F|watMlBatelMUdel_l0|El

General|Options|Forro,|Selection|Previmr]

鉗PhysicalDataModel」日旨四<None>_▼[喻▼Q▼疽小生|/看

NameCodeParent

口E意見反饋FEEDBACKSPhysicalDataModel'PhysicalD...目

□E購(gòu)i肖合同CONTRACT/PhysicalDataModel'PhysicalD...

□口合同下貨物CONTR>\CT_PRODUCT_CPhysicalDataModel'PhysicalD...

□□生產(chǎn)廠家FACTORY.CPhysicalDataModel'PhysicalD...

JLS產(chǎn)品ITEMS_CPhysicalDataModel'PhysicalD...

M口報(bào)運(yùn)單EXPORT_CPhysicalDataModel'PhysicalD...

0囪]財(cái)簫蹴陰?EXPORT.PRODUCT.CPhysicalDataModel'PhysicalD...▼

]\Tablesf-

Filter:Selectedobject(s):|3/24

Selection:<Nameyourselection>▼?|刃

招▼I確定[|取消應(yīng)用GT)幫助

報(bào)運(yùn)單

「varchar(40)<pk>

EXK,r期

單H

datetime

號(hào)

詞varchar(200)

varchar(200)

以C

varchar(10)7

?

收No

varchar(100)

港varchar(1000)

運(yùn)

港varchar(100)

方varchar(100)

運(yùn)

varchar(10)

價(jià)

備varchar(10)

常varchar(100)

凈numeric(10,2)

體numeric(10,2)

金numeric(10,2)

AI額3

numeric(10,2)

態(tài)

創(chuàng)

建int

創(chuàng)varchar(40)

創(chuàng)

建varchar(40)

datetime

報(bào)運(yùn)商品明細(xì)

EXPORTPRODUCTIDvarchar(40)<pk>

EXPORTIDvarchar(40)<fkl>

I'ACTORYII)varchar(40)<fk2>

廠家名稱varchar(200)

產(chǎn)品名稱varchar(200)

貨號(hào)varchar(50)

包裝單位varchar(10)

數(shù)量int報(bào)運(yùn)商品附件

件數(shù)

intEXTEPRODUCTIDvarchar(40)<pk>

毛重

numeric(10,2)EXPORTPRODUCTIDvarchar(40)<fk2>

凈重numeric(10,2)

FACTORYIDvarchar(10)<fkl>

尺寸長(zhǎng)

numeric(10,2)廠家varchar(200)

尺寸寬numeric(10,2)

類型[系統(tǒng)下拉列表]int

尺寸高

numeric(10,2)貨號(hào)varchar(50)

出口總價(jià)

numeric(10,2)貨物照片varchar(200)

含稅

numeric(10.2)貨物描述varchar(600)

排序號(hào)

int數(shù)量int

包裝單位vaicliai(10)

單價(jià)numeric(10,2)

總金額numeric(10,2)

要求varchar(2000)

排序號(hào)int

業(yè)務(wù),勞保報(bào)表

領(lǐng)用周期不同

鞋帽子手套毛巾軍大衣洗衣粉飯盒???

班組110105

班組220203

6000個(gè)單元格

哪個(gè)單元格內(nèi)容進(jìn)行修改代碼只修改修改框。給每個(gè)文本框增長(zhǎng)一種隱藏域。1個(gè)信息要

提交。本來目是優(yōu)化,成果速度更慢。

最后每行添加一種隱藏域,當(dāng)這行數(shù)據(jù)進(jìn)行了修改,在文本框失去焦點(diǎn)事件onBlur,動(dòng)態(tài)設(shè)

立這個(gè)隱藏域?yàn)閘o在修改代碼時(shí)依照這個(gè)值判斷,只有1時(shí)候,數(shù)據(jù)才進(jìn)行修改。不是1

跳過。

批量新增,增長(zhǎng)一種新增按鈕,點(diǎn)一次調(diào)研一次addRecord辦法,它屬性值,都為空串。

批量刪除,表格dhtml提供刪除行操作,remove,它把行從table中刪除。數(shù)據(jù)庫(kù)并沒有刪除,

刪除各種框時(shí),記錄下它們id值,拼成一種串,用逗號(hào)隔開。后臺(tái)代碼判斷這個(gè)隱藏域提交

值不為空,刪除這幾種數(shù)據(jù)。

2.知識(shí)回顧

打斷設(shè)計(jì):

1.數(shù)據(jù)庫(kù)設(shè)計(jì)先按照三范式,之后對(duì)某些需要優(yōu)化地方,使用反三范式設(shè)計(jì)(冗余)(以空間

換設(shè)計(jì))

2.實(shí)際業(yè)務(wù)非常復(fù)雜,關(guān)聯(lián)層級(jí)過多,隨著系統(tǒng)上線運(yùn)營(yíng),顧客數(shù)據(jù)隨著使用時(shí)間,線性增

長(zhǎng)。不成文規(guī)定:關(guān)聯(lián)層級(jí)在設(shè)計(jì)不超過4層。打斷設(shè)計(jì),在主表中加一種字段,字段來存

儲(chǔ)兩個(gè)表之間關(guān)系。各種時(shí)候,之間用逗號(hào)隔開。普通狀況下都是一次報(bào)運(yùn),就是一種合同

一次報(bào)運(yùn),個(gè)別狀況下各種合同一次報(bào)運(yùn),極端狀況下3個(gè)合同一次報(bào)運(yùn)。

由「打斷設(shè)il,實(shí)現(xiàn)“跳跋查詢”。報(bào)運(yùn)需要合同下貨品信息時(shí),無需通過各種合同對(duì)象,就

可以直接查詢貨品信息,通過這個(gè)打斷設(shè)計(jì)字段,運(yùn)用SQLin子查詢。

核心業(yè)務(wù):貨運(yùn)管理,出口報(bào)運(yùn)

業(yè)務(wù),杰信獲得訂單后,安排各種生產(chǎn)廠家生產(chǎn)貨品,與此同步杰信準(zhǔn)備報(bào)關(guān)材料,除了海

關(guān)規(guī)定某些制式文檔和杰信系統(tǒng)打印《出口商品報(bào)運(yùn)單》,交給海關(guān)進(jìn)行審核。

3.頁(yè)面控制

a)報(bào)運(yùn)單新增,暗度陳倉(cāng)。

b)顧客選取報(bào)運(yùn)關(guān)聯(lián)各種合同,代碼直接進(jìn)行數(shù)據(jù)保存。

保存有關(guān)合同id集合,合同號(hào)集合,保存冗余貨品信

息,保存冗余附件信息。

c)批量修改

Mrecord自定義控件,來信息補(bǔ)錄。批晟,在頁(yè)面上運(yùn)用DHTML動(dòng)態(tài)表格技術(shù),實(shí)現(xiàn)表格元

素動(dòng)態(tài)增長(zhǎng),動(dòng)態(tài)創(chuàng)立行,動(dòng)態(tài)創(chuàng)立單元格,運(yùn)用innerHTML動(dòng)態(tài)向單元格插入文本框,帶

數(shù)據(jù)。在后臺(tái)準(zhǔn)備數(shù)據(jù),拼接成js串,將它寫入一種變量中,在頁(yè)面jQueryready事件中,調(diào)

用這個(gè)變量,形成各種js串,依次執(zhí)行。動(dòng)態(tài)添加到表格中。由于js運(yùn)營(yíng)不久,顧客感覺不

到添加過程,覺得直接展示。這樣為顧客提供一種非常以便操作??梢耘縼硇薷呢浧沸畔ⅰ?/p>

每行運(yùn)用一種隱藏域,來存儲(chǔ)與否修改標(biāo)記,這樣在記錄行數(shù)過多時(shí),修改效應(yīng)也非常高。

Mrecord控件它可以實(shí)現(xiàn)動(dòng)態(tài)新增,還可以實(shí)現(xiàn)批量刪除,自動(dòng)排序。

令第八天裝箱、委托、發(fā)票,財(cái)務(wù)業(yè)務(wù)+合同歸檔

1.貨運(yùn)管理涉及:購(gòu)銷合同、出口報(bào)運(yùn)、裝箱、委托、發(fā)票、

財(cái)務(wù)記錄。

2.裝箱

海關(guān)批準(zhǔn)杰信申請(qǐng),像船東申請(qǐng)集裝箱,杰信找貨代公司請(qǐng)她幫著訂箱。杰信找拖車公司,

訂拖車,拖車公司到碼頭拉空箱。拉著空箱到生產(chǎn)廠家倉(cāng)庫(kù)。生產(chǎn)廠家在杰信驗(yàn)貨員監(jiān)督IS

先將貨品裝到紙箱子中,然后在將紙箱子裝入集裝箱。拖車?yán)鴿M箱到海關(guān)指定碼頭指定地

方卸貨。這幾種箱子風(fēng)吹雨淋。海關(guān)進(jìn)行抽檢。直到船來了。將集裝箱放到船上。開船從裝

運(yùn)港出發(fā),到目港。

裝箱時(shí),產(chǎn)生發(fā)票號(hào)。同步產(chǎn)生發(fā)票日期。

?種裝箱單來自各種報(bào)運(yùn)單(?對(duì)多)

發(fā)票,委托

在貨品裝船同步,杰信就開具發(fā)票,這個(gè)發(fā)票只是一種告知單,它內(nèi)容就是告訴客戶貨品已

經(jīng)發(fā)出,請(qǐng)支付剩余款項(xiàng)。同步快遞客戶一種提單??蛻羰盏桨l(fā)票告知后,支付剩余款項(xiàng),同

步當(dāng)貨品到達(dá)目港后,客戶拿著提單去提貨??蛻袈?lián)系貨代公司,聯(lián)系拖車公司,拖車?yán)?/p>

滿箱到客戶指定倉(cāng)庫(kù),卸貨??蛻趄?yàn)貨,整個(gè)貨運(yùn)流程完畢,杰信和客戶合同完畢。

3.財(cái)務(wù)

財(cái)務(wù)模塊不屬于貨運(yùn)業(yè)務(wù)流程。它是杰信自己內(nèi)部進(jìn)行財(cái)務(wù)核算模塊。記錄這單合同有無賺

取利潤(rùn)。形成記錄報(bào)表給領(lǐng)導(dǎo)展示。

4.一對(duì)一特殊設(shè)計(jì)

一種委托來自一種發(fā)票,一種發(fā)票來自一種委托,一種財(cái)務(wù)來自一種委托。(一對(duì)一)

一對(duì)一所有表內(nèi)容可以合成一張表,構(gòu)造不清晰,業(yè)務(wù)不清晰。

發(fā)票,委托,財(cái)務(wù)表主鍵就是裝箱單ID。

上面三張表,它們主鍵既外鍵。主外鍵一種值。

舉例,假定拿到ID,無論是裝箱、委托、發(fā)票、財(cái)務(wù),都可以查詢它們其中任何一種數(shù)據(jù)。

實(shí)現(xiàn)跳躍查詢。

財(cái)務(wù)需要貨品信息和附件信息〃通過打斷設(shè)計(jì),可以直接跳過發(fā)票、委托,直接找到裝箱,通

過裝箱打斷設(shè)計(jì)字段,直接去搜索報(bào)運(yùn)下貨品和附件信息。由于之邁進(jìn)行了冗余設(shè)計(jì),財(cái)務(wù)

所需貨品信息和附件信息,在報(bào)運(yùn)中均有。查詢效率提高數(shù)倍。

5.出口報(bào)運(yùn)狀態(tài)

0-草稿1-己上報(bào)2-裝箱。委托4-發(fā)票5-財(cái)務(wù)

體現(xiàn)流程,客戶隨時(shí)想理解訂單進(jìn)展?fàn)顩r,流程跟蹤。在報(bào)運(yùn)列表頁(yè)面隨時(shí)理解某個(gè)合同進(jìn)

行到哪里。

6.數(shù)據(jù)庫(kù)優(yōu)化

a)數(shù)據(jù)庫(kù)表設(shè)計(jì)

?由本來注重節(jié)約空間,變?yōu)樽⒅匦阅堋_\(yùn)用冗余,實(shí)現(xiàn)性能數(shù)倍提高。

?表優(yōu)化,監(jiān)測(cè)數(shù)據(jù)執(zhí)行時(shí)間。分表1)分字段(縱向分表)精簡(jiǎn)完核心查詢它只需

要近30個(gè)字段。本來需要1分多查詢,當(dāng)前只1秒多呈現(xiàn)頁(yè)面。2)數(shù)據(jù)(橫向分

表)一種表數(shù)據(jù)量過人。業(yè)務(wù)中有曲數(shù)據(jù)不慣用,將這此不慣用數(shù)據(jù)放到此外一張

表中,稱這個(gè)表為歷史表。專門做一種歷史查詢模塊,提供顧客還可以查詢。

?表之間關(guān)聯(lián)關(guān)系不要太復(fù)雜。打斷設(shè)計(jì)

SQL優(yōu)化,在做復(fù)雜關(guān)聯(lián)關(guān)系,SQL優(yōu)化極其重要。

Select*fromcontract_c,contract_product_c,ext_cproduct_c,factory_c

Wherecontractjd,contract_product_id,factory_id...

b)先找最小成果集,只查詢某個(gè)合同下貨品,只查詢某

個(gè)貨品下附件,只要查看這個(gè)合同

C)數(shù)據(jù)庫(kù)選型

?單個(gè)數(shù)據(jù)庫(kù)優(yōu)先選取Oracle,DB2

集群mysql,讀寫分離,單獨(dú)讀數(shù)據(jù)數(shù)據(jù)庫(kù),單獨(dú)寫數(shù)據(jù)庫(kù)

Web應(yīng)用服務(wù)增長(zhǎng),可以增大訪問量,同步分擔(dān)數(shù)據(jù)庫(kù)服務(wù)器壓力。

分表,購(gòu)銷合同歷史

當(dāng)前活動(dòng)表,它和歷史表構(gòu)造同樣。

主模塊中所有表,歷史中均有有。例如:購(gòu)銷合同,合同、貨品、附件都需要相應(yīng)歷史表。

創(chuàng)立domain

批量新增SQL,JDBCjdbcTemplespring

7.在一種系統(tǒng)架構(gòu)中

普通訪問數(shù)據(jù)兩種方式

?hiberntate/mybatis完畢數(shù)據(jù)持久化:新增,修改,刪除,簡(jiǎn)樸查詢

jdbc/jdbcTemlpate/dbutil批顯操作,批量新增,批量修改,級(jí)聯(lián)刪除,記錄查詢

重要框架來完畢尋常業(yè)務(wù),普通批量查詢使用jdbc,對(duì)于這些模塊,緩存就要注意使用。有

時(shí)不要配備緩存。

購(gòu)銷合同歸檔,取消歸檔

--合同表數(shù)據(jù)進(jìn)行歸檔

INSERTINTOcontracthisc

SELECT*FROMcontract_cWHEREcontract_idIN('x'/y')

--貨品數(shù)據(jù)進(jìn)行歸檔

INSERTINTOcontract_product_his_c

SELECT*FROMcontract_product_cWHEREcontract_prodtct_idIN(SELECTcontract_prodtct_id

FROMcontract_product_cWHEREcontract_idIN('x7y'))

-附件數(shù)據(jù)進(jìn)行歸檔

INSERTINTOext_cproduct_his_c

SELECT*FROMext_cproduct_cWHEREext_cproduct_idIN(SELECText_cproduct_idFROM

ext_cproduct_cWHEREcontract_product_idIN(SELECTcontract_product_idFROM

contract_product_cWHEREcontractjdINfx'/y'))

--刪除合同

DELETEFROMcontract_c

WHEREcontractjdIN('x'/y')

--刪除貨品

DELETEFROMcontract_product_c

WHEREcontract_product_idIN(SELECTcontract_product_idFROMcontract_product_cWHERE

contractjdINCx'.V))

--刪除附件

DELETEFROMext_cproduct_c

WHEREext_cproduct_idIN(SELECText_cproduct_idFROMext_cproduct_cWHERE

contract_product_idIN(SELECTcontract_product_idFROMcontract_product_cWHERE

contract_idIN('x7y'))

8.知識(shí)回顧

a)業(yè)務(wù):貨運(yùn)管理,

b)購(gòu)銷合同,出口報(bào)運(yùn),home裝箱單(預(yù)裝箱),裝箱,

委托,發(fā)票(告知),財(cái)務(wù)記錄。

【面試】工作流實(shí)既有什么好處?

杰信系統(tǒng)實(shí)現(xiàn)狀態(tài)控制流程。

瀏覽每步流程開始時(shí)間,操作人,結(jié)束時(shí)間,審核人

突然在流程環(huán)節(jié)中增長(zhǎng)一步

工作流擴(kuò)充流程時(shí),非常以便,修改一下流程圖,工作流自動(dòng)記錄所有操作人和操作時(shí)間,

操作意見。狀態(tài)代碼配合T.作流來實(shí)現(xiàn)。狀態(tài)采用常量來定義,只有新增長(zhǎng)狀態(tài),才需要編

碼。

C)表設(shè)計(jì)

委托,發(fā)票,財(cái)務(wù)它們表主鍵既外鍵,它們ID值都是裝箱ID。由于它們4個(gè)關(guān)系都是一對(duì)一。

關(guān)聯(lián)時(shí)近來配備,需要前面業(yè)務(wù)數(shù)據(jù)時(shí),可以實(shí)現(xiàn)跳躍查詢。這樣查詢效率高。

d)頁(yè)面設(shè)計(jì)

裝箱新增,它需要在新增頁(yè)面體現(xiàn)裝箱和報(bào)運(yùn)關(guān)系。DivURL鏈接。

攜帶信息ID,checkbox中;no也放到checkbox,用豎杠隔開,一種checkbox傳遞了兩個(gè)值,無

需再次查詢數(shù)據(jù)庫(kù),提高性能,手工解串。(大量(超過10個(gè)字段)或者信息比較敏感,不

推薦使用這種辦法,推薦還使用通過id查找其她內(nèi)容)

令第九天圖形報(bào)表~讓微軟都羨慕報(bào)表

?Java要實(shí)現(xiàn)圖形報(bào)表均有什么方式?

?jFreeChart純javaAPI,運(yùn)用生成一張圖片。

?excel圖形報(bào)表,poi不能直接操作圖形報(bào)表控件。變相解決,先做一種excel模板,插入

好圖表控件,然后運(yùn)用poi動(dòng)態(tài)設(shè)立它數(shù)據(jù)。顧客打開excel,圖表直接呈現(xiàn)。

第三方報(bào)表軟件,可視化開發(fā)。開發(fā)效率極高??梢暬季纸缑妫鋫鋽?shù)據(jù)源即可。(SQL成

果集)。收費(fèi)。數(shù)巨報(bào)表(10w,每年服務(wù)費(fèi)lw)。做一種應(yīng)用程序,(C/S程序),IE上安裝

插件。兼容性。

amChartsFLASH,只需要構(gòu)建數(shù)據(jù)xmL

1)需要swf控件,例如餅形通用

2)setting.xml不通用

data.xmKdata.txt,xml格式;更加直觀,不通用

chartcontroller

factorvSale-----卞生成fact0rysale/data.xmlfactorysql/index.xml

^factorysale//1

jStat.jsp?forword

/productsale

/“productsale/index.html

productsale-----\^figproductsale/data.xml

sqlDao查詢成果集封裝,通用

sqlDao.extcuteList

List<String>一維字符串?dāng)?shù)組

□£actory__namesumnum

三花~I4680I呼華

□精藝3664

4680

□民益4200

□天順6148

華藝3502[精藝

文水志選1080

3664

?工作原理

amCharts只需要一次配備;公用flash,改造index.html,訪問公用swfobject.js和公用flashswf

本來文獻(xiàn)。樣式文獻(xiàn)訪問本地,這樣可以以便修改配備顏色,坐標(biāo),顯示樣式等。數(shù)據(jù)

data.xml文獻(xiàn)。將從數(shù)據(jù)庫(kù)中讀取數(shù)據(jù)拼接成xml節(jié)點(diǎn),寫入到這個(gè)文本文獻(xiàn)中。轉(zhuǎn)向jStmt.jsp

統(tǒng)?轉(zhuǎn)向相應(yīng)forward參數(shù)目錄下index.html。(注意:html瀏覽器默認(rèn)均有緩存,在做

index.html要去掉緩存)

<metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"/>

<metahttp-equiv="pragma1content="no-cache">

<metahttp-equiv="Cache-Control"content="no-cachezmust-revalidate">

1.<metahttp-equiv=,fexpires"content=nWed,26Feb

199708:21:57GMTn>

2.jFreeChart>exceRamChartsPK比較

jFreeChart純javaapi,缺陷:圖形非常粗糙,它實(shí)際是運(yùn)用jFreeChartapi生成圖片,體現(xiàn)力

差,專門api需要記憶。

a)生產(chǎn)廠家銷售狀況?餅形圖

需求:

生產(chǎn)廠家銷售狀況,廠家+銷售

SELECT

^p.sumnum

FROM

(SELECTfactory_id,factory_nameFROMfactory_cWHEREstate=l)f

LEFTJOIN

(

SELECTfactory_id,SUM(cnumber)ASsumnumFROMcontract_product_c

GROUPBYfactoryjd

)cp

ONf.factoryjd=cp.factory_id

WHEREcp.sumnumISNOTnull

文水志孟:4,64%

b)產(chǎn)品銷售排行?柱狀圖

需求:

產(chǎn)品銷售狀況,暢銷產(chǎn)品前io名,產(chǎn)品+銷售

SELECTproduct_no,SUM(criumber)ASsumnumFROMcontract_product_c

GROUPBYproduct_noORDERBYsumnumDESC

LIMIT10

繪圖區(qū)1e

2500-1

2000-

1500-

1000-

c)系統(tǒng)訪問壓力圖?曲線圖

需求:系統(tǒng)訪問壓力圖

記錄顧客登陸系統(tǒng),就記錄一條

'西1Result2Profiler。3Messages4TableData■,5Info6History

*」£曲一▼AllRow:?SowsinaRw<>First@0同,。,?!?0[Refresh1

Row:lows:

LOGIN_LOG_IDLOGIU_NAMEIP_ADDRESSLOGIN_TIME

□00330EC5-4F2C-48BB-AFC1-ADC5CBAEB7AC0011調(diào)試192.168.1.1102012-01-1714:04:46

□009275C9-7459-4862-B339-C7CD13C244D60011調(diào)試192.168.1.1102012-01-1711:57:33

□00D0157A-AD60-4856-802E-A3461F6939E00011調(diào)試127.0.0.12011-10-0712:37:29

□00DA73C6-8DB4-402A-BEE0-95BDD79D0CDB0011調(diào)試192.168.1.1032012-09-1110:56:23

□011BD53F-99AF-4B45-B23B-4E02723BE7D70011調(diào)試192.168.1.1062012-10-2914:23:51

□015CC22A-5C53-4597-B4AC-B51694D75C860011詞試192.168.1.1032012-01-2016:03:49

□01970044-E8A0-41DD-A7CB-EF0E012FE7980011詞法192.168.1.1032012-01-1811:40:17

□01C6DB18-D8AC-48CE-B3F2-09BCDFD8D9A30011調(diào)試127.0.0.12011-08-2122:34:13

記錄每天登陸系統(tǒng)次數(shù)

SELECTSUBSTRING(login_time,l,10),COUNT(login_time)FROMlogin_log_p

GROUPBYSUBSTRINGfloginJimeJJO)

記錄24小時(shí)系統(tǒng)訪問次數(shù)

當(dāng)數(shù)據(jù)不夠時(shí),運(yùn)用暫時(shí)表湊數(shù)據(jù)

SELECT

t.al,IFNULL(p.countnum,0)AScountnum

FROM

(SELECTalFROMonline_t)t

LEFTJOIN

SELECTSUBSTRING(login_time,12,2)ASal,COUNT(login_time)AScountnumFROMlogin_log_p

GROUPBYSUBSTRING(login_time42,2)

)P

ON

t.al=p.al

系統(tǒng)訪問壓力圖

總結(jié):

圖形報(bào)表業(yè)界一經(jīng)相稱成熟,提出公用,稱作報(bào)表引擎。

系統(tǒng)監(jiān)控,系統(tǒng)想懂得系統(tǒng)訪問瓶頸在哪里?

需求

系統(tǒng)瓶頸是指,訪問最長(zhǎng)時(shí)間,寫數(shù)據(jù)操作,寫磁盤文獻(xiàn)操作。都比較耗時(shí),顧客體驗(yàn)不好。

1)找出系統(tǒng)這些操作慢地方,

2)分析因素

優(yōu)化,顧客使用頻繁模塊,對(duì)其優(yōu)化

實(shí)現(xiàn)一種性能監(jiān)控程序

d)初期使用繼承方式

記錄開始時(shí)間,記錄結(jié)束時(shí)間,結(jié)束時(shí)間-開始時(shí)間=耗時(shí)

e)寫到日記文獻(xiàn)中,寫到數(shù)據(jù)庫(kù)中

f)攔截器

配備springmvc攔截器,記錄開始時(shí)間,結(jié)束時(shí)間,打口記。

g)開發(fā)環(huán)節(jié)

1)寫一種攔截器,實(shí)現(xiàn)一種接口Handlerinterceptor

2)實(shí)現(xiàn)共用變量,安全性

配備springmvc攔截器配各,springmvc-servlet.xml

packagecn.iteast.jk.interceptor;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

importorg.springframework.core.NamedThreadLocal;

importorg.springframework.web.servlet.Handlerlntercepto";

importorg.springframework.web.servlet.ModelAndView;

importcommon.Logger;

〃功能:實(shí)現(xiàn)對(duì)所有類辦法執(zhí)行時(shí)間監(jiān)控

publicclassTimeinterceptorimplementsHandlerlntercepto"{

〃引入Iog4j日記

privatestaticLoggerlog=Logger.getLogger(Timelnterceptor.class);

〃運(yùn)用ThreadLocal綁定?種變量,完畢線程安全

NamedThreadLocal<Long>startTimeThreadLocaI=new

NamedThreadLocal<Long>("startTimeThreadLocar');

〃解決類之前,執(zhí)行preHandle辦法

@Override

publicbooleanpreHandlefHttpServl

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論