|
|
@@ -22,6 +22,7 @@ public class ThirdPartyWorkflowJob extends AbstractJob{
|
|
|
public static final String FORM_KEY = "FORM_KEY";
|
|
|
public static final String DEF_KEY = "DEF_KEY";
|
|
|
public static final String NODE_NUM = "NODE_NUM";
|
|
|
+ public static final String UNDO_FLAG = "UNDO_FLAG";
|
|
|
|
|
|
private static final Logger logger = LoggerFactory.getLogger(QualityIndicatorJob.class);
|
|
|
@Override
|
|
|
@@ -32,12 +33,18 @@ public class ThirdPartyWorkflowJob extends AbstractJob{
|
|
|
context.getJobDetail().getKey().getName(),
|
|
|
context.getTrigger().getKey().getName());
|
|
|
logger.warn("jobDataMap=is {}.", JacksonUtil.toJsonString(dataMap.getWrappedMap()));
|
|
|
- String[] tableNameAry = dataMap.getString(TABLE_NAME).split(";");
|
|
|
- String[] formKeyAry = dataMap.getString(FORM_KEY).split(";");
|
|
|
- String[] defKeyAry = dataMap.getString(DEF_KEY).split(";");
|
|
|
- String[] nodeNumAry = dataMap.getString(NODE_NUM).split(";");
|
|
|
- splitAry(tableNameAry,formKeyAry, defKeyAry,nodeNumAry);
|
|
|
|
|
|
+ String tableNameStr = dataMap.getString(TABLE_NAME);
|
|
|
+ String[] tableNameAry = (tableNameStr != null) ? tableNameStr.split(";") : null;
|
|
|
+ String formKeyStr = dataMap.getString(FORM_KEY);
|
|
|
+ String[] formKeyAry = (formKeyStr != null) ? formKeyStr.split(";") : null;
|
|
|
+ String defKeyStr = dataMap.getString(DEF_KEY);
|
|
|
+ String[] defKeyAry = (defKeyStr != null) ? defKeyStr.split(";") : null;
|
|
|
+ String nodeNumStr = dataMap.getString(NODE_NUM);
|
|
|
+ String[] nodeNumAry = (nodeNumStr != null) ? nodeNumStr.split(";") : null;
|
|
|
+ String undoFlagStr = dataMap.getString(UNDO_FLAG);
|
|
|
+ String[] undoFlagAry = (undoFlagStr != null) ? undoFlagStr.split(";") : null;
|
|
|
+ splitAry(tableNameAry,formKeyAry, defKeyAry,nodeNumAry,undoFlagAry);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -46,30 +53,39 @@ public class ThirdPartyWorkflowJob extends AbstractJob{
|
|
|
* TABLE_NAME:t_dlxmsnzkyfx;t_fjbbjlb
|
|
|
* FORM_KEY:dlxmsnzkyfxzjbg;fjbbjlb
|
|
|
* DEF_KEY:Process_1cauof8;Process_0mg6v16
|
|
|
+ * NODE_NUM:
|
|
|
+ * UNDO_FLAG:
|
|
|
*
|
|
|
* @param tableNameAry
|
|
|
* @param formKeyAry
|
|
|
* @param defKeyAry
|
|
|
+ * @param nodeNumAry
|
|
|
+ * @param undoFlagAry
|
|
|
*/
|
|
|
- private void splitAry(String[] tableNameAry, String[] formKeyAry, String[] defKeyAry, String[] nodeNumAry) {
|
|
|
+ private void splitAry(String[] tableNameAry, String[] formKeyAry, String[] defKeyAry, String[] nodeNumAry, String[] undoFlagAry) {
|
|
|
for (int i = 0; i < tableNameAry.length; i++) {
|
|
|
String tableName = tableNameAry[i];
|
|
|
String formKey = formKeyAry[i];
|
|
|
String defKey = defKeyAry[i];
|
|
|
String nodeNum = nodeNumAry[i];
|
|
|
+ String undoFlag = "待处理";
|
|
|
+ if (undoFlagAry != null && i < undoFlagAry.length) {
|
|
|
+ undoFlag = undoFlagAry[i];
|
|
|
+ }
|
|
|
if(tableName != null && !tableName.isEmpty() &&
|
|
|
formKey != null && !formKey.isEmpty() &&
|
|
|
defKey != null && !defKey.isEmpty()&&
|
|
|
- nodeNum != null && !nodeNum.isEmpty()) {
|
|
|
- logger.warn("Ready Start Workflow:tableName={},formKey={},defKey={},nodeNum={}", tableName, formKey, defKey, nodeNum);
|
|
|
- startWorkflow(tableName,formKey,defKey, Integer.parseInt(nodeNum));
|
|
|
+ nodeNum != null && !nodeNum.isEmpty()&&
|
|
|
+ undoFlag != null && !undoFlag.isEmpty()) {
|
|
|
+ logger.warn("Ready Start Workflow:tableName={},formKey={},defKey={},nodeNum={},undoFlag={}", tableName, formKey, defKey, nodeNum, undoFlag);
|
|
|
+ startWorkflow(tableName,formKey,defKey, Integer.parseInt(nodeNum), undoFlag);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
- protected void startWorkflow(String tableName, String formKey, String defKey, Integer nodeNum) {
|
|
|
- String fetchSql = "SELECT id_ FROM %s WHERE shi_fou_guo_shen_='待推送'";
|
|
|
+ protected void startWorkflow(String tableName, String formKey, String defKey, Integer nodeNum, String undoFlag) {
|
|
|
+ String fetchSql = "SELECT id_ FROM %s WHERE shi_fou_guo_shen_='"+undoFlag+"'";
|
|
|
fetchSql = String.format(fetchSql,tableName);
|
|
|
List<Map<String, Object>> list = (List<Map<String, Object>>) commonDao.query(fetchSql);
|
|
|
if (BeanUtils.isEmpty(list)) return;
|