CRM客户关系管理系统开发第十九讲——实现客户拜访记录管理模块中条件查询客户拜访记录列表的功能
在客戶拜訪記錄列表頁面上準備一些篩選條件
首先,咱得在客戶拜訪記錄列表頁面上準備一些篩選條件,不妨我們按照拜訪時間來進行篩選。之前咱在實現聯系人管理模塊中條件查詢聯系人列表的功能時,文本輸入框使用的是Struts2框架里面的標簽,這是因為如果我們是要帶條件查詢聯系人列表的話,那么一定得在文本輸入框中回顯條件。所以,這里不妨我們一開始將篩選條件寫成下面這樣。
當然了,我們同樣需要在客戶拜訪記錄列表頁面上添加一個日期插件,這是因為在拜訪時間對應的文本框中輸入時間進行篩選時,不能讓我們自己手動瞎輸入,應該彈出一個日歷小窗口,讓我們選擇對應的時間。關于如何在頁面中添加一個這樣的日期插件,我就勿須多言了,上一講中就已經講過了。
改寫SaleVisitAction中的findAll方法
首先,咱要在SaleVisitAction中接收從客戶拜訪記錄列表頁面中傳遞過來的參數,查詢的開始日期倒是好接收,直接使用模型驅動這種方式處理請求參數即可,查詢的結束日期就不能這樣想當然地進行處理了,必須得采用屬性驅動的第一種方式(即提供屬性的set方法的方式)。
//接收數據(查詢的結束日期) private Date visit_end_time;public void setVisit_end_time(Date visit_end_time) {this.visit_end_time = visit_end_time; }這樣是不是就萬事大吉了呢?你還是想多了,試想我們要在客戶拜訪記錄列表頁面上回顯拜訪時間輸入框中的條件,查詢的開始日期倒是好回顯,因為它是封裝到模型驅動使用的對象中了,但是查詢的結束日期該怎樣回顯呢?我們只須對visit_end_time該屬性提供一個get方法即可,這是因為在默認的情況下,會將Action實例壓入到值棧的棧頂位置,那么Action實例中的屬性也會在值棧中。
/** visit_end_time它不也是SaleVisitAction中的一個屬性嗎?SaleVisitAction在棧里面,* SaleVisitAction中的屬性不也在棧里面嗎?但在在棧里面,它想被訪問的話,就必須得有get方法。*/ public Date getVisit_end_time() {return visit_end_time; }然后,修改SaleVisitAction中的findAll方法。
/** 查詢拜訪記錄列表的方法*/ public String findAll() {//創建離線條件查詢對象DetachedCriteria detachedCriteria = DetachedCriteria.forClass(SaleVisit.class);//如果有條件,那么就設置條件if (saleVisit.getVisit_time() != null) {//開始時間不為nulldetachedCriteria.add(Restrictions.ge("visit_time", saleVisit.getVisit_time()));//ge:>=(大于等于)}if (visit_end_time != null) {detachedCriteria.add(Restrictions.le("visit_time", visit_end_time));//le:<=(小于等于)}//調用業務層PageBean<SaleVisit> pageBean = saleVisitService.findByPage(detachedCriteria, currentPage, pageSize);//把pageBean存入值棧ActionContext.getContext().getValueStack().push(pageBean);return "findAll"; }改完后,發布我們的項目到Tomcat服務器并啟動,然后訪問該項目的首頁,點擊客戶拜訪列表超鏈接之后,我們可以看到展示的客戶拜訪記錄列表。此時,如果我們輸入一些條件進行篩選,例如查詢某段時間的客戶拜訪記錄,那么就會出現一個小的bug,那就是當我們點擊篩選按鈕進行篩選時,條件是正常帶過來了,但是日期格式變成了19-10-1這種,并不是我們原先輸入的2019-10-01這種比較全的格式。
如何解決這個小bug呢?我們得在客戶拜訪記錄列表頁面上回顯條件時使用<s:date>標簽對日期格式化,這時會出現Struts2標簽嵌套Struts2標簽的情況,這是不允許出現的,因為Struts2標簽是不能再去嵌套Struts2標簽的,所以,我們最終要將篩選條件寫成下面這樣。
至此,客戶拜訪記錄管理模塊中條件查詢客戶拜訪記錄列表的功能,我們就算是實現了!至于修改和刪除客戶拜訪記錄這兩個功能,我就不打算做了,就和之前一模一樣嘛!客戶拜訪記錄管理模塊就做到這里為止。
總結
以上是生活随笔為你收集整理的CRM客户关系管理系统开发第十九讲——实现客户拜访记录管理模块中条件查询客户拜访记录列表的功能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SSH与SSM学习之SSH实现CRM练习
- 下一篇: C语言函数调用栈侦