bugfix and performance improvements

This commit is contained in:
2023-07-27 17:31:39 +08:00
parent 2ba5ff9439
commit 5c50715a33
109 changed files with 1516 additions and 1154 deletions

View File

@ -27,7 +27,7 @@
type="daterange"
range-separator="-"
:start-placeholder="t('admin.table.startDate')"
end-placeholder="结束日期"
:end-placeholder="t('admin.table.endDate')"
></el-date-picker>
</el-form-item>
<el-form-item>

View File

@ -47,26 +47,26 @@
:show-overflow-tooltip="true"
/>
<el-table-column
label="活动报名截止时间"
:label="t('activity.signUpDeadline')"
align="center"
prop="createTime"
>
<template #default="{ row }">
<span>{{ parseTime(row.createTime) }}</span>
<span>{{ parseTime(row.joinDeadline) }}</span>
</template>
</el-table-column>
<el-table-column label="活动开始时间" align="center" prop="createTime">
<el-table-column :label="t('activity.activityStartTime')" align="center">
<template #default="{ row }">
<span>{{ parseTime(row.createTime) }}</span>
<span>{{ parseTime(row.beginTime) }}</span>
</template>
</el-table-column>
<el-table-column label="活动结束时间" align="center" prop="createTime">
<el-table-column :label="t('activity.activityEndTime')" align="center">
<template #default="{ row }">
<span>{{ parseTime(row.createTime) }}</span>
<span>{{ parseTime(row.finishTime) }}</span>
</template>
</el-table-column>
<el-table-column label="活动报名时间" align="center" prop="createTime">
<el-table-column :label="t('activity.activitySignUpTime')" align="center">
<template #default="{ row }">
<span>{{ parseTime(row.createTime) }}</span>
</template>
@ -97,6 +97,7 @@
<script setup>
import { activitysList } from "@/api/admin/enterprise";
import { useI18n } from "vue-i18n";
import { parseTime } from "@/utils/ruoyi";
const { t } = useI18n();
const dataList = ref([]);

View File

@ -57,12 +57,22 @@
prop="description"
>
<!-- <Editor v-model="form.description" :minHeight="150" /> -->
<wangEditor
<!-- <wangEditor
v-model="form.description"
width="100%"
min-height="150px"
@blur="formRef.validateField(`description`)"
></wangEditor>-->
<el-input
type="textarea"
v-model="form.description"
width="100%"
min-height="150px"
@blur="formRef.validateField(`description`)"
></wangEditor>
:autosize="{ minRows: 6, maxRows: 8 }"
:placeholder="
t('admin.form.placeholder', {
type: t('webSearch.demandDescription'),
})
"
></el-input>
</el-form-item>
</el-col>
</el-row>
@ -162,7 +172,11 @@ const data = reactive({
{ required: true, message: "联系人手机号不能为空", trigger: "blur" },
],
username: [
{ required: true, message: "需求提交人不能为空", trigger: "blur" },
{
required: true,
message: computed(() => t("webContact.demandSubmit")),
trigger: "blur",
},
],
userPhone: [{ required: true, message: "手机号不能为空", trigger: "blur" }],
},

View File

