diff --git a/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/controller/Api1AuditNodeController.java b/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/controller/Api1AuditNodeController.java
index 0da6b5e..7086ea3 100644
--- a/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/controller/Api1AuditNodeController.java
+++ b/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/controller/Api1AuditNodeController.java
@@ -4,6 +4,7 @@
 import org.springframework.http.HttpStatus;
 import org.springframework.util.MimeTypeUtils;
 import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseStatus;
 import org.springframework.web.bind.annotation.RestController;
@@ -11,6 +12,7 @@
 import com.supwisdom.leaveschool.common.controller.api.CrudApiController;
 import com.supwisdom.leaveschool.common.model.PagerRequestModel;
 import com.supwisdom.leaveschool.common.model.PagerResponseModel;
+import com.supwisdom.leaveschool.common.model.SuccessResponseModel;
 import com.supwisdom.leaveschool.leaving.domain.AuditNode;
 import com.supwisdom.leaveschool.leaving.repository.AuditNodeRepository;
 
@@ -48,12 +50,23 @@
 		}
 	}
 	
+	@PostMapping(path = "/insert",produces = MimeTypeUtils.APPLICATION_JSON_VALUE,consumes=MimeTypeUtils.APPLICATION_JSON_VALUE)
+	@ResponseStatus(value = HttpStatus.OK)
+	@ApiOperation(value="新增审核环节",notes="注意问题点")
+	public SuccessResponseModel insert(AuditNode auditNode) {
+		
+		return null;
+	}
+	
+	
+	
+	
 	@GetMapping(path = "/pageList",produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
 	@ResponseStatus(value = HttpStatus.OK)
 	@ApiOperation(value="根据查询条件获取审核环节列表",notes="注意问题点")
 	@ApiImplicitParams({
-		@ApiImplicitParam(name = "pageIndex", value = "当前第页数，默认0，为第一页", dataType = "int",required = true,  paramType = "query", defaultValue = "0"),
-		@ApiImplicitParam(name = "pageSize", value = "每页条数，默认20", dataType = "int",required = true,  paramType = "query", defaultValue = "20"),
+		@ApiImplicitParam(name = "pageIndex", value = "当前第页数，默认0，为第一页", dataType = "integer",required = true,  paramType = "query", defaultValue = "0"),
+		@ApiImplicitParam(name = "pageSize", value = "每页条数，默认20", dataType = "integer",required = true,  paramType = "query", defaultValue = "20"),
 		@ApiImplicitParam(name = "name", value = "审核环节名称", dataType = "string",required = false,  paramType = "query", defaultValue = ""),
 		@ApiImplicitParam(name = "auditType", value = "审核方式", dataType = "string",required = false,  paramType = "query", defaultValue = "")
 	})
@@ -61,7 +74,6 @@
 		
 		
 		return null;
-		
 	}
 	
 	
diff --git a/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/AuditNode.java b/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/AuditNode.java
index 1448365..82f29e4 100644
--- a/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/AuditNode.java
+++ b/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/AuditNode.java
@@ -2,6 +2,8 @@
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.Table;
@@ -52,18 +54,21 @@
 	 * 范围控制（全校范围、院系范围、辅导员范围）
 	 */
 	@Column(name = "SCOPE",columnDefinition="varchar(20) not null comment '范围控制（全校范围、院系范围、辅导员范围）'")
+	@Enumerated(EnumType.STRING) 
 	private Scope scope;
 	
 	/**
 	 * 审核方式（手动、自动，默认手动）
 	 */
 	@Column(name = "AUDIT_TYPE",columnDefinition="varchar(20) not null comment '审核方式（手动、自动，默认手动）'")
+	@Enumerated(EnumType.STRING) 
 	private AuditType auditType;
 	
 	/**
 	 * 审核状态（待审核、审核通过、审核不通过 ，默认待审核）
 	 */
 	@Column(name = "DEFAULT_AUDIT_STATUS",columnDefinition="varchar(20) not null comment '审核状态（待审核、审核通过、审核不通过 ，默认待审核）'")
+	@Enumerated(EnumType.STRING)  
 	private DefaultAuditStatus defaultAuditStatus;
 	
 	/**
diff --git a/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/LeaveSchoolProcessAudit.java b/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/LeaveSchoolProcessAudit.java
index 81a3980..f9794f6 100644
--- a/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/LeaveSchoolProcessAudit.java
+++ b/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/LeaveSchoolProcessAudit.java
@@ -4,6 +4,8 @@
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
 import javax.persistence.JoinColumn;
 import javax.persistence.JoinTable;
 import javax.persistence.ManyToMany;
@@ -51,6 +53,7 @@
 	 * 审核状态（待审核、审核通过、审核不通过 ，默认待审核）
 	 */
 	@Column(name = "AUDIT_STATUS",columnDefinition="varchar(20) not null comment '审核状态（待审核、审核通过、审核不通过 ，默认待审核）'")
+	@Enumerated(EnumType.STRING)
 	private DefaultAuditStatus auditResult;
 	
 	/**
diff --git a/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/LeaveSchoolProcessAuditLog.java b/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/LeaveSchoolProcessAuditLog.java
index e888798..8b718ce 100644
--- a/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/LeaveSchoolProcessAuditLog.java
+++ b/leaveschool/leaving/src/main/java/com/supwisdom/leaveschool/leaving/domain/LeaveSchoolProcessAuditLog.java
@@ -2,6 +2,8 @@
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.Table;
@@ -32,6 +34,7 @@
 	 * 审核状态（待审核、审核通过、审核不通过 ，默认待审核）
 	 */
 	@Column(name = "AUDIT_STATUS",columnDefinition="varchar(20) not null comment '审核状态（待审核、审核通过、审核不通过 ，默认待审核）'")
+	@Enumerated(EnumType.STRING)
 	private DefaultAuditStatus auditResult;
 	
 	/**
diff --git a/leaveschool/leaving/src/main/resources/application.yml b/leaveschool/leaving/src/main/resources/application.yml
index 8b4ef7a..4981a80 100644
--- a/leaveschool/leaving/src/main/resources/application.yml
+++ b/leaveschool/leaving/src/main/resources/application.yml
@@ -15,8 +15,9 @@
     name: leaving
   datasource:
     driver-class-name: com.mysql.jdbc.Driver
+    url: jdbc:mysql://180.166.150.114:9512/leave_school?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull
     #url: jdbc:mysql://172.50.10.15:3306/leave_school?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull
-    url: jdbc:mysql://172.18.101.207:3306/leave_school?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull
+    #url: jdbc:mysql://172.18.101.207:3306/leave_school?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull
     username: leave_school
     password: 111111
   jpa:
