From 3a985f6b77989c95029d273864aa5f782e15ef96 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期二, 14 十一月 2023 11:07:57 +0800 Subject: [PATCH] Changes --- modules/mainPart/src/main/java/com/zt/life/modules/project/service/ProjectService.java | 7 + modules/mainPart/src/main/resources/mapper/project/ProjectDao.xml | 11 + modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrderDeliverable.java | 8 modules/mainPart/src/main/java/com/zt/life/modules/project/model/Project.java | 4 modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrder.java | 169 ++---------------------- modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrderMeasured.java | 13 - modules/mainPart/src/main/java/com/zt/life/modules/project/dto/SoftwareTestOrderDto.java | 4 modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java | 128 +++++++++++++++++ modules/mainPart/src/main/java/com/zt/life/modules/project/controller/SoftwareTestOrderController.java | 70 +++------ modules/mainPart/src/main/java/com/zt/life/modules/project/dao/ProjectDao.java | 3 10 files changed, 198 insertions(+), 219 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 a67576f..6fa1726 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 @@ -13,6 +13,7 @@ import com.zt.common.validator.group.DefaultGroup; import com.zt.common.validator.group.UpdateGroup; import com.zt.life.modules.project.dto.SoftwareTestOrderDto; +import com.zt.life.modules.project.model.Project; import com.zt.life.modules.project.model.SoftwareTestOrder; import com.zt.life.modules.project.model.SoftwareTestOrderDeliverable; import com.zt.life.modules.project.model.SoftwareTestOrderMeasured; @@ -26,10 +27,14 @@ import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.apache.ibatis.annotations.Param; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import springfox.documentation.annotations.ApiIgnore; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -78,52 +83,7 @@ @GetMapping("getDto") @ApiOperation("淇℃伅") public Result<SoftwareTestOrderDto> getDto(Long orderId, Long projectId) { - SoftwareTestOrderDto data = new SoftwareTestOrderDto(); - - if (orderId != null) { - data.setId(orderId); - SoftwareTestOrder softwareTestOrder = softwareTestOrderService.get(orderId); - data.setSoftwareTestOrder(softwareTestOrder); - - if (projectId == null) - projectId = softwareTestOrder.getProjectId(); - - data.setTestAgencyInfo(testAgencyInfoService.get(orderId)); - List<SoftwareTestOrderDeliverable> deliverableList = softwareTestOrderDeliverableService.childrenTables(orderId); - if (deliverableList.isEmpty()) { - deliverableList = softwareTestOrderService.deliverableDict(); - deliverableList = deliverableList.stream() - .peek(deliverable -> { - if (deliverable.getIdentify() == null) { - // 淇敼 identify 瀛楁鐨勫�间负鏂板�� - deliverable.setIdentify("1.0.0"); - } - }) - .collect(Collectors.toList()); - } - data.setSoftwareTestOrderDeliverableList(deliverableList); - - List<SoftwareTestOrderMeasured> measuredList = softwareTestOrderMeasuredService.childrenTables(orderId); - if (measuredList.isEmpty()) { - measuredList = softwareTestOrderService.MeasuredDict(); - measuredList = measuredList.stream() - .peek(measured -> { - if (measured.getIdentify() == null) { - // 淇敼 identify 瀛楁鐨勫�间负鏂板�� - measured.setIdentify("1.0.0"); - } - }) - .collect(Collectors.toList()); - } - data.setSoftwareTestOrderMeasuredList(measuredList);} else { - data.setTestAgencyInfo(testAgencyInfoService.get(10000L)); - } - if (projectId != null) { - data.setProjectId(projectId); - data.setProject(projectService.get(projectId)); - } - - + SoftwareTestOrderDto data = softwareTestOrderService.getDto(orderId, projectId); return Result.ok(data); } @@ -163,4 +123,22 @@ return Result.ok(); } + @GetMapping("exportWord/{id}") + @ApiOperation("鎵撳嵃娴嬭瘯濮旀墭鍗�") + @LogOperation("鎵撳嵃娴嬭瘯濮旀墭鍗�") + public void exportWord(@PathVariable("id") Long id, HttpServletRequest request, HttpServletResponse response) { + softwareTestOrderService.exportWord(id, request, response); + } + + @GetMapping("getCode") + @ApiOperation("缂栧彿") + public Result<List<String>> getCode() { + return Result.ok( projectService.getCode()); + } + + @GetMapping("getProject/{code}") + @ApiOperation("椤圭洰鏁版嵁") + public Result<Project> getProject(@Param("code") String code) { + return Result.ok(projectService.getProject(code)); + } } diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/dao/ProjectDao.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/dao/ProjectDao.java index a5b0fb4..5db0068 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/project/dao/ProjectDao.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/dao/ProjectDao.java @@ -20,4 +20,7 @@ List<Project> getList(Map<String, Object> params); + List<String> getCode(); + + Project getProject(String code); } diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/dto/SoftwareTestOrderDto.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/dto/SoftwareTestOrderDto.java index e86710d..752f8f7 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/project/dto/SoftwareTestOrderDto.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/dto/SoftwareTestOrderDto.java @@ -20,8 +20,8 @@ private Project project; private TestAgencyInfo TestAgencyInfo; @ApiModelProperty(value = "琚祴浠�") - private List<SoftwareTestOrderMeasured> softwareTestOrderMeasuredList = new ArrayList<>(); + private List<SoftwareTestOrderMeasured> measuredList = new ArrayList<>(); @ApiModelProperty(value = "浜や粯浠�") - private List<SoftwareTestOrderDeliverable> softwareTestOrderDeliverableList = new ArrayList<>(); + private List<SoftwareTestOrderDeliverable> deliverableList = new ArrayList<>(); } diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/model/Project.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/model/Project.java index fb8c953..efa86b0 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/project/model/Project.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/model/Project.java @@ -51,8 +51,8 @@ @ApiModelProperty(value = "椤圭洰缂栧彿") private String code; - @ApiModelProperty(value = "椤圭洰鏍囪瘑") - private String identity; + @ApiModelProperty(value = "杞欢鏍囪瘑") + private String softwareIdentity; @ApiModelProperty(value = "瀵嗙骇") private Integer secretClass; diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrder.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrder.java index 04ffe2f..d093085 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrder.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrder.java @@ -10,6 +10,7 @@ import lombok.EqualsAndHashCode; import java.util.Date; +import java.util.List; /** * software_test_order @@ -139,8 +140,8 @@ private String softwareName; @TableField(exist = false) - @ApiModelProperty(value = "椤圭洰鏍囪瘑") - private String identity; + @ApiModelProperty(value = "杞欢鏍囪瘑") + private String softwareIdentity; @TableField(exist = false) @ApiModelProperty(value = "瀵嗙骇") @@ -195,157 +196,17 @@ @ApiModelProperty(value = "鏄惁琚祴浠�") private String isMeasured; + @TableField(exist = false) + @ApiModelProperty(value = "娴嬭瘯绫诲瀷1绗�1鍒�") + List<String> testType11; + @TableField(exist = false) + @ApiModelProperty(value = "娴嬭瘯绫诲瀷1绗�2鍒�") + List<String> testType12; + @TableField(exist = false) + @ApiModelProperty(value = "娴嬭瘯绫诲瀷2绗�1鍒�") + List<String> testType21; + @TableField(exist = false) + @ApiModelProperty(value = "娴嬭瘯绫诲瀷2绗�2鍒�") + List<String> testType22; - - public String getEntrustUnitName() { - return entrustUnitName; - } - - public void setEntrustUnitName(String entrustUnitName) { - this.entrustUnitName = entrustUnitName; - } - - public String getEntrustUnitAddress() { - return entrustUnitAddress; - } - - public void setEntrustUnitAddress(String entrustUnitAddress) { - this.entrustUnitAddress = entrustUnitAddress; - } - - public String getEntrustUnitContact() { - return entrustUnitContact; - } - - public void setEntrustUnitContact(String entrustUnitContact) { - this.entrustUnitContact = entrustUnitContact; - } - - public String getEntrustUnitContWay() { - return entrustUnitContWay; - } - - public void setEntrustUnitContWay(String entrustUnitContWay) { - this.entrustUnitContWay = entrustUnitContWay; - } - - public String getDevelopUnitName() { - return developUnitName; - } - - public void setDevelopUnitName(String developUnitName) { - this.developUnitName = developUnitName; - } - - public String getDevelopUnitAddress() { - return developUnitAddress; - } - - public void setDevelopUnitAddress(String developUnitAddress) { - this.developUnitAddress = developUnitAddress; - } - - public String getDevelopUnitContact() { - return developUnitContact; - } - - public void setDevelopUnitContact(String developUnitContact) { - this.developUnitContact = developUnitContact; - } - - public String getDevelopUnitContWay() { - return developUnitContWay; - } - - public void setDevelopUnitContWay(String developUnitContWay) { - this.developUnitContWay = developUnitContWay; - } - - public String getSoftwareName() { - return softwareName; - } - - public void setSoftwareName(String softwareName) { - this.softwareName = softwareName; - } - - public String getCode() { - return code; - } - - public void setCode(String code) { - this.code = code; - } - - public String getIdentity() { - return identity; - } - - public void setIdentity(String identity) { - this.identity = identity; - } - - public Integer getSecretClass() { - return secretClass; - } - - public void setSecretClass(Integer secretClass) { - this.secretClass = secretClass; - } - - public Integer getCriticalLevel() { - return criticalLevel; - } - - public void setCriticalLevel(Integer criticalLevel) { - this.criticalLevel = criticalLevel; - } - - public Integer getTestLevel() { - return testLevel; - } - - public void setTestLevel(Integer testLevel) { - this.testLevel = testLevel; - } - - public String getSoftwareType() { - return softwareType; - } - - public void setSoftwareType(String softwareType) { - this.softwareType = softwareType; - } - - public String getProjectLeader() { - return projectLeader; - } - - public void setProjectLeader(String projectLeader) { - this.projectLeader = projectLeader; - } - - public String getProjectTesters() { - return projectTesters; - } - - public void setProjectTesters(String projectTesters) { - this.projectTesters = projectTesters; - } - - public String getProjectReviewer() { - return projectReviewer; - } - - public void setProjectReviewer(String projectReviewer) { - this.projectReviewer = projectReviewer; - } - - public Integer getIsContract() { - return isContract; - } - - public void setIsContract(Integer isContract) { - this.isContract = isContract; - } } diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrderDeliverable.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrderDeliverable.java index fef4f1c..8e99ace 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrderDeliverable.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrderDeliverable.java @@ -23,17 +23,15 @@ private static final long serialVersionUID = 1L; @ApiModelProperty(value = "搴忓彿") - private Integer num; + private Integer no; @ApiModelProperty(value = "濮旀墭鍗旾D") private Long orderId; - @ApiModelProperty(value = "鏍囪瘑/鐗堟湰") private String identify; - @TableField(exist = false) - @ApiModelProperty(value = "瀛楀吀鏍囩/鍚嶇О") - private String dictLabel; + @ApiModelProperty(value = "浜や粯鐗╁悕绉�") + private String name; } diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrderMeasured.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrderMeasured.java index 27e69af..b0afcf6 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrderMeasured.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrderMeasured.java @@ -22,13 +22,14 @@ public class SoftwareTestOrderMeasured extends BusiEntity { private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "搴忓彿") - private Integer num; - @ApiModelProperty(value = "濮旀墭鍗旾D") private Long orderId; + @ApiModelProperty(value = "搴忓彿") + private Integer no; + + @ApiModelProperty(value = "琚祴浠跺悕绉�") + private String name; @ApiModelProperty(value = "鏍囪瘑/鐗堟湰") private String identify; @@ -36,8 +37,6 @@ @ApiModelProperty(value = "鏄惁琚祴浠�") private String isMeasured; - @TableField(exist = false) - @ApiModelProperty(value = "瀛楀吀鏍囩/鍚嶇О") - private String dictLabel; + } diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/service/ProjectService.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/service/ProjectService.java index bb5e4b0..6df9406 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/project/service/ProjectService.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/service/ProjectService.java @@ -41,4 +41,11 @@ } + public List<String> getCode() { + return baseDao.getCode(); + } + + public Project getProject(String code) { + return baseDao.getProject(code); + } } 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 b69fe1c..707c2a7 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 @@ -1,6 +1,11 @@ package com.zt.life.modules.project.service; import com.zt.common.service.BaseService; +import com.zt.core.sys.dto.DictDto; +import com.zt.core.sys.dto.DictItemDto; +import com.zt.core.sys.dto.DictLeafDto; +import com.zt.life.export.dto.WordFile; +import com.zt.life.export.service.WordFileService; import com.zt.life.modules.project.dao.SoftwareTestOrderDao; import com.zt.life.modules.project.dto.SoftwareTestOrderDto; import com.zt.life.modules.project.model.SoftwareTestOrder; @@ -8,14 +13,22 @@ import com.zt.life.modules.project.model.SoftwareTestOrderMeasured; import com.zt.life.modules.sysBaseInfo.service.TestAgencyInfoService; import com.zt.modules.coderule.service.SysCodeRuleService; +import com.zt.modules.sys.service.SysDictTypeService; +import lombok.val; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.zt.common.db.query.QueryFilter; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.FileNotFoundException; +import java.io.UnsupportedEncodingException; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** @@ -37,6 +50,11 @@ private TestAgencyInfoService testAgencyInfoService; @Autowired private SysCodeRuleService sysCodeRuleService; + + @Autowired + private SysDictTypeService sysDictTypeService; + @Autowired + private WordFileService wordFileService; /** * 鍒嗛〉鏌ヨ @@ -71,7 +89,7 @@ softwareTestOrderId = softwareTestOrderDto.getSoftwareTestOrder().getId(); } - for (SoftwareTestOrderMeasured softwareTestOrderMeasured : softwareTestOrderDto.getSoftwareTestOrderMeasuredList()) { + for (SoftwareTestOrderMeasured softwareTestOrderMeasured : softwareTestOrderDto.getMeasuredList()) { softwareTestOrderMeasured.setOrderId(softwareTestOrderId); if (softwareTestOrderMeasured.getId() != null) { softwareTestOrderMeasuredService.update(softwareTestOrderMeasured); @@ -80,7 +98,7 @@ } } - for (SoftwareTestOrderDeliverable softwareTestOrderDeliverable : softwareTestOrderDto.getSoftwareTestOrderDeliverableList()) { + for (SoftwareTestOrderDeliverable softwareTestOrderDeliverable : softwareTestOrderDto.getDeliverableList()) { softwareTestOrderDeliverable.setOrderId(softwareTestOrderId); if (softwareTestOrderDeliverable.getId() != null) { softwareTestOrderDeliverableService.update(softwareTestOrderDeliverable); @@ -98,12 +116,116 @@ return true; } + public SoftwareTestOrderDto getDto(Long orderId, Long projectId) { + SoftwareTestOrderDto data = new SoftwareTestOrderDto(); + if (orderId != null) { + data.setId(orderId); + SoftwareTestOrder softwareTestOrder = this.get(orderId); + data.setSoftwareTestOrder(softwareTestOrder); + + if (projectId == null) + projectId = softwareTestOrder.getProjectId(); + + data.setTestAgencyInfo(testAgencyInfoService.get(orderId)); + List<SoftwareTestOrderDeliverable> deliverableList = softwareTestOrderDeliverableService.childrenTables(orderId); + if (deliverableList.isEmpty()) { + deliverableList = this.deliverableDict(); + deliverableList = deliverableList.stream() + .peek(deliverable -> { + if (deliverable.getIdentify() == null) { + // 淇敼 identify 瀛楁鐨勫�间负鏂板�� + deliverable.setIdentify("1.0.0"); + } + }) + .collect(Collectors.toList()); + } + data.setDeliverableList(deliverableList); + + List<SoftwareTestOrderMeasured> measuredList = softwareTestOrderMeasuredService.childrenTables(orderId); + if (measuredList.isEmpty()) { + measuredList = this.MeasuredDict(); + measuredList = measuredList.stream() + .peek(measured -> { + if (measured.getIdentify() == null) { + // 淇敼 identify 瀛楁鐨勫�间负鏂板�� + measured.setIdentify("1.0.0"); + } + }) + .collect(Collectors.toList()); + } + data.setMeasuredList(measuredList); + } else { + data.setTestAgencyInfo(testAgencyInfoService.get(10000L)); + } + if (projectId != null) { + data.setProjectId(projectId); + data.setProject(projectService.get(projectId)); + } + return data; + } + public List<SoftwareTestOrderDeliverable> deliverableDict() { - return baseDao.getdeliverableDictList(); + return baseDao.getdeliverableDictList(); } public List<SoftwareTestOrderMeasured> MeasuredDict() { return baseDao.getMeasuredDictList(); } + + public void exportWord(Long id, HttpServletRequest request, HttpServletResponse response) { + WordFile wordFile = new WordFile(); + wordFile.setModulePath("aaaa"); + wordFile.setWordName("aaa"); + SoftwareTestOrderDto dataObj = this.getDto(id, null); + + List<DictDto> userDicts = sysDictTypeService.getUserDicts(); + DictDto testType1Dict = userDicts.stream() + .filter(c -> c.getDictType().equals("test_type1")) + .collect(Collectors.toList()).get(0); + + List<String> testType11 = new ArrayList<>(); + List<String> testType12 = new ArrayList<>(); + List<String> testType21 = new ArrayList<>(); + List<String> testType22 = new ArrayList<>(); + + int i = 0; + String testType = "," + dataObj.getSoftwareTestOrder().getTestType1() + ","; + for (DictItemDto dictItemDto : ((DictLeafDto) testType1Dict).getDataList()) { + String value = dictItemDto.getDictValue(); + String desc = (testType.contains("," + value + ",")?"鈽�":"鈻�")+dictItemDto.getDictLabel(); + if ((i++) % 2 == 0) { + testType12.add(desc); + } else { + testType11.add(desc); + } + } + + i = 0; + testType = "," + dataObj.getSoftwareTestOrder().getTestType2() + ","; + for (DictItemDto dictItemDto : ((DictLeafDto) testType1Dict).getDataList()) { + String value = dictItemDto.getDictValue(); + String desc = (testType.contains("," + value + ",")?"鈽�":"鈻�")+dictItemDto.getDictLabel(); + if ((i++) % 2 == 0) { + testType22.add(desc); + } else { + testType21.add(desc); + } + } + + dataObj.getSoftwareTestOrder().setTestType11(testType11); + dataObj.getSoftwareTestOrder().setTestType12(testType12); + dataObj.getSoftwareTestOrder().setTestType21(testType21); + dataObj.getSoftwareTestOrder().setTestType22(testType22); + + List<Object> measuredList = new ArrayList<>(); + + try { + wordFileService.exportWordFile(request, dataObj, wordFile, response); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } + } } diff --git a/modules/mainPart/src/main/resources/mapper/project/ProjectDao.xml b/modules/mainPart/src/main/resources/mapper/project/ProjectDao.xml index e905979..9a369f0 100644 --- a/modules/mainPart/src/main/resources/mapper/project/ProjectDao.xml +++ b/modules/mainPart/src/main/resources/mapper/project/ProjectDao.xml @@ -17,4 +17,15 @@ </if> </select> + <select id="getCode" resultType="java.lang.String"> + SELECT p.CODE FROM Project p where p.is_delete =0 + </select> + + <select id="getProject" resultType="com.zt.life.modules.project.model.Project"> + SELECT * + FROM project + WHERE code = #{code} + and is_delete = 0 + </select> + </mapper> -- Gitblit v1.9.1