From ec5237992ac60b6eb0df07ad3f5038b52a582882 Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期五, 10 十一月 2023 11:42:26 +0800
Subject: [PATCH] Changes
---
modules/mainPart/src/main/java/com/zt/life/modules/project/dto/SoftwareTestOrderDto.java | 9 +-
modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java | 56 ++++++++++++++++++
web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue | 24 -------
modules/mainPart/src/main/java/com/zt/life/modules/project/controller/SoftwareTestOrderController.java | 83 ++++++++++++++++-----------
4 files changed, 109 insertions(+), 63 deletions(-)
diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/SoftwareTestOrderController.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/SoftwareTestOrderController.java
index b74ea00..0a7579e 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/SoftwareTestOrderController.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/SoftwareTestOrderController.java
@@ -12,13 +12,13 @@
import com.zt.common.validator.group.AddGroup;
import com.zt.common.validator.group.DefaultGroup;
import com.zt.common.validator.group.UpdateGroup;
-import com.zt.life.modules.project.dto.ProjectDto;
+import com.zt.life.modules.project.dto.SoftwareTestOrderDto;
import com.zt.life.modules.project.model.SoftwareTestOrder;
+import com.zt.life.modules.project.model.SoftwareTestOrderMeasured;
import com.zt.life.modules.project.service.ProjectService;
import com.zt.life.modules.project.service.SoftwareTestOrderDeliverableService;
import com.zt.life.modules.project.service.SoftwareTestOrderMeasuredService;
import com.zt.life.modules.project.service.SoftwareTestOrderService;
-import com.zt.life.modules.sysBaseInfo.model.TestAgencyInfo;
import com.zt.life.modules.sysBaseInfo.service.TestAgencyInfoService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -28,24 +28,22 @@
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
-import javax.servlet.http.HttpServletResponse;
-import java.util.List;
-
/**
* software_test_order
*
- * @author zt generator
+ * @author zt generator
* @since 1.0.0 2023-11-08
*/
@RestController
@RequestMapping("/project/SoftwareTestOrder/")
-@Api(tags="software_test_order")
+@Api(tags = "software_test_order")
public class SoftwareTestOrderController {
@Autowired
- private ProjectService projectService;
- @Autowired
private SoftwareTestOrderService softwareTestOrderService;
+
+ @Autowired
+ private ProjectService projectService;
@Autowired
private SoftwareTestOrderDeliverableService softwareTestOrderDeliverableService;
@Autowired
@@ -56,28 +54,43 @@
@GetMapping("page")
@ApiOperation("鍒嗛〉")
@ApiImplicitParams({
- @ApiImplicitParam(name = Constant.Q.PAGE, value = Constant.QV.PAGE, required = true, dataType = Constant.QT.INT),
- @ApiImplicitParam(name = Constant.Q.LIMIT, value = Constant.QV.LIMIT, required = true, dataType = Constant.QT.INT),
- @ApiImplicitParam(name = Constant.Q.ORDER_FIELD, value = Constant.QV.ORDER_FIELD, dataType = Constant.QT.STRING),
- @ApiImplicitParam(name = Constant.Q.ORDER, value = Constant.QV.ORDER, dataType = Constant.QT.STRING),
- @ApiImplicitParam(name = "testBasis", value = "娴嬭瘯渚濇嵁", dataType = Constant.QT.STRING, format = "test_basis^EQ"),
- @ApiImplicitParam(name = "testType", value = "娴嬭瘯绫诲瀷", dataType = Constant.QT.STRING, format = "test_type^EQ"),
- @ApiImplicitParam(name = "testStandard", value = "娴嬭瘯鏍囧噯", dataType = Constant.QT.STRING, format = "test_standard^EQ"),
- @ApiImplicitParam(name = "articleNature", value = "鐗╁搧鎬ц川", dataType = Constant.QT.STRING, format = "article_nature^EQ")})
- public PageResult<SoftwareTestOrder> page(@ApiIgnore @QueryParam QueryFilter queryFilter){
+ @ApiImplicitParam(name = Constant.Q.PAGE, value = Constant.QV.PAGE, required = true, dataType = Constant.QT.INT),
+ @ApiImplicitParam(name = Constant.Q.LIMIT, value = Constant.QV.LIMIT, required = true, dataType = Constant.QT.INT),
+ @ApiImplicitParam(name = Constant.Q.ORDER_FIELD, value = Constant.QV.ORDER_FIELD, dataType = Constant.QT.STRING),
+ @ApiImplicitParam(name = Constant.Q.ORDER, value = Constant.QV.ORDER, dataType = Constant.QT.STRING),
+ @ApiImplicitParam(name = "testBasis", value = "娴嬭瘯渚濇嵁", dataType = Constant.QT.STRING, format = "test_basis^EQ"),
+ @ApiImplicitParam(name = "testType", value = "娴嬭瘯绫诲瀷", dataType = Constant.QT.STRING, format = "test_type^EQ"),
+ @ApiImplicitParam(name = "testStandard", value = "娴嬭瘯鏍囧噯", dataType = Constant.QT.STRING, format = "test_standard^EQ"),
+ @ApiImplicitParam(name = "articleNature", value = "鐗╁搧鎬ц川", dataType = Constant.QT.STRING, format = "article_nature^EQ")})
+ public PageResult<SoftwareTestOrder> page(@ApiIgnore @QueryParam QueryFilter queryFilter) {
return PageResult.ok(softwareTestOrderService.page(queryFilter));
}
@GetMapping("{id}")
@ApiOperation("淇℃伅")
- public Result<ProjectDto> get(@PathVariable("id") Long id){
- ProjectDto data = new ProjectDto();
- SoftwareTestOrder softwareTestOrder = softwareTestOrderService.get(id);
- data.setSoftwareTestOrder(softwareTestOrder);
- data.setProject(projectService.get(softwareTestOrder.getProjectId()));
- data.setTestAgencyInfo(testAgencyInfoService.get(softwareTestOrder.getAgencyId()));
- data.setChildrenTable2(softwareTestOrderDeliverableService.childrenTables(softwareTestOrder.getId()));
- data.setChildrenTable1(softwareTestOrderMeasuredService.childrenTables(softwareTestOrder.getId()));
+ public Result<SoftwareTestOrderDto> get(@PathVariable("id") Long id, @PathVariable("projectId") Long projectId) {
+ SoftwareTestOrderDto data = new SoftwareTestOrderDto();
+
+ if (id != null) {
+ data.setId(id);
+ SoftwareTestOrder softwareTestOrder = softwareTestOrderService.get(id);
+ data.setSoftwareTestOrder(softwareTestOrder);
+
+ if (projectId == null)
+ projectId = softwareTestOrder.getProjectId();
+
+ data.setTestAgencyInfo(testAgencyInfoService.get(id));
+ data.setSoftwareTestOrderDeliverableList(softwareTestOrderDeliverableService.childrenTables(id));
+ data.setSoftwareTestOrderMeasuredList(softwareTestOrderMeasuredService.childrenTables(id));
+ } else {
+ data.setTestAgencyInfo(testAgencyInfoService.get(10000L));
+ }
+ if (projectId != null) {
+ data.setProjectId(projectId);
+ data.setProject(projectService.get(projectId));
+ }
+
+
return Result.ok(data);
}
@@ -85,10 +98,13 @@
@PostMapping
@ApiOperation("鏂板")
@LogOperation("鏂板")
- public Result insert(@RequestBody SoftwareTestOrder softwareTestOrder){
+ public Result insert(@RequestBody SoftwareTestOrderDto softwareTestOrderDto) {
//鏁堥獙鏁版嵁
- ValidatorUtils.validateEntity(softwareTestOrder, AddGroup.class, DefaultGroup.class);
- softwareTestOrderService.insert(softwareTestOrder);
+
+ ValidatorUtils.validateEntity(softwareTestOrderDto.getSoftwareTestOrder(), AddGroup.class, DefaultGroup.class);
+
+ Boolean result = softwareTestOrderService.save(softwareTestOrderDto);
+
return Result.ok();
}
@@ -96,18 +112,17 @@
@PutMapping
@ApiOperation("淇敼")
@LogOperation("淇敼")
- public Result update(@RequestBody SoftwareTestOrder softwareTestOrder){
+ public Result update(@RequestBody SoftwareTestOrderDto softwareTestOrderDtor) {
//鏁堥獙鏁版嵁
- ValidatorUtils.validateEntity(softwareTestOrder, UpdateGroup.class, DefaultGroup.class);
- softwareTestOrderService.update(softwareTestOrder);
-
+ ValidatorUtils.validateEntity(softwareTestOrderDtor.getSoftwareTestOrder(), UpdateGroup.class, DefaultGroup.class);
+ Boolean result = softwareTestOrderService.save(softwareTestOrderDtor);
return Result.ok();
}
@DeleteMapping
@ApiOperation("鍒犻櫎")
@LogOperation("鍒犻櫎")
- public Result delete(@RequestBody Long[] ids){
+ public Result delete(@RequestBody Long[] ids) {
//鏁堥獙鏁版嵁
AssertUtils.isArrayEmpty(ids, "id");
softwareTestOrderService.delete(ids);
diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/dto/ProjectDto.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/dto/SoftwareTestOrderDto.java
similarity index 71%
rename from modules/mainPart/src/main/java/com/zt/life/modules/project/dto/ProjectDto.java
rename to modules/mainPart/src/main/java/com/zt/life/modules/project/dto/SoftwareTestOrderDto.java
index 75abdc6..e86710d 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/project/dto/ProjectDto.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/dto/SoftwareTestOrderDto.java
@@ -13,14 +13,15 @@
import java.util.List;
@Data
-public class ProjectDto{
-
+public class SoftwareTestOrderDto {
+ private Long id;
+ private Long projectId;
private SoftwareTestOrder softwareTestOrder;
private Project project;
private TestAgencyInfo TestAgencyInfo;
@ApiModelProperty(value = "琚祴浠�")
- private List<SoftwareTestOrderMeasured> childrenTable1 = new ArrayList<>();
+ private List<SoftwareTestOrderMeasured> softwareTestOrderMeasuredList = new ArrayList<>();
@ApiModelProperty(value = "浜や粯浠�")
- private List<SoftwareTestOrderDeliverable> childrenTable2 = new ArrayList<>();
+ private List<SoftwareTestOrderDeliverable> softwareTestOrderDeliverableList = new ArrayList<>();
}
diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java
index 0c32f2e..0d66775 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java
@@ -2,9 +2,15 @@
import com.zt.common.service.BaseService;
import com.zt.life.modules.project.dao.SoftwareTestOrderDao;
+import com.zt.life.modules.project.dto.SoftwareTestOrderDto;
import com.zt.life.modules.project.model.SoftwareTestOrder;
+import com.zt.life.modules.project.model.SoftwareTestOrderDeliverable;
+import com.zt.life.modules.project.model.SoftwareTestOrderMeasured;
+import com.zt.life.modules.sysBaseInfo.service.TestAgencyInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zt.common.db.query.QueryFilter;
+
import javax.annotation.Resource;
import java.util.List;
@@ -12,11 +18,20 @@
/**
* software_test_order
*
- * @author zt generator
+ * @author zt generator
* @since 1.0.0 2023-11-08
*/
@Service
-public class SoftwareTestOrderService extends BaseService<SoftwareTestOrderDao, SoftwareTestOrder> {
+public class SoftwareTestOrderService extends BaseService<SoftwareTestOrderDao, SoftwareTestOrder> {
+
+ @Autowired
+ private ProjectService projectService;
+ @Autowired
+ private SoftwareTestOrderDeliverableService softwareTestOrderDeliverableService;
+ @Autowired
+ private SoftwareTestOrderMeasuredService softwareTestOrderMeasuredService;
+ @Autowired
+ private TestAgencyInfoService testAgencyInfoService;
/**
* 鍒嗛〉鏌ヨ
@@ -38,4 +53,41 @@
super.deleteLogic(ids);
}
+
+ public Boolean save(SoftwareTestOrderDto softwareTestOrderDto) {
+ Long softwareTestOrderId = softwareTestOrderDto.getSoftwareTestOrder().getId();
+ if (softwareTestOrderId != null)
+ baseDao.updateById(softwareTestOrderDto.getSoftwareTestOrder());
+ else {
+ baseDao.insert(softwareTestOrderDto.getSoftwareTestOrder());
+ softwareTestOrderId = softwareTestOrderDto.getSoftwareTestOrder().getId();
+ }
+
+ for (SoftwareTestOrderMeasured softwareTestOrderMeasured : softwareTestOrderDto.getSoftwareTestOrderMeasuredList()) {
+ softwareTestOrderMeasured.setOrderId(softwareTestOrderId);
+ if (softwareTestOrderMeasured.getId() != null) {
+ softwareTestOrderMeasuredService.update(softwareTestOrderMeasured);
+ } else {
+ softwareTestOrderMeasuredService.insert(softwareTestOrderMeasured);
+ }
+ }
+
+ for (SoftwareTestOrderDeliverable softwareTestOrderDeliverable : softwareTestOrderDto.getSoftwareTestOrderDeliverableList()) {
+ softwareTestOrderDeliverable.setOrderId(softwareTestOrderId);
+ if (softwareTestOrderDeliverable.getId() != null) {
+ softwareTestOrderDeliverableService.update(softwareTestOrderDeliverable);
+ } else {
+ softwareTestOrderDeliverableService.insert(softwareTestOrderDeliverable);
+ }
+ }
+
+ if (softwareTestOrderDto.getTestAgencyInfo().getId() == 10000) {
+ softwareTestOrderDto.getTestAgencyInfo().setId(softwareTestOrderId);
+ testAgencyInfoService.insert(softwareTestOrderDto.getTestAgencyInfo());
+ } else {
+ testAgencyInfoService.update(softwareTestOrderDto.getTestAgencyInfo());
+ }
+ return true;
+ }
+
}
diff --git a/web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue b/web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue
index aba7907..1e5b06a 100644
--- a/web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue
+++ b/web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue
@@ -77,29 +77,7 @@
return {
dataForm: {
id: '',
- projectId: '',
- optEnviron: '',
- programLang: '',
- testBasis: '',
- testType: '',
- testStandard: '',
- startDate: '',
- endDate: '',
- testVenue: '',
- otherRequire: '',
- testDate: '',
- deliveryDate: '',
- testCost: '',
- articleNature: '',
- sampleStatus: '',
- agencyName: '',
- site: '',
- businContact: '',
- businComplaint: '',
- laborContact: '',
- labContactNum: '',
- postalCode: '',
- fax: ''
+ projectId: ''
}
}
},
--
Gitblit v1.9.1