|
@@ -33,6 +33,7 @@ import java.io.*;
|
|
import java.lang.reflect.Field;
|
|
import java.lang.reflect.Field;
|
|
import java.lang.reflect.Method;
|
|
import java.lang.reflect.Method;
|
|
import java.text.SimpleDateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
|
|
+import java.time.LocalDate;
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
import java.time.format.DateTimeFormatter;
|
|
import java.time.format.DateTimeFormatter;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
@@ -61,6 +62,9 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
@Resource
|
|
@Resource
|
|
private TaskExecutorMapper taskExecutorMapper;
|
|
private TaskExecutorMapper taskExecutorMapper;
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ private SysFunctionService sysFunctionService;
|
|
|
|
+
|
|
@Resource
|
|
@Resource
|
|
private TaskRepeatDesignMapper taskRepeatDesignMapper;
|
|
private TaskRepeatDesignMapper taskRepeatDesignMapper;
|
|
|
|
|
|
@@ -175,6 +179,21 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
List<TaskExecutor> taskExecutorList = taskExecutorMapper.selectList(new LambdaQueryWrapper<TaskExecutor>().eq(TaskExecutor::getCompanyId,user.getCompanyId()));
|
|
List<TaskExecutor> taskExecutorList = taskExecutorMapper.selectList(new LambdaQueryWrapper<TaskExecutor>().eq(TaskExecutor::getCompanyId,user.getCompanyId()));
|
|
List<TaskLog> taskLogList = taskLogMapper.selectList(new LambdaQueryWrapper<TaskLog>().eq(TaskLog::getCompanyId,user.getCompanyId()).orderByDesc(TaskLog::getModTime));
|
|
List<TaskLog> taskLogList = taskLogMapper.selectList(new LambdaQueryWrapper<TaskLog>().eq(TaskLog::getCompanyId,user.getCompanyId()).orderByDesc(TaskLog::getModTime));
|
|
taskDto.setPageIndex((taskDto.getPageIndex()-1)*taskDto.getPageSize());
|
|
taskDto.setPageIndex((taskDto.getPageIndex()-1)*taskDto.getPageSize());
|
|
|
|
+
|
|
|
|
+ boolean isAll = sysFunctionService.hasPriviledge(user.getRoleId(), "查看全部任务");
|
|
|
|
+ boolean isNotAll = sysFunctionService.hasPriviledge(user.getRoleId(), "查看负责部门任务");
|
|
|
|
+
|
|
|
|
+ if (isAll){
|
|
|
|
+ System.out.println("do nothing");
|
|
|
|
+ }else if (isNotAll){
|
|
|
|
+ Integer departmentId = user.getDepartmentId();//找出对应的部门id
|
|
|
|
+ taskDto.setDepartmentId(departmentId);
|
|
|
|
+ }else {
|
|
|
|
+ //查看负责人为自己和null的数据
|
|
|
|
+ taskDto.setDepartmentIdByMyselfOrNull(user.getId());
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
List<TasKVo> taskVoList =taskMapper.getPageListTask(taskDto);
|
|
List<TasKVo> taskVoList =taskMapper.getPageListTask(taskDto);
|
|
for (TasKVo tasKVo : taskVoList) {
|
|
for (TasKVo tasKVo : taskVoList) {
|
|
if (!taskExecutorList.isEmpty()){
|
|
if (!taskExecutorList.isEmpty()){
|
|
@@ -324,6 +343,37 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
JSONObject configOb = JSON.parseObject(config);
|
|
JSONObject configOb = JSON.parseObject(config);
|
|
JSONArray configObJSONArray = configOb.getJSONArray("list");
|
|
JSONArray configObJSONArray = configOb.getJSONArray("list");
|
|
|
|
|
|
|
|
+ //可能存在栅格布局的情况需要特殊处理
|
|
|
|
+ List<String> modelNameList=new ArrayList<>();
|
|
|
|
+ List<String> typeList=new ArrayList<>();
|
|
|
|
+ List<String> labelList=new ArrayList<>();
|
|
|
|
+ List<Boolean> requiredList=new ArrayList<>();
|
|
|
|
+
|
|
|
|
+ for (int i = 0; i < configObJSONArray.size(); i++) {
|
|
|
|
+ JSONObject jsonObject = configObJSONArray.getJSONObject(i);
|
|
|
|
+ if(jsonObject.getString("type").equals("grid")){
|
|
|
|
+ JSONArray columns = jsonObject.getJSONArray("columns");
|
|
|
|
+ for (int i1 = 0; i1 < columns.size(); i1++) {
|
|
|
|
+ JSONObject columnsJSONObject = columns.getJSONObject(i1);
|
|
|
|
+ JSONArray list = columnsJSONObject.getJSONArray("list");
|
|
|
|
+ for (int i2 = 0; i2 < list.size(); i2++) {
|
|
|
|
+ JSONObject object = list.getJSONObject(i2);
|
|
|
|
+ modelNameList.add(object.getString("model"));
|
|
|
|
+ typeList.add(object.getString("type"));
|
|
|
|
+ labelList.add(object.getString("label"));
|
|
|
|
+ Boolean required = object.getJSONObject("options").getJSONObject("rules").getBoolean("required");
|
|
|
|
+ requiredList.add(required);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }else {
|
|
|
|
+ modelNameList.add(jsonObject.getString("model"));
|
|
|
|
+ typeList.add(jsonObject.getString("type"));
|
|
|
|
+ labelList.add(jsonObject.getString("label"));
|
|
|
|
+ Boolean required = jsonObject.getJSONObject("options").getJSONObject("rules").getBoolean("required");
|
|
|
|
+ requiredList.add(required);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
List<Task> importTaskList=new ArrayList<>();
|
|
List<Task> importTaskList=new ArrayList<>();
|
|
List<String> userNameList=new ArrayList<>();
|
|
List<String> userNameList=new ArrayList<>();
|
|
HttpRespMsg respMsg=new HttpRespMsg();
|
|
HttpRespMsg respMsg=new HttpRespMsg();
|
|
@@ -347,19 +397,8 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
int cellNum = row.getLastCellNum();
|
|
int cellNum = row.getLastCellNum();
|
|
|
|
|
|
for (int i = 0; i < cellNum; i++) {
|
|
for (int i = 0; i < cellNum; i++) {
|
|
- JSONObject item = configObJSONArray.getJSONObject(i);
|
|
|
|
- String modelName = item.getString("model");
|
|
|
|
|
|
+ String modelName = modelNameList.get(i);
|
|
XSSFCell cell = row.getCell(i);
|
|
XSSFCell cell = row.getCell(i);
|
|
-/* if(cell!=null&&StringUtils.isNotEmpty(cell.getStringCellValue())){
|
|
|
|
- switch (item.getString("type")){
|
|
|
|
- case "time":cell.setCellType(CellType.NUMERIC);
|
|
|
|
- System.out.println(cell.getNumericCellValue());
|
|
|
|
- break;
|
|
|
|
- case "int":cell.setCellType(CellType.NUMERIC);
|
|
|
|
- break;
|
|
|
|
- default:cell.setCellType(CellType.STRING);
|
|
|
|
- }
|
|
|
|
- }*/
|
|
|
|
if(modelName.equals("executorId")){
|
|
if(modelName.equals("executorId")){
|
|
if(!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
if(!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
List<String> executorNames = new ArrayList<>();
|
|
List<String> executorNames = new ArrayList<>();
|
|
@@ -405,19 +444,13 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
task.setStatus(0);
|
|
task.setStatus(0);
|
|
task.setIsDelete(0);
|
|
task.setIsDelete(0);
|
|
for (int i = 0; i < cellNum; i++) {
|
|
for (int i = 0; i < cellNum; i++) {
|
|
- JSONObject item = configObJSONArray.getJSONObject(i);
|
|
|
|
- String modelName = item.getString("model");
|
|
|
|
|
|
+ String modelName = modelNameList.get(i);
|
|
String className = modelName.substring(0, 1).toUpperCase() + modelName.substring(1);
|
|
String className = modelName.substring(0, 1).toUpperCase() + modelName.substring(1);
|
|
String getter="get"+className;
|
|
String getter="get"+className;
|
|
String setter="set"+className;
|
|
String setter="set"+className;
|
|
XSSFCell cell = row.getCell(i);
|
|
XSSFCell cell = row.getCell(i);
|
|
if(cell!=null&&StringUtils.isNotEmpty(cell.getStringCellValue())){
|
|
if(cell!=null&&StringUtils.isNotEmpty(cell.getStringCellValue())){
|
|
- switch (item.getString("type")){
|
|
|
|
- case "time":cell.setCellType(CellType.NUMERIC);
|
|
|
|
- System.out.println(cell.getNumericCellValue());
|
|
|
|
- break;
|
|
|
|
- case "int":cell.setCellType(CellType.NUMERIC);
|
|
|
|
- break;
|
|
|
|
|
|
+ switch (typeList.get(i)){
|
|
default:cell.setCellType(CellType.STRING);
|
|
default:cell.setCellType(CellType.STRING);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -425,25 +458,14 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
// Field field = taskClass.getDeclaredField(modelName);
|
|
// Field field = taskClass.getDeclaredField(modelName);
|
|
// Class<?> type = field.getType();
|
|
// Class<?> type = field.getType();
|
|
// Method method = taskClass.getMethod(setter, type);
|
|
// Method method = taskClass.getMethod(setter, type);
|
|
- //校验当前列是否为必填
|
|
|
|
- JSONObject options = item.getJSONObject("options");
|
|
|
|
- JSONObject rules = options.getJSONObject("rules");
|
|
|
|
- Boolean required = rules.getBoolean("required");
|
|
|
|
- if(required){
|
|
|
|
- if(StringUtils.isEmpty(cell.getStringCellValue())){
|
|
|
|
- msg.setError(item.getString("label")+"值不能为空值");
|
|
|
|
|
|
+
|
|
|
|
+ if(requiredList.get(i)){
|
|
|
|
+ if(cell==null||StringUtils.isEmpty(cell.getStringCellValue())){
|
|
|
|
+ msg.setError(labelList.get(i)+"值不能为空值");
|
|
return msg;
|
|
return msg;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- /*if(modelName.equals("taskCode")){
|
|
|
|
- if(!org.springframework.util.StringUtils.isEmpty(cell.getStringCellValue())){
|
|
|
|
- //系统中同公司已存在的产品编码 更新
|
|
|
|
- Optional<Task> first = taskList.stream().filter(p ->p.getTaskCode()!=null&& p.getTaskCode().equals(cell.getStringCellValue())).findFirst();
|
|
|
|
- if(first.isPresent()){
|
|
|
|
- task.setId(first.get().getId());
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }*/
|
|
|
|
|
|
+
|
|
if(modelName.equals("executorId")){
|
|
if(modelName.equals("executorId")){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
|
|
|
|
@@ -485,12 +507,12 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
|
|
|
|
|
|
|
|
}*/
|
|
}*/
|
|
- if(modelName.equals("taskName")){
|
|
|
|
|
|
+ else if(modelName.equals("taskName")){
|
|
if(!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
if(!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
task.setTaskName(cell.getStringCellValue());
|
|
task.setTaskName(cell.getStringCellValue());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if(modelName.equals("priority")){
|
|
|
|
|
|
+ else if(modelName.equals("priority")){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
switch (cell.getStringCellValue()){
|
|
switch (cell.getStringCellValue()){
|
|
case "低":task.setPriority(0);
|
|
case "低":task.setPriority(0);
|
|
@@ -502,42 +524,24 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if(modelName.equals("startDate")){
|
|
|
|
|
|
+ else if(modelName.equals("startDate")){
|
|
if(cell != null && cell.getCellTypeEnum() != CellType.BLANK){
|
|
if(cell != null && cell.getCellTypeEnum() != CellType.BLANK){
|
|
- if (cell.getCellTypeEnum() == CellType.NUMERIC){
|
|
|
|
- Date dateCellValue = cell.getDateCellValue();
|
|
|
|
- if (dateCellValue.before(new Date(-2208988800L))){
|
|
|
|
- continue;
|
|
|
|
- }else {
|
|
|
|
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
|
- String string = format.format(dateCellValue);
|
|
|
|
- System.out.println(string);
|
|
|
|
- DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
|
- LocalDateTime time = LocalDateTime.parse(string, dateTimeFormatter);
|
|
|
|
- task.setStartDate(time);
|
|
|
|
- }
|
|
|
|
|
|
+ if(!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
|
|
+ DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
|
+ task.setStartDate(LocalDateTime.parse(cell.getStringCellValue(),df));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if(modelName.equals("endDate")){
|
|
|
|
|
|
+ else if(modelName.equals("endDate")){
|
|
if(cell != null && cell.getCellTypeEnum() != CellType.BLANK){
|
|
if(cell != null && cell.getCellTypeEnum() != CellType.BLANK){
|
|
- if (cell.getCellTypeEnum() == CellType.NUMERIC){
|
|
|
|
- Date dateCellValue = cell.getDateCellValue();
|
|
|
|
- if (dateCellValue.before(new Date(-2208988800L))){
|
|
|
|
- continue;
|
|
|
|
- }else {
|
|
|
|
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
|
- String string = format.format(dateCellValue);
|
|
|
|
- System.out.println(string);
|
|
|
|
- DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
|
- LocalDateTime time = LocalDateTime.parse(string, dateTimeFormatter);
|
|
|
|
- task.setEndDate(time);
|
|
|
|
- }
|
|
|
|
|
|
+ if(!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
|
|
+ DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
|
+ task.setEndDate(LocalDateTime.parse(cell.getStringCellValue(),df));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if(modelName.equals("contactsId")){
|
|
|
|
|
|
+ else if(modelName.equals("contactsId")){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
String contactsName = cell.getStringCellValue();
|
|
String contactsName = cell.getStringCellValue();
|
|
List<Contacts> collect = contactsList.stream().filter(contacts -> contacts.getName().equals(contactsName)).collect(Collectors.toList());
|
|
List<Contacts> collect = contactsList.stream().filter(contacts -> contacts.getName().equals(contactsName)).collect(Collectors.toList());
|
|
@@ -552,7 +556,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if(modelName.equals("customId")){
|
|
|
|
|
|
+ else if(modelName.equals("customId")){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
String customName = cell.getStringCellValue();
|
|
String customName = cell.getStringCellValue();
|
|
List<Custom> customs = customList.stream().filter(custom -> customName.equals(custom.getCustomName())).collect(Collectors.toList());
|
|
List<Custom> customs = customList.stream().filter(custom -> customName.equals(custom.getCustomName())).collect(Collectors.toList());
|
|
@@ -567,16 +571,18 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
}
|
|
}
|
|
else {
|
|
else {
|
|
task.setCustomId(custom.getId());
|
|
task.setCustomId(custom.getId());
|
|
|
|
+ task.setTaskType(0);
|
|
}
|
|
}
|
|
}else {
|
|
}else {
|
|
task.setCustomId(custom.getId());
|
|
task.setCustomId(custom.getId());
|
|
|
|
+ task.setTaskType(0);
|
|
}
|
|
}
|
|
}else {
|
|
}else {
|
|
throw new Exception("["+customName+"]对应的客户不存在");
|
|
throw new Exception("["+customName+"]对应的客户不存在");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if (modelName.equals("businessOpportunityId")){
|
|
|
|
|
|
+ else if (modelName.equals("businessOpportunityId")){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
String businessName = cell.getStringCellValue();
|
|
String businessName = cell.getStringCellValue();
|
|
List<BusinessOpportunity> collect = opportunityList.stream().filter(o -> businessName.equals(o.getName())).collect(Collectors.toList());
|
|
List<BusinessOpportunity> collect = opportunityList.stream().filter(o -> businessName.equals(o.getName())).collect(Collectors.toList());
|
|
@@ -589,6 +595,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
throw new Exception("["+businessName+"]对应的商机没有对应填写的联系人");
|
|
throw new Exception("["+businessName+"]对应的商机没有对应填写的联系人");
|
|
}else {
|
|
}else {
|
|
task.setBusinessOpportunityId(businessOpportunity.getId());
|
|
task.setBusinessOpportunityId(businessOpportunity.getId());
|
|
|
|
+ task.setTaskType(1);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}else {
|
|
}else {
|
|
@@ -597,7 +604,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if (modelName.equals("orderId")){
|
|
|
|
|
|
+ else if (modelName.equals("orderId")){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
if(cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())){
|
|
String orderName = cell.getStringCellValue();
|
|
String orderName = cell.getStringCellValue();
|
|
List<SalesOrder> collect = orderList.stream().filter(order -> orderName.equals(order.getOrderName())).collect(Collectors.toList());
|
|
List<SalesOrder> collect = orderList.stream().filter(order -> orderName.equals(order.getOrderName())).collect(Collectors.toList());
|
|
@@ -611,6 +618,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
}
|
|
}
|
|
else {
|
|
else {
|
|
task.setOrderId(order.getId());
|
|
task.setOrderId(order.getId());
|
|
|
|
+ task.setTaskType(2);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}else {
|
|
}else {
|
|
@@ -619,7 +627,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if (modelName.equals("clueId")) {
|
|
|
|
|
|
+ else if (modelName.equals("clueId")) {
|
|
if (cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())) {
|
|
if (cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())) {
|
|
String clueName = cell.getStringCellValue();
|
|
String clueName = cell.getStringCellValue();
|
|
if (task.getContactsId()!=null){
|
|
if (task.getContactsId()!=null){
|
|
@@ -629,13 +637,14 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
if (!collect.isEmpty()) {
|
|
if (!collect.isEmpty()) {
|
|
Clue clue = collect.get(0);
|
|
Clue clue = collect.get(0);
|
|
task.setClueId(clue.getId());
|
|
task.setClueId(clue.getId());
|
|
|
|
+ task.setTaskType(3);
|
|
}else {
|
|
}else {
|
|
throw new Exception("["+clueName+"]对应的线索不存在");
|
|
throw new Exception("["+clueName+"]对应的线索不存在");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if (modelName.equals("phone")) {
|
|
|
|
|
|
+ else if (modelName.equals("phone")) {
|
|
if (cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())) {
|
|
if (cell!=null&&!StringUtils.isEmpty(cell.getStringCellValue())) {
|
|
String contactsPhone = cell.getStringCellValue();
|
|
String contactsPhone = cell.getStringCellValue();
|
|
List<Contacts> collect = contactsList.stream().filter(contacts -> contactsPhone.equals(contacts.getPhone())).collect(Collectors.toList());
|
|
List<Contacts> collect = contactsList.stream().filter(contacts -> contactsPhone.equals(contacts.getPhone())).collect(Collectors.toList());
|
|
@@ -654,6 +663,16 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ else {
|
|
|
|
+ if(cell!=null && !StringUtils.isEmpty(cell.getStringCellValue())){
|
|
|
|
+ Class<Task> taskClass = Task.class;
|
|
|
|
+ Field field = taskClass.getDeclaredField(modelName);
|
|
|
|
+ Class<?> type = field.getType();
|
|
|
|
+ Method method = taskClass.getMethod(setter, type);
|
|
|
|
+ System.out.println(cell.getStringCellValue());
|
|
|
|
+ method.invoke(task,cell.getStringCellValue());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
importTaskList.add(task);
|
|
importTaskList.add(task);
|
|
}
|
|
}
|