From 652ec7d6dfdee121704961847fae3a3a5be3f5b6 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期一, 01 四月 2024 15:26:15 +0800 Subject: [PATCH] 修改 --- modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/OperatCondit.java | 36 ++ modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/service/SysPictureBaseService.java | 10 modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/OperatConditController.java | 95 +++++ modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/dao/SysPictureBaseDao.java | 4 modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/TaskPhaseModelController.java | 28 - web/src/views/modules/taskReliability/OperatCondit.vue | 89 ++++ modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/OperatConditModelController.java | 96 +++++ web/src/views/modules/taskReliability/OperatConditModel.vue | 63 +++ modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditModelDao.java | 23 + modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditModelService.java | 42 ++ modules/mainPart/src/main/resources/mapper/taskReliability/ModelRbdDao.xml | 15 web/src/views/modules/taskReliability/TaskPhaseModel.vue | 119 ++++- modules/mainPart/src/main/resources/mapper/taskReliability/TaskPhaseModelDao.xml | 39 - modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditDao.java | 23 + web/src/views/modules/basicInfo/XhProductModel-AddOrUpdate.vue | 16 modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/controller/SysPictureBaseController.java | 15 web/src/views/modules/basicInfo/TyProductModel-AddOrUpdate.vue | 21 modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditService.java | 40 ++ web/src/views/modules/basicInfo/SelectPicture.vue | 6 modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/TaskPhase.java | 4 modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/OperatConditModel.java | 56 +++ modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/ModelRbd.java | 4 web/src/views/modules/taskReliability/TaskPhase-AddOrUpdate.vue | 17 web/src/views/modules/taskReliability/TaskPhase.vue | 26 + modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditModelDao.xml | 36 ++ modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/TaskPhaseModel.java | 31 web/src/views/modules/taskReliability/SelectModelRbd.vue | 19 modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/TaskPhaseModelService.java | 2 modules/mainPart/src/main/resources/mapper/sysPictureBase/SysPictureBaseDao.xml | 11 web/src/views/modules/sysPictureBase/SysPictureBase-AddOrUpdate.vue | 4 web/src/views/modules/taskReliability/ModelRbd.vue | 2 web/src/views/modules/taskReliability/OperatCondit-AddOrUpdate.vue | 50 ++ modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditDao.xml | 21 + 33 files changed, 925 insertions(+), 138 deletions(-) diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/controller/SysPictureBaseController.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/controller/SysPictureBaseController.java index 36df92b..2288545 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/controller/SysPictureBaseController.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/controller/SysPictureBaseController.java @@ -50,7 +50,8 @@ @ApiImplicitParams({ @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 = "productType", value = "妫�绱㈠叧閿瓧", dataType = Constant.QT.STRING, format = "CONTENT_TYPE^LK"), @ApiImplicitParam(name = "systemMark", value = "绯荤粺鏍囪瘑", dataType = Constant.QT.STRING, format = "SYSTEM_MARK^LK")}) + @ApiImplicitParam(name = "productType", value = "妫�绱㈠叧閿瓧", dataType = Constant.QT.STRING, format = "PRODUCT_TYPE^EQ"), + @ApiImplicitParam(name = "systemMark", value = "绯荤粺鏍囪瘑", dataType = Constant.QT.STRING, format = "SYSTEM_MARK^LK")}) public Result<List<SysPictureBase>> page(@ApiIgnore @QueryParam QueryFilter queryFilter) { return Result.ok(sysPictureBaseService.page(queryFilter)); @@ -69,6 +70,7 @@ public Result save(@RequestBody MultipartFile file, Long id, Integer isDefault, String name, String contentType, Integer productType, String remark) { SysPictureBase sysPictureBase; + SysPictureBase pictureBase = sysPictureBaseService.getDefaultImg(productType); if (id != 0) { sysPictureBase = sysPictureBaseService.get(id); sysPictureBase.setIsDefault(isDefault); @@ -87,8 +89,10 @@ sysPictureBaseService.insert(sysPictureBase); } if (sysPictureBase.getIsDefault()==1){ - sysPictureBaseService.updateByDefault(sysPictureBase.getId(),sysPictureBase.getProductType()); - sysPictureBaseService.updateProdeuctImg(sysPictureBase.getId(),sysPictureBase.getProductType()); + if (!sysPictureBase.getId().equals(pictureBase.getId())){ + sysPictureBaseService.updateByDefault(sysPictureBase.getId(),sysPictureBase.getProductType()); + sysPictureBaseService.updateProdeuctImg(sysPictureBase.getId(),sysPictureBase.getProductType(),pictureBase.getId()); + } } if (file != null) { BufferedImage bufferedImage = null; @@ -148,6 +152,11 @@ } } + @GetMapping("/getDefaultImg") + public Result<SysPictureBase> getDefaultImg(Integer productType) { + SysPictureBase data = sysPictureBaseService.getDefaultImg(productType); + return Result.ok(data); + } @DeleteMapping @ApiOperation("鍒犻櫎") @LogOperation("鍒犻櫎") diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/dao/SysPictureBaseDao.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/dao/SysPictureBaseDao.java index 804675e..fa98648 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/dao/SysPictureBaseDao.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/dao/SysPictureBaseDao.java @@ -22,5 +22,7 @@ void updateByDefault(Long id, Integer productType); - void updateProdeuctImg(Long id, Integer productType); + void updateProdeuctImg(Long id, Integer productType, Long pictureBaseId); + + SysPictureBase getDefaultImg(Integer productType); } diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/service/SysPictureBaseService.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/service/SysPictureBaseService.java index 7a8eeb4..4d1a738 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/service/SysPictureBaseService.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/sysPictureBase/service/SysPictureBaseService.java @@ -8,6 +8,8 @@ import org.springframework.stereotype.Service; import com.zt.common.db.query.QueryFilter; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Null; import java.util.List; @@ -46,7 +48,11 @@ baseDao.updateByDefault(id,productType); } - public void updateProdeuctImg(Long id, Integer productType) { - baseDao.updateProdeuctImg(id,productType); + public void updateProdeuctImg(Long id, Integer productType,Long pictureBaseId) { + baseDao.updateProdeuctImg(id,productType,pictureBaseId); + } + + public SysPictureBase getDefaultImg(Integer productType) { + return baseDao.getDefaultImg(productType); } } diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/OperatConditController.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/OperatConditController.java new file mode 100644 index 0000000..88b5139 --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/OperatConditController.java @@ -0,0 +1,95 @@ +package com.zt.life.modules.mainPart.taskReliability.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.mainPart.taskReliability.model.OperatCondit; +import com.zt.life.modules.mainPart.taskReliability.service.OperatConditService; +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; + + +/** + * operat_condit + * + * @author zt generator + * @since 1.0.0 2024-03-29 + */ +@RestController +@RequestMapping("/taskReliability/OperatCondit/") +@Api(tags="operat_condit") +public class OperatConditController { + @Autowired + private OperatConditService operatConditService; + + @GetMapping("page") + @ApiOperation("鍒嗛〉") + @ApiImplicitParams({ + @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 = "productId", value = "浜у搧鑺傜偣ID", dataType = Constant.QT.STRING), + }) + public Result<List<OperatCondit>> page(@ApiIgnore @QueryParam QueryFilter queryFilter){ + + return Result.ok(operatConditService.page(queryFilter)); + } + + @GetMapping("{id}") + @ApiOperation("淇℃伅") + public Result<OperatCondit> get(@PathVariable("id") Long id){ + OperatCondit data = operatConditService.get(id); + + return Result.ok(data); + } + + @PostMapping + @ApiOperation("鏂板") + @LogOperation("鏂板") + public Result insert(@RequestBody OperatCondit operatCondit){ + //鏁堥獙鏁版嵁 + ValidatorUtils.validateEntity(operatCondit, AddGroup.class, DefaultGroup.class); + operatConditService.insert(operatCondit); + + return Result.ok(); + } + + @PutMapping + @ApiOperation("淇敼") + @LogOperation("淇敼") + public Result update(@RequestBody OperatCondit operatCondit){ + //鏁堥獙鏁版嵁 + ValidatorUtils.validateEntity(operatCondit, UpdateGroup.class, DefaultGroup.class); + operatConditService.update(operatCondit); + + return Result.ok(); + } + + @DeleteMapping + @ApiOperation("鍒犻櫎") + @LogOperation("鍒犻櫎") + public Result delete(@RequestBody Long[] ids){ + //鏁堥獙鏁版嵁 + AssertUtils.isArrayEmpty(ids, "id"); + operatConditService.delete(ids); + + return Result.ok(); + } + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/OperatConditModelController.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/OperatConditModelController.java new file mode 100644 index 0000000..8db79eb --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/OperatConditModelController.java @@ -0,0 +1,96 @@ +package com.zt.life.modules.mainPart.taskReliability.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.mainPart.taskReliability.model.OperatConditModel; +import com.zt.life.modules.mainPart.taskReliability.service.OperatConditModelService; +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; + + +/** + * operat_condit_model + * + * @author zt generator + * @since 1.0.0 2024-03-29 + */ +@RestController +@RequestMapping("/taskReliability/OperatConditModel/") +@Api(tags="operat_condit_model") +public class OperatConditModelController { + @Autowired + private OperatConditModelService operatConditModelService; + + @GetMapping("page") + @ApiOperation("鍒嗛〉") + @ApiImplicitParams({ + @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 = "productId", value = "浜у搧鑺傜偣Id", dataType = Constant.QT.STRING), + @ApiImplicitParam(name = "operatConditId", value = "闃舵Id", dataType = Constant.QT.STRING), + }) + public Result<List<OperatConditModel>> page(@ApiIgnore @QueryParam QueryFilter queryFilter){ + + return Result.ok(operatConditModelService.page(queryFilter)); + } + + @GetMapping("{id}") + @ApiOperation("淇℃伅") + public Result<OperatConditModel> get(@PathVariable("id") Long id){ + OperatConditModel data = operatConditModelService.get(id); + + return Result.ok(data); + } + + @PostMapping + @ApiOperation("鏂板") + @LogOperation("鏂板") + public Result insert(@RequestBody OperatConditModel operatConditModel){ + //鏁堥獙鏁版嵁 + ValidatorUtils.validateEntity(operatConditModel, AddGroup.class, DefaultGroup.class); + operatConditModelService.insert(operatConditModel); + + return Result.ok(); + } + + @PutMapping + @ApiOperation("淇敼") + @LogOperation("淇敼") + public Result update(@RequestBody OperatConditModel operatConditModel){ + //鏁堥獙鏁版嵁 + ValidatorUtils.validateEntity(operatConditModel, UpdateGroup.class, DefaultGroup.class); + operatConditModelService.update(operatConditModel); + + return Result.ok(); + } + + @DeleteMapping + @ApiOperation("鍒犻櫎") + @LogOperation("鍒犻櫎") + public Result delete(@RequestBody Long[] ids){ + //鏁堥獙鏁版嵁 + AssertUtils.isArrayEmpty(ids, "id"); + operatConditModelService.delete(ids); + + return Result.ok(); + } + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/TaskPhaseModelController.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/TaskPhaseModelController.java index f6959f7..b3999c3 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/TaskPhaseModelController.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/controller/TaskPhaseModelController.java @@ -11,6 +11,7 @@ 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.mainPart.basicInfo.model.ParamData; import com.zt.life.modules.mainPart.taskReliability.model.TaskPhaseModel; import com.zt.life.modules.mainPart.taskReliability.service.TaskPhaseModelService; import io.swagger.annotations.Api; @@ -58,25 +59,16 @@ return Result.ok(data); } - @PostMapping - @ApiOperation("鏂板") - @LogOperation("鏂板") - public Result insert(@RequestBody TaskPhaseModel taskPhaseModel){ + @PostMapping("save") + public Result save(@RequestBody TaskPhaseModel model) { //鏁堥獙鏁版嵁 - ValidatorUtils.validateEntity(taskPhaseModel, AddGroup.class, DefaultGroup.class); - taskPhaseModelService.insert(taskPhaseModel); - - return Result.ok(); - } - - @PutMapping - @ApiOperation("淇敼") - @LogOperation("淇敼") - public Result update(@RequestBody TaskPhaseModel taskPhaseModel){ - //鏁堥獙鏁版嵁 - ValidatorUtils.validateEntity(taskPhaseModel, UpdateGroup.class, DefaultGroup.class); - taskPhaseModelService.update(taskPhaseModel); - + for (TaskPhaseModel taskPhaseModel : model.getDataThreeList()) { + if (taskPhaseModel.getId()!=null){ + taskPhaseModelService.update(taskPhaseModel); + }else{ + taskPhaseModelService.insert(taskPhaseModel); + } + } return Result.ok(); } diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditDao.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditDao.java new file mode 100644 index 0000000..4dfde6d --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditDao.java @@ -0,0 +1,23 @@ +package com.zt.life.modules.mainPart.taskReliability.dao; + +import com.zt.common.dao.BaseDao; +import com.zt.life.modules.mainPart.taskReliability.model.OperatCondit; +import org.apache.ibatis.annotations.Mapper; + + +import java.util.List; +import java.util.Map; + + +/** + * operat_condit + * + * @author zt generator + * @since 1.0.0 2024-03-29 + */ +@Mapper +public interface OperatConditDao extends BaseDao<OperatCondit> { + + List<OperatCondit> getList(Map<String, Object> params); + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditModelDao.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditModelDao.java new file mode 100644 index 0000000..b335a79 --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditModelDao.java @@ -0,0 +1,23 @@ +package com.zt.life.modules.mainPart.taskReliability.dao; + +import com.zt.common.dao.BaseDao; +import com.zt.life.modules.mainPart.taskReliability.model.OperatConditModel; +import org.apache.ibatis.annotations.Mapper; + + +import java.util.List; +import java.util.Map; + + +/** + * operat_condit_model + * + * @author zt generator + * @since 1.0.0 2024-03-29 + */ +@Mapper +public interface OperatConditModelDao extends BaseDao<OperatConditModel> { + + List<OperatConditModel> getList(Map<String, Object> params); + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/ModelRbd.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/ModelRbd.java index bbcc973..65c489d 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/ModelRbd.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/ModelRbd.java @@ -51,6 +51,10 @@ private String modelState; @TableField(exist = false) + @ApiModelProperty(value = "琚紩鐢ㄦ暟閲�") + private Integer quoteNum ; + + @TableField(exist = false) @ApiModelProperty(value = "璁块棶鍚庣缃戠珯鍓嶇紑") private String urlPref; diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/OperatCondit.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/OperatCondit.java new file mode 100644 index 0000000..421c7d7 --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/OperatCondit.java @@ -0,0 +1,36 @@ +package com.zt.life.modules.mainPart.taskReliability.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; + +/** + * operat_condit + * + * @author zt generator + * @since 1.0.0 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("operat_condit") +public class OperatCondit extends BusiEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "浜у搧鑺傜偣ID(鎬讳綋)") + private Long productId; + + @ApiModelProperty(value = "宸ュ喌鍚嶇О") + private String name; + + @ApiModelProperty(value = "澶囨敞") + private String remark; + + @ApiModelProperty(value = "") + private Integer status; + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/OperatConditModel.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/OperatConditModel.java new file mode 100644 index 0000000..9cf3d4e --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/OperatConditModel.java @@ -0,0 +1,56 @@ +package com.zt.life.modules.mainPart.taskReliability.model; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.zt.common.entity.BusiEntity; +import com.zt.common.entity.TreeNode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * operat_condit_model + * + * @author zt generator + * @since 1.0.0 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("operat_condit_model") +public class OperatConditModel extends BusiEntity implements TreeNode<OperatConditModel> { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "宸ュ喌ID") + private Long operatConditId; + + @ApiModelProperty(value = "浜у搧鑺傜偣ID") + private Long productId; + + @ApiModelProperty(value = "妯″瀷ID") + private Long modelId; + + @ApiModelProperty(value = "澶囨敞") + private String remark; + + @TableField(exist = false) + private String product; + + @TableField(exist = false) + private String modelName; + + @TableField(exist = false) + private Long operatConditModelId; + + @ApiModelProperty(value = "瀛愯妭鐐�") + @TableField(exist = false) + private List<OperatConditModel> children = new ArrayList<>(); + + @TableField(exist = false) + private Long pid; + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/TaskPhase.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/TaskPhase.java index c4407fe..8524d50 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/TaskPhase.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/TaskPhase.java @@ -25,8 +25,8 @@ @ApiModelProperty(value = "浠诲姟闃舵鍚嶇О") private String phaseName; - @ApiModelProperty(value = "闃舵鏃堕暱") - private Double phaseDuration; + @ApiModelProperty(value = "闃舵鏃堕暱姣�") + private Double phaseDurationRate; @ApiModelProperty(value = "闃舵鏃堕��") private Double phaseSpeed; diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/TaskPhaseModel.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/TaskPhaseModel.java index 05ca44e..cb6afb6 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/TaskPhaseModel.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/TaskPhaseModel.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.zt.common.entity.BusiEntity; import com.zt.common.entity.TreeNode; +import com.zt.life.modules.mainPart.basicInfo.model.ParamData; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; @@ -20,34 +21,30 @@ @Data @EqualsAndHashCode(callSuper=false) @TableName("task_phase_model") -public class TaskPhaseModel extends BusiEntity implements TreeNode<TaskPhaseModel> { +public class TaskPhaseModel extends BusiEntity { private static final long serialVersionUID = 1L; @ApiModelProperty(value = "闃舵ID") private Long phaseId; - @ApiModelProperty(value = "浜у搧鑺傜偣ID") + @TableField(exist = false) private Long productId; - @ApiModelProperty(value = "妯″瀷ID") - private Long modelId; + @ApiModelProperty(value = "宸ュ喌ID") + private Long operatConditId; + + @ApiModelProperty(value = "宸ュ喌鍚嶇О") + private String operatConditName; + + @ApiModelProperty(value = "宸ュ喌杩愯姣�") + private Double operatConditDurationRate; @ApiModelProperty(value = "澶囨敞") private String remark; - @ApiModelProperty(value = "") - private Integer status; + @TableField(exist = false) + private List<TaskPhaseModel> dataThreeList; @TableField(exist = false) - private String system; - - @TableField(exist = false) - private String modelName; - - @ApiModelProperty(value = "瀛愯妭鐐�") - @TableField(exist = false) - private List<TaskPhaseModel> children = new ArrayList<>(); - - @TableField(exist = false) - private Long pid; + private String isCheck; } diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditModelService.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditModelService.java new file mode 100644 index 0000000..4c96615 --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditModelService.java @@ -0,0 +1,42 @@ +package com.zt.life.modules.mainPart.taskReliability.service; + +import com.zt.common.service.BaseService; +import com.zt.common.utils.TreeUtils; +import com.zt.life.modules.mainPart.taskReliability.dao.OperatConditModelDao; +import com.zt.life.modules.mainPart.taskReliability.model.OperatConditModel; +import org.springframework.stereotype.Service; +import com.zt.common.db.query.QueryFilter; +import javax.annotation.Resource; +import java.util.List; + + +/** + * operat_condit_model + * + * @author zt generator + * @since 1.0.0 2024-03-29 + */ +@Service +public class OperatConditModelService extends BaseService<OperatConditModelDao, OperatConditModel> { + + /** + * 鍒嗛〉鏌ヨ + * + * @param queryFilter + * @return + */ + public List<OperatConditModel> page(QueryFilter queryFilter) { + List<OperatConditModel> list = baseDao.getList(queryFilter.getQueryParams()); + return TreeUtils.build(list); + } + + /** + * 鍒犻櫎 + * + * @param ids + */ + public void delete(Long[] ids) { + super.deleteLogic(ids); + } + +} diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditService.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditService.java new file mode 100644 index 0000000..f537c28 --- /dev/null +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditService.java @@ -0,0 +1,40 @@ +package com.zt.life.modules.mainPart.taskReliability.service; + +import com.zt.common.service.BaseService; +import com.zt.life.modules.mainPart.taskReliability.dao.OperatConditDao; +import com.zt.life.modules.mainPart.taskReliability.model.OperatCondit; +import org.springframework.stereotype.Service; +import com.zt.common.db.query.QueryFilter; +import javax.annotation.Resource; +import java.util.List; + + +/** + * operat_condit + * + * @author zt generator + * @since 1.0.0 2024-03-29 + */ +@Service +public class OperatConditService extends BaseService<OperatConditDao, OperatCondit> { + + /** + * 鍒嗛〉鏌ヨ + * + * @param queryFilter + * @return + */ + public List<OperatCondit> 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/mainPart/taskReliability/service/TaskPhaseModelService.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/TaskPhaseModelService.java index 2fa730d..2f998f8 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/TaskPhaseModelService.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/TaskPhaseModelService.java @@ -27,7 +27,7 @@ */ public List<TaskPhaseModel> page(QueryFilter queryFilter) { List<TaskPhaseModel> list = baseDao.getList(queryFilter.getQueryParams()); - return TreeUtils.build(list); + return list; } /** diff --git a/modules/mainPart/src/main/resources/mapper/sysPictureBase/SysPictureBaseDao.xml b/modules/mainPart/src/main/resources/mapper/sysPictureBase/SysPictureBaseDao.xml index bf36c33..34b47dc 100644 --- a/modules/mainPart/src/main/resources/mapper/sysPictureBase/SysPictureBaseDao.xml +++ b/modules/mainPart/src/main/resources/mapper/sysPictureBase/SysPictureBaseDao.xml @@ -11,12 +11,14 @@ </update> <update id="updateProdeuctImg"> UPDATE product_model_common - set operat_img = ${id} + set operat_img = ${id} where node_type = ${productType} + and operat_img =${pictureBaseId} and is_delete = 0; update product_model set operat_img=${id} where product_type = ${productType} + and operat_img =${pictureBaseId} and is_delete = 0 </update> @@ -33,4 +35,11 @@ ORDER BY ${orderBySql} </if> </select> + <select id="getDefaultImg" resultType="com.zt.life.modules.mainPart.sysPictureBase.model.SysPictureBase"> + select a.name, a.id + from sys_picture_base a + where a.is_delete = 0 + and a.is_default = 1 + and a.product_type = ${productType} + </select> </mapper> diff --git a/modules/mainPart/src/main/resources/mapper/taskReliability/ModelRbdDao.xml b/modules/mainPart/src/main/resources/mapper/taskReliability/ModelRbdDao.xml index a3212db..b8917aa 100644 --- a/modules/mainPart/src/main/resources/mapper/taskReliability/ModelRbdDao.xml +++ b/modules/mainPart/src/main/resources/mapper/taskReliability/ModelRbdDao.xml @@ -6,12 +6,17 @@ <select id="getList" resultType="com.zt.life.modules.mainPart.taskReliability.model.ModelRbd"> select a.*, CASE - WHEN b.end =1 THEN '宸插畬鎴�' - WHEN c.num >0 THEN '姝e湪缂栬緫' - ELSE '鏈紪杈�' END AS modelState + WHEN b.end =1 THEN '宸插畬鎴�' + WHEN c.num >0 THEN '姝e湪缂栬緫' + ELSE '鏈紪杈�' END AS modelState, + d.num as quoteNum from model_rbd a - left join (select model_id,1 as end from algorithm where model_type = 'end' ) b on b.model_id = a.id - left join (select model_id, count(1) as num from algorithm group by model_id ) c on c.model_id = a.id + left join (select model_id,1 as end from algorithm where model_type = 'end' and is_delete=0 ) b on b.model_id = + a.id + left join (select model_id, count(1) as num from algorithm where is_delete=0 group by model_id ) c on c.model_id + = a.id + left join (select model_id,count(1) as num from operat_condit_model where is_delete=0 group by model_id ) d on + d.model_id = a.id <where> a.is_delete = 0 <if test="productId!=null and productId!=''"> diff --git a/modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditDao.xml b/modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditDao.xml new file mode 100644 index 0000000..81f7554 --- /dev/null +++ b/modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditDao.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.mainPart.taskReliability.dao.OperatConditDao"> + + <select id="getList" resultType="com.zt.life.modules.mainPart.taskReliability.model.OperatCondit"> + select a.* + from operat_condit a + <where> + a.is_delete = 0 + and a.product_id=${productId} + <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/taskReliability/OperatConditModelDao.xml b/modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditModelDao.xml new file mode 100644 index 0000000..670531e --- /dev/null +++ b/modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditModelDao.xml @@ -0,0 +1,36 @@ +<?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.mainPart.taskReliability.dao.OperatConditModelDao"> + + <select id="getList" resultType="com.zt.life.modules.mainPart.taskReliability.model.OperatConditModel"> + SELECT a.id , + a.pid , + a.`NAME` as product, + c.model_name, + b.model_id, + b.id as operatConditModelId + FROM product_model a + LEFT JOIN operat_condit_model b + ON b.product_id = a.id + AND b.operat_condit_id = ${operatConditId} + LEFT JOIN model_rbd c ON c.id = b.model_id + WHERE a.id in ( + SELECT DATA.id + FROM ( + SELECT @ids as ids, + (SELECT @ids := GROUP_CONCAT(id) + FROM product_model + WHERE FIND_IN_SET(pid, @ids) + ) as cids + FROM product_model + WHERE @ids IS NOT NULL AND @ids := ${productId} + ) id, + product_model DATA + WHERE FIND_IN_SET(DATA.id, ID.ids) + ) + and a.product_type in (4, 3, 2, 10) + AND a.is_delete = 0 + </select> + +</mapper> diff --git a/modules/mainPart/src/main/resources/mapper/taskReliability/TaskPhaseModelDao.xml b/modules/mainPart/src/main/resources/mapper/taskReliability/TaskPhaseModelDao.xml index 942607c..ebf1303 100644 --- a/modules/mainPart/src/main/resources/mapper/taskReliability/TaskPhaseModelDao.xml +++ b/modules/mainPart/src/main/resources/mapper/taskReliability/TaskPhaseModelDao.xml @@ -4,33 +4,18 @@ <mapper namespace="com.zt.life.modules.mainPart.taskReliability.dao.TaskPhaseModelDao"> <select id="getList" resultType="com.zt.life.modules.mainPart.taskReliability.model.TaskPhaseModel"> - SELECT a.id AS id, - a.pid , - a.`NAME` as `system`, - c.model_name, - b.model_id, - b.id as productId - FROM product_model a - LEFT JOIN task_phase_model b - ON b.product_id = a.id - AND b.phase_id = ${phaseId} - LEFT JOIN model_rbd c ON c.id = b.model_id - WHERE a.id in ( - SELECT DATA.id - FROM ( - SELECT @ids as ids, - (SELECT @ids := GROUP_CONCAT(id) - FROM product_model - WHERE FIND_IN_SET(pid, @ids) - ) as cids - FROM product_model - WHERE @ids IS NOT NULL AND @ids := ${productId} - ) id, - product_model DATA - WHERE FIND_IN_SET(DATA.id, ID.ids) - ) - and a.product_type in (4, 3, 2, 10) - AND a.is_delete = 0 + SELECT b.id + , b.operat_condit_duration_rate + , a.NAME as operatConditName + , a.id as operatConditId + , case + when b.id is null then 0 + else 1 end as isCheck + FROM operat_condit a + left join task_phase_model b + on a.id = b.operat_condit_id and b.is_delete = 0 and b.phase_id = ${phaseId} + WHERE a.IS_DELETE = 0 + and a.product_id = ${productId} </select> </mapper> diff --git a/web/src/views/modules/basicInfo/SelectPicture.vue b/web/src/views/modules/basicInfo/SelectPicture.vue index 2b66296..d471c31 100644 --- a/web/src/views/modules/basicInfo/SelectPicture.vue +++ b/web/src/views/modules/basicInfo/SelectPicture.vue @@ -5,6 +5,8 @@ <zt-table-wraper query-url="/sysPictureBase/page" :paging='false' v-slot="{ table }"> + <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> + </el-form> <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px" v-adaptive="{bottomOffset:70}" border @row-dblclick="selectedPicture" @@ -35,6 +37,7 @@ id:'', contentType: '', systemMark: '', + productType:'', sortNo: '' }, } @@ -42,7 +45,8 @@ components: {}, methods: { init(type) { - this.type = type + this.dataForm.productType = type + console.log(this.dataForm.productType) }, async selectedPicture(row) { await this.$tip.success() diff --git a/web/src/views/modules/basicInfo/TyProductModel-AddOrUpdate.vue b/web/src/views/modules/basicInfo/TyProductModel-AddOrUpdate.vue index 94e5a95..6636836 100644 --- a/web/src/views/modules/basicInfo/TyProductModel-AddOrUpdate.vue +++ b/web/src/views/modules/basicInfo/TyProductModel-AddOrUpdate.vue @@ -8,7 +8,7 @@ <el-input v-model="dataForm.name"></el-input> </zt-form-item> <zt-form-item label="鑺傜偣绫诲瀷" prop="nodeType" rules="required"> - <zt-dict v-model="dataForm.nodeType" dict="product"></zt-dict> + <zt-dict v-model="dataForm.nodeType" dict="product" @input="getDefaultImg"></zt-dict> </zt-form-item> <zt-form-item label="鍩烘湰璁$畻" prop="baseCompute"> <zt-dict v-model="dataForm.baseCompute" dict="is_or_not" placeholder="鍩烘湰璁$畻"></zt-dict> @@ -24,6 +24,7 @@ </zt-form-item> <zt-form-item label="杩愯鍥剧墖" prop="operatImg"> <el-input v-model="dataForm.operatImgName" @focus="selectPicture()" :readonly="readonly"></el-input> + <el-image v-if="dataForm.operatImg" :src="url+dataForm.operatImg" style="height: 50px;width: 50px"></el-image> </zt-form-item> <zt-form-item label="鎺掑簭" prop="sort"> <el-input v-model="dataForm.sort" :readonly="readonly"></el-input> @@ -36,11 +37,13 @@ <script> import PictureSelect from "@/views/modules/basicInfo/SelectPicture"; + import Cookies from "js-cookie"; export default { - name:'TyProductModel', + name: 'TyProductModel', data() { return { + url: `${window.SITE_CONFIG['apiURL']}/sysPictureBase/getProductImg?token=${Cookies.get('token')}&id=`, fileId: '', productList: [], dataForm: { @@ -53,7 +56,7 @@ reliabDistrib: '', repairDistrib: '', operatImg: '', - operatImgName:'', + operatImgName: '', sort: '', } } @@ -64,7 +67,6 @@ methods: { init() { this.getProductList() - }, // 鑾峰彇绯荤粺鍒楄〃 async getProductList() { @@ -73,13 +75,22 @@ console.log(this.productList, 'getProductList') }, selectPicture() { - this.$refs.pictureSelect.$refs.dialog.init() + this.$refs.pictureSelect.$refs.dialog.init(this.dataForm.nodeType) }, openAddWin(row) { this.dataForm.operatImgName = row.name this.dataForm.operatImg = row.id console.log(row, 'openAddWin(row)') }, + async getDefaultImg(selected) { + console.log(selected, 'async getDefaultImg') + let params = { + productType: selected + } + let res = await this.$http.get(`/sysPictureBase/getDefaultImg`, {params:params}) + this.dataForm.operatImgName = res.data.name + this.dataForm.operatImg = res.data.id + }, // 鑾峰彇淇℃伅 async getInfo() { let res = await this.$http.get(`/basicInfo/TyProductModel/${this.dataForm.id}`) diff --git a/web/src/views/modules/basicInfo/XhProductModel-AddOrUpdate.vue b/web/src/views/modules/basicInfo/XhProductModel-AddOrUpdate.vue index aaf1886..65addad 100644 --- a/web/src/views/modules/basicInfo/XhProductModel-AddOrUpdate.vue +++ b/web/src/views/modules/basicInfo/XhProductModel-AddOrUpdate.vue @@ -8,11 +8,12 @@ <el-input v-model="dataForm.name"></el-input> </zt-form-item> <zt-form-item label="鑺傜偣绫诲瀷" prop="productType" rules="required"> - <zt-dict v-model="dataForm.productType" dict="product"></zt-dict> + <zt-dict v-model="dataForm.productType" dict="product" @input="getDefaultImg"></zt-dict> </zt-form-item> <zt-form-item label="杩愯鐘舵�佸浘" prop="operatImg" v-if="isShow"> <el-input v-model="dataForm.operatImgName" @focus="selectPicture()" :readonly="readonly"></el-input> + <el-image v-if="dataForm.operatImg" :src="url+dataForm.operatImg" style="height: 50px;width: 50px"></el-image> </zt-form-item> <zt-form-item label="鎺掑簭" prop="sort"> <el-input v-model="dataForm.sort" :readonly="readonly"></el-input> @@ -25,10 +26,12 @@ <script> import PictureSelect from "@/views/modules/basicInfo/SelectPicture"; + import Cookies from "js-cookie"; export default { data() { return { + url: `${window.SITE_CONFIG['apiURL']}/sysPictureBase/getProductImg?token=${Cookies.get('token')}&id=`, isTree: false, isShow: true, fileId: '', @@ -65,8 +68,17 @@ this.productList = res.data console.log(this.productList, 'getProductList') }, + async getDefaultImg(selected) { + console.log(selected, 'async getDefaultImg') + let params = { + productType: selected + } + let res = await this.$http.get(`/sysPictureBase/getDefaultImg`, {params:params}) + this.dataForm.operatImgName = res.data.name + this.dataForm.operatImg = res.data.id + }, selectPicture() { - this.$refs.pictureSelect.$refs.dialog.init() + this.$refs.pictureSelect.$refs.dialog.init(this.dataForm.productType) }, openAddWin(row) { this.dataForm.operatImgName = row.name diff --git a/web/src/views/modules/sysPictureBase/SysPictureBase-AddOrUpdate.vue b/web/src/views/modules/sysPictureBase/SysPictureBase-AddOrUpdate.vue index 6ae2af8..e19b826 100644 --- a/web/src/views/modules/sysPictureBase/SysPictureBase-AddOrUpdate.vue +++ b/web/src/views/modules/sysPictureBase/SysPictureBase-AddOrUpdate.vue @@ -64,6 +64,10 @@ this.$message.error("鏈�澶т笂浼�5M") return false } + if (fileSize = 0) { + this.$message.error("鏈笂浼犲浘鐗�") + return false + } }, // 鏂囦欢鏁伴噺杩囧鏃舵彁閱� handleExceed() { diff --git a/web/src/views/modules/taskReliability/ModelRbd.vue b/web/src/views/modules/taskReliability/ModelRbd.vue index cc9b8ab..9025ad3 100644 --- a/web/src/views/modules/taskReliability/ModelRbd.vue +++ b/web/src/views/modules/taskReliability/ModelRbd.vue @@ -30,7 +30,7 @@ <el-table-column type="selection" width="40" align="center"/> <el-table-column prop="modelName" label="妯″瀷鍚嶇О"/> <el-table-column prop="modelTag" label="妯″瀷鏍囪瘑"/> - <el-table-column prop="citedNum" label="琚紩鐢ㄦ暟"/> + <el-table-column prop="quoteNum" label="琚紩鐢ㄦ暟"/> <el-table-column prop="modelState" label="妯″瀷鐘舵��" align="center"/> <el-table-column prop="modelDataState" label="妯″瀷鏁版嵁鐘舵��" align="center"/> <el-table-column prop="remark" label="澶囨敞"/> diff --git a/web/src/views/modules/taskReliability/OperatCondit-AddOrUpdate.vue b/web/src/views/modules/taskReliability/OperatCondit-AddOrUpdate.vue new file mode 100644 index 0000000..66d6522 --- /dev/null +++ b/web/src/views/modules/taskReliability/OperatCondit-AddOrUpdate.vue @@ -0,0 +1,50 @@ +<template> + <zt-dialog ref="dialog" @confirm="formSubmit"> + <el-form :model="dataForm" ref="dataForm" :disabled="dataForm.disabled" label-width="120px"> + <zt-form-item label="宸ュ喌鍚嶇О" prop="name" rules="required"> + <el-input v-model="dataForm.name"></el-input> + </zt-form-item> + <zt-form-item label="澶囨敞" prop="remark"> + <el-input v-model="dataForm.remark"></el-input> + </zt-form-item> + </el-form> + </zt-dialog> +</template> + +<script> + export default { + data() { + return { + dataForm: { + id: '', + productId: '', + name: '', + remark: '', + status: '' + } + } + }, + methods: { + init(id,param){ + this.dataForm.productId =param.productId + }, + // 鑾峰彇淇℃伅 + async getInfo() { + let res = await this.$http.get(`/taskReliability/OperatCondit/${this.dataForm.id}`) + this.dataForm = { + ...this.dataForm, + ...res.data + } + }, + // 琛ㄥ崟鎻愪氦 + async formSubmit() { + let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/taskReliability/OperatCondit/', this.dataForm) + if (res.success) { + await this.$tip.success() + this.$refs.dialog.close() + this.$emit('refreshDataList') + } + } + } + } +</script> diff --git a/web/src/views/modules/taskReliability/OperatCondit.vue b/web/src/views/modules/taskReliability/OperatCondit.vue new file mode 100644 index 0000000..e776ece --- /dev/null +++ b/web/src/views/modules/taskReliability/OperatCondit.vue @@ -0,0 +1,89 @@ +<template> + <div> + <el-row :gutter="16"> + <el-col :span="14"> + <div class="mod-taskReliability-operatCondit}"> + <div class="fa-card-a"> + <div> + 浜у搧鑺傜偣锛� + <zt-select v-model="dataForm.productId" :datas="productList" @change="onProductSelected"/> + </div> + <zt-table-wraper ref="tableObj" query-url="/taskReliability/OperatCondit/page" defaultNotQuery="true" delete-url="/taskReliability/OperatCondit" + v-slot="{ table }" :paging='false'> + <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> + <el-form-item> + <zt-button type="query" @click="table.query()"/> + <zt-button type="add" @click="add()"/> + <zt-button type="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 @row-click="selectOperatCondit" @selection-change="table.selectionChangeHandle"> + <el-table-column type="selection" width="40" align="center"/> + <el-table-column prop="name" label="宸ュ喌鍚嶇О"/> + <el-table-column prop="remark" label="澶囨敞"/> + <zt-table-column-handle :table="table" + delete-perm="taskReliability::delete"/> + </el-table> + <!-- 寮圭獥, 鏂板 / 淇敼 --> + <add-or-update @refreshDataList="table.query" ref="AddOrUpdate"/> + </zt-table-wraper> + </div> + </div> + </el-col> + <el-col :span="10"> + <div class="fa-card-a"> + <opera-condit-model ref="model"/> + </div> + </el-col> + </el-row> + </div> +</template> + +<script> + import AddOrUpdate from './OperatCondit-AddOrUpdate' + import OperaConditModel from "./OperatConditModel"; + + export default { + data() { + return { + productList: [], + dataForm: { + productId: '', + } + } + }, + mounted() { + this.getTaskProductList() + }, + components: { + OperaConditModel, + AddOrUpdate + }, + + methods: { + add() { + this.$refs.AddOrUpdate.$refs.dialog.init(null,{productId: this.dataForm.productId}) + }, + onProductSelected(data) { + console.log(data, ' onProductSelected(data)') + this.dataForm.productId = data.id + this.$refs.tableObj.query() + }, + async getTaskProductList() { + let res = await this.$http.get('/basicInfo/XhProductModel/getTaskProductList') + this.productList = res.data + console.log(this.productList, ' async getTaskProductList()') + }, + selectOperatCondit(row) { + this.$emit('selectOperatCondit', row) + let param = { + row: row, + productId: this.dataForm.productId + } + this.$refs.model.init(param) + }, + } + } +</script> diff --git a/web/src/views/modules/taskReliability/OperatConditModel.vue b/web/src/views/modules/taskReliability/OperatConditModel.vue new file mode 100644 index 0000000..d7bce69 --- /dev/null +++ b/web/src/views/modules/taskReliability/OperatConditModel.vue @@ -0,0 +1,63 @@ +<template> + <div class="mod-taskReliability-operatConditModel}"> + <zt-table-wraper ref="tableObj" :paging='false' defaultNotQuery="true" query-url="/taskReliability/OperatConditModel/page" delete-url="/taskReliability/OperatConditModel/" v-slot="{ table }"> + <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> + <el-form-item> + </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" + row-key="id" + :cell-style="cellStyle" + :tree-props="{children: 'children', hasChildren: 'hasChildren'}" + :default-expand-all="true"> + <el-table-column prop="product" label="浜у搧鑺傜偣" width="160"/> + <el-table-column prop="modelName" label="浜у搧妯″瀷"/> + <zt-table-column-handle :table="table" edit-perm="taskReliability:update" + delete-perm="taskReliability::delete" :has-view="false"> + <template v-slot="{ row }"> + <zt-table-button @click="openSelectModel(row)">閫夋嫨妯″瀷</zt-table-button> + </template> + </zt-table-column-handle> + </el-table> + <select-model-rbd ref="SelectModelRbd" ></select-model-rbd> + </zt-table-wraper> + </div> +</template> + +<script> + import SelectModelRbd from "./SelectModelRbd"; + export default { + name: 'OperaConditModel', + data() { + return { + dataForm: { + operatConditId:'', + productId:'', + } + } + }, + components: { + SelectModelRbd + }, + methods:{ + init(param) { + console.log(param, '') + this.dataForm.operatConditId = param.row.id + this.dataForm.productId = param.productId + this.$refs.tableObj.query() + }, + cellStyle({column}) { + if (column.label === '绯荤粺') { + return 'text-align: left !important;' + } + }, + openSelectModel(row) { + console.log(row, 'selectModel'); + if (!row.operatConditId) + row.operatConditId = this.dataForm.operatConditId + this.$refs.SelectModelRbd.$refs.dialog.init(row) + } + } + } +</script> diff --git a/web/src/views/modules/taskReliability/SelectModelRbd.vue b/web/src/views/modules/taskReliability/SelectModelRbd.vue index 8392647..2f17b08 100644 --- a/web/src/views/modules/taskReliability/SelectModelRbd.vue +++ b/web/src/views/modules/taskReliability/SelectModelRbd.vue @@ -20,12 +20,13 @@ name: 'SelectModelRbd', data() { return { + param: null, dataForm: { id: '', modelName: '', modelState: '', productId: '', - phaseId: '', + operatConditId: '', modelId: '', } } @@ -37,19 +38,19 @@ methods: { init(param) { console.log(param) - this.dataForm.productId = param.row.id - this.dataForm.phaseId = param.phaseId - this.dataForm.id = param.row.productId + this.param = param + this.dataForm.productId = param.id + this.dataForm.operatConditId = param.operatConditId + this.dataForm.id = param.operatConditModelId }, - async selectModel(row) { + async selectModel(selectRow) { console.log(this.dataForm) - this.dataForm.modelId = row.id - this.dataForm.productId = row.productId - let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/taskReliability/TaskPhaseModel/', this.dataForm) + this.dataForm.modelId = selectRow.id + let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/taskReliability/OperatConditModel/', this.dataForm) if (res.success) { await this.$tip.success() this.$refs.dialog.close() - this.$emit('setModel') + this.param.modelName = selectRow.modelName } } } diff --git a/web/src/views/modules/taskReliability/TaskPhase-AddOrUpdate.vue b/web/src/views/modules/taskReliability/TaskPhase-AddOrUpdate.vue index 295acdd..aa4e95c 100644 --- a/web/src/views/modules/taskReliability/TaskPhase-AddOrUpdate.vue +++ b/web/src/views/modules/taskReliability/TaskPhase-AddOrUpdate.vue @@ -4,8 +4,8 @@ <zt-form-item label="浠诲姟闃舵鍚嶇О" prop="phaseName" rules="required"> <el-input v-model="dataForm.phaseName"></el-input> </zt-form-item> - <zt-form-item label="闃舵鏃堕暱" prop="phaseDuration"> - <el-input v-model="dataForm.phaseDuration"></el-input> + <zt-form-item label="闃舵鏃堕暱姣�" prop="phaseDuration"> + <el-input v-model="dataForm.phaseDurationRate"></el-input> </zt-form-item> <zt-form-item label="闃舵鏃堕��" prop="phaseSpeed"> <el-input v-model="dataForm.phaseSpeed"></el-input> @@ -28,18 +28,20 @@ id: '', taskId: '', phaseName: '', - phaseDuration: '', + phaseDurationRate: '', phaseSpeed: '', phaseSort: '', remark: '', productId: '' - } + }, + time: null } }, methods: { - init(id,param){ + init(id, param) { this.dataForm.taskId = param.taskId this.dataForm.productId = param.productId + this.time = param.time }, // 鑾峰彇淇℃伅 async getInfo() { @@ -51,6 +53,11 @@ }, // 琛ㄥ崟鎻愪氦 async formSubmit() { + console.log(this.time,'dataLoaded') + if (this.time + Number(this.dataForm.phaseDurationRate > 1)) { + this.$alert("褰撳墠杩愯鏃堕暱姣斿凡瓒呭嚭锛岃閲嶆柊璁剧疆") + return + } let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/taskReliability/TaskPhase/', this.dataForm) if (res.success) { await this.$tip.success() diff --git a/web/src/views/modules/taskReliability/TaskPhase.vue b/web/src/views/modules/taskReliability/TaskPhase.vue index 272b6e0..38904fd 100644 --- a/web/src/views/modules/taskReliability/TaskPhase.vue +++ b/web/src/views/modules/taskReliability/TaskPhase.vue @@ -10,6 +10,7 @@ <div class="mod-taskReliability-taskPhase fa-card-a" style="margin-left: 5px;margin-right: 5px;"> <zt-table-wraper ref="tableObj" defaultNotQuery="true" query-url="/taskReliability/TaskPhase/page" delete-url="/taskReliability/TaskPhase/" + @dataLoaded="dataLoaded" :paging='false' v-slot="{ table }"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> <el-form-item> @@ -18,10 +19,11 @@ </el-form-item> </el-form> <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px" v-adaptive="{bottomOffset:30}" - @row-click="selectPhase" @selection-change="table.selectionChangeHandle"> + + @row-click="selectPhase" @selection-change="table.selectionChangeHandle"> <el-table-column type="selection" width="40" align="center"/> <el-table-column prop="phaseName" label="浠诲姟闃舵鍚嶇О"/> - <el-table-column prop="phaseDuration" label="闃舵鏃堕暱"/> + <el-table-column prop="phaseDurationRate" label="闃舵鏃堕暱姣�"/> <el-table-column prop="phaseSpeed" label="闃舵鏃堕��"/> <el-table-column prop="phaseSort" label="闃舵椤哄簭"/> <zt-table-column-handle :table="table" @@ -33,7 +35,7 @@ </div> </el-col> <el-col :span="7"> - <task-phase-model ref="model"/> + <task-phase-model ref="model"/> </el-col> </el-row> </div> @@ -50,7 +52,9 @@ dataForm: { taskId: '', productId: '' - } + }, + dataList: [], + time: null } }, components: { @@ -59,10 +63,22 @@ AddOrUpdate }, methods: { + dataLoaded(data) { + this.time = null + this.dataList = data + for (let i = 0; i < this.dataList.length; i++) { + this.time = this.time + Number(this.dataList[i].phaseDurationRate) + } + console.log( this.time,'dataLoaded') + if (this.time>1){ + this.$alert("褰撳墠杩愯鏃堕暱姣斿凡瓒呭嚭锛岃閲嶆柊璁剧疆") + } + }, add() { this.$refs.AddOrUpdate.$refs.dialog.init(null, { taskId: this.dataForm.taskId, - productId: this.dataForm.productId + productId: this.dataForm.productId, + time: this.time }) }, onTaskSelected(row) { diff --git a/web/src/views/modules/taskReliability/TaskPhaseModel.vue b/web/src/views/modules/taskReliability/TaskPhaseModel.vue index d556748..00c182c 100644 --- a/web/src/views/modules/taskReliability/TaskPhaseModel.vue +++ b/web/src/views/modules/taskReliability/TaskPhaseModel.vue @@ -2,49 +2,61 @@ <div class="mod-taskReliability-taskPhaseModel fa-card-a" style="margin-left: 5px;"> <zt-table-wraper ref="tableObj" defaultNotQuery="true" query-url="/taskReliability/TaskPhaseModel/page" :paging='false' + @dataLoaded="dataLoaded" delete-url="/taskReliability/TaskPhaseModel/" v-slot="{ table }"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> <el-form-item> + <zt-button type="warning" @click="handleSaveRows">淇濆瓨</zt-button> </el-form-item> </el-form> <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px" - v-adaptive="{bottomOffset:30}" border @selection-change="table.selectionChangeHandle" - row-key="id" - :cell-style="cellStyle" - :tree-props="{children: 'children', hasChildren: 'hasChildren'}" - :default-expand-all="true"> - <el-table-column prop="system" label="绯荤粺" width="160"/> - <el-table-column prop="modelName" label="绯荤粺妯″瀷"/> - <zt-table-column-handle :table="table" edit-perm="taskReliability:update" - delete-perm="taskReliability::delete" :has-view="false"> - <template v-slot="{ row }"> - <zt-table-button @click="selectModel(row)">閫夋嫨妯″瀷</zt-table-button> + v-adaptive="{bottomOffset:30}" border + @cell-click="handleCellClick" + @selection-change="table.selectionChangeHandle"> + <el-table-column prop="operatConditName" label="宸ュ喌鍚嶇О" width="160"/> + <el-table-column prop="operatConditDurationRate" label="宸ュ喌鏃堕暱姣�"> + <template slot-scope="scope"> + <span + v-if="editingCell && editingCell.row === scope.row && editingCell.column.property === scope.column.property"> + <el-input ref="editInput" + autosize v-model="scope.row.operatConditDurationRate" + placeholder="宸ュ喌鏃堕暱姣�"></el-input> + </span> + <span v-else>{{scope.row.operatConditDurationRate}}</span> </template> - </zt-table-column-handle> + </el-table-column> + <el-table-column align="center" label="閫夌敤"> + <template v-slot="{ row }"> + <el-checkbox true-label="1" false-label="0" v-model="row.isCheck"></el-checkbox> + </template> + </el-table-column> </el-table> - <select-model-rbd ref="SelectModelRbd" @setModel="selectModelRbd"></select-model-rbd> </zt-table-wraper> </div> </template> <script> - import SelectModelRbd from "./SelectModelRbd"; export default { name: 'TaskPhaseModel', data() { return { dataForm: { - phaseId: '', - modelName: '', productId: '', - modelId: '', - } + phaseId: '', + operatConditName: '', + operatConditId: '', + operatConditDurationRate: '', + dataList: [], + isCheck: '' + }, + editingCell: null, + dataList: [], + originalTableData: [], + originalData: null, } }, - components: { - SelectModelRbd - }, + components: {}, methods: { init(param) { console.log(param, '') @@ -52,23 +64,64 @@ this.dataForm.productId = param.productId this.$refs.tableObj.query() }, - cellStyle({column}) { - if (column.label === '绯荤粺') { - return 'text-align: left !important;' + //鎵归噺淇濆瓨 + async handleSaveRows() { + let time = null + let flag = true + let list = [] + this.dataForm.dataThreeList = this.$refs.tableObj.dataList + for (let i = 0; i < this.dataForm.dataThreeList.length; i++) { + time = time + Number(this.dataForm.dataThreeList[i].operatConditDurationRate) + if (this.dataForm.dataThreeList[i].isCheck === '0' && this.dataForm.dataThreeList[i].operatConditDurationRate != null) { + this.$alert("鏈夋湭鍕鹃�夌殑宸ュ喌") + flag = false + } else if (this.dataForm.dataThreeList[i].isCheck === '1' && this.dataForm.dataThreeList[i].operatConditDurationRate == null) { + this.$alert("鏈夋湭濉啓鐨勫伐鍐垫椂闀�") + flag = false + } + + if (this.dataForm.dataThreeList[i].isCheck==='1'){ + list.push(this.dataForm.dataThreeList[i]) + } + } + this.dataForm.dataThreeList = list + console.log(time, 'async handleSaveRows') + if (time > 1) { + this.$alert("鏃堕暱姣斿拰宸茶秴杩囷紝璇烽噸鏂拌缃�") + return + } + if (!flag) { + return + } + let res = await this.$http.post('/taskReliability/TaskPhaseModel/save', this.dataForm) + if (res.success) { + console.log(res.data) + await this.$tip.success() + this.originalData = null + this.dataForm.dataThreeList = null + this.$refs.tableObj.query() + this.originalTableData = JSON.parse(JSON.stringify(this.dataList)); // 鏇存柊鍒濆鏁版嵁涓哄綋鍓嶆暟鎹� + console.log(this.originalTableData, 'this.originalTableData 褰撳墠琛ㄦ牸json鏁版嵁') } }, - selectModel(row) { - console.log(row, 'selectModel'); - let param = { - row: row, - phaseId: this.dataForm.phaseId + dataLoaded(data) { + this.dataList = data + for (let i = 0; i < this.dataList.length; i++) { + this.dataList[i].productId = this.dataForm.productId + this.dataList[i].phaseId = this.dataForm.phaseId } - this.$refs.SelectModelRbd.$refs.dialog.init(param) }, - selectModelRbd(row) { - console.log(row, 'selectModelRbd') - this.$refs.tableObj.query() + handleCellClick(row, column) { + this.editingCell = {row, column} + this.$nextTick(() => { + if (this.$refs.editInput) { + this.$refs.editInput.focus() + } + }) + console.log(this.editingCell, 'this.editingCell') } + , + } } </script> -- Gitblit v1.9.1