WANG преди 5 години
родител
ревизия
f584717d33
променени са 24 файла, в които са добавени 63 реда и са изтрити 30 реда
  1. 0 2
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/AppController.java
  2. 0 2
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/Auth2Controller.java
  3. 0 2
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/AuthController.java
  4. 6 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/CourseController.java
  5. 2 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/CourseSpeciatlyRelationController.java
  6. 3 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/ExamSiteController.java
  7. 1 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/FaceController.java
  8. 9 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/OrgController.java
  9. 3 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/ResourceController.java
  10. 8 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/RolePrivilegeController.java
  11. 4 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/SpecialtyController.java
  12. 7 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/StudentController.java
  13. 3 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/SystemPropertyController.java
  14. 0 2
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/TestController.java
  15. 6 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/UserController.java
  16. 0 2
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/AuthCloudServiceProvider.java
  17. 0 2
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/CommonCloudServiceProvider.java
  18. 1 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/CourseCloudServiceProvider.java
  19. 1 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/FaceCloudServiceProvider.java
  20. 1 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/OrgCloudServiceProvider.java
  21. 2 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/RolePrivilegeCloudServiceProvider.java
  22. 4 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/StudentCloudServiceProvider.java
  23. 1 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/SystemPropertyCloudServiceProvider.java
  24. 1 1
      examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/UserCloudServiceProvider.java

+ 0 - 2
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/AppController.java

