Merge remote-tracking branch 'origin/dev_2nd_LCYH' into dev_2nd_LCYH

This commit is contained in:
wangzhijiang
2023-03-28 15:10:57 +08:00
61 changed files with 963 additions and 800 deletions
@@ -156,7 +156,6 @@ public class OtaBaCxJbxxController extends JeroController<OtaBaCxJbxx, IOtaBaCxJ
public Result<?> queryByOtaId(@RequestParam(name = "otaId") String otaId, public Result<?> queryByOtaId(@RequestParam(name = "otaId") String otaId,
@RequestParam(name = "otaIdT") String otaIdT) { @RequestParam(name = "otaIdT") String otaIdT) {
OtaBaCxJbxx otaBaCxJbxx = otaBaCxJbxxService.queryByOtaId(otaId, otaIdT); OtaBaCxJbxx otaBaCxJbxx = otaBaCxJbxxService.queryByOtaId(otaId, otaIdT);
otaBaCxJbxx = otaBaCxJbxxService.queryByOtaId(otaId, otaIdT);
return Result.OK(otaBaCxJbxx); return Result.OK(otaBaCxJbxx);
} }
@@ -6,6 +6,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import com.jero.common.api.vo.Result; import com.jero.common.api.vo.Result;
import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.query.QueryGenerator;
import com.jero.modules.ota.entity.OtaBaCxJbxx;
import com.jero.modules.ota.entity.OtaBaSjSjmbcl; import com.jero.modules.ota.entity.OtaBaSjSjmbcl;
import com.jero.modules.ota.service.IOtaBaSjSjmbclService; import com.jero.modules.ota.service.IOtaBaSjSjmbclService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -144,6 +145,18 @@ public class OtaBaSjSjmbclController extends JeroController<OtaBaSjSjmbcl, IOtaB
return Result.OK(otaBaSjSjmbcl); return Result.OK(otaBaSjSjmbcl);
} }
/**
* 通过OtaId查询
*/
@AutoLog(value = "升级备案-升级目标车辆-通过otaId查询")
@ApiOperation(value = "升级备案-升级目标车辆-通过otaId查询", notes = "升级备案-升级目标车辆-通过otaId查询")
@GetMapping(value = "/queryByOtaId")
public Result<?> queryByOtaId(@RequestParam(name = "otaId") String otaId,
@RequestParam(name = "otaIdT") String otaIdT) {
OtaBaSjSjmbcl otaBaSjSjmbcl = otaBaSjSjmbclService.queryByOtaId(otaId, otaIdT);
return Result.OK(otaBaSjSjmbcl);
}
/** /**
* 导出excel * 导出excel
* *
@@ -6,6 +6,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import com.jero.common.api.vo.Result; import com.jero.common.api.vo.Result;
import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.query.QueryGenerator;
import com.jero.modules.ota.entity.OtaBaSjSjmbcl;
import com.jero.modules.ota.entity.OtaBaSjSjmbcx; import com.jero.modules.ota.entity.OtaBaSjSjmbcx;
import com.jero.modules.ota.service.IOtaBaSjSjmbcxService; import com.jero.modules.ota.service.IOtaBaSjSjmbcxService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -81,8 +82,8 @@ public class OtaBaSjSjmbcxController extends JeroController<OtaBaSjSjmbcx, IOtaB
@ApiOperation(value="升级备案-升级目标车型-添加", notes="升级备案-升级目标车型-添加") @ApiOperation(value="升级备案-升级目标车型-添加", notes="升级备案-升级目标车型-添加")
@PostMapping(value = "/add") @PostMapping(value = "/add")
public Result<?> add(@Validated @RequestBody OtaBaSjSjmbcx otaBaSjSjmbcx) { public Result<?> add(@Validated @RequestBody OtaBaSjSjmbcx otaBaSjSjmbcx) {
otaBaSjSjmbcxService.add(otaBaSjSjmbcx); OtaBaSjSjmbcx cx = otaBaSjSjmbcxService.add(otaBaSjSjmbcx);
return Result.OK("添加成功!"); return Result.OK(cx);
} }
/** /**
@@ -144,6 +145,18 @@ public class OtaBaSjSjmbcxController extends JeroController<OtaBaSjSjmbcx, IOtaB
return Result.OK(otaBaSjSjmbcx); return Result.OK(otaBaSjSjmbcx);
} }
/**
* 通过OtaId查询
*/
@AutoLog(value = "升级备案-升级目标车型-通过otaId查询")
@ApiOperation(value = "升级备案-升级目标车型-通过otaId查询", notes = "升级备案-升级目标车型-通过otaId查询")
@GetMapping(value = "/queryByOtaId")
public Result<?> queryByOtaId(@RequestParam(name = "otaId") String otaId,
@RequestParam(name = "otaIdT") String otaIdT) {
OtaBaSjSjmbcx otaBaSjSjmbcx = otaBaSjSjmbcxService.queryByOtaId(otaId, otaIdT);
return Result.OK(otaBaSjSjmbcx);
}
/** /**
* 导出excel * 导出excel
* *
@@ -6,6 +6,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import com.jero.common.api.vo.Result; import com.jero.common.api.vo.Result;
import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.query.QueryGenerator;
import com.jero.modules.ota.entity.OtaBaCxAqcs;
import com.jero.modules.ota.entity.OtaBaSjSjyxpg; import com.jero.modules.ota.entity.OtaBaSjSjyxpg;
import com.jero.modules.ota.service.IOtaBaSjSjyxpgService; import com.jero.modules.ota.service.IOtaBaSjSjyxpgService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -144,6 +145,24 @@ public class OtaBaSjSjyxpgController extends JeroController<OtaBaSjSjyxpg, IOtaB
return Result.OK(otaBaSjSjyxpg); return Result.OK(otaBaSjSjyxpg);
} }
/**
* 通过otaId查询
*
* @param otaId
* @return
*/
@AutoLog(value = "升级备案-升级影响评估-通过otaId查询")
@ApiOperation(value = "升级备案-升级影响评估-通过otaId查询", notes = "升级备案-升级影响评估-通过otaId查询")
@GetMapping(value = "/queryByOtaId")
public Result<?> queryByOtaId(@RequestParam(name = "otaId", required = true) String otaId,
@RequestParam(name = "otaIdT", required = true) String otaIdT) {
OtaBaSjSjyxpg otaBaSjSjyxpg = otaBaSjSjyxpgService.queryByOtaId(otaId, otaIdT);
if (otaBaSjSjyxpg == null) {
return Result.error("未找到对应数据");
}
return Result.OK(otaBaSjSjyxpg);
}
/** /**
* 导出excel * 导出excel
* *
@@ -1,170 +0,0 @@
package com.jero.modules.ota.controller;
import java.util.Arrays;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.jero.common.api.vo.Result;
import com.jero.common.system.query.QueryGenerator;
import com.jero.modules.ota.entity.OtaBaSjTxjl;
import com.jero.modules.ota.service.IOtaBaSjTxjlService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import com.jero.common.system.base.controller.JeroController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.jero.common.aspect.annotation.AutoLog;
/**
* @Description: 车型升级-填写记录表
* @Author: jero-boot
* @Date: 2023-03-25
* @Version: V1.0
*/
@Api(tags="车型升级-填写记录表")
@RestController
@RequestMapping("/ota/otaBaSjTxjl")
@Slf4j
public class OtaBaSjTxjlController extends JeroController<OtaBaSjTxjl, IOtaBaSjTxjlService> {
@Autowired
private IOtaBaSjTxjlService otaBaSjTxjlService;
/**
* 分页列表查询
*
* @param otaBaSjTxjl
* @param pageNo
* @param pageSize
* @param req
* @return
*/
@AutoLog(value = "车型升级-填写记录表-分页列表查询")
@ApiOperation(value="车型升级-填写记录表-分页列表查询", notes="车型升级-填写记录表-分页列表查询")
@GetMapping(value = "/page")
public Result<?> queryPageList(OtaBaSjTxjl otaBaSjTxjl,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<OtaBaSjTxjl> queryWrapper = QueryGenerator.initQueryWrapper(otaBaSjTxjl, req.getParameterMap());
Page<OtaBaSjTxjl> page = new Page<OtaBaSjTxjl>(pageNo, pageSize);
IPage<OtaBaSjTxjl> pageList = otaBaSjTxjlService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 列表查询
*
* @return
*/
@AutoLog(value = "车型升级-填写记录表-列表查询")
@ApiOperation(value="车型升级-填写记录表-列表查询", notes="车型升级-填写记录表-列表查询")
@GetMapping(value = "/list")
public Result<List<OtaBaSjTxjl>> queryList() {
List<OtaBaSjTxjl> list = otaBaSjTxjlService.queryList();
return Result.OK(list);
}
/**
* 添加
*
* @param otaBaSjTxjl
* @return
*/
@AutoLog(value = "车型升级-填写记录表-添加")
@ApiOperation(value="车型升级-填写记录表-添加", notes="车型升级-填写记录表-添加")
@PostMapping(value = "/add")
public Result<?> add(@Validated @RequestBody OtaBaSjTxjl otaBaSjTxjl) {
otaBaSjTxjlService.add(otaBaSjTxjl);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param otaBaSjTxjl
* @return
*/
@AutoLog(value = "车型升级-填写记录表-编辑")
@ApiOperation(value="车型升级-填写记录表-编辑", notes="车型升级-填写记录表-编辑")
@PutMapping(value = "/edit")
public Result<?> edit(@Validated @RequestBody OtaBaSjTxjl otaBaSjTxjl) {
otaBaSjTxjlService.editById(otaBaSjTxjl);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "车型升级-填写记录表-通过id删除")
@ApiOperation(value="车型升级-填写记录表-通过id删除", notes="车型升级-填写记录表-通过id删除")
@DeleteMapping(value = "/delete")
public Result<?> delete(@RequestParam(name="id",required=true) String id) {
otaBaSjTxjlService.deleteById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "车型升级-填写记录表-批量删除")
@ApiOperation(value="车型升级-填写记录表-批量删除", notes="车型升级-填写记录表-批量删除")
@DeleteMapping(value = "/deleteBatch")
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.otaBaSjTxjlService.deleteByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
@AutoLog(value = "车型升级-填写记录表-通过id查询")
@ApiOperation(value="车型升级-填写记录表-通过id查询", notes="车型升级-填写记录表-通过id查询")
@GetMapping(value = "/queryById")
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
OtaBaSjTxjl otaBaSjTxjl = otaBaSjTxjlService.queryById(id);
if(otaBaSjTxjl==null) {
return Result.error("未找到对应数据");
}
return Result.OK(otaBaSjTxjl);
}
/**
* 导出excel
*
* @param request
* @param otaBaSjTxjl
*/
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, OtaBaSjTxjl otaBaSjTxjl) {
return super.exportXls(request, otaBaSjTxjl, OtaBaSjTxjl.class, "车型升级-填写记录表");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, OtaBaSjTxjl.class);
}
}
@@ -99,17 +99,17 @@ public class OtaBaSjGgnrfs implements Serializable {
/**告知用户升级成功或失败*/ /**告知用户升级成功或失败*/
@Excel(name = "告知用户升级成功或失败", width = 15) @Excel(name = "告知用户升级成功或失败", width = 15)
@ApiModelProperty(value = "告知用户升级成功或失败") @ApiModelProperty(value = "告知用户升级成功或失败")
private java.lang.String sjsfcg; private java.lang.Integer sjsfcg;
/**告知实施的变更*/ /**告知实施的变更*/
@Excel(name = "告知实施的变更", width = 15) @Excel(name = "告知实施的变更", width = 15)
@ApiModelProperty(value = "告知实施的变更") @ApiModelProperty(value = "告知实施的变更")
private java.lang.String gzbg; private java.lang.Integer gzbg;
/**告知了对用户手册的全部更新内容*/ /**告知了对用户手册的全部更新内容*/
@Excel(name = "告知了对用户手册的全部更新内容", width = 15) @Excel(name = "告知了对用户手册的全部更新内容", width = 15)
@ApiModelProperty(value = "告知了对用户手册的全部更新内容") @ApiModelProperty(value = "告知了对用户手册的全部更新内容")
private java.lang.String gzscnr; private java.lang.Integer gzscnr;
/**告知用户方式(可多选)*/ /**告知用户方式(可多选)*/
@Excel(name = "告知用户方式(可多选)", width = 15) @Excel(name = "告知用户方式(可多选)", width = 15)
@@ -115,4 +115,11 @@ public class OtaBaSjList implements Serializable {
@ApiModelProperty(value = "备注") @ApiModelProperty(value = "备注")
private java.lang.String bz; private java.lang.String bz;
public void updateData(OtaBaSjSjmbcx otaBaSjSjmbcx) {
this.cpdjbh = otaBaSjSjmbcx.getBabh();
this.ggpc = otaBaSjSjmbcx.getBapc();
this.cpsb = otaBaSjSjmbcx.getCpsb();
this.cpmc = otaBaSjSjmbcx.getCpmc();
this.cpxh = otaBaSjSjmbcx.getCpxh();
}
} }
@@ -90,4 +90,9 @@ public class OtaBaSjSjmbcl implements Serializable {
@ApiModelProperty(value = "VIN码清单") @ApiModelProperty(value = "VIN码清单")
private java.lang.String vinList; private java.lang.String vinList;
/**csv附件*/
@Excel(name = "csv附件", width = 15)
@ApiModelProperty(value = "csv附件")
private java.lang.String csv;
} }
@@ -69,62 +69,66 @@ public class OtaBaSjSjyxpg implements Serializable {
/**升级目的*/ /**升级目的*/
@Excel(name = "升级目的", width = 15) @Excel(name = "升级目的", width = 15)
@ApiModelProperty(value = "升级目的") @ApiModelProperty(value = "升级目的")
@Dict(dicCode = "uipgrade_purpose")
private java.lang.String sjmd; private java.lang.String sjmd;
/**是否变更对应车型的《公告》技术参数*/ /**是否变更对应车型的《公告》技术参数*/
@Excel(name = "是否变更对应车型的《公告》技术参数", width = 15) @Excel(name = "是否变更对应车型的《公告》技术参数", width = 15)
@ApiModelProperty(value = "是否变更对应车型的《公告》技术参数") @ApiModelProperty(value = "是否变更对应车型的《公告》技术参数")
private java.lang.String sfbgcs; private java.lang.Integer sfbgcs;
/**是否涉及性能变化*/ /**是否涉及性能变化*/
@Excel(name = "是否涉及性能变化", width = 15) @Excel(name = "是否涉及性能变化", width = 15)
@ApiModelProperty(value = "是否涉及性能变化") @ApiModelProperty(value = "是否涉及性能变化")
private java.lang.String sjxnbh; private java.lang.Integer sjxnbh;
/**是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等*/ /**是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等*/
@Excel(name = "是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等", width = 15) @Excel(name = "是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等", width = 15)
@ApiModelProperty(value = "是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等") @ApiModelProperty(value = "是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等")
private java.lang.String fhgd; private java.lang.Integer fhgd;
/**是否涉及汽车自动驾驶功能相关升级*/ /**是否涉及汽车自动驾驶功能相关升级*/
@Excel(name = "是否涉及汽车自动驾驶功能相关升级", width = 15) @Excel(name = "是否涉及汽车自动驾驶功能相关升级", width = 15)
@ApiModelProperty(value = "是否涉及汽车自动驾驶功能相关升级") @ApiModelProperty(value = "是否涉及汽车自动驾驶功能相关升级")
private java.lang.String zdjsxg; private java.lang.Integer zdjsxg;
/**兼容性评估相关*/ /**兼容性评估相关*/
@Excel(name = "兼容性评估相关", width = 15) @Excel(name = "兼容性评估相关", width = 15)
@ApiModelProperty(value = "兼容性评估相关") @ApiModelProperty(value = "兼容性评估相关")
private java.lang.String jrxxg; private java.lang.Integer jrxxg;
/**如何执行升级*/ /**如何执行升级*/
@Excel(name = "如何执行升级", width = 15) @Excel(name = "如何执行升级", width = 15)
@ApiModelProperty(value = "如何执行升级") @ApiModelProperty(value = "如何执行升级")
private java.lang.String zxsj; @Dict(dicCode = "conditions_upgrades")
private java.lang.Integer zxsj;
/**升级失败或中断后,车辆采取的安全机制*/ /**升级失败或中断后,车辆采取的安全机制*/
@Excel(name = "升级失败或中断后,车辆采取的安全机制", width = 15) @Excel(name = "升级失败或中断后,车辆采取的安全机制", width = 15)
@ApiModelProperty(value = "升级失败或中断后,车辆采取的安全机制") @ApiModelProperty(value = "升级失败或中断后,车辆采取的安全机制")
@Dict(dicCode = "upgrade_failed")
private java.lang.String aqjz; private java.lang.String aqjz;
/**升级活动是否影响车辆安全*/ /**升级活动是否影响车辆安全*/
@Excel(name = "升级活动是否影响车辆安全", width = 15) @Excel(name = "升级活动是否影响车辆安全", width = 15)
@ApiModelProperty(value = "升级活动是否影响车辆安全") @ApiModelProperty(value = "升级活动是否影响车辆安全")
private java.lang.String sfyxaq; private java.lang.Integer sfyxaq;
/**升级活动是否提供用户确认选项*/ /**升级活动是否提供用户确认选项*/
@Excel(name = "升级活动是否提供用户确认选项", width = 15) @Excel(name = "升级活动是否提供用户确认选项", width = 15)
@ApiModelProperty(value = "升级活动是否提供用户确认选项") @ApiModelProperty(value = "升级活动是否提供用户确认选项")
private java.lang.String yhqr; private java.lang.Integer yhqr;
/**升级包测试*/ /**升级包测试*/
@Excel(name = "升级包测试", width = 15) @Excel(name = "升级包测试", width = 15)
@ApiModelProperty(value = "升级包测试") @ApiModelProperty(value = "升级包测试")
@Dict(dicCode = "package_test")
private java.lang.String sjbcs; private java.lang.String sjbcs;
/**是杏已验证确认在线升级活动的安全性和可靠性*/ /**是杏已验证确认在线升级活动的安全性和可靠性*/
@Excel(name = "是杏已验证确认在线升级活动的安全性和可靠性", width = 15) @Excel(name = "是杏已验证确认在线升级活动的安全性和可靠性", width = 15)
@ApiModelProperty(value = "是杏已验证确认在线升级活动的安全性和可靠性") @ApiModelProperty(value = "是杏已验证确认在线升级活动的安全性和可靠性")
private java.lang.String aqkkx; private java.lang.Integer aqkkx;
/**提供变更或扩展后的《公告》批次及证明材料*/ /**提供变更或扩展后的《公告》批次及证明材料*/
@Excel(name = "提供变更或扩展后的《公告》批次及证明材料", width = 15) @Excel(name = "提供变更或扩展后的《公告》批次及证明材料", width = 15)
@@ -1,79 +0,0 @@
package com.jero.modules.ota.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import com.jero.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
/**
* @Description: 车型升级-填写记录表
* @Author: jero-boot
* @Date: 2023-03-25
* @Version: V1.0
*/
@Data
@TableName("ota_ba_sj_txjl")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="ota_ba_sj_txjl对象", description="车型升级-填写记录表")
public class OtaBaSjTxjl implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**所属部门*/
@ApiModelProperty(value = "所属部门")
private String sysOrgCode;
/**ota_id*/
@Excel(name = "ota_id", width = 15)
@ApiModelProperty(value = "ota_id")
private String otaId;
/**模块*/
@Excel(name = "模块", width = 15)
@ApiModelProperty(value = "模块")
private String module;
/**填写内容*/
@Excel(name = "填写内容", width = 15)
@ApiModelProperty(value = "填写内容")
private String content;
}
@@ -8,7 +8,15 @@ public enum OtaModuleEnum {
CX_KSJDXTMCYCS("可升级的系统名称与参数", "1","1"), CX_KSJDXTMCYCS("可升级的系统名称与参数", "1","1"),
CX_KZXSJDJSFZGNMCYCS("可在线升级的驾驶辅助功能名称与参数", "1","1"), CX_KZXSJDJSFZGNMCYCS("可在线升级的驾驶辅助功能名称与参数", "1","1"),
CX_JSFZXTJCBACS("驾驶辅助系统基础备案参数", "1","1"), CX_JSFZXTJCBACS("驾驶辅助系统基础备案参数", "1","1"),
CX_QT("其他", "1","1"); CX_QT("其他", "1","1"),
SJ_SJMBCX("升级目标车型", "1","1"),
SJ_SJMBCL("本次升级的目标车辆", "1","1"),
SJ_SJYXPG("升级影响评估", "1","1"),
SJ_SJXTMCBH("本次升级的系统名称与参数变化", "1","1"),
SJ_SJJSMCBH("本次升级的驾驶辅助功能名称与参数变化", "1","1"),
SJ_YHGZNRFS("用户告知内容及方式", "1","1"),
SJ_QT("其他升级任务信息", "1","1");
String name; String name;
String nameEN; String nameEN;
@@ -156,17 +156,17 @@ public enum OtaTitleEnum {
SCRQKS("scrqks", "生产日期开始", "0"), SCRQKS("scrqks", "生产日期开始", "0"),
SCRQJS("scrqjs", "生产日期结束", "0"), SCRQJS("scrqjs", "生产日期结束", "0"),
VIN_LIST("vinList", "VIN码清单", "0"), VIN_LIST("vinList", "VIN码清单", "0"),
SJMD("sjmd", "升级目的", "0"), SJMD("sjmd", "升级目的", "uipgrade_purpose"),
SFBGCS("sfbgcs", "是否变更对应车型的《公告》技术参数", "0"), SFBGCS("sfbgcs", "是否变更对应车型的《公告》技术参数", "0"),
JSXNBH("jsxnbh", "是否涉及性能变化", "0"), JSXNBH("jsxnbh", "是否涉及性能变化", "0"),
FHGD("fhgd", "是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等", "0"), FHGD("fhgd", "是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等", "0"),
ZDJSXG("zdjsxg", "是否涉及汽车自动驾驶功能相关升级", "0"), ZDJSXG("zdjsxg", "是否涉及汽车自动驾驶功能相关升级", "0"),
JRXXG("jrxxg", "兼容性评估相关", "0"), JRXXG("jrxxg", "兼容性评估相关", "0"),
ZXSJ("zxsj", "如何执行升级", "0"), ZXSJ("zxsj", "如何执行升级", "conditions_upgrades"),
AQJZ("aqjz", "升级失败或中断后,车辆采取的安全机制", "0"), AQJZ("aqjz", "升级失败或中断后,车辆采取的安全机制", "upgrade_failed"),
SFYXAQ("sfyxaq", "升级活动是否影响车辆安全", "0"), SFYXAQ("sfyxaq", "升级活动是否影响车辆安全", "0"),
YHQR("yhqr", "升级活动是否提供用户确认选项", "0"), YHQR("yhqr", "升级活动是否提供用户确认选项", "0"),
SJBCS("sjbcs", "升级包测试", "0"), SJBCS("sjbcs", "升级包测试", "package_test"),
AQKKX("aqkkx", "是杏已验证确认在线升级活动的安全性和可靠性", "0"), AQKKX("aqkkx", "是杏已验证确认在线升级活动的安全性和可靠性", "0"),
BGFJ("bgfj", "提供变更或扩展后的《公告》批次及证明材料", "0"), BGFJ("bgfj", "提供变更或扩展后的《公告》批次及证明材料", "0"),
CLFJ("clfj", "提供证明材料", "0"), CLFJ("clfj", "提供证明材料", "0"),
@@ -1,17 +0,0 @@
package com.jero.modules.ota.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.jero.modules.ota.entity.OtaBaSjTxjl;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 车型升级-填写记录表
* @Author: jero-boot
* @Date: 2023-03-25
* @Version: V1.0
*/
public interface OtaBaSjTxjlMapper extends BaseMapper<OtaBaSjTxjl> {
}
@@ -1,15 +0,0 @@
<?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.jero.modules.ota.mapper.OtaBaSjTxjlMapper">
<resultMap id="OtaBaSjTxjlResultMap" type="com.jero.modules.ota.entity.OtaBaSjTxjl">
<id column="id" property="id" />
<result column="create_by" property="createBy" />
<result column="create_time" property="createTime" />
<result column="update_by" property="updateBy" />
<result column="update_time" property="updateTime" />
<result column="sys_org_code" property="sysOrgCode" />
<result column="ota_id" property="otaId" />
<result column="module" property="module" />
<result column="content" property="content" />
</resultMap>
</mapper>
@@ -58,4 +58,6 @@ public interface IOtaBaSjSjmbclService extends IService<OtaBaSjSjmbcl> {
* @return * @return
*/ */
List<OtaBaSjSjmbcl> queryList(); List<OtaBaSjSjmbcl> queryList();
OtaBaSjSjmbcl queryByOtaId(String otaId, String otaIdT);
} }
@@ -18,7 +18,7 @@ public interface IOtaBaSjSjmbcxService extends IService<OtaBaSjSjmbcx> {
* @param otaBaSjSjmbcx * @param otaBaSjSjmbcx
* @return * @return
*/ */
void add(OtaBaSjSjmbcx otaBaSjSjmbcx); OtaBaSjSjmbcx add(OtaBaSjSjmbcx otaBaSjSjmbcx);
/** /**
* 更新 * 更新
@@ -58,4 +58,6 @@ public interface IOtaBaSjSjmbcxService extends IService<OtaBaSjSjmbcx> {
* @return * @return
*/ */
List<OtaBaSjSjmbcx> queryList(); List<OtaBaSjSjmbcx> queryList();
OtaBaSjSjmbcx queryByOtaId(String otaId, String otaIdT);
} }
@@ -58,4 +58,6 @@ public interface IOtaBaSjSjyxpgService extends IService<OtaBaSjSjyxpg> {
* @return * @return
*/ */
List<OtaBaSjSjyxpg> queryList(); List<OtaBaSjSjyxpg> queryList();
OtaBaSjSjyxpg queryByOtaId(String otaId, String otaIdT);
} }
@@ -1,61 +0,0 @@
package com.jero.modules.ota.service;
import com.jero.modules.ota.entity.OtaBaSjTxjl;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* @Description: 车型升级-填写记录表
* @Author: jero-boot
* @Date: 2023-03-25
* @Version: V1.0
*/
public interface IOtaBaSjTxjlService extends IService<OtaBaSjTxjl> {
/**
* 保存
*
* @param otaBaSjTxjl
* @return
*/
void add(OtaBaSjTxjl otaBaSjTxjl);
/**
* 更新
*
* @param otaBaSjTxjl
* @return
*/
void editById(OtaBaSjTxjl otaBaSjTxjl);
/**
* 通过id删除
*
* @param id
* @return
*/
void deleteById(String id);
/**
* 批量删除
*
* @param ids
* @return
*/
void deleteByIds(List<String> ids);
/**
* 通过id查询
*
* @param id
* @return
*/
OtaBaSjTxjl queryById(String id);
/**
* 列表查询
*
* @return
*/
List<OtaBaSjTxjl> queryList();
}
@@ -163,6 +163,9 @@ public class OtaBaCxAqcsServiceImpl extends ServiceImpl<OtaBaCxAqcsMapper, OtaBa
} }
private OtaBaCxAqcs getByOtaId(String otaId) { private OtaBaCxAqcs getByOtaId(String otaId) {
if(StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxAqcs> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<OtaBaCxAqcs> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxAqcs::getOtaId, otaId); queryWrapper.eq(OtaBaCxAqcs::getOtaId, otaId);
return this.getOne(queryWrapper, false); return this.getOne(queryWrapper, false);
@@ -64,7 +64,7 @@ public class OtaBaCxJbxxServiceImpl extends ServiceImpl<OtaBaCxJbxxMapper, OtaBa
*/ */
public OtaBaCxJbxx add(OtaBaCxJbxx otaBaCxJbxx) { public OtaBaCxJbxx add(OtaBaCxJbxx otaBaCxJbxx) {
//对比填写记录用的 //对比填写记录用的
OtaBaCxJbxx OtaBaCxJbxxOld = new OtaBaCxJbxx(); OtaBaCxJbxx otaBaCxJbxxOld = new OtaBaCxJbxx();
Date now = new Date(); Date now = new Date();
OtaBaCxList otaBaCxList; OtaBaCxList otaBaCxList;
if (StringUtils.isEmpty(otaBaCxJbxx.getOtaId())) { if (StringUtils.isEmpty(otaBaCxJbxx.getOtaId())) {
@@ -76,7 +76,7 @@ public class OtaBaCxJbxxServiceImpl extends ServiceImpl<OtaBaCxJbxxMapper, OtaBa
otaBaCxJbxx.setOtaId(otaBaCxList.getId()); otaBaCxJbxx.setOtaId(otaBaCxList.getId());
otaBaCxJbxx.setCreateTime(now); otaBaCxJbxx.setCreateTime(now);
} else { } else {
OtaBaCxJbxxOld = this.getByOtaId(otaBaCxJbxx.getOtaId()); otaBaCxJbxxOld = this.getByOtaId(otaBaCxJbxx.getOtaId());
otaBaCxList = otaBaCxListService.queryById(otaBaCxJbxx.getOtaId()); otaBaCxList = otaBaCxListService.queryById(otaBaCxJbxx.getOtaId());
otaBaCxList.updateData(otaBaCxJbxx); otaBaCxList.updateData(otaBaCxJbxx);
otaBaCxListService.editById(otaBaCxList); otaBaCxListService.editById(otaBaCxList);
@@ -84,7 +84,7 @@ public class OtaBaCxJbxxServiceImpl extends ServiceImpl<OtaBaCxJbxxMapper, OtaBa
otaBaCxJbxx.setUpdateTime(now); otaBaCxJbxx.setUpdateTime(now);
saveOrUpdate(otaBaCxJbxx); saveOrUpdate(otaBaCxJbxx);
ComparisonUtil cu = new ComparisonUtil(); ComparisonUtil cu = new ComparisonUtil();
List<OtaBaCxTxjl> reList = cu.comparisonRecord(otaBaCxJbxx.getOtaId(), OtaModuleEnum.CX_CXJBXX, OtaBaCxJbxxOld, otaBaCxJbxx, sysDictService); List<OtaBaCxTxjl> reList = cu.comparisonRecord(otaBaCxJbxx.getOtaId(), OtaModuleEnum.CX_CXJBXX, otaBaCxJbxxOld, otaBaCxJbxx, sysDictService);
otaBaCxTxjlService.saveBatch(reList); otaBaCxTxjlService.saveBatch(reList);
return otaBaCxJbxx; return otaBaCxJbxx;
} }
@@ -156,6 +156,9 @@ public class OtaBaCxJbxxServiceImpl extends ServiceImpl<OtaBaCxJbxxMapper, OtaBa
} }
private OtaBaCxJbxx getByOtaId(String otaId) { private OtaBaCxJbxx getByOtaId(String otaId) {
if(StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxJbxx> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<OtaBaCxJbxx> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxJbxx::getOtaId, otaId); queryWrapper.eq(OtaBaCxJbxx::getOtaId, otaId);
return this.getOne(queryWrapper, false); return this.getOne(queryWrapper, false);
@@ -131,7 +131,11 @@ public class OtaBaCxJsfzbacsServiceImpl extends ServiceImpl<OtaBaCxJsfzbacsMappe
if (null != bjObj) { if (null != bjObj) {
try { try {
field.setAccessible(true); field.setAccessible(true);
field.set(otaBaCxJsfzbacs, bjObj.toString()); if (bjObj instanceof Integer) {
field.set(otaBaCxJsfzbacs, (Integer) bjObj);
} else {
field.set(otaBaCxJsfzbacs, bjObj.toString());
}
} catch (IllegalAccessException e) { } catch (IllegalAccessException e) {
e.printStackTrace(); e.printStackTrace();
} }
@@ -232,6 +236,9 @@ public class OtaBaCxJsfzbacsServiceImpl extends ServiceImpl<OtaBaCxJsfzbacsMappe
} }
private OtaBaCxJsfzbacs getByOtaId(String otaId) { private OtaBaCxJsfzbacs getByOtaId(String otaId) {
if(StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxJsfzbacs> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<OtaBaCxJsfzbacs> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxJsfzbacs::getOtaId, otaId); queryWrapper.eq(OtaBaCxJsfzbacs::getOtaId, otaId);
return this.getOne(queryWrapper, false); return this.getOne(queryWrapper, false);
@@ -195,6 +195,9 @@ public class OtaBaCxKsjjsmccsServiceImpl extends ServiceImpl<OtaBaCxKsjjsmccsMap
} }
private List<OtaBaCxKsjjsmccs> getByOtaId(String otaId) { private List<OtaBaCxKsjjsmccs> getByOtaId(String otaId) {
if(org.apache.commons.lang3.StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxKsjjsmccs> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<OtaBaCxKsjjsmccs> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxKsjjsmccs::getOtaId, otaId); queryWrapper.eq(OtaBaCxKsjjsmccs::getOtaId, otaId);
return this.list(queryWrapper); return this.list(queryWrapper);
@@ -193,6 +193,9 @@ public class OtaBaCxKsjxtmccsServiceImpl extends ServiceImpl<OtaBaCxKsjxtmccsMap
} }
private List<OtaBaCxKsjxtmccs> getByOtaId(String otaId) { private List<OtaBaCxKsjxtmccs> getByOtaId(String otaId) {
if(org.apache.commons.lang3.StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxKsjxtmccs> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<OtaBaCxKsjxtmccs> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxKsjxtmccs::getOtaId, otaId); queryWrapper.eq(OtaBaCxKsjxtmccs::getOtaId, otaId);
return this.list(queryWrapper); return this.list(queryWrapper);
@@ -127,6 +127,9 @@ public class OtaBaCxQtServiceImpl extends ServiceImpl<OtaBaCxQtMapper, OtaBaCxQt
} }
public OtaBaCxQt getByOtaId(String otaId) { public OtaBaCxQt getByOtaId(String otaId) {
if(org.apache.commons.lang3.StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxQt> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<OtaBaCxQt> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxQt::getOtaId, otaId); queryWrapper.eq(OtaBaCxQt::getOtaId, otaId);
return this.getOne(queryWrapper, false); return this.getOne(queryWrapper, false);
@@ -1,89 +1,141 @@
package com.jero.modules.ota.service.impl; package com.jero.modules.ota.service.impl;
import com.jero.modules.ota.entity.OtaBaSjSjmbcl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.jero.modules.ota.entity.*;
import com.jero.modules.ota.enums.OtaModuleEnum;
import com.jero.modules.ota.mapper.OtaBaSjSjmbclMapper; import com.jero.modules.ota.mapper.OtaBaSjSjmbclMapper;
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
import com.jero.modules.ota.service.IOtaBaSjListService;
import com.jero.modules.ota.service.IOtaBaSjLsjlService;
import com.jero.modules.ota.service.IOtaBaSjSjmbclService; import com.jero.modules.ota.service.IOtaBaSjSjmbclService;
import com.jero.modules.ota.utils.ComparisonUtil;
import com.jero.modules.system.service.ISysDictService;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
import java.util.Date; import java.util.Date;
import java.util.UUID;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/** /**
* @Description: 升级备案-升级目标车辆 * @Description: 升级备案-升级目标车辆
* @Author: jero-boot * @Author: jero-boot
* @Date: 2023-03-17 * @Date: 2023-03-17
* @Version: V1.0 * @Version: V1.0
*/ */
@Service @Service
public class OtaBaSjSjmbclServiceImpl extends ServiceImpl<OtaBaSjSjmbclMapper, OtaBaSjSjmbcl> implements IOtaBaSjSjmbclService { public class OtaBaSjSjmbclServiceImpl extends ServiceImpl<OtaBaSjSjmbclMapper, OtaBaSjSjmbcl> implements IOtaBaSjSjmbclService {
/**
* 保存 @Autowired
* private ISysDictService sysDictService;
* @param otaBaSjSjmbcl
* @return @Autowired
*/ private IOtaBaCxTxjlService otaBaCxTxjlService;
@Override
/**
* 保存
*
* @param otaBaSjSjmbcl
* @return
*/
@Override
public void add(OtaBaSjSjmbcl otaBaSjSjmbcl) { public void add(OtaBaSjSjmbcl otaBaSjSjmbcl) {
Date now = new Date(); Date now = new Date();
otaBaSjSjmbcl.setCreateTime(now); if (null != otaBaSjSjmbcl) {
otaBaSjSjmbcl.setUpdateTime(now); OtaBaSjSjmbcl otaBaSjSjmbclOld = this.getByOtaId(otaBaSjSjmbcl.getOtaId());
save(otaBaSjSjmbcl); if (null != otaBaSjSjmbclOld) {
otaBaSjSjmbcl.setId(otaBaSjSjmbclOld.getId());
} else {
otaBaSjSjmbcl.setCreateTime(now);
}
otaBaSjSjmbcl.setUpdateTime(now);
saveOrUpdate(otaBaSjSjmbcl);
ComparisonUtil cu = new ComparisonUtil();
if (ObjectUtils.isEmpty(otaBaSjSjmbclOld)) {
otaBaSjSjmbclOld = new OtaBaSjSjmbcl();
}
List<OtaBaCxTxjl> reList = cu.comparisonRecord(otaBaSjSjmbcl.getOtaId(), OtaModuleEnum.CX_AQCS, otaBaSjSjmbclOld, otaBaSjSjmbcl, sysDictService);
otaBaCxTxjlService.saveBatch(reList);
}
} }
/** /**
* 更新 * 更新
* *
* @param otaBaSjSjmbcl * @param otaBaSjSjmbcl
* @return * @return
*/ */
@Override @Override
public void editById(OtaBaSjSjmbcl otaBaSjSjmbcl) { public void editById(OtaBaSjSjmbcl otaBaSjSjmbcl) {
Date now = new Date(); Date now = new Date();
otaBaSjSjmbcl.setUpdateTime(now); otaBaSjSjmbcl.setUpdateTime(now);
saveOrUpdate(otaBaSjSjmbcl); saveOrUpdate(otaBaSjSjmbcl);
} }
/** /**
* 通过id删除 * 通过id删除
* *
* @param id * @param id
* @return * @return
*/ */
@Override @Override
public void deleteById(String id) { public void deleteById(String id) {
removeById(id); removeById(id);
} }
/** /**
* 批量删除 * 批量删除
* *
* @param ids * @param ids
* @return * @return
*/ */
@Override @Override
public void deleteByIds(List<String> ids) { public void deleteByIds(List<String> ids) {
removeByIds(ids); removeByIds(ids);
} }
/** /**
* 通过id查询 * 通过id查询
* *
* @param id * @param id
* @return * @return
*/ */
@Override @Override
public OtaBaSjSjmbcl queryById(String id) { public OtaBaSjSjmbcl queryById(String id) {
return getById(id); return getById(id);
} }
/** /**
* 列表查询 * 列表查询
* *
* @return * @return
*/ */
@Override @Override
public List<OtaBaSjSjmbcl> queryList() { public List<OtaBaSjSjmbcl> queryList() {
return list(); return list();
} }
@Override
public OtaBaSjSjmbcl queryByOtaId(String otaId, String otaIdT) {
//判断是否保存过,否则查询模版数据回显
OtaBaSjSjmbcl res = getByOtaId(otaId);
if (ObjectUtils.isEmpty(res)) {
res = getByOtaId(otaIdT);
}
return res;
}
private OtaBaSjSjmbcl getByOtaId(String otaId) {
if(StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaSjSjmbcl> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaSjSjmbcl::getOtaId, otaId);
return this.getOne(queryWrapper, false);
}
} }
@@ -1,89 +1,149 @@
package com.jero.modules.ota.service.impl; package com.jero.modules.ota.service.impl;
import com.jero.modules.ota.entity.OtaBaSjSjmbcx; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.jero.modules.ota.entity.*;
import com.jero.modules.ota.enums.OtaModuleEnum;
import com.jero.modules.ota.mapper.OtaBaSjSjmbcxMapper; import com.jero.modules.ota.mapper.OtaBaSjSjmbcxMapper;
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
import com.jero.modules.ota.service.IOtaBaSjListService;
import com.jero.modules.ota.service.IOtaBaSjSjmbcxService; import com.jero.modules.ota.service.IOtaBaSjSjmbcxService;
import com.jero.modules.ota.utils.ComparisonUtil;
import com.jero.modules.system.service.ISysDictService;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
import java.util.Date; import java.util.Date;
import java.util.UUID;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/** /**
* @Description: 升级备案-升级目标车型 * @Description: 升级备案-升级目标车型
* @Author: jero-boot * @Author: jero-boot
* @Date: 2023-03-17 * @Date: 2023-03-17
* @Version: V1.0 * @Version: V1.0
*/ */
@Service @Service
public class OtaBaSjSjmbcxServiceImpl extends ServiceImpl<OtaBaSjSjmbcxMapper, OtaBaSjSjmbcx> implements IOtaBaSjSjmbcxService { public class OtaBaSjSjmbcxServiceImpl extends ServiceImpl<OtaBaSjSjmbcxMapper, OtaBaSjSjmbcx> implements IOtaBaSjSjmbcxService {
/** @Autowired
* 保存 private IOtaBaSjListService otaBaSjListService;
*
* @param otaBaSjSjmbcx @Autowired
* @return private ISysDictService sysDictService;
*/
@Override @Autowired
public void add(OtaBaSjSjmbcx otaBaSjSjmbcx) { private IOtaBaCxTxjlService otaBaCxTxjlService;
/**
* 保存
*
* @param otaBaSjSjmbcx
* @return
*/
@Override
public OtaBaSjSjmbcx add(OtaBaSjSjmbcx otaBaSjSjmbcx) {
//对比填写记录用的
OtaBaSjSjmbcx otaBaSjSjmbcxOld = new OtaBaSjSjmbcx();
Date now = new Date(); Date now = new Date();
otaBaSjSjmbcx.setCreateTime(now); OtaBaSjList otaBaSjList;
if (StringUtils.isEmpty(otaBaSjSjmbcx.getOtaId())) {
//在保存的时候设置一个id 并返回前端 下次保存的时候判断是否为更新
otaBaSjList = new OtaBaSjList();
otaBaSjList.setId(UUID.randomUUID().toString().replace("-", ""));
otaBaSjList.updateData(otaBaSjSjmbcx);
otaBaSjListService.add(otaBaSjList);
otaBaSjSjmbcx.setOtaId(otaBaSjList.getId());
otaBaSjSjmbcx.setCreateTime(now);
} else {
otaBaSjSjmbcxOld = this.getByOtaId(otaBaSjSjmbcx.getOtaId());
otaBaSjList = otaBaSjListService.queryById(otaBaSjSjmbcx.getOtaId());
otaBaSjList.updateData(otaBaSjSjmbcx);
otaBaSjListService.editById(otaBaSjList);
}
otaBaSjSjmbcx.setUpdateTime(now); otaBaSjSjmbcx.setUpdateTime(now);
save(otaBaSjSjmbcx); saveOrUpdate(otaBaSjSjmbcx);
ComparisonUtil cu = new ComparisonUtil();
List<OtaBaCxTxjl> reList = cu.comparisonRecord(otaBaSjSjmbcx.getOtaId(), OtaModuleEnum.SJ_SJMBCX, otaBaSjSjmbcxOld, otaBaSjSjmbcx, sysDictService);
otaBaCxTxjlService.saveBatch(reList);
return otaBaSjSjmbcx;
} }
/** /**
* 更新 * 更新
* *
* @param otaBaSjSjmbcx * @param otaBaSjSjmbcx
* @return * @return
*/ */
@Override @Override
public void editById(OtaBaSjSjmbcx otaBaSjSjmbcx) { public void editById(OtaBaSjSjmbcx otaBaSjSjmbcx) {
Date now = new Date(); Date now = new Date();
otaBaSjSjmbcx.setUpdateTime(now); otaBaSjSjmbcx.setUpdateTime(now);
saveOrUpdate(otaBaSjSjmbcx); saveOrUpdate(otaBaSjSjmbcx);
} }
/** /**
* 通过id删除 * 通过id删除
* *
* @param id * @param id
* @return * @return
*/ */
@Override @Override
public void deleteById(String id) { public void deleteById(String id) {
removeById(id); removeById(id);
} }
/** /**
* 批量删除 * 批量删除
* *
* @param ids * @param ids
* @return * @return
*/ */
@Override @Override
public void deleteByIds(List<String> ids) { public void deleteByIds(List<String> ids) {
removeByIds(ids); removeByIds(ids);
} }
/** /**
* 通过id查询 * 通过id查询
* *
* @param id * @param id
* @return * @return
*/ */
@Override @Override
public OtaBaSjSjmbcx queryById(String id) { public OtaBaSjSjmbcx queryById(String id) {
return getById(id); return getById(id);
} }
/** /**
* 列表查询 * 列表查询
* *
* @return * @return
*/ */
@Override @Override
public List<OtaBaSjSjmbcx> queryList() { public List<OtaBaSjSjmbcx> queryList() {
return list(); return list();
} }
@Override
public OtaBaSjSjmbcx queryByOtaId(String otaId, String otaIdT) {
//判断是否保存过,否则查询模版数据回显
OtaBaSjSjmbcx res = getByOtaId(otaId);
if (ObjectUtils.isEmpty(res)) {
res = getByOtaId(otaIdT);
}
return res;
}
private OtaBaSjSjmbcx getByOtaId(String otaId) {
if(org.apache.commons.lang3.StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaSjSjmbcx> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaSjSjmbcx::getOtaId, otaId);
return this.getOne(queryWrapper, false);
}
} }
@@ -1,89 +1,138 @@
package com.jero.modules.ota.service.impl; package com.jero.modules.ota.service.impl;
import com.jero.modules.ota.entity.OtaBaSjSjyxpg; import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.jero.modules.ota.entity.*;
import com.jero.modules.ota.enums.OtaModuleEnum;
import com.jero.modules.ota.mapper.OtaBaSjSjyxpgMapper; import com.jero.modules.ota.mapper.OtaBaSjSjyxpgMapper;
import com.jero.modules.ota.service.IOtaBaCxTxjlService;
import com.jero.modules.ota.service.IOtaBaSjSjyxpgService; import com.jero.modules.ota.service.IOtaBaSjSjyxpgService;
import com.jero.modules.ota.utils.ComparisonUtil;
import com.jero.modules.system.service.ISysDictService;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/** /**
* @Description: 升级备案-升级影响评估 * @Description: 升级备案-升级影响评估
* @Author: jero-boot * @Author: jero-boot
* @Date: 2023-03-17 * @Date: 2023-03-17
* @Version: V1.0 * @Version: V1.0
*/ */
@Service @Service
public class OtaBaSjSjyxpgServiceImpl extends ServiceImpl<OtaBaSjSjyxpgMapper, OtaBaSjSjyxpg> implements IOtaBaSjSjyxpgService { public class OtaBaSjSjyxpgServiceImpl extends ServiceImpl<OtaBaSjSjyxpgMapper, OtaBaSjSjyxpg> implements IOtaBaSjSjyxpgService {
/**
* 保存 @Autowired
* private ISysDictService sysDictService;
* @param otaBaSjSjyxpg
* @return @Autowired
*/ private IOtaBaCxTxjlService otaBaCxTxjlService;
@Override
/**
* 保存
*
* @param otaBaSjSjyxpg
* @return
*/
@Override
public void add(OtaBaSjSjyxpg otaBaSjSjyxpg) { public void add(OtaBaSjSjyxpg otaBaSjSjyxpg) {
Date now = new Date(); Date now = new Date();
otaBaSjSjyxpg.setCreateTime(now); if (null != otaBaSjSjyxpg) {
otaBaSjSjyxpg.setUpdateTime(now); OtaBaSjSjyxpg otaBaSjSjyxpgOld = this.getByOtaId(otaBaSjSjyxpg.getOtaId());
save(otaBaSjSjyxpg); if (null != otaBaSjSjyxpgOld) {
otaBaSjSjyxpg.setId(otaBaSjSjyxpgOld.getId());
} else {
otaBaSjSjyxpg.setCreateTime(now);
}
otaBaSjSjyxpg.setUpdateTime(now);
saveOrUpdate(otaBaSjSjyxpg);
ComparisonUtil cu = new ComparisonUtil();
if (ObjectUtils.isEmpty(otaBaSjSjyxpgOld)) {
otaBaSjSjyxpgOld = new OtaBaSjSjyxpg();
}
List<OtaBaCxTxjl> reList = cu.comparisonRecord(otaBaSjSjyxpg.getOtaId(), OtaModuleEnum.SJ_SJYXPG, otaBaSjSjyxpgOld, otaBaSjSjyxpg, sysDictService);
otaBaCxTxjlService.saveBatch(reList);
}
} }
/** /**
* 更新 * 更新
* *
* @param otaBaSjSjyxpg * @param otaBaSjSjyxpg
* @return * @return
*/ */
@Override @Override
public void editById(OtaBaSjSjyxpg otaBaSjSjyxpg) { public void editById(OtaBaSjSjyxpg otaBaSjSjyxpg) {
Date now = new Date(); Date now = new Date();
otaBaSjSjyxpg.setUpdateTime(now); otaBaSjSjyxpg.setUpdateTime(now);
saveOrUpdate(otaBaSjSjyxpg); saveOrUpdate(otaBaSjSjyxpg);
} }
/** /**
* 通过id删除 * 通过id删除
* *
* @param id * @param id
* @return * @return
*/ */
@Override @Override
public void deleteById(String id) { public void deleteById(String id) {
removeById(id); removeById(id);
} }
/** /**
* 批量删除 * 批量删除
* *
* @param ids * @param ids
* @return * @return
*/ */
@Override @Override
public void deleteByIds(List<String> ids) { public void deleteByIds(List<String> ids) {
removeByIds(ids); removeByIds(ids);
} }
/** /**
* 通过id查询 * 通过id查询
* *
* @param id * @param id
* @return * @return
*/ */
@Override @Override
public OtaBaSjSjyxpg queryById(String id) { public OtaBaSjSjyxpg queryById(String id) {
return getById(id); return getById(id);
} }
/** /**
* 列表查询 * 列表查询
* *
* @return * @return
*/ */
@Override @Override
public List<OtaBaSjSjyxpg> queryList() { public List<OtaBaSjSjyxpg> queryList() {
return list(); return list();
} }
@Override
public OtaBaSjSjyxpg queryByOtaId(String otaId, String otaIdT) {
OtaBaSjSjyxpg res = getByOtaId(otaId);
if (ObjectUtils.isEmpty(res)) {
res = getByOtaId(otaIdT);
}
return res;
}
private OtaBaSjSjyxpg getByOtaId(String otaId) {
if(org.apache.commons.lang3.StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaSjSjyxpg> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaSjSjyxpg::getOtaId, otaId);
return this.getOne(queryWrapper, false);
}
} }
@@ -1,89 +0,0 @@
package com.jero.modules.ota.service.impl;
import com.jero.modules.ota.entity.OtaBaSjTxjl;
import com.jero.modules.ota.mapper.OtaBaSjTxjlMapper;
import com.jero.modules.ota.service.IOtaBaSjTxjlService;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Date;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: 车型升级-填写记录表
* @Author: jero-boot
* @Date: 2023-03-25
* @Version: V1.0
*/
@Service
public class OtaBaSjTxjlServiceImpl extends ServiceImpl<OtaBaSjTxjlMapper, OtaBaSjTxjl> implements IOtaBaSjTxjlService {
/**
* 保存
*
* @param otaBaSjTxjl
* @return
*/
@Override
public void add(OtaBaSjTxjl otaBaSjTxjl) {
Date now = new Date();
otaBaSjTxjl.setCreateTime(now);
otaBaSjTxjl.setUpdateTime(now);
save(otaBaSjTxjl);
}
/**
* 更新
*
* @param otaBaSjTxjl
* @return
*/
@Override
public void editById(OtaBaSjTxjl otaBaSjTxjl) {
Date now = new Date();
otaBaSjTxjl.setUpdateTime(now);
saveOrUpdate(otaBaSjTxjl);
}
/**
* 通过id删除
*
* @param id
* @return
*/
@Override
public void deleteById(String id) {
removeById(id);
}
/**
* 批量删除
*
* @param ids
* @return
*/
@Override
public void deleteByIds(List<String> ids) {
removeByIds(ids);
}
/**
* 通过id查询
*
* @param id
* @return
*/
@Override
public OtaBaSjTxjl queryById(String id) {
return getById(id);
}
/**
* 列表查询
*
* @return
*/
@Override
public List<OtaBaSjTxjl> queryList() {
return list();
}
}
+4
View File
@@ -894,6 +894,7 @@ module.exports = {
designComplianceReview: 'Design Compliance Confirmation', designComplianceReview: 'Design Compliance Confirmation',
preHomeConfirmation: 'Pre-Homo Confirmation', preHomeConfirmation: 'Pre-Homo Confirmation',
verificationComplianceReview: 'Validation Compliance Confirmation', verificationComplianceReview: 'Validation Compliance Confirmation',
verificationComplianceExamine:'Verification compliance examine',
Deployment: 'Deploy', Deployment: 'Deploy',
pleaseDesignConformityConfirmation: 'Please complete the data of design conformity confirmation', pleaseDesignConformityConfirmation: 'Please complete the data of design conformity confirmation',
pleaseConfirmedByPrehomo: 'Please complete the data confirmed by Pre-Homo', pleaseConfirmedByPrehomo: 'Please complete the data confirmed by Pre-Homo',
@@ -1727,4 +1728,7 @@ module.exports = {
notetwo:'\n1. Provide the modified or expanded batch of "Announcement" and supporting materials;\n2. Verification materials shall be submitted to ensure that products meet the relevant requirements of national laws and regulations, technologies, standards and technical specifications;\n', notetwo:'\n1. Provide the modified or expanded batch of "Announcement" and supporting materials;\n2. Verification materials shall be submitted to ensure that products meet the relevant requirements of national laws and regulations, technologies, standards and technical specifications;\n',
notethree:'Provide supporting materials', notethree:'Provide supporting materials',
verifyComplianceConfirmReturnReason:'Verify compliance Confirm return reason', verifyComplianceConfirmReturnReason:'Verify compliance Confirm return reason',
theDeliverablesCannotReferencedPleaseReselect:'The deliverables of this project cannot be referenced, please reselect',
regulationListModuleMaintenance:'Regulation list module maintenance',
regulationListModule:'Regulation list module',
} }
+4
View File
@@ -910,6 +910,7 @@ module.exports = {
designComplianceReview: '设计符合性确认', designComplianceReview: '设计符合性确认',
preHomeConfirmation: 'Pre-Homo确认', preHomeConfirmation: 'Pre-Homo确认',
verificationComplianceReview: '验证符合性确认', verificationComplianceReview: '验证符合性确认',
verificationComplianceExamine:'验证符合性审查',
pleaseDesignConformityConfirmation: '请补全设计符合性确认的数据', pleaseDesignConformityConfirmation: '请补全设计符合性确认的数据',
pleaseConfirmedByPrehomo: '请补全 Pre-Homo确认的数据', pleaseConfirmedByPrehomo: '请补全 Pre-Homo确认的数据',
pleaseConformityVerification: '请补全验证符合性确认的数据', pleaseConformityVerification: '请补全验证符合性确认的数据',
@@ -1829,4 +1830,7 @@ module.exports = {
notetwo:'\n1提供变更或扩展后的公告批次及证明材料;\n2应提交验证材料保障产品符合国家法律法规技术标准及技术规范等相关要求;\n', notetwo:'\n1提供变更或扩展后的公告批次及证明材料;\n2应提交验证材料保障产品符合国家法律法规技术标准及技术规范等相关要求;\n',
notethree:'\n提供证明材料\n', notethree:'\n提供证明材料\n',
verifyComplianceConfirmReturnReason:'验证符合性确认退回原因', verifyComplianceConfirmReturnReason:'验证符合性确认退回原因',
theDeliverablesCannotReferencedPleaseReselect:'不能引用本项目的交付物请重新选择',
regulationListModuleMaintenance:'法规清单模块维护',
regulationListModule:'法规清单模块',
} }
@@ -1106,7 +1106,7 @@
} }
.selectWid { .selectWid {
min-width: 150px; /*min-width: 150px;*/
width: 100%; width: 100%;
} }
@@ -980,7 +980,7 @@
} }
.selectWid { .selectWid {
min-width: 150px; /*min-width: 150px;*/
width: 100%; width: 100%;
} }
+11 -4
View File
@@ -67,7 +67,8 @@
departId: '', departId: '',
defaultExpandedKeys: [], defaultExpandedKeys: [],
submitLoading: false, submitLoading: false,
visibleTree: false visibleTree: false,
userName: []
} }
}, },
mounted() { mounted() {
@@ -110,7 +111,7 @@
} }
if (this.userIds && this.userIds.length > 0) { if (this.userIds && this.userIds.length > 0) {
this.submitLoading = true this.submitLoading = true
this.$emit('SelectedByForm', this.userIds.join(',')) this.$emit('SelectedByForm', this.userIds.join(','),this.userName.join(','))
} else { } else {
this.$message.warning(this.$t('selectLeastOne')) this.$message.warning(this.$t('selectLeastOne'))
} }
@@ -142,7 +143,7 @@
postAction('sys/user/queryDepartUserTreeList', { postAction('sys/user/queryDepartUserTreeList', {
departId: this.departId, departId: this.departId,
json: gData, json: gData,
flag:'1' flag: '1'
}).then((res) => { }).then((res) => {
this.confirmLoading = false this.confirmLoading = false
if (res.success) { if (res.success) {
@@ -155,8 +156,14 @@
} }
}) })
}, },
checkChange(e) { checkChange(e, name) {
this.userName = []
this.userIds = e this.userIds = e
if (name.checkedNodes && name.checkedNodes.length > 0) {
name.checkedNodes.forEach(res => {
this.userName.push(res.data.props.dataRef.title)
})
}
} }
} }
} }
@@ -8,7 +8,7 @@
rowKey="id" rowKey="id"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
:pagination="false" :pagination="false"
:scroll="{x: '100%',y:'calc(100vh - 330px)'}" :scroll="this.dataSource.length > 1 ? {x: '100%',y:'calc(100vh - 330px)'} : {x: '100%'}"
:data-source="dataSource" :data-source="dataSource"
:loading="loading" :loading="loading"
@change="tableOnChange" @change="tableOnChange"
+5 -5
View File
@@ -133,7 +133,7 @@
// } // }
// } // }
// } // }
this.$message.destroy() // this.$message.destroy()
}, },
remove() { remove() {
this.fileTypeSatus = true this.fileTypeSatus = true
@@ -153,7 +153,7 @@
}) })
if (status === 'error') { if (status === 'error') {
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
this.$message.destroy() // this.$message.destroy()
this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed')) this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed'))
} else if (status === 'removed') { } else if (status === 'removed') {
this.myfileList = info.fileList this.myfileList = info.fileList
@@ -167,7 +167,7 @@
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) { if (this.myfileList.length > 0) {
this.$message.destroy() // this.$message.destroy()
this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully')) this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully'))
} }
} else if (status === 'done') { } else if (status === 'done') {
@@ -184,7 +184,7 @@
} }
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
this.$message.destroy() // this.$message.destroy()
this.$message.error(this.$t('UploadMost')) this.$message.error(this.$t('UploadMost'))
return return
} }
@@ -197,7 +197,7 @@
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) { if (this.myfileList.length > 0) {
this.$message.destroy() // this.$message.destroy()
if (file.response.success) { if (file.response.success) {
this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully')) this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully'))
} }
@@ -109,7 +109,7 @@
// this.fileTypeSatus = false; // this.fileTypeSatus = false;
// } // }
// } // }
this.$message.destroy() // this.$message.destroy()
}, },
remove() { remove() {
this.fileTypeSatus = true this.fileTypeSatus = true
@@ -133,7 +133,7 @@
}) })
if (status === 'error') { if (status === 'error') {
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
this.$message.destroy() // this.$message.destroy()
this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed')) this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed'))
} else if (status === 'removed') { } else if (status === 'removed') {
this.myfileList = info.fileList this.myfileList = info.fileList
@@ -147,7 +147,7 @@
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) { if (this.myfileList.length > 0) {
this.$message.destroy() // this.$message.destroy()
this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully')) this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully'))
} }
} else if (status === 'done') { } else if (status === 'done') {
@@ -164,7 +164,7 @@
} }
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
this.$message.destroy() // this.$message.destroy()
this.$message.error(this.$t('UploadMost')) this.$message.error(this.$t('UploadMost'))
return return
} }
@@ -177,7 +177,7 @@
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) { if (this.myfileList.length > 0) {
this.$message.destroy() // this.$message.destroy()
if (file.response.success) { if (file.response.success) {
this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully')) this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully'))
} }
@@ -135,7 +135,7 @@ import { mapGetters } from 'vuex'
// this.fileTypeSatus = false; // this.fileTypeSatus = false;
// } // }
// } // }
this.$message.destroy() // this.$message.destroy()
}, },
remove() { remove() {
this.fileTypeSatus = true this.fileTypeSatus = true
@@ -159,7 +159,7 @@ import { mapGetters } from 'vuex'
}) })
if (status === 'error') { if (status === 'error') {
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
this.$message.destroy() // this.$message.destroy()
this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed')) this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed'))
} else if (status === 'removed') { } else if (status === 'removed') {
this.myfileList = info.fileList this.myfileList = info.fileList
@@ -173,7 +173,7 @@ import { mapGetters } from 'vuex'
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) { if (this.myfileList.length > 0) {
this.$message.destroy() // this.$message.destroy()
this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully')) this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully'))
} }
} else if (status === 'done') { } else if (status === 'done') {
@@ -190,7 +190,7 @@ import { mapGetters } from 'vuex'
} }
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
this.$message.destroy() // this.$message.destroy()
this.$message.error(this.$t('UploadMost')) this.$message.error(this.$t('UploadMost'))
return return
} }
@@ -203,7 +203,7 @@ import { mapGetters } from 'vuex'
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) { if (this.myfileList.length > 0) {
this.$message.destroy() // this.$message.destroy()
if (file.response.success) { if (file.response.success) {
this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully')) this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully'))
} }
@@ -132,7 +132,7 @@
// this.fileTypeSatus = false; // this.fileTypeSatus = false;
// } // }
// } // }
this.$message.destroy() // this.$message.destroy()
}, },
remove() { remove() {
this.fileTypeSatus = true this.fileTypeSatus = true
@@ -152,7 +152,7 @@
}) })
if (status === 'error') { if (status === 'error') {
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
this.$message.destroy() // this.$message.destroy()
this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed')) this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed'))
} else if (status === 'removed') { } else if (status === 'removed') {
this.myfileList = info.fileList this.myfileList = info.fileList
@@ -166,7 +166,7 @@
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) { if (this.myfileList.length > 0) {
this.$message.destroy() // this.$message.destroy()
this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully')) this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully'))
} }
} else if (status === 'done') { } else if (status === 'done') {
@@ -183,7 +183,7 @@
} }
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
this.$message.destroy() // this.$message.destroy()
this.$message.error(this.$t('UploadMost')) this.$message.error(this.$t('UploadMost'))
return return
} }
@@ -196,7 +196,7 @@
}) })
this.$emit('uploadSuccess', this.fileList) this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) { if (this.myfileList.length > 0) {
this.$message.destroy() // this.$message.destroy()
if (file.response.success) { if (file.response.success) {
this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully')) this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully'))
} }
@@ -6,7 +6,7 @@
<!-- <a-icon @click="iconClick" type="arrow-left" style="margin-right: 6px;font-size: 26px;"/>--> <!-- <a-icon @click="iconClick" type="arrow-left" style="margin-right: 6px;font-size: 26px;"/>-->
<!-- </span>--> <!-- </span>-->
<span> <span>
{{isTrue ? $t('maintainVirtualList'):$t('virtualListDetails')}} {{isTrue ? $t('regulationListModuleMaintenance'):$t('regulationListModuleMaintenance')}}
</span> </span>
</div> </div>
<div class="Virtual-detail-right"> <div class="Virtual-detail-right">
@@ -23,8 +23,8 @@
<div class="Virtual-detail-content"> <div class="Virtual-detail-content">
<div class="box-title-text-add"> <div class="box-title-text-add">
<div class="title-text-add"> <div class="title-text-add">
<span class="text-left" :title="$t('VirtualListName')"> <span class="text-left" :title="$t('regulationListModule')">
{{$t('VirtualListName')}} {{$t('regulationListModule')}}
</span> </span>
<span class="text-right" style="margin-right: 100px" :title="$route.query.name"> <span class="text-right" style="margin-right: 100px" :title="$route.query.name">
{{$route.query.name}} {{$route.query.name}}
@@ -20,6 +20,7 @@
</div> </div>
<a-form-model-item class="itemModel" prop="bazt"> <a-form-model-item class="itemModel" prop="bazt">
<j-dict-select-tag class="box-input" v-model="formInline.bazt" <j-dict-select-tag class="box-input" v-model="formInline.bazt"
@input="selectchange"
:placeholder="$t('PleaseSelect')+$t('recordstatus')" :placeholder="$t('PleaseSelect')+$t('recordstatus')"
:type="'select'" :type="'select'"
:triggerChange="false" :dictCode="'recordstatus'"/> :triggerChange="false" :dictCode="'recordstatus'"/>
@@ -77,7 +78,7 @@ export default {
visible: false, visible: false,
confirmLoading: false, confirmLoading: false,
formInline: { formInline: {
bazt:'', bazt:undefined,
batjsj:'', batjsj:'',
bz:'', bz:'',
}, },
@@ -196,6 +197,12 @@ export default {
} }
}) })
}, },
selectchange(value){
this.$nextTick(() => {
this.formInline = { ...this.formInline }
this.$refs.ruleForm.validateField('bazt')
})
},
handleCancel() { handleCancel() {
this.formInline = { this.formInline = {
bazt:undefined, bazt:undefined,
@@ -13,13 +13,13 @@
<a-spin :spinning="confirmLoading"> <a-spin :spinning="confirmLoading">
<a-form-model :model="formInline" :rules="rules" ref="ruleForm"> <a-form-model :model="formInline" :rules="rules" ref="ruleForm">
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :span="24"> <a-col :span="20">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text"> <div class="title-text">
<span class="title-text-text" :title="$t ('implementedupgrade')">{{$t('implementedupgrade')}}</span> <span class="title-text-text" :title="$t ('implementedupgrade')">{{$t('implementedupgrade')}}</span>
</div> </div>
<a-form-model-item class="itemModel" prop="implementedupgrade"> <a-form-model-item class="itemModel" prop="implementedupgrade">
<a-radio-group style="margin-top: 2px" class="box-input" v-model="formInline.implementedupgrade"> <a-radio-group style="margin-top: 2px" class="box-input" v-model="formInline.implementedupgrade" :disabled="disabled">
<a-radio value="0"> <a-radio value="0">
{{$t('yes')}} {{$t('yes')}}
</a-radio> </a-radio>
@@ -27,16 +27,13 @@
{{$t('not')}} {{$t('not')}}
</a-radio> </a-radio>
</a-radio-group> </a-radio-group>
<!-- <j-dict-select-tag class="box-input"-->
<!-- :disabled="disabled"-->
<!-- @input="handleInput('implementedupgrade')"-->
<!-- v-model="formInline.implementedupgrade"-->
<!-- :placeholder="$t('PleaseSelect')+$t('implementedupgrade')"-->
<!-- :type="'select'"-->
<!-- :triggerChange="false" :dictCode="'duty_territory'"/>-->
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
<a-col :span="4" v-if="showButton">
<a-button type="primary" @click="isEdit">编辑</a-button>
</a-col>
</a-row> </a-row>
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :span="24"> <a-col :span="24">
@@ -61,6 +58,7 @@
</div> </div>
<a-form-model-item class="itemModel" prop="VINcodelist"> <a-form-model-item class="itemModel" prop="VINcodelist">
<a-button type="primary" class="button-text" <a-button type="primary" class="button-text"
:disabled="disabled"
@click="clickButtonToUpload('VINcodelist')"> @click="clickButtonToUpload('VINcodelist')">
{{ (formInline.VINcodelist === 'null' || formInline.VINcodelist === '' || {{ (formInline.VINcodelist === 'null' || formInline.VINcodelist === '' ||
formInline.VINcodelist == null) ? $t('clickUpload') : $t('viewUploadedFiles') formInline.VINcodelist == null) ? $t('clickUpload') : $t('viewUploadedFiles')
@@ -76,7 +74,7 @@
{{$t('vehicleshavenotcompletedonlineupgrade')}} {{$t('vehicleshavenotcompletedonlineupgrade')}}
<a-icon class="icon-text" @click="addClick(index)" type="plus-circle"/> <a-icon class="icon-text" @click="addClick(index)" type="plus-circle"/>
<a-icon class="icon-text" v-if="formInline.dataList.length > 1" @click="deleteClick(index)" <a-icon class="icon-text" v-if="formInline.dataList.length > 1" @click="deleteClick(index)"
type="minus-circle"/> type="minus-circle" :disabled="disabled"/>
</div> </div>
<div style='margin-left: 25px'> <div style='margin-left: 25px'>
<a-row :gutter="24"> <a-row :gutter="24">
@@ -87,6 +85,7 @@
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled"
v-model="item.cause" v-model="item.cause"
:placeholder="$t('PleaseEnter')+$t('cause')"/> :placeholder="$t('PleaseEnter')+$t('cause')"/>
</a-form-model-item> </a-form-model-item>
@@ -102,6 +101,7 @@
<!-- {max: 300,message: $t('inspectionItems') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'}]"--> <!-- {max: 300,message: $t('inspectionItems') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'}]"-->
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled"
v-model="item.Quantity" v-model="item.Quantity"
:placeholder="$t('PleaseEnter')+$t('Quantity')"/> :placeholder="$t('PleaseEnter')+$t('Quantity')"/>
</a-form-model-item> </a-form-model-item>
@@ -119,6 +119,7 @@
<!-- {max: 300,message: $t('inspectionItems') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'}]"--> <!-- {max: 300,message: $t('inspectionItems') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'}]"-->
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-button type="primary" class="button-text" <a-button type="primary" class="button-text"
:disabled="disabled"
@click="clickButtonToUpload('VINcodelist')"> @click="clickButtonToUpload('VINcodelist')">
{{ (formInline.VINcodelist === 'null' || formInline.VINcodelist === '' || {{ (formInline.VINcodelist === 'null' || formInline.VINcodelist === '' ||
formInline.VINcodelist == null) ? $t('clickUpload') : $t('viewUploadedFiles') formInline.VINcodelist == null) ? $t('clickUpload') : $t('viewUploadedFiles')
@@ -140,6 +141,7 @@
</div> </div>
<a-form-model-item class="itemModel" prop="implementationrecords"> <a-form-model-item class="itemModel" prop="implementationrecords">
<a-textarea :placeholder="$t('pleaseEnter')+$t('implementationrecords')" <a-textarea :placeholder="$t('pleaseEnter')+$t('implementationrecords')"
:disabled="disabled"
:rows="2" v-model="formInline.remarks"/> :rows="2" v-model="formInline.remarks"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -182,7 +184,6 @@ import { mapGetters } from 'vuex'
export default { export default {
name:"addModel", name:"addModel",
props: ['url'],
components:{ components:{
uploadFile uploadFile
}, },
@@ -190,6 +191,7 @@ export default {
return { return {
visible: false, visible: false,
disabled: false, disabled: false,
showButton:false,
formInline: {}, formInline: {},
confirmLoading: false, confirmLoading: false,
acceptcode:'', acceptcode:'',
@@ -223,6 +225,10 @@ export default {
} }
], ],
}, },
url:{
addModel:''
},
record:{}
} }
}, },
mounted() { mounted() {
@@ -230,14 +236,19 @@ export default {
}, },
methods: { methods: {
...mapGetters(['userInfo']), ...mapGetters(['userInfo']),
addModel() { addModel(record,flag) {
if(flag=='1'){
this.disabled=true
this.showButton=true
}
this.record=record
this.visible = true this.visible = true
this.formInline = {} this.formInline = {}
this.formInline.dataList = [{}] this.formInline.dataList = [{}]
this.$nextTick(() => { this.$nextTick(() => {
this.formInline = { ...this.formInline } this.formInline = { ...this.formInline }
this.$refs.ruleForm.clearValidate() this.$refs.ruleForm.clearValidate()
this.$refs.codeNumber.number() // this.$refs.codeNumber.number()
}) })
}, },
handleCancel() { handleCancel() {
@@ -255,17 +266,18 @@ export default {
this.formInline.authDummyInventoryBaseId = this.$route.query.id this.formInline.authDummyInventoryBaseId = this.$route.query.id
let query = JSON.parse(JSON.stringify(this.formInline)) let query = JSON.parse(JSON.stringify(this.formInline))
this.confirmLoading = true this.confirmLoading = true
postAction(this.url.addModel, query).then((res) => { // postAction(this.url.addModel, query).then((res) => {
if (res.success) { // if (res.success) {
this.confirmLoading = false // this.confirmLoading = false
this.$message.success(this.$t('OperationSuccessful')) // this.$message.success(this.$t('OperationSuccessful'))
// } else {
// this.$message.warning(res.message)
// this.confirmLoading = false
// }
// })
this.visible = false this.visible = false
this.$emit('addModelList') this.$emit('addModelList',this.record)
} else {
this.$message.warning(res.message)
this.confirmLoading = false
}
})
} }
}) })
}, },
@@ -334,6 +346,9 @@ export default {
this.formInline[this.uploadName] = attIdList.join(',') this.formInline[this.uploadName] = attIdList.join(',')
this.formInline = { ...this.formInline } this.formInline = { ...this.formInline }
}, },
isEdit(){
this.disabled=false
}
} }
} }
</script> </script>
@@ -141,8 +141,11 @@
@click="detailclick(record)">{{$t('See')}}</a> @click="detailclick(record)">{{$t('See')}}</a>
<a class="text-operation" <a class="text-operation"
@click="maintenanceClick(record)">{{$t('maintenance')}}</a> @click="maintenanceClick(record)">{{$t('maintenance')}}</a>
<a class="text-operation" <a class="text-operation"
@click="endUpgrade(record)">{{$t('endUpgrade')}}</a> @click="endUpgrade(record , '0')" v-if="!record.onShow">{{$t('endUpgrade')}}</a>
<a class="text-operation"
@click="endUpgrade(record , '1')" v-if="record.onShow">{{$t('upgradecompletion')}}</a>
<a class="text-operation" <a class="text-operation"
@click="handleExport(record)">{{$t('export')}}</a> @click="handleExport(record)">{{$t('export')}}</a>
<a class="text-operation" <a class="text-operation"
@@ -164,7 +167,7 @@
</div> </div>
</div> </div>
<maintenance @getList="getList" ref="maintenanceRef"/> <maintenance @getList="getList" ref="maintenanceRef"/>
<upgradecompletion ref="upgradecompletionRef"/> <upgradecompletion ref="upgradecompletionRef" @addModelList="addModelList"/>
</a-card> </a-card>
</template> </template>
@@ -306,7 +309,7 @@ export default {
} }
], ],
userInfoQuery: {}, userInfoQuery: {},
administrators: false administrators: false,
} }
}, },
mounted() { mounted() {
@@ -440,8 +443,8 @@ export default {
downloadFile(this.url.exportData, text + '.xls', query, this.Deselect) downloadFile(this.url.exportData, text + '.xls', query, this.Deselect)
}, },
// 结束升级 // 结束升级
endUpgrade(){ endUpgrade(record,flag){
this.$refs.upgradecompletionRef.addModel() this.$refs.upgradecompletionRef.addModel(record,flag)
}, },
// 查看 // 查看
detailclick(){ detailclick(){
@@ -464,6 +467,10 @@ export default {
handleModule(){ handleModule(){
downloadFile('params/paramsInfo/exportTemplate', this.$t('parameterTemplateExportName') + '.xlsx', {}) downloadFile('params/paramsInfo/exportTemplate', this.$t('parameterTemplateExportName') + '.xlsx', {})
}, },
addModelList(record){
record.onShow=true
this.$forceUpdate()
}
} }
} }
</script> </script>
@@ -23,25 +23,25 @@
style="margin-bottom: 20px" style="margin-bottom: 20px"
> >
<span slot="functionname" slot-scope="text,record"> <span slot="functionname" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" :title="$t('ifNot')" v-model="record.gnmc"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title="record.gnmc" v-model="record.gnmc" :max-length="50"></a-input>
</span> </span>
<span slot="upgradedestinationype" slot-scope="text,record"> <span slot="upgradedestinationype" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" :title="$t('ifNot')" v-model="record.sjmdlx"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title="record.sjmdlx" v-model="record.sjmdlx" :max-length="50"></a-input>
</span> </span>
<span slot="preupgrade" slot-scope="text,record"> <span slot="preupgrade" slot-scope="text,record">
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sjqbgcs"></a-input> <a-input :placeholder="$t('ifNot')" :title="record.sjqbgcs ? record.sjqbgcs : $t('ifNot')" v-model="record.sjqbgcs" :max-length="500"></a-input>
</span> </span>
<span slot="afterupgrade" slot-scope="text,record"> <span slot="afterupgrade" slot-scope="text,record">
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sjhbgcs"></a-input> <a-input :placeholder="$t('ifNot')" :title="record.sjhbgcs ? record.sjhbgcs : $t('ifNot')" v-model="record.sjhbgcs":max-length="500"></a-input>
</span> </span>
<span slot="functionalchangedescription" slot-scope="text,record"> <span slot="functionalchangedescription" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.gnbgms" ></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.gnbgms" :title='record.gnbgms' :max-length="500"></a-input>
</span> </span>
<span slot="variationofapplicableconditions" slot-scope="text,record"> <span slot="variationofapplicableconditions" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" :title="$t('ifNot')" v-model="record.sytjbg"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.sytjbg" :title='record.sytjbg' :max-length="500"></a-input>
</span> </span>
<span slot="upgradetheelectroniccontrollerinvolved" slot-scope="text,record"> <span slot="upgradetheelectroniccontrollerinvolved" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" :title="$t('ifNot')" v-model="record.sjsjkzq"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.sjsjkzq" :title='record.sjsjkzq' :max-length="500"></a-input>
</span> </span>
@@ -99,7 +99,6 @@ export default {
align: 'left', align: 'left',
dataIndex: 'functionname', dataIndex: 'functionname',
ellipsis: true, ellipsis: true,
width: 170,
scopedSlots: { customRender: 'functionname' }, scopedSlots: { customRender: 'functionname' },
}, },
{ {
@@ -140,7 +139,7 @@ export default {
align: 'left', align: 'left',
dataIndex: 'functionalchangedescription', dataIndex: 'functionalchangedescription',
ellipsis: true, ellipsis: true,
width: 170, width: 230,
scopedSlots: { customRender: 'functionalchangedescription' }, scopedSlots: { customRender: 'functionalchangedescription' },
}, },
{ {
@@ -148,7 +147,7 @@ export default {
align: 'left', align: 'left',
dataIndex: 'variationofapplicableconditions', dataIndex: 'variationofapplicableconditions',
ellipsis: true, ellipsis: true,
width: 170, width: 230,
scopedSlots: { customRender: 'variationofapplicableconditions' }, scopedSlots: { customRender: 'variationofapplicableconditions' },
}, },
{ {
@@ -156,7 +155,7 @@ export default {
align: 'left', align: 'left',
dataIndex: 'upgradetheelectroniccontrollerinvolved', dataIndex: 'upgradetheelectroniccontrollerinvolved',
ellipsis: true, ellipsis: true,
width: 170, width: 230,
scopedSlots: { customRender: 'upgradetheelectroniccontrollerinvolved' }, scopedSlots: { customRender: 'upgradetheelectroniccontrollerinvolved' },
}, },
{ {
@@ -225,9 +224,11 @@ export default {
}) })
}, },
save(){ save(){
postAction('/ota/otaBaSjSjfzbh/add' ,{otaId:localStorage.getItem('otaId')== undefined ? '' :localStorage.getItem('otaId'),list:this.dataSource,fj:this.fileList}).then(res=>{ postAction('/ota/otaBaSjSjfzbh/add' ,{otaId:localStorage.getItem('otaId')== undefined ? '' :localStorage.getItem('otaId'),list:this.dataSource}).then(res=>{
console.log(res); if(res.code==200){
this.$message.success(this.$t('SavedSuccessfully')) this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
}) })
}, },
uploadSuccess(data) { uploadSuccess(data) {
@@ -12,7 +12,9 @@
<a-form-model-item class="itemModel" prop="dutyTerritory"> <a-form-model-item class="itemModel" prop="dutyTerritory">
<a-input <a-input
:placeholder="$t('pleaseEnter')" :placeholder="$t('pleaseEnter')"
v-model.trim="queryParam.rwmc"></a-input> v-model.trim="queryParam.rwmc"
:title='queryParam.rwmc'
:max-length="500"></a-input>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -108,8 +110,10 @@ export default {
} }
this.queryParam.otaId = otaId this.queryParam.otaId = otaId
postAction('/ota/otaBaSjQtsjxx/add' ,this.queryParam).then(res=>{ postAction('/ota/otaBaSjQtsjxx/add' ,this.queryParam).then(res=>{
this.$message.success(this.$t('SavedSuccessfully')) if(res.code==200){
console.log(res); this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
}) })
}, },
@@ -22,6 +22,7 @@
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model="formInline.zsl" v-model="formInline.zsl"
:title='formInline.zsl'
:placeholder="$t('PleaseSelect')"></a-input> :placeholder="$t('PleaseSelect')"></a-input>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -54,7 +55,8 @@
<a-form-model-item class="itemModel" prop="VINcodelist"> <a-form-model-item class="itemModel" prop="VINcodelist">
<a-textarea :placeholder="$t('pleaseEnter')+$t('VINcodelist')" <a-textarea :placeholder="$t('pleaseEnter')+$t('VINcodelist')"
v-model="formInline.vinList" v-model="formInline.vinList"
:rows="4"/> :rows="4"
:max-length="500"/>
</a-form-model-item> </a-form-model-item>
<!-- <a-form-model-item class="itemModel" prop="VINcodelist">--> <!-- <a-form-model-item class="itemModel" prop="VINcodelist">-->
<!-- <a-button type="primary" class="button-text"--> <!-- <a-button type="primary" class="button-text"-->
@@ -164,7 +166,10 @@ export default {
obj.vinList = this.formInline.vinList obj.vinList = this.formInline.vinList
postAction('/ota/otaBaSjSjmbcl/add',obj).then(res=>{ postAction('/ota/otaBaSjSjmbcl/add',obj).then(res=>{
if(res.code==200){
this.$message.success(this.$t('SavedSuccessfully')) this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
}) })
}, },
next(){ next(){
@@ -23,42 +23,42 @@
style="margin-bottom: 20px" style="margin-bottom: 20px"
> >
<span slot="systemname" slot-scope="text,record"> <span slot="systemname" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.xtmc" :title='record.xtmc' :max-length="50"></a-input>
</span> </span>
<!-- 升级前--> <!-- 升级前-->
<span slot="preupgrade" slot-scope="text,record"> <span slot="preupgrade" slot-scope="text,record">
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sjqbgcs"></a-input> <a-input :placeholder="$t('ifNot')" :title="record.sjqbgcs ? record.sjqbgcs : $t('ifNot')" v-model="record.sjqbgcs" :max-length="500"></a-input>
</span> </span>
<!-- 升级后--> <!-- 升级后-->
<span slot="afterupgrade" slot-scope="text,record"> <span slot="afterupgrade" slot-scope="text,record">
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sjhbgcs"></a-input> <a-input :placeholder="$t('ifNot')" :title="record.sjhbgcs ? record.sjhbgcs : $t('ifNot')" v-model="record.sjhbgcs" :max-length="500"></a-input>
</span> </span>
<span slot="nameoftheupgradedelectroniccontroller" slot-scope="text,record"> <span slot="nameoftheupgradedelectroniccontroller" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.sjkzqmc" ></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.sjkzqmc" :title='record.sjkzqmc' :max-length="50"></a-input>
</span> </span>
<span slot="adaptivehardwareversion" slot-scope="text,record"> <span slot="adaptivehardwareversion" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.yjbb"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.yjbb" :title='record.yjbb' :max-length="50"></a-input>
</span> </span>
<span slot="beforethesoftwareversionupgraded" slot-scope="text,record"> <span slot="beforethesoftwareversionupgraded" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.sjqrjbb" ></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.sjqrjbb" :title='record.sjqrjbb' :max-length="50"></a-input>
</span> </span>
<span slot="afterthesoftwareversionupgraded" slot-scope="text,record"> <span slot="afterthesoftwareversionupgraded" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.sjhrjbb"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.sjhrjbb" :title='record.sjhrjbb' :max-length="50"></a-input>
</span> </span>
<span slot="beforetheOSversionupgraded" slot-scope="text,record"> <span slot="beforetheOSversionupgraded" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.sjqczxt"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.sjqczxt" :title='record.sjqczxt' :max-length="50"></a-input>
</span> </span>
<span slot="aftertheoperatingsystemversionupgraded" slot-scope="text,record"> <span slot="aftertheoperatingsystemversionupgraded" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.sjhczxt"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.sjhczxt" :title='record.sjhczxt' :max-length="50"></a-input>
</span> </span>
<span slot="upgradepackageintegrityverificationdata" slot-scope="text,record"> <span slot="upgradepackageintegrityverificationdata" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.sjbyzsj" ></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.sjbyzsj" :title='record.sjbyzsj' :max-length="500"></a-input>
</span> </span>
<span slot="upgradepackagesize" slot-scope="text,record"> <span slot="upgradepackagesize" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.sjbdx"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.sjbdx" :title='record.sjbdx' :max-length="50"></a-input>
</span> </span>
<span slot="differentialupgradeornot" slot-scope="text,record"> <span slot="differentialupgradeornot" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.sfcfsj"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.sfcfsj" :title='record.sfcfsj'></a-input>
</span> </span>
<!-- 操作列--> <!-- 操作列-->
<span slot="operation" slot-scope="text,record"> <span slot="operation" slot-scope="text,record">
@@ -290,8 +290,10 @@ export default {
}, },
save(){ save(){
postAction('/ota/otaBaSjSjxtbh/add' ,{otaId:localStorage.getItem('otaId')== undefined ? '' :localStorage.getItem('otaId'),list:this.dataSource}).then(res=>{ postAction('/ota/otaBaSjSjxtbh/add' ,{otaId:localStorage.getItem('otaId')== undefined ? '' :localStorage.getItem('otaId'),list:this.dataSource}).then(res=>{
console.log(res); if(res.code==200){
this.$message.success(this.$t('SavedSuccessfully')) this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
}) })
}, },
last(){ last(){
@@ -63,7 +63,12 @@
</span> </span>
</a-layout-content> </a-layout-content>
<a-layout-content style='border: black solid 1px;border-left: none;border-bottom: none;max-width: 428px'> <a-layout-content style='border: black solid 1px;border-left: none;border-bottom: none;max-width: 428px'>
<a-button style='margin-top: 15%;margin-left: 10%;' @click="clickButtonToUpload" type="primary">{{$t('uploadattachment')}}</a-button> <a-button type="primary" style='margin-top: 15%;margin-left: 10%;'
@click="clickButtonToUpload('bgfj')">
{{ (form.bgfj === 'null' || form.bgfj === '' ||
form.bgfj == null) ? $t('uploadattachment') : $t('viewUploadedFiles')
}}
</a-button>
<span class="spanone">{{$t('notetwo')}}</span> <span class="spanone">{{$t('notetwo')}}</span>
<span class="spanone">{{$t('format')}}</span> <span class="spanone">{{$t('format')}}</span>
</a-layout-content> </a-layout-content>
@@ -135,7 +140,12 @@
</span> </span>
</div> </div>
<div class='layout-box-three'> <div class='layout-box-three'>
<a-button style='margin-top: 15%;margin-left: 10%;' @click="clickButtonToUpload" type="primary">{{$t('uploadattachment')}}</a-button> <a-button type="primary" style='margin-top: 15%;margin-left: 10%;'
@click="clickButtonToUpload('clfj')">
{{ (form.clfj === 'null' || form.clfj === '' ||
form.clfj == null) ? $t('uploadattachment') : $t('viewUploadedFiles')
}}
</a-button>
<span class="spanone">{{$t('notethree')}}</span> <span class="spanone">{{$t('notethree')}}</span>
<span class="spanone">{{$t('format')}}</span> <span class="spanone">{{$t('format')}}</span>
</div> </div>
@@ -388,8 +398,10 @@ this.$forceUpdate()
} }
this.form.otaId=otaId this.form.otaId=otaId
postAction('/ota/otaBaSjSjyxpg/add',this.form).then(res=>{ postAction('/ota/otaBaSjSjyxpg/add',this.form).then(res=>{
this.$message.success(this.$t('SavedSuccessfully')) if(res.code==200){
console.log(res); this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
}) })
}, },
last(){ last(){
@@ -41,7 +41,7 @@
</div> </div>
<div class="title-text-add-input"> <div class="title-text-add-input">
<!-- <span class="title-text-text">中文</span> --> <!-- <span class="title-text-text">中文</span> -->
<a-input class="box-input" v-model="form.babh" :placeholder="$t('pleaseEnter')" disabled style="width:93%"></a-input> <a-input class="box-input" v-model="form.babh" :title='form.babh' :placeholder="$t('pleaseEnter')" disabled style="width:93%"></a-input>
</div> </div>
</div> </div>
</a-col> </a-col>
@@ -52,7 +52,7 @@
</div> </div>
<div class="title-text-add-input"> <div class="title-text-add-input">
<!-- <span class="title-text-text">中文</span> --> <!-- <span class="title-text-text">中文</span> -->
<a-input class="box-input" v-model="form.qymc" :placeholder="$t('pleaseEnter')" disabled style="width:93%"></a-input> <a-input class="box-input" v-model="form.qymc" :title='form.qymc' :placeholder="$t('pleaseEnter')" disabled style="width:93%"></a-input>
</div> </div>
</div> </div>
</a-col> </a-col>
@@ -77,7 +77,7 @@
<span class="title-text-text" :title="$t('producttrademark')">{{$t('producttrademark')}}</span> <span class="title-text-text" :title="$t('producttrademark')">{{$t('producttrademark')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input disabled class="box-input" :placeholder="$t('pleaseEnter')" v-model="form.cpsb"></a-input> <a-input disabled class="box-input" :placeholder="$t('pleaseEnter')" :title='form.cpsb' v-model="form.cpsb"></a-input>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -88,7 +88,7 @@
<span class="title-text-text" :title="$t('productname')">{{$t('productname')}}</span> <span class="title-text-text" :title="$t('productname')">{{$t('productname')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input disabled class="box-input" :placeholder="$t('pleaseEnter')" v-model="form.cpmc"></a-input> <a-input disabled class="box-input" :placeholder="$t('pleaseEnter')" :title='form.cpmc' v-model="form.cpmc"></a-input>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -99,7 +99,7 @@
<span class="title-text-text" :title="$t('productModel')">{{$t('productModel')}}</span> <span class="title-text-text" :title="$t('productModel')">{{$t('productModel')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input disabled class="box-input" :placeholder="$t('pleaseEnter')" v-model="form.cpxh"></a-input> <a-input disabled class="box-input" :placeholder="$t('pleaseEnter')" :title='form.cpxh' v-model="form.cpxh"></a-input>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -198,6 +198,7 @@ import ImportFile from '@/components/ImportFileData/index'
getAction('/ota/otaBaSjSjmbcx/queryByOtaId',{otaIdT:otaIdT,otaId:otaId}).then(res=>{ getAction('/ota/otaBaSjSjmbcx/queryByOtaId',{otaIdT:otaIdT,otaId:otaId}).then(res=>{
if(res.code == 200){ if(res.code == 200){
this.form=res.result ==null?{}:res.result this.form=res.result ==null?{}:res.result
} }
}) })
}, },
@@ -207,8 +208,11 @@ import ImportFile from '@/components/ImportFileData/index'
otaId='' otaId=''
} }
postAction('/ota/otaBaSjSjmbcx/add',{otaId:otaId,...this.form}).then(res=>{ postAction('/ota/otaBaSjSjmbcx/add',{otaId:otaId,...this.form}).then(res=>{
this.$message.success(this.$t('SavedSuccessfully')) if(res.code==200){
localStorage.setItem('otaId', res.result.otaId) localStorage.setItem('otaId', res.result.otaId)
this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
}) })
}, },
next(){ next(){
@@ -22,6 +22,8 @@
<a-form-model-item class="itemModel" prop="sjmd"> <a-form-model-item class="itemModel" prop="sjmd">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
:max-length="500"
:title='formInline.sjmd'
v-model='formInline.sjmd' v-model='formInline.sjmd'
:placeholder="$t('pleaseEnter')"></a-input> :placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item> </a-form-model-item>
@@ -35,6 +37,8 @@
<a-form-model-item class="itemModel" prop="gxbh"> <a-form-model-item class="itemModel" prop="gxbh">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
:max-length="500"
:title='formInline.gxbh'
v-model='formInline.gxbh' v-model='formInline.gxbh'
:placeholder="$t('pleaseEnter')"></a-input> :placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item> </a-form-model-item>
@@ -48,6 +52,8 @@
<a-form-model-item class="itemModel" prop="sjsj"> <a-form-model-item class="itemModel" prop="sjsj">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
:max-length="50"
:title='formInline.sjsj'
v-model='formInline.sjsj' v-model='formInline.sjsj'
:placeholder="$t('pleaseEnter')"></a-input> :placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item> </a-form-model-item>
@@ -61,6 +67,8 @@
<a-form-model-item class="itemModel" prop="sjky"> <a-form-model-item class="itemModel" prop="sjky">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
:max-length="50"
:title='formInline.sjky'
v-model='formInline.sjky' v-model='formInline.sjky'
:placeholder="$t('pleaseEnter')"></a-input> :placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item> </a-form-model-item>
@@ -74,6 +82,8 @@
<a-form-model-item class="itemModel" prop="sjbkygn"> <a-form-model-item class="itemModel" prop="sjbkygn">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
:max-length="50"
:title='formInline.sjbkygn'
v-model='formInline.sjbkygn' v-model='formInline.sjbkygn'
:placeholder="$t('pleaseEnter')"></a-input> :placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item> </a-form-model-item>
@@ -87,6 +97,8 @@
<a-form-model-item class="itemModel" prop="zdxx"> <a-form-model-item class="itemModel" prop="zdxx">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
:max-length="500"
:title='formInline.zdxx'
v-model='formInline.zdxx' v-model='formInline.zdxx'
:placeholder="$t('pleaseEnter')"></a-input> :placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item> </a-form-model-item>
@@ -252,8 +264,10 @@ export default {
} }
this.formInline.otaId = otaId this.formInline.otaId = otaId
postAction('/ota/otaBaSjGgnrfs/add' ,this.formInline).then(res=>{ postAction('/ota/otaBaSjGgnrfs/add' ,this.formInline).then(res=>{
this.$message.success(this.$t('SavedSuccessfully')) if(res.code==200){
console.log(res); this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
}) })
}, },
@@ -35,10 +35,11 @@
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input <a-input
:max-length="500" :max-length="50"
:disabled="disabled" :disabled="disabled"
class="box-input" class="box-input"
:placeholder="$t('pleaseEnter')" :placeholder="$t('pleaseEnter')"
:title='form.qymc'
v-model="form.qymc"> v-model="form.qymc">
</a-input> </a-input>
</a-form-model-item> </a-form-model-item>
@@ -53,8 +54,9 @@
<a-form-model-item class="itemModel" prop="djbh"> <a-form-model-item class="itemModel" prop="djbh">
<a-input <a-input
:max-length="500" :max-length="50"
:disabled="disabled" :disabled="disabled"
:title='form.djbh'
class="box-input" class="box-input"
:placeholder="$t('pleaseEnter')" :placeholder="$t('pleaseEnter')"
v-model.trim="form.djbh"> v-model.trim="form.djbh">
@@ -88,8 +90,9 @@
<a-input <a-input
:max-length="500" :max-length="500"
:disabled="disabled" :disabled="disabled"
:title='form.ggpc'
class="box-input" class="box-input"
:placeholder="$t('PleaseSelect')" :placeholder="$t('pleaseEnter')"
v-model="form.ggpc"> v-model="form.ggpc">
</a-input> </a-input>
</a-form-model-item> </a-form-model-item>
@@ -102,10 +105,11 @@
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input <a-input
:max-length="500" :max-length="50"
:disabled="disabled" :disabled="disabled"
:title='form.cpsb'
class="box-input" class="box-input"
:placeholder="$t('PleaseSelect')" :placeholder="$t('pleaseEnter')"
v-model="form.cpsb"> v-model="form.cpsb">
</a-input> </a-input>
</a-form-model-item> </a-form-model-item>
@@ -118,10 +122,11 @@
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input <a-input
:max-length="500" :max-length="50"
:disabled="disabled" :disabled="disabled"
:title='form.cpmc'
class="box-input" class="box-input"
:placeholder="$t('PleaseSelect')" :placeholder="$t('pleaseEnter')"
v-model="form.cpmc"> v-model="form.cpmc">
</a-input> </a-input>
</a-form-model-item> </a-form-model-item>
@@ -135,10 +140,11 @@
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input <a-input
:max-length="500" :max-length="50"
:disabled="disabled" :disabled="disabled"
:title='form.cpxh'
class="box-input" class="box-input"
:placeholder="$t('PleaseSelect')" :placeholder="$t('pleaseEnter')"
v-model="form.cpxh"> v-model="form.cpxh">
</a-input> </a-input>
</a-form-model-item> </a-form-model-item>
@@ -320,7 +326,8 @@ import { message } from 'ant-design-vue'
this.form.cpmc=res.result.cpmc this.form.cpmc=res.result.cpmc
this.form.cpxh=res.result.cpxh this.form.cpxh=res.result.cpxh
this.form.txzd=res.result.txzd this.form.txzd=res.result.txzd
this.form.cdotasj=res.result.cdotasj this.form.txzd=res.result.txzd
this.form.id=res.result.id
if(this.$route.query.type == 1 && res.result.cxmb == null){ if(this.$route.query.type == 1 && res.result.cxmb == null){
this.form.cxmb = this.form.ggpc+'-'+ this.form.cpmc+'-'+this.form.cpxh this.form.cxmb = this.form.ggpc+'-'+ this.form.cpmc+'-'+this.form.cpxh
}else { }else {
@@ -14,7 +14,7 @@
size="middle" size="middle"
:loading="loading" :loading="loading"
:pagination="false" :pagination="false"
:scroll="{x: '100%',y:'calc(100vh - 140px)'}" :scroll="this.dataSource.length > 1 ? {x: '100%',y:'calc(100vh - 140px)'} : {x: '100%'}"
rowKey="id" rowKey="id"
bordered bordered
:data-source="dataSource" :data-source="dataSource"
@@ -59,26 +59,26 @@
<a-input :placeholder="$t('ifNot')" :title="record.sytj ? record.sytj:$t('ifNot')" v-model="record.sytj" :max-length="500"></a-input> <a-input :placeholder="$t('ifNot')" :title="record.sytj ? record.sytj:$t('ifNot')" v-model="record.sytj" :max-length="500"></a-input>
</span> </span>
<span slot="functiondeelectronicscription" slot-scope="text,record"> <span slot="functiondeelectronicscription" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqmc" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.kzqmc' v-model="record.kzqmc" :max-length="50"></a-input>
</span> </span>
<span slot="electroniccontrollerproductionenterprises" slot-scope="text,record"> <span slot="electroniccontrollerproductionenterprises" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqscqy" :max-length="500"> </a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.kzqscqy' v-model="record.kzqscqy" :max-length="50"> </a-input>
</span> </span>
<span slot="electroniccontrollertypeone" slot-scope="text,record"> <span slot="electroniccontrollertypeone" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqxh" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.kzqxh' v-model="record.kzqxh" :max-length="50"></a-input>
</span> </span>
<span slot="hardwareversioninformation" slot-scope="text,record"> <span slot="hardwareversioninformation" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.yjbbxx" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.yjbbxx' v-model="record.yjbbxx" :max-length="50"></a-input>
</span> </span>
<span slot="softwaredevelopmententerprise" slot-scope="text,record"> <span slot="softwaredevelopmententerprise" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.rjkfqy" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.rjkfqy' v-model="record.rjkfqy" :max-length="50"></a-input>
</span> </span>
<span slot="operatingsystemversion" slot-scope="text,record"> <span slot="operatingsystemversion" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.czxtbbh" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.czxtbbh' v-model="record.czxtbbh" :max-length="50"></a-input>
</span> </span>
<span slot="inflammatorydata" slot-scope="text,record"> <span slot="inflammatorydata" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.csyzsj" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.csyzsj' v-model="record.csyzsj" :max-length="500"></a-input>
</span> </span>
<!-- 操作列--> <!-- 操作列-->
<span slot="operation" slot-scope="text,record"> <span slot="operation" slot-scope="text,record">
@@ -366,7 +366,7 @@ import ImportFile from '@/components/ImportFileData/index'
this.$message.success(this.$t('SavedSuccessfully')) this.$message.success(this.$t('SavedSuccessfully'))
this.getData() this.getData()
} }
}) })
}, },
last(){ last(){
@@ -218,7 +218,7 @@
<div style='width: 700px'> <div style='width: 700px'>
<span class='content-text' style='background: #f3f6f6;line-height: 50px;text-align: center;color: #191E29;font-weight: bold'>{{$t('fillincontent')}}</span> <span class='content-text' style='background: #f3f6f6;line-height: 50px;text-align: center;color: #191E29;font-weight: bold'>{{$t('fillincontent')}}</span>
<span v-for='(item,index) in dataSource' class='content-text'> <span v-for='(item,index) in dataSource' class='content-text'>
<a-input v-model="item.val" class="item-input" :placeholder="item.fillincontent" :max-length="500"/> <a-input v-model="item.val" class="item-input" :title='item.val' :placeholder="item.fillincontent" :max-length="50"/>
</span><br> </span><br>
</div> </div>
</div> </div>
@@ -234,7 +234,7 @@
style="margin-bottom: 20px" style="margin-bottom: 20px"
> >
<span slot="componentname" slot-scope="text,record"> <span slot="componentname" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.bjmc" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.bjmc" :max-length="50"></a-input>
</span> </span>
<!-- 可升级--> <!-- 可升级-->
<span slot="systemclass" slot-scope="text,record" > <span slot="systemclass" slot-scope="text,record" >
@@ -244,22 +244,22 @@
</a-radio-group> </a-radio-group>
</span> </span>
<span slot="controllername" slot-scope="text,record"> <span slot="controllername" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqmc" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqmc" :title='record.kzqmc' :max-length="50"></a-input>
</span> </span>
<span slot="hardwarespecificationmodel" slot-scope="text,record"> <span slot="hardwarespecificationmodel" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.yjggxh" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.yjggxh" :title='record.yjggxh' :max-length="50"></a-input>
</span> </span>
<span slot="hardwaremanufacturer" slot-scope="text,record"> <span slot="hardwaremanufacturer" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.yjscqy" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.yjscqy" :title='record.yjscqy' :max-length="50"></a-input>
</span> </span>
<span slot="softwareversion" slot-scope="text,record"> <span slot="softwareversion" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.rjbb" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.rjbb" :title='record.rjbb' :max-length="50"></a-input>
</span> </span>
<span slot="softwaredevelopmententerprise" slot-scope="text,record"> <span slot="softwaredevelopmententerprise" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.rjkfqy" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.rjkfqy" :title='record.rjkfqy' :max-length="50"></a-input>
</span> </span>
<span slot="layoutposition" slot-scope="text,record"> <span slot="layoutposition" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.bzwz" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" v-model="record.bzwz" :title='record.bzwz' :max-length="50"></a-input>
</span> </span>
<!-- 操作列--> <!-- 操作列-->
<span slot="operation" slot-scope="text,record"> <span slot="operation" slot-scope="text,record">
@@ -902,7 +902,7 @@ export default {
// item=Number(item) // item=Number(item)
// } // }
// }) // })
this.query=res.result.bj this.query=res.result.bj==null?{}:res.result.bj
} }
}) })
@@ -207,7 +207,7 @@ import ImportFile from '@/components/ImportFileData/index'
this.dataSource[2].info= res.result.sjsbcs this.dataSource[2].info= res.result.sjsbcs
this.dataSource[3].info= res.result.xxaqjz this.dataSource[3].info= res.result.xxaqjz
if(res.result.zmclList){ if(res.result.zmclList){
console.log(this.dataSource[0].certifyingmaterials = this.$t('viewFile')) this.dataSource[0].certifyingmaterials = this.$t('viewFile')
} }
this.fileList.uploadName = res.result.zmclList this.fileList.uploadName = res.result.zmclList
this.$refs.uploadFile.perentHandleFunc(this.fileList.uploadName) this.$refs.uploadFile.perentHandleFunc(this.fileList.uploadName)
@@ -229,7 +229,7 @@ export default {
this.dataSource[8].relevantverification=Number(res.result.sjgg) this.dataSource[8].relevantverification=Number(res.result.sjgg)
this.dataSource[9].relevantverification=Number(res.result.sjzt) this.dataSource[9].relevantverification=Number(res.result.sjzt)
if(res.result.zmclList){ if(res.result.zmclList){
console.log(this.dataSource[0].certifyingmaterials = this.$t('viewFile')) this.dataSource[0].certifyingmaterials = this.$t('viewFile')
} }
this.fileList.uploadName = res.result.zmclList this.fileList.uploadName = res.result.zmclList
this.$refs.uploadFile.perentHandleFunc(this.fileList.uploadName) this.$refs.uploadFile.perentHandleFunc(this.fileList.uploadName)
@@ -43,37 +43,37 @@
</a-button> </a-button>
</span> </span>
<span slot="electronicController" slot-scope="text,record"> <span slot="electronicController" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqmc" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.kzqmc' v-model="record.kzqmc" :max-length="50"></a-input>
</span> </span>
<span slot="electroniccontrollername" slot-scope="text,record"> <span slot="electroniccontrollername" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.aqwzxdj" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.aqwzxdj' v-model="record.aqwzxdj" :max-length="50"></a-input>
</span> </span>
<span slot="electroniccontrollerproductionenterprises" slot-scope="text,record"> <span slot="electroniccontrollerproductionenterprises" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqscqy" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.kzqscqy' v-model="record.kzqscqy" :max-length="50"></a-input>
</span> </span>
<span slot="electroniccontrollertype" slot-scope="text,record"> <span slot="electroniccontrollertype" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqxh" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.kzqxh' v-model="record.kzqxh" :max-length="50"></a-input>
</span> </span>
<span slot="hardwareversioninformation" slot-scope="text,record"> <span slot="hardwareversioninformation" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.yjbbxx" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.yjbbxx' v-model="record.yjbbxx" :max-length="50"></a-input>
</span> </span>
<span slot="initialsoftwareversionnumber" slot-scope="text,record"> <span slot="initialsoftwareversionnumber" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.csrjbbh" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.csrjbbh' v-model="record.csrjbbh" :max-length="50"></a-input>
</span> </span>
<span slot="initialpackageforintegrityinflammatorydata" slot-scope="text,record"> <span slot="initialpackageforintegrityinflammatorydata" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.csrjbwzsj" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.csrjbwzsj' v-model="record.csrjbwzsj" :max-length="500"></a-input>
</span> </span>
<span slot="environmentalprotection" slot-scope="text,record"> <span slot="environmentalprotection" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.sjsfyx" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.sjsfyx' v-model="record.sjsfyx" :max-length="50"></a-input>
</span> </span>
<span slot="operatingsystemtype" slot-scope="text,record"> <span slot="operatingsystemtype" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.czxtlx" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.czxtlx' v-model="record.czxtlx" :max-length="50"></a-input>
</span> </span>
<span slot="operatingsystemmanufacturer" slot-scope="text,record"> <span slot="operatingsystemmanufacturer" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.czxtscqy" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.czxtscqy' v-model="record.czxtscqy" :max-length="50"></a-input>
</span> </span>
<span slot="operatingsystemversion" slot-scope="text,record"> <span slot="operatingsystemversion" slot-scope="text,record">
<a-input :placeholder="$t('pleaseEnter')" v-model="record.czxtbbh" :max-length="500"></a-input> <a-input :placeholder="$t('pleaseEnter')" :title='record.czxtbbh' v-model="record.czxtbbh" :max-length="50"></a-input>
</span> </span>
<!-- 操作列--> <!-- 操作列-->
<span slot="operation" slot-scope="text,record" > <span slot="operation" slot-scope="text,record" >
@@ -10,14 +10,14 @@
:visible="visible" :visible="visible"
style="height: 100%;overflow: auto;padding-bottom: 53px;"> style="height: 100%;overflow: auto;padding-bottom: 53px;">
<a-spin :spinning="confirmLoading"> <a-spin :spinning="confirmLoading">
<a-form-model :model="formInline" class="formAdd" ref="ruleForm"> <a-form-model :model="formInline" :rules="rules" class="formAdd" ref="ruleForm">
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :span="12"> <a-col :span="12">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text"> <div class="title-text">
<span class="title-text-text" :title="$t('directoryName')">{{$t('directoryName')}}</span> <span class="title-text-text" :title="$t('directoryName')">{{$t('directoryName')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="directoryName">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model.trim="formInline.directoryName" v-model.trim="formInline.directoryName"
@@ -30,7 +30,7 @@
<div class="title-text"> <div class="title-text">
<span class="title-text-text" :title="$t('batch')">{{$t('batch')}}</span> <span class="title-text-text" :title="$t('batch')">{{$t('batch')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="lot">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model.trim="formInline.lot" v-model.trim="formInline.lot"
@@ -77,7 +77,7 @@
<div class="title-text"> <div class="title-text">
<span class="title-text-text" :title="$t('testReportLocation')">{{$t('testReportLocation')}}</span> <span class="title-text-text" :title="$t('testReportLocation')">{{$t('testReportLocation')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="detectionReportLocation">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model.trim="formInline.detectionReportLocation" v-model.trim="formInline.detectionReportLocation"
@@ -93,7 +93,7 @@
<span class="title-text-text" <span class="title-text-text"
:title="$t('explain')">{{$t('explain')}}</span> :title="$t('explain')">{{$t('explain')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="explainInfo">
<a-textarea <a-textarea
style="width: 100%" style="width: 100%"
:placeholder="$t('PleaseEnter')+$t('explain')" :placeholder="$t('PleaseEnter')+$t('explain')"
@@ -127,6 +127,36 @@
return { return {
visible: false, visible: false,
formInline: {}, formInline: {},
rules:{
directoryName: [
{
max: 100,
message: this.$t('directoryName') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
lot: [
{
max: 100,
message: this.$t('batch') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
detectionReportLocation:[
{
max: 100,
message: this.$t('testReportLocation') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
explainInfo:[
{
max: 300,
message: this.$t('explain') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur'
}
],
},
confirmLoading: false, confirmLoading: false,
disabled: false, disabled: false,
url: { url: {
@@ -142,47 +172,55 @@
add() { add() {
this.visible = true this.visible = true
this.formInline = {} this.formInline = {}
this.$nextTick(() => {
this.$refs.ruleForm.clearValidate()
})
}, },
edit(val) { edit(val) {
this.visible = true this.visible = true
this.$nextTick(() => { this.$nextTick(() => {
this.formInline = val this.formInline = val
this.$refs.ruleForm.clearValidate()
}) })
}, },
handleCancel() { handleCancel() {
this.visible = false this.visible = false
}, },
handleSubmit() { handleSubmit() {
if (!this.formInline.directoryName && !this.formInline.lot && !this.formInline.directoryFile && this.$refs.ruleForm.validate(valid => {
!this.formInline.experimentFile && !this.formInline.detectionReportLocation && !this.formInline.explainInfo) { if (valid){
this.$message.warning(this.$t('dataCannotEmpty')) if (!this.formInline.directoryName && !this.formInline.lot && !this.formInline.directoryFile &&
} else { !this.formInline.experimentFile && !this.formInline.detectionReportLocation && !this.formInline.explainInfo) {
let Action this.$message.warning(this.$t('dataCannotEmpty'))
let url = '' } else {
if (this.formInline.id) { let Action
url = this.url.edit let url = ''
Action = putAction if (this.formInline.id) {
} else { url = this.url.edit
url = this.url.add Action = putAction
Action = postAction } else {
} url = this.url.add
let query = { Action = postAction
projectLibraryId: this.$route.query.id, }
...this.formInline let query = {
} projectLibraryId: this.$route.query.id,
this.confirmLoading = true ...this.formInline
Action(url, query).then((res) => { }
if (res.success) { this.confirmLoading = true
this.$message.success(this.$t('OperationSuccessful')) Action(url, query).then((res) => {
this.visible = false if (res.success) {
this.confirmLoading = false this.$message.success(this.$t('OperationSuccessful'))
this.$emit('certificationDirectoryList') this.visible = false
} else { this.confirmLoading = false
this.confirmLoading = false this.$emit('certificationDirectoryList')
this.$message.warning(res.message) } else {
} this.confirmLoading = false
}) this.$message.warning(res.message)
} }
})
}
}
})
}, },
clickButtonToUpload(item) { clickButtonToUpload(item) {
this.$refs.uploadFile.perentHandleFunc() this.$refs.uploadFile.perentHandleFunc()
@@ -96,16 +96,18 @@
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
total: 0, total: 0,
ids: '' ids: '',
detailedWarningList: []
} }
}, },
mounted() { mounted() {
}, },
methods: { methods: {
transferModel(ids) { transferModel(ids, detailedWarningList) {
this.visible = true this.visible = true
this.queryParam = {} this.queryParam = {}
this.detailedWarningList = detailedWarningList
this.selectedRowKeys = [] this.selectedRowKeys = []
this.ids = ids.join(',') this.ids = ids.join(',')
this.replacePage() this.replacePage()
@@ -154,10 +156,20 @@
handleCancel() { handleCancel() {
this.visible = false this.visible = false
}, },
failedMessageOne(data) {
let detailedWarningList = data
this.$warning({
content: ( < div > { detailedWarningList } < /div>)
})
},
handleSubmit() { handleSubmit() {
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) { if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
this.confirmLoading = true
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys)) let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
if (selectedRowKeys.join(',') == this.$route.query.id) {
this.$message.warning(this.$t('theDeliverablesCannotReferencedPleaseReselect'))
return
}
this.confirmLoading = true
postAction('/project/projectCertificationInventoryEO/citeDeliverable', { postAction('/project/projectCertificationInventoryEO/citeDeliverable', {
projectCertificationInventoryIds: this.ids, projectCertificationInventoryIds: this.ids,
projectLibraryId: this.$route.query.id, projectLibraryId: this.$route.query.id,
@@ -173,6 +185,9 @@
this.visible = false this.visible = false
this.selectedRowKeys = [] this.selectedRowKeys = []
this.$emit('referenceDeliverablesListForm') this.$emit('referenceDeliverablesListForm')
if (this.detailedWarningList && this.detailedWarningList.length > 0) {
this.failedMessageOne(this.detailedWarningList)
}
} else { } else {
if (res.result) { if (res.result) {
this.$message.warning(res.result) this.$message.warning(res.result)
@@ -78,7 +78,8 @@
</div> </div>
<!-- 保存--> <!-- 保存-->
<div @click="preservationClick(1)" v-if="roleSwitchingCode == 2 || roleSwitchingCode == 0" class="operator-text"> <div @click="preservationClick(1)" v-if="roleSwitchingCode == 2 || roleSwitchingCode == 0"
class="operator-text">
<a-icon type="check-circle"/> <a-icon type="check-circle"/>
{{ $t('preservation') }} {{ $t('preservation') }}
</div> </div>
@@ -687,7 +688,7 @@
title: this.$t('DeliverablesResult'), title: this.$t('DeliverablesResult'),
align: 'left', align: 'left',
dataIndex: 'deliveryResult', dataIndex: 'deliveryResult',
width: 180, width: 210,
ellipsis: true, ellipsis: true,
scopedSlots: { customRender: 'DeliverablesResult' } scopedSlots: { customRender: 'DeliverablesResult' }
}, },
@@ -1406,17 +1407,45 @@
referenceDeliverablesClick() { referenceDeliverablesClick() {
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) { if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
let isTrue let isTrue
for (let i = 0; i < this.selectedRowKeysList.length; i++) { let ids = []
if (this.selectedRowKeysList[i].flowStatus == 'Results to be submitted') { let notConditions = []
isTrue = true let notConditionsOne = []
} else { let data = ''
isTrue = false let dataOne = ''
this.$message.warning(this.$t('youCanOnlySelectStatusClearSubmit')) let detailedWarningList= []
return if (this.roleSwitchingCode == 20) {
for (let i = 0; i < this.selectedRowKeysList.length; i++) {
if (this.selectedRowKeysList[i].dutyPersonName == this.userInfo().username) {
if (this.selectedRowKeysList[i].flowStatus == 'Results to be submitted') {
ids.push(this.selectedRowKeysList[i].id)
} else {
notConditions.push(this.selectedRowKeysList[i].inspectionItem)
}
} else {
notConditionsOne.push(this.selectedRowKeysList[i].inspectionItem)
}
}
} else {
for (let i = 0; i < this.selectedRowKeysList.length; i++) {
if (this.selectedRowKeysList[i].flowStatus == 'Results to be submitted') {
ids.push(this.selectedRowKeysList[i].id)
} else {
notConditions.push(this.selectedRowKeysList[i].inspectionItem)
}
} }
} }
if (isTrue) { if (notConditions && notConditions.length > 0) {
this.$refs.referenceDeliverablesListRef.transferModel(JSON.parse(JSON.stringify(this.selectedRowKeys))) data = this.$t('inspectionItems') + '"' + notConditions.join('、') + '"' + this.$t('conditionsNotMet') + ',' + this.$t('onlyDataStatusSubmittedCanBeSelected')
detailedWarningList.push(<div>{data}</div>)
}
if (notConditionsOne && notConditionsOne.length > 0){
dataOne = this.$t('inspectionItems') + '"' + notConditionsOne.join('、')+'"'+this.$t('operationWithoutPermission')
detailedWarningList.push(<div>{dataOne}</div>)
}
if (ids && ids.length > 0) {
this.$refs.referenceDeliverablesListRef.transferModel(ids,detailedWarningList)
} else {
this.failedMessageOne(detailedWarningList)
} }
} else { } else {
this.$message.warning(this.$t('selectLeastOne')) this.$message.warning(this.$t('selectLeastOne'))
@@ -1738,7 +1767,12 @@
content: ( < div > { detailedWarningList } < /div>) content: ( < div > { detailedWarningList } < /div>)
}) })
}, },
failedMessageOne(data) {
let detailedWarningList = data
this.$warning({
content: ( < div > { detailedWarningList } < /div>)
})
},
submitTask(value, prompt, ids, notConditions, data) { submitTask(value, prompt, ids, notConditions, data) {
let _this = this let _this = this
this.$confirm({ this.$confirm({
@@ -40,6 +40,11 @@
<span slot="approvalResult" slot-scope="text,result"> <span slot="approvalResult" slot-scope="text,result">
{{approvalResult[text]}} {{approvalResult[text]}}
</span> </span>
<span slot="resultofhandling" slot-scope="text,result">
<span :class="statusClass[result.operatorResult]" :title="result.operatorResultName">
{{result.operatorResultName}}
</span>
</span>
<span slot="approvalFile" slot-scope="text,result"> <span slot="approvalFile" slot-scope="text,result">
<span class="viewFile" <span class="viewFile"
@click="viewFileClick(result.approvalFile)" @click="viewFileClick(result.approvalFile)"
@@ -78,7 +83,40 @@
return { return {
loading: false, loading: false,
dataSource: [], dataSource: [],
regulatoryCertificationTaskPlanList: [ statusClass: {
'Accepted': 'AcceptedClass',
'Rejected': 'RejectedClass',
'Transfer': 'TransferClass',
'Returned': 'ReturnedClass',
'Adopt': 'AdoptClass',
'Compliance': 'ComplianceClass',
'Non-Compliance': 'NonComplianceClass',
'To be tracked': 'trackedClass',
'NA': 'NAClass'
},
verifyList: [
{
status: '1',
name: this.$t('initiatingProcess')
},
{
status: '1',
name: this.$t('Taskresponsibilityrecognition')
},
{
status: '1',
name: this.$t('verificationComplianceReview')
},
{
status: '2',
name: this.$t('verificationComplianceExamine')
},
{
status: '3',
name: this.$t('missionAccomplished')
}
],
designList: [
{ {
status: '1', status: '1',
name: this.$t('initiatingProcess') name: this.$t('initiatingProcess')
@@ -100,6 +138,7 @@
name: this.$t('missionAccomplished') name: this.$t('missionAccomplished')
} }
], ],
regulatoryCertificationTaskPlanList: [],
columns: [ columns: [
{ {
title: this.$t('Operator'), title: this.$t('Operator'),
@@ -131,6 +170,7 @@
align: 'left', align: 'left',
width: 160, width: 160,
ellipsis: true, ellipsis: true,
scopedSlots: { customRender: 'resultofhandling' }
}, },
{ {
title: this.$t('feedback'), title: this.$t('feedback'),
@@ -151,6 +191,7 @@
} }
}, },
mounted() { mounted() {
console.log(this.queryProject)
this.getList() this.getList()
}, },
methods: { methods: {
@@ -163,8 +204,13 @@
if (res.success) { if (res.success) {
this.dataSource = res.result || [] this.dataSource = res.result || []
if (this.dataSource.length > 0) { if (this.dataSource.length > 0) {
if (this.queryProject.flowType == 4) {
this.regulatoryCertificationTaskPlanList = this.verifyList
} else {
this.regulatoryCertificationTaskPlanList = this.designList
}
let taskData = this.dataSource[this.dataSource.length - 1] let taskData = this.dataSource[this.dataSource.length - 1]
if (this.queryProject.TaskKey == 'fqlc'){ if (this.queryProject.TaskKey == 'fqlc') {
this.regulatoryCertificationTaskPlanList.forEach(val => { this.regulatoryCertificationTaskPlanList.forEach(val => {
if (val.name == this.$t('initiatingProcess')) { if (val.name == this.$t('initiatingProcess')) {
val.status = '2' val.status = '2'
@@ -194,13 +240,15 @@
val.status = '1' val.status = '1'
} else if (val.name == this.$t('designComplianceReview')) { } else if (val.name == this.$t('designComplianceReview')) {
val.status = '2' val.status = '2'
} else if (val.name == this.$t('verificationComplianceReview')) {
val.status = '2'
} else { } else {
val.status = '3' val.status = '3'
} }
}) })
} }
if (this.queryProject.TaskKey == 'fggcssh') { if (this.queryProject.TaskKey == 'fggcssh') {
if (taskData.operatorResult == 'Adopt'){ if (taskData.operatorResult == 'Adopt') {
this.regulatoryCertificationTaskPlanList.forEach(val => { this.regulatoryCertificationTaskPlanList.forEach(val => {
if (val.name == this.$t('initiatingProcess')) { if (val.name == this.$t('initiatingProcess')) {
val.status = '1' val.status = '1'
@@ -210,11 +258,15 @@
val.status = '1' val.status = '1'
} else if (val.name == this.$t('designComplianceReviewAdmin')) { } else if (val.name == this.$t('designComplianceReviewAdmin')) {
val.status = '1' val.status = '1'
} else if (val.name == this.$t('verificationComplianceReview')) {
val.status = '1'
} else if (val.name == this.$t('verificationComplianceExamine')) {
val.status = '1'
} else { } else {
val.status = '1' val.status = '1'
} }
}) })
}else{ } else {
this.regulatoryCertificationTaskPlanList.forEach(val => { this.regulatoryCertificationTaskPlanList.forEach(val => {
if (val.name == this.$t('initiatingProcess')) { if (val.name == this.$t('initiatingProcess')) {
val.status = '1' val.status = '1'
@@ -222,8 +274,12 @@
val.status = '1' val.status = '1'
} else if (val.name == this.$t('designComplianceReview')) { } else if (val.name == this.$t('designComplianceReview')) {
val.status = '1' val.status = '1'
} else if (val.name == this.$t('verificationComplianceReview')) {
val.status = '1'
} else if (val.name == this.$t('designComplianceReviewAdmin')) { } else if (val.name == this.$t('designComplianceReviewAdmin')) {
val.status = '2' val.status = '2'
} else if (val.name == this.$t('verificationComplianceExamine')) {
val.status = '2'
} else { } else {
val.status = '3' val.status = '3'
} }
@@ -248,6 +304,7 @@
<style scoped lang="less"> <style scoped lang="less">
@import '~@assets/less/common.less'; @import '~@assets/less/common.less';
.box { .box {
padding: 0 0 24px 0; padding: 0 0 24px 0;
box-sizing: border-box; box-sizing: border-box;
@@ -331,6 +388,7 @@
} }
} }
} }
.process-content-content:first-child { .process-content-content:first-child {
padding: 0 10px 0 0; padding: 0 10px 0 0;
} }
@@ -338,6 +396,7 @@
.process-content-content:last-child { .process-content-content:last-child {
padding: 0 0 0 10px; padding: 0 0 0 10px;
} }
.process-content-right-xian { .process-content-right-xian {
height: 2px; height: 2px;
width: calc(100% - 27px); width: calc(100% - 27px);
@@ -346,4 +405,94 @@
top: 16px; top: 16px;
} }
} }
.AcceptedClass {
background: #e9f8ed;
color: #26BD4B;
display: inline-block;
padding: 4px 8px;
border-radius: 2px;
font-weight: 400;
font-size: 12px;
}
.RejectedClass {
background: #fdeaea;
color: #E83030;
display: inline-block;
padding: 4px 8px;
border-radius: 2px;
font-weight: 400;
font-size: 12px;
}
.TransferClass {
background: #fff6e8;
color: #FDA71C;
display: inline-block;
padding: 4px 8px;
border-radius: 2px;
font-weight: 400;
font-size: 12px;
}
.ReturnedClass {
background: #fff6e8;
color: #FDA71C;
display: inline-block;
padding: 4px 8px;
border-radius: 2px;
font-weight: 400;
font-size: 12px;
}
.AdoptClass {
background: #e9f8ed;
color: #26BD4B;
display: inline-block;
padding: 4px 8px;
border-radius: 2px;
font-weight: 400;
font-size: 12px;
}
.ComplianceClass {
background: #e9f8ed;
color: #26BD4B;
display: inline-block;
padding: 4px 8px;
border-radius: 2px;
font-weight: 400;
font-size: 12px;
}
.NonComplianceClass {
background: #fdeaea;
color: #E83030;
display: inline-block;
padding: 4px 8px;
border-radius: 2px;
font-weight: 400;
font-size: 12px;
}
.trackedClass {
background: #fff6e8;
color: #FDA71C;
display: inline-block;
padding: 4px 8px;
border-radius: 2px;
font-weight: 400;
font-size: 12px;
}
.NAClass {
background: #f1f1f3;
color: #707486;
display: inline-block;
padding: 4px 8px;
border-radius: 2px;
font-weight: 400;
font-size: 12px;
}
</style> </style>
@@ -49,6 +49,9 @@
<a-radio value="Transfer" v-if="query.TaskKey == 'zrrtjjfw' || query.TaskKey == 'zrrqr'"> <a-radio value="Transfer" v-if="query.TaskKey == 'zrrtjjfw' || query.TaskKey == 'zrrqr'">
{{$t('turnToDo')}} {{$t('turnToDo')}}
</a-radio> </a-radio>
<span>
{{this.formInline.dezrrSubmitUserName}}
</span>
</a-radio-group> </a-radio-group>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
@@ -184,16 +187,21 @@
} else { } else {
this.$refs.SelectedByRef.visible = false this.$refs.SelectedByRef.visible = false
this.formInline.secondChargePersonUserId = '' this.formInline.secondChargePersonUserId = ''
this.formInline.dezrrSubmitUserName = ''
this.formInline.dezrrSubmitUserId = ''
} }
}, },
//转办接口 //转办接口
SelectedByForm(userIds) { SelectedByForm(userIds, name) {
if (this.query.TaskKey == 'zrrtjjfw') { if (this.query.TaskKey == 'zrrtjjfw') {
this.formInline.dezrrSubmitUserId = userIds this.formInline.dezrrSubmitUserId = userIds
} else { } else {
this.formInline.secondChargePersonUserId = userIds this.formInline.secondChargePersonUserId = userIds
} }
this.formInline.dezrrSubmitUserName = name
this.formInline = { ...this.formInline }
this.$refs.SelectedByRef.visible = false this.$refs.SelectedByRef.visible = false
this.$refs.SelectedByRef.submitLoading = false
}, },
submitNoRule(callBack) { submitNoRule(callBack) {
callBack(this.formInline) callBack(this.formInline)
@@ -310,14 +310,14 @@
title: this.$t('configurationItem'), title: this.$t('configurationItem'),
align: 'left', align: 'left',
dataIndex: 'configItem', dataIndex: 'configItem',
width: 150, width: 200,
ellipsis: true ellipsis: true
}, },
{ {
title: 'WVTA ID', title: 'WVTA ID',
align: 'left', align: 'left',
dataIndex: 'wvtaId', dataIndex: 'wvtaId',
width: 150, width: 200,
ellipsis: true ellipsis: true
}, },
{ {
@@ -338,14 +338,14 @@
title: this.$t('typeOfDeliverables'), title: this.$t('typeOfDeliverables'),
align: 'left', align: 'left',
dataIndex: 'deliverableTypeName', dataIndex: 'deliverableTypeName',
width: 200, width: 330,
ellipsis: true ellipsis: true
}, },
{ {
title: this.$t('operation'), title: this.$t('operation'),
align: 'left', align: 'left',
fixed: 'right', fixed: 'right',
width: 200, width: 250,
scopedSlots: { customRender: 'operation' } scopedSlots: { customRender: 'operation' }
} }
], ],
@@ -544,7 +544,7 @@
</script> </script>
<style lang='less' scoped> <style lang='less' scoped>
@import '~@assets/less/common.less'; @import'~@assets/less/common.less';
.doc-detail { .doc-detail {
background: #fff; background: #fff;