diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmTestCaseController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmTestCaseController.java
new file mode 100644
index 00000000..77db5bb4
--- /dev/null
+++ b/xm-core/src/main/java/com/xm/core/ctrl/XmTestCaseController.java
@@ -0,0 +1,307 @@
+package com.xm.core.ctrl;
+
+import java.util.*;
+import java.util.stream.Collectors;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import io.swagger.annotations.*;
+
+import static com.mdp.core.utils.ResponseHelper.*;
+import static com.mdp.core.utils.BaseUtils.*;
+import com.mdp.core.entity.Tips;
+import com.mdp.core.err.BizException;
+import com.mdp.mybatis.PageUtils;
+import com.mdp.core.utils.RequestUtils;
+import com.mdp.core.utils.NumberUtil;
+import com.mdp.safe.client.entity.User;
+import com.mdp.safe.client.utils.LoginUtils;
+import com.mdp.swagger.ApiEntityParams;
+import springfox.documentation.annotations.ApiIgnore;
+
+import com.xm.core.service.XmTestCaseService;
+import com.xm.core.entity.XmTestCase;
+
+/**
+ * url编制采用rest风格,如对xm_test_case 测试用例的操作有增删改查,对应的url分别为:
+ * 组织 com 顶级模块 xm 大模块 core 小模块
+ * 实体 XmTestCase 表 xm_test_case 当前主键(包括多主键): id;
+ ***/
+@RestController("xm.core.xmTestCaseController")
+@RequestMapping(value="/**/core/xmTestCase")
+@Api(tags={"测试用例操作接口"})
+public class XmTestCaseController {
+
+ static Logger logger =LoggerFactory.getLogger(XmTestCaseController.class);
+
+ @Autowired
+ private XmTestCaseService xmTestCaseService;
+
+
+ Map fieldsMap = toMap(new XmTestCase());
+
+
+ @ApiOperation( value = "查询测试用例信息列表",notes=" ")
+ @ApiEntityParams( XmTestCase.class )
+ @ApiImplicitParams({
+ @ApiImplicitParam(name="pageSize",value="每页大小,默认20条",required=false),
+ @ApiImplicitParam(name="pageNum",value="当前页码,从1开始",required=false),
+ @ApiImplicitParam(name="total",value="总记录数,服务器端收到0时,会自动计算总记录数,如果上传>0的不自动计算",required=false),
+ @ApiImplicitParam(name="count",value="是否计算总记录条数,如果count=true,则计算计算总条数,如果count=false 则不计算",required=false),
+ @ApiImplicitParam(name="orderBy",value="排序列 如性别、学生编号排序 orderBy = sex desc,student desc",required=false),
+ })
+ @ApiResponses({
+ @ApiResponse(code = 200,response=XmTestCase.class,message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'错误码'},total:总记录数,data:[数据对象1,数据对象2,...]}")
+ })
+ @RequestMapping(value="/list",method=RequestMethod.GET)
+ public Map listXmTestCase( @ApiIgnore @RequestParam Map xmTestCase){
+ Map m = new HashMap<>();
+ Tips tips=new Tips("查询成功");
+ RequestUtils.transformArray(xmTestCase, "ids");
+ RequestUtils.transformArray(xmTestCase, "menuIds");
+ PageUtils.startPage(xmTestCase);
+ String id= (String) xmTestCase.get("id");
+ String menuId= (String) xmTestCase.get("menuId");
+ Object ids= xmTestCase.get("ids");
+ Object menuIds= xmTestCase.get("menuIds");
+ String productId= (String) xmTestCase.get("productId");
+ String myUserid= (String) xmTestCase.get("myUserid");
+ String projectId= (String) xmTestCase.get("projectId");
+ if( !( StringUtils.hasText(myUserid) ||StringUtils.hasText(id) || StringUtils.hasText(menuId) || StringUtils.hasText(productId)|| StringUtils.hasText(projectId)||menuIds!=null||ids!=null ) ){
+ xmTestCase.put("compete", LoginUtils.getCurrentUserInfo().getUserid());
+ }
+ List