Pārlūkot izejas kodu

供应商运输信息审核

shasha 2 nedēļas atpakaļ
vecāks
revīzija
eb35dde90e

+ 6 - 1
snowy-admin-web/src/api/biz/bizSupplierTransportApi.js

@@ -24,5 +24,10 @@ export default {
 	// 获取供应商运输管理详情
 	bizSupplierTransportDetail(data) {
 		return request('detail', data, 'get')
-	}
+	},
+	// 审核
+	auditRecord(data) {
+		return request('audit', data)
+	},
+	
 }

+ 19 - 4
snowy-admin-web/src/views/biz/bizsupplier/transportIndex.vue

@@ -23,11 +23,18 @@
 					<template v-if="column.dataIndex === 'transportType'">
 						{{ $TOOL.dictTypeData('transport_type', record.transportType) }}
 					</template>
+					<template v-if="column.dataIndex === 'auditStatus'">
+						<span v-if="record.auditStatus=='1'">待审核</span>
+						<span v-else-if="record.auditStatus=='2'">审核通过</span>
+						<span v-else>未通过</span>
+					</template>
 					<template v-if="column.dataIndex === 'action'">
 						<a-space>
-							<a @click="formRef.onOpen(record, supplierId)" v-if="hasPerm('bizSupplierTransportEdit')">编辑</a>
-							<a-divider type="vertical" v-if="hasPerm(['bizSupplierTransportEdit', 'bizSupplierTransportDelete'], 'and')" />
-							<a-button type="link" danger size="small" v-if="hasPerm('bizSupplierTransportDelete')" @click="deleteConfig(record)">删除</a-button>
+							<a @click="formRef.onOpen(record, supplierId)" v-if="hasPerm('bizSupplierTransportEdit') && record.auditStatus!='2'">编辑</a>
+							<a-divider type="vertical" v-if="hasPerm(['bizSupplierTransportEdit', 'bizSupplierTransportDelete'], 'and') && record.auditStatus!='2'" />
+							<a-button type="link" danger size="small" v-if="hasPerm('bizSupplierTransportDelete') && record.auditStatus!='2'" @click="deleteConfig(record)">删除</a-button>
+							<a-divider type="vertical" v-if="(hasPerm(['bizSupplierTransportEdit', 'bizSupplierTransportDelete'], 'or') && record.auditStatus!='2') && hasPerm('bizSupplierTransportAudit')" />
+							<a @click="auditFormRef.showModal(record.id)" v-if="hasPerm('bizSupplierTransportAudit')">审核</a>
 						</a-space>
 					</template>
 				</template>
@@ -35,11 +42,13 @@
 		</a-card>
 	</a-drawer>
 	<Form ref="formRef" @successful="tableRef.refresh()" />
+	<AuditForm ref="auditFormRef" @successful="tableRef.refresh()" />
 </template>
 
 <script setup name="bizsuppliertransport">
 	import { cloneDeep } from 'lodash-es'
 	import Form from './transportForm.vue'
+	import AuditForm from './transportAudit.vue'
 	import bizSupplierTransportApi from '@/api/biz/bizSupplierTransportApi'
 	import {ExclamationCircleOutlined} from '@ant-design/icons-vue';
 	import {Modal} from 'ant-design-vue';
@@ -52,6 +61,7 @@
 	const searchFormState = ref({})
 	const tableRef = ref()
 	const formRef = ref()
+	const auditFormRef = ref()
 	const recordData = ref()
 	const title = ref()
 	const supplierId = ref()
@@ -73,6 +83,11 @@
 			dataIndex: 'transportNo',
 			align: 'center',
 		},
+		{
+			title: '审核状态',
+			dataIndex: 'auditStatus',
+			align: 'center',
+		},
 		{
 			title: '创建时间',
 			dataIndex: 'createTime',
@@ -85,7 +100,7 @@
 			title: '操作',
 			dataIndex: 'action',
 			align: 'center',
-			width: 150
+			width: 200
 		})
 	}
 	// 打开抽屉

+ 2 - 4
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/bizsupplier/controller/BizSupplierAccountController.java

@@ -21,13 +21,11 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RestController;
+import vip.xiaonuo.biz.modular.bizorder.param.BizOrderEditParam;
+import vip.xiaonuo.biz.modular.bizsupplier.param.*;
 import vip.xiaonuo.common.annotation.CommonLog;
 import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.biz.modular.bizsupplier.entity.BizSupplierAccount;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierAccountAddParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierAccountEditParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierAccountIdParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierAccountPageParam;
 import vip.xiaonuo.biz.modular.bizsupplier.service.BizSupplierAccountService;
 
 import jakarta.annotation.Resource;