@ -52,13 +52,23 @@
:label="t('webSearch.demandDescription')"
prop="introduce"
>
<wangEditor
<!-- <wangEditor
v-model="form.introduce"
:placeholder="t('webSearch.pleaseEnterTheContentOfTheTechnicalRequirementsAndTheDetailedTechnicalIndicators')"
width="100%"
min-height="150px"
@blur="formRef.validateField(`introduce`)"
></wangEditor>-->
<el-input
type="textarea"
v-model="form.introduce"
placeholder="请输入技术需求内容和详细的技术指标"
width="100%"
min-height="150px"
@blur="formRef.validateField(`introduce`)"
></wangEditor>
:autosize="{ minRows: 6, maxRows: 8 }"
:placeholder="
t(
'webSearch.pleaseEnterTheContentOfTheTechnicalRequirementsAndTheDetailedTechnicalIndicators'
)
"
></el-input>
</el-form-item>
</el-col>
</el-row>
@ -95,8 +105,8 @@
false-label="1"
true-label="2"
v-model="form.budgetMode"
>面议</el-checkbox
>
>面议
</el-checkbox>
</el-form-item>
</el-col>
</el-row>
@ -174,10 +184,12 @@
<el-button type="primary" @click="submitForm">{{ t('admin.common.submit') }}</el-button>
</div> -->
<div :style="{ marginLeft: labelWidth + 'px' }">
<el-button type="primary" @click="submitForm(3)">保存草稿</el-button>
<el-button type="primary" @click="submitForm(3)">{{
t("admin.form.saveDraft")
}}</el-button>
<el-button type="primary" @click="submitForm(1)"
>{{ t("admin.common.submit") }}审核</el-button
>
>{{ t("admin.common.submit") }}审核
</el-button>
</div>
</el-card>
</div>
@ -198,6 +210,7 @@ import {
updateTechnologyDemand,
} from "@/api/admin/enterprise/demand";
import tab from "@/plugins/tab";
const { t } = useI18n();
const router = useRouter();
const route = useRoute();
@ -225,12 +238,26 @@ const data = reactive({
},
],
commitUserName: [
{ required: true, message: "需求提交人不能为空", trigger: "blur" },
{
required: true,
message: computed(() => t("webContact.demandSubmit")),
trigger: "blur",
},
],
kinds: [
{ required: true, message: "至少选择一个需求类别", trigger: "change" },
{
required: true,
message: computed(() => t("webContact.demandType")),
trigger: "change",
},
],
budget: [
{
required: true,
message: computed(() => t("webContact.demandBudget")),
trigger: "blur",
},
],
budget: [{ required: true, message: "需求预算不能为空", trigger: "blur" }],
deadline: [
{
required: true,
@ -313,7 +340,7 @@ const submitForm = async (status) => {
// // });
// } else {
// // addPost(form.value).then((response) => {
// // proxy.$modal.msgSuccess("新增成功");
// // proxy.$modal.msgSuccess(t('admin.common.addSuccess'));
// // proxy.$router.go(-1);
// // });
// }

View File

@ -72,7 +72,7 @@
type="text"
icon="Close"
@click="handleDelete(row.id)"
>{{ t("admin.common.cancel") }}发布
>{{ t("admin.table.cancelPublish") }}
</el-button>
<el-button
v-if="queryParams.type != 2"

View File

@ -109,7 +109,7 @@
type="text"
icon="Close"
@click="cancelPub(row.id)"
>{{ t("admin.common.cancel") }}发布
>{{ t("admin.table.cancelPublish") }}
</el-button>
<el-button
size="small"
@ -180,7 +180,14 @@ function handleQuery() {
/** 删除按钮操作 */
function handleDelete(id) {
modal
.confirm('是否确认删除数据编号为"' + id + '"的需求项?')
// .confirm('是否确认删除数据编号为"' + id + '"的需求项?')
.confirm(
t("admin.common.confirmAction", {
action: t("admin.common.delete"),
number: id,
type: t("admin.common.demand"),
})
)
.then(function () {
console.log("delete");
return deleteTechnologyDemand(id);

View File

@ -13,18 +13,18 @@
size="small"
@change="handleQuery"
>
<el-radio-button :label="0">{{
t("admin.table.pendingReview")
}}</el-radio-button>
<el-radio-button :label="1">{{
t("admin.table.published")
}}</el-radio-button>
<el-radio-button :label="2">{{
t("admin.table.rejected")
}}</el-radio-button>
<el-radio-button :label="3">{{
t("admin.table.draftBox")
}}</el-radio-button>
<el-radio-button :label="0"
>{{ t("admin.table.pendingReview") }}
</el-radio-button>
<el-radio-button :label="1"
>{{ t("admin.table.published") }}
</el-radio-button>
<el-radio-button :label="2"
>{{ t("admin.table.rejected") }}
</el-radio-button>
<el-radio-button :label="3"
>{{ t("admin.table.draftBox") }}
</el-radio-button>
</el-radio-group>
<el-table v-loading="loading" :data="dataList" style="margin-top: 20px">
@ -62,8 +62,8 @@
type="text"
:icon="row.shelfStatus == 2 ? 'Upload' : 'Download'"
@click="handleShelf(row)"
>{{ row.shelfStatus == 2 ? "上架" : "下架" }}</el-button
>
>{{ row.shelfStatus == 2 ? "上架" : "下架" }}
</el-button>
<el-button
v-if="queryParams.status != 1"
size="small"
@ -71,16 +71,16 @@
icon="Delete"
@click="handleDelete(row.id)"
>
{{ t("admin.common.delete") }}</el-button
>
{{ t("admin.common.delete") }}
</el-button>
<el-button
v-if="queryParams.status == 1"
size="small"
type="text"
icon="View"
@click="handleResults(row)"
>查看匹配结果</el-button
>
>查看匹配结果
</el-button>
<el-button
v-if="queryParams.status == 1"
disabled
@ -88,16 +88,16 @@
type="text"
icon="View"
@click="checkEnterpriseInfo(row.id)"
>浏览企业信息</el-button
>
>浏览企业信息
</el-button>
<el-button
v-if="queryParams.status == 0"
size="small"
type="text"
icon="Close"
@click="releaseCancel(row.id)"
>移到草稿箱</el-button
>
>移到草稿箱
</el-button>
</template>
</el-table-column>
</el-table>
@ -125,6 +125,7 @@ import { useRouter } from "vue-router";
import useUserStore from "@/store/modules/user";
import { useI18n } from "vue-i18n";
const { t } = useI18n();
const router = useRouter();
const userStore = useUserStore();
@ -156,7 +157,14 @@ const getList = async () => {
// 处理删除
const handleDelete = (id) => {
modal
.confirm('是否确认删除数据编号为"' + id + '"的产品项?')
// .confirm('是否确认删除数据编号为"' + id + '"的产品项?')
.confirm(
t("admin.common.confirmAction", {
action: t("admin.common.delete"),
number: id,
type: t("admin.form.product"),
})
)
.then(async () => {
await deleteEnterpriseProduct(id);
ElMessage.success(t("admin.common.deleteSuccess"));
@ -172,6 +180,7 @@ function handleQuery() {
queryParams.value.pageNum = 1;
getList();
}
// 取消发布
const releaseCancel = (id) => {
modal
@ -203,6 +212,7 @@ const handleShelf = (row) => {
const handleResults = (row) => {
router.push({ path: "./results", query: { keyword: row.title } });
};
const checkEnterpriseInfo = (id) => {
router.push({ path: "./business" });
};

View File

@ -8,7 +8,9 @@
ref="releaseFormRef"
/>
<div :style="{ marginLeft: labelWidth + 'px' }">
<el-button type="primary" @click="submitForm(3)">保存草稿</el-button>
<el-button type="primary" @click="submitForm(3)">{{
t("admin.form.saveDraft")
}}</el-button>
<el-button type="primary" @click="submitForm(1)"
>{{ t("admin.common.submit") }}审核</el-button
>