From aaba11028a38396147d8d8ab6ebcbed2da343e75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AB=98=E5=B5=A9?= Date: Tue, 28 Mar 2023 11:23:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BC=80=E5=8F=91OTA=E5=A4=87=E6=A1=88?= =?UTF-8?q?=E5=B7=A5=E5=85=B7-=E8=BD=A6=E8=BE=86=E5=8D=87=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ota/controller/OtaBaCxJbxxController.java | 1 - .../controller/OtaBaSjSjmbclController.java | 13 ++ .../controller/OtaBaSjSjmbcxController.java | 17 +- .../jero/modules/ota/entity/OtaBaSjList.java | 7 + .../modules/ota/entity/OtaBaSjSjmbcl.java | 5 + .../jero/modules/ota/enums/OtaModuleEnum.java | 10 +- .../ota/service/IOtaBaSjSjmbclService.java | 2 + .../ota/service/IOtaBaSjSjmbcxService.java | 4 +- .../service/impl/OtaBaCxJbxxServiceImpl.java | 6 +- .../impl/OtaBaSjSjmbclServiceImpl.java | 143 +++++++++++------ .../impl/OtaBaSjSjmbcxServiceImpl.java | 151 ++++++++++++------ 11 files changed, 257 insertions(+), 102 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaCxJbxxController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaCxJbxxController.java index 3294f24a9..442f6666a 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaCxJbxxController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaCxJbxxController.java @@ -156,7 +156,6 @@ public class OtaBaCxJbxxController extends JeroController 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); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaSjSjmbclController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaSjSjmbclController.java index 7b598f04e..27a1979ed 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaSjSjmbclController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaSjSjmbclController.java @@ -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 queryByOtaId(@RequestParam(name = "otaId") String otaId, + @RequestParam(name = "otaIdT") String otaIdT) { + OtaBaSjSjmbcl otaBaSjSjmbcl = otaBaSjSjmbclService.queryByOtaId(otaId, otaIdT); + return Result.OK(otaBaSjSjmbcl); + } + /** * 导出excel * diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaSjSjmbcxController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaSjSjmbcxController.java index 72eebbbed..80dd6e4dc 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaSjSjmbcxController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaBaSjSjmbcxController.java @@ -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 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 queryByOtaId(@RequestParam(name = "otaId") String otaId, + @RequestParam(name = "otaIdT") String otaIdT) { + OtaBaSjSjmbcx otaBaSjSjmbcx = otaBaSjSjmbcxService.queryByOtaId(otaId, otaIdT); + return Result.OK(otaBaSjSjmbcx); + } + /** * 导出excel * diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/entity/OtaBaSjList.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/entity/OtaBaSjList.java index c2bb79658..e249c7865 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/entity/OtaBaSjList.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/entity/OtaBaSjList.java @@ -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(); + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/entity/OtaBaSjSjmbcl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/entity/OtaBaSjSjmbcl.java index e543fae9d..cb5186be4 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/entity/OtaBaSjSjmbcl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/entity/OtaBaSjSjmbcl.java @@ -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; + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/enums/OtaModuleEnum.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/enums/OtaModuleEnum.java index 61810a623..b581d6e6b 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/enums/OtaModuleEnum.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/enums/OtaModuleEnum.java @@ -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; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaBaSjSjmbclService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaBaSjSjmbclService.java index 45a0e5e8e..73e7e44da 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaBaSjSjmbclService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaBaSjSjmbclService.java @@ -58,4 +58,6 @@ public interface IOtaBaSjSjmbclService extends IService { * @return */ List queryList(); + + OtaBaSjSjmbcl queryByOtaId(String otaId, String otaIdT); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaBaSjSjmbcxService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaBaSjSjmbcxService.java index 27e4d944d..99c6198ba 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaBaSjSjmbcxService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/IOtaBaSjSjmbcxService.java @@ -18,7 +18,7 @@ public interface IOtaBaSjSjmbcxService extends IService { * @param otaBaSjSjmbcx * @return */ - void add(OtaBaSjSjmbcx otaBaSjSjmbcx); + OtaBaSjSjmbcx add(OtaBaSjSjmbcx otaBaSjSjmbcx); /** * 更新 @@ -58,4 +58,6 @@ public interface IOtaBaSjSjmbcxService extends IService { * @return */ List queryList(); + + OtaBaSjSjmbcx queryByOtaId(String otaId, String otaIdT); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaCxJbxxServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaCxJbxxServiceImpl.java index 34087c8b7..1dd502db9 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaCxJbxxServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaCxJbxxServiceImpl.java @@ -64,7 +64,7 @@ public class OtaBaCxJbxxServiceImpl extends ServiceImpl reList = cu.comparisonRecord(otaBaCxJbxx.getOtaId(), OtaModuleEnum.CX_CXJBXX, OtaBaCxJbxxOld, otaBaCxJbxx, sysDictService); + List reList = cu.comparisonRecord(otaBaCxJbxx.getOtaId(), OtaModuleEnum.CX_CXJBXX, otaBaCxJbxxOld, otaBaCxJbxx, sysDictService); otaBaCxTxjlService.saveBatch(reList); return otaBaCxJbxx; } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaSjSjmbclServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaSjSjmbclServiceImpl.java index 87f119395..d74075955 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaSjSjmbclServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaSjSjmbclServiceImpl.java @@ -1,89 +1,138 @@ 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 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 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 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 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) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(OtaBaSjSjmbcl::getOtaId, otaId); + return this.getOne(queryWrapper, false); + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaSjSjmbcxServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaSjSjmbcxServiceImpl.java index a6f8597a2..36d90192f 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaSjSjmbcxServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaBaSjSjmbcxServiceImpl.java @@ -1,89 +1,146 @@ 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 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 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 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 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) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(OtaBaSjSjmbcx::getOtaId, otaId); + return this.getOne(queryWrapper, false); + } }