+ 16 - 4
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/bizsupplier/controller/BizSupplierTransportController.java

@@ -21,13 +21,10 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RestController;
+import vip.xiaonuo.biz.modular.bizsupplier.param.*;
 import vip.xiaonuo.common.annotation.CommonLog;
 import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.biz.modular.bizsupplier.entity.BizSupplierTransport;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportAddParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportEditParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportIdParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportPageParam;
 import vip.xiaonuo.biz.modular.bizsupplier.service.BizSupplierTransportService;
 
 import jakarta.annotation.Resource;
@@ -107,6 +104,21 @@ public class BizSupplierTransportController {
         return CommonResult.ok();
     }
 
+    /**
+     * 供应商运输信息审核
+     *
+     * @author shasha
+     * @date  2025/06/16 14:16
+     */
+    @Operation(summary = "供应商运输信息审核")
+    @CommonLog("供应商运输信息审核")
+    @SaCheckPermission("/biz/bizsuppliertransport/audit")
+    @PostMapping("/biz/bizsuppliertransport/audit")
+    public CommonResult<String> audit(@RequestBody @Valid BizSupplierTransportAuditParam bizSupplierTransportAuditParam) {
+        bizSupplierTransportService.audit(bizSupplierTransportAuditParam);
+        return CommonResult.ok();
+    }
+
     /**
      * 获取供应商运输管理详情
      *

+ 15 - 0
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/bizsupplier/entity/BizSupplierAccount.java

@@ -18,6 +18,8 @@ import lombok.Getter;
 import lombok.Setter;
 import vip.xiaonuo.common.pojo.CommonEntity;
 
+import java.util.Date;
+
 /**
  * 供应商账号信息实体
  *
@@ -41,4 +43,17 @@ public class BizSupplierAccount extends CommonEntity {
     /** 供应商账号 */
     @Schema(description = "供应商账号")
     private String supplierAccount;
+
+    /** 审核状态 */
+    @Schema(description = "审核状态")
+    private String auditStatus;
+
+    /** 审核时间 */
+    @Schema(description = "审核时间")
+    private Date auditTime;
+
+    /** 审核说明 */
+    @Schema(description = "审核说明")
+    private String auditReason;
+
 }

+ 14 - 0
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/bizsupplier/entity/BizSupplierTransport.java

@@ -18,6 +18,8 @@ import lombok.Getter;
 import lombok.Setter;
 import vip.xiaonuo.common.pojo.CommonEntity;
 
+import java.util.Date;
+
 /**
  * 供应商运输管理实体
  *
@@ -46,4 +48,16 @@ public class BizSupplierTransport extends CommonEntity {
     @Schema(description = "运输号(车牌号或者船舶号)")
     private String transportNo;
 
+    /** 审核状态 */
+    @Schema(description = "审核状态")
+    private String auditStatus;
+
+    /** 审核时间 */
+    @Schema(description = "审核时间")
+    private Date auditTime;
+
+    /** 审核说明 */
+    @Schema(description = "审核说明")
+    private String auditReason;
+
 }

+ 43 - 0
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/bizsupplier/param/BizSupplierTransportAuditParam.java

@@ -0,0 +1,43 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.biz.modular.bizsupplier.param;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 供应商运输管理添加参数
+ *
+ * @author fanzherong
+ * @date  2025/05/29 14:47
+ **/
+@Getter
+@Setter
+public class BizSupplierTransportAuditParam {
+
+    /** 主键ID */
+    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED)
+    @NotBlank(message = "id不能为空")
+    private String id;
+
+    /** 审核状态 */
+    @Schema(description = "审核状态")
+    private String auditStatus;
+
+    /** 审核说明 */
+    @Schema(description = "审核说明")
+    private String auditReason;
+
+}

+ 1 - 0
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/bizsupplier/service/BizSupplierAccountService.java

@@ -14,6 +14,7 @@ package vip.xiaonuo.biz.modular.bizsupplier.service;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import vip.xiaonuo.biz.modular.bizorder.param.BizOrderEditParam;
 import vip.xiaonuo.biz.modular.bizsupplier.entity.BizSupplierAccount;
 import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierAccountAddParam;
 import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierAccountEditParam;

+ 9 - 4
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/bizsupplier/service/BizSupplierTransportService.java

@@ -15,10 +15,7 @@ package vip.xiaonuo.biz.modular.bizsupplier.service;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import vip.xiaonuo.biz.modular.bizsupplier.entity.BizSupplierTransport;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportAddParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportEditParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportIdParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportPageParam;
+import vip.xiaonuo.biz.modular.bizsupplier.param.*;
 
 import java.util.List;
 
@@ -62,6 +59,14 @@ public interface BizSupplierTransportService extends IService<BizSupplierTranspo
      */
     void delete(List<BizSupplierTransportIdParam> bizSupplierTransportIdParamList);
 
+    /**
+     * 审核
+     *
+     * @author fanzherong
+     * @date  2025/06/16 14:47
+     */
+    void audit(BizSupplierTransportAuditParam bizSupplierTransportAuditParam);
+
     /**
      * 获取供应商运输管理详情
      *

+ 2 - 4
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/bizsupplier/service/impl/BizSupplierAccountServiceImpl.java

@@ -22,8 +22,10 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import vip.xiaonuo.biz.modular.bizloadpoint.entity.BizLoadPoint;
+import vip.xiaonuo.biz.modular.bizorder.entity.BizOrder;
 import vip.xiaonuo.biz.modular.bizsupplier.entity.BizSupplier;
 import vip.xiaonuo.biz.modular.bizsupplier.enums.BizSupplierAccountEnum;
+import vip.xiaonuo.biz.modular.bizsupplier.param.*;
 import vip.xiaonuo.biz.modular.customer.entity.BizCustomer;
 import vip.xiaonuo.biz.modular.customer.entity.BizCustomerAccount;
 import vip.xiaonuo.biz.modular.customer.enums.BizCustomerAccountEnum;
@@ -32,10 +34,6 @@ import vip.xiaonuo.common.exception.CommonException;
 import vip.xiaonuo.common.page.CommonPageRequest;
 import vip.xiaonuo.biz.modular.bizsupplier.entity.BizSupplierAccount;
 import vip.xiaonuo.biz.modular.bizsupplier.mapper.BizSupplierAccountMapper;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierAccountAddParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierAccountEditParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierAccountIdParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierAccountPageParam;
 import vip.xiaonuo.biz.modular.bizsupplier.service.BizSupplierAccountService;
 
 import java.util.List;

+ 19 - 6
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/bizsupplier/service/impl/BizSupplierTransportServiceImpl.java

@@ -19,21 +19,19 @@ import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import vip.xiaonuo.biz.modular.bizsupplier.entity.BizSupplier;
-import vip.xiaonuo.biz.modular.bizsupplier.entity.BizSupplierAccount;
-import vip.xiaonuo.biz.modular.bizsupplier.enums.BizSupplierAccountEnum;
+import vip.xiaonuo.biz.modular.bizsupplier.entity.BizSupplierTransport;
+import vip.xiaonuo.biz.modular.bizsupplier.enums.BizSupplierTransportEnum;
 import vip.xiaonuo.biz.modular.bizsupplier.enums.BizSupplierTransportEnum;
+import vip.xiaonuo.biz.modular.bizsupplier.param.*;
 import vip.xiaonuo.common.enums.CommonSortOrderEnum;
 import vip.xiaonuo.common.exception.CommonException;
 import vip.xiaonuo.common.page.CommonPageRequest;
 import vip.xiaonuo.biz.modular.bizsupplier.entity.BizSupplierTransport;
 import vip.xiaonuo.biz.modular.bizsupplier.mapper.BizSupplierTransportMapper;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportAddParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportEditParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportIdParam;
-import vip.xiaonuo.biz.modular.bizsupplier.param.BizSupplierTransportPageParam;
 import vip.xiaonuo.biz.modular.bizsupplier.service.BizSupplierTransportService;
 
 import java.util.List;
@@ -101,6 +99,21 @@ public class BizSupplierTransportServiceImpl extends ServiceImpl<BizSupplierTran
         this.removeByIds(CollStreamUtil.toList(bizSupplierTransportIdParamList, BizSupplierTransportIdParam::getId));
     }
 
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void audit(BizSupplierTransportAuditParam bizSupplierTransportAuditParam){
+        BizSupplierTransport bizSupplierTransport = this.queryEntity(bizSupplierTransportAuditParam.getId());
+        if(ObjectUtil.isNotEmpty(bizSupplierTransportAuditParam.getAuditStatus())) {
+            if (StringUtils.equals(bizSupplierTransportAuditParam.getAuditStatus(), "true")) {
+                bizSupplierTransport.setAuditStatus("2");
+            } else {
+                bizSupplierTransport.setAuditStatus("3");
+            }
+        }
+        bizSupplierTransport.setAuditReason(bizSupplierTransportAuditParam.getAuditReason());
+        this.updateById(bizSupplierTransport);
+    }
+
     @Override
     public BizSupplierTransport detail(BizSupplierTransportIdParam bizSupplierTransportIdParam) {
         return this.queryEntity(bizSupplierTransportIdParam.getId());