LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

wqdfnsd發表於2020-06-29

*框架整體程式碼層次

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

整體採用多層工廠/依賴注入模式。

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

*開發示例

力軟框架提供了比較友好的開發嚮導

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

在用力軟框架進行快速開發時有兩種開發模式,一種是純自定義表單無需編譯的,一種是需要生成程式碼,重新編譯的。

*程式碼生成開發模式

選擇一種開發嚮導

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

指定資料來源、對各項開發引數進行設定

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

跟著開發嚮導一步步設定就可以自動生成程式碼,程式碼會根據開發者的設定放入到指定專案的指定位置。

標準的 MVC 架構,表示層程式碼在 LeaRun.Application.Web 專案下。

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

實體層程式碼被自動放置在 Entity 下

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

下面是實體層程式碼。

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

下面是業務邏輯層,這裡是按工廠模式生成的,當然框架裡已經提供了 IOC 容器也可以直接調整成依賴注入模式。

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

介面層程式碼

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

資料訪問層,資料工廠已經將對資料庫的訪問提供了 EF 及 Dapper 這兩種 ORM 的封,絕大部分情況下不需要寫 SQL 語句,普通的 Lambda 表示式即可完成各種查詢,程式碼整潔,可讀性很好。

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

如果需要換成依賴注入模式,只需在 IOC 配置檔案註冊即可

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

下面是 MVC 中的檢視層

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

前後端透過 ajax+json 互動。

就像上面,後臺返回的 json 資料,很簡單的就繫結到了表格上。像資料字典的也不用寫 SQL 關聯,這裡的資料字典,直接就可以顯示來名稱。當然這些程式碼都是可以生成出來的,需要二次開發的話可以直接修改這些程式碼。

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

下面是表單頁裡的內容

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

其實裡面很多功能是元件化的,像單據編碼,就是通才編碼規則生成的。那種下拉框的資料繫結很簡單在前端只用一句程式碼就解決了,就像上圖,看一下效果,訂單-管理,主從表結構的,這個是列表頁。

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

這個是表單錄入的介面。

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

當然,手機端的程式碼也能一起生成,不過在最新的v7.0.6版本,app/小程式已經使用vue+uni-app 框架。

*表單設計器開發模式

表單設計器開發模式比較適合沒有程式設計基礎或者業務邏輯相對簡單的功能開發。

看一下表單設定器

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

就是這樣在框架開發平臺裡拖拖控制元件就好了。

報表開發

在框架開發平臺裡,只用輸入 SQL 語句也可以完成圖形報表的開發。

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

按照上圖的開發嚮導進行設定,直接就可以得到如下的圖形報表,包括餅圖、折線圖、柱狀圖等,圖形元件是用的開源免費的echarts。


LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

開發完成後就可以直接把開發出來的功能模組進行授權操作

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

這個是框架內建的工作流元件,可以進行視覺化流程設計。

LR敏捷軟體平臺v7開發示例,功能設計模組化,UI特色明顯(長文)

*過程中會涉及一些第三方外掛元件,基本清單如下

後端

ASP.NET MVC5

EntityFramework ORM

Dapper ORM

NPOI Excel 操作

log4net 系統日誌

Newtonsoft.Json Json 處理

signalR Websocket

unity 依賴注入容器

前端

JS 框架:Jquery-1.10.2.min、jquery-ui

CSS 框架:Bootstrap

資料表格:JqGrid、JfGrid

分頁外掛: pagination

上傳檔案:Uploadify

佈局:Layout

客戶端驗證:JQuery Validation

圖表:Highcharts、echarts

字型圖片:Font Awesome

富文字:ckeditor

日期控制元件: My97DatePicker

樹結構控制元件:jQuery WTree

對話方塊:layer

程式碼編輯器:syntaxhighlighter

日程外掛:fullcalendar

工作流流程圖:flow.js

工作流表單富文字: simditor

手機端

WebApi 介面:nancy

Js 框架:jquery mobile

封裝工具:cordova

開發環境:vs2017

*開發及部署環境

開發環境

PC 端開發 vs2012 及以上。

手機端開發 vs2017。

sqlserver2005\oracle11g\mysql4.5 及以上版本。

伺服器端

作業系統:Microsoft Windows Server 2008R2 及以上

其它軟體:IIS 7.0、.netframwork4.5


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31545518/viewspace-2701162/,如需轉載,請註明出處,否則將追究法律責任。

相關文章