web资产全流程修改

main
项洋 1 week ago
parent 573c790067
commit 38fd879649

@ -446,6 +446,7 @@ const navigateToDetail = (row, pageType) => {
id: idMap[assetType],
// queryData: JSON.stringify(pagination.value),
name: "AssetRecord2",
isModdle: "true",
},
});
};

@ -0,0 +1,31 @@
import { unitAllList } from "@/api/auditPagesApi/index";
const equalToPassword = (rule, value, callback) => {
console.log("出发出发");
console.log(rule);
console.log(value);
unitAllList({ nickName: value }).then(res => {
if (res.data.length != 1) {
callback(new Error("请输入正确的单位名称"));
} else {
if (value == res.data[0].nickName) {
callback();
} else {
callback(new Error("请输入正确的单位名称"));
}
}
})
};
export function changeSateTetx(rule, value, callback, ruleForm) {
if (ruleForm.xtzt == 5 && !value) {
callback(new Error("请填写"));
} else {
callback();
}
}
export default equalToPassword;

@ -9,10 +9,82 @@
:taskId
:assetId
:type
ref="webZCinfoRef"
@submit-reject="submitReject"
>
<el-row
style="display: flex; justify-content: center; padding-bottom: 50px"
v-if="name == 'WebZC'"
v-if="name === 'MyWebzc'"
>
<el-button
type="danger"
@click="sendBack"
v-if="pageType === 'look' && audit != true"
>返回</el-button
>
<el-button type="danger" @click="sendBack" v-if="pageType === 'change' || pageType === 'add'"
>取消</el-button
>
<el-button
type="primary"
@click="newAssets()"
:loading="loading"
v-if="pageType === 'change' || pageType === 'add'"
>提交</el-button
>
</el-row>
<el-row
v-if="name === 'TaskManagement-info'"
style="display: flex; justify-content: center; padding-bottom: 50px"
>
<el-button
type="danger"
@click="sendBack"
v-if="pageType === 'look' && audit != 'true'"
>返回</el-button
>
<el-button
type="danger"
:disabled="false"
@click="newAssets1(0)"
v-if="pageType === 'change' || (audit == 'true' && pageType == 'look')"
>不通过</el-button
>
<el-button
type="primary"
:disabled="false"
@click.prevent="newAssets1(1)"
:loading="loading"
v-if="pageType === 'change' || (audit == 'true' && pageType == 'look')"
>通过</el-button
>
</el-row>
<el-row
v-if="name === 'AssetRecord2'"
style="display: flex; justify-content: center; padding-bottom: 50px"
>
<el-button type="danger" @click="sendBack" v-if="pageType === 'look'"
>返回</el-button
>
<el-button
type="danger"
:disabled="false"
@click="newAssets(1)"
v-if="pageType === 'change' "
>取消</el-button
>
<el-button
type="primary"
:disabled="false"
@click.prevent="newAssets()"
:loading="loading"
v-if="pageType === 'change' "
>提交</el-button
>
</el-row>
<el-row
style="display: flex; justify-content: center; padding-bottom: 50px"
v-if="name === 'WebZC'"
>
<el-button
type="danger"
@ -25,30 +97,69 @@
>
<el-button
type="primary"
@click="newAssets"
@click="newAssets()"
:loading="loading"
v-if="pageType === 'change'"
>提交</el-button
>
<el-button type="danger" @click="newAssets(1)" v-if="pageType === 'add'"
>取消</el-button
>
<el-button
type="primary"
@click="newAssets(null)"
v-if="pageType === 'add'"
>保存</el-button
>
</el-row>
<el-row
style="display: flex; justify-content: center; padding-bottom: 50px"
v-if="taskId && assetId && taskId != '' && assetId != ''"
v-if="name === 'Mytask-info'"
>
<el-button type="danger" @click="newAssets(0)"></el-button>
<el-button @click="newAssets(1)"></el-button>
<el-button type="warning" @click="newAssets(2)"></el-button>
<el-button type="success" @click="newAssets(3)" :loading="loading"
<el-button type="danger" @click="newAssets(0)" v-if="pageType !== 'look'"
>关停</el-button
>
<el-button @click="newAssets(1)" v-if="pageType !== 'look'"
>取消</el-button
>
<el-button type="warning" @click="newAssets(2)" v-if="pageType !== 'look'"
>暂存</el-button
>
<el-button
type="success"
@click="newAssets(3)"
:loading="loading"
v-if="pageType !== 'look'"
>提交</el-button
>
<el-button type="danger" @click="sendBack" v-if="pageType == 'look'"
>返回</el-button
>
</el-row>
<el-row
style="display: flex; justify-content: center; padding-bottom: 50px"
v-if="pageType === 'look' && audit == true"
v-if="name === 'UnitFillsec'"
>
<el-button type="danger" @click="sendBack"></el-button>
<el-button type="primary" @click="newAssets" :loading="loading"
>提交</el-button
<el-button
type="danger"
:disabled="false"
@click="btnReject"
v-if="pageType === 'change'"
>不通过</el-button
>
<el-button
type="primary"
:disabled="false"
@click.prevent="btnPass"
:loading="loading"
v-if="pageType === 'change'"
>通过</el-button
>
<el-button
type="danger"
@click="sendBack"
v-if="pageType === 'look' && audit != true"
>返回</el-button
>
</el-row>
</webZCinfo>
@ -62,46 +173,355 @@
> -->
<!-- </el-row> -->
<!-- <el-row
style="margin: 10px 0; padding-bottom: 50px; text-align: center"
v-if="audit"
>
<el-button type="danger" :disabled="false" @click="btnReject"
>不通过</el-button
>
<el-button
type="primary"
:disabled="false"
@click="btnPass"
:loading="loading"
>通过</el-button
>
</el-row>
<el-row
style="margin: 10px 0; padding-bottom: 50px; text-align: center"
v-if="pageType === 'look'"
>
<el-button type="primary" @click="sendBack"></el-button>
</el-row> -->
</template>
<script setup>
import webZCinfo from "./webZCinfo.vue";
import { useRoute, useRouter } from "vue-router";
import { ElMessage } from "element-plus";
import {
assetTaskzc,
assetTaskjyTj,
assetTasktaskSh,
geassetTaskcHc,
assetTasksh,
assetTaskhistory,
} from "@/api/renwuApi/index.js";
import {
assetUnitData,
assetInfo,
unitAllList,
unitEdit,
assetAudit,
lookInfo,
} from "@/api/auditPagesApi/index";
import { ref } from "vue";
const route = useRoute();
const router = useRouter();
const pageType = ref(route.query.pageType);
let pageType = ref(route.query.pageType);
console.log(pageType.value, "pageType");
const id = ref(route.query.id);
const audit = ref(route.query.audit);
console.log(audit.value, "audit");
const isModdle = ref(route.query.isModdle);
const name = ref(route.query.name);
let name = ref(route.query.name);
console.log(name.value, "name");
const queryData = ref(route.query.queryData);
const taskId = ref(route.query.taskId || "");
const assetId = ref(route.query.assetId);
let taskId = ref(route.query.taskId || "");
let assetId = ref(route.query.assetId);
const type = ref(route.query.type);
let loading = ref(false);
const select = ref("http");
const xttz = ref([]);
const xtfhqkFcg = ref([]);
const xtfhqkFxl = ref([]);
const xtfhqkFzd = ref([]);
const xtfhqkFls = ref([]);
const dlwz = ref([]);
const webZCinfoRef = ref();
const liebiaoDialogRef = ref();
const ruleFormRef = ref();
const sendBack = () => {
router.go(-1);
router.push({ name: route.query.name, params: queryData.value });
};
const newAssets = async (typeButtom1) => {
const typeButtom = typeButtom1 !== undefined ? typeButtom1 : "";
let ruleForm = webZCinfoRef.value?.ruleForm;
console.log(ruleForm.chepingUnit, "ruleForm");
if (!ruleForm) {
ElMessage.error("获取表单数据失败");
return;
}
console.log(typeButtom, "typeButtom");
if (!Object.is(typeButtom, undefined)) {
console.log(typeButtom, "typeButtom");
if (typeButtom === 1) {
loading.value = true;
router.go(-1);
loading.value = false;
return;
}
// 使ruleFormruleForm.value
ruleForm.taskId = taskId.value;
ruleForm.assetId = assetId.value;
ruleForm.xttz = xttz.value.join(",");
ruleForm.xtfhqkFcg = xtfhqkFcg.value.join(",");
ruleForm.xtfhqkFxl = xtfhqkFxl.value.join(",");
ruleForm.xtfhqkFzd = xtfhqkFzd.value.join(",");
ruleForm.xtfhqkFls = xtfhqkFls.value.join(",");
console.log(ruleForm, "ruleForm.chepingUnit");
//
ruleForm.gylxxList = [
...ruleForm.chepingUnit,
...ruleForm.yjgysUnit,
...ruleForm.jfywUnit,
...ruleForm.xtsjUnit,
...ruleForm.xtjsUnit,
...ruleForm.xtyyUnit,
...ruleForm.aqfwUnit,
];
//
ruleForm.jcwlList = [...ruleForm.fwqxx, ...ruleForm.wlsb, ...ruleForm.aqsb];
//
if (dlwz.value.length > 0) {
ruleForm.sheng = dlwz.value[0];
ruleForm.shi = dlwz.value[1];
ruleForm.qu = dlwz.value[2];
}
//
if (ruleForm.fwwz) {
ruleForm.fwwz = `${select.value}-${ruleForm.fwwz}`;
}
//
if (typeButtom === 0) {
console.log(typeButtom, "typeButtom");
webZCinfoRef.value?.liebiaoDialog.open();
}
//
if (typeButtom === 2) {
loading.value = true;
try {
const res = await assetTaskzc(ruleForm);
console.log(res, "res");
ElMessage.success("修改成功");
router.go(-1);
} catch (error) {
console.error(error);
ElMessage.error("修改失败");
} finally {
loading.value = false;
}
}
//
if (typeButtom === 3) {
loading.value = true;
try {
//
const valid = await webZCinfoRef.value.ruleFormRef.validate();
if (!valid) return;
const res = await assetTaskjyTj(ruleForm);
console.log(res, "res");
ElMessage.success("提交成功");
router.go(-1);
} catch (error) {
console.error(error);
ElMessage.info("请填写完整");
} finally {
loading.value = false;
}
}
} else {
try {
const valid = await webZCinfoRef.value.ruleFormRef.validate();
if (!valid) return;
//
ruleForm.xttz = xttz.value.join(",");
ruleForm.xtfhqkFcg = xtfhqkFcg.value.join(",");
ruleForm.xtfhqkFxl = xtfhqkFxl.value.join(",");
ruleForm.xtfhqkFzd = xtfhqkFzd.value.join(",");
ruleForm.xtfhqkFls = xtfhqkFls.value.join(",");
ruleForm.gylxxList = [
...ruleForm.chepingUnit,
...ruleForm.yjgysUnit,
...ruleForm.jfywUnit,
...ruleForm.xtsjUnit,
...ruleForm.xtjsUnit,
...ruleForm.xtyyUnit,
...ruleForm.aqfwUnit,
];
ruleForm.jcwlList = [
...ruleForm.fwqxx,
...ruleForm.wlsb,
...ruleForm.aqsb,
];
if (dlwz.value.length > 0) {
ruleForm.sheng = dlwz.value[0];
ruleForm.shi = dlwz.value[1];
ruleForm.qu = dlwz.value[2];
}
if (ruleForm.fwwz) {
ruleForm.fwwz = select.value + "-" + ruleForm.fwwz;
}
loading.value = true;
if (pageType.value === "change") {
await unitEdit(ruleForm);
ElMessage.success("提交成功,待管理员审核通过后完成修改");
} else {
ruleForm.xzType = 1;
await assetUnitData("post", ruleForm);
if (pageType.value === "add" && name.value == "WebZC") {
ElMessage.success("新增成功");
} else if (pageType.value === "add") {
ElMessage.success("提交成功,待管理员审核通过后完成新增");
}
}
router.push({ name: name.value, params: queryData.value });
} catch (err) {
console.error(err);
} finally {
loading.value = false;
}
}
};
const newAssets1 = async (type) => {
//
if (type == 0) {
//
liebiaoDialogRef.value?.open();
}
if (type == 1) {
webZCinfoRef.value.ruleFormRef.validate((valid) => {
if (valid) {
let tijioaobj = {
taskId: route.query.taskId,
assetId: route.query.assetId,
xtmc: webZCinfoRef.value.ruleForm.xtmc,
dwmc: route.query.zcdwmc,
status: 2,
type: route.query.type,
assetCurrentCpPo: webZCinfoRef.value.ruleForm,
};
console.log(webZCinfoRef.value.ruleForm, "tijioaobj");
loading.value = true;
assetTasksh(tijioaobj)
.then((res) => {
if (res.code == 200) {
ElMessage.success("审核成功");
loading.value = false;
router.go(-1);
}
})
.catch(() => {
loading.value = false;
});
} else {
loading.value = false;
ElMessage({
type: "info",
message: "请填写完整",
});
return false;
}
});
}
};
const btnReject = () => {
//
webZCinfoRef.value.liebiaoDialog.open();
};
const submitReject = () => {
//
webZCinfoRef.value.dialogruleFormRef.validate(async (valid) => {
if (valid) {
// name使
if (name.value === "TaskManagement-info") {
// 使assetTasksh
let tijioaobj = {
taskId: route.query.taskId,
assetId: route.query.assetId,
xtmc: webZCinfoRef.value.ruleForm.xtmc,
btgyy: webZCinfoRef.value.dialogruleForm.auditYy,
status: 4,
type: route.query.type,
assetCurrentCpPo: webZCinfoRef.value.ruleForm,
};
try {
loading.value = true;
const res = await assetTasksh(tijioaobj);
if (res.code == 200) {
ElMessage.success("审核成功");
webZCinfoRef.value.liebiaoDialog.close();
router.go(-1);
}
} catch (e) {
ElMessage.error("操作失败");
} finally {
loading.value = false;
}
} else if (name.value === "Mytask-info") {
webZCinfoRef.value.ruleForm.isbf = 2;
webZCinfoRef.value.ruleForm.bfyy = webZCinfoRef.value.dialogruleForm.auditYy;
loading.value = true;
try {
const res = await assetTaskzc(webZCinfoRef.value.ruleForm);
console.log(res, "res");
ElMessage({
type: "info",
message: "已关停",
});
loading.value = false;
router.go(-1);
webZCinfoRef.value.ruleForm.bfyy = "";
} catch (error) {
console.error(error);
ElMessage.error("操作失败");
loading.value = false;
}
}else{
// 使assetAudit
let tijioaobj = {
auditState: "3",
auditYy: webZCinfoRef.value.dialogruleForm.auditYy,
currentId: Number(id.value),
xzType: 1,
};
try {
const res = await assetAudit(tijioaobj);
if (res.code == 200) {
ElMessage.success("审核驳回");
webZCinfoRef.value.liebiaoDialog.close();
router.push({ name: name.value, params: queryData.value });
}
} catch (e) {
ElMessage.error("操作失败");
}
}
}
});
};
const btnPass = async () => {
loading.value = true;
try {
// ruleForm
const ruleForm = webZCinfoRef.value?.ruleForm;
const res = await assetAudit({
currentId: Number(id.value),
auditState: "2",
xzType: 1,
dwmc: ruleForm?.dwmc,
xtmc: ruleForm?.xtmc,
});
ElMessage.success("审核通过");
router.push({ name: name.value, params: queryData.value });
} catch (err) {
// ElMessage.error("");
} finally {
loading.value = false;
}
};
</script>
<style scoped></style>

