package com.zbooksoft.gdmis.operate; import com.ruili.wcp.common.SpringContextUtil; import com.ruili.wcp.engine.flow.delegate.DelegateTask; import com.ruili.wcp.engine.flow.delegate.TaskListener; import com.ruili.wcp.engine.form.IFormData; import com.ruili.wcp.service.management.MessageService; import com.ruili.wcp.service.management.RoleService; import com.ruili.wcp.service.management.RoleUserService; import com.ruili.wcp.service.management.UserService; import org.springframework.jdbc.core.JdbcTemplate; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; public class UtilizationFormFlowListener implements TaskListener { IFormData iFormData = (IFormData) SpringContextUtil.getBean("iFormData"); MessageService messageService = (MessageService) SpringContextUtil.getBean("messageServiceImpl"); RoleService roleService = (RoleService) SpringContextUtil.getBean("roleServiceImpl"); UserService userService = (UserService) SpringContextUtil.getBean("userServiceImpl"); RoleUserService roleUserService = (RoleUserService) SpringContextUtil.getBean("roleUserServiceImpl"); JdbcTemplate jdbcTemplate = (JdbcTemplate) SpringContextUtil.getBean("jdbcTemplate"); @Override public void notify(DelegateTask delegateTask) { if (delegateTask != null) { //添加数据到bus_warehousing LOCATION_NUMBER Long keyId = delegateTask.getProcessInstance().getKeyId(); String strSql = "SELECT ITEM_CODE, ITEM_TITLE ,BORROW_TYPE, PAPER ,ITEM_ID FROM UTL_BORROW_DETAIL WHERE AGREE = 1 AND FORM_ID=" + keyId; List> mapList = jdbcTemplate.queryForList(strSql); for (int i = 0; i < mapList.size(); i++) { Object borrowType = mapList.get(i).get("BORROW_TYPE"); if (mapList.get(i).get("PAPER") != null && mapList.get(i).get("PAPER").toString().equals("1")) { Map data = new HashMap<>(); String itemId = mapList.get(i).get("ITEM_ID").toString(); String sqlSelect = "select * from BUS_PACKING_MANAGE where ITEM_ID = " + itemId; List> mapList1 = jdbcTemplate.queryForList(sqlSelect); if (mapList1.size() > 0) { Map stringObjectMap = mapList1.get(0); String boxNumber = stringObjectMap.get("BOX_NUMBER") == null ? "" : stringObjectMap.get("BOX_NUMBER").toString(); String storageLocation = stringObjectMap.get("STORAGE_LOCATION") == null ? "" : stringObjectMap.get("STORAGE_LOCATION").toString(); data.put("BOX_NUM", boxNumber); data.put("LOCATION_NUMBER", storageLocation); } data.put("ARCHIVAL_CODE", mapList.get(i).get("ITEM_CODE")); data.put("TITLE", mapList.get(i).get("ITEM_TITLE")); data.put("ARCHIVAL_TYPE", borrowType); data.put("IN_STATUS_CODE", "0"); data.put("IN_STATUS", "待出库"); data.put("EXIST_STATUS", "1"); data.put("ITEM_ID", itemId); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); data.put("CREATE_TIME", sdf.format(new Date())); iFormData.insert(1972515952908148738L, data); } } } } }