3.5.替換崗位

2023-07-03 17:04 更新
BDF2中允許用戶替換其中的用戶、部門及崗位信息,而且這種替換可以根據(jù)需要只替換其中的用戶信息或只替換其中的部門信息或只替換其中的崗位信息,或者全部替換掉。替換后的用戶、部門及崗位信息可以來自用戶定義的任何源,比如其它數(shù)據(jù)庫、LDAP、WebService或其它系統(tǒng)。接下來我們就來介紹如何替換系統(tǒng)中采用的崗位信息。
替換崗位與替換部門的操作基本一樣,不同的地方是替換崗位需要實現(xiàn)IPosition與IPositionService兩個接口,而替換部門則需要實現(xiàn)IDept與IDeptService接口,我們來看看IPosition接口內(nèi)容:
IPosition接口源碼
public interface IPosition extends ICompany{
 String getId();
 String getName();
 List<IUser> getUsers();
}
相比IDept類,IPosition接口定義的方法較少,再來看看IPositionService接口:
IPositionService
public interface IPositionService {
 public static final String BEAN_ID="bdf2.positionService";
 IPosition newPositionInstance(String positionId);
 List<IPosition> loadUserPositions(String username);
 IPosition loadPositionById(String positionId);
 /**
 * 分頁加載崗位數(shù)據(jù)
 * @param page
Dorado7分頁對象,其中包含pageNo,pageSize,分頁后的數(shù)據(jù)也填充到這個page對象當中,該參數(shù)不可為空
 * @param companyId 要加載哪個companyId下的崗位信息,該參數(shù)不可為空
 * @param criteria Dorado7條件對象,可從中取到相應的條件值,該參數(shù)可為空
 */
 void loadPagePositions(Page<IPosition> page,String companyId,Criteria criteria);
}
定義的幾個方法都比較簡單,這里就不再多解釋了,需要注意的是,無論我們實現(xiàn)IPosition接口還是實現(xiàn)IPositionService接口,要保證所有方法都不返回null,否則可能會產(chǎn)生錯誤。寫好這兩個接口的實現(xiàn)類后,接下同樣是配置到我們的datasources.xml當中,配置示例如下:
IPositionService實現(xiàn)類配置
<bean id="demoPositionService" class="ext.DemoPositionService"></bean>
 <bdf:dept-service ref="demoPositionService"/>
同樣,上述的兩行配置也可以被下面的一行配置取代:
IPositionService實現(xiàn)類另一種配置
<bean id="bdf2.positionService" class="ext.DemoPositionService"></bean>
需要注意的是,上述配置當中,bean的ID只能是bdf2.positionService。

這些工作完成后,替換系統(tǒng)中崗位的工作也就完成了。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號