@@ -4,7 +4,6 @@ import java.util.List;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Sort;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
@@ -17,7 +16,6 @@ import io.swagger.annotations.ApiOperation;
 /**
  * 应用服务API Created by ting.yin on 17/3/9.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/app")
 public class AppController extends ControllerSupport {

+ 0 - 2
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/Auth2Controller.java

@@ -5,7 +5,6 @@ import java.util.Map;
 
 import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -33,7 +32,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2018年11月19日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("/api/ecs_core/user")
 public class Auth2Controller extends ControllerSupport {

+ 0 - 2
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/AuthController.java

@@ -7,7 +7,6 @@ import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -43,7 +42,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2018年5月25日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/" + "auth")
 public class AuthController extends ControllerSupport {

+ 6 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/CourseController.java

@@ -60,7 +60,6 @@ import io.swagger.annotations.ApiOperation;
 /**
  * 课程服务API Created by songyue on 17/1/14.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/course")
 public class CourseController extends ControllerSupport {
@@ -277,6 +276,7 @@ public class CourseController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "新增课程", notes = "新增")
 	@PostMapping
+	@Transactional
 	public Long addCourse(@RequestBody CourseDomain domain) {
 		trim(domain, true);
 
@@ -320,6 +320,7 @@ public class CourseController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "更新课程", notes = "更新")
 	@PutMapping
+	@Transactional
 	public Long updateCourse(@RequestBody CourseDomain domain) {
 		trim(domain, true);
 
@@ -352,6 +353,7 @@ public class CourseController extends ControllerSupport {
 
 	@ApiOperation(value = "删除课程", notes = "删除")
 	@DeleteMapping("{ids}")
+	@Transactional
 	public void deleteCourse(@PathVariable String ids) {
 		List<Long> courseIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
@@ -374,6 +376,7 @@ public class CourseController extends ControllerSupport {
 
 	@ApiOperation(value = "导入课程", notes = "导入")
 	@PostMapping("import")
+	@Transactional
 	public Map<String, Object> importCourse(@RequestParam CommonsMultipartFile file) {
 		DiskFileItem item = (DiskFileItem) file.getFileItem();
 		File storeLocation = item.getStoreLocation();
@@ -462,6 +465,7 @@ public class CourseController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "禁用课程", notes = "禁用")
 	@PutMapping("disable/{ids}")
+	@Transactional
 	public List<Long> disableCourse(@PathVariable String ids) {
 		List<Long> courseIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
@@ -498,6 +502,7 @@ public class CourseController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "启用课程", notes = "启用")
 	@PutMapping("enable/{ids}")
+	@Transactional
 	public List<Long> enableCourse(@PathVariable String ids) {
 		List<Long> courseIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());

+ 2 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/CourseSpeciatlyRelationController.java

@@ -26,7 +26,6 @@ import io.swagger.annotations.ApiOperation;
  * @author Administrator
  * @Date 2017年8月8号
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/courseSpeciatlyRelation")
 public class CourseSpeciatlyRelationController extends ControllerSupport {
@@ -42,6 +41,7 @@ public class CourseSpeciatlyRelationController extends ControllerSupport {
 
 	@ApiOperation(value = "新增关联课程专业")
 	@PostMapping("add")
+	@Transactional
 	public CourseSpeciatlyRelationEntity add(@RequestParam(required = true) Long courseId,
 			@RequestParam(required = true) Long specialtyId) {
 		User accessUser = getAccessUser();
@@ -92,6 +92,7 @@ public class CourseSpeciatlyRelationController extends ControllerSupport {
 
 	@ApiOperation(value = "删除关联课程专业")
 	@DeleteMapping("delete")
+	@Transactional
 	public CourseSpeciatlyRelationEntity delete(@RequestParam(required = true) Long courseId,
 			@RequestParam(required = true) Long specialtyId) {
 

+ 3 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/ExamSiteController.java

@@ -39,7 +39,6 @@ import io.swagger.annotations.ApiOperation;
 /**
  * 考点服务API Created by songyue on 17/1/14.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/examSite")
 public class ExamSiteController extends ControllerSupport {
@@ -97,6 +96,7 @@ public class ExamSiteController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "新增考点", notes = "新增")
 	@PostMapping
+	@Transactional
 	public Long addExamSite(@RequestBody ExamSiteDomain domain) {
 		trim(domain, true);
 
@@ -142,6 +142,7 @@ public class ExamSiteController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "更新考点", notes = "更新")
 	@PutMapping
+	@Transactional
 	public Long updateCourse(@RequestBody ExamSiteDomain domain) {
 		trim(domain, true);
 
@@ -165,6 +166,7 @@ public class ExamSiteController extends ControllerSupport {
 
 	@ApiOperation(value = "删除考点", notes = "删除")
 	@DeleteMapping("{ids}")
+	@Transactional
 	public void deleteExamSite(@PathVariable String ids) {
 		List<Long> examSiteIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());

+ 1 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/FaceController.java

@@ -30,7 +30,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2018年9月4日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/face")
 public class FaceController extends ControllerSupport {
@@ -46,6 +45,7 @@ public class FaceController extends ControllerSupport {
 
 	@ApiOperation(value = "保存学生人脸数据")
 	@PostMapping("saveStudentFace")
+	@Transactional
 	public StudentFaceEntity saveStudentFace(@RequestBody StudentFaceDomain req) {
 		StudentFaceInfo info = new StudentFaceInfo();
 		info.setFacesetToken(req.getFacesetToken());

+ 9 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/OrgController.java

@@ -88,7 +88,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2019年6月11日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/org")
 public class OrgController extends ControllerSupport {
@@ -775,6 +774,7 @@ public class OrgController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "新增顶级机构", notes = "新增")
 	@PostMapping("addRootOrg")
+	@Transactional
 	public OrgEntity addRootOrg(@RequestBody OrgDomain domain) {
 		trim(domain, true);
 
@@ -818,6 +818,7 @@ public class OrgController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "更新顶级机构", notes = "更新")
 	@PutMapping("updateRootOrg")
+	@Transactional
 	public OrgEntity updateRootOrg(@RequestBody OrgDomain domain) {
 		trim(domain, true);
 
@@ -868,6 +869,7 @@ public class OrgController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "新增子机构", notes = "新增")
 	@PostMapping("addSubOrg")
+	@Transactional
 	public OrgEntity addSubOrg(@RequestBody OrgDomain domain) {
 		trim(domain, true);
 
@@ -918,6 +920,7 @@ public class OrgController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "更新子机构", notes = "更新")
 	@PutMapping("updateSubOrg")
+	@Transactional
 	public OrgEntity updateSubOrg(@RequestBody OrgDomain domain) {
 		trim(domain, true);
 
@@ -976,6 +979,7 @@ public class OrgController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "禁用机构", notes = "禁用")
 	@PutMapping("disable/{ids}")
+	@Transactional
 	public void disableOrgs(@PathVariable String ids) {
 		List<Long> orgIdList = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
@@ -1018,6 +1022,7 @@ public class OrgController extends ControllerSupport {
 
 	@ApiOperation(value = "保存机构属性", notes = "")
 	@PutMapping("saveOrgProperties")
+	@Transactional
 	public void saveOrgProperties(@RequestBody SaveOrgPropertiesDomain domain) {
 		Long orgId = domain.getOrgId();
 		Map<String, String> properties = domain.getProperties();
@@ -1126,6 +1131,7 @@ public class OrgController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "导入logo", notes = "导入logo")
 	@PostMapping("importLogo/{orgId}")
+	@Transactional
 	public String importLogo(@PathVariable Long orgId, HttpServletRequest request,
 			@RequestParam CommonsMultipartFile file) throws IOException {
 
@@ -1223,6 +1229,7 @@ public class OrgController extends ControllerSupport {
 
 	@ApiOperation(value = "删除子机构", notes = "")
 	@DeleteMapping("deleteSubOrg/{orgId}")
+	@Transactional
 	public void deleteSubOrg(@PathVariable Long orgId) {
 		orgService.deleteSubOrg(orgId, false);
 	}
@@ -1236,6 +1243,7 @@ public class OrgController extends ControllerSupport {
 
 	@ApiOperation(value = "导入子机构", notes = "")
 	@PostMapping("importSubOrg")
+	@Transactional
 	public Map<String, Object> importSubOrg(@RequestParam CommonsMultipartFile file) {
 		DiskFileItem item = (DiskFileItem) file.getFileItem();
 		File storeLocation = item.getStoreLocation();

+ 3 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/ResourceController.java

@@ -45,7 +45,6 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 
 @Api(tags = "资源管理")
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/resource")
 public class ResourceController extends ControllerSupport {
@@ -110,6 +109,7 @@ public class ResourceController extends ControllerSupport {
 
 	@ApiOperation(value = "新增资源")
 	@PostMapping("addFile")
+	@Transactional
 	public void addResource(@RequestParam @NotNull(message = "RootOrgId不能为空!") Long rootOrgId,
 			@RequestParam @NotNull(message = "parentId不能为空!") Long parentId,
 			@RequestPart @NotNull(message = "上传文件不能为空!") MultipartFile dataFile) {
@@ -134,6 +134,7 @@ public class ResourceController extends ControllerSupport {
 
 	@ApiOperation(value = "删除资源")
 	@DeleteMapping("/{id}")
+	@Transactional
 	public void delResource(@PathVariable Long id) {
 		Optional<ResourceEntity> op = resourceRepo.findById(id);
 		if (op.isPresent()) {
@@ -157,6 +158,7 @@ public class ResourceController extends ControllerSupport {
 
 	@ApiOperation(value = "新增目录")
 	@PostMapping("addDir")
+	@Transactional
 	public void addDir(@RequestBody ResourceDomain domain) {
 		if (StringUtils.isBlank(domain.getName())) {
 			throw new StatusException("100001", "目录名称不能为空");

+ 8 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/RolePrivilegeController.java

@@ -65,7 +65,6 @@ import io.swagger.annotations.ApiOperation;
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
 @Api("角色权限")
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/rolePrivilege")
 public class RolePrivilegeController extends ControllerSupport {
@@ -284,6 +283,7 @@ public class RolePrivilegeController extends ControllerSupport {
 
 	@ApiOperation(value = "更新角色权限关联")
 	@PostMapping("updateRolePrivilegeRelations")
+	@Transactional
 	public void updateRolePrivilegeRelations(@RequestBody UpdateRolePrivilegeRelationsDomain req) {
 		Long rootOrgId = Long.parseLong(req.getRootOrgId());
 		Long roleId = Long.parseLong(req.getRoleId());
@@ -302,6 +302,7 @@ public class RolePrivilegeController extends ControllerSupport {
 
 	@ApiOperation(value = "更新顶级机构权限关联")
 	@PostMapping("updateRootOrgPrivilegeRelations")
+	@Transactional
 	public void updateRootOrgPrivilegeRelations(
 			@RequestBody UpdateRootOrgPrivilegeRelationsDomain req) {
 		Long rootOrgId = Long.parseLong(req.getRootOrgId());
@@ -318,6 +319,7 @@ public class RolePrivilegeController extends ControllerSupport {
 
 	@ApiOperation(value = "增加权限")
 	@PostMapping("addPrivilege")
+	@Transactional
 	public PrivilegeEntity addPrivilege(@RequestBody PrivilegeEntity privilege) {
 
 		privilege.setName(privilege.getName().trim());
@@ -355,6 +357,7 @@ public class RolePrivilegeController extends ControllerSupport {
 
 	@ApiOperation(value = "更新权限")
 	@PutMapping("updatePrivilege")
+	@Transactional
 	public PrivilegeEntity updatePrivilege(@RequestBody PrivilegeEntity privilege) {
 
 		privilege.setName(privilege.getName().trim());
@@ -384,6 +387,7 @@ public class RolePrivilegeController extends ControllerSupport {
 
 	@ApiOperation(value = "删除权限")
 	@DeleteMapping("deletePrivilege/{id}")
+	@Transactional
 	public void deletePrivilege(@PathVariable Long id) {
 		PrivilegeEntity privilege = GlobalHelper.getEntity(privilegeRepo, id,
 				PrivilegeEntity.class);
@@ -468,6 +472,7 @@ public class RolePrivilegeController extends ControllerSupport {
 
 	@ApiOperation(value = "添加角色")
 	@PostMapping("addRole")
+	@Transactional
 	public RoleEntity addRole(@RequestBody RoleDomain req) {
 		Long rootOrgId = req.getRootOrgId();
 		String code = req.getCode();
@@ -497,6 +502,7 @@ public class RolePrivilegeController extends ControllerSupport {
 
 	@ApiOperation(value = "更新角色")
 	@PutMapping("updateRole")
+	@Transactional
 	public RoleEntity updateRole(@RequestBody RoleDomain req) {
 		Long rootOrgId = req.getRootOrgId();
 		String code = req.getCode();
@@ -516,6 +522,7 @@ public class RolePrivilegeController extends ControllerSupport {
 
 	@ApiOperation(value = "删除角色")
 	@DeleteMapping("deleteRole/{roleId}")
+	@Transactional
 	public RoleEntity deleteRole(@PathVariable Long roleId) {
 		User accessUser = getAccessUser();
 

+ 4 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/SpecialtyController.java

@@ -59,7 +59,6 @@ import io.swagger.annotations.ApiOperation;
  * @author weiwenhai
  * @Date 2017年8月7号
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/specialty")
 public class SpecialtyController extends ControllerSupport {
@@ -219,6 +218,7 @@ public class SpecialtyController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "新增专业", notes = "新增")
 	@PostMapping
+	@Transactional
 	public Long addSpecialty(@RequestBody SpecialtyDomain domain) {
 		trim(domain, true);
 
@@ -255,6 +255,7 @@ public class SpecialtyController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "修改专业", notes = "新增")
 	@PutMapping
+	@Transactional
 	public Long updateSpecialty(@RequestBody SpecialtyDomain domain) {
 		trim(domain, true);
 
@@ -282,6 +283,7 @@ public class SpecialtyController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "删除专业")
 	@DeleteMapping("{ids}")
+	@Transactional
 	public void delete(@PathVariable String ids) {
 		List<Long> specialtyIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
@@ -307,6 +309,7 @@ public class SpecialtyController extends ControllerSupport {
 
 	@ApiOperation(value = "导入", notes = "导入")
 	@PostMapping("import")
+	@Transactional
 	public Map<String, Object> importSpecialty(@RequestParam CommonsMultipartFile file) {
 		DiskFileItem item = (DiskFileItem) file.getFileItem();
 		File storeLocation = item.getStoreLocation();

+ 7 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/StudentController.java

@@ -63,7 +63,6 @@ import io.swagger.annotations.ApiOperation;
 /**
  * 学生服务API Created by songyue on 17/1/14.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/student")
 public class StudentController extends ControllerSupport {
@@ -364,6 +363,7 @@ public class StudentController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "启用学生")
 	@PutMapping("enable/{ids}")
+	@Transactional
 	public List<String> enableStudent(@PathVariable String ids) {
 		List<Long> studentIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
@@ -389,6 +389,7 @@ public class StudentController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "禁用学生")
 	@PutMapping("disable/{ids}")
+	@Transactional
 	public List<String> disableStudent(@PathVariable String ids) {
 		List<Long> studentIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
@@ -407,6 +408,7 @@ public class StudentController extends ControllerSupport {
 
 	@ApiOperation(value = "重置用户密码", notes = "重置密码")
 	@PutMapping("resetPass/{ids}")
+	@Transactional
 	public void resetPassword(@PathVariable String ids) {
 		List<Long> studentIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
@@ -436,6 +438,7 @@ public class StudentController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "修改学生密码", notes = "修改密码")
 	@PutMapping("password/direct")
+	@Transactional
 	public Long updateStudentPassword(@RequestParam("newPassword") String newPassword) {
 		User accessUser = getAccessUser();
 		if (StringUtils.isEmpty(newPassword)) {
@@ -464,6 +467,7 @@ public class StudentController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "修改学生密码", notes = "修改密码")
 	@PutMapping("password")
+	@Transactional
 	public Long updateStudentPassword(@RequestParam("password") String password,
 			@RequestParam("newPassword") String newPassword) {
 		User accessUser = getAccessUser();
@@ -528,6 +532,7 @@ public class StudentController extends ControllerSupport {
 
 	@ApiOperation(value = "解绑学号", notes = "")
 	@PostMapping("unbindStudentCode")
+	@Transactional
 	public List<Long> unbindStudentCode(@RequestParam(required = false) String studentCode,
 			@RequestParam(required = false) String identityNumber,
 			@RequestParam(required = true) Long rootOrgId) {
@@ -554,6 +559,7 @@ public class StudentController extends ControllerSupport {
 
 	@ApiOperation(value = "解绑安全手机", notes = "")
 	@PutMapping("unbindSecurityPhone/{ids}")
+	@Transactional
 	public void unbindSecurityPhone(@PathVariable String ids) {
 		List<Long> studentIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());

+ 3 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/SystemPropertyController.java

@@ -46,7 +46,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2018年12月3日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/systemProperty")
 public class SystemPropertyController extends ControllerSupport {
@@ -100,6 +99,7 @@ public class SystemPropertyController extends ControllerSupport {
 
 	@ApiOperation(value = "新增系统参数")
 	@PostMapping
+	@Transactional
 	public void addSysProp(@RequestBody @Valid SystemPropertyDomain domain) {
 		SystemPropertyInfo info = new SystemPropertyInfo();
 		info.setDescription(domain.getDescription());
@@ -111,6 +111,7 @@ public class SystemPropertyController extends ControllerSupport {
 
 	@ApiOperation(value = "更新系统参数")
 	@PutMapping
+	@Transactional
 	public void updateSysProp(@RequestBody @Valid SystemPropertyDomain domain) {
 		SystemPropertyInfo info = new SystemPropertyInfo();
 		info.setDescription(domain.getDescription());
@@ -122,6 +123,7 @@ public class SystemPropertyController extends ControllerSupport {
 
 	@ApiOperation(value = "删除系统参数")
 	@DeleteMapping("{ids}")
+	@Transactional
 	public void deleteSysProp(@PathVariable @Required String ids) {
 		List<String> propKeys = Stream.of(ids.split(",")).map(s -> s.trim())
 				.collect(Collectors.toList());

+ 0 - 2
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/TestController.java

@@ -7,7 +7,6 @@ import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
@@ -22,7 +21,6 @@ import cn.com.qmth.examcloud.web.support.ControllerSupport;
  * @date 2018年8月23日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}")
 public class TestController extends ControllerSupport {

+ 6 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/UserController.java

@@ -59,7 +59,6 @@ import io.swagger.annotations.ApiOperation;
 /**
  * 用户服务API Created by songyue on 17/1/13.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.ctr.basic}/user")
 public class UserController extends ControllerSupport {
@@ -464,6 +463,7 @@ public class UserController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "新增用户", notes = "新增")
 	@PostMapping
+	@Transactional
 	public Map<String, Object> addUser(@RequestBody UserFormDomain userForm) {
 		trim(userForm, true);
 		userForm.setId(null);
@@ -479,6 +479,7 @@ public class UserController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "更新用户", notes = "更新")
 	@PutMapping
+	@Transactional
 	public Map<String, Object> updateUser(@RequestBody UserFormDomain userForm) {
 		trim(userForm, true);
 		if (null == userForm.getId()) {
@@ -623,6 +624,7 @@ public class UserController extends ControllerSupport {
 
 	@ApiOperation(value = "重置用户密码", notes = "重置密码")
 	@PutMapping("/resetPass/{id}")
+	@Transactional
 	public void resetPass(@PathVariable String id) {
 		List<Long> ids = Stream.of(id.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
@@ -639,6 +641,7 @@ public class UserController extends ControllerSupport {
 
 	@ApiOperation(value = "启用用户", notes = "启用用户")
 	@PutMapping("/enable/{ids}")
+	@Transactional
 	public List<String> enableUser(@PathVariable String ids) {
 		List<Long> userIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
@@ -657,6 +660,7 @@ public class UserController extends ControllerSupport {
 
 	@ApiOperation(value = "禁用用户", notes = "禁用用户")
 	@PutMapping("/disable/{ids}")
+	@Transactional
 	public List<String> disableUser(@PathVariable String ids) {
 		List<Long> userIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
@@ -682,6 +686,7 @@ public class UserController extends ControllerSupport {
 	 */
 	@ApiOperation(value = "修改用户密码", notes = "修改密码")
 	@PutMapping("/password")
