From c8ce54bc79dba828667ab1c7d0b601b3a52e2633 Mon Sep 17 00:00:00 2001 From: God <10745413@qq.com> Date: Sun, 25 Jun 2023 10:15:40 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BaseBrandletpricepowimitService.java | 30 ++++++++++++++-- .../BaseRoleletpricepowimitMapper.java | 2 ++ .../BaseRoleletpricepowimitMapper.xml | 36 ++++++++++++++----- .../BaseRoleletpricepowimitService.java | 5 +++ 4 files changed, 61 insertions(+), 12 deletions(-) diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basebrandletpricepowimit/BaseBrandletpricepowimitService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basebrandletpricepowimit/BaseBrandletpricepowimitService.java index ed2ef604c8..9f1b717a77 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basebrandletpricepowimit/BaseBrandletpricepowimitService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basebrandletpricepowimit/BaseBrandletpricepowimitService.java @@ -47,7 +47,9 @@ import com.yxt.common.core.vo.PagerVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * Project: anrui-base(品牌让价权限)
@@ -137,12 +139,34 @@ public class BaseBrandletpricepowimitService extends MybatisBaseService baseRoleletpricepowimits = dto.getBaseRoleletpricepowimits(); + List baseRoleletpricepowimitsNew = new ArrayList<>(); if (StringUtils.isBlank(dtoSid)) { this.insertByDto(dto); return rb.success(); } - for (int i = 0; i < baseRoleletpricepowimits.size(); i++) { - + for (BaseRoleletpricepowimitDto baseRoleletpricepowimit : baseRoleletpricepowimits) { + //判断数据库是否存在重复数据 + QueryWrapper qw = new QueryWrapper<>(); + qw.eq("bbw.brandSid",dto.getBrandSid()); + qw.eq("bbw.useOrgSid",dto.getUseOrgSid()); + qw.eq("brw.deptSid",baseRoleletpricepowimit.getDeptSid()); + qw.eq("brw.roleSid",baseRoleletpricepowimit.getRoleSid()); + qw.ne("brw.mainSid",dtoSid); + int i = baseRoleletpricepowimitService.selDeptAndRoleSid(qw); + if (i > 0){ + return rb.setMsg("选择的关系已存在,请重新选择"); + } + //判断选择的数据是否重复 + if (baseRoleletpricepowimitsNew.size() == 0){ + baseRoleletpricepowimitsNew.add(baseRoleletpricepowimit); + } + for (BaseRoleletpricepowimitDto baseRoleletpricepowimitDto : baseRoleletpricepowimitsNew) { + if (baseRoleletpricepowimit.getDeptSid().equals(baseRoleletpricepowimitDto.getDeptSid()) && baseRoleletpricepowimit.getRoleSid().equals(baseRoleletpricepowimitDto.getRoleSid())){ + return rb.setMsg("选择的部门和角色不可重复,请重新选择"); + }else { + baseRoleletpricepowimitsNew.add(baseRoleletpricepowimit); + } + } } this.updateByDto(dto); BaseBrandletpricepowimit baseBrandletpricepowimit = fetchBySid(dtoSid); @@ -150,7 +174,7 @@ public class BaseBrandletpricepowimitService extends MybatisBaseService qw); } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitMapper.xml index 9e7c1ef052..7fcb2ae0c3 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitMapper.xml +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitMapper.xml @@ -1,13 +1,31 @@ - - - - - + + + + + + + \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitService.java index d301131ced..c8765043f4 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitService.java @@ -26,6 +26,7 @@ package com.yxt.anrui.base.biz.baseroleletpricepowimit; import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.commons.lang3.StringUtils; @@ -115,4 +116,8 @@ public class BaseRoleletpricepowimitService extends MybatisBaseService qw) { + return baseMapper.selDeptAndRoleSid(qw); + } } \ No newline at end of file From 5fdb9b72aaba9a2e0476ccdc0ded226e040c580a Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Sun, 25 Jun 2023 15:01:36 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E5=AE=8C=E5=96=84=E4=BA=A4=E8=BD=A6?= =?UTF-8?q?=E8=B5=84=E6=96=99=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/api/suicheziliao/jiaocheziliao.js | 7 ++ .../suicheziliaoguanli/datapreparation.vue | 105 +++++++++++++++--- .../datapreparationInfo.vue | 6 +- 3 files changed, 100 insertions(+), 18 deletions(-) diff --git a/anrui-buscenter/anrui-buscenter-ui/src/api/suicheziliao/jiaocheziliao.js b/anrui-buscenter/anrui-buscenter-ui/src/api/suicheziliao/jiaocheziliao.js index 093c59ff8a..59a22f7c53 100644 --- a/anrui-buscenter/anrui-buscenter-ui/src/api/suicheziliao/jiaocheziliao.js +++ b/anrui-buscenter/anrui-buscenter-ui/src/api/suicheziliao/jiaocheziliao.js @@ -24,6 +24,13 @@ export function fetchDetailsBySid(data) { }) } +export function details(data) { + return request({ + url: '/buscenter/v1/busvehicledatahandover/details/' + data, + method: 'get' + }) +} + // 确认 export function saveDeliveryInfo(data) { return request({ diff --git a/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparation.vue b/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparation.vue index 3a798aaa5d..acff91f24d 100644 --- a/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparation.vue +++ b/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparation.vue @@ -41,12 +41,13 @@ - + - + @@ -56,7 +57,7 @@ {{ scope.row.contractNo }} - + @@ -66,24 +67,29 @@ {{ scope.row.model }} - + - + + + + - + - + @@ -99,6 +105,27 @@ + + + + + + + + + + + + + + + + + + 确定 + 取消 + + @@ -115,14 +142,13 @@ import pageye from '@/components/pagination/pageye' import ButtonBar from '@/components/ButtonBar' import datapreparationAdd from './datapreparationAdd' import datapreparationInfo from './datapreparationInfo' -// import upload from '@/components/uploadFileimg/upload' +import { getStorage } from '@/utils/auth' export default { name: 'Datapreparation', components: { Pagination, pageye, - // upload, ButtonBar, datapreparationAdd, datapreparationInfo @@ -143,7 +169,7 @@ export default { type: 'primary', size: 'small', icon: '', - btnKey: 'doDel', + btnKey: 'toUpload', btnLabel: '上传确认单' }, { @@ -158,6 +184,14 @@ export default { searchxianshitit: '显示查询条件', dialogImgVisible: false, dialogFileVisible: false, + dialogVisible: false, + uploadFile: process.env.VUE_APP_BASE_API + '/buscenter/v1/busvehicledatahandover/upload', + uploadData: { + sid: '' + }, + accessToken: {}, + files: [], + dialogImageUrl: '', // 查询条件 ----------- tableKey: 0, list: [], @@ -188,6 +222,9 @@ export default { }, mounted() { this.$refs['btnbar'].setButtonList(this.btnList) + this.accessToken = { + token: getStorage() + } }, methods: { // 搜索条件效果 @@ -205,8 +242,8 @@ export default { case 'toAdd': this.toAdd() break - case 'doDel': - this.doDel() + case 'toUpload': + this.toUpload() break case 'doClose': this.doClose() @@ -293,13 +330,53 @@ export default { this.$message({ showClose: true, type: 'error', message: '请至少选择一条记录进行操作' }) } }, + toUpload() { + if (this.sids.length === 1) { + this.dialogFileVisible = true + this.files = [] + this.uploadData.sid = this.sids[0] + } else { + this.$message({ showClose: true, type: 'error', message: '请选择一条记录进行操作' }) + return + } + }, + handlePictureCardPreview(file) { + this.dialogVisible = true + this.dialogImageUrl = file.url + }, + handleSuccess(file) { + this.$message({ showClose: true, type: 'success', message: '上传成功' }) + this.getList() + }, + toDownLoad(row) { + var xhr = new XMLHttpRequest() + xhr.open('GET', process.env.VUE_APP_BASE_API + '/base/file/download?filePath=' + row.downloadPath + '&outFileName=' + '交车资料确认单', true) + xhr.setRequestHeader('token', getStorage()) + xhr.responseType = 'blob' + xhr.onload = function(e) { + // 如果请求执行成功 + var blob = this.response + var filename = '交车资料确认单.pdf' + var a = document.createElement('a') + // blob.type="application/octet-stream"; + // 创键临时url对象 + var url = URL.createObjectURL(blob) + a.href = url + a.download = filename + a.click() + // 释放之前创建的URL对象 + window.URL.revokeObjectURL(url) + } + // 发送请求 + xhr.send() + }, toInfo(row) { this.viewState = 3 this.$refs['divInfo'].showInfo(row) }, handleGetCheck(row) { this.dialogImgVisible = true - this.dialogImageUrl = row.witMatUrl + this.dialogUrl = row.imgs }, reseaState() { this.viewState = 1 diff --git a/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparationInfo.vue b/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparationInfo.vue index 0970c83885..45e77194f7 100644 --- a/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparationInfo.vue +++ b/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparationInfo.vue @@ -51,7 +51,7 @@