瀏覽代碼

企业资质备案

caozhaorui 9 月之前
父節點
當前提交
21dbdd8903

+ 1 - 1
snowy-admin-web/src/views/yqyc/general-ledger/one/goods.vue

@@ -253,7 +253,7 @@
               {title: '规格型号',dataIndex: 'ggxh',key: 'ggxh'},
               {title: (formData?.warehouseType == 0 ? '入' :'出') + '库数量',dataIndex: 'rkNum',key: 'rkNum'},
               {title: '计量单位',dataIndex: 'measurementUnit',key: 'measurementUnit'},
-              {title: '操作',dataIndex: 'action',key: 'action', slots: { customRender: 'action' }},
+              {title: '操作',dataIndex: 'action',key: 'action'},
             ]"
             :pagination="false"
           >

+ 1 - 3
snowy-admin-web/src/views/yqyc/zero/enterprise-qualification/detail.vue

@@ -174,7 +174,6 @@ import tool from '@/utils/tool'
 import {cloneDeep} from 'lodash-es'
 import {required} from '@/utils/formRules'
 import qyRecordApi from '@/api/yqyc/qyRecordApi'
-import qyCheckListApi from "@/api/yqyc/qyCheckListApi";
 const { proxy } = getCurrentInstance()
 
 // 抽屉状态
@@ -197,11 +196,10 @@ const userInfo = tool.data.get('USER_INFO')
 // 打开抽屉
 const onOpen = (record, view = false) => {
   isView.value = view
-  qyCheckListApi.qyCheckListPage({current: 1, size: 100, companyName: record.companyName})
   if (record) {
     let recordData = cloneDeep(record)
     formData.value = Object.assign({}, recordData)
-    if (record.status == '1') {
+    if (!isView.value) {
       formData.value.applyTime = proxy.$util.YMDHms(new Date())
     }
   } else {

+ 97 - 43
snowy-admin-web/src/views/yqyc/zero/enterprise-qualification/index.vue

@@ -87,25 +87,40 @@
             <a @click="onDetail(record, true)" v-if="hasPerm('qyRecordView')">查看</a>
             <a-divider type="vertical"
                        v-if="hasPerm('qyRecordView') && hasPerm(['qyRecordEdit', 'qyRecordDelete'], 'or')"/>
-            <a @click="onDetail(record)" v-if="hasPerm('qyRecordEdit')">编辑</a>
+            <a @click="onDetail(record)" v-if="hasPerm('qyRecordEdit') && record.status == 1">编辑</a>
             <a-divider type="vertical" v-if="hasPerm(['qyRecordEdit', 'qyRecordDelete'], 'and')"/>
             <a-popconfirm title="确定要删除吗?" @confirm="deleteQyRecord(record)">
               <a-button type="link" danger size="small" v-if="hasPerm('qyRecordDelete')">删除</a-button>
             </a-popconfirm>
+		  	<a-divider type="vertical" v-if="hasPerm(['qyRecordView', 'qyRecordEdit', 'qyRecordDelete'])"/>
+		    <a @click="resultDetailRef.onOpen(record)" v-if="record.status == 3 || record.status == 4">查看回执</a>
+		  	<template v-if="searchFormState.qybalx === 'bgsq' && (record.status == 3 || record.status == 4)">
+				<a-divider type="vertical"/>
+				<a @click="onChange(record)">变更</a>
+		  	</template>
+		  	<template v-else-if="searchFormState.qybalx === 'zxsq' && record.status == 4">
+				<a-divider type="vertical"/>
+				<a @click="onKill(record)">注销</a>
+		  	</template>
           </a-space>
         </template>
       </template>
     </s-table>
   </a-card>
   <Detail v-else ref="detailRef" @onClose="indexShow = true" @successful="onSearch()"/>
+  <ResultDetail ref="resultDetailRef"/>
 </template>
 
 <script setup name="qyrecord">
 import tool from '@/utils/tool'
 import {cloneDeep} from 'lodash-es'
 import Detail from './detail.vue'
+import ResultDetail from './result.vue'
 import qyRecordApi from '@/api/yqyc/qyRecordApi'
 import downloadUtil from "@/utils/downloadUtil";
+import {message, Modal} from "ant-design-vue";
+import {ExclamationCircleOutlined} from "@ant-design/icons-vue";
+import {createVNode} from "vue";
 
 const {proxy} = getCurrentInstance()
 const searchFormState = ref({
@@ -116,51 +131,57 @@ const searchFormRef = ref()
 const tableRef = ref()
 const filterParam = ref({})
 const detailRef = ref()
+const resultDetailRef = ref()
 const indexShow = ref(true)
 const toolConfig = {refresh: true, height: true, columnSetting: true, striped: false}
-const columns = [
-  {
-    title: '统一社会信用代码',
-    dataIndex: 'companyCode',
-  },
-  {
-    title: '企业注册名称',
-    dataIndex: 'companyName',
-  },
-  {
-    title: '申报企业编号',
-    dataIndex: 'companyApplyCode',
-  },
-  {
-    title: '主管海关',
-    dataIndex: 'companyMainHgType',
-  },
-  {
-    title: '申报类型',
-    dataIndex: 'applyType',
-  },
-  {
-    title: '申报时间',
-    dataIndex: 'applyTime',
-  },
-  {
-    title: '单据状态',
-    dataIndex: 'status',
-  },
-  {
-    title: '录入时间',
-    dataIndex: 'createTime',
-  },
-]
+const columns = ref([
+	{
+		title: '统一社会信用代码',
+		dataIndex: 'companyCode',
+	},
+	{
+		title: '企业注册名称',
+		dataIndex: 'companyName',
+	},
+	{
+		title: '申报企业编号',
+		dataIndex: 'companyApplyCode',
+	},
+	{
+		title: '主管海关',
+		dataIndex: 'companyMainHgType',
+	},
+	{
+		title: '申报类型',
+		dataIndex: 'applyType',
+	},
+	{
+		title: '申报时间',
+		dataIndex: 'applyTime',
+	},
+	{
+		title: '单据状态',
+		dataIndex: 'status',
+	},
+	{
+		title: '录入时间',
+		dataIndex: 'createTime',
+	},
+	{
+		title: '操作',
+		dataIndex: 'action',
+		align: 'center',
+		width: 200,
+		fixed: 'right',
+	}
+])
 // 操作栏通过权限判断是否显示
-if (hasPerm(['qyRecordEdit', 'qyRecordDelete'])) {
-  columns.push({
-    title: '操作',
-    dataIndex: 'action',
-    align: 'center',
-    width: 200,
-    fixed: 'right',
-  })
+if (hasPerm(['qyRecordView', 'qyRecordEdit', 'qyRecordDelete'])) {
+	columns.value.forEach(v => {
+		if (v.dataIndex === 'action') {
+			v.width = 400
+		}
+	})
 }
 const selectedRowKeys = ref([])
 // 列表选择配置
@@ -252,6 +273,39 @@ const onDetail = (record = null, view) => {
     detailRef.value.onOpen(record, view)
   })
 }
+// 变更
+const onChange = (record = null) => {
+	Modal.confirm({
+		title: '请确定是否变更?',
+		icon: createVNode(ExclamationCircleOutlined),
+		content: createVNode('div', { style: 'color:red;' }, '变更后将重新进行申报'),
+		centered: true,
+		onOk() {
+			onDetail(record)
+		},
+		onCancel() {
+		},
+	});
+}
+// 注销
+const onKill = (record = null) => {
+	Modal.confirm({
+		title: '确定要对该企业进行注销操作?',
+		icon: createVNode(ExclamationCircleOutlined),
+		content: createVNode('div', { style: 'color:red;' }, '注销后将该公司将无法进行报关申请等操作'),
+		centered: true,
+		onOk() {
+			let recordData = cloneDeep(record)
+			recordData.applyTime = proxy.$util.YMDHms(new Date())
+			recordData.status = '2'
+			qyRecordApi.qyRecordSubmitForm(recordData, recordData.id).then(() => {
+				onSearch()
+			})
+		},
+		onCancel() {
+		},
+	});
+}
 const companyMainHgTypeOptions = tool.dictList('zhhg')
 const statusOptions = tool.dictList('djzt')
 </script>

二進制
snowy-admin-web/src/views/yqyc/zero/enterprise-qualification/qy.png


+ 79 - 0
snowy-admin-web/src/views/yqyc/zero/enterprise-qualification/result.vue

@@ -0,0 +1,79 @@
+<template>
+	<a-modal
+		v-model:open="open"
+		title="查看回执"
+		centered
+		width="90%"
+	>
+		<div class="result-detail">
+			<a-page-header
+				:title="formData.companyName"
+				:avatar="{ src: qyImg }"
+			>
+				<template #tags>
+					<a-tag :color="formData.status == 3 ? 'green' : 'red'">{{ $TOOL.dictTypeData('djzt', formData.status) }}</a-tag>
+					<a-tooltip :title="resultList[resultList.length - 1]?.result">
+						<InfoCircleOutlined />
+					</a-tooltip>
+				</template>
+			</a-page-header>
+			<a-table
+				style="margin-top: 10px"
+				bordered
+				:dataSource="resultList"
+				:columns="[
+				  {title: '单据类型',dataIndex: 'applyType',key: 'applyType'},
+				  {title: '审核状态',dataIndex: 'status',key: 'status'},
+				  {title: '申请人',dataIndex: 'companyName',key: 'companyName'},
+				  {title: '审核人',dataIndex: 'applyMan',key: 'applyMan'},
+				  {title: '审核时间',dataIndex: 'checkTime',key: 'checkTime'},
+				  {title: '审核结果回执',dataIndex: 'result',key: 'result'},
+				]"
+				:pagination="false"
+			>
+			</a-table>
+		</div>
+		<template #footer></template>
+	</a-modal>
+</template>
+
+<script setup name="enterpriseDetail">
+import tool from '@/utils/tool'
+import {cloneDeep} from 'lodash-es'
+import qyCheckListApi from "@/api/yqyc/qyCheckListApi";
+// 抽屉状态
+const open = ref(false)
+const emit = defineEmits({successful: null})
+const formRef = ref()
+// 表单数据
+const formData = ref({})
+const resultList = ref([])
+import qyImg from './qy.png'
+
+// 打开抽屉
+const onOpen = (record, view = false) => {
+	open.value = true
+	if (record) {
+		formData.value = Object.assign({}, record)
+		qyCheckListApi.qyCheckListPage({current: 1, size: 100, companyName: record.companyName}).then(res => {
+			resultList.value = res.records
+		})
+	}
+}
+// 关闭抽屉
+const onClose = () => {
+	formRef.value.resetFields()
+	formData.value = {}
+	open.value = false
+}
+// 抛出函数
+defineExpose({
+	onOpen
+})
+</script>
+<style lang="less" scoped>
+.goods-detail {
+	max-height: 800px;
+	overflow-y: auto;
+}
+</style>

+ 1 - 1
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/qyrecord/param/QyRecordAddParam.java

@@ -122,7 +122,7 @@ public class QyRecordAddParam {
 
     /** 申报类型 */
     @Schema(description = "申报类型", requiredMode = Schema.RequiredMode.REQUIRED)
-    @NotBlank(message = "applyType不能为空")
+//    @NotBlank(message = "applyType不能为空")
     private String applyType;
 
     /** 申报时间 */

+ 1 - 1
snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/qyrecord/param/QyRecordEditParam.java

@@ -127,7 +127,7 @@ public class QyRecordEditParam {
 
     /** 申报类型 */
     @Schema(description = "申报类型", requiredMode = Schema.RequiredMode.REQUIRED)
-    @NotBlank(message = "applyType不能为空")
+//    @NotBlank(message = "applyType不能为空")
     private String applyType;
 
     /** 申报时间 */