File diff suppressed because it is too large Load Diff

@ -590,7 +590,7 @@ const handleAdd = () => {
router.push({
path: "/assetsManage2/webZC-info",
query: {
name: "Webzc",
name: "WebZC",
pageType: "add",
type: 0,
},

File diff suppressed because it is too large Load Diff

@ -0,0 +1,822 @@
<!-- 小程序表单 -->
<template>
<div class="L-assets-info">
<div class="assets-info-top">
<el-row style="margin: 10px 0">
<span class="top-title-box">基本信息</span>
</el-row>
<div class="assets-info-box">
<el-form
:model="ruleForm"
:rules="rules"
ref="ruleFormRef"
label-width="170px"
class="demo-ruleForm"
label-position="right"
:disabled="disabled"
>
<el-row>
<el-col :span="12">
<el-form-item label="所属单位" prop="ssdw">
<!-- <el-input v-model="ruleForm.ssdw" placeholder="请输入所属单位"></el-input> -->
<el-autocomplete
v-model="ruleForm.ssdw"
:fetch-suggestions="querySearchAsync"
placeholder="请输入所属单位"
disabled
></el-autocomplete>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="小程序名称" prop="xcxmc">
<el-input
v-model="ruleForm.xcxmc"
placeholder="请输入小程序名称"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="APPID" prop="appId">
<el-input
v-model="ruleForm.appId"
style="width: 100%"
placeholder="请输入APPID"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="认证主体" prop="rzzt">
<el-input
v-model="ruleForm.rzzt"
style="width: 100%"
placeholder="请输入认证主体"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item
class="daoqitixingren"
prop="tyshxydm"
:rules="[
{
required: true,
pattern: /^[a-zA-Z0-9]{18}$/,
message: '请输入正确格式的18位统一社会信用代码',
trigger: 'blur',
},
{
required: true,
message: '统一社会信用代码不能为空',
trigger: 'change',
},
]"
label="统一社会信用代码"
required
>
<el-input
v-model="ruleForm.tyshxydm"
placeholder="请输入统一信用代码"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="小程序状态" prop="state">
<el-select
v-model="ruleForm.state"
placeholder="请选择小程序状态"
>
<el-option
v-for="dict in dict.type.gzh_state"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="账号原始ID" prop="ysId">
<el-input
v-model="ruleForm.ysId"
style="width: 100%"
placeholder="请输入账号原始ID"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="小程序包状态" prop="packState">
<el-select
v-model="ruleForm.packState"
placeholder="请选择小程序包状态"
>
<el-option
v-for="dict in dict.type.email_state"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="认证状态" prop="rzState">
<el-select
v-model="ruleForm.rzState"
placeholder="请选择认证状态"
>
<el-option
v-for="dict in dict.type.gzh_rzzt"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="认证时间" prop="rzsj">
<el-date-picker
v-model="ruleForm.rzsj"
type="date"
format="yyyy-MM-dd"
value-format="yyyy-MM-dd"
placeholder="选择日期"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="认证类型" prop="rzlx">
<el-select v-model="ruleForm.rzlx" placeholder="请选择认证类型">
<el-option
v-for="dict in dict.type.gzh_rzlx"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="icp备案状态" prop="icpState">
<el-input
v-model="ruleForm.icpState"
style="width: 100%"
placeholder="请输入icp备案状态"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="域名白名单" prop="ymbmd">
<el-input
v-model="ruleForm.ymbmd"
style="width: 100%"
placeholder="请输入域名白名单"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="服务类目" prop="fwlm">
<el-input
v-model="ruleForm.fwlm"
style="width: 100%"
placeholder="请输入服务类目"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item
prop="hydzyx"
label="行业电子邮箱"
required
:rules="[
{
type: 'email',
required: true,
message: '请输入正确的邮箱地址',
trigger: ['change', 'change'],
},
]"
>
<el-input
v-model="ruleForm.hydzyx"
style="width: 100%"
placeholder="请输入行业电子邮箱"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="所属行业" prop="sshy">
<el-select v-model="ruleForm.sshy" placeholder="请选择所属行业">
<el-option
v-for="dict in dict.type.app_sshy"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="重点行业" prop="zdhy">
<el-select v-model="ruleForm.zdhy" placeholder="请选择重点行业">
<el-option
v-for="dict in dict.type.app_zdhy"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="行政区划" prop="xzqh">
<el-select v-model="ruleForm.xzqh" placeholder="请选择行政区划">
<el-option
v-for="dict in dict.type.app_xzqh"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="系统责任人" prop="xtzrr">
<el-input
v-model="ruleForm.xtzrr"
style="width: 100%"
placeholder="请输入系统责任人"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
prop="xtzrrdh"
label="系统责任人电话"
required
:rules="[
{
required: true,
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
message: '请输入正确的手机号码',
trigger: 'change',
},
]"
>
<el-input
v-model="ruleForm.xtzrrdh"
style="width: 100%"
placeholder="请输入系统责任人电话"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item
prop="xtzrryx"
label="系统责任人邮箱"
required
:rules="[
{
required: true,
type: 'email',
message: '请输入正确的邮箱地址',
trigger: ['change', 'change'],
},
]"
>
<el-input
v-model="ruleForm.xtzrryx"
style="width: 100%"
placeholder="请输入系统责任人邮箱"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="系统责任人地址" prop="xtzrrdz">
<el-input
v-model="ruleForm.xtzrrdz"
style="width: 100%"
placeholder="请输入系统责任人地址"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="引入插件APPID" prop="yycjAppid">
<el-input
v-model="ruleForm.yycjAppid"
style="width: 100%"
placeholder="请输入引入插件APPID"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="引用插件(开发者)" prop="yycjKfz">
<el-input
v-model="ruleForm.yycjKfz"
style="width: 100%"
placeholder="请输入引用插件(开发者)"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="系统简介" prop="xtjj">
<el-input
type="textarea"
resize="none"
placeholder="请输入系统简介"
:rows="5"
v-model="ruleForm.xtjj"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row style="margin: 10px 0" v-if="ruleForm.bfyy">
<span class="top-title-box">关停原因</span>
</el-row>
<el-row style="margin: 20px 0">
<el-form-item>
<div>{{ ruleForm.bfyy }}</div>
</el-form-item>
</el-row>
</el-form>
</div>
</div>
<baofei ref="baofeiRef" :ruleForm="ruleForm" @assetTaskzc="guanting"></baofei>
<butongguo
ref="butongguoRef"
:chuandemingcheng="ruleForm.xcxmc"
:ruleForm="ruleForm"
dataname="assetMiniProgramsCpPo"
></butongguo>
</div>
</template>
<script setup>
import { ref, reactive, onMounted, computed, nextTick, defineProps } from "vue";
import { useRoute, useRouter } from "vue-router";
import { ElMessage } from "element-plus";
import { useDict } from "@/utils/dict";
import {
assetMiniPrograms,
miniProgramsInfo,
unitAllList,
} from "@/api/auditPagesApi/index";
import {
assetTaskminitaskSh,
assetTaskxcxzc,
assetTasksh,
assetTaskxcxjyTj,
assetTaskhistory,
} from "@/api/renwuApi/index.js";
import baofei from "@/views/components/renwuType/baofei.vue";
import butongguo from "@/views/components/renwuType/butongguo.vue";
import myMixin from "@/views/components/renwuType/minxfanhui.js";
import useUserStore from "@/store/modules/user";
// props
const props = defineProps({
pageType: { type: String, default: '' },
id: [String, Number],
audit: { type: Boolean, default: false },
isModdle: { type: Boolean, default: false },
name: { type: String },
queryData: { type: Object },
taskId: { type: String },
assetId: { type: String },
type: { type: String },
});
//
const route = useRoute();
const router = useRouter();
// ref
const ruleFormRef = ref(null);
const baofeiRef = ref(null);
const butongguoRef = ref(null);
//
const {
app_xzqh,
app_sshy,
app_zdhy,
gzh_state,
gzh_rzzt,
gzh_rzlx,
email_state,
} = useDict(
"app_xzqh",
"app_sshy",
"app_zdhy",
"gzh_state",
"gzh_rzzt",
"gzh_rzlx",
"email_state"
);
//
const dict = {
type: {
app_xzqh,
app_sshy,
app_zdhy,
gzh_state,
gzh_rzzt,
gzh_rzlx,
email_state,
}
};
//
const ruleForm = reactive({});
//
const loading = ref(false);
const disabled = ref(false);
const pageType = ref(props.pageType);
const id = ref(props.id);
const taskId = ref(props.taskId);
const assetId = ref(props.assetId);
//
const rules = reactive({
ssdw: [
{ required: true, message: "所属单位不能为空", trigger: "change" },
],
xcxmc: [
{ required: true, message: "小程序名称不能为空", trigger: "change" },
],
appId: [
{ required: true, message: "APPID不能为空", trigger: "change" },
],
rzzt: [
{ required: true, message: "认证主体不能为空", trigger: "change" },
],
state: [
{ required: true, message: "小程序状态不能为空", trigger: "change" },
],
ysId: [
{ required: true, message: "账号原始ID不能为空", trigger: "change" },
],
packState: [
{
required: true,
message: "小程序包状态不能为空",
trigger: "change",
},
],
rzState: [
{ required: true, message: "认证状态不能为空", trigger: "change" },
],
rzsj: [
{ required: true, message: "认证时间不能为空", trigger: "change" },
],
rzlx: [
{ required: true, message: "认证类型不能为空", trigger: "change" },
],
icpState: [
{ required: true, message: "icp备案状态不能为空", trigger: "change" },
],
ymbmd: [
{ required: true, message: "域名白名单不能为空", trigger: "change" },
],
fwlm: [
{ required: true, message: "服务类目不能为空", trigger: "change" },
],
sshy: [
{ required: true, message: "所属行业不能为空", trigger: "change" },
],
zdhy: [
{ required: true, message: "重点行业不能为空", trigger: "change" },
],
xzqh: [
{ required: true, message: "行政区划不能为空", trigger: "change" },
],
xtzrr: [
{ required: true, message: "系统责任人不能为空", trigger: "change" },
],
xtzrryx: [
{
required: true,
message: "系统责任人邮箱不能为空",
trigger: "change",
},
{
type: "email",
message: "请输入正确的邮箱地址",
trigger: ["change", "change"],
},
],
xtzrrdz: [
{
required: true,
message: "系统责任人地址不能为空",
trigger: "change",
},
],
yycjAppid: [
{
required: true,
message: "引入插件APPID不能为空",
trigger: "change",
},
],
yycjKfz: [
{
required: true,
message: "引用插件(开发者)不能为空",
trigger: "change",
},
],
xtjj: [
{ required: true, message: "系统简介不能为空", trigger: "change" },
],
});
//
onMounted(() => {
console.log(route);
if (props.taskId && props.taskId !== '') {
const obj = {
taskId: props.taskId,
assetId: props.assetId,
};
if (pageType.value === "look") {
getInfo(obj);
disabled.value = true;
nextTick(() => {
clearPlaceholders();
});
} else if (pageType.value === "change") {
getInfo(obj);
disabled.value = false;
}
} else {
if (props.isModdle) {
if (pageType.value === "look") {
getInfo(id.value);
disabled.value = true;
nextTick(() => {
clearPlaceholders();
});
} else if (pageType.value === "change") {
getInfo(id.value);
disabled.value = false;
}
if (props.audit) {
disabled.value = true;
}
} else {
if (pageType.value === "look") {
getInfo(route.query.id);
disabled.value = true;
nextTick(() => {
clearPlaceholders();
});
} else if (pageType.value === "change") {
getInfo(route.query.id);
disabled.value = false;
}
}
}
});
//
const clearPlaceholders = () => {
const inputElements = document.querySelectorAll(".el-input__inner");
const textareaInputElements = document.querySelectorAll(
".el-textarea__inner"
);
inputElements.forEach((input) => {
input.placeholder = "";
});
textareaInputElements.forEach((input) => {
input.placeholder = "";
});
};
//
const getInfo = async (id) => {
if (route.query.istijiaoshow) {
let obj = {
id: route.query.assetId,
type: route.query.type,
};
try {
const res = await assetTaskhistory(obj);
Object.assign(ruleForm, res.data.assetMiniProgramsHistory);
console.log("获取历史资产信息成功");
setTimeout(() => {
ruleFormRef.value?.clearValidate();
}, 100);
} catch (error) {
console.error("获取历史资产信息失败:", error);
ElMessage.error("获取历史资产信息失败");
}
} else {
let obj = {
taskId: route.query.taskId || (id?.taskId),
assetId: route.query.assetId || (id?.assetId),
};
try {
loading.value = true;
const res = await assetTaskminitaskSh(obj);
Object.assign(ruleForm, res.data);
console.log("获取资产信息成功");
setTimeout(() => {
ruleFormRef.value?.clearValidate();
}, 100);
} catch (error) {
console.error("获取资产信息失败:", error);
ElMessage.error("获取资产信息失败");
} finally {
loading.value = false;
}
}
};
//
const querySearchAsync = async (queryString, cb) => {
let results = [];
try {
const res = await unitAllList({ nickName: queryString });
res.data.forEach((item) => {
results.push({
value: item.nickName,
id: item.id,
});
});
cb(results);
} catch (error) {
console.error("单位查询失败:", error);
cb([]);
}
};
//
const guanting = async (formData) => {
try {
await assetTaskxcxzc(formData);
ElMessage({
type: "info",
message: "已关停",
});
router.go(-1);
ruleForm.bfyy = "";
baofeiRef.value.resetForm();
} catch (error) {
console.error("关停失败:", error);
ElMessage.error("关停失败");
}
};
//
const changeState = (e) => {
if (e != 5) {
ruleForm.bfyy = "";
}
};
//
const newAssets = async (type) => {
//
if (type == 1) {
loading.value = true;
router.go(-1);
loading.value = false;
return;
}
ruleForm.taskId = route.query.taskId || props.taskId;
ruleForm.assetId = route.query.assetId || props.assetId;
//
if (type == 0) {
baofeiRef.value.open();
return;
}
//
if (type == 2) {
try {
loading.value = true;
const res = await assetTaskxcxzc(ruleForm);
console.log(res, "res");
ElMessage.success("修改成功");
router.go(-1);
} catch (error) {
console.error("暂存失败:", error);
ElMessage.error("暂存失败");
} finally {
loading.value = false;
}
return;
}
//
if (type == 3) {
try {
await ruleFormRef.value.validate();
loading.value = true;
await assetTaskxcxjyTj(ruleForm);
ElMessage.success("提交成功");
router.go(-1);
} catch (error) {
console.error("提交失败:", error);
if (error.message) {
ElMessage.error(error.message);
} else {
ElMessage.error("表单验证失败,请检查填写内容");
}
} finally {
loading.value = false;
}
}
};
//
const JGnewAssets = async (type) => {
ruleForm.taskId = route.query.taskId || props.taskId;
ruleForm.assetId = route.query.assetId || props.assetId;
//
if (type == 0) {
try {
await ruleFormRef.value.validate();
butongguoRef.value.open();
} catch (error) {
console.error("表单验证失败:", error);
ElMessage.error("表单验证失败,请检查填写内容");
}
return;
}
//
if (type == 1) {
try {
await ruleFormRef.value.validate();
const tijioaobj = {
taskId: route.query.taskId || props.taskId,
assetId: route.query.assetId || props.assetId,
xtmc: ruleForm.xcxmc,
status: 3,
type: route.query.type || props.type,
assetMiniProgramsCpPo: ruleForm,
};
const res = await assetTasksh(tijioaobj);
if (res.code == 200) {
ElMessage.success("审核成功");
router.go(-1);
}
} catch (error) {
console.error("审核失败:", error);
if (error.message) {
ElMessage.error(error.message);
} else {
ElMessage.error("表单验证失败,请检查填写内容");
}
}
}
};
// 使
defineExpose({
newAssets,
JGnewAssets,
ruleForm,
ruleFormRef
});
</script>

@ -200,7 +200,7 @@ const { email_state } = proxy.useDict(
//
const handleAdd = () => {
router.push({
name: 'myAssetsAuth',
path: '/assetsManage2/dzyjZC-info',
query: {
pageType: 'add',
type: 3,
@ -245,7 +245,7 @@ const handleExport = () => {
const goInfo = (row, id) => {
router.push({
name: 'myAssetsAuth',
path: '/assetsManage2/dzyjZC-info',
query: {
pageType: id === 1 ? 'look' : 'change',
type: 3,

@ -220,7 +220,7 @@ const { app_icp_state } = proxy.useDict(
//
const handleAdd = () => {
router.push({
name: 'myAssetsAuth',
path: '/assetsManage2/ydyyxtZC-info',
query: {
pageType: 'add',
type: 4,
@ -266,7 +266,7 @@ const handleExport = () => {
const goInfo = (row, id) => {
router.push({
name: 'myAssetsAuth',
path: '/assetsManage2/ydyyxtZC-info',
query: {
pageType: id === 1 ? 'look' : 'change',
type: 4,

@ -318,7 +318,7 @@ const handleAdd = () => {
query: {
pageType: "add",
type: 1,
name: "MyOfficialAccount",
name: "MyGzhzc",
},
});
};
@ -328,7 +328,7 @@ const goInfo = (row, id) => {
router.push({
path: "/assetsManage2/xcxZC-info",
query: {
name: "MyOfficialAccount",
name: "MyGzhzc",
pageType: "look",
type: 1,
id: row.id,
@ -339,7 +339,7 @@ const goInfo = (row, id) => {
router.push({
path: "/assetsManage2/xcxZC-info",
query: {
name: "MyOfficialAccount",
name: "MyGzhzc",
pageType: "change",
type: 1,
id: row.id,

@ -299,7 +299,7 @@ const handleAdd = () => {
pageType: "add",
type: 1,
queryData: formInline,
name: "MyProgram",
name: "MyXcxzc",
},
});
};
@ -309,11 +309,11 @@ const goInfo = (row, id) => {
router.push({
path: "/assetsManage2/xcxZC-info",
query: {
name: "MyProgram",
pageType: "look",
type: 1,
id: row.id,
queryData: formInline.value,
name: "MyXcxzc",
},
});
} else if (id === 2) {
@ -321,7 +321,7 @@ const goInfo = (row, id) => {
router.push({
path: "/assetsManage2/xcxZC-info",
query: {
name: "MyProgram",
name: "MyXcxzc",
pageType: "change",
type: 1,
id: row.id,

@ -328,7 +328,7 @@ const handleExport = () => {
const handleAdd = () => {
proxy.setActiveMenu("/myAssets2/myWebzc");
router.push({
path: "/assetsManage2/webZC-info",
path: "/myAssets2/webZC-info2",
query: {
name: "MyWebzc",
pageType: "add",
@ -340,7 +340,7 @@ const goInfo = (row, id) => {
if (id === 1) {
proxy.setActiveMenu("/myAssets2/myWebzc");
router.push({
path: "/assetsManage2/webZC-info",
path: "/myAssets2/webZC-info2",
query: {
name: "MyWebzc",
pageType: "look",
@ -352,7 +352,7 @@ const goInfo = (row, id) => {
} else if (id === 2) {
proxy.setActiveMenu("/myAssets2/myWebzc");
router.push({
path: "/assetsManage2/webZC-info",
path: "/myAssets2/webZC-info2",
query: {
name: "MyWebzc",
pageType: "change",

@ -1,13 +1,7 @@
<!-- 单位自主填报2 -->
<template>
<div
class="L-main"
id="L-size-main"
>
<div
class="content-search"
id="L-header"
>
<div class="L-main" id="L-size-main">
<div class="content-search" id="L-header">
<div class="search-title">查询条件</div>
<el-form
:inline="true"
@ -18,10 +12,7 @@
>
<el-row>
<el-col :span="6">
<el-form-item
label="资产名称:"
prop="name"
>
<el-form-item label="资产名称:" prop="name">
<el-input
v-model="pagination.name"
placeholder="请输入"
@ -30,10 +21,7 @@
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item
label="所属单位:"
prop="dwmc"
>
<el-form-item label="所属单位:" prop="dwmc">
<el-input
v-model="pagination.dwmc"
placeholder="请输入"
@ -42,38 +30,21 @@
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item
label="审核状态:"
prop="auditState"
>
<el-form-item label="审核状态:" prop="auditState">
<el-select
v-model="pagination.auditState"
placeholder="请选择审核状态"
>
<el-option
label="待审核"
value="1"
/>
<el-option
label="审核通过"
value="2"
/>
<el-option
label="审核驳回"
value="3"
/>
<el-option label="待审核" value="1" />
<el-option label="审核通过" value="2" />
<el-option label="审核驳回" value="3" />
</el-select>
</el-form-item>
</el-col>
<el-col
:span="6"
style="text-align: right"
>
<el-col :span="6" style="text-align: right">
<el-form-item class="unit-form">
<el-button @click="resetQuery('queryFrom')"></el-button>
<el-button
type="primary"
@click="handleQuery('queryFrom')"
<el-button type="primary" @click="handleQuery('queryFrom')"
>查询</el-button
>
</el-form-item>
@ -169,10 +140,7 @@
v-if="btnShow == 'gzh'"
>
<template #default="{ row }">
<dict-tag
:options="sys_ptlx_type"
:value="row.ptlx"
/>
<dict-tag :options="sys_ptlx_type" :value="row.ptlx" />
</template>
</el-table-column>
<el-table-column
@ -184,22 +152,13 @@
align="center"
>
<template #default="{ row }">
<span
v-if="row.auditState == 1"
style="color: #f58a0c"
>
<span v-if="row.auditState == 1" style="color: #f58a0c">
待审核
</span>
<span
v-if="row.auditState == 2"
style="color: #16b771"
>
<span v-if="row.auditState == 2" style="color: #16b771">
审批通过
</span>
<span
v-if="row.auditState == 3"
style="color: #f50c0c"
>
<span v-if="row.auditState == 3" style="color: #f50c0c">
审批驳回
</span>
</template>
@ -286,7 +245,7 @@
</template>
<script setup>
import { ref, onMounted, onUnmounted ,getCurrentInstance} from "vue";
import { ref, onMounted, onUnmounted, getCurrentInstance } from "vue";
import { useRouter, useRoute } from "vue-router";
import { ElMessage } from "element-plus";
import myPagination from "@/views/components/Pagination/index.vue";
@ -319,7 +278,7 @@ const pagination = ref({
});
const btnArr = [
{ label: "web资产", value: "web", routeName: "WebZC-info"},
{ label: "web资产", value: "web", routeName: "WebZC-info" },
{ label: "小程序", value: "xcx", routeName: "XcxZC-info" },
{ label: "公众号", value: "gzh", routeName: "GzhZC-info" },
{ label: "电子邮件", value: "emil", routeName: "DzyjZC-info" },
@ -432,9 +391,9 @@ const goInfo = (row) => {
// tab
const routeItem = btnArr.find((item) => item.value === assetType);
const routeName = routeItem.routeName
const routeName = routeItem.routeName;
proxy.setActiveMenu("/unitFillsec" );
proxy.setActiveMenu("/unitFillsec");
router.push({
name: routeName,
query: {
@ -443,7 +402,8 @@ const goInfo = (row) => {
btnShow: btnShow.value,
id: idMap[btnShow.value],
queryData: JSON.stringify(pagination.value),
name: "unitFillsec",
name: "UnitFillsec",
isModdle: true,
},
});
};
@ -465,7 +425,10 @@ const delInfo = (row) => {
emil: row.emailId,
app: row.appId,
};
proxy.setActiveMenu("/unitFillsec" );
const assetType = btnShow.value;
const routeItem = btnArr.find((item) => item.value === assetType);
const routeName = routeItem.routeName;
proxy.setActiveMenu("/unitFillsec");
router.push({
name: routeName,
query: {
@ -473,8 +436,9 @@ const delInfo = (row) => {
pageType: "change",
btnShow: btnShow.value,
id: idMap[btnShow.value],
queryData: JSON.stringify(pagination.value),
name: "UnitFillsec",
isModdle: true,
audit: true,
},
});
};

Loading…
Cancel
Save