7

来源:互联网 发布:小莫软件 编辑:程序博客网 时间:2024/06/03 01:41

 

八.信用调度自动分配定时任务
 
与之相关的几张表:
(dc_collector,dc_collector_group_mapping –---- 查询 )这两张表是获取满足条件的校验员信息的。
(dc_credit_validate_task 查询)
在分配任务的时候执行sql:更新dc_credit_validate_task表中的数据。
 
概念:信用度调查,它是针对每天新开户用户调查其信用情况的业务,具体调查工作由信用度调查员完成,系统支持新开户用户按系统定义的规则进行自动分配给调查员。该定时任务就是根据这些规则自动的将这些工作分配给调查员,然后由这些调查员去完成这项工作。
 
1. 手动执行该定时任务时,通过System -> Task -> Task 去进行查询该任务,Task_Id = 1024,然后手动执行该任务它会通过TaskInfoAction类的manualSubmitTask()方法去调用AutoAssignCreditValidateTask 类的execute() 方法
2. 该方法时会从 dc_config表中获取配置的值,然后通过
List tasks = validateMgr.getAutoAssignTasks(maxAssignNum)方法来获取等待自动分配的信用调查任务。
3. 在getAutoAssignTasks(int count)方法中调用getCollectorsByLevel(highestLevel, true, String.valueOf(CollectorValue.TYPE_VALIDATER)); 来获取某个级别的催欠员列表。
4. 然后调用queryBean(String sql, ArrayList parameters, Class beanClass, Connection conn)方法执行sql语句并且将返回的结果赋值给JavaBean。
Sql: select task_id , sub_id, acct_id, cust_id local_id, eff_date, entry_date, validator_id, check_staff_id, assign_date, status, mapping_result_1, mapping_result_2, mapping_result_3, mapping_result_4, mapping_result_5, oper_id, oper_date, result_date from DC_CREDIT_VALIDATE_TASK where validator_id in (-1…) and status = 1 and task_id > -1 and rownum <= count order by task_id asc;