+	@Transactional
 	public void updatePass(@RequestParam long userId, @RequestParam String password) {
 		String realPassword = StringEscapeUtils.unescapeJavaScript(password);
 		userRepo.updatePasswordById(userId, realPassword);

+ 0 - 2
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/AuthCloudServiceProvider.java

@@ -1,7 +1,6 @@
 package cn.com.qmth.examcloud.core.basic.api.provider;
 
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -16,7 +15,6 @@ import cn.com.qmth.examcloud.core.basic.service.bean.LoginInfo;
 import cn.com.qmth.examcloud.web.support.ControllerSupport;
 import io.swagger.annotations.ApiOperation;
 
-@Transactional
 @RestController
 @RequestMapping("${$rmp.cloud.basic}" + "auth")
 public class AuthCloudServiceProvider extends ControllerSupport implements AuthCloudService {

+ 0 - 2
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/CommonCloudServiceProvider.java

@@ -1,7 +1,6 @@
 package cn.com.qmth.examcloud.core.basic.api.provider;
 
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -25,7 +24,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2018年7月6日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.cloud.basic}" + "common")
 public class CommonCloudServiceProvider implements CommonCloudService {

+ 1 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/CourseCloudServiceProvider.java

@@ -38,7 +38,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2018年7月10日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.cloud.basic}" + "course")
 public class CourseCloudServiceProvider implements CourseCloudService {
@@ -56,6 +55,7 @@ public class CourseCloudServiceProvider implements CourseCloudService {
 
 	@ApiOperation(value = "保存课程")
 	@PostMapping("saveCourse")
+	@Transactional
 	@Override
 	public SaveCourseResp saveCourse(@RequestBody SaveCourseReq courseReq) {
 

+ 1 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/FaceCloudServiceProvider.java

@@ -39,7 +39,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2018年8月14日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.cloud.basic}" + "studentFace")
 public class FaceCloudServiceProvider extends ControllerSupport implements FaceCloudService {
@@ -60,6 +59,7 @@ public class FaceCloudServiceProvider extends ControllerSupport implements FaceC
 
 	@ApiOperation(value = "保存学生人脸数据")
 	@PostMapping("saveStudentFace")
+	@Transactional
 	@Override
 	public SaveStudentFaceResp saveStudentFace(@RequestBody SaveStudentFaceReq req) {
 		trim(req);

+ 1 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/OrgCloudServiceProvider.java

@@ -58,7 +58,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2018年8月23日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.cloud.basic}" + "org")
 public class OrgCloudServiceProvider extends ControllerSupport implements OrgCloudService {
@@ -76,6 +75,7 @@ public class OrgCloudServiceProvider extends ControllerSupport implements OrgClo
 
 	@ApiOperation(value = "保存机构")
 	@PostMapping("saveOrg")
+	@Transactional
 	@Override
 	public SaveOrgResp saveOrg(@RequestBody SaveOrgReq req) {
 		OrgInfo info = new OrgInfo();

+ 2 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/RolePrivilegeCloudServiceProvider.java

@@ -41,7 +41,6 @@ import io.swagger.annotations.ApiOperation;
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
 @Api("角色权限")
-@Transactional
 @RestController
 @RequestMapping("${$rmp.cloud.basic}" + "rolePrivilege")
 public class RolePrivilegeCloudServiceProvider extends ControllerSupport
@@ -67,6 +66,7 @@ public class RolePrivilegeCloudServiceProvider extends ControllerSupport
 
 	@ApiOperation(value = "添加角色")
 	@PostMapping("saveRole")
+	@Transactional
 	@Override
 	public SaveRoleResp saveRole(@RequestBody SaveRoleReq req) {
 		RoleInfo info = new RoleInfo();
@@ -88,6 +88,7 @@ public class RolePrivilegeCloudServiceProvider extends ControllerSupport
 
 	@ApiOperation(value = "删除角色")
 	@PostMapping("deleteRole")
+	@Transactional
 	@Override
 	public DeleteRoleResp deleteRole(@RequestBody DeleteRoleReq req) {
 		RoleInfo info = new RoleInfo();

+ 4 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/StudentCloudServiceProvider.java

@@ -42,7 +42,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2018年8月14日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.cloud.basic}" + "student")
 public class StudentCloudServiceProvider extends ControllerSupport implements StudentCloudService {
@@ -66,6 +65,7 @@ public class StudentCloudServiceProvider extends ControllerSupport implements St
 
 	@ApiOperation(value = "保存学生")
 	@PostMapping("saveStudent")
+	@Transactional
 	@Override
 	public SaveStudentResp saveStudent(@RequestBody SaveStudentReq req) {
 
@@ -143,6 +143,7 @@ public class StudentCloudServiceProvider extends ControllerSupport implements St
 
 	@ApiOperation(value = "解绑学号")
 	@PostMapping("unbindStudentCode")
+	@Transactional
 	@Override
 	public UnbindStudentCodeResp unbindStudentCode(@RequestBody UnbindStudentCodeReq req) {
 		Long rootOrgId = req.getRootOrgId();
@@ -171,6 +172,7 @@ public class StudentCloudServiceProvider extends ControllerSupport implements St
 
 	@ApiOperation(value = "修改密码")
 	@PostMapping("updatePassword")
+	@Transactional
 	@Override
 	public UpdatePasswordResp updatePassword(@RequestBody UpdatePasswordReq req) {
 		Long rootOrgId = req.getRootOrgId();
@@ -203,6 +205,7 @@ public class StudentCloudServiceProvider extends ControllerSupport implements St
 
 	@ApiOperation(value = "更新学生状态")
 	@PostMapping("updateStudentStatus")
+	@Transactional
 	@Override
 	public UpdateStudentStatusResp updateStudentStatus(@RequestBody UpdateStudentStatusReq req) {
 		Long rootOrgId = req.getRootOrgId();

+ 1 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/SystemPropertyCloudServiceProvider.java

@@ -27,7 +27,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2018年12月3日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.cloud.basic}" + "systemProperty")
 public class SystemPropertyCloudServiceProvider extends ControllerSupport
@@ -41,6 +40,7 @@ public class SystemPropertyCloudServiceProvider extends ControllerSupport
 
 	@ApiOperation(value = "设置配置")
 	@PostMapping("setSystemProperty")
+	@Transactional
 	@Override
 	public SetSystemPropertyResp setSystemProperty(@RequestBody SetSystemPropertyReq req) {
 		String key = req.getKey();

+ 1 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/UserCloudServiceProvider.java

@@ -58,7 +58,6 @@ import io.swagger.annotations.ApiOperation;
  * @date 2018年7月23日
  * @Copyright (c) 2018-? http://qmth.com.cn All Rights Reserved.
  */
-@Transactional
 @RestController
 @RequestMapping("${$rmp.cloud.basic}" + "user")
 public class UserCloudServiceProvider extends ControllerSupport implements UserCloudService {
@@ -82,6 +81,7 @@ public class UserCloudServiceProvider extends ControllerSupport implements UserC
 
 	@ApiOperation(value = "保存用户")
 	@PostMapping("addUser")
+	@Transactional
 	@Override
 	public AddUserResp addUser(@RequestBody AddUserReq req) {
 		trim(req);