Merge remote-tracking branch 'origin/master'
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.controller; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zt.common.annotation.LogOperation; | 
|---|
|  |  |  | import com.zt.common.constant.Constant; | 
|---|
|  |  |  | import com.zt.common.annotation.QueryParam; | 
|---|
|  |  |  | import com.zt.common.db.query.QueryFilter; | 
|---|
|  |  |  | import com.zt.common.servlet.Result; | 
|---|
|  |  |  | import com.zt.common.servlet.PageResult; | 
|---|
|  |  |  | import com.zt.common.validator.AssertUtils; | 
|---|
|  |  |  | import com.zt.common.validator.ValidatorUtils; | 
|---|
|  |  |  | 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.model.EnvironAnalysis; | 
|---|
|  |  |  | import com.zt.life.modules.project.service.EnvironAnalysisService; | 
|---|
|  |  |  | import io.swagger.annotations.Api; | 
|---|
|  |  |  | import io.swagger.annotations.ApiImplicitParam; | 
|---|
|  |  |  | import io.swagger.annotations.ApiImplicitParams; | 
|---|
|  |  |  | import io.swagger.annotations.ApiOperation; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.*; | 
|---|
|  |  |  | import springfox.documentation.annotations.ApiIgnore; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import javax.servlet.http.HttpServletResponse; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_analysis | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RestController | 
|---|
|  |  |  | @RequestMapping("/project/EnvironAnalysis/") | 
|---|
|  |  |  | @Api(tags="environ_analysis") | 
|---|
|  |  |  | public class EnvironAnalysisController { | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private EnvironAnalysisService environAnalysisService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @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), | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | public PageResult<EnvironAnalysis> page(@ApiIgnore @QueryParam QueryFilter queryFilter){ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return PageResult.ok(environAnalysisService.page(queryFilter)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @GetMapping("{id}") | 
|---|
|  |  |  | @ApiOperation("信息") | 
|---|
|  |  |  | public Result<EnvironAnalysis> get(@PathVariable("id") Long id){ | 
|---|
|  |  |  | EnvironAnalysis data = environAnalysisService.get(id); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(data); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @PostMapping | 
|---|
|  |  |  | @ApiOperation("新增") | 
|---|
|  |  |  | @LogOperation("新增") | 
|---|
|  |  |  | public Result insert(@RequestBody EnvironAnalysis environAnalysis){ | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | ValidatorUtils.validateEntity(environAnalysis, AddGroup.class, DefaultGroup.class); | 
|---|
|  |  |  | environAnalysisService.insert(environAnalysis); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @PutMapping | 
|---|
|  |  |  | @ApiOperation("修改") | 
|---|
|  |  |  | @LogOperation("修改") | 
|---|
|  |  |  | public Result update(@RequestBody EnvironAnalysis environAnalysis){ | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | ValidatorUtils.validateEntity(environAnalysis, UpdateGroup.class, DefaultGroup.class); | 
|---|
|  |  |  | environAnalysisService.update(environAnalysis); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @DeleteMapping | 
|---|
|  |  |  | @ApiOperation("删除") | 
|---|
|  |  |  | @LogOperation("删除") | 
|---|
|  |  |  | public Result delete(@RequestBody Long[] ids){ | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | AssertUtils.isArrayEmpty(ids, "id"); | 
|---|
|  |  |  | environAnalysisService.delete(ids); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | 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.SoftwareTestOrderDto; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.Environ; | 
|---|
|  |  |  | import com.zt.life.modules.project.service.EnvironService; | 
|---|
|  |  |  | import com.zt.life.sys.dto.OssDto; | 
|---|
|  |  |  | import com.zt.life.sys.service.SysOssConfigService; | 
|---|
|  |  |  | import com.zt.modules.coderule.service.SysCodeRuleService; | 
|---|
|  |  |  | import io.swagger.annotations.Api; | 
|---|
|  |  |  | import io.swagger.annotations.ApiImplicitParam; | 
|---|
|  |  |  | import io.swagger.annotations.ApiImplicitParams; | 
|---|
|  |  |  | 
|---|
|  |  |  | import springfox.documentation.annotations.ApiIgnore; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import javax.servlet.http.HttpServletResponse; | 
|---|
|  |  |  | import java.util.HashMap; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RestController | 
|---|
|  |  |  | @RequestMapping("/project/Environ/") | 
|---|
|  |  |  | @Api(tags="environ") | 
|---|
|  |  |  | @Api(tags = "environ") | 
|---|
|  |  |  | public class EnvironController { | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private EnvironService environService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SysOssConfigService sysOssConfigService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SysCodeRuleService sysCodeRuleService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @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 = "code", value = "编号", dataType = Constant.QT.STRING, format = "CODE^LK")    }) | 
|---|
|  |  |  | public PageResult<Environ> 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 = "code", value = "编号", dataType = Constant.QT.STRING, format = "CODE^LK")}) | 
|---|
|  |  |  | public PageResult<Environ> page(@ApiIgnore @QueryParam QueryFilter queryFilter) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return PageResult.ok(environService.page(queryFilter)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @GetMapping("{id}") | 
|---|
|  |  |  | @GetMapping("getDto") | 
|---|
|  |  |  | @ApiOperation("信息") | 
|---|
|  |  |  | public Result<Environ> get(@PathVariable("id") Long id){ | 
|---|
|  |  |  | Environ data = environService.get(id); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public Result<SoftwareTestOrderDto> getDto(Long projectId, Long environId) { | 
|---|
|  |  |  | SoftwareTestOrderDto data = environService.getDto(environId, projectId); | 
|---|
|  |  |  | if (projectId != null) { | 
|---|
|  |  |  | OssDto ossDto = sysOssConfigService.getOssByBusiType(projectId, "environ"); | 
|---|
|  |  |  | if (ossDto != null) { | 
|---|
|  |  |  | data.setFiles(ossDto); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return Result.ok(data); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @PostMapping | 
|---|
|  |  |  | @ApiOperation("新增") | 
|---|
|  |  |  | @LogOperation("新增") | 
|---|
|  |  |  | public Result insert(@RequestBody Environ environ){ | 
|---|
|  |  |  | public Result insert(@RequestBody SoftwareTestOrderDto softwareTestOrderDto) { | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | ValidatorUtils.validateEntity(environ, AddGroup.class, DefaultGroup.class); | 
|---|
|  |  |  | environService.insert(environ); | 
|---|
|  |  |  | ValidatorUtils.validateEntity(softwareTestOrderDto, AddGroup.class, DefaultGroup.class); | 
|---|
|  |  |  | Map<String,String> map = new HashMap<>(); | 
|---|
|  |  |  | map.put("funCode","environ"); | 
|---|
|  |  |  | softwareTestOrderDto.getEnviron().setCode(sysCodeRuleService.getNewCode(map)); | 
|---|
|  |  |  | Boolean result = environService.save(softwareTestOrderDto); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @PutMapping | 
|---|
|  |  |  | @ApiOperation("修改") | 
|---|
|  |  |  | @LogOperation("修改") | 
|---|
|  |  |  | public Result update(@RequestBody Environ environ){ | 
|---|
|  |  |  | public Result update(@RequestBody Environ environ) { | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | ValidatorUtils.validateEntity(environ, UpdateGroup.class, DefaultGroup.class); | 
|---|
|  |  |  | environService.update(environ); | 
|---|
|  |  |  | 
|---|
|  |  |  | @DeleteMapping | 
|---|
|  |  |  | @ApiOperation("删除") | 
|---|
|  |  |  | @LogOperation("删除") | 
|---|
|  |  |  | public Result delete(@RequestBody Long[] ids){ | 
|---|
|  |  |  | public Result delete(@RequestBody Long[] ids) { | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | AssertUtils.isArrayEmpty(ids, "id"); | 
|---|
|  |  |  | environService.delete(ids); | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.controller; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zt.common.annotation.LogOperation; | 
|---|
|  |  |  | import com.zt.common.constant.Constant; | 
|---|
|  |  |  | import com.zt.common.annotation.QueryParam; | 
|---|
|  |  |  | import com.zt.common.db.query.QueryFilter; | 
|---|
|  |  |  | import com.zt.common.servlet.Result; | 
|---|
|  |  |  | import com.zt.common.servlet.PageResult; | 
|---|
|  |  |  | import com.zt.common.validator.AssertUtils; | 
|---|
|  |  |  | import com.zt.common.validator.ValidatorUtils; | 
|---|
|  |  |  | 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.model.EnvironHardwareResources; | 
|---|
|  |  |  | import com.zt.life.modules.project.service.EnvironHardwareResourcesService; | 
|---|
|  |  |  | import io.swagger.annotations.Api; | 
|---|
|  |  |  | import io.swagger.annotations.ApiImplicitParam; | 
|---|
|  |  |  | import io.swagger.annotations.ApiImplicitParams; | 
|---|
|  |  |  | import io.swagger.annotations.ApiOperation; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.*; | 
|---|
|  |  |  | import springfox.documentation.annotations.ApiIgnore; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import javax.servlet.http.HttpServletResponse; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_hardware_resources | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RestController | 
|---|
|  |  |  | @RequestMapping("/project/EnvironHardwareResources/") | 
|---|
|  |  |  | @Api(tags="environ_hardware_resources") | 
|---|
|  |  |  | public class EnvironHardwareResourcesController { | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private EnvironHardwareResourcesService environHardwareResourcesService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @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), | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | public PageResult<EnvironHardwareResources> page(@ApiIgnore @QueryParam QueryFilter queryFilter){ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return PageResult.ok(environHardwareResourcesService.page(queryFilter)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @GetMapping("{id}") | 
|---|
|  |  |  | @ApiOperation("信息") | 
|---|
|  |  |  | public Result<EnvironHardwareResources> get(@PathVariable("id") Long id){ | 
|---|
|  |  |  | EnvironHardwareResources data = environHardwareResourcesService.get(id); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(data); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @PostMapping | 
|---|
|  |  |  | @ApiOperation("新增") | 
|---|
|  |  |  | @LogOperation("新增") | 
|---|
|  |  |  | public Result insert(@RequestBody EnvironHardwareResources environHardwareResources){ | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | ValidatorUtils.validateEntity(environHardwareResources, AddGroup.class, DefaultGroup.class); | 
|---|
|  |  |  | environHardwareResourcesService.insert(environHardwareResources); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @PutMapping | 
|---|
|  |  |  | @ApiOperation("修改") | 
|---|
|  |  |  | @LogOperation("修改") | 
|---|
|  |  |  | public Result update(@RequestBody EnvironHardwareResources environHardwareResources){ | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | ValidatorUtils.validateEntity(environHardwareResources, UpdateGroup.class, DefaultGroup.class); | 
|---|
|  |  |  | environHardwareResourcesService.update(environHardwareResources); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @DeleteMapping | 
|---|
|  |  |  | @ApiOperation("删除") | 
|---|
|  |  |  | @LogOperation("删除") | 
|---|
|  |  |  | public Result delete(@RequestBody Long[] ids){ | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | AssertUtils.isArrayEmpty(ids, "id"); | 
|---|
|  |  |  | environHardwareResourcesService.delete(ids); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.controller; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zt.common.annotation.LogOperation; | 
|---|
|  |  |  | import com.zt.common.constant.Constant; | 
|---|
|  |  |  | import com.zt.common.annotation.QueryParam; | 
|---|
|  |  |  | import com.zt.common.db.query.QueryFilter; | 
|---|
|  |  |  | import com.zt.common.servlet.Result; | 
|---|
|  |  |  | import com.zt.common.servlet.PageResult; | 
|---|
|  |  |  | import com.zt.common.validator.AssertUtils; | 
|---|
|  |  |  | import com.zt.common.validator.ValidatorUtils; | 
|---|
|  |  |  | 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.model.EnvironSoftwareResources; | 
|---|
|  |  |  | import com.zt.life.modules.project.service.EnvironSoftwareResourcesService; | 
|---|
|  |  |  | import io.swagger.annotations.Api; | 
|---|
|  |  |  | import io.swagger.annotations.ApiImplicitParam; | 
|---|
|  |  |  | import io.swagger.annotations.ApiImplicitParams; | 
|---|
|  |  |  | import io.swagger.annotations.ApiOperation; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.*; | 
|---|
|  |  |  | import springfox.documentation.annotations.ApiIgnore; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import javax.servlet.http.HttpServletResponse; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_software_resources | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RestController | 
|---|
|  |  |  | @RequestMapping("/project/EnvironSoftwareResources/") | 
|---|
|  |  |  | @Api(tags="environ_software_resources") | 
|---|
|  |  |  | public class EnvironSoftwareResourcesController { | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private EnvironSoftwareResourcesService environSoftwareResourcesService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @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), | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | public PageResult<EnvironSoftwareResources> page(@ApiIgnore @QueryParam QueryFilter queryFilter){ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return PageResult.ok(environSoftwareResourcesService.page(queryFilter)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @GetMapping("{id}") | 
|---|
|  |  |  | @ApiOperation("信息") | 
|---|
|  |  |  | public Result<EnvironSoftwareResources> get(@PathVariable("id") Long id){ | 
|---|
|  |  |  | EnvironSoftwareResources data = environSoftwareResourcesService.get(id); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(data); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @PostMapping | 
|---|
|  |  |  | @ApiOperation("新增") | 
|---|
|  |  |  | @LogOperation("新增") | 
|---|
|  |  |  | public Result insert(@RequestBody EnvironSoftwareResources environSoftwareResources){ | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | ValidatorUtils.validateEntity(environSoftwareResources, AddGroup.class, DefaultGroup.class); | 
|---|
|  |  |  | environSoftwareResourcesService.insert(environSoftwareResources); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @PutMapping | 
|---|
|  |  |  | @ApiOperation("修改") | 
|---|
|  |  |  | @LogOperation("修改") | 
|---|
|  |  |  | public Result update(@RequestBody EnvironSoftwareResources environSoftwareResources){ | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | ValidatorUtils.validateEntity(environSoftwareResources, UpdateGroup.class, DefaultGroup.class); | 
|---|
|  |  |  | environSoftwareResourcesService.update(environSoftwareResources); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @DeleteMapping | 
|---|
|  |  |  | @ApiOperation("删除") | 
|---|
|  |  |  | @LogOperation("删除") | 
|---|
|  |  |  | public Result delete(@RequestBody Long[] ids){ | 
|---|
|  |  |  | //效验数据 | 
|---|
|  |  |  | AssertUtils.isArrayEmpty(ids, "id"); | 
|---|
|  |  |  | environSoftwareResourcesService.delete(ids); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return Result.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.dao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zt.common.dao.BaseDao; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.EnvironAnalysis; | 
|---|
|  |  |  | import org.apache.ibatis.annotations.Mapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_analysis | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Mapper | 
|---|
|  |  |  | public interface EnvironAnalysisDao extends BaseDao<EnvironAnalysis> { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<EnvironAnalysis> getList(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.dao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zt.common.dao.BaseDao; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.EnvironHardwareResources; | 
|---|
|  |  |  | import org.apache.ibatis.annotations.Mapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_hardware_resources | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Mapper | 
|---|
|  |  |  | public interface EnvironHardwareResourcesDao extends BaseDao<EnvironHardwareResources> { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<EnvironHardwareResources> getList(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.dao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zt.common.dao.BaseDao; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.EnvironSoftwareResources; | 
|---|
|  |  |  | import org.apache.ibatis.annotations.Mapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_software_resources | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Mapper | 
|---|
|  |  |  | public interface EnvironSoftwareResourcesDao extends BaseDao<EnvironSoftwareResources> { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<EnvironSoftwareResources> getList(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.dto; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.*; | 
|---|
|  |  |  | import com.zt.life.modules.sysBaseInfo.model.TestAgencyInfo; | 
|---|
|  |  |  | import com.zt.life.sys.dto.OssDto; | 
|---|
|  |  |  | import io.swagger.annotations.ApiModelProperty; | 
|---|
|  |  |  | 
|---|
|  |  |  | public class SoftwareTestOrderDto { | 
|---|
|  |  |  | private Long id; | 
|---|
|  |  |  | private Long projectId; | 
|---|
|  |  |  | private Long orderId; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "测试委托单记录") | 
|---|
|  |  |  | private SoftwareTestOrder softwareTestOrder; | 
|---|
|  |  |  | @ApiModelProperty(value = "测试项目基本信息") | 
|---|
|  |  |  | private Project project; | 
|---|
|  |  |  | @ApiModelProperty(value = "测试环境建立确认") | 
|---|
|  |  |  | private Environ environ; | 
|---|
|  |  |  | @ApiModelProperty(value = "测试机构信息") | 
|---|
|  |  |  | private TestAgencyInfo TestAgencyInfo; | 
|---|
|  |  |  | @ApiModelProperty(value = "测试委托单附件") | 
|---|
|  |  |  | 
|---|
|  |  |  | private List<SoftwareTestOrderMeasured> measuredList = new ArrayList<>(); | 
|---|
|  |  |  | @ApiModelProperty(value = "交付件") | 
|---|
|  |  |  | private List<SoftwareTestOrderDeliverable> deliverableList = new ArrayList<>(); | 
|---|
|  |  |  | @ApiModelProperty(value = "软件资源") | 
|---|
|  |  |  | private List<EnvironSoftwareResources> softwareResourcesList = new ArrayList<>(); | 
|---|
|  |  |  | @ApiModelProperty(value = "硬件资源") | 
|---|
|  |  |  | private List<EnvironHardwareResources> hardwareResourcesList = new ArrayList<>(); | 
|---|
|  |  |  | @ApiModelProperty(value = "环境差异性分析") | 
|---|
|  |  |  | private List<EnvironAnalysis> environAnalysisList = new ArrayList<>(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.model; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.annotation.TableField; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.annotation.TableName; | 
|---|
|  |  |  | import com.fasterxml.jackson.annotation.JsonFormat; | 
|---|
|  |  |  | import com.zt.common.entity.BusiEntity; | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "编号") | 
|---|
|  |  |  | private String code; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "项目ID") | 
|---|
|  |  |  | private Long projectId; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "硬软件资源") | 
|---|
|  |  |  | private String hardSoftwareRes; | 
|---|
|  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "病毒库版本") | 
|---|
|  |  |  | private String virusDatabaseVersion; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @TableField(exist = false) | 
|---|
|  |  |  | @ApiModelProperty(value = "专业实验室名称") | 
|---|
|  |  |  | private String agencyName; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @TableField(exist = false) | 
|---|
|  |  |  | @ApiModelProperty(value = "测试地点") | 
|---|
|  |  |  | private String site; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @TableField(exist = false) | 
|---|
|  |  |  | @ApiModelProperty(value = "被测软件") | 
|---|
|  |  |  | private String softwareName; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @TableField(exist = false) | 
|---|
|  |  |  | @ApiModelProperty(value = "版本") | 
|---|
|  |  |  | private String softwareIdentity; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.model; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.annotation.TableName; | 
|---|
|  |  |  | import com.zt.common.entity.BusiEntity; | 
|---|
|  |  |  | import io.swagger.annotations.ApiModel; | 
|---|
|  |  |  | import io.swagger.annotations.ApiModelProperty; | 
|---|
|  |  |  | import lombok.Data; | 
|---|
|  |  |  | import lombok.EqualsAndHashCode; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_analysis | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | @EqualsAndHashCode(callSuper=false) | 
|---|
|  |  |  | @TableName("environ_analysis") | 
|---|
|  |  |  | public class EnvironAnalysis extends BusiEntity { | 
|---|
|  |  |  | private static final long serialVersionUID = 1L; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "环境测试单ID") | 
|---|
|  |  |  | private Long environId; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "序号") | 
|---|
|  |  |  | private Integer no; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "真实环境") | 
|---|
|  |  |  | private String realEnviron; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "测试环境") | 
|---|
|  |  |  | private String testEnviron; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "环境差异") | 
|---|
|  |  |  | private String environDifference; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "对测试结果影响") | 
|---|
|  |  |  | private String resultImpact; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "措施") | 
|---|
|  |  |  | private String measure; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.model; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.annotation.TableName; | 
|---|
|  |  |  | import com.zt.common.entity.BusiEntity; | 
|---|
|  |  |  | import io.swagger.annotations.ApiModel; | 
|---|
|  |  |  | import io.swagger.annotations.ApiModelProperty; | 
|---|
|  |  |  | import lombok.Data; | 
|---|
|  |  |  | import lombok.EqualsAndHashCode; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_hardware_resources | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | @EqualsAndHashCode(callSuper=false) | 
|---|
|  |  |  | @TableName("environ_hardware_resources") | 
|---|
|  |  |  | public class EnvironHardwareResources extends BusiEntity { | 
|---|
|  |  |  | private static final long serialVersionUID = 1L; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "环境测试单ID") | 
|---|
|  |  |  | private Long environId; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "序号") | 
|---|
|  |  |  | private Integer no; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "硬件和固体项名称") | 
|---|
|  |  |  | private String itemName; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "用途") | 
|---|
|  |  |  | private String usage; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "状态") | 
|---|
|  |  |  | private String state; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "数量") | 
|---|
|  |  |  | private Integer number; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "提供单位") | 
|---|
|  |  |  | private String provideUnit; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.model; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.annotation.TableName; | 
|---|
|  |  |  | import com.zt.common.entity.BusiEntity; | 
|---|
|  |  |  | import io.swagger.annotations.ApiModel; | 
|---|
|  |  |  | import io.swagger.annotations.ApiModelProperty; | 
|---|
|  |  |  | import lombok.Data; | 
|---|
|  |  |  | import lombok.EqualsAndHashCode; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_software_resources | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | @EqualsAndHashCode(callSuper=false) | 
|---|
|  |  |  | @TableName("environ_software_resources") | 
|---|
|  |  |  | public class EnvironSoftwareResources extends BusiEntity { | 
|---|
|  |  |  | private static final long serialVersionUID = 1L; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "环境测试单ID") | 
|---|
|  |  |  | private Long environId; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "序号") | 
|---|
|  |  |  | private Integer no; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "软件项名称") | 
|---|
|  |  |  | private String itemName; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "版本") | 
|---|
|  |  |  | private String version; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "用途") | 
|---|
|  |  |  | private String usage; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiModelProperty(value = "提供单位") | 
|---|
|  |  |  | private String provideUnit; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.service; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zt.common.service.BaseService; | 
|---|
|  |  |  | import com.zt.life.modules.project.dao.EnvironAnalysisDao; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.EnvironAnalysis; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.EnvironHardwareResources; | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  | import com.zt.common.db.query.QueryFilter; | 
|---|
|  |  |  | import javax.annotation.Resource; | 
|---|
|  |  |  | import java.util.HashMap; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_analysis | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Service | 
|---|
|  |  |  | public class EnvironAnalysisService  extends BaseService<EnvironAnalysisDao, EnvironAnalysis> { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 分页查询 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @param queryFilter | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public List<EnvironAnalysis> page(QueryFilter queryFilter) { | 
|---|
|  |  |  | return baseDao.getList(queryFilter.getQueryParams()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 删除 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @param ids | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void delete(Long[] ids) { | 
|---|
|  |  |  | super.deleteLogic(ids); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public List<EnvironAnalysis> getList(Long environId) { | 
|---|
|  |  |  | Map<String, Object> params = new HashMap<>(); | 
|---|
|  |  |  | params.put("environId",environId); | 
|---|
|  |  |  | return baseDao.getList(params); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.service; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zt.common.service.BaseService; | 
|---|
|  |  |  | import com.zt.life.modules.project.dao.EnvironHardwareResourcesDao; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.EnvironHardwareResources; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.EnvironSoftwareResources; | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  | import com.zt.common.db.query.QueryFilter; | 
|---|
|  |  |  | import javax.annotation.Resource; | 
|---|
|  |  |  | import java.util.HashMap; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_hardware_resources | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Service | 
|---|
|  |  |  | public class EnvironHardwareResourcesService  extends BaseService<EnvironHardwareResourcesDao, EnvironHardwareResources> { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 分页查询 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @param queryFilter | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public List<EnvironHardwareResources> page(QueryFilter queryFilter) { | 
|---|
|  |  |  | return baseDao.getList(queryFilter.getQueryParams()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 删除 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @param ids | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void delete(Long[] ids) { | 
|---|
|  |  |  | super.deleteLogic(ids); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public List<EnvironHardwareResources> getList(Long environId) { | 
|---|
|  |  |  | Map<String, Object> params = new HashMap<>(); | 
|---|
|  |  |  | params.put("environId",environId); | 
|---|
|  |  |  | return baseDao.getList(params); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zt.common.service.BaseService; | 
|---|
|  |  |  | import com.zt.life.modules.project.dao.EnvironDao; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.Environ; | 
|---|
|  |  |  | import com.zt.life.modules.project.dto.SoftwareTestOrderDto; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.*; | 
|---|
|  |  |  | import com.zt.life.modules.sysBaseInfo.model.TestAgencyInfo; | 
|---|
|  |  |  | import com.zt.life.modules.sysBaseInfo.service.TestAgencyInfoService; | 
|---|
|  |  |  | import com.zt.life.sys.service.SysOssConfigService; | 
|---|
|  |  |  | import com.zt.modules.coderule.service.SysCodeRuleService; | 
|---|
|  |  |  | 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.HashMap; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Service | 
|---|
|  |  |  | public class EnvironService  extends BaseService<EnvironDao, Environ> { | 
|---|
|  |  |  | public class EnvironService extends BaseService<EnvironDao, Environ> { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private EnvironSoftwareResourcesService environSoftwareResourcesService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private EnvironHardwareResourcesService environHardwareResourcesService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SoftwareTestOrderService softwareTestOrderService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SysCodeRuleService sysCodeRuleService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SysOssConfigService sysOssConfigService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private EnvironAnalysisService environAnalysisService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private ProjectService projectService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private TestAgencyInfoService testAgencyInfoService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public SoftwareTestOrderDto getDto(Long projectId, Long environId) { | 
|---|
|  |  |  | SoftwareTestOrderDto data = new SoftwareTestOrderDto(); | 
|---|
|  |  |  | if (environId != null) { | 
|---|
|  |  |  | data.setId(environId); | 
|---|
|  |  |  | Environ environ = this.get(environId); | 
|---|
|  |  |  | data.setEnviron(environ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | projectId = environ.getProjectId(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<EnvironSoftwareResources> softwareResourcesList = environSoftwareResourcesService.getList(environId); | 
|---|
|  |  |  | data.setSoftwareResourcesList(softwareResourcesList); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<EnvironHardwareResources> hardwareResourcesList = environHardwareResourcesService.getList(environId); | 
|---|
|  |  |  | data.setHardwareResourcesList(hardwareResourcesList); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<EnvironAnalysis> environAnalysesList = environAnalysisService.getList(environId); | 
|---|
|  |  |  | data.setEnvironAnalysisList(environAnalysesList); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | Project project = projectService.get(projectId); | 
|---|
|  |  |  | data.getEnviron().setSoftwareName(project.getSoftwareName()); | 
|---|
|  |  |  | data.getEnviron().setSoftwareIdentity(project.getSoftwareIdentity()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (data.getTestAgencyInfo() == null) | 
|---|
|  |  |  | data.getEnviron().setAgencyName(testAgencyInfoService.get(10000L).getAgencyName()); | 
|---|
|  |  |  | data.getEnviron().setSite(testAgencyInfoService.get(10000L).getSite()); | 
|---|
|  |  |  | if (projectId != null) { | 
|---|
|  |  |  | data.setOrderId(projectId); | 
|---|
|  |  |  | data.setSoftwareTestOrder(softwareTestOrderService.get(projectId)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return data; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 分页查询 | 
|---|
|  |  |  | 
|---|
|  |  |  | super.deleteLogic(ids); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public Boolean save(SoftwareTestOrderDto softwareTestOrderDto) { | 
|---|
|  |  |  | Long environId = softwareTestOrderDto.getEnviron().getId(); | 
|---|
|  |  |  | if (environId != null) | 
|---|
|  |  |  | baseDao.updateById(softwareTestOrderDto.getEnviron()); | 
|---|
|  |  |  | else { | 
|---|
|  |  |  | Map<String, String> map = new HashMap<>(); | 
|---|
|  |  |  | map.put("funCode", "environ"); | 
|---|
|  |  |  | softwareTestOrderDto.getEnviron().setProjectId(softwareTestOrderDto.getProjectId()); | 
|---|
|  |  |  | softwareTestOrderDto.getEnviron().setCode(sysCodeRuleService.getNewCode(map)); | 
|---|
|  |  |  | baseDao.insert(softwareTestOrderDto.getEnviron()); | 
|---|
|  |  |  | environId = softwareTestOrderDto.getEnviron().getId(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | for (EnvironSoftwareResources environSoftwareResources : softwareTestOrderDto.getSoftwareResourcesList()) { | 
|---|
|  |  |  | environSoftwareResources.setEnvironId(environId); | 
|---|
|  |  |  | if (environSoftwareResources.getId() != null) { | 
|---|
|  |  |  | environSoftwareResourcesService.update(environSoftwareResources); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | environSoftwareResources.setEnvironId(environId); | 
|---|
|  |  |  | environSoftwareResourcesService.insert(environSoftwareResources); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | for (EnvironHardwareResources environHardwareResources : softwareTestOrderDto.getHardwareResourcesList()) { | 
|---|
|  |  |  | environHardwareResources.setEnvironId(environId); | 
|---|
|  |  |  | if (environHardwareResources.getId() != null) { | 
|---|
|  |  |  | environHardwareResourcesService.update(environHardwareResources); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | environHardwareResources.setEnvironId(environId); | 
|---|
|  |  |  | environHardwareResourcesService.insert(environHardwareResources); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | for (EnvironAnalysis environAnalysis : softwareTestOrderDto.getEnvironAnalysisList()) { | 
|---|
|  |  |  | environAnalysis.setEnvironId(environId); | 
|---|
|  |  |  | if (environAnalysis.getId() != null) { | 
|---|
|  |  |  | environAnalysisService.update(environAnalysis); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | environAnalysis.setEnvironId(environId); | 
|---|
|  |  |  | environAnalysisService.insert(environAnalysis); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | sysOssConfigService.updateOss(softwareTestOrderDto.getId(), softwareTestOrderDto.getFiles());// 保存附件 | 
|---|
|  |  |  | return true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zt.life.modules.project.service; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zt.common.service.BaseService; | 
|---|
|  |  |  | import com.zt.life.modules.project.dao.EnvironSoftwareResourcesDao; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.EnvironSoftwareResources; | 
|---|
|  |  |  | import com.zt.life.modules.project.model.SoftwareTestOrderMeasured; | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  | import com.zt.common.db.query.QueryFilter; | 
|---|
|  |  |  | import javax.annotation.Resource; | 
|---|
|  |  |  | import java.util.HashMap; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * environ_software_resources | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author zt generator | 
|---|
|  |  |  | * @since 1.0.0 2023-11-17 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Service | 
|---|
|  |  |  | public class EnvironSoftwareResourcesService  extends BaseService<EnvironSoftwareResourcesDao, EnvironSoftwareResources> { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 分页查询 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @param queryFilter | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public List<EnvironSoftwareResources> page(QueryFilter queryFilter) { | 
|---|
|  |  |  | return baseDao.getList(queryFilter.getQueryParams()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 删除 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @param ids | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void delete(Long[] ids) { | 
|---|
|  |  |  | super.deleteLogic(ids); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public List<EnvironSoftwareResources> getList(Long environId) { | 
|---|
|  |  |  | Map<String, Object> params = new HashMap<>(); | 
|---|
|  |  |  | params.put("environId",environId); | 
|---|
|  |  |  | return baseDao.getList(params); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | <?xml version="1.0" encoding="UTF-8"?> | 
|---|
|  |  |  | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <mapper namespace="com.zt.life.modules.project.dao.EnvironAnalysisDao"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="getList" resultType="com.zt.life.modules.project.model.EnvironAnalysis"> | 
|---|
|  |  |  | select a.* | 
|---|
|  |  |  | from environ_analysis a | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | a.is_delete = 0 | 
|---|
|  |  |  | <if test="whereSql!=null"> | 
|---|
|  |  |  | and ${whereSql} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | <if test="orderBySql!=null"> | 
|---|
|  |  |  | ORDER BY ${orderBySql} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </mapper> | 
|---|
|  |  |  | 
|---|
|  |  |  | <mapper namespace="com.zt.life.modules.project.dao.EnvironDao"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="getList" resultType="com.zt.life.modules.project.model.Environ"> | 
|---|
|  |  |  | select a.* | 
|---|
|  |  |  | from environ a | 
|---|
|  |  |  | SELECT a.*, p.* | 
|---|
|  |  |  | FROM software_test_order a | 
|---|
|  |  |  | INNER JOIN  project p ON p.id = a.project_id | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | a.is_delete = 0 | 
|---|
|  |  |  | a.is_delete = 0 and p.is_delete = 0 | 
|---|
|  |  |  | <if test="whereSql!=null"> | 
|---|
|  |  |  | and ${whereSql} | 
|---|
|  |  |  | </if> | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | <?xml version="1.0" encoding="UTF-8"?> | 
|---|
|  |  |  | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <mapper namespace="com.zt.life.modules.project.dao.EnvironHardwareResourcesDao"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="getList" resultType="com.zt.life.modules.project.model.EnvironHardwareResources"> | 
|---|
|  |  |  | select a.* | 
|---|
|  |  |  | from environ_hardware_resources a | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | a.is_delete = 0 | 
|---|
|  |  |  | <if test="whereSql!=null"> | 
|---|
|  |  |  | and ${whereSql} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | <if test="orderBySql!=null"> | 
|---|
|  |  |  | ORDER BY ${orderBySql} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </mapper> | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | <?xml version="1.0" encoding="UTF-8"?> | 
|---|
|  |  |  | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <mapper namespace="com.zt.life.modules.project.dao.EnvironSoftwareResourcesDao"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="getList" resultType="com.zt.life.modules.project.model.EnvironSoftwareResources"> | 
|---|
|  |  |  | select a.* | 
|---|
|  |  |  | from environ_software_resources a | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | a.is_delete = 0 | 
|---|
|  |  |  | <if test="whereSql!=null"> | 
|---|
|  |  |  | and ${whereSql} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | <if test="orderBySql!=null"> | 
|---|
|  |  |  | ORDER BY ${orderBySql} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </mapper> | 
|---|
|  |  |  | 
|---|
|  |  |  | select a.* | 
|---|
|  |  |  | from test_agency_info a | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | a.is_delete = 0 | 
|---|
|  |  |  | <if test="whereSql!=null"> | 
|---|
|  |  |  | and ${whereSql} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | a.is_delete = 0 and a.ID = 10000 | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | <if test="orderBySql!=null"> | 
|---|
|  |  |  | ORDER BY ${orderBySql} | 
|---|
|  |  |  | 
|---|
|  |  |  | <!--<template>--> | 
|---|
|  |  |  | <!--  <div class="fa-card-a" style="max-height: calc(100vh - 130px);overflow-y: auto">--> | 
|---|
|  |  |  | <!--    <el-form ref="form" :inline="true" :model="form" label-width="120px" class="confirmFormAuto">--> | 
|---|
|  |  |  | <!--      <div class="DConfirmForm">--> | 
|---|
|  |  |  | <!--        <el-form-item label-width="60px" label="编号:" style="width: 99%">--> | 
|---|
|  |  |  | <!--          <span>{{form.code}}</span>--> | 
|---|
|  |  |  | <!--        </el-form-item>--> | 
|---|
|  |  |  | <!--      </div>--> | 
|---|
|  |  |  | <!--      <div class="confirmDAuto DConfirmForm">--> | 
|---|
|  |  |  | <!--          <el-form-item label="专业实验室名称" style="width: 49%">--> | 
|---|
|  |  |  | <!--            <el-input v-model="form.name" placeholder="请输入编号名称"></el-input>--> | 
|---|
|  |  |  | <!--          </el-form-item>--> | 
|---|
|  |  |  | <!--         <el-form-item label="测试地点" style="width: 49%">--> | 
|---|
|  |  |  | <!--           <el-input v-model="form.place" placeholder="请输入编号名称"></el-input>--> | 
|---|
|  |  |  | <!--         </el-form-item>--> | 
|---|
|  |  |  | <!--          <el-form-item label="被测软件" style="width: 49%">--> | 
|---|
|  |  |  | <!--            <el-input v-model="form.software" placeholder="请输入编号名称"></el-input>--> | 
|---|
|  |  |  | <!--          </el-form-item>--> | 
|---|
|  |  |  | <!--          <el-form-item label="版本" style="width: 49%">--> | 
|---|
|  |  |  | <!--            <el-input v-model="form.versions" placeholder="请输入编号名称"></el-input>--> | 
|---|
|  |  |  | <!--          </el-form-item>--> | 
|---|
|  |  |  | <!--        <div class="el-flex el-form-border">--> | 
|---|
|  |  |  | <!--          <div class="DFormWidth DAlign DHold">--> | 
|---|
|  |  |  | <!--            硬软件资源--> | 
|---|
|  |  |  | <!--          </div>--> | 
|---|
|  |  |  | <!--          <div class="el-wt-border-left" style="padding-left:5px;width: calc(100% - 130px)">--> | 
|---|
|  |  |  | <!--            <div style="padding: 5px">软件资源:</div>--> | 
|---|
|  |  |  | <!--            <el-table class="el-software el-margin-top-bot" height="150" border :data="form.softwareData"--> | 
|---|
|  |  |  | <!--                      stripe>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="code" align="center" width="80" label="序号"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="name" min-width="300" label="软件项名称"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="versions" align="center" width="180" label="版本"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="use" align="center" width="180" label="用途"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="unit" label="提供单位" width="180"  align="center"></el-table-column>--> | 
|---|
|  |  |  | <!--            </el-table>--> | 
|---|
|  |  |  | <!--            <div style="padding: 5px">硬件资源:</div>--> | 
|---|
|  |  |  | <!--            <el-table class="el-software el-margin-top-bot" height="150" border :data="form.hardwareData"--> | 
|---|
|  |  |  | <!--                      stripe>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="code" align="center" width="80" label="序号"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="name" min-width="300" label="硬件和固件项目名称"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="use" align="center" width="180" label="用途"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="number" align="center" width="80" label="数量"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="state" align="center" width="120" label="状态"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="unit" align="center" width="180" label="提供单位"></el-table-column>--> | 
|---|
|  |  |  | <!--            </el-table>--> | 
|---|
|  |  |  | <!--          </div>--> | 
|---|
|  |  |  | <!--        </div>--> | 
|---|
|  |  |  | <!--        <div class="el-flex el-B-border">--> | 
|---|
|  |  |  | <!--          <div class="DFormWidth DAlign DHold">--> | 
|---|
|  |  |  | <!--            动态测试环境图--> | 
|---|
|  |  |  | <!--          </div>--> | 
|---|
|  |  |  | <!--          <div style="width: calc(100% - 120px);">--> | 
|---|
|  |  |  | <!--           <div style="height:150px" class="el-wt-border-left">--> | 
|---|
|  |  |  | <!--           </div>--> | 
|---|
|  |  |  | <!--          </div>--> | 
|---|
|  |  |  | <!--        </div>--> | 
|---|
|  |  |  | <!--        <div class="el-flex el-B-border">--> | 
|---|
|  |  |  | <!--          <div class="DFormWidth DAlign DHold">--> | 
|---|
|  |  |  | <!--            环境差异性分析--> | 
|---|
|  |  |  | <!--          </div>--> | 
|---|
|  |  |  | <!--          <div class="el-wt-border-left" style="padding-left:5px;width: calc(100% - 130px)">--> | 
|---|
|  |  |  | <!--            <el-table class="el-software el-margin-top-bot" height="150" border :data="form.analyzeData"--> | 
|---|
|  |  |  | <!--                      stripe>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="code" align="center" width="80" label="序号"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="realEnvironment" min-width="300" label="真实环境"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="testEnvironment" align="center" width="100" label="测试环境"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="environmentalDifference" align="center" width="100" label="环境差异"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="influence" align="center" width="160" label="对测试结果影响"></el-table-column>--> | 
|---|
|  |  |  | <!--              <el-table-column prop="measure" align="center" width="180" label="措施"></el-table-column>--> | 
|---|
|  |  |  | <!--            </el-table>--> | 
|---|
|  |  |  | <!--          </div>--> | 
|---|
|  |  |  | <!--        </div>--> | 
|---|
|  |  |  | <!--        <div class="el-flex el-B-border">--> | 
|---|
|  |  |  | <!--          <div class="DFormWidth DAlign DHold">--> | 
|---|
|  |  |  | <!--            环境建立--> | 
|---|
|  |  |  | <!--          </div>--> | 
|---|
|  |  |  | <!--          <div style="width: calc(100% - 120px)"  class="DConfirmForm el-wt-border-left">--> | 
|---|
|  |  |  | <!--            <el-form-item label="人员" style="width: 49%">--> | 
|---|
|  |  |  | <!--              <el-input v-model="form.buildPersonnel" placeholder="请输入单位名称"></el-input>--> | 
|---|
|  |  |  | <!--            </el-form-item>--> | 
|---|
|  |  |  | <!--            <el-form-item label="日期" style="width: 48%">--> | 
|---|
|  |  |  | <!--              <el-input v-model="form.buildDate" placeholder="请输入联系人"></el-input>--> | 
|---|
|  |  |  | <!--            </el-form-item>--> | 
|---|
|  |  |  | <!--            <el-form-item label-width="160px" class="isKill" label="是否进行环境病毒查杀" style="width: 49%">--> | 
|---|
|  |  |  | <!--              <el-radio-group v-model="form.isKill">--> | 
|---|
|  |  |  | <!--                <el-radio :label="0">是</el-radio>--> | 
|---|
|  |  |  | <!--                <el-radio :label="1">否</el-radio>--> | 
|---|
|  |  |  | <!--              </el-radio-group>--> | 
|---|
|  |  |  | <!--            </el-form-item>--> | 
|---|
|  |  |  | <!--            <el-form-item label="病毒库版本" style="width: 48%">--> | 
|---|
|  |  |  | <!--              <el-input v-model="form.VirusLibraryVersion" placeholder="请输入病毒库版本"></el-input>--> | 
|---|
|  |  |  | <!--            </el-form-item>--> | 
|---|
|  |  |  | <!--          </div>--> | 
|---|
|  |  |  | <!--        </div>--> | 
|---|
|  |  |  | <!--        <div class="el-flex">--> | 
|---|
|  |  |  | <!--          <div class="DFormWidth DAlign DHold">--> | 
|---|
|  |  |  | <!--            环境确认--> | 
|---|
|  |  |  | <!--          </div>--> | 
|---|
|  |  |  | <!--          <div style="width: calc(100% - 120px)" class="DConfirmForm el-wt-border-left">--> | 
|---|
|  |  |  | <!--            <!– 单位名称 –>--> | 
|---|
|  |  |  | <!--            <el-form-item label="人员" style="width: 49%">--> | 
|---|
|  |  |  | <!--              <el-input v-model="form.verifyPersonnel" placeholder="请输入单位名称"></el-input>--> | 
|---|
|  |  |  | <!--            </el-form-item>--> | 
|---|
|  |  |  | <!--            <!– 联系人 –>--> | 
|---|
|  |  |  | <!--            <el-form-item label="日期" style="width: 48%">--> | 
|---|
|  |  |  | <!--              <el-input v-model="form.verifyDate" placeholder="请输入联系人"></el-input>--> | 
|---|
|  |  |  | <!--            </el-form-item>--> | 
|---|
|  |  |  | <!--          </div>--> | 
|---|
|  |  |  | <!--        </div>--> | 
|---|
|  |  |  | <!--      </div>--> | 
|---|
|  |  |  | <!--    </el-form>--> | 
|---|
|  |  |  | <!--  </div>--> | 
|---|
|  |  |  | <!--</template>--> | 
|---|
|  |  |  | <template> | 
|---|
|  |  |  | <div class="fa-card-a" style="max-height: calc(100vh - 130px);overflow-y: auto"> | 
|---|
|  |  |  | <el-form ref="form" :inline="true" :model="form" label-width="120px" class="confirmFormAuto"> | 
|---|
|  |  |  | <div class="DConfirmForm"> | 
|---|
|  |  |  | <el-form-item label-width="60px" label="编号:" style="width: 99%"> | 
|---|
|  |  |  | <span>{{ form.code }}</span> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="confirmDAuto DConfirmForm"> | 
|---|
|  |  |  | <el-form-item label="专业实验室名称" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="form.name" placeholder="请输入编号名称"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="测试地点" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="form.place" placeholder="请输入编号名称"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="被测软件" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="form.software" placeholder="请输入编号名称"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="版本" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="form.versions" placeholder="请输入编号名称"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <div class="el-flex el-form-border"> | 
|---|
|  |  |  | <div class="DFormWidth DAlign DHold"> | 
|---|
|  |  |  | 硬软件资源 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-wt-border-left" style="padding-left:5px;width: calc(100% - 130px)"> | 
|---|
|  |  |  | <div style="padding: 5px">软件资源:</div> | 
|---|
|  |  |  | <div class="table-container"> | 
|---|
|  |  |  | <el-table style="position:relative;" class="el-software el-margin-top-bot" height="150" border | 
|---|
|  |  |  | :data="form.softwareData" | 
|---|
|  |  |  | stripe> | 
|---|
|  |  |  | <el-table-column prop="code" align="center" width="80" label="序号"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="name" min-width="300" label="软件项名称"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--<script>--> | 
|---|
|  |  |  | <!--  export default {--> | 
|---|
|  |  |  | <!--    name: 'confirmForm',--> | 
|---|
|  |  |  | <!--    data() {--> | 
|---|
|  |  |  | <!--      return {--> | 
|---|
|  |  |  | <!--        form: {--> | 
|---|
|  |  |  | <!--          code: '719G19804/P3A-09-20XX-00X',--> | 
|---|
|  |  |  | <!--          name: '',--> | 
|---|
|  |  |  | <!--          place: '',--> | 
|---|
|  |  |  | <!--          software: '',--> | 
|---|
|  |  |  | <!--          versions: '',--> | 
|---|
|  |  |  | <!--          buildPersonnel: '',--> | 
|---|
|  |  |  | <!--          buildDate: '',--> | 
|---|
|  |  |  | <!--          isKill:1,--> | 
|---|
|  |  |  | <!--          VirusLibraryVersion: '',--> | 
|---|
|  |  |  | <!--          verifyPersonnel: '',--> | 
|---|
|  |  |  | <!--          verifyDate: '',--> | 
|---|
|  |  |  | <!--          checkList: [1, 0],--> | 
|---|
|  |  |  | <!--          softwareData:[--> | 
|---|
|  |  |  | <!--            {code:'1',name:'awdas',versions:'1.3.1',use:'奥迪',unit:'单位1'},--> | 
|---|
|  |  |  | <!--            {code:'2',name:'阿尔法',versions:'1.3.1',use:'奥迪',unit:'单位2'},--> | 
|---|
|  |  |  | <!--            {code:'3',name:'awed',versions:'1.3.1',use:'奥迪',unit:'单位3'},--> | 
|---|
|  |  |  | <!--            {code:'4',name:'国土部',versions:'1.3.1',use:'奥迪',unit:'单位4'},--> | 
|---|
|  |  |  | <!--          ],--> | 
|---|
|  |  |  | <!--          hardwareData:[--> | 
|---|
|  |  |  | <!--            {code:'1',name:'awdas',use:'车上',number:'2',state:'21',unit:'单位1'},--> | 
|---|
|  |  |  | <!--            {code:'2',name:'qe',use:'515',number:'1',state:'21',unit:'单位2'},--> | 
|---|
|  |  |  | <!--            {code:'3',name:'123',use:'1234',number:'42',state:'11',unit:'单位4'},--> | 
|---|
|  |  |  | <!--            {code:'4',name:'1515',use:'123',number:'1',state:'21',unit:'单位51'},--> | 
|---|
|  |  |  | <!--          ],--> | 
|---|
|  |  |  | <!--          analyzeData:[--> | 
|---|
|  |  |  | <!--            {code:'1',realEnvironment:'真实环境1',testEnvironment:'测试环境1',environmentalDifference:'123',influence:'wu',measure:'12'},--> | 
|---|
|  |  |  | <!--            {code:'1',realEnvironment:'真实环境1',testEnvironment:'测试环境1',environmentalDifference:'123',influence:'wu',measure:'14'},--> | 
|---|
|  |  |  | <!--            {code:'1',realEnvironment:'真实环境1',testEnvironment:'测试环境1',environmentalDifference:'123',influence:'wu',measure:'15'},--> | 
|---|
|  |  |  | <!--            {code:'1',realEnvironment:'真实环境1',testEnvironment:'测试环境1',environmentalDifference:'123',influence:'wu',measure:'16'},--> | 
|---|
|  |  |  | <!--          ],--> | 
|---|
|  |  |  | <!--        },--> | 
|---|
|  |  |  | <!--      }--> | 
|---|
|  |  |  | <!--    },--> | 
|---|
|  |  |  | <!--  }--> | 
|---|
|  |  |  | <!--</script>--> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="versions" align="center" width="180" label="版本"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--<style>--> | 
|---|
|  |  |  | <!--.confirmFormAuto {--> | 
|---|
|  |  |  | <!--  width: 70%;--> | 
|---|
|  |  |  | <!--  margin: 0 auto;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <!--.confirmDAuto{--> | 
|---|
|  |  |  | <!--  border: 1px solid;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="use" align="center" width="180" label="用途"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--.el-flex {--> | 
|---|
|  |  |  | <!--  display: flex;--> | 
|---|
|  |  |  | <!--  align-items: center;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="unit" label="提供单位" width="180" align="center"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--.DFormWidth {--> | 
|---|
|  |  |  | <!--  width: 120px;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | <div class="icon-container" @click="addRow()"> | 
|---|
|  |  |  | <!-- 放置固定的图标 --> | 
|---|
|  |  |  | <i class="el-icon-plus"></i> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div style="padding: 5px">硬件资源:</div> | 
|---|
|  |  |  | <el-table class="el-software el-margin-top-bot" height="150" border :data="form.hardwareData" | 
|---|
|  |  |  | stripe> | 
|---|
|  |  |  | <el-table-column prop="code" align="center" width="80" label="序号"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="name" min-width="300" label="硬件和固件项目名称"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="use" align="center" width="180" label="用途"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="number" align="center" width="80" label="数量"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="state" align="center" width="120" label="状态"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="unit" align="center" width="180" label="提供单位"></el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-flex el-B-border"> | 
|---|
|  |  |  | <div class="DFormWidth DAlign DHold"> | 
|---|
|  |  |  | 动态测试环境图 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div style="width: calc(100% - 120px);"> | 
|---|
|  |  |  | <div style="height:150px" class="el-wt-border-left"> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-flex el-B-border"> | 
|---|
|  |  |  | <div class="DFormWidth DAlign DHold"> | 
|---|
|  |  |  | 环境差异性分析 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-wt-border-left" style="padding-left:5px;width: calc(100% - 130px)"> | 
|---|
|  |  |  | <el-table class="el-software el-margin-top-bot" height="150" border :data="form.analyzeData" | 
|---|
|  |  |  | stripe> | 
|---|
|  |  |  | <el-table-column prop="code" align="center" width="80" label="序号"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="realEnvironment" min-width="300" label="真实环境"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="testEnvironment" align="center" width="100" label="测试环境"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="environmentalDifference" align="center" width="100" | 
|---|
|  |  |  | label="环境差异"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="influence" align="center" width="160" label="对测试结果影响"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="measure" align="center" width="180" label="措施"></el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-flex el-B-border"> | 
|---|
|  |  |  | <div class="DFormWidth DAlign DHold"> | 
|---|
|  |  |  | 环境建立 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div style="width: calc(100% - 120px)" class="DConfirmForm el-wt-border-left"> | 
|---|
|  |  |  | <el-form-item label="人员" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="form.buildPersonnel" placeholder="请输入单位名称"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="日期" style="width: 48%"> | 
|---|
|  |  |  | <el-input v-model="form.buildDate" placeholder="请输入联系人"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label-width="160px" class="isKill" label="是否进行环境病毒查杀" style="width: 49%"> | 
|---|
|  |  |  | <el-radio-group v-model="form.isKill"> | 
|---|
|  |  |  | <el-radio :label="0">是</el-radio> | 
|---|
|  |  |  | <el-radio :label="1">否</el-radio> | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="病毒库版本" style="width: 48%"> | 
|---|
|  |  |  | <el-input v-model="form.VirusLibraryVersion" placeholder="请输入病毒库版本"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-flex"> | 
|---|
|  |  |  | <div class="DFormWidth DAlign DHold"> | 
|---|
|  |  |  | 环境确认 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div style="width: calc(100% - 120px)" class="DConfirmForm el-wt-border-left"> | 
|---|
|  |  |  | <!-- 单位名称 --> | 
|---|
|  |  |  | <el-form-item label="人员" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="form.verifyPersonnel" placeholder="请输入单位名称"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <!-- 联系人 --> | 
|---|
|  |  |  | <el-form-item label="日期" style="width: 48%"> | 
|---|
|  |  |  | <el-input v-model="form.verifyDate" placeholder="请输入联系人"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--.DAlign {--> | 
|---|
|  |  |  | <!--  text-align: center;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <script> | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | name: 'confirmForm', | 
|---|
|  |  |  | data() { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | form: { | 
|---|
|  |  |  | code: '719G19804/P3A-09-20XX-00X', | 
|---|
|  |  |  | name: '', | 
|---|
|  |  |  | place: '', | 
|---|
|  |  |  | software: '', | 
|---|
|  |  |  | versions: '', | 
|---|
|  |  |  | buildPersonnel: '', | 
|---|
|  |  |  | buildDate: '', | 
|---|
|  |  |  | isKill: 1, | 
|---|
|  |  |  | VirusLibraryVersion: '', | 
|---|
|  |  |  | verifyPersonnel: '', | 
|---|
|  |  |  | verifyDate: '', | 
|---|
|  |  |  | checkList: [1, 0], | 
|---|
|  |  |  | softwareData: [ | 
|---|
|  |  |  | {code: '1', name: 'awdas', versions: '1.3.1', use: '奥迪', unit: '单位1'}, | 
|---|
|  |  |  | {code: '2', name: '阿尔法', versions: '1.3.1', use: '奥迪', unit: '单位2'}, | 
|---|
|  |  |  | {code: '3', name: 'awed', versions: '1.3.1', use: '奥迪', unit: '单位3'}, | 
|---|
|  |  |  | {code: '4', name: '国土部', versions: '1.3.1', use: '奥迪', unit: '单位4'}, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | hardwareData: [ | 
|---|
|  |  |  | {code: '1', name: 'awdas', use: '车上', number: '2', state: '21', unit: '单位1'}, | 
|---|
|  |  |  | {code: '2', name: 'qe', use: '515', number: '1', state: '21', unit: '单位2'}, | 
|---|
|  |  |  | {code: '3', name: '123', use: '1234', number: '42', state: '11', unit: '单位4'}, | 
|---|
|  |  |  | {code: '4', name: '1515', use: '123', number: '1', state: '21', unit: '单位51'}, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | analyzeData: [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | code: '1', | 
|---|
|  |  |  | realEnvironment: '真实环境1', | 
|---|
|  |  |  | testEnvironment: '测试环境1', | 
|---|
|  |  |  | environmentalDifference: '123', | 
|---|
|  |  |  | influence: 'wu', | 
|---|
|  |  |  | measure: '12' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | code: '1', | 
|---|
|  |  |  | realEnvironment: '真实环境1', | 
|---|
|  |  |  | testEnvironment: '测试环境1', | 
|---|
|  |  |  | environmentalDifference: '123', | 
|---|
|  |  |  | influence: 'wu', | 
|---|
|  |  |  | measure: '14' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | code: '1', | 
|---|
|  |  |  | realEnvironment: '真实环境1', | 
|---|
|  |  |  | testEnvironment: '测试环境1', | 
|---|
|  |  |  | environmentalDifference: '123', | 
|---|
|  |  |  | influence: 'wu', | 
|---|
|  |  |  | measure: '15' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | code: '1', | 
|---|
|  |  |  | realEnvironment: '真实环境1', | 
|---|
|  |  |  | testEnvironment: '测试环境1', | 
|---|
|  |  |  | environmentalDifference: '123', | 
|---|
|  |  |  | influence: 'wu', | 
|---|
|  |  |  | measure: '16' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods:{ | 
|---|
|  |  |  | addRow(){ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--.DConfirmForm {--> | 
|---|
|  |  |  | <!--  /*border-left: 1px solid;*/--> | 
|---|
|  |  |  | <!--  width: 100%;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--.DConfirmForm > .el-form-item > .el-form-item__content {--> | 
|---|
|  |  |  | <!--  width: calc(100% - 120px);--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <!--.DConfirmForm > .el-form-item.isKill > .el-form-item__content {--> | 
|---|
|  |  |  | <!--  width: calc(100% - 160px);--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <!--.el-form-border{--> | 
|---|
|  |  |  | <!--  border-top: 1px solid;--> | 
|---|
|  |  |  | <!--  border-bottom: 1px solid;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <!--.el-B-border{--> | 
|---|
|  |  |  | <!--  border-bottom: 1px solid;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <!--.el-margin-top-bot{--> | 
|---|
|  |  |  | <!--  margin-top:5px;--> | 
|---|
|  |  |  | <!--  margin-bottom:5px;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <!--.el-wt-border-left{--> | 
|---|
|  |  |  | <!--  border-left:1px solid;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <!--.zt .el-table.el-software th {--> | 
|---|
|  |  |  | <!--  background: transparent;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <style> | 
|---|
|  |  |  | .confirmFormAuto { | 
|---|
|  |  |  | width: 70%; | 
|---|
|  |  |  | margin: 0 auto; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--.zt .el-table.el-software th > .cell {--> | 
|---|
|  |  |  | <!--  font-weight: 500;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <!--.DHold{--> | 
|---|
|  |  |  | <!--  font-weight: 600;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <!--.zt .el-table.el-software{--> | 
|---|
|  |  |  | <!--  font-size: 14px;--> | 
|---|
|  |  |  | <!--}--> | 
|---|
|  |  |  | <!--</style>--> | 
|---|
|  |  |  | .confirmDAuto { | 
|---|
|  |  |  | border: 1px solid; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .el-flex { | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | align-items: center; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .DFormWidth { | 
|---|
|  |  |  | width: 120px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .DAlign { | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .DConfirmForm { | 
|---|
|  |  |  | /*border-left: 1px solid;*/ | 
|---|
|  |  |  | width: 100%; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .DConfirmForm > .el-form-item > .el-form-item__content { | 
|---|
|  |  |  | width: calc(100% - 120px); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .DConfirmForm > .el-form-item.isKill > .el-form-item__content { | 
|---|
|  |  |  | width: calc(100% - 160px); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .el-form-border { | 
|---|
|  |  |  | border-top: 1px solid; | 
|---|
|  |  |  | border-bottom: 1px solid; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .el-B-border { | 
|---|
|  |  |  | border-bottom: 1px solid; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .el-margin-top-bot { | 
|---|
|  |  |  | margin-top: 5px; | 
|---|
|  |  |  | margin-bottom: 5px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .el-wt-border-left { | 
|---|
|  |  |  | border-left: 1px solid; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .zt .el-table.el-software th { | 
|---|
|  |  |  | background: transparent; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .zt .el-table.el-software th > .cell { | 
|---|
|  |  |  | font-weight: 500; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .DHold { | 
|---|
|  |  |  | font-weight: 600; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .zt .el-table.el-software { | 
|---|
|  |  |  | font-size: 14px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .table-container { | 
|---|
|  |  |  | position: relative; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .icon-container { | 
|---|
|  |  |  | position: absolute; | 
|---|
|  |  |  | bottom: -30px; | 
|---|
|  |  |  | left: 50%; | 
|---|
|  |  |  | width: 40px; | 
|---|
|  |  |  | height: 30px; | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | line-height: 30px; | 
|---|
|  |  |  | transform: translateX(-50%); | 
|---|
|  |  |  | border: 1px solid #EBEEF5; | 
|---|
|  |  |  | background-color: #fafafa; | 
|---|
|  |  |  | box-shadow: 0 3px 6px 0 rgba(72, 119, 232, 0.14); | 
|---|
|  |  |  | border-radius: 2px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|
|  |  |  | 
|---|
|  |  |  | <template> | 
|---|
|  |  |  | <zt-dialog ref="dialog" column="2" @confirm="formSubmit"> | 
|---|
|  |  |  | <el-form :model="dataForm" ref="dataForm" :disabled="dataForm.disabled" label-width="120px"> | 
|---|
|  |  |  | <zt-form-item label="编号" prop="code" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.code"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | <zt-form-item label="硬软件资源" prop="hardSoftwareRes" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.hardSoftwareRes"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | <zt-form-item label="动态测试环境图" prop="testEnvirontDiagram" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.testEnvirontDiagram"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | <zt-form-item label="环境差异性分析" prop="environAnalysis" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.environAnalysis"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | <zt-form-item label="环境建立" prop="environEstablish" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.environEstablish"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | <zt-form-item label="环境建立人员" prop="establishStaff" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.establishStaff"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | <zt-form-item label="环境建立日期" prop="establishDate" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.establishDate"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | <zt-form-item label="环境确认" prop="environConfirmat" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.environConfirmat"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | <zt-form-item label="环境确认人员" prop="confirmatStaff" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.confirmatStaff"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | <zt-form-item label="环境确认日期" prop="confirmatDate" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.confirmatDate"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | <zt-form-item label="是否进行环境病毒查杀" prop="isVirusScan" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.isVirusScan"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | <zt-form-item label="病毒库版本" prop="virusDatabaseVersion" rules="required"> | 
|---|
|  |  |  | <el-input v-model="dataForm.virusDatabaseVersion"></el-input> | 
|---|
|  |  |  | </zt-form-item> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | <zt-dialog ref="dialog" column="2" @confirm="formSubmit" append-to-body title="测试环境建立确认表"> | 
|---|
|  |  |  | <el-form :model="dataForm" style="padding: 0" :inline="true"  ref="dataForm" :disabled="dataForm.disabled" label-width="130px" class="confirmFormAuto"> | 
|---|
|  |  |  | <div class="DConfirmForm"> | 
|---|
|  |  |  | <el-form-item label-width="60px" label="编号:" style="width:100%;margin-bottom: 0"> | 
|---|
|  |  |  | <span>{{dataForm.code}}</span> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div style="border: 1px solid rgba(0,0,0,.2);width: 99%" class="confirmDAuto DConfirmForm"> | 
|---|
|  |  |  | <el-form-item class="marginTopAndMarginBottom" label="专业实验室名称" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="dataForm.agencyName" placeholder="专业实验室名称"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item class="marginTopAndMarginBottom" label="测试地点" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="dataForm.site" placeholder="测试地点"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item  label="被测软件" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="dataForm.softwareName" placeholder="被测软件"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="版本" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="dataForm.softwareIdentity" placeholder="版本"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <div class="el-flexConfigDialog el-form-border"> | 
|---|
|  |  |  | <div class="DFormWidth DAlign DHold"> | 
|---|
|  |  |  | 硬软件资源 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-wt-border-left" style="padding-left:5px;width: calc(100% - 130px)"> | 
|---|
|  |  |  | <div style="padding: 5px">软件资源:</div> | 
|---|
|  |  |  | <div class="table-container"> | 
|---|
|  |  |  | <el-table class="el-software el-margin-top-bot" height="150" border :data="dataForm.softwareResourcesList" | 
|---|
|  |  |  | stripe> | 
|---|
|  |  |  | <el-table-column prop="code" align="center" width="80" label="序号"> | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <span v-html="indexFormat(scope.$index)"></span> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="name" min-width="300" label="软件项名称"> | 
|---|
|  |  |  | <template v-slot="{ row }"> | 
|---|
|  |  |  | <el-input v-model="row.itemName" placeholder="软件项名称/版本"></el-input> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="versions" align="center" width="180" label="版本"> | 
|---|
|  |  |  | <template v-slot="{ row }"> | 
|---|
|  |  |  | <el-input v-model="row.version" placeholder="版本"></el-input> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="use" align="center" width="180" label="用途"> | 
|---|
|  |  |  | <template v-slot="{ row }"> | 
|---|
|  |  |  | <el-input v-model="row.usage" placeholder="用途"></el-input> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="unit" label="提供单位" width="180"  align="center"> | 
|---|
|  |  |  | <template v-slot="{ row }"> | 
|---|
|  |  |  | <el-input v-model="row.provideUnit" placeholder="提供单位"></el-input> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | <div class="icon-container" @click="addSoftwareRow()"> | 
|---|
|  |  |  | <!-- 放置固定的图标 --> | 
|---|
|  |  |  | <i class="el-icon-plus"></i> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div style="padding: 5px">硬件资源:</div> | 
|---|
|  |  |  | <div class="table-container"> | 
|---|
|  |  |  | <el-table class="el-software el-margin-top-bot" height="150" border :data="dataForm.hardwareResourcesList" | 
|---|
|  |  |  | stripe> | 
|---|
|  |  |  | <el-table-column prop="code" align="center" width="80" label="序号"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="itemName" min-width="300" label="硬件和固件项目名称"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="usage" align="center" width="180" label="用途"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="number" align="center" width="80" label="数量"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="state" align="center" width="120" label="状态"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="provideUnit" align="center" width="180" label="提供单位"></el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | <div class="icon-container" @click="addHardwareRow()"> | 
|---|
|  |  |  | <!-- 放置固定的图标 --> | 
|---|
|  |  |  | <i class="el-icon-plus"></i> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-flexConfigDialog el-B-border"> | 
|---|
|  |  |  | <div class="DFormWidth DAlign DHold"> | 
|---|
|  |  |  | 动态测试环境图 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div style="width: calc(100% - 120px);"> | 
|---|
|  |  |  | <div style="height:150px" class="el-wt-border-left"> | 
|---|
|  |  |  | <span>{{dataForm.testEnvirontDiagram}}</span> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-flexConfigDialog el-B-border"> | 
|---|
|  |  |  | <div class="DFormWidth DAlign DHold"> | 
|---|
|  |  |  | 环境差异性分析 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-wt-border-left" style="padding-left:5px;width: calc(100% - 130px)"> | 
|---|
|  |  |  | <div class="table-container"> | 
|---|
|  |  |  | <el-table class="el-software el-margin-top-bot" height="150" border :data="dataForm.environAnalysisList" | 
|---|
|  |  |  | stripe> | 
|---|
|  |  |  | <el-table-column prop="code" align="center" width="80" label="序号"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="realEnviron" min-width="300" label="真实环境"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="testEnviron" align="center" width="100" label="测试环境"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="environDifference" align="center" width="100" label="环境差异"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="resultImpact" align="center" width="160" label="对测试结果影响"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="measure" align="center" width="180" label="措施"></el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | <div class="icon-container" @click="addDiscrepancyRow()"> | 
|---|
|  |  |  | <!-- 放置固定的图标 --> | 
|---|
|  |  |  | <i class="el-icon-plus"></i> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-flexConfigDialog el-B-border"> | 
|---|
|  |  |  | <div class="DFormWidth DAlign DHold"> | 
|---|
|  |  |  | 环境建立 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div style="width: calc(100% - 120px)"  class="DConfirmForm el-wt-border-left"> | 
|---|
|  |  |  | <el-form-item class="marginTopAndMarginBottom" label="人员" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="dataForm.establishStaff" placeholder="人员"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item class="marginTopAndMarginBottom" label="日期" style="width: 48%"> | 
|---|
|  |  |  | <el-date-picker | 
|---|
|  |  |  | v-model="dataForm.establishDate" | 
|---|
|  |  |  | type="date" | 
|---|
|  |  |  | placeholder="日期"> | 
|---|
|  |  |  | </el-date-picker> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label-width="180px" class="isKill" label="是否进行环境病毒查杀" style="width: 49%"> | 
|---|
|  |  |  | <zt-dict v-model="dataForm.isVirusScan" dict="is_or_not" :radio="true"></zt-dict> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="病毒库版本" style="width: 48%"> | 
|---|
|  |  |  | <el-input v-model="dataForm.virusDatabaseVersion" placeholder="请输入病毒库版本"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="el-flexConfigDialog"> | 
|---|
|  |  |  | <div class="DFormWidth DAlign DHold"> | 
|---|
|  |  |  | 环境确认 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div style="width: calc(100% - 120px)" class="DConfirmForm el-wt-border-left"> | 
|---|
|  |  |  | <!-- 单位名称 --> | 
|---|
|  |  |  | <el-form-item class="marginTopAndMarginBottom" label="人员" style="width: 49%"> | 
|---|
|  |  |  | <el-input v-model="dataForm.confirmatStaff" placeholder="人员"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <!-- 联系人 --> | 
|---|
|  |  |  | <el-form-item class="marginTopAndMarginBottom" label="日期" style="width: 48%"> | 
|---|
|  |  |  | <el-date-picker | 
|---|
|  |  |  | v-model="dataForm.confirmatDate" | 
|---|
|  |  |  | type="date" | 
|---|
|  |  |  | placeholder="日期"> | 
|---|
|  |  |  | </el-date-picker> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | </zt-dialog> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | dataForm: { | 
|---|
|  |  |  | id: '', | 
|---|
|  |  |  | code: '', | 
|---|
|  |  |  | agencyName:'', | 
|---|
|  |  |  | site:'', | 
|---|
|  |  |  | softwareName:'', | 
|---|
|  |  |  | softwareIdentity:'', | 
|---|
|  |  |  | hardSoftwareRes: '', | 
|---|
|  |  |  | testEnvirontDiagram: '', | 
|---|
|  |  |  | softwareResourcesList:[], | 
|---|
|  |  |  | hardwareResourcesList:[], | 
|---|
|  |  |  | environAnalysisList:[], | 
|---|
|  |  |  | establishStaff:'', | 
|---|
|  |  |  | establishDate:'', | 
|---|
|  |  |  | environAnalysis: '', | 
|---|
|  |  |  | environEstablish: '', | 
|---|
|  |  |  | establishStaff: '', | 
|---|
|  |  |  | establishDate: '', | 
|---|
|  |  |  | environConfirmat: '', | 
|---|
|  |  |  | confirmatStaff: '', | 
|---|
|  |  |  | confirmatDate: '', | 
|---|
|  |  |  | isVirusScan: '', | 
|---|
|  |  |  | virusDatabaseVersion: '' | 
|---|
|  |  |  | virusDatabaseVersion: '', | 
|---|
|  |  |  | softwareData:[] | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | init(id,row){ | 
|---|
|  |  |  | this.dataForm.id = row.id | 
|---|
|  |  |  | this.dataForm.projectId = row.projectId | 
|---|
|  |  |  | // this.dataForm.disabled | 
|---|
|  |  |  | this.getInfo() | 
|---|
|  |  |  | console.log(this.dataForm.id,this.dataForm.projectId,'params params') | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 获取信息 | 
|---|
|  |  |  | async getInfo() { | 
|---|
|  |  |  | let res = await this.$http.get(`/project/Environ/${this.dataForm.id}`) | 
|---|
|  |  |  | let params = { | 
|---|
|  |  |  | orderId: this.dataForm.id, | 
|---|
|  |  |  | projectId: this.dataForm.projectId | 
|---|
|  |  |  | } | 
|---|
|  |  |  | let res = await this.$http.get(`/project/Environ/getDto`,{params: params}) | 
|---|
|  |  |  | this.dataForm = { | 
|---|
|  |  |  | ...this.dataForm, | 
|---|
|  |  |  | ...res.data | 
|---|
|  |  |  | } | 
|---|
|  |  |  | console.log(this.dataForm,'this.dataForm') | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | indexFormat(index){ | 
|---|
|  |  |  | return index += 1 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | addSoftwareRow(){ | 
|---|
|  |  |  | this.dataForm.softwareData.push({}) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | addHardwareRow(){}, | 
|---|
|  |  |  | addDiscrepancyRow(){}, | 
|---|
|  |  |  | // 表单提交 | 
|---|
|  |  |  | async formSubmit() { | 
|---|
|  |  |  | let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/project/Environ/', this.dataForm) | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  | <style> | 
|---|
|  |  |  | .confirmFormAuto { | 
|---|
|  |  |  | width: 70%; | 
|---|
|  |  |  | margin: 0 auto; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .confirmDAuto{ | 
|---|
|  |  |  | border: 1px solid rgba(0,0,0,.2); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .el-flexConfigDialog { | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | align-items: center; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .DFormWidth { | 
|---|
|  |  |  | width: 120px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .DAlign { | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .DConfirmForm { | 
|---|
|  |  |  | /*border-left: 1px solid;*/ | 
|---|
|  |  |  | width: 100%; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .DConfirmForm > .el-form-item > .el-form-item__content { | 
|---|
|  |  |  | width: calc(100% - 130px); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .DConfirmForm > .el-form-item.isKill > .el-form-item__content { | 
|---|
|  |  |  | width: calc(100% - 180px); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .el-form-border{ | 
|---|
|  |  |  | border-top: 1px solid rgba(0,0,0,.2); | 
|---|
|  |  |  | border-bottom: 1px solid rgba(0,0,0,.2); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .el-B-border{ | 
|---|
|  |  |  | border-bottom: 1px solid rgba(0,0,0,.2); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .el-margin-top-bot{ | 
|---|
|  |  |  | margin-top:5px; | 
|---|
|  |  |  | margin-bottom:5px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .el-wt-border-left{ | 
|---|
|  |  |  | border-left:1px solid rgba(0,0,0,.2); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .zt .el-table.el-software th { | 
|---|
|  |  |  | background: transparent; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .zt .el-table.el-software th > .cell { | 
|---|
|  |  |  | font-weight: 500; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .DHold{ | 
|---|
|  |  |  | font-weight: 600; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .zt .el-table.el-software{ | 
|---|
|  |  |  | font-size: 14px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .confirmFormAuto .marginTopAndMarginBottom { | 
|---|
|  |  |  | margin-top: 10px !important; | 
|---|
|  |  |  | margin-bottom: 0 !important; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .confirmFormAuto .marginTopAndMarginBottom2 { | 
|---|
|  |  |  | margin-top: -10px !important; | 
|---|
|  |  |  | margin-bottom: 10px !important; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .confirmFormAuto .marginTopAndMarginBottom3 { | 
|---|
|  |  |  | margin-top: 0 !important; | 
|---|
|  |  |  | margin-bottom: 10px !important; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .table-container { | 
|---|
|  |  |  | position: relative; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .icon-container { | 
|---|
|  |  |  | z-index: 1; | 
|---|
|  |  |  | position: absolute; | 
|---|
|  |  |  | bottom: -20px; | 
|---|
|  |  |  | left: 50%; | 
|---|
|  |  |  | width: 40px; | 
|---|
|  |  |  | height: 30px; | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | line-height: 30px; | 
|---|
|  |  |  | transform: translateX(-50%); | 
|---|
|  |  |  | border: 1px solid #EBEEF5; | 
|---|
|  |  |  | background-color: #fafafa; | 
|---|
|  |  |  | box-shadow: 0 3px 6px 0 rgba(72, 119, 232, 0.14); | 
|---|
|  |  |  | border-radius: 2px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|
|  |  |  | 
|---|
|  |  |  | <template> | 
|---|
|  |  |  | <el-card shadow="never" class="aui-card--fill"> | 
|---|
|  |  |  | <div class="mod-project-environ}"> | 
|---|
|  |  |  | <zt-table-wraper query-url="/project/Environ/page" delete-url="/project/Environ" v-slot="{ table }"> | 
|---|
|  |  |  | <zt-table-wraper query-url="/project/Environ/page" delete-url="/project/Environ" v-slot="{ table }" @dataLoaded="dataLoaded"> | 
|---|
|  |  |  | <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> | 
|---|
|  |  |  | <el-form-item> | 
|---|
|  |  |  | <el-input v-model="dataForm.code" placeholder="请输入编号" clearable></el-input> | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item> | 
|---|
|  |  |  | <zt-button type="query" @click="table.query()"/> | 
|---|
|  |  |  | <!--            <zt-button type="query" @click="table.query()"/>--> | 
|---|
|  |  |  | <zt-button type="primary" class="el-icon-edit" perm="project:add" @click="add()">新增</zt-button> | 
|---|
|  |  |  | <zt-button type="add" perm="project:add" @click="table.editHandle()"/> | 
|---|
|  |  |  | <zt-button type="delete" perm="project:delete" @click="table.deleteHandle()"/> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px" v-adaptive="{bottomOffset:70}" border @selection-change="table.selectionChangeHandle"> | 
|---|
|  |  |  | <el-table-column type="selection" width="40"/> | 
|---|
|  |  |  | <el-table-column align="center" type="selection" width="40"/> | 
|---|
|  |  |  | <el-table-column prop="code" label="编号"/> | 
|---|
|  |  |  | <el-table-column prop="softwareName" label="软件名称"/> | 
|---|
|  |  |  | <el-table-column prop="softwareIdentity" label="标识"/> | 
|---|
|  |  |  | <zt-table-column-handle :table="table" edit-perm="project:update" delete-perm="project::delete"/> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | <!-- 弹窗, 新增 / 修改 --> | 
|---|
|  |  |  | <add-or-update @refreshDataList="table.query"/> | 
|---|
|  |  |  | <add-or-update ref="addOrUpdate" @refreshDataList="table.query"/> | 
|---|
|  |  |  | <ProjectSelect ref="projectSelect" | 
|---|
|  |  |  | @refreshDataList="table.query" | 
|---|
|  |  |  | @setProjectInfo="openAddWin"> | 
|---|
|  |  |  | </ProjectSelect> | 
|---|
|  |  |  | </zt-table-wraper> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-card> | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <script> | 
|---|
|  |  |  | import AddOrUpdate from './Environ-AddOrUpdate' | 
|---|
|  |  |  | import ProjectSelect from "./Project-select.vue" | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | data() { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | components: { | 
|---|
|  |  |  | AddOrUpdate | 
|---|
|  |  |  | AddOrUpdate, | 
|---|
|  |  |  | ProjectSelect | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods:{ | 
|---|
|  |  |  | dataLoaded(data){ | 
|---|
|  |  |  | console.log(data,'data daraList') | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | add() { | 
|---|
|  |  |  | this.$refs.projectSelect.$refs.dialog.init("environ") | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | openAddWin(row) { | 
|---|
|  |  |  | console.log(row.id, 'row.id') | 
|---|
|  |  |  | this.$refs.addOrUpdate.$refs.dialog.init(null, {id: null, projectId: row.id}) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </script> | 
|---|