增加子表编辑的另一种实现例子
This commit is contained in:
@@ -38,19 +38,25 @@ public class TestDataService extends CrudService<TestDataDao, TestData> {
|
||||
*/
|
||||
@Override
|
||||
public TestData get(TestData testData) {
|
||||
TestData entity = super.get(testData);
|
||||
if (entity != null){
|
||||
TestDataChild testDataChild = new TestDataChild(entity);
|
||||
return super.get(testData);
|
||||
}
|
||||
|
||||
/**
|
||||
* 加载子表数据
|
||||
*/
|
||||
public TestData loadChildData(TestData testData) {
|
||||
if (testData != null && !testData.getIsNewRecord()){
|
||||
TestDataChild testDataChild = new TestDataChild(testData);
|
||||
testDataChild.setStatus(TestDataChild.STATUS_NORMAL);
|
||||
entity.setTestDataChildList(testDataChildDao.findList(testDataChild));
|
||||
testData.setTestDataChildList(testDataChildDao.findList(testDataChild));
|
||||
}
|
||||
return entity;
|
||||
return testData;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询分页数据
|
||||
* @param page 分页对象
|
||||
* @param testData
|
||||
* @param testData page 分页对象
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
@@ -146,7 +152,7 @@ public class TestDataService extends CrudService<TestDataDao, TestData> {
|
||||
/**
|
||||
* 事务测试,若 Child 报错,则回滚
|
||||
*/
|
||||
@Transactional//(propagation = Propagation.NOT_SUPPORTED)
|
||||
@Transactional//(propagation=Propagation.NOT_SUPPORTED)
|
||||
public void transTest(TestData testData) {
|
||||
testData.setTestInput("transTest");
|
||||
testData.setTestTextarea(IdGen.randomBase62(5));
|
||||
|
||||
@@ -4,11 +4,13 @@
|
||||
*/
|
||||
package com.jeesite.modules.test.web;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.jeesite.common.config.Global;
|
||||
import com.jeesite.common.entity.Page;
|
||||
import com.jeesite.common.lang.StringUtils;
|
||||
import com.jeesite.common.web.BaseController;
|
||||
import com.jeesite.modules.test.entity.TestData;
|
||||
import com.jeesite.modules.test.entity.TestDataChild;
|
||||
import com.jeesite.modules.test.service.TestDataService;
|
||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Controller;
|
||||
@@ -19,12 +21,9 @@ import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
|
||||
import com.jeesite.common.config.Global;
|
||||
import com.jeesite.common.entity.Page;
|
||||
import com.jeesite.common.web.BaseController;
|
||||
import com.jeesite.modules.test.entity.TestData;
|
||||
import com.jeesite.modules.test.entity.TestDataChild;
|
||||
import com.jeesite.modules.test.service.TestDataService;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 测试数据Controller
|
||||
@@ -83,9 +82,10 @@ public class TestDataController extends BaseController {
|
||||
*/
|
||||
@RequiresPermissions("test:testData:view")
|
||||
@RequestMapping(value = "form")
|
||||
public String form(TestData testData, Model model) {
|
||||
public String form(TestData testData, String flag, Model model) {
|
||||
testDataService.loadChildData(testData);
|
||||
model.addAttribute("testData", testData);
|
||||
return "modules/test/testDataForm";
|
||||
return "modules/test/testDataForm"+ StringUtils.defaultString(flag, "");
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user