package com.oa.action; import java.io.IOException; import java.util.List; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.apache.struts2.ServletActionContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.oa.model.DynamicField; import com.oa.model.DynamicForm; import com.oa.model.FieldType; import com.oa.model.FiledInput; import com.oa.service.DynamicFieldService; import com.oa.service.DynamicFormService; import com.oa.service.WorkFlowService; import com.opensymphony.xwork2.ActionSupport; public class DynamicFieldAction extends ActionSupport { private DynamicFieldService dynamicFieldService; private DynamicFormService dynamicFormService; private DynamicField dynamicField; String returns; private int id; // private private int fieldType; private int fieldInput; // private Integer dynamicFormId; private String dynamicFormId; private Logger logger=LoggerFactory.getLogger(DynamicFieldAction.class); public String addField() throws IOException { HttpSession session = ServletActionContext.getRequest().getSession(); FiledInput input = (FiledInput) ((List) session.getAttribute("fieldInput")).get(fieldInput); FieldType type = (FieldType) ((List) session.getAttribute("fieldType")).get(fieldType); dynamicField.setInput(input); dynamicField.setType(type); DynamicForm from = dynamicFormService.getDynamicForm(Integer.valueOf(dynamicFormId)); dynamicField.setDynamicForm(from); logger.info(dynamicFormId); logger.info(dynamicField.toString()); if (dynamicField.getId() == null) { dynamicFieldService.addDynamicField(dynamicField); } else { dynamicFieldService.updateDynamicField(dynamicField); } // returns="DynamicFormAction!listFormField?workflowid="+from.getWorkFlow().getId(); ServletActionContext.getResponse().getWriter().print(from.getWorkFlow().getId()); System.out.println("========-------------------==================" + returns); return null; } public String AddFieldView() { List fieldInput = dynamicFieldService.getAllFieldInput(null); List fieldType = dynamicFieldService.getAllFieldType(null); HttpSession session = ServletActionContext.getRequest().getSession(); session.setAttribute("fieldType", fieldType); session.setAttribute("fieldInput", fieldInput); return "addfieldView"; } public String modifyDynamicField() { System.out.println("modifyDynamciField" + id); ServletActionContext.getRequest().setAttribute("dynamicField", dynamicFieldService.getDynamicField(id)); return "modifyDynamicField"; } public String deleteDynamicField() { HttpServletRequest request = ServletActionContext.getRequest(); String[] ids = request.getParameterValues("delid"); for (int i = 0; i < ids.length; i++) { System.out.println(ids[i]); } String hql = "delete from DynamicField field where field.id "; dynamicFieldService.deleteDynamicFields(hql, ids); returns = "DynamicFormAction!listFormField"; return "operator_success"; } public DynamicFieldService getDynamicFieldService() { return dynamicFieldService; } public void setDynamicFieldService(DynamicFieldService dynamicFieldService) { this.dynamicFieldService = dynamicFieldService; } public DynamicField getDynamicField() { return dynamicField; } public void setDynamicField(DynamicField dynamicField) { this.dynamicField = dynamicField; } public int getFieldType() { return fieldType; } public void setFieldType(int fieldType) { this.fieldType = fieldType; } public int getFieldInput() { return fieldInput; } public void setFieldInput(int fieldInput) { this.fieldInput = fieldInput; } public DynamicFormService getDynamicFormService() { return dynamicFormService; } public void setDynamicFormService(DynamicFormService dynamicFormService) { this.dynamicFormService = dynamicFormService; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getReturns() { return returns; } public void setReturns(String returns) { this.returns = returns; } public String getDynamicFormId() { return dynamicFormId; } public void setDynamicFormId(String dynamicFormId) { this.dynamicFormId = dynamicFormId; } }