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,
@RequestParam(name = "otaIdT") String otaIdT) {
OtaBaCxJbxx otaBaCxJbxx = otaBaCxJbxxService.queryByOtaId(otaId, otaIdT);
otaBaCxJbxx = otaBaCxJbxxService.queryByOtaId(otaId, otaIdT);
return Result.OK(otaBaCxJbxx);
}
@@ -6,6 +6,7 @@ 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.OtaBaCxJbxx;
import com.jero.modules.ota.entity.OtaBaSjSjmbcl;
import com.jero.modules.ota.service.IOtaBaSjSjmbclService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -144,6 +145,18 @@ public class OtaBaSjSjmbclController extends JeroController<OtaBaSjSjmbcl, IOtaB
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
*
@@ -6,6 +6,7 @@ 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.OtaBaSjSjmbcl;
import com.jero.modules.ota.entity.OtaBaSjSjmbcx;
import com.jero.modules.ota.service.IOtaBaSjSjmbcxService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -81,8 +82,8 @@ public class OtaBaSjSjmbcxController extends JeroController<OtaBaSjSjmbcx, IOtaB
@ApiOperation(value="升级备案-升级目标车型-添加", notes="升级备案-升级目标车型-添加")
@PostMapping(value = "/add")
public Result<?> add(@Validated @RequestBody OtaBaSjSjmbcx otaBaSjSjmbcx) {
otaBaSjSjmbcxService.add(otaBaSjSjmbcx);
return Result.OK("添加成功!");
OtaBaSjSjmbcx cx = otaBaSjSjmbcxService.add(otaBaSjSjmbcx);
return Result.OK(cx);
}
/**
@@ -144,6 +145,18 @@ public class OtaBaSjSjmbcxController extends JeroController<OtaBaSjSjmbcx, IOtaB
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
*
@@ -6,6 +6,7 @@ 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.OtaBaCxAqcs;
import com.jero.modules.ota.entity.OtaBaSjSjyxpg;
import com.jero.modules.ota.service.IOtaBaSjSjyxpgService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -144,6 +145,24 @@ public class OtaBaSjSjyxpgController extends JeroController<OtaBaSjSjyxpg, IOtaB
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
*
@@ -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)
@ApiModelProperty(value = "告知用户升级成功或失败")
private java.lang.String sjsfcg;
private java.lang.Integer sjsfcg;
/**告知实施的变更*/
@Excel(name = "告知实施的变更", width = 15)
@ApiModelProperty(value = "告知实施的变更")
private java.lang.String gzbg;
private java.lang.Integer gzbg;
/**告知了对用户手册的全部更新内容*/
@Excel(name = "告知了对用户手册的全部更新内容", width = 15)
@ApiModelProperty(value = "告知了对用户手册的全部更新内容")
private java.lang.String gzscnr;
private java.lang.Integer gzscnr;
/**告知用户方式(可多选)*/
@Excel(name = "告知用户方式(可多选)", width = 15)
@@ -115,4 +115,11 @@ public class OtaBaSjList implements Serializable {
@ApiModelProperty(value = "备注")
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码清单")
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)
@ApiModelProperty(value = "升级目的")
@Dict(dicCode = "uipgrade_purpose")
private java.lang.String sjmd;
/**是否变更对应车型的《公告》技术参数*/
@Excel(name = "是否变更对应车型的《公告》技术参数", width = 15)
@ApiModelProperty(value = "是否变更对应车型的《公告》技术参数")
private java.lang.String sfbgcs;
private java.lang.Integer sfbgcs;
/**是否涉及性能变化*/
@Excel(name = "是否涉及性能变化", width = 15)
@ApiModelProperty(value = "是否涉及性能变化")
private java.lang.String sjxnbh;
private java.lang.Integer sjxnbh;
/**是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等*/
@Excel(name = "是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等", width = 15)
@ApiModelProperty(value = "是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等")
private java.lang.String fhgd;
private java.lang.Integer fhgd;
/**是否涉及汽车自动驾驶功能相关升级*/
@Excel(name = "是否涉及汽车自动驾驶功能相关升级", width = 15)
@ApiModelProperty(value = "是否涉及汽车自动驾驶功能相关升级")
private java.lang.String zdjsxg;
private java.lang.Integer zdjsxg;
/**兼容性评估相关*/
@Excel(name = "兼容性评估相关", width = 15)
@ApiModelProperty(value = "兼容性评估相关")
private java.lang.String jrxxg;
private java.lang.Integer jrxxg;
/**如何执行升级*/
@Excel(name = "如何执行升级", width = 15)
@ApiModelProperty(value = "如何执行升级")
private java.lang.String zxsj;
@Dict(dicCode = "conditions_upgrades")
private java.lang.Integer zxsj;
/**升级失败或中断后,车辆采取的安全机制*/
@Excel(name = "升级失败或中断后,车辆采取的安全机制", width = 15)
@ApiModelProperty(value = "升级失败或中断后,车辆采取的安全机制")
@Dict(dicCode = "upgrade_failed")
private java.lang.String aqjz;
/**升级活动是否影响车辆安全*/
@Excel(name = "升级活动是否影响车辆安全", width = 15)
@ApiModelProperty(value = "升级活动是否影响车辆安全")
private java.lang.String sfyxaq;
private java.lang.Integer sfyxaq;
/**升级活动是否提供用户确认选项*/
@Excel(name = "升级活动是否提供用户确认选项", width = 15)
@ApiModelProperty(value = "升级活动是否提供用户确认选项")
private java.lang.String yhqr;
private java.lang.Integer yhqr;
/**升级包测试*/
@Excel(name = "升级包测试", width = 15)
@ApiModelProperty(value = "升级包测试")
@Dict(dicCode = "package_test")
private java.lang.String sjbcs;
/**是杏已验证确认在线升级活动的安全性和可靠性*/
@Excel(name = "是杏已验证确认在线升级活动的安全性和可靠性", width = 15)
@ApiModelProperty(value = "是杏已验证确认在线升级活动的安全性和可靠性")
private java.lang.String aqkkx;
private java.lang.Integer aqkkx;
/**提供变更或扩展后的《公告》批次及证明材料*/
@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_KZXSJDJSFZGNMCYCS("可在线升级的驾驶辅助功能名称与参数", "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 nameEN;
@@ -156,17 +156,17 @@ public enum OtaTitleEnum {
SCRQKS("scrqks", "生产日期开始", "0"),
SCRQJS("scrqjs", "生产日期结束", "0"),
VIN_LIST("vinList", "VIN码清单", "0"),
SJMD("sjmd", "升级目的", "0"),
SJMD("sjmd", "升级目的", "uipgrade_purpose"),
SFBGCS("sfbgcs", "是否变更对应车型的《公告》技术参数", "0"),
JSXNBH("jsxnbh", "是否涉及性能变化", "0"),
FHGD("fhgd", "是否符合国家法律、行政法规、规章规定,以及道路机动车辆公告管理相关国家技术标准及安全技术条件等", "0"),
ZDJSXG("zdjsxg", "是否涉及汽车自动驾驶功能相关升级", "0"),
JRXXG("jrxxg", "兼容性评估相关", "0"),
ZXSJ("zxsj", "如何执行升级", "0"),
AQJZ("aqjz", "升级失败或中断后,车辆采取的安全机制", "0"),
ZXSJ("zxsj", "如何执行升级", "conditions_upgrades"),
AQJZ("aqjz", "升级失败或中断后,车辆采取的安全机制", "upgrade_failed"),
SFYXAQ("sfyxaq", "升级活动是否影响车辆安全", "0"),
YHQR("yhqr", "升级活动是否提供用户确认选项", "0"),
SJBCS("sjbcs", "升级包测试", "0"),
SJBCS("sjbcs", "升级包测试", "package_test"),
AQKKX("aqkkx", "是杏已验证确认在线升级活动的安全性和可靠性", "0"),
BGFJ("bgfj", "提供变更或扩展后的《公告》批次及证明材料", "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
*/
List<OtaBaSjSjmbcl> queryList();
OtaBaSjSjmbcl queryByOtaId(String otaId, String otaIdT);
}
@@ -18,7 +18,7 @@ public interface IOtaBaSjSjmbcxService extends IService<OtaBaSjSjmbcx> {
* @param otaBaSjSjmbcx
* @return
*/
void add(OtaBaSjSjmbcx otaBaSjSjmbcx);
OtaBaSjSjmbcx add(OtaBaSjSjmbcx otaBaSjSjmbcx);
/**
* 更新
@@ -58,4 +58,6 @@ public interface IOtaBaSjSjmbcxService extends IService<OtaBaSjSjmbcx> {
* @return
*/
List<OtaBaSjSjmbcx> queryList();
OtaBaSjSjmbcx queryByOtaId(String otaId, String otaIdT);
}
@@ -58,4 +58,6 @@ public interface IOtaBaSjSjyxpgService extends IService<OtaBaSjSjyxpg> {
* @return
*/
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) {
if(StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxAqcs> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxAqcs::getOtaId, otaId);
return this.getOne(queryWrapper, false);
@@ -64,7 +64,7 @@ public class OtaBaCxJbxxServiceImpl extends ServiceImpl<OtaBaCxJbxxMapper, OtaBa
*/
public OtaBaCxJbxx add(OtaBaCxJbxx otaBaCxJbxx) {
//对比填写记录用的
OtaBaCxJbxx OtaBaCxJbxxOld = new OtaBaCxJbxx();
OtaBaCxJbxx otaBaCxJbxxOld = new OtaBaCxJbxx();
Date now = new Date();
OtaBaCxList otaBaCxList;
if (StringUtils.isEmpty(otaBaCxJbxx.getOtaId())) {
@@ -76,7 +76,7 @@ public class OtaBaCxJbxxServiceImpl extends ServiceImpl<OtaBaCxJbxxMapper, OtaBa
otaBaCxJbxx.setOtaId(otaBaCxList.getId());
otaBaCxJbxx.setCreateTime(now);
} else {
OtaBaCxJbxxOld = this.getByOtaId(otaBaCxJbxx.getOtaId());
otaBaCxJbxxOld = this.getByOtaId(otaBaCxJbxx.getOtaId());
otaBaCxList = otaBaCxListService.queryById(otaBaCxJbxx.getOtaId());
otaBaCxList.updateData(otaBaCxJbxx);
otaBaCxListService.editById(otaBaCxList);
@@ -84,7 +84,7 @@ public class OtaBaCxJbxxServiceImpl extends ServiceImpl<OtaBaCxJbxxMapper, OtaBa
otaBaCxJbxx.setUpdateTime(now);
saveOrUpdate(otaBaCxJbxx);
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);
return otaBaCxJbxx;
}
@@ -156,6 +156,9 @@ public class OtaBaCxJbxxServiceImpl extends ServiceImpl<OtaBaCxJbxxMapper, OtaBa
}
private OtaBaCxJbxx getByOtaId(String otaId) {
if(StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxJbxx> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxJbxx::getOtaId, otaId);
return this.getOne(queryWrapper, false);
@@ -131,7 +131,11 @@ public class OtaBaCxJsfzbacsServiceImpl extends ServiceImpl<OtaBaCxJsfzbacsMappe
if (null != bjObj) {
try {
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) {
e.printStackTrace();
}
@@ -232,6 +236,9 @@ public class OtaBaCxJsfzbacsServiceImpl extends ServiceImpl<OtaBaCxJsfzbacsMappe
}
private OtaBaCxJsfzbacs getByOtaId(String otaId) {
if(StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxJsfzbacs> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxJsfzbacs::getOtaId, otaId);
return this.getOne(queryWrapper, false);
@@ -195,6 +195,9 @@ public class OtaBaCxKsjjsmccsServiceImpl extends ServiceImpl<OtaBaCxKsjjsmccsMap
}
private List<OtaBaCxKsjjsmccs> getByOtaId(String otaId) {
if(org.apache.commons.lang3.StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxKsjjsmccs> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxKsjjsmccs::getOtaId, otaId);
return this.list(queryWrapper);
@@ -193,6 +193,9 @@ public class OtaBaCxKsjxtmccsServiceImpl extends ServiceImpl<OtaBaCxKsjxtmccsMap
}
private List<OtaBaCxKsjxtmccs> getByOtaId(String otaId) {
if(org.apache.commons.lang3.StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxKsjxtmccs> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxKsjxtmccs::getOtaId, otaId);
return this.list(queryWrapper);
@@ -127,6 +127,9 @@ public class OtaBaCxQtServiceImpl extends ServiceImpl<OtaBaCxQtMapper, OtaBaCxQt
}
public OtaBaCxQt getByOtaId(String otaId) {
if(org.apache.commons.lang3.StringUtils.isEmpty(otaId)){
return null;
}
LambdaQueryWrapper<OtaBaCxQt> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OtaBaCxQt::getOtaId, otaId);
return this.getOne(queryWrapper, false);
@@ -1,89 +1,141 @@
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.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.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 java.util.List;
import java.util.Date;
import java.util.UUID;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: 升级备案-升级目标车辆
* @Author: jero-boot
* @Date: 2023-03-17
* @Date: 2023-03-17
* @Version: V1.0
*/
@Service
public class OtaBaSjSjmbclServiceImpl extends ServiceImpl<OtaBaSjSjmbclMapper, OtaBaSjSjmbcl> implements IOtaBaSjSjmbclService {
/**
* 保存
*
* @param otaBaSjSjmbcl
* @return
*/
@Override
@Autowired
private ISysDictService sysDictService;
@Autowired
private IOtaBaCxTxjlService otaBaCxTxjlService;
/**
* 保存
*
* @param otaBaSjSjmbcl
* @return
*/
@Override
public void add(OtaBaSjSjmbcl otaBaSjSjmbcl) {
Date now = new Date();
otaBaSjSjmbcl.setCreateTime(now);
otaBaSjSjmbcl.setUpdateTime(now);
save(otaBaSjSjmbcl);
if (null != otaBaSjSjmbcl) {
OtaBaSjSjmbcl otaBaSjSjmbclOld = this.getByOtaId(otaBaSjSjmbcl.getOtaId());
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
* @return
*/
@Override
/**
* 更新
*
* @param otaBaSjSjmbcl
* @return
*/
@Override
public void editById(OtaBaSjSjmbcl otaBaSjSjmbcl) {
Date now = new Date();
Date now = new Date();
otaBaSjSjmbcl.setUpdateTime(now);
saveOrUpdate(otaBaSjSjmbcl);
saveOrUpdate(otaBaSjSjmbcl);
}
/**
* 通过id删除
*
* @param id
* @return
*/
@Override
/**
* 通过id删除
*
* @param id
* @return
*/
@Override
public void deleteById(String id) {
removeById(id);
}
/**
* 批量删除
*
* @param ids
* @return
*/
@Override
/**
* 批量删除
*
* @param ids
* @return
*/
@Override
public void deleteByIds(List<String> ids) {
removeByIds(ids);
}
/**
* 通过id查询
*
* @param id
* @return
*/
@Override
/**
* 通过id查询
*
* @param id
* @return
*/
@Override
public OtaBaSjSjmbcl queryById(String id) {
return getById(id);
}
/**
* 列表查询
*
* @return
*/
@Override
* 列表查询
*
* @return
*/
@Override
public List<OtaBaSjSjmbcl> queryList() {
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;
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.service.IOtaBaCxTxjlService;
import com.jero.modules.ota.service.IOtaBaSjListService;
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 java.util.List;
import java.util.Date;
import java.util.UUID;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: 升级备案-升级目标车型
* @Author: jero-boot
* @Date: 2023-03-17
* @Date: 2023-03-17
* @Version: V1.0
*/
@Service
public class OtaBaSjSjmbcxServiceImpl extends ServiceImpl<OtaBaSjSjmbcxMapper, OtaBaSjSjmbcx> implements IOtaBaSjSjmbcxService {
/**
* 保存
*
* @param otaBaSjSjmbcx
* @return
*/
@Override
public void add(OtaBaSjSjmbcx otaBaSjSjmbcx) {
@Autowired
private IOtaBaSjListService otaBaSjListService;
@Autowired
private ISysDictService sysDictService;
@Autowired
private IOtaBaCxTxjlService otaBaCxTxjlService;
/**
* 保存
*
* @param otaBaSjSjmbcx
* @return
*/
@Override
public OtaBaSjSjmbcx add(OtaBaSjSjmbcx otaBaSjSjmbcx) {
//对比填写记录用的
OtaBaSjSjmbcx otaBaSjSjmbcxOld = new OtaBaSjSjmbcx();
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);
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
* @return
*/
@Override
/**
* 更新
*
* @param otaBaSjSjmbcx
* @return
*/
@Override
public void editById(OtaBaSjSjmbcx otaBaSjSjmbcx) {
Date now = new Date();
Date now = new Date();
otaBaSjSjmbcx.setUpdateTime(now);
saveOrUpdate(otaBaSjSjmbcx);
saveOrUpdate(otaBaSjSjmbcx);
}
/**
* 通过id删除
*
* @param id
* @return
*/
@Override
/**
* 通过id删除
*
* @param id
* @return
*/
@Override
public void deleteById(String id) {
removeById(id);
}
/**
* 批量删除
*
* @param ids
* @return
*/
@Override
/**
* 批量删除
*
* @param ids
* @return
*/
@Override
public void deleteByIds(List<String> ids) {
removeByIds(ids);
}
/**
* 通过id查询
*
* @param id
* @return
*/
@Override
/**
* 通过id查询
*
* @param id
* @return
*/
@Override
public OtaBaSjSjmbcx queryById(String id) {
return getById(id);
}
/**
* 列表查询
*
* @return
*/
@Override
* 列表查询
*
* @return
*/
@Override
public List<OtaBaSjSjmbcx> queryList() {
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;
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.service.IOtaBaCxTxjlService;
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 java.util.List;
import java.util.Date;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: 升级备案-升级影响评估
* @Author: jero-boot
* @Date: 2023-03-17
* @Date: 2023-03-17
* @Version: V1.0
*/
@Service
public class OtaBaSjSjyxpgServiceImpl extends ServiceImpl<OtaBaSjSjyxpgMapper, OtaBaSjSjyxpg> implements IOtaBaSjSjyxpgService {
/**
* 保存
*
* @param otaBaSjSjyxpg
* @return
*/
@Override
@Autowired
private ISysDictService sysDictService;
@Autowired
private IOtaBaCxTxjlService otaBaCxTxjlService;
/**
* 保存
*
* @param otaBaSjSjyxpg
* @return
*/
@Override
public void add(OtaBaSjSjyxpg otaBaSjSjyxpg) {
Date now = new Date();
otaBaSjSjyxpg.setCreateTime(now);
otaBaSjSjyxpg.setUpdateTime(now);
save(otaBaSjSjyxpg);
if (null != otaBaSjSjyxpg) {
OtaBaSjSjyxpg otaBaSjSjyxpgOld = this.getByOtaId(otaBaSjSjyxpg.getOtaId());
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
* @return
*/
@Override
/**
* 更新
*
* @param otaBaSjSjyxpg
* @return
*/
@Override
public void editById(OtaBaSjSjyxpg otaBaSjSjyxpg) {
Date now = new Date();
Date now = new Date();
otaBaSjSjyxpg.setUpdateTime(now);
saveOrUpdate(otaBaSjSjyxpg);
saveOrUpdate(otaBaSjSjyxpg);
}
/**
* 通过id删除
*
* @param id
* @return
*/
@Override
/**
* 通过id删除
*
* @param id
* @return
*/
@Override
public void deleteById(String id) {
removeById(id);
}
/**
* 批量删除
*
* @param ids
* @return
*/
@Override
/**
* 批量删除
*
* @param ids
* @return
*/
@Override
public void deleteByIds(List<String> ids) {
removeByIds(ids);
}
/**
* 通过id查询
*
* @param id
* @return
*/
@Override
/**
* 通过id查询
*
* @param id
* @return
*/
@Override
public OtaBaSjSjyxpg queryById(String id) {
return getById(id);
}
/**
* 列表查询
*
* @return
*/
@Override
* 列表查询
*
* @return
*/
@Override
public List<OtaBaSjSjyxpg> queryList() {
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',
preHomeConfirmation: 'Pre-Homo Confirmation',
verificationComplianceReview: 'Validation Compliance Confirmation',
verificationComplianceExamine:'Verification compliance examine',
Deployment: 'Deploy',
pleaseDesignConformityConfirmation: 'Please complete the data of design conformity confirmation',
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',
notethree:'Provide supporting materials',
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: '设计符合性确认',
preHomeConfirmation: 'Pre-Homo确认',
verificationComplianceReview: '验证符合性确认',
verificationComplianceExamine:'验证符合性审查',
pleaseDesignConformityConfirmation: '请补全设计符合性确认的数据',
pleaseConfirmedByPrehomo: '请补全 Pre-Homo确认的数据',
pleaseConformityVerification: '请补全验证符合性确认的数据',
@@ -1829,4 +1830,7 @@ module.exports = {
notetwo:'\n1提供变更或扩展后的公告批次及证明材料;\n2应提交验证材料保障产品符合国家法律法规技术标准及技术规范等相关要求;\n',
notethree:'\n提供证明材料\n',
verifyComplianceConfirmReturnReason:'验证符合性确认退回原因',
theDeliverablesCannotReferencedPleaseReselect:'不能引用本项目的交付物请重新选择',
regulationListModuleMaintenance:'法规清单模块维护',
regulationListModule:'法规清单模块',
}
@@ -1106,7 +1106,7 @@
}
.selectWid {
min-width: 150px;
/*min-width: 150px;*/
width: 100%;
}
@@ -980,7 +980,7 @@
}
.selectWid {
min-width: 150px;
/*min-width: 150px;*/
width: 100%;
}
+11 -4
View File
@@ -67,7 +67,8 @@
departId: '',
defaultExpandedKeys: [],
submitLoading: false,
visibleTree: false
visibleTree: false,
userName: []
}
},
mounted() {
@@ -110,7 +111,7 @@
}
if (this.userIds && this.userIds.length > 0) {
this.submitLoading = true
this.$emit('SelectedByForm', this.userIds.join(','))
this.$emit('SelectedByForm', this.userIds.join(','),this.userName.join(','))
} else {
this.$message.warning(this.$t('selectLeastOne'))
}
@@ -142,7 +143,7 @@
postAction('sys/user/queryDepartUserTreeList', {
departId: this.departId,
json: gData,
flag:'1'
flag: '1'
}).then((res) => {
this.confirmLoading = false
if (res.success) {
@@ -155,8 +156,14 @@
}
})
},
checkChange(e) {
checkChange(e, name) {
this.userName = []
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"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
: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"
:loading="loading"
@change="tableOnChange"
+5 -5
View File
@@ -133,7 +133,7 @@
// }
// }
// }
this.$message.destroy()
// this.$message.destroy()
},
remove() {
this.fileTypeSatus = true
@@ -153,7 +153,7 @@
})
if (status === 'error') {
this.$emit('uploadSuccess', this.fileList)
this.$message.destroy()
// this.$message.destroy()
this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed'))
} else if (status === 'removed') {
this.myfileList = info.fileList
@@ -167,7 +167,7 @@
})
this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) {
this.$message.destroy()
// this.$message.destroy()
this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully'))
}
} else if (status === 'done') {
@@ -184,7 +184,7 @@
}
})
this.$emit('uploadSuccess', this.fileList)
this.$message.destroy()
// this.$message.destroy()
this.$message.error(this.$t('UploadMost'))
return
}
@@ -197,7 +197,7 @@
})
this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) {
this.$message.destroy()
// this.$message.destroy()
if (file.response.success) {
this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully'))
}
@@ -109,7 +109,7 @@
// this.fileTypeSatus = false;
// }
// }
this.$message.destroy()
// this.$message.destroy()
},
remove() {
this.fileTypeSatus = true
@@ -133,7 +133,7 @@
})
if (status === 'error') {
this.$emit('uploadSuccess', this.fileList)
this.$message.destroy()
// this.$message.destroy()
this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed'))
} else if (status === 'removed') {
this.myfileList = info.fileList
@@ -147,7 +147,7 @@
})
this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) {
this.$message.destroy()
// this.$message.destroy()
this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully'))
}
} else if (status === 'done') {
@@ -164,7 +164,7 @@
}
})
this.$emit('uploadSuccess', this.fileList)
this.$message.destroy()
// this.$message.destroy()
this.$message.error(this.$t('UploadMost'))
return
}
@@ -177,7 +177,7 @@
})
this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) {
this.$message.destroy()
// this.$message.destroy()
if (file.response.success) {
this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully'))
}
@@ -135,7 +135,7 @@ import { mapGetters } from 'vuex'
// this.fileTypeSatus = false;
// }
// }
this.$message.destroy()
// this.$message.destroy()
},
remove() {
this.fileTypeSatus = true
@@ -159,7 +159,7 @@ import { mapGetters } from 'vuex'
})
if (status === 'error') {
this.$emit('uploadSuccess', this.fileList)
this.$message.destroy()
// this.$message.destroy()
this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed'))
} else if (status === 'removed') {
this.myfileList = info.fileList
@@ -173,7 +173,7 @@ import { mapGetters } from 'vuex'
})
this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) {
this.$message.destroy()
// this.$message.destroy()
this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully'))
}
} else if (status === 'done') {
@@ -190,7 +190,7 @@ import { mapGetters } from 'vuex'
}
})
this.$emit('uploadSuccess', this.fileList)
this.$message.destroy()
// this.$message.destroy()
this.$message.error(this.$t('UploadMost'))
return
}
@@ -203,7 +203,7 @@ import { mapGetters } from 'vuex'
})
this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) {
this.$message.destroy()
// this.$message.destroy()
if (file.response.success) {
this.$message.success(`${info.file.name}` + this.$t('FileUploadedSuccessfully'))
}
@@ -132,7 +132,7 @@
// this.fileTypeSatus = false;
// }
// }
this.$message.destroy()
// this.$message.destroy()
},
remove() {
this.fileTypeSatus = true
@@ -152,7 +152,7 @@
})
if (status === 'error') {
this.$emit('uploadSuccess', this.fileList)
this.$message.destroy()
// this.$message.destroy()
this.$message.error(`${info.file.name}` + this.$t('FileUploadFailed'))
} else if (status === 'removed') {
this.myfileList = info.fileList
@@ -166,7 +166,7 @@
})
this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) {
this.$message.destroy()
// this.$message.destroy()
this.$message.success(`${info.file.name}` + this.$t('DeletedSuccessfully'))
}
} else if (status === 'done') {
@@ -183,7 +183,7 @@
}
})
this.$emit('uploadSuccess', this.fileList)
this.$message.destroy()
// this.$message.destroy()
this.$message.error(this.$t('UploadMost'))
return
}
@@ -196,7 +196,7 @@
})
this.$emit('uploadSuccess', this.fileList)
if (this.myfileList.length > 0) {
this.$message.destroy()
// this.$message.destroy()
if (file.response.success) {
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;"/>-->
<!-- </span>-->
<span>
{{isTrue ? $t('maintainVirtualList'):$t('virtualListDetails')}}
{{isTrue ? $t('regulationListModuleMaintenance'):$t('regulationListModuleMaintenance')}}
</span>
</div>
<div class="Virtual-detail-right">
@@ -23,8 +23,8 @@
<div class="Virtual-detail-content">
<div class="box-title-text-add">
<div class="title-text-add">
<span class="text-left" :title="$t('VirtualListName')">
{{$t('VirtualListName')}}
<span class="text-left" :title="$t('regulationListModule')">
{{$t('regulationListModule')}}
</span>
<span class="text-right" style="margin-right: 100px" :title="$route.query.name">
{{$route.query.name}}
@@ -20,6 +20,7 @@
</div>
<a-form-model-item class="itemModel" prop="bazt">
<j-dict-select-tag class="box-input" v-model="formInline.bazt"
@input="selectchange"
:placeholder="$t('PleaseSelect')+$t('recordstatus')"
:type="'select'"
:triggerChange="false" :dictCode="'recordstatus'"/>
@@ -77,7 +78,7 @@ export default {
visible: false,
confirmLoading: false,
formInline: {
bazt:'',
bazt:undefined,
batjsj:'',
bz:'',
},
@@ -196,6 +197,12 @@ export default {
}
})
},
selectchange(value){
this.$nextTick(() => {
this.formInline = { ...this.formInline }
this.$refs.ruleForm.validateField('bazt')
})
},
handleCancel() {
this.formInline = {
bazt:undefined,
@@ -13,13 +13,13 @@
<a-spin :spinning="confirmLoading">
<a-form-model :model="formInline" :rules="rules" ref="ruleForm">
<a-row :gutter="24">
<a-col :span="24">
<a-col :span="20">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t ('implementedupgrade')">{{$t('implementedupgrade')}}</span>
</div>
<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">
{{$t('yes')}}
</a-radio>
@@ -27,16 +27,13 @@
{{$t('not')}}
</a-radio>
</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>
</div>
</a-col>
<a-col :span="4" v-if="showButton">
<a-button type="primary" @click="isEdit">编辑</a-button>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="24">
@@ -61,6 +58,7 @@
</div>
<a-form-model-item class="itemModel" prop="VINcodelist">
<a-button type="primary" class="button-text"
:disabled="disabled"
@click="clickButtonToUpload('VINcodelist')">
{{ (formInline.VINcodelist === 'null' || formInline.VINcodelist === '' ||
formInline.VINcodelist == null) ? $t('clickUpload') : $t('viewUploadedFiles')
@@ -76,7 +74,7 @@
{{$t('vehicleshavenotcompletedonlineupgrade')}}
<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)"
type="minus-circle"/>
type="minus-circle" :disabled="disabled"/>
</div>
<div style='margin-left: 25px'>
<a-row :gutter="24">
@@ -87,6 +85,7 @@
</div>
<a-form-model-item class="itemModel">
<a-input class="box-input"
:disabled="disabled"
v-model="item.cause"
:placeholder="$t('PleaseEnter')+$t('cause')"/>
</a-form-model-item>
@@ -102,6 +101,7 @@
<!-- {max: 300,message: $t('inspectionItems') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'}]"-->
<a-form-model-item class="itemModel">
<a-input class="box-input"
:disabled="disabled"
v-model="item.Quantity"
:placeholder="$t('PleaseEnter')+$t('Quantity')"/>
</a-form-model-item>
@@ -119,6 +119,7 @@
<!-- {max: 300,message: $t('inspectionItems') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'}]"-->
<a-form-model-item class="itemModel">
<a-button type="primary" class="button-text"
:disabled="disabled"
@click="clickButtonToUpload('VINcodelist')">
{{ (formInline.VINcodelist === 'null' || formInline.VINcodelist === '' ||
formInline.VINcodelist == null) ? $t('clickUpload') : $t('viewUploadedFiles')
@@ -140,6 +141,7 @@
</div>
<a-form-model-item class="itemModel" prop="implementationrecords">
<a-textarea :placeholder="$t('pleaseEnter')+$t('implementationrecords')"
:disabled="disabled"
:rows="2" v-model="formInline.remarks"/>
</a-form-model-item>
</div>
@@ -182,7 +184,6 @@ import { mapGetters } from 'vuex'
export default {
name:"addModel",
props: ['url'],
components:{
uploadFile
},
@@ -190,6 +191,7 @@ export default {
return {
visible: false,
disabled: false,
showButton:false,
formInline: {},
confirmLoading: false,
acceptcode:'',
@@ -223,6 +225,10 @@ export default {
}
],
},
url:{
addModel:''
},
record:{}
}
},
mounted() {
@@ -230,14 +236,19 @@ export default {
},
methods: {
...mapGetters(['userInfo']),
addModel() {
addModel(record,flag) {
if(flag=='1'){
this.disabled=true
this.showButton=true
}
this.record=record
this.visible = true
this.formInline = {}
this.formInline.dataList = [{}]
this.$nextTick(() => {
this.formInline = { ...this.formInline }
this.$refs.ruleForm.clearValidate()
this.$refs.codeNumber.number()
// this.$refs.codeNumber.number()
})
},
handleCancel() {
@@ -255,17 +266,18 @@ export default {
this.formInline.authDummyInventoryBaseId = this.$route.query.id
let query = JSON.parse(JSON.stringify(this.formInline))
this.confirmLoading = true
postAction(this.url.addModel, query).then((res) => {
if (res.success) {
this.confirmLoading = false
this.$message.success(this.$t('OperationSuccessful'))
// postAction(this.url.addModel, query).then((res) => {
// if (res.success) {
// this.confirmLoading = false
// this.$message.success(this.$t('OperationSuccessful'))
// } else {
// this.$message.warning(res.message)
// this.confirmLoading = false
// }
// })
this.visible = false
this.$emit('addModelList')
} else {
this.$message.warning(res.message)
this.confirmLoading = false
}
})
this.$emit('addModelList',this.record)
}
})
},
@@ -334,6 +346,9 @@ export default {
this.formInline[this.uploadName] = attIdList.join(',')
this.formInline = { ...this.formInline }
},
isEdit(){
this.disabled=false
}
}
}
</script>
@@ -141,8 +141,11 @@
@click="detailclick(record)">{{$t('See')}}</a>
<a class="text-operation"
@click="maintenanceClick(record)">{{$t('maintenance')}}</a>
<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"
@click="handleExport(record)">{{$t('export')}}</a>
<a class="text-operation"
@@ -164,7 +167,7 @@
</div>
</div>
<maintenance @getList="getList" ref="maintenanceRef"/>
<upgradecompletion ref="upgradecompletionRef"/>
<upgradecompletion ref="upgradecompletionRef" @addModelList="addModelList"/>
</a-card>
</template>
@@ -306,7 +309,7 @@ export default {
}
],
userInfoQuery: {},
administrators: false
administrators: false,
}
},
mounted() {
@@ -440,8 +443,8 @@ export default {
downloadFile(this.url.exportData, text + '.xls', query, this.Deselect)
},
// 结束升级
endUpgrade(){
this.$refs.upgradecompletionRef.addModel()
endUpgrade(record,flag){
this.$refs.upgradecompletionRef.addModel(record,flag)
},
// 查看
detailclick(){
@@ -464,6 +467,10 @@ export default {
handleModule(){
downloadFile('params/paramsInfo/exportTemplate', this.$t('parameterTemplateExportName') + '.xlsx', {})
},
addModelList(record){
record.onShow=true
this.$forceUpdate()
}
}
}
</script>
@@ -23,25 +23,25 @@
style="margin-bottom: 20px"
>
<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 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 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 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 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 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 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>
@@ -99,7 +99,6 @@ export default {
align: 'left',
dataIndex: 'functionname',
ellipsis: true,
width: 170,
scopedSlots: { customRender: 'functionname' },
},
{
@@ -140,7 +139,7 @@ export default {
align: 'left',
dataIndex: 'functionalchangedescription',
ellipsis: true,
width: 170,
width: 230,
scopedSlots: { customRender: 'functionalchangedescription' },
},
{
@@ -148,7 +147,7 @@ export default {
align: 'left',
dataIndex: 'variationofapplicableconditions',
ellipsis: true,
width: 170,
width: 230,
scopedSlots: { customRender: 'variationofapplicableconditions' },
},
{
@@ -156,7 +155,7 @@ export default {
align: 'left',
dataIndex: 'upgradetheelectroniccontrollerinvolved',
ellipsis: true,
width: 170,
width: 230,
scopedSlots: { customRender: 'upgradetheelectroniccontrollerinvolved' },
},
{
@@ -225,9 +224,11 @@ export default {
})
},
save(){
postAction('/ota/otaBaSjSjfzbh/add' ,{otaId:localStorage.getItem('otaId')== undefined ? '' :localStorage.getItem('otaId'),list:this.dataSource,fj:this.fileList}).then(res=>{
console.log(res);
this.$message.success(this.$t('SavedSuccessfully'))
postAction('/ota/otaBaSjSjfzbh/add' ,{otaId:localStorage.getItem('otaId')== undefined ? '' :localStorage.getItem('otaId'),list:this.dataSource}).then(res=>{
if(res.code==200){
this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
})
},
uploadSuccess(data) {
@@ -12,7 +12,9 @@
<a-form-model-item class="itemModel" prop="dutyTerritory">
<a-input
: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>
</div>
</a-col>
@@ -108,8 +110,10 @@ export default {
}
this.queryParam.otaId = otaId
postAction('/ota/otaBaSjQtsjxx/add' ,this.queryParam).then(res=>{
this.$message.success(this.$t('SavedSuccessfully'))
console.log(res);
if(res.code==200){
this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
})
},
@@ -22,6 +22,7 @@
<a-input class="box-input"
:disabled="disabled"
v-model="formInline.zsl"
:title='formInline.zsl'
:placeholder="$t('PleaseSelect')"></a-input>
</a-form-model-item>
</div>
@@ -54,7 +55,8 @@
<a-form-model-item class="itemModel" prop="VINcodelist">
<a-textarea :placeholder="$t('pleaseEnter')+$t('VINcodelist')"
v-model="formInline.vinList"
:rows="4"/>
:rows="4"
:max-length="500"/>
</a-form-model-item>
<!-- <a-form-model-item class="itemModel" prop="VINcodelist">-->
<!-- <a-button type="primary" class="button-text"-->
@@ -164,7 +166,10 @@ export default {
obj.vinList = this.formInline.vinList
postAction('/ota/otaBaSjSjmbcl/add',obj).then(res=>{
if(res.code==200){
this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
})
},
next(){
@@ -23,42 +23,42 @@
style="margin-bottom: 20px"
>
<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 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 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 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 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 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 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 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 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 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 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 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 slot="operation" slot-scope="text,record">
@@ -290,8 +290,10 @@ export default {
},
save(){
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.getData()
}
})
},
last(){
@@ -63,7 +63,12 @@
</span>
</a-layout-content>
<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('format')}}</span>
</a-layout-content>
@@ -135,7 +140,12 @@
</span>
</div>
<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('format')}}</span>
</div>
@@ -388,8 +398,10 @@ this.$forceUpdate()
}
this.form.otaId=otaId
postAction('/ota/otaBaSjSjyxpg/add',this.form).then(res=>{
this.$message.success(this.$t('SavedSuccessfully'))
console.log(res);
if(res.code==200){
this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
})
},
last(){
@@ -41,7 +41,7 @@
</div>
<div class="title-text-add-input">
<!-- <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>
</a-col>
@@ -52,7 +52,7 @@
</div>
<div class="title-text-add-input">
<!-- <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>
</a-col>
@@ -77,7 +77,7 @@
<span class="title-text-text" :title="$t('producttrademark')">{{$t('producttrademark')}}</span>
</div>
<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>
</div>
@@ -88,7 +88,7 @@
<span class="title-text-text" :title="$t('productname')">{{$t('productname')}}</span>
</div>
<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>
</div>
@@ -99,7 +99,7 @@
<span class="title-text-text" :title="$t('productModel')">{{$t('productModel')}}</span>
</div>
<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>
</div>
@@ -198,6 +198,7 @@ import ImportFile from '@/components/ImportFileData/index'
getAction('/ota/otaBaSjSjmbcx/queryByOtaId',{otaIdT:otaIdT,otaId:otaId}).then(res=>{
if(res.code == 200){
this.form=res.result ==null?{}:res.result
}
})
},
@@ -207,8 +208,11 @@ import ImportFile from '@/components/ImportFileData/index'
otaId=''
}
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)
this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
})
},
next(){
@@ -22,6 +22,8 @@
<a-form-model-item class="itemModel" prop="sjmd">
<a-input class="box-input"
:disabled="disabled"
:max-length="500"
:title='formInline.sjmd'
v-model='formInline.sjmd'
:placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item>
@@ -35,6 +37,8 @@
<a-form-model-item class="itemModel" prop="gxbh">
<a-input class="box-input"
:disabled="disabled"
:max-length="500"
:title='formInline.gxbh'
v-model='formInline.gxbh'
:placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item>
@@ -48,6 +52,8 @@
<a-form-model-item class="itemModel" prop="sjsj">
<a-input class="box-input"
:disabled="disabled"
:max-length="50"
:title='formInline.sjsj'
v-model='formInline.sjsj'
:placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item>
@@ -61,6 +67,8 @@
<a-form-model-item class="itemModel" prop="sjky">
<a-input class="box-input"
:disabled="disabled"
:max-length="50"
:title='formInline.sjky'
v-model='formInline.sjky'
:placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item>
@@ -74,6 +82,8 @@
<a-form-model-item class="itemModel" prop="sjbkygn">
<a-input class="box-input"
:disabled="disabled"
:max-length="50"
:title='formInline.sjbkygn'
v-model='formInline.sjbkygn'
:placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item>
@@ -87,6 +97,8 @@
<a-form-model-item class="itemModel" prop="zdxx">
<a-input class="box-input"
:disabled="disabled"
:max-length="500"
:title='formInline.zdxx'
v-model='formInline.zdxx'
:placeholder="$t('pleaseEnter')"></a-input>
</a-form-model-item>
@@ -252,8 +264,10 @@ export default {
}
this.formInline.otaId = otaId
postAction('/ota/otaBaSjGgnrfs/add' ,this.formInline).then(res=>{
this.$message.success(this.$t('SavedSuccessfully'))
console.log(res);
if(res.code==200){
this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
})
},
@@ -35,10 +35,11 @@
</div>
<a-form-model-item class="itemModel">
<a-input
:max-length="500"
:max-length="50"
:disabled="disabled"
class="box-input"
:placeholder="$t('pleaseEnter')"
:title='form.qymc'
v-model="form.qymc">
</a-input>
</a-form-model-item>
@@ -53,8 +54,9 @@
<a-form-model-item class="itemModel" prop="djbh">
<a-input
:max-length="500"
:max-length="50"
:disabled="disabled"
:title='form.djbh'
class="box-input"
:placeholder="$t('pleaseEnter')"
v-model.trim="form.djbh">
@@ -88,8 +90,9 @@
<a-input
:max-length="500"
:disabled="disabled"
:title='form.ggpc'
class="box-input"
:placeholder="$t('PleaseSelect')"
:placeholder="$t('pleaseEnter')"
v-model="form.ggpc">
</a-input>
</a-form-model-item>
@@ -102,10 +105,11 @@
</div>
<a-form-model-item class="itemModel">
<a-input
:max-length="500"
:max-length="50"
:disabled="disabled"
:title='form.cpsb'
class="box-input"
:placeholder="$t('PleaseSelect')"
:placeholder="$t('pleaseEnter')"
v-model="form.cpsb">
</a-input>
</a-form-model-item>
@@ -118,10 +122,11 @@
</div>
<a-form-model-item class="itemModel">
<a-input
:max-length="500"
:max-length="50"
:disabled="disabled"
:title='form.cpmc'
class="box-input"
:placeholder="$t('PleaseSelect')"
:placeholder="$t('pleaseEnter')"
v-model="form.cpmc">
</a-input>
</a-form-model-item>
@@ -135,10 +140,11 @@
</div>
<a-form-model-item class="itemModel">
<a-input
:max-length="500"
:max-length="50"
:disabled="disabled"
:title='form.cpxh'
class="box-input"
:placeholder="$t('PleaseSelect')"
:placeholder="$t('pleaseEnter')"
v-model="form.cpxh">
</a-input>
</a-form-model-item>
@@ -320,7 +326,8 @@ import { message } from 'ant-design-vue'
this.form.cpmc=res.result.cpmc
this.form.cpxh=res.result.cpxh
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){
this.form.cxmb = this.form.ggpc+'-'+ this.form.cpmc+'-'+this.form.cpxh
}else {
@@ -14,7 +14,7 @@
size="middle"
:loading="loading"
:pagination="false"
:scroll="{x: '100%',y:'calc(100vh - 140px)'}"
:scroll="this.dataSource.length > 1 ? {x: '100%',y:'calc(100vh - 140px)'} : {x: '100%'}"
rowKey="id"
bordered
: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>
</span>
<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 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 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 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 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 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 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 slot="operation" slot-scope="text,record">
@@ -366,7 +366,7 @@ import ImportFile from '@/components/ImportFileData/index'
this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
})
},
last(){
@@ -218,7 +218,7 @@
<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 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>
</div>
</div>
@@ -234,7 +234,7 @@
style="margin-bottom: 20px"
>
<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 slot="systemclass" slot-scope="text,record" >
@@ -244,22 +244,22 @@
</a-radio-group>
</span>
<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 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 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 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 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 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 slot="operation" slot-scope="text,record">
@@ -902,7 +902,7 @@ export default {
// 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[3].info= res.result.xxaqjz
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.$refs.uploadFile.perentHandleFunc(this.fileList.uploadName)
@@ -229,7 +229,7 @@ export default {
this.dataSource[8].relevantverification=Number(res.result.sjgg)
this.dataSource[9].relevantverification=Number(res.result.sjzt)
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.$refs.uploadFile.perentHandleFunc(this.fileList.uploadName)
@@ -43,37 +43,37 @@
</a-button>
</span>
<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 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 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 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 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 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 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 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 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 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 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 slot="operation" slot-scope="text,record" >
@@ -10,14 +10,14 @@
:visible="visible"
style="height: 100%;overflow: auto;padding-bottom: 53px;">
<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-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('directoryName')">{{$t('directoryName')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-form-model-item class="itemModel" prop="directoryName">
<a-input class="box-input"
:disabled="disabled"
v-model.trim="formInline.directoryName"
@@ -30,7 +30,7 @@
<div class="title-text">
<span class="title-text-text" :title="$t('batch')">{{$t('batch')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-form-model-item class="itemModel" prop="lot">
<a-input class="box-input"
:disabled="disabled"
v-model.trim="formInline.lot"
@@ -77,7 +77,7 @@
<div class="title-text">
<span class="title-text-text" :title="$t('testReportLocation')">{{$t('testReportLocation')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-form-model-item class="itemModel" prop="detectionReportLocation">
<a-input class="box-input"
:disabled="disabled"
v-model.trim="formInline.detectionReportLocation"
@@ -93,7 +93,7 @@
<span class="title-text-text"
:title="$t('explain')">{{$t('explain')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-form-model-item class="itemModel" prop="explainInfo">
<a-textarea
style="width: 100%"
:placeholder="$t('PleaseEnter')+$t('explain')"
@@ -127,6 +127,36 @@
return {
visible: false,
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,
disabled: false,
url: {
@@ -142,47 +172,55 @@
add() {
this.visible = true
this.formInline = {}
this.$nextTick(() => {
this.$refs.ruleForm.clearValidate()
})
},
edit(val) {
this.visible = true
this.$nextTick(() => {
this.formInline = val
this.$refs.ruleForm.clearValidate()
})
},
handleCancel() {
this.visible = false
},
handleSubmit() {
if (!this.formInline.directoryName && !this.formInline.lot && !this.formInline.directoryFile &&
!this.formInline.experimentFile && !this.formInline.detectionReportLocation && !this.formInline.explainInfo) {
this.$message.warning(this.$t('dataCannotEmpty'))
} else {
let Action
let url = ''
if (this.formInline.id) {
url = this.url.edit
Action = putAction
} else {
url = this.url.add
Action = postAction
}
let query = {
projectLibraryId: this.$route.query.id,
...this.formInline
}
this.confirmLoading = true
Action(url, query).then((res) => {
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
this.visible = false
this.confirmLoading = false
this.$emit('certificationDirectoryList')
} else {
this.confirmLoading = false
this.$message.warning(res.message)
}
})
}
this.$refs.ruleForm.validate(valid => {
if (valid){
if (!this.formInline.directoryName && !this.formInline.lot && !this.formInline.directoryFile &&
!this.formInline.experimentFile && !this.formInline.detectionReportLocation && !this.formInline.explainInfo) {
this.$message.warning(this.$t('dataCannotEmpty'))
} else {
let Action
let url = ''
if (this.formInline.id) {
url = this.url.edit
Action = putAction
} else {
url = this.url.add
Action = postAction
}
let query = {
projectLibraryId: this.$route.query.id,
...this.formInline
}
this.confirmLoading = true
Action(url, query).then((res) => {
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
this.visible = false
this.confirmLoading = false
this.$emit('certificationDirectoryList')
} else {
this.confirmLoading = false
this.$message.warning(res.message)
}
})
}
}
})
},
clickButtonToUpload(item) {
this.$refs.uploadFile.perentHandleFunc()
@@ -96,16 +96,18 @@
pageNo: 1,
pageSize: 10,
total: 0,
ids: ''
ids: '',
detailedWarningList: []
}
},
mounted() {
},
methods: {
transferModel(ids) {
transferModel(ids, detailedWarningList) {
this.visible = true
this.queryParam = {}
this.detailedWarningList = detailedWarningList
this.selectedRowKeys = []
this.ids = ids.join(',')
this.replacePage()
@@ -154,10 +156,20 @@
handleCancel() {
this.visible = false
},
failedMessageOne(data) {
let detailedWarningList = data
this.$warning({
content: ( < div > { detailedWarningList } < /div>)
})
},
handleSubmit() {
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
this.confirmLoading = true
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', {
projectCertificationInventoryIds: this.ids,
projectLibraryId: this.$route.query.id,
@@ -173,6 +185,9 @@
this.visible = false
this.selectedRowKeys = []
this.$emit('referenceDeliverablesListForm')
if (this.detailedWarningList && this.detailedWarningList.length > 0) {
this.failedMessageOne(this.detailedWarningList)
}
} else {
if (res.result) {
this.$message.warning(res.result)
@@ -78,7 +78,8 @@
</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"/>
{{ $t('preservation') }}
</div>
@@ -687,7 +688,7 @@
title: this.$t('DeliverablesResult'),
align: 'left',
dataIndex: 'deliveryResult',
width: 180,
width: 210,
ellipsis: true,
scopedSlots: { customRender: 'DeliverablesResult' }
},
@@ -1406,17 +1407,45 @@
referenceDeliverablesClick() {
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
let isTrue
for (let i = 0; i < this.selectedRowKeysList.length; i++) {
if (this.selectedRowKeysList[i].flowStatus == 'Results to be submitted') {
isTrue = true
} else {
isTrue = false
this.$message.warning(this.$t('youCanOnlySelectStatusClearSubmit'))
return
let ids = []
let notConditions = []
let notConditionsOne = []
let data = ''
let dataOne = ''
let detailedWarningList= []
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) {
this.$refs.referenceDeliverablesListRef.transferModel(JSON.parse(JSON.stringify(this.selectedRowKeys)))
if (notConditions && notConditions.length > 0) {
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 {
this.$message.warning(this.$t('selectLeastOne'))
@@ -1738,7 +1767,12 @@
content: ( < div > { detailedWarningList } < /div>)
})
},
failedMessageOne(data) {
let detailedWarningList = data
this.$warning({
content: ( < div > { detailedWarningList } < /div>)
})
},
submitTask(value, prompt, ids, notConditions, data) {
let _this = this
this.$confirm({
@@ -40,6 +40,11 @@
<span slot="approvalResult" slot-scope="text,result">
{{approvalResult[text]}}
</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 class="viewFile"
@click="viewFileClick(result.approvalFile)"
@@ -78,7 +83,40 @@
return {
loading: false,
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',
name: this.$t('initiatingProcess')
@@ -100,6 +138,7 @@
name: this.$t('missionAccomplished')
}
],
regulatoryCertificationTaskPlanList: [],
columns: [
{
title: this.$t('Operator'),
@@ -131,6 +170,7 @@
align: 'left',
width: 160,
ellipsis: true,
scopedSlots: { customRender: 'resultofhandling' }
},
{
title: this.$t('feedback'),
@@ -151,6 +191,7 @@
}
},
mounted() {
console.log(this.queryProject)
this.getList()
},
methods: {
@@ -163,8 +204,13 @@
if (res.success) {
this.dataSource = res.result || []
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]
if (this.queryProject.TaskKey == 'fqlc'){
if (this.queryProject.TaskKey == 'fqlc') {
this.regulatoryCertificationTaskPlanList.forEach(val => {
if (val.name == this.$t('initiatingProcess')) {
val.status = '2'
@@ -194,13 +240,15 @@
val.status = '1'
} else if (val.name == this.$t('designComplianceReview')) {
val.status = '2'
} else if (val.name == this.$t('verificationComplianceReview')) {
val.status = '2'
} else {
val.status = '3'
}
})
}
if (this.queryProject.TaskKey == 'fggcssh') {
if (taskData.operatorResult == 'Adopt'){
if (taskData.operatorResult == 'Adopt') {
this.regulatoryCertificationTaskPlanList.forEach(val => {
if (val.name == this.$t('initiatingProcess')) {
val.status = '1'
@@ -210,11 +258,15 @@
val.status = '1'
} else if (val.name == this.$t('designComplianceReviewAdmin')) {
val.status = '1'
} else if (val.name == this.$t('verificationComplianceReview')) {
val.status = '1'
} else if (val.name == this.$t('verificationComplianceExamine')) {
val.status = '1'
} else {
val.status = '1'
}
})
}else{
} else {
this.regulatoryCertificationTaskPlanList.forEach(val => {
if (val.name == this.$t('initiatingProcess')) {
val.status = '1'
@@ -222,8 +274,12 @@
val.status = '1'
} else if (val.name == this.$t('designComplianceReview')) {
val.status = '1'
} else if (val.name == this.$t('verificationComplianceReview')) {
val.status = '1'
} else if (val.name == this.$t('designComplianceReviewAdmin')) {
val.status = '2'
} else if (val.name == this.$t('verificationComplianceExamine')) {
val.status = '2'
} else {
val.status = '3'
}
@@ -248,6 +304,7 @@
<style scoped lang="less">
@import '~@assets/less/common.less';
.box {
padding: 0 0 24px 0;
box-sizing: border-box;
@@ -331,6 +388,7 @@
}
}
}
.process-content-content:first-child {
padding: 0 10px 0 0;
}
@@ -338,6 +396,7 @@
.process-content-content:last-child {
padding: 0 0 0 10px;
}
.process-content-right-xian {
height: 2px;
width: calc(100% - 27px);
@@ -346,4 +405,94 @@
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>
@@ -49,6 +49,9 @@
<a-radio value="Transfer" v-if="query.TaskKey == 'zrrtjjfw' || query.TaskKey == 'zrrqr'">
{{$t('turnToDo')}}
</a-radio>
<span>
{{this.formInline.dezrrSubmitUserName}}
</span>
</a-radio-group>
</a-form-model-item>
</a-col>
@@ -184,16 +187,21 @@
} else {
this.$refs.SelectedByRef.visible = false
this.formInline.secondChargePersonUserId = ''
this.formInline.dezrrSubmitUserName = ''
this.formInline.dezrrSubmitUserId = ''
}
},
//转办接口
SelectedByForm(userIds) {
SelectedByForm(userIds, name) {
if (this.query.TaskKey == 'zrrtjjfw') {
this.formInline.dezrrSubmitUserId = userIds
} else {
this.formInline.secondChargePersonUserId = userIds
}
this.formInline.dezrrSubmitUserName = name
this.formInline = { ...this.formInline }
this.$refs.SelectedByRef.visible = false
this.$refs.SelectedByRef.submitLoading = false
},
submitNoRule(callBack) {
callBack(this.formInline)
@@ -310,14 +310,14 @@
title: this.$t('configurationItem'),
align: 'left',
dataIndex: 'configItem',
width: 150,
width: 200,
ellipsis: true
},
{
title: 'WVTA ID',
align: 'left',
dataIndex: 'wvtaId',
width: 150,
width: 200,
ellipsis: true
},
{
@@ -338,14 +338,14 @@
title: this.$t('typeOfDeliverables'),
align: 'left',
dataIndex: 'deliverableTypeName',
width: 200,
width: 330,
ellipsis: true
},
{
title: this.$t('operation'),
align: 'left',
fixed: 'right',
width: 200,
width: 250,
scopedSlots: { customRender: 'operation' }
}
],
@@ -544,7 +544,7 @@
</script>
<style lang='less' scoped>
@import '~@assets/less/common.less';
@import'~@assets/less/common.less';
.doc-detail {
background: #fff;