From 982de96ec23aedb5c2460afeb9c207f3c25a722e Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Mon, 21 Aug 2023 17:08:25 +0800 Subject: [PATCH 1/2] =?UTF-8?q?OTA=E8=BD=AF=E4=BB=B6=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OtaManageApplyEOController.java | 20 +++++- .../ota/service/IOtaManageApplyEOService.java | 8 ++- .../impl/OtaManageApplyEOServiceImpl.java | 68 +++++++++++++++++-- .../com/jero/modules/ota/vo/OtaExportVO.java | 34 ++++++++++ 4 files changed, 119 insertions(+), 11 deletions(-) create mode 100644 jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/vo/OtaExportVO.java diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java index 6dacdb7dd..d208101fd 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/controller/OtaManageApplyEOController.java @@ -3,9 +3,11 @@ package com.jero.modules.ota.controller; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; import com.jero.common.aspect.annotation.AutoLog; import com.jero.common.system.base.controller.JeroController; +import com.jero.common.util.PageUtil; import com.jero.modules.ota.entity.OtaManageApplyEO; import com.jero.modules.ota.service.IOtaManageApplyEOService; import com.jero.modules.ota.vo.VersionVO; @@ -50,8 +52,9 @@ public class OtaManageApplyEOController extends JeroController pageList = otaManageApplyEOService.getOtaPage(otaManageApplyEO,pageNo,pageSize); - return Result.OK(pageList); + List list = otaManageApplyEOService.getOtaPage(otaManageApplyEO); + Page pages = PageUtil.getPages(pageNo, pageSize, list); + return Result.OK(pages); } /** * 分车型列表-分页列表查询 @@ -280,4 +283,17 @@ public class OtaManageApplyEOController extends JeroController { /** * OTA管理列表和全车型列表-分页列表查询 * @param otaManageApplyEO - * @param pageNo - * @param pageSize * @return */ - IPage getOtaPage(OtaManageApplyEO otaManageApplyEO,Integer pageNo,Integer pageSize); + List getOtaPage(OtaManageApplyEO otaManageApplyEO); /** * 分车型列表-分页列表查询 @@ -123,4 +123,6 @@ public interface IOtaManageApplyEOService extends IService { List getVdrListByProject(String projectId, String cut); List getStatisticalStatus(String projectId, String plannedBpLaunchBatch, String cut); + + ModelAndView otaExportXls(HttpServletRequest request, OtaManageApplyEO otaManageApplyEO); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java index d49d6fcec..b805645f6 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/service/impl/OtaManageApplyEOServiceImpl.java @@ -8,6 +8,7 @@ import com.jero.common.constant.enums.CutEnum; import com.jero.common.system.vo.LoginUser; import com.jero.common.util.DateUtils; import com.jero.common.util.PageUtil; +import com.jero.common.util.oConvertUtils; import com.jero.modules.dummy.enums.OrderEnum; import com.jero.modules.ota.entity.OtaManageApplyEO; import com.jero.modules.ota.entity.OtaManageReceiveNsdpEO; @@ -17,6 +18,7 @@ import com.jero.modules.ota.enums.OtaStatusEnum; import com.jero.modules.ota.mapper.OtaManageApplyEOMapper; import com.jero.modules.ota.service.IOtaManageApplyEOService; import com.jero.modules.ota.service.IOtaManageHistoryService; +import com.jero.modules.ota.vo.OtaExportVO; import com.jero.modules.ota.vo.VersionVO; import com.jero.modules.project.entity.ProjectLibraryBase; import com.jero.modules.project.entity.ProjectTaskPlanning; @@ -34,13 +36,32 @@ import com.jero.modules.system.util.StringUtils; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; import org.apache.shiro.SecurityUtils; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.web.servlet.ModelAndView; +import javax.servlet.http.HttpServletRequest; import java.text.Collator; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.Comparator; +import java.util.Date; +import java.util.HashMap; +import java.util.HashSet; +import java.util.LinkedList; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Set; +import java.util.UUID; import java.util.stream.Collectors; /** @@ -69,6 +90,9 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl getOtaPage(OtaManageApplyEO otaManageApplyEO, Integer pageNo, Integer pageSize) { + public List getOtaPage(OtaManageApplyEO otaManageApplyEO) { List otaManageApplyEOList = otaManageApplyEOMapper.getOtaList(otaManageApplyEO); if(!otaManageApplyEOList.isEmpty()){ List otaNameList = OtaCarEnum.getOtaNameList(); @@ -223,8 +245,7 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl otaManageApplyEOList) { @@ -1060,5 +1081,40 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl pageList = getOtaPage(otaManageApplyEO); + List exportList = null; + + // 过滤选中数据 + String selections = request.getParameter("selections"); + if (oConvertUtils.isNotEmpty(selections)) { + List selectionList = Arrays.asList(selections.split(",")); + exportList = pageList.stream().filter(e -> selectionList.contains(e.getId())).collect(Collectors.toList()); + } else { + exportList = pageList; + } + + List dataList = new ArrayList<>(); + for (OtaManageApplyEO manageApplyEO : exportList) { + OtaExportVO otaExportVO = new OtaExportVO(); + BeanUtils.copyProperties(manageApplyEO, otaExportVO); + dataList.add(otaExportVO); + } + + // Step.3 AutoPoi 导出Excel + ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); + mv.addObject(NormalExcelConstants.FILE_NAME, "OTA列表"); //此处设置的filename无效 ,前端会重更新设置一下 + mv.addObject(NormalExcelConstants.CLASS, OtaExportVO.class); + ExportParams exportParams=new ExportParams("OTA软件版本", null, "OTA软件版本"); + mv.addObject(NormalExcelConstants.PARAMS,exportParams); + mv.addObject(NormalExcelConstants.DATA_LIST, dataList); + return mv; + + } + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/vo/OtaExportVO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/vo/OtaExportVO.java new file mode 100644 index 000000000..66adf94c2 --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ota/vo/OtaExportVO.java @@ -0,0 +1,34 @@ +package com.jero.modules.ota.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.jeecgframework.poi.excel.annotation.Excel; + +import java.util.Date; + +/** + * @description + * @date 2023/8/9 11:28 + * @auth zhn + */ +@Data +public class OtaExportVO { + + @Excel(name = "软件版本", width = 15) + @ApiModelProperty(value = "软件版本") + private java.lang.String plannedBpLaunchBatch; + + @Excel(name = "市场", width = 15) + @ApiModelProperty(value = "市场") + private java.lang.String market; + + @Excel(name = "适用车型", width = 50) + @ApiModelProperty(value = "适用车型") + private java.lang.String appliedVehicleProject; + + @Excel(name = "软件发布时间", width = 15) + @ApiModelProperty(value = "软件发布时间") + private String releaseName; + +} From 767ced688f4a9e4c882fcc96344d3b38a1431362 Mon Sep 17 00:00:00 2001 From: "zyx.net" Date: Mon, 21 Aug 2023 17:16:38 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=85=A8=E8=BD=A6=E5=9E=8B=E5=AF=BC?= =?UTF-8?q?=E5=85=A5=E5=AF=B9=E6=8E=A5=20=E5=88=86=E8=BD=A6=E5=9E=8B?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E5=AF=B9=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jero-web/src/common/lang/en-us.js | 1 + jero-web/src/common/lang/zh-cn.js | 1 + .../otaAuthentication/components/detil.vue | 37 ++++++++----------- .../otaAuthentication/components/remark.vue | 2 +- 4 files changed, 18 insertions(+), 23 deletions(-) diff --git a/jero-web/src/common/lang/en-us.js b/jero-web/src/common/lang/en-us.js index a043b7605..a17d8af46 100644 --- a/jero-web/src/common/lang/en-us.js +++ b/jero-web/src/common/lang/en-us.js @@ -1950,4 +1950,5 @@ module.exports = { lock:'lock', datacannotbeedited:'This data cannot be edited', Rematchornot:'Rematch or not', + Modifyremarks:'Modify remarks', } \ No newline at end of file diff --git a/jero-web/src/common/lang/zh-cn.js b/jero-web/src/common/lang/zh-cn.js index 445fa392b..311cc252b 100644 --- a/jero-web/src/common/lang/zh-cn.js +++ b/jero-web/src/common/lang/zh-cn.js @@ -3906,4 +3906,5 @@ module.exports = { lock:'锁定', datacannotbeedited:'该数据不能进行编辑', Rematchornot:'是否重新匹配', + Modifyremarks:'修改备注', } \ No newline at end of file diff --git a/jero-web/src/views/otamanagement/otaAuthentication/components/detil.vue b/jero-web/src/views/otamanagement/otaAuthentication/components/detil.vue index 6601d23cf..f68cf91fe 100644 --- a/jero-web/src/views/otamanagement/otaAuthentication/components/detil.vue +++ b/jero-web/src/views/otamanagement/otaAuthentication/components/detil.vue @@ -103,61 +103,55 @@
-
{{ $t('export') }}
-
{{ $t('issuenotice') }}
-
{{ $t('export') }}
-
{{ $t('BatchSetting') }}
-
{{ $t('applyforrematch') }}
-
{{ $t('preservation') }}
-
{{ $t('submit') }}
- - - - - - -
{{ $t('confirm') }}
-
{{ $t('sendBack') }} @@ -1016,24 +1010,23 @@ export default { // console.log('menuId',this.menuId) let dateName = moment(new Date()).format('YYYYMMDD') let name = '' + let url = '' switch (code){ case 'all': - name = this.softwareversion; + url = 'ota/otaManageApplyEO/allCarExportXls' break; case 'studio': - name = this.softwareversion; - break; - case 'manger': - name = this.softwareversion; + url = 'ota/otaManageApplyEO/oneCarExportXls' break; } let exportName = name + ' ' + dateName + '.xlsx' let query = { exportName: exportName, - idList: this.selectedRowKeys.join(','), + selections: this.selectedRowKeys.join(','), + ...this.queryParam } - downloadFile('split/sarFileSplitItems/exportSplitInfoZip', exportName, query, this.selectClear) + downloadFile(url, exportName, query, this.selectClear) }, // 下发通知 issuenotice(){ diff --git a/jero-web/src/views/otamanagement/otaAuthentication/components/remark.vue b/jero-web/src/views/otamanagement/otaAuthentication/components/remark.vue index 4f4bb4496..e8d571859 100644 --- a/jero-web/src/views/otamanagement/otaAuthentication/components/remark.vue +++ b/jero-web/src/views/otamanagement/otaAuthentication/components/remark.vue @@ -1,7 +1,7 @@