From b4ba324df408dc5f64b6f767b71ea9cfc870e5f0 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期三, 08 十一月 2023 17:09:00 +0800 Subject: [PATCH] Changes --- modules/mainPart/src/main/java/com/zt/life/modules/project/dao/SoftwareTestOrderDao.java | 23 + modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/service/TestAgencyInfoService.java | 40 ++ modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrder.java | 325 ++++++++++++++++ web/src/views/modules/sysBaseInfo/TestAgencyInfo.vue | 44 ++ modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java | 40 ++ web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue | 127 ++++++ modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/controller/TestAgencyInfoController.java | 96 ++++ web/src/views/modules/project/Project.vue | 18 web/src/views/modules/project/SoftwareTestOrder.vue | 58 ++ modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/dao/TestAgencyInfoDao.java | 23 + modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/model/TestAgencyInfo.java | 48 ++ modules/mainPart/src/main/java/com/zt/life/modules/project/dto/ProjectDto.java | 27 + modules/mainPart/src/main/resources/mapper/sysBaseInfo/TestAgencyInfoDao.xml | 20 + modules/mainPart/src/main/java/com/zt/life/modules/project/controller/SoftwareTestOrderController.java | 98 ++++ modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml | 100 ++-- modules/mainPart/src/main/resources/mapper/project/SoftwareTestOrderDao.xml | 21 + web/src/views/modules/sysBaseInfo/TestAgencyInfo-AddOrUpdate.vue | 69 +++ 17 files changed, 1,115 insertions(+), 62 deletions(-) diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/SoftwareTestOrderController.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/SoftwareTestOrderController.java new file mode 100644 index 0000000..6b8bf9f --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/SoftwareTestOrderController.java @@ -0,0 +1,98 @@ +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.SoftwareTestOrder; +import com.zt.life.modules.project.service.SoftwareTestOrderService; +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; + + +/** + * software_test_order + * + * @author zt generator + * @since 1.0.0 2023-11-08 + */ +@RestController +@RequestMapping("/project/SoftwareTestOrder/") +@Api(tags="software_test_order") +public class SoftwareTestOrderController { + @Autowired + private SoftwareTestOrderService softwareTestOrderService; + + @GetMapping("page") + @ApiOperation("鍒嗛〉") + @ApiImplicitParams({ + @ApiImplicitParam(name = Constant.Q.PAGE, value = Constant.QV.PAGE, required = true, dataType = Constant.QT.INT), + @ApiImplicitParam(name = Constant.Q.LIMIT, value = Constant.QV.LIMIT, required = true, dataType = Constant.QT.INT), + @ApiImplicitParam(name = Constant.Q.ORDER_FIELD, value = Constant.QV.ORDER_FIELD, dataType = Constant.QT.STRING), + @ApiImplicitParam(name = Constant.Q.ORDER, value = Constant.QV.ORDER, dataType = Constant.QT.STRING), + @ApiImplicitParam(name = "testBasis", value = "娴嬭瘯渚濇嵁", dataType = Constant.QT.STRING, format = "test_basis^EQ"), + @ApiImplicitParam(name = "testType", value = "娴嬭瘯绫诲瀷", dataType = Constant.QT.STRING, format = "test_type^EQ"), + @ApiImplicitParam(name = "testStandard", value = "娴嬭瘯鏍囧噯", dataType = Constant.QT.STRING, format = "test_standard^EQ"), + @ApiImplicitParam(name = "articleNature", value = "鐗╁搧鎬ц川", dataType = Constant.QT.STRING, format = "article_nature^EQ")}) + public PageResult<SoftwareTestOrder> page(@ApiIgnore @QueryParam QueryFilter queryFilter){ + return PageResult.ok(softwareTestOrderService.page(queryFilter)); + } + + @GetMapping("{id}") + @ApiOperation("淇℃伅") + public Result<SoftwareTestOrder> get(@PathVariable("id") Long id){ + SoftwareTestOrder data = softwareTestOrderService.get(id); + + return Result.ok(data); + } + + @PostMapping + @ApiOperation("鏂板") + @LogOperation("鏂板") + public Result insert(@RequestBody SoftwareTestOrder softwareTestOrder){ + //鏁堥獙鏁版嵁 + ValidatorUtils.validateEntity(softwareTestOrder, AddGroup.class, DefaultGroup.class); + softwareTestOrderService.insert(softwareTestOrder); + + return Result.ok(); + } + + @PutMapping + @ApiOperation("淇敼") + @LogOperation("淇敼") + public Result update(@RequestBody SoftwareTestOrder softwareTestOrder){ + //鏁堥獙鏁版嵁 + ValidatorUtils.validateEntity(softwareTestOrder, UpdateGroup.class, DefaultGroup.class); + softwareTestOrderService.update(softwareTestOrder); + + return Result.ok(); + } + + @DeleteMapping + @ApiOperation("鍒犻櫎") + @LogOperation("鍒犻櫎") + public Result delete(@RequestBody Long[] ids){ + //鏁堥獙鏁版嵁 + AssertUtils.isArrayEmpty(ids, "id"); + softwareTestOrderService.delete(ids); + + return Result.ok(); + } + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/dao/SoftwareTestOrderDao.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/dao/SoftwareTestOrderDao.java new file mode 100644 index 0000000..e282e25 --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/dao/SoftwareTestOrderDao.java @@ -0,0 +1,23 @@ +package com.zt.life.modules.project.dao; + +import com.zt.common.dao.BaseDao; +import com.zt.life.modules.project.model.SoftwareTestOrder; +import org.apache.ibatis.annotations.Mapper; + + +import java.util.List; +import java.util.Map; + + +/** + * software_test_order + * + * @author zt generator + * @since 1.0.0 2023-11-08 + */ +@Mapper +public interface SoftwareTestOrderDao extends BaseDao<SoftwareTestOrder> { + + List<SoftwareTestOrder> getList(Map<String, Object> params); + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/dto/ProjectDto.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/dto/ProjectDto.java new file mode 100644 index 0000000..6cf4b86 --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/dto/ProjectDto.java @@ -0,0 +1,27 @@ +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.sysBaseInfo.model.TestAgencyInfo; +import com.zt.life.sys.dto.OssDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +@Data +public class ProjectDto extends Project { + + private SoftwareTestOrder softwareTestOrder; + private Project project; + private TestAgencyInfo TestAgencyInfo; + @ApiModelProperty(value = "琚祴浠�") + private List<SoftwareTestOrderMeasured> childrenTable1 = new ArrayList<>(); + @ApiModelProperty(value = "浜や粯浠�") + private List<SoftwareTestOrderDeliverable> childrenTable2 = new ArrayList<>(); + +} + diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrder.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrder.java new file mode 100644 index 0000000..85cb239 --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/model/SoftwareTestOrder.java @@ -0,0 +1,325 @@ +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; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * software_test_order + * + * @author zt generator + * @since 1.0.0 2023-11-08 + */ +@Data +@EqualsAndHashCode(callSuper=false) +public class SoftwareTestOrder extends BusiEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "椤圭洰ID") + private Long projectId; + + @ApiModelProperty(value = "杩愯鐜") + private String optEnviron; + + @ApiModelProperty(value = "缂栫▼璇█") + private String programLang; + + @ApiModelProperty(value = "娴嬭瘯渚濇嵁") + private String testBasis; + + @ApiModelProperty(value = "娴嬭瘯绫诲瀷") + private String testType; + + @ApiModelProperty(value = "娴嬭瘯鏍囧噯") + private String testStandard; + + @ApiModelProperty(value = "寮�濮嬫棩鏈�") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date startDate; + + @ApiModelProperty(value = "缁撴潫鏃ユ湡") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date endDate; + + @ApiModelProperty(value = "娴嬭瘯鍦哄湴") + private String testVenue; + + @ApiModelProperty(value = "鍏朵粬瑕佹眰") + private String otherRequire; + + @ApiModelProperty(value = "娴嬭瘯鏃ユ湡") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date testDate; + + @ApiModelProperty(value = "浜や粯鏃ユ湡") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date deliveryDate; + + @ApiModelProperty(value = "妫�娴嬭垂鐢�") + private Integer testCost; + + @ApiModelProperty(value = "鐗╁搧鎬ц川") + private String articleNature; + + @ApiModelProperty(value = "鏍峰搧鐘舵��") + private String sampleStatus; + + @ApiModelProperty(value = "娴嬭瘎鏈烘瀯鍚嶇О") + private String agencyName; + + @ApiModelProperty(value = "鍦板潃") + private String site; + + @ApiModelProperty(value = "涓氬姟鑱旂郴") + private String businContact; + + @ApiModelProperty(value = "涓氬姟鎶曡瘔") + private String businComplaint; + + @ApiModelProperty(value = "瀹為獙瀹よ仈绯讳汉") + private String laborContact; + + @ApiModelProperty(value = "瀹為獙瀹よ仈绯荤數璇�") + private String labContactNum; + + @ApiModelProperty(value = "閭斂缂栫爜") + private String postalCode; + + @ApiModelProperty(value = "浼犵湡") + private String fax; + + @TableField(exist = false) + @ApiModelProperty(value = "濮旀墭鍗曚綅鍚嶇О") + private String entrustUnitName; + + @TableField(exist = false) + @ApiModelProperty(value = "濮旀墭鍗曚綅鍦板潃") + private String entrustUnitAddress; + + @TableField(exist = false) + @ApiModelProperty(value = "濮旀墭鍗曚綅鑱旂郴浜�") + private String entrustUnitContact; + + @TableField(exist = false) + @ApiModelProperty(value = "濮旀墭鍗曚綅鑱旂郴鏂瑰紡") + private String entrustUnitContWay; + + @TableField(exist = false) + @ApiModelProperty(value = "寮�鍙戝崟浣嶅悕绉�") + private String developUnitName; + + @TableField(exist = false) + @ApiModelProperty(value = "寮�鍙戝崟浣嶅湴鍧�") + private String developUnitAddress; + + @TableField(exist = false) + @ApiModelProperty(value = "寮�鍙戝崟浣嶈仈绯讳汉") + private String developUnitContact; + + @TableField(exist = false) + @ApiModelProperty(value = "寮�鍙戝崟浣嶈仈绯绘柟寮�") + private String developUnitContWay; + + @TableField(exist = false) + @ApiModelProperty(value = "杞欢鍚嶇О") + private String softwareName; + + @TableField(exist = false) + @ApiModelProperty(value = "椤圭洰缂栧彿") + private String code; + + @TableField(exist = false) + @ApiModelProperty(value = "椤圭洰鏍囪瘑") + private String identity; + + @TableField(exist = false) + @ApiModelProperty(value = "瀵嗙骇") + private Integer secretClass; + + @TableField(exist = false) + @ApiModelProperty(value = "鍏抽敭绛夌骇") + private Integer criticalLevel; + + @TableField(exist = false) + @ApiModelProperty(value = "娴嬭瘯绾у埆") + private Integer testLevel; + + @TableField(exist = false) + @ApiModelProperty(value = "杞欢绫诲瀷") + private String softwareType; + + @TableField(exist = false) + @ApiModelProperty(value = "椤圭洰璐熻矗浜�") + private String projectLeader; + + @TableField(exist = false) + @ApiModelProperty(value = "椤圭洰娴嬭瘯浜哄憳") + private String projectTesters; + + @TableField(exist = false) + @ApiModelProperty(value = "椤圭洰瀹℃牳浜哄憳") + private String projectReviewer; + + @TableField(exist = false) + @ApiModelProperty(value = "鏄惁绛剧讲鍚堝悓") + private Integer isContract; + + public String getEntrustUnitName() { + return entrustUnitName; + } + + public void setEntrustUnitName(String entrustUnitName) { + this.entrustUnitName = entrustUnitName; + } + + public String getEntrustUnitAddress() { + return entrustUnitAddress; + } + + public void setEntrustUnitAddress(String entrustUnitAddress) { + this.entrustUnitAddress = entrustUnitAddress; + } + + public String getEntrustUnitContact() { + return entrustUnitContact; + } + + public void setEntrustUnitContact(String entrustUnitContact) { + this.entrustUnitContact = entrustUnitContact; + } + + public String getEntrustUnitContWay() { + return entrustUnitContWay; + } + + public void setEntrustUnitContWay(String entrustUnitContWay) { + this.entrustUnitContWay = entrustUnitContWay; + } + + public String getDevelopUnitName() { + return developUnitName; + } + + public void setDevelopUnitName(String developUnitName) { + this.developUnitName = developUnitName; + } + + public String getDevelopUnitAddress() { + return developUnitAddress; + } + + public void setDevelopUnitAddress(String developUnitAddress) { + this.developUnitAddress = developUnitAddress; + } + + public String getDevelopUnitContact() { + return developUnitContact; + } + + public void setDevelopUnitContact(String developUnitContact) { + this.developUnitContact = developUnitContact; + } + + public String getDevelopUnitContWay() { + return developUnitContWay; + } + + public void setDevelopUnitContWay(String developUnitContWay) { + this.developUnitContWay = developUnitContWay; + } + + public String getSoftwareName() { + return softwareName; + } + + public void setSoftwareName(String softwareName) { + this.softwareName = softwareName; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getIdentity() { + return identity; + } + + public void setIdentity(String identity) { + this.identity = identity; + } + + public Integer getSecretClass() { + return secretClass; + } + + public void setSecretClass(Integer secretClass) { + this.secretClass = secretClass; + } + + public Integer getCriticalLevel() { + return criticalLevel; + } + + public void setCriticalLevel(Integer criticalLevel) { + this.criticalLevel = criticalLevel; + } + + public Integer getTestLevel() { + return testLevel; + } + + public void setTestLevel(Integer testLevel) { + this.testLevel = testLevel; + } + + public String getSoftwareType() { + return softwareType; + } + + public void setSoftwareType(String softwareType) { + this.softwareType = softwareType; + } + + public String getProjectLeader() { + return projectLeader; + } + + public void setProjectLeader(String projectLeader) { + this.projectLeader = projectLeader; + } + + public String getProjectTesters() { + return projectTesters; + } + + public void setProjectTesters(String projectTesters) { + this.projectTesters = projectTesters; + } + + public String getProjectReviewer() { + return projectReviewer; + } + + public void setProjectReviewer(String projectReviewer) { + this.projectReviewer = projectReviewer; + } + + public Integer getIsContract() { + return isContract; + } + + public void setIsContract(Integer isContract) { + this.isContract = isContract; + } +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java new file mode 100644 index 0000000..6526c7b --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java @@ -0,0 +1,40 @@ +package com.zt.life.modules.project.service; + +import com.zt.common.service.BaseService; +import com.zt.life.modules.project.dao.SoftwareTestOrderDao; +import com.zt.life.modules.project.model.SoftwareTestOrder; +import org.springframework.stereotype.Service; +import com.zt.common.db.query.QueryFilter; +import javax.annotation.Resource; +import java.util.List; + + +/** + * software_test_order + * + * @author zt generator + * @since 1.0.0 2023-11-08 + */ +@Service +public class SoftwareTestOrderService extends BaseService<SoftwareTestOrderDao, SoftwareTestOrder> { + + /** + * 鍒嗛〉鏌ヨ + * + * @param queryFilter + * @return + */ + public List<SoftwareTestOrder> page(QueryFilter queryFilter) { + return baseDao.getList(queryFilter.getQueryParams()); + } + + /** + * 鍒犻櫎 + * + * @param ids + */ + public void delete(Long[] ids) { + super.deleteLogic(ids); + } + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/controller/TestAgencyInfoController.java b/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/controller/TestAgencyInfoController.java new file mode 100644 index 0000000..ebfad3e --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/controller/TestAgencyInfoController.java @@ -0,0 +1,96 @@ +package com.zt.life.modules.sysBaseInfo.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.sysBaseInfo.model.TestAgencyInfo; +import com.zt.life.modules.sysBaseInfo.service.TestAgencyInfoService; +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; + + +/** + * test_agency_info + * + * @author zt generator + * @since 1.0.0 2023-11-08 + */ +@RestController +@RequestMapping("/sysBaseInfo/TestAgencyInfo/") +@Api(tags="test_agency_info") +public class TestAgencyInfoController { + @Autowired + private TestAgencyInfoService testAgencyInfoService; + + @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 = "agencyName", value = "娴嬭瘎鏈烘瀯鍚嶇О", dataType = Constant.QT.STRING, format = "agency_name^LK") }) + public PageResult<TestAgencyInfo> page(@ApiIgnore @QueryParam QueryFilter queryFilter){ + + return PageResult.ok(testAgencyInfoService.page(queryFilter)); + } + + @GetMapping("{id}") + @ApiOperation("淇℃伅") + public Result<TestAgencyInfo> get(@PathVariable("id") Long id){ + TestAgencyInfo data = testAgencyInfoService.get(id); + + return Result.ok(data); + } + + @PostMapping + @ApiOperation("鏂板") + @LogOperation("鏂板") + public Result insert(@RequestBody TestAgencyInfo testAgencyInfo){ + //鏁堥獙鏁版嵁 + ValidatorUtils.validateEntity(testAgencyInfo, AddGroup.class, DefaultGroup.class); + testAgencyInfoService.insert(testAgencyInfo); + + return Result.ok(); + } + + @PutMapping + @ApiOperation("淇敼") + @LogOperation("淇敼") + public Result update(@RequestBody TestAgencyInfo testAgencyInfo){ + //鏁堥獙鏁版嵁 + ValidatorUtils.validateEntity(testAgencyInfo, UpdateGroup.class, DefaultGroup.class); + testAgencyInfoService.update(testAgencyInfo); + + return Result.ok(); + } + + @DeleteMapping + @ApiOperation("鍒犻櫎") + @LogOperation("鍒犻櫎") + public Result delete(@RequestBody Long[] ids){ + //鏁堥獙鏁版嵁 + AssertUtils.isArrayEmpty(ids, "id"); + testAgencyInfoService.delete(ids); + + return Result.ok(); + } + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/dao/TestAgencyInfoDao.java b/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/dao/TestAgencyInfoDao.java new file mode 100644 index 0000000..056a3b8 --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/dao/TestAgencyInfoDao.java @@ -0,0 +1,23 @@ +package com.zt.life.modules.sysBaseInfo.dao; + +import com.zt.common.dao.BaseDao; +import com.zt.life.modules.sysBaseInfo.model.TestAgencyInfo; +import org.apache.ibatis.annotations.Mapper; + + +import java.util.List; +import java.util.Map; + + +/** + * test_agency_info + * + * @author zt generator + * @since 1.0.0 2023-11-08 + */ +@Mapper +public interface TestAgencyInfoDao extends BaseDao<TestAgencyInfo> { + + List<TestAgencyInfo> getList(Map<String, Object> params); + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/model/TestAgencyInfo.java b/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/model/TestAgencyInfo.java new file mode 100644 index 0000000..8d3ca5f --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/model/TestAgencyInfo.java @@ -0,0 +1,48 @@ +package com.zt.life.modules.sysBaseInfo.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; + +/** + * test_agency_info + * + * @author zt generator + * @since 1.0.0 2023-11-08 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("test_agency_info") +public class TestAgencyInfo extends BusiEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "娴嬭瘎鏈烘瀯鍚嶇О") + private String agencyName; + + @ApiModelProperty(value = "鍦板潃") + private String site; + + @ApiModelProperty(value = "涓氬姟鑱旂郴") + private String businContact; + + @ApiModelProperty(value = "涓氬姟鎶曡瘔") + private String businComplaint; + + @ApiModelProperty(value = "瀹為獙瀹よ仈绯讳汉") + private String laborContact; + + @ApiModelProperty(value = "瀹為獙瀹よ仈绯荤數璇�") + private String labContactNum; + + @ApiModelProperty(value = "閭斂缂栫爜") + private String postalCode; + + @ApiModelProperty(value = "浼犵湡") + private String fax; + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/service/TestAgencyInfoService.java b/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/service/TestAgencyInfoService.java new file mode 100644 index 0000000..5fa5183 --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/sysBaseInfo/service/TestAgencyInfoService.java @@ -0,0 +1,40 @@ +package com.zt.life.modules.sysBaseInfo.service; + +import com.zt.common.service.BaseService; +import com.zt.life.modules.sysBaseInfo.dao.TestAgencyInfoDao; +import com.zt.life.modules.sysBaseInfo.model.TestAgencyInfo; +import org.springframework.stereotype.Service; +import com.zt.common.db.query.QueryFilter; +import javax.annotation.Resource; +import java.util.List; + + +/** + * test_agency_info + * + * @author zt generator + * @since 1.0.0 2023-11-08 + */ +@Service +public class TestAgencyInfoService extends BaseService<TestAgencyInfoDao, TestAgencyInfo> { + + /** + * 鍒嗛〉鏌ヨ + * + * @param queryFilter + * @return + */ + public List<TestAgencyInfo> page(QueryFilter queryFilter) { + return baseDao.getList(queryFilter.getQueryParams()); + } + + /** + * 鍒犻櫎 + * + * @param ids + */ + public void delete(Long[] ids) { + super.deleteLogic(ids); + } + +} diff --git a/modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml b/modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml index ee32184..b548ba0 100644 --- a/modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml +++ b/modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml @@ -65,15 +65,15 @@ a.title as summary, b.STEP_ROUTER, b.STEP_ROUTER_ID - FROM DJ_WF_RUN_TASK a - left join DJ_WF_DEF_STEP b on a.step_id = b.id + FROM WF_RUN_TASK a + left join WF_DEF_STEP b on a.step_id = b.id WHERE a.is_delete =0 and a.status in (0,1) AND a.RECEIVE_ID = #{userId} <if test="projectId != null and projectId != ''"> and a.biz_group_id = #{projectId} </if> <if test="djxlSystem != null and djxlSystem != ''"> - and a.FLOW_ID in (select id from dj_wf_def where system_type = #{djxlSystem}) + and a.FLOW_ID in (select id from wf_def where system_type = #{djxlSystem}) </if> ORDER BY a.receive_time DESC </select> @@ -97,13 +97,13 @@ a1.receive_time, a1.finish_time as finish_time, a1.status - FROM DJ_WF_RUN_TASK a1 + FROM WF_RUN_TASK a1 WHERE a1.is_delete = 0 and (a1.receive_id=#{userId} - or EXISTS(SELECT 1 FROM dj_sys_role s1,dj_sys_role_user s2 WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} AND + or EXISTS(SELECT 1 FROM sys_role s1,sys_role_user s2 WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} AND s2.is_delete=0 and s1.CODE in ('all','xtglybm'))) <if test="djxlSystem != null and djxlSystem != ''"> - and a1.FLOW_ID in (select id from dj_wf_def where system_type = #{djxlSystem}) + and a1.FLOW_ID in (select id from wf_def where system_type = #{djxlSystem}) </if> ) a2 @@ -125,7 +125,7 @@ b1.receive_time, b1.status from ${pageDone_temp1} a1, - DJ_WF_RUN_TASK b1 + WF_RUN_TASK b1 WHERE b1.is_delete = 0 and b1.status in(0,1,100) @@ -161,8 +161,8 @@ a.sender_name as finishUserName FROM ${pageDone_temp1} a join ${pageDone_temp2} b on a.biz_id = b.biz_id and a.flow_code = b.flow_code - left join DJ_WF_DEF_STEP c on a.step_id = c.id - left join DJ_WF_DEF_STEP d on b.step_id = d.id + left join WF_DEF_STEP c on a.step_id = c.id + left join WF_DEF_STEP d on b.step_id = d.id group by a.biz_id,a.flow_code,a.step_id ORDER BY a.receive_time DESC </select> @@ -184,20 +184,20 @@ a.create_date AS RECEIVE_TIME, DateDiff(CURRENT_DATE,a.create_date) as idleDays FROM - DJ_ZHGL_ANNUAL_PLAN a + ZHGL_ANNUAL_PLAN a LEFT JOIN view_zt_boat_tree p on concat(a.product_id) = p.product_id - LEFT JOIN DJ_SYS_DICT_DATA c ON a.maintain_level = c.Dict_Value - AND dict_type_id IN(SELECT id FROM DJ_SYS_DICT_TYPE WHERE DICT_TYPE = 'question_level_type') + LEFT JOIN SYS_DICT_DATA c ON a.maintain_level = c.Dict_Value + AND dict_type_id IN(SELECT id FROM SYS_DICT_TYPE WHERE DICT_TYPE = 'question_level_type') LEFT JOIN SYS_USER u ON u.user_id = a.CREATOR WHERE a.is_delete = 0 and ( (CURRENT_STATE = 1 - and EXISTS(SELECT 1 FROM dj_sys_role s1,dj_sys_role_user s2 + and EXISTS(SELECT 1 FROM sys_role s1,sys_role_user s2 WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} AND s2.is_delete=0 and s1.CODE = 'zlbm') ) or ( CURRENT_STATE = '5' - and EXISTS(SELECT 1 FROM dj_sys_role s1,dj_sys_role_user s2 + and EXISTS(SELECT 1 FROM sys_role s1,sys_role_user s2 WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} AND s2.is_delete=0 and s1.CODE = 'czbm') ) @@ -241,17 +241,17 @@ when a.CURRENT_STATE = 5 then '澶勯暱' else '' end AS receiveName, DateDiff(CURRENT_DATE, a.create_date) as idleDays - FROM DJ_ZHGL_ANNUAL_PLAN a + FROM ZHGL_ANNUAL_PLAN a LEFT JOIN view_zt_boat_tree p on concat(a.product_id) = p.product_id - LEFT JOIN DJ_SYS_DICT_DATA c ON a.maintain_level = c.Dict_Value - AND dict_type_id IN (SELECT id FROM DJ_SYS_DICT_TYPE WHERE DICT_TYPE = 'question_level_type') + LEFT JOIN SYS_DICT_DATA c ON a.maintain_level = c.Dict_Value + AND dict_type_id IN (SELECT id FROM SYS_DICT_TYPE WHERE DICT_TYPE = 'question_level_type') LEFT JOIN SYS_USER u ON u.user_id = a.UPDATER WHERE a.is_delete = 0 and ( (CURRENT_STATE in (1, 10) and EXISTS(SELECT 1 - FROM dj_sys_role s1, - dj_sys_role_user s2 + FROM sys_role s1, + sys_role_user s2 WHERE s2.IS_DELETE = 0 and s1.ID = s2.role_id AND s2.USER_id = #{userId} @@ -260,8 +260,8 @@ or ( CURRENT_STATE in (5, 10) and EXISTS(SELECT 1 - FROM dj_sys_role s1, - dj_sys_role_user s2 + FROM sys_role s1, + sys_role_user s2 WHERE s2.IS_DELETE = 0 and s1.ID = s2.role_id AND s2.USER_id = #{userId} @@ -269,8 +269,8 @@ ) or ( CURRENT_STATE in (1, 5, 10) and EXISTS(SELECT 1 - FROM dj_sys_role s1, - dj_sys_role_user s2 + FROM sys_role s1, + sys_role_user s2 WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} AND s2.is_delete = 0 @@ -303,7 +303,7 @@ SELECT *,'rjh_hz' as STEP_MARKER,'鎬诲巶姹囨��' as STEP_Name,'1648318473140449281' as stepRouterId FROM - dj_wx_daily_plan + wx_daily_plan WHERE IS_DELETE =0 and FLOW_Status = 'rjh_hz' @@ -311,8 +311,8 @@ SELECT 1 FROM - dj_sys_role s1, - dj_sys_role_user s2 + sys_role s1, + sys_role_user s2 WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} @@ -322,7 +322,7 @@ SELECT *,'rjh_sh' as STEP_MARKER,'閮ㄩ棬闀垮鏍�' as STEP_Name,'1648318806923161601' as stepRouterId FROM - dj_wx_daily_plan + wx_daily_plan WHERE IS_DELETE =0 and FLOW_Status = 'rjh_sh' @@ -330,8 +330,8 @@ SELECT 1 FROM - dj_sys_role s1, - dj_sys_role_user s2 + sys_role s1, + sys_role_user s2 WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} @@ -341,7 +341,7 @@ SELECT *,'rjh_cjfk' as STEP_MARKER,'鍘傚鍙嶉鎯呭喌' as STEP_MARKER,'1648319132719919106' as stepRouterId FROM - dj_wx_daily_plan + wx_daily_plan WHERE IS_DELETE =0 and FLOW_Status = 'rjh_fk' @@ -351,8 +351,8 @@ SELECT 1 FROM - dj_sys_role s1, - dj_sys_role_user s2 + sys_role s1, + sys_role_user s2 WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} @@ -362,7 +362,7 @@ SELECT *,'rjh_tyfk' as STEP_MARKER,'鑹囧憳鍙嶉鍔╀慨鎯呭喌' as STEP_Name,'1648318988234534914' as stepRouterId FROM - dj_wx_daily_plan + wx_daily_plan WHERE IS_DELETE =0 and FLOW_Status = 'rjh_fk' @@ -372,8 +372,8 @@ SELECT 1 FROM - dj_sys_role s1, - dj_sys_role_user s2 + sys_role s1, + sys_role_user s2 WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} @@ -383,7 +383,7 @@ project_id, plan_date ) a - left join dj_wx_project b on a.project_id = b.id + left join wx_project b on a.project_id = b.id left join sys_user c on a.SUBMIT_PERSONNEL = c.user_id </select> --> @@ -413,7 +413,7 @@ 'monthPlanFlow' as FLOW_CODE, 'yjh_hz' as STEP_MARKER,'鎬诲巶姹囨��' as STEP_Name,'1660911405324423170' as stepRouterId FROM - dj_wx_weekly_month_plan + wx_weekly_month_plan WHERE IS_DELETE = 0 and PLAN_TYPE = 1 @@ -422,8 +422,8 @@ SELECT 1 FROM - dj_sys_role s1, - dj_sys_role_user s2 + sys_role s1, + sys_role_user s2 WHERE s1.ID = s2.role_id AND s1.IS_DELETE=0 @@ -441,7 +441,7 @@ 'weekPlanFlow' as FLOW_CODE, 'zjh_hz' as STEP_MARKER,'鎬诲巶姹囨��' as STEP_Name,'1660904721482895361' as stepRouterId FROM - dj_wx_weekly_month_plan + wx_weekly_month_plan WHERE IS_DELETE = 0 and PLAN_TYPE = 0 @@ -450,8 +450,8 @@ SELECT 1 FROM - dj_sys_role s1, - dj_sys_role_user s2 + sys_role s1, + sys_role_user s2 WHERE s1.ID = s2.role_id AND s1.IS_DELETE=0 @@ -469,7 +469,7 @@ 'rjhFlow' as FLOW_CODE, 'rjh_hz' as STEP_MARKER,'鎬诲巶姹囨��' as STEP_Name,'1648318473140449281' as stepRouterId FROM - dj_wx_daily_plan + wx_daily_plan WHERE IS_DELETE = 0 and FLOW_Status = 'rjh_hz' @@ -477,8 +477,8 @@ SELECT 1 FROM - dj_sys_role s1, - dj_sys_role_user s2 + sys_role s1, + sys_role_user s2 WHERE s1.ID = s2.role_id AND s1.IS_DELETE=0 @@ -489,7 +489,7 @@ GROUP BY project_id, plan_date ) a - left join dj_wx_project b on a.project_id = b.id + left join wx_project b on a.project_id = b.id left join sys_user c on a.SUBMIT_PERSONNEL = c.user_id </select> @@ -551,16 +551,16 @@ a.title as summary, b.STEP_ROUTER, b.STEP_ROUTER_ID - FROM DJ_WF_RUN_TASK a - left join DJ_WF_DEF_STEP b on a.step_id = b.id + FROM WF_RUN_TASK a + left join WF_DEF_STEP b on a.step_id = b.id WHERE a.is_delete =0 and a.status in (0,1) - and a.topic=(select model_name from dj_wx_project where id=#{projectId}) + and a.topic=(select model_name from wx_project where id=#{projectId}) and a.step_marker='jsfa_sc' ORDER BY a.receive_time DESC limit 1 </select> <update id="oneKeyDoneCy"> - update dj_wf_run_task + update wf_run_task set status=20, UPDATER=#{userId}, UPDATE_DATE=CURRENT_TIMESTAMP where STEP_MARKER in('rjh_cy','zjh_cy','yjh_cy') and status=0 and RECEIVE_ID=#{userId} </update> diff --git a/modules/mainPart/src/main/resources/mapper/project/SoftwareTestOrderDao.xml b/modules/mainPart/src/main/resources/mapper/project/SoftwareTestOrderDao.xml new file mode 100644 index 0000000..e90c64c --- /dev/null +++ b/modules/mainPart/src/main/resources/mapper/project/SoftwareTestOrderDao.xml @@ -0,0 +1,21 @@ +<?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.SoftwareTestOrderDao"> + + <select id="getList" resultType="com.zt.life.modules.project.model.SoftwareTestOrder"> + SELECT a.*, p.* + FROM project p + INNER JOIN software_test_order a ON p.id = a.project_id + <where> + a.is_delete = 0 + <if test="whereSql!=null"> + and ${whereSql} + </if> + </where> + <if test="orderBySql!=null"> + ORDER BY ${orderBySql} + </if> + </select> + +</mapper> diff --git a/modules/mainPart/src/main/resources/mapper/sysBaseInfo/TestAgencyInfoDao.xml b/modules/mainPart/src/main/resources/mapper/sysBaseInfo/TestAgencyInfoDao.xml new file mode 100644 index 0000000..b1f1e5e --- /dev/null +++ b/modules/mainPart/src/main/resources/mapper/sysBaseInfo/TestAgencyInfoDao.xml @@ -0,0 +1,20 @@ +<?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.sysBaseInfo.dao.TestAgencyInfoDao"> + + <select id="getList" resultType="com.zt.life.modules.sysBaseInfo.model.TestAgencyInfo"> + select a.* + from test_agency_info a + <where> + a.is_delete = 0 + <if test="whereSql!=null"> + and ${whereSql} + </if> + </where> + <if test="orderBySql!=null"> + ORDER BY ${orderBySql} + </if> + </select> + +</mapper> diff --git a/web/src/views/modules/project/Project.vue b/web/src/views/modules/project/Project.vue index 5fb52f9..4007f79 100644 --- a/web/src/views/modules/project/Project.vue +++ b/web/src/views/modules/project/Project.vue @@ -4,28 +4,22 @@ <zt-table-wraper query-url="/project/Project/page" delete-url="/project/Project" v-slot="{ table }"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> <el-form-item> - <el-input v-model="dataForm.softwareName" placeholder="璇疯緭鍏ヨ蒋浠跺悕绉�" clearable></el-input> - + <el-input v-model="dataForm.softwareName" placeholder="璇疯緭鍏ヨ蒋浠跺悕绉�" clearable></el-input> </el-form-item> <el-form-item> - <zt-dict v-model="dataForm.secretClass" dict="secret_class" clearable></zt-dict> - + <zt-dict v-model="dataForm.secretClass" dict="secret_class" placeholder="璇烽�夋嫨瀵嗙骇" clearable></zt-dict> </el-form-item> <el-form-item> - <zt-dict v-model="dataForm.criticalLevel" dict="critical_level" clearable></zt-dict> - + <zt-dict v-model="dataForm.criticalLevel" dict="critical_level" placeholder="璇烽�夋嫨鍏抽敭绛夌骇" clearable></zt-dict> </el-form-item> <el-form-item> - <zt-dict v-model="dataForm.testLevel" dict="test_level" clearable></zt-dict> - + <zt-dict v-model="dataForm.testLevel" dict="test_level" placeholder="璇烽�夋嫨娴嬭瘯绾у埆" clearable></zt-dict> </el-form-item> <el-form-item> - <zt-dict v-model="dataForm.softwareType" dict="software_type" clearable></zt-dict> - + <zt-dict v-model="dataForm.softwareType" dict="software_type" placeholder="璇烽�夋嫨杞欢绫诲瀷" clearable></zt-dict> </el-form-item> <el-form-item> - <zt-dict v-model="dataForm.isContract" dict="is_or_not" clearable></zt-dict> - + <zt-dict v-model="dataForm.isContract" dict="is_or_not" placeholder="璇烽�夋嫨鏄惁绛剧讲鍚堝悓" clearable></zt-dict> </el-form-item> <el-form-item> <zt-button type="query" @click="table.query()"/> diff --git a/web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue b/web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue new file mode 100644 index 0000000..aba7907 --- /dev/null +++ b/web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue @@ -0,0 +1,127 @@ +<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="optEnviron" rules="required"> + <el-input v-model="dataForm.optEnviron"></el-input> + </zt-form-item> + <zt-form-item label="缂栫▼璇█" prop="programLang" rules="required"> + <el-input v-model="dataForm.programLang"></el-input> + </zt-form-item> + <zt-form-item label="娴嬭瘯渚濇嵁" prop="testBasis" rules="required"> + <zt-dict v-model="dataForm.testBasis" dict="test_basis"></zt-dict> + </zt-form-item> + <zt-form-item label="娴嬭瘯绫诲瀷" prop="testType" rules="required"> + <zt-dict v-model="dataForm.testType" dict="test_type1"></zt-dict> + </zt-form-item> + <zt-form-item label="娴嬭瘯鏍囧噯" prop="testStandard" rules="required"> + <zt-dict v-model="dataForm.testStandard" dict="test_standard"></zt-dict> + </zt-form-item> + <zt-form-item label="寮�濮嬫棩鏈�" prop="startDate" rules="required"> + <el-input v-model="dataForm.startDate"></el-input> + </zt-form-item> + <zt-form-item label="缁撴潫鏃ユ湡" prop="endDate" rules="required"> + <el-input v-model="dataForm.endDate"></el-input> + </zt-form-item> + <zt-form-item label="娴嬭瘯鍦哄湴" prop="testVenue" rules="required"> + <el-input v-model="dataForm.testVenue"></el-input> + </zt-form-item> + <zt-form-item label="鍏朵粬瑕佹眰" prop="otherRequire" rules="required"> + <el-input v-model="dataForm.otherRequire"></el-input> + </zt-form-item> + <zt-form-item label="娴嬭瘯鏃ユ湡" prop="testDate" rules="required"> + <el-input v-model="dataForm.testDate"></el-input> + </zt-form-item> + <zt-form-item label="浜や粯鏃ユ湡" prop="deliveryDate" rules="required"> + <el-input v-model="dataForm.deliveryDate"></el-input> + </zt-form-item> + <zt-form-item label="妫�娴嬭垂鐢�" prop="testCost" rules="required"> + <el-input v-model="dataForm.testCost"></el-input> + </zt-form-item> + <zt-form-item label="鐗╁搧鎬ц川" prop="articleNature" rules="required"> + <zt-dict v-model="dataForm.articleNature" dict="article_nature"></zt-dict> + </zt-form-item> + <zt-form-item label="鏍峰搧鐘舵��" prop="sampleStatus" rules="required"> + <el-input v-model="dataForm.sampleStatus"></el-input> + </zt-form-item> + <zt-form-item label="娴嬭瘎鏈烘瀯鍚嶇О" prop="agencyName" rules="required"> + <el-input v-model="dataForm.agencyName"></el-input> + </zt-form-item> + <zt-form-item label="鍦板潃" prop="site" rules="required"> + <el-input v-model="dataForm.site"></el-input> + </zt-form-item> + <zt-form-item label="涓氬姟鑱旂郴" prop="businContact" rules="required"> + <el-input v-model="dataForm.businContact"></el-input> + </zt-form-item> + <zt-form-item label="涓氬姟鎶曡瘔" prop="businComplaint" rules="required"> + <el-input v-model="dataForm.businComplaint"></el-input> + </zt-form-item> + <zt-form-item label="瀹為獙瀹よ仈绯讳汉" prop="laborContact" rules="required"> + <el-input v-model="dataForm.laborContact"></el-input> + </zt-form-item> + <zt-form-item label="瀹為獙瀹よ仈绯荤數璇�" prop="labContactNum" rules="required"> + <el-input v-model="dataForm.labContactNum"></el-input> + </zt-form-item> + <zt-form-item label="閭斂缂栫爜" prop="postalCode" rules="required"> + <el-input v-model="dataForm.postalCode"></el-input> + </zt-form-item> + <zt-form-item label="浼犵湡" prop="fax" rules="required"> + <el-input v-model="dataForm.fax"></el-input> + </zt-form-item> + </el-form> + </zt-dialog> +</template> + +<script> + export default { + data() { + return { + dataForm: { + id: '', + projectId: '', + optEnviron: '', + programLang: '', + testBasis: '', + testType: '', + testStandard: '', + startDate: '', + endDate: '', + testVenue: '', + otherRequire: '', + testDate: '', + deliveryDate: '', + testCost: '', + articleNature: '', + sampleStatus: '', + agencyName: '', + site: '', + businContact: '', + businComplaint: '', + laborContact: '', + labContactNum: '', + postalCode: '', + fax: '' + } + } + }, + methods: { + // 鑾峰彇淇℃伅 + async getInfo() { + let res = await this.$http.get(`/project/SoftwareTestOrder/${this.dataForm.id}`) + this.dataForm = { + ...this.dataForm, + ...res.data + } + console.log(this.dataForm,"this.dataForm") + }, + // 琛ㄥ崟鎻愪氦 + async formSubmit() { + let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/project/SoftwareTestOrder/', this.dataForm) + if (res.success) { + await this.$tip.success() + this.$refs.dialog.close() + this.$emit('refreshDataList') + } + } + } + } +</script> diff --git a/web/src/views/modules/project/SoftwareTestOrder.vue b/web/src/views/modules/project/SoftwareTestOrder.vue new file mode 100644 index 0000000..4c42107 --- /dev/null +++ b/web/src/views/modules/project/SoftwareTestOrder.vue @@ -0,0 +1,58 @@ +<template> + <el-card shadow="never" class="aui-card--fill"> + <div class="mod-project-softwareTestOrder}"> + <zt-table-wraper query-url="/project/SoftwareTestOrder/page" delete-url="/project/SoftwareTestOrder" v-slot="{ table }"> + <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> + <el-form-item> + <el-input v-model="dataForm.softwareName" placeholder="璇疯緭鍏ヨ蒋浠跺悕绉�" clearable></el-input> + </el-form-item> + <el-form-item> + <zt-dict v-model="dataForm.testBasis" dict="test_basis" placeholder="璇烽�夋嫨娴嬭瘯渚濇嵁" clearable></zt-dict> + </el-form-item> + <el-form-item> + <zt-dict v-model="dataForm.testStandard" dict="test_standard" placeholder="璇烽�夋嫨娴嬭瘯鏍囧噯" clearable></zt-dict> + </el-form-item> + <el-form-item> + <zt-dict v-model="dataForm.articleNature" dict="article_nature" placeholder="璇烽�夋嫨鐗╁搧鎬ц川" clearable></zt-dict> + </el-form-item> + <el-form-item> + <zt-button type="query" @click="table.query()"/> + <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 prop="softwareName" label="杞欢鍚嶇О"/> + <el-table-column prop="code" label="椤圭洰缂栧彿"/> + <el-table-column prop="identity" label="椤圭洰鏍囪瘑"/> + <zt-table-column-dict prop="testBasis" label="娴嬭瘯渚濇嵁" dict="test_basis"/> + <zt-table-column-dict prop="testStandard" label="娴嬭瘯鏍囧噯" dict="test_standard"/> + <zt-table-column-dict prop="articleNature" label="鐗╁搧鎬ц川" dict="article_nature"/> + <zt-table-column-handle :table="table" edit-perm="project:update" delete-perm="project::delete"/> + </el-table> + <!-- 寮圭獥, 鏂板 / 淇敼 --> + <add-or-update @refreshDataList="table.query"/> + </zt-table-wraper> + </div> + </el-card> +</template> + +<script> + import AddOrUpdate from './SoftwareTestOrder-AddOrUpdate' + export default { + data() { + return { + dataForm: { + testBasis: '', + testType: '', + testStandard: '', + articleNature: '', + } + } + }, + components: { + AddOrUpdate + } + } +</script> diff --git a/web/src/views/modules/sysBaseInfo/TestAgencyInfo-AddOrUpdate.vue b/web/src/views/modules/sysBaseInfo/TestAgencyInfo-AddOrUpdate.vue new file mode 100644 index 0000000..a583e44 --- /dev/null +++ b/web/src/views/modules/sysBaseInfo/TestAgencyInfo-AddOrUpdate.vue @@ -0,0 +1,69 @@ +<template> + <zt-dialog ref="dialog" @confirm="formSubmit"> + <el-form :model="dataForm" ref="dataForm" :disabled="dataForm.disabled" label-width="120px"> + <zt-form-item label="娴嬭瘎鏈烘瀯鍚嶇О" prop="agencyName" rules="required"> + <el-input v-model="dataForm.agencyName"></el-input> + </zt-form-item> + <zt-form-item label="鍦板潃" prop="site" rules="required"> + <el-input v-model="dataForm.site"></el-input> + </zt-form-item> + <zt-form-item label="涓氬姟鑱旂郴" prop="businContact" rules="required"> + <el-input v-model="dataForm.businContact"></el-input> + </zt-form-item> + <zt-form-item label="涓氬姟鎶曡瘔" prop="businComplaint" rules="required"> + <el-input v-model="dataForm.businComplaint"></el-input> + </zt-form-item> + <zt-form-item label="瀹為獙瀹よ仈绯讳汉" prop="laborContact" rules="required"> + <el-input v-model="dataForm.laborContact"></el-input> + </zt-form-item> + <zt-form-item label="瀹為獙瀹よ仈绯荤數璇�" prop="labContactNum" rules="required"> + <el-input v-model="dataForm.labContactNum"></el-input> + </zt-form-item> + <zt-form-item label="閭斂缂栫爜" prop="postalCode" rules="required"> + <el-input v-model="dataForm.postalCode"></el-input> + </zt-form-item> + <zt-form-item label="浼犵湡" prop="fax" rules="required"> + <el-input v-model="dataForm.fax"></el-input> + </zt-form-item> + </el-form> + </zt-dialog> +</template> + +<script> + export default { + data() { + return { + dataForm: { + id: '', + agencyName: '', + site: '', + businContact: '', + businComplaint: '', + laborContact: '', + labContactNum: '', + postalCode: '', + fax: '' + } + } + }, + methods: { + // 鑾峰彇淇℃伅 + async getInfo() { + let res = await this.$http.get(`/sysBaseInfo/TestAgencyInfo/${this.dataForm.id}`) + this.dataForm = { + ...this.dataForm, + ...res.data + } + }, + // 琛ㄥ崟鎻愪氦 + async formSubmit() { + let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/sysBaseInfo/TestAgencyInfo/', this.dataForm) + if (res.success) { + await this.$tip.success() + this.$refs.dialog.close() + this.$emit('refreshDataList') + } + } + } + } +</script> diff --git a/web/src/views/modules/sysBaseInfo/TestAgencyInfo.vue b/web/src/views/modules/sysBaseInfo/TestAgencyInfo.vue new file mode 100644 index 0000000..a1a6b69 --- /dev/null +++ b/web/src/views/modules/sysBaseInfo/TestAgencyInfo.vue @@ -0,0 +1,44 @@ +<template> + <el-card shadow="never" class="aui-card--fill"> + <div class="mod-sysBaseInfo-testAgencyInfo}"> + <zt-table-wraper query-url="/sysBaseInfo/TestAgencyInfo/page" delete-url="/sysBaseInfo/TestAgencyInfo" v-slot="{ table }"> + <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> + <el-form-item> + <el-input v-model="dataForm.agencyName" placeholder="璇疯緭鍏ユ祴璇勬満鏋勫悕绉�" clearable></el-input> + + </el-form-item> + <el-form-item> + <zt-button type="query" @click="table.query()"/> + <zt-button type="add" perm="sysBaseInfo:add" @click="table.editHandle()"/> + <zt-button type="delete" perm="sysBaseInfo: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 prop="agencyName" label="娴嬭瘎鏈烘瀯鍚嶇О"/> + <el-table-column prop="businContact" label="涓氬姟鑱旂郴"/> + <el-table-column prop="laborContact" label="瀹為獙瀹よ仈绯讳汉"/> + <zt-table-column-handle :table="table" edit-perm="sysBaseInfo:update" delete-perm="sysBaseInfo::delete"/> + </el-table> + <!-- 寮圭獥, 鏂板 / 淇敼 --> + <add-or-update @refreshDataList="table.query"/> + </zt-table-wraper> + </div> + </el-card> +</template> + +<script> + import AddOrUpdate from './TestAgencyInfo-AddOrUpdate' + export default { + data() { + return { + dataForm: { + agencyName: '', + } + } + }, + components: { + AddOrUpdate + } + } +</script> -- Gitblit v1.9.1