貴陽雙龍區(qū)建設(shè)局網(wǎng)站谷歌搜索引擎香港免費(fèi)入口
目錄
- 一、摘要
- 1.1 項(xiàng)目介紹
- 1.2 項(xiàng)目詳細(xì)錄屏
- 二、功能模塊
- 三、使用角色
- 3.1 施工人員
- 3.2 管理員
- 四、數(shù)據(jù)庫設(shè)計
- 4.1 用戶表
- 4.2 分公司表
- 4.3 角色表
- 4.4 數(shù)據(jù)字典表
- 4.5 工程項(xiàng)目表
- 4.6 使用材料表
- 4.7 使用材料領(lǐng)用表
- 4.8 整體E-R圖
- 五、系統(tǒng)展示
- 六、核心代碼
- 6.1 查詢工程項(xiàng)目
- 6.2 工程物資申請
- 6.3 新增工程進(jìn)度
- 七、免責(zé)說明
一、摘要
1.1 項(xiàng)目介紹
基于Vue+SpringBoot+MySQL的天然氣工程業(yè)務(wù)管理系統(tǒng),包含工程項(xiàng)目檔案模塊、項(xiàng)目進(jìn)度模塊、項(xiàng)目現(xiàn)場照片模塊、物資檔案模塊、物資領(lǐng)用單模塊、工程資金申請模塊,還包含系統(tǒng)自帶的用戶管理、部門管理、角色管理、菜單管理、日志管理、數(shù)據(jù)字典管理、文件管理、圖表展示等基礎(chǔ)模塊,天然氣工程業(yè)務(wù)管理系統(tǒng)基于角色的訪問控制,給天然氣管理員、施工隊長、財務(wù)人員使用,可將權(quán)限精確到按鈕級別,您可以自定義角色并分配權(quán)限,系統(tǒng)適合設(shè)計精確的權(quán)限約束需求。
1.2 項(xiàng)目詳細(xì)錄屏
二、功能模塊
本課題研究的內(nèi)容是開發(fā)天然氣工程建設(shè)項(xiàng)目管理系統(tǒng),要實(shí)現(xiàn)內(nèi)容包括以下 11 11 11 點(diǎn)。
- 登錄功能,實(shí)現(xiàn)基于賬號、密碼和圖形驗(yàn)證碼的登錄;
- 人員信息管理,實(shí)現(xiàn)對用戶的增刪改查操作;
- 預(yù)算管理,實(shí)現(xiàn)對預(yù)算項(xiàng)目的增刪改查操作;
- 結(jié)算管理,實(shí)現(xiàn)對訂單的結(jié)算操作;
- 工程進(jìn)度管理,實(shí)現(xiàn)對工程項(xiàng)目的增刪改查操作;
- 資金申請/審批,實(shí)現(xiàn)對資金申請單的增刪改查和審批的操作;
- 統(tǒng)計報表;
- 組織架構(gòu)管理,實(shí)現(xiàn)對天然氣公司內(nèi)部組織架構(gòu)的維護(hù);
- 日志管理模塊,實(shí)現(xiàn)對用戶操作進(jìn)行自動化記錄;
- 文件管理模塊,對系統(tǒng)中涉及到的圖片、文檔進(jìn)行統(tǒng)一化管理;
- 菜單權(quán)限管理,實(shí)現(xiàn)就與角色的訪問控制,對以上模塊的數(shù)據(jù)進(jìn)行統(tǒng)計分析。同時系統(tǒng)運(yùn)行穩(wěn)定、操作簡易、邏輯清楚、權(quán)限劃分明確。
就整個系統(tǒng)面向用戶而言,需要劃分兩個不同用戶角色:系統(tǒng)管理員、施工人員和財務(wù)人員,施工人員可以發(fā)起對預(yù)算、結(jié)算、工程、資金的申請;財務(wù)人員可以對資金申請單進(jìn)行劃扣、審核,對工程進(jìn)度、預(yù)算等明細(xì)進(jìn)行監(jiān)控;系統(tǒng)管理員擁有系統(tǒng)的全部權(quán)限,包括日志管理、用戶管理、部門管理、文件管理、數(shù)據(jù)字典的增刪改查操作。
運(yùn)行在瀏覽器上的模塊可分為“施工人員管理”和“管理員管理”兩大模塊;其中“施工人員管理”屬于前臺管理,施工人員可以登錄該平臺,進(jìn)入管理界面。
三、使用角色
3.1 施工人員
3.2 管理員
四、數(shù)據(jù)庫設(shè)計
4.1 用戶表
4.2 分公司表
4.3 角色表
4.4 數(shù)據(jù)字典表
4.5 工程項(xiàng)目表
4.6 使用材料表
4.7 使用材料領(lǐng)用表
4.8 整體E-R圖
五、系統(tǒng)展示
六、核心代碼
6.1 查詢工程項(xiàng)目
@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查詢工程項(xiàng)目")
public Result<IPage<ProjectData>> getByPage(@ModelAttribute ProjectData projectData ,@ModelAttribute PageVo page){QueryWrapper<ProjectData> qw = new QueryWrapper<>();if(!ZwzNullUtils.isNull(projectData.getTitle())) {qw.like("title",projectData.getTitle());}if(!ZwzNullUtils.isNull(projectData.getType())) {qw.eq("type",projectData.getType());}if(!ZwzNullUtils.isNull(projectData.getUserName())) {qw.like("user_name",projectData.getUserName());}IPage<ProjectData> data = iProjectDataService.page(PageUtil.initMpPage(page),qw);return new ResultUtil<IPage<ProjectData>>().setData(data);
}
6.2 工程物資申請
@RequestMapping(value = "/addOne", method = RequestMethod.POST)
@ApiOperation(value = "新增物資使用上報單")
public Result<MaterialOrder> addOne(@RequestParam String itemId, @RequestParam BigDecimal number,@RequestParam String projectId,@RequestParam String purpose){MaterialOrder order = new MaterialOrder();order.setItemId(itemId);order.setProjectId(projectId);order.setNumber(number);order.setPurpose(purpose);ProjectData p = iProjectDataService.getById(projectId);if(p == null) {return ResultUtil.error("工程項(xiàng)目不存在");}order.setProjectName(p.getTitle() + "-" + p.getType() + "-" + p.getDaySize() + "天");MaterialData m = iMaterialDataService.getById(order.getItemId());if(m == null) {return ResultUtil.error("物資品類不存在");}order.setTitle(m.getTitle());order.setType(m.getType());order.setScene(m.getScene());order.setStatus("未審核");iMaterialOrderService.saveOrUpdate(order);return ResultUtil.success();
}
6.3 新增工程進(jìn)度
@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ApiOperation(value = "新增工程進(jìn)度")
public Result<ProjectProgress> insert(ProjectProgress projectProgress){ProjectData p = iProjectDataService.getById(projectProgress.getItemId());if(p == null) {return ResultUtil.error("項(xiàng)目不存在");}projectProgress.setItemName(p.getTitle() + "-" + p.getType() + "-" + p.getDaySize() + "天");User currUser = securityUtil.getCurrUser();projectProgress.setUserId(currUser.getId());projectProgress.setUserName(currUser.getNickname());projectProgress.setProTime(DateUtil.now());iProjectProgressService.saveOrUpdate(projectProgress);return new ResultUtil<ProjectProgress>().setData(projectProgress);
}
七、免責(zé)說明
- 本項(xiàng)目僅供個人學(xué)習(xí)使用,商用授權(quán)請聯(lián)系博主,否則后果自負(fù)。
- 博主擁有本軟件構(gòu)建后的應(yīng)用系統(tǒng)全部內(nèi)容所有權(quán)及獨(dú)立的知識產(chǎn)權(quán),擁有最終解釋權(quán)。
- 如有問題,歡迎在倉庫 Issue 留言,看到后會第一時間回復(fù),相關(guān)意見會酌情考慮,但沒有一定被采納的承諾或保證。
下載本系統(tǒng)代碼或使用本系統(tǒng)的用戶,必須同意以下內(nèi)容,否則請勿下載!
- 出于自愿而使用/開發(fā)本軟件,了解使用本軟件的風(fēng)險,且同意自己承擔(dān)使用本軟件的風(fēng)險。
- 利用本軟件構(gòu)建的網(wǎng)站的任何信息內(nèi)容以及導(dǎo)致的任何版權(quán)糾紛和法律爭議及后果和博主無關(guān),博主對此不承擔(dān)任何責(zé)任。
- 在任何情況下,對于因使用或無法使用本軟件而導(dǎo)致的任何難以合理預(yù)估的損失(包括但不僅限于商業(yè)利潤損失、業(yè)務(wù)中斷與業(yè)務(wù)信息丟失),博主概不承擔(dān)任何責(zé)任。
- 必須了解使用本軟件的風(fēng)險,博主不承諾提供一對一的技術(shù)支持、使用擔(dān)保,也不承擔(dān)任何因本軟件而產(chǎn)生的難以預(yù)料的問題的相關(guān)責(zé)任。