@@ -468,6 +485,7 @@ function previewHandler(index: number, event: MouseEvent) {
+
diff --git a/src/views/home/content/modal/CheckingTaskModal.vue b/src/views/home/content/modal/CheckingTaskModal.vue
new file mode 100644
index 0000000..6b07726
--- /dev/null
+++ b/src/views/home/content/modal/CheckingTaskModal.vue
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+
From 8aa8d92176c0432e93c47a98ea7b7331cde8789d Mon Sep 17 00:00:00 2001
From: lizijiee <562949697@qq.com>
Date: Tue, 26 Mar 2024 13:38:39 +0800
Subject: [PATCH 07/17] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E7=8A=B6?=
=?UTF-8?q?=E6=80=81=E5=88=A4=E6=96=AD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/home/content/Content.vue | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/views/home/content/Content.vue b/src/views/home/content/Content.vue
index e705150..5d50abd 100644
--- a/src/views/home/content/Content.vue
+++ b/src/views/home/content/Content.vue
@@ -385,11 +385,13 @@ function refresh(val) {
oneCheck()
}
function cancel(val) {
- removeCheckDuplicate(checkDuplicateNo.value).then((res) => {
+ if (checkTaskStatus.value === 1) {
+ removeCheckDuplicate(checkDuplicateNo.value).then((res) => {
if (res.code === "OK") {
message.success("查重任务取消成功")
}
- })
+ })
+ }
}
From e5696d8ec0bf421b9039d1bc3033ef574491a71f Mon Sep 17 00:00:00 2001
From: liushilong <2224574157@qq.com>
Date: Tue, 26 Mar 2024 13:53:40 +0800
Subject: [PATCH 08/17] =?UTF-8?q?feat:=20=E7=99=BB=E5=BD=95=E8=A1=A8?=
=?UTF-8?q?=E5=8D=95=E5=85=83=E7=B4=A0=E7=BC=BA=E5=A4=B1?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
patches/naive-ui+2.38.1.patch | 150 ++++++++++++++++++
.../aside/comp/modals/CustomFilterModal.vue | 2 +-
src/views/login/components/Forget.vue | 35 +++-
src/views/login/components/Login.vue | 65 ++++----
4 files changed, 207 insertions(+), 45 deletions(-)
diff --git a/patches/naive-ui+2.38.1.patch b/patches/naive-ui+2.38.1.patch
index 5c4f5c6..8748dc4 100644
--- a/patches/naive-ui+2.38.1.patch
+++ b/patches/naive-ui+2.38.1.patch
@@ -1,3 +1,32 @@
+diff --git a/node_modules/naive-ui/es/form/src/FormItem.mjs b/node_modules/naive-ui/es/form/src/FormItem.mjs
+index 3aacec9..a63ab54 100644
+--- a/node_modules/naive-ui/es/form/src/FormItem.mjs
++++ b/node_modules/naive-ui/es/form/src/FormItem.mjs
+@@ -73,8 +73,8 @@ function wrapValidator(validator, async) {
+ try {
+ const validateResult = validator(...args);
+ if (!async && (typeof validateResult === 'boolean' || validateResult instanceof Error || Array.isArray(validateResult)) || (
+- // Error[]
+- validateResult === null || validateResult === void 0 ? void 0 : validateResult.then)) {
++ // Error[]
++ validateResult === null || validateResult === void 0 ? void 0 : validateResult.then)) {
+ return validateResult;
+ } else if (validateResult === undefined) {
+ return true;
+@@ -479,8 +479,11 @@ export default defineComponent({
+ class: `${mergedClsPrefix}-form-item-feedback ${mergedClsPrefix}-form-item-feedback--warning`
+ }, feedbackNodes) : mergedValidationStatus === 'error' ? h("div", {
+ key: "controlled-error",
+- class: `${mergedClsPrefix}-form-item-feedback ${mergedClsPrefix}-form-item-feedback--error`
+- }, feedbackNodes) : mergedValidationStatus === 'success' ? h("div", {
++ class: `${mergedClsPrefix}-form-item-feedback ${mergedClsPrefix}-form-item-feedback--error flex`
++ }, [h('img', {
++ style: { width: '1rem', height: '1rem' },
++ src: 'http://47.93.59.251/api/upload/ocr/1711419313955_c.png'
++ }), feedbackNodes]) : mergedValidationStatus === 'success' ? h("div", {
+ key: "controlled-success",
+ class: `${mergedClsPrefix}-form-item-feedback ${mergedClsPrefix}-form-item-feedback--success`
+ }, feedbackNodes) : h("div", {
diff --git a/node_modules/naive-ui/es/pagination/src/Pagination.mjs b/node_modules/naive-ui/es/pagination/src/Pagination.mjs
index 5bd975b..e1c6ebc 100644
--- a/node_modules/naive-ui/es/pagination/src/Pagination.mjs
@@ -11,3 +40,124 @@ index 5bd975b..e1c6ebc 100644
default:
return null;
}
+diff --git a/node_modules/naive-ui/lib/form/src/FormItem.js b/node_modules/naive-ui/lib/form/src/FormItem.js
+index 4f47aad..6dae078 100644
+--- a/node_modules/naive-ui/lib/form/src/FormItem.js
++++ b/node_modules/naive-ui/lib/form/src/FormItem.js
+@@ -24,7 +24,8 @@ const styles_1 = require("../styles");
+ const utils_1 = require("./utils");
+ const context_1 = require("./context");
+ const form_item_cssr_1 = __importDefault(require("./styles/form-item.cssr"));
+-exports.formItemProps = Object.assign(Object.assign({}, _mixins_1.useTheme.props), { label: String, labelWidth: [Number, String], labelStyle: [String, Object], labelAlign: String, labelPlacement: String, path: String, first: Boolean, rulePath: String, required: Boolean, showRequireMark: {
++exports.formItemProps = Object.assign(Object.assign({}, _mixins_1.useTheme.props), {
++ label: String, labelWidth: [Number, String], labelStyle: [String, Object], labelAlign: String, labelPlacement: String, path: String, first: Boolean, rulePath: String, required: Boolean, showRequireMark: {
+ type: Boolean,
+ default: undefined
+ }, requireMarkPlacement: String, showFeedback: {
+@@ -33,7 +34,8 @@ exports.formItemProps = Object.assign(Object.assign({}, _mixins_1.useTheme.props
+ }, rule: [Object, Array], size: String, ignorePathChange: Boolean, validationStatus: String, feedback: String, showLabel: {
+ type: Boolean,
+ default: undefined
+- }, labelProps: Object });
++ }, labelProps: Object
++});
+ exports.formItemPropKeys = (0, _utils_1.keysOf)(exports.formItemProps);
+ // wrap sync validator
+ function wrapValidator(validator, async) {
+@@ -175,22 +177,22 @@ exports.default = (0, vue_1.defineComponent)({
+ }))
+ .filter(shouldRuleBeApplied)
+ .map((rule, i) => {
+- const shallowClonedRule = Object.assign({}, rule);
+- if (shallowClonedRule.validator) {
+- shallowClonedRule.validator = wrapValidator(shallowClonedRule.validator, false);
+- }
+- if (shallowClonedRule.asyncValidator) {
+- shallowClonedRule.asyncValidator = wrapValidator(shallowClonedRule.asyncValidator, true);
+- }
+- if (shallowClonedRule.renderMessage) {
+- const rendererKey = `__renderMessage__${i}`;
+- originalMessageRendersMessage[rendererKey] =
+- shallowClonedRule.message;
+- shallowClonedRule.message = rendererKey;
+- messageRenderers[rendererKey] = shallowClonedRule.renderMessage;
+- }
+- return shallowClonedRule;
+- });
++ const shallowClonedRule = Object.assign({}, rule);
++ if (shallowClonedRule.validator) {
++ shallowClonedRule.validator = wrapValidator(shallowClonedRule.validator, false);
++ }
++ if (shallowClonedRule.asyncValidator) {
++ shallowClonedRule.asyncValidator = wrapValidator(shallowClonedRule.asyncValidator, true);
++ }
++ if (shallowClonedRule.renderMessage) {
++ const rendererKey = `__renderMessage__${i}`;
++ originalMessageRendersMessage[rendererKey] =
++ shallowClonedRule.message;
++ shallowClonedRule.message = rendererKey;
++ messageRenderers[rendererKey] = shallowClonedRule.renderMessage;
++ }
++ return shallowClonedRule;
++ });
+ const activeErrorRules = activeRules.filter((r) => r.level !== 'warning');
+ const activeWarningRules = activeRules.filter((r) => r.level === 'warning');
+ const mergedPath = path !== null && path !== void 0 ? path : '__n_no_path__';
+@@ -353,31 +355,37 @@ exports.default = (0, vue_1.defineComponent)({
+ const textNode = ((0, vue_1.h)("span", { class: `${mergedClsPrefix}-form-item-label__text` }, labelText));
+ const markNode = renderedShowRequireMark ? ((0, vue_1.h)("span", { class: `${mergedClsPrefix}-form-item-label__asterisk` }, mergedRequireMarkPlacement !== 'left' ? '\u00A0*' : '*\u00A0')) : (mergedRequireMarkPlacement === 'right-hanging' && ((0, vue_1.h)("span", { class: `${mergedClsPrefix}-form-item-label__asterisk-placeholder` }, '\u00A0*')));
+ const { labelProps } = this;
+- return ((0, vue_1.h)("label", Object.assign({}, labelProps, { class: [
++ return ((0, vue_1.h)("label", Object.assign({}, labelProps, {
++ class: [
+ labelProps === null || labelProps === void 0 ? void 0 : labelProps.class,
+ `${mergedClsPrefix}-form-item-label`,
+ `${mergedClsPrefix}-form-item-label--${mergedRequireMarkPlacement}-mark`,
+ this.reverseColSpace &&
+- `${mergedClsPrefix}-form-item-label--reverse-columns-space`
+- ], style: this.mergedLabelStyle, ref: "labelElementRef" }), mergedRequireMarkPlacement === 'left'
++ `${mergedClsPrefix}-form-item-label--reverse-columns-space`
++ ], style: this.mergedLabelStyle, ref: "labelElementRef"
++ }), mergedRequireMarkPlacement === 'left'
+ ? [markNode, textNode]
+ : [textNode, markNode]));
+ };
+- return ((0, vue_1.h)("div", { class: [
++ return ((0, vue_1.h)("div", {
++ class: [
+ `${mergedClsPrefix}-form-item`,
+ this.themeClass,
+ `${mergedClsPrefix}-form-item--${this.mergedSize}-size`,
+ `${mergedClsPrefix}-form-item--${this.mergedLabelPlacement}-labelled`,
+ this.isAutoLabelWidth &&
+- `${mergedClsPrefix}-form-item--auto-label-width`,
++ `${mergedClsPrefix}-form-item--auto-label-width`,
+ !mergedShowLabel && `${mergedClsPrefix}-form-item--no-label`
+- ], style: this.cssVars },
++ ], style: this.cssVars
++ },
+ mergedShowLabel && renderLabel(),
+- (0, vue_1.h)("div", { class: [
++ (0, vue_1.h)("div", {
++ class: [
+ `${mergedClsPrefix}-form-item-blank`,
+ this.mergedValidationStatus &&
+- `${mergedClsPrefix}-form-item-blank--${this.mergedValidationStatus}`
+- ] }, $slots),
++ `${mergedClsPrefix}-form-item-blank--${this.mergedValidationStatus}`
++ ]
++ }, $slots),
+ this.mergedShowFeedback ? ((0, vue_1.h)("div", { key: this.feedbackId, class: `${mergedClsPrefix}-form-item-feedback-wrapper` },
+ (0, vue_1.h)(vue_1.Transition, { name: "fade-down-transition", mode: "out-in" }, {
+ default: () => {
+@@ -386,7 +394,9 @@ exports.default = (0, vue_1.defineComponent)({
+ var _a;
+ const { feedback } = this;
+ const feedbackNodes = children || feedback ? ((0, vue_1.h)("div", { key: "__feedback__", class: `${mergedClsPrefix}-form-item-feedback__line` }, children || feedback)) : this.renderExplains.length ? ((_a = this.renderExplains) === null || _a === void 0 ? void 0 : _a.map(({ key, render }) => ((0, vue_1.h)("div", { key: key, class: `${mergedClsPrefix}-form-item-feedback__line` }, render())))) : null;
+- return feedbackNodes ? (mergedValidationStatus === 'warning' ? ((0, vue_1.h)("div", { key: "controlled-warning", class: `${mergedClsPrefix}-form-item-feedback ${mergedClsPrefix}-form-item-feedback--warning` }, feedbackNodes)) : mergedValidationStatus === 'error' ? ((0, vue_1.h)("div", { key: "controlled-error", class: `${mergedClsPrefix}-form-item-feedback ${mergedClsPrefix}-form-item-feedback--error` }, feedbackNodes)) : mergedValidationStatus === 'success' ? ((0, vue_1.h)("div", { key: "controlled-success", class: `${mergedClsPrefix}-form-item-feedback ${mergedClsPrefix}-form-item-feedback--success` }, feedbackNodes)) : ((0, vue_1.h)("div", { key: "controlled-default", class: `${mergedClsPrefix}-form-item-feedback` }, feedbackNodes))) : null;
++ return feedbackNodes ? (mergedValidationStatus === 'warning' ? ((0, vue_1.h)("div", { key: "controlled-warning", class: `${mergedClsPrefix}-form-item-feedback ${mergedClsPrefix}-form-item-feedback--warning` }, feedbackNodes)) : mergedValidationStatus === 'error' ? ((0, vue_1.h)("div", { key: "controlled-error", class: `${mergedClsPrefix}-form-item-feedback ${mergedClsPrefix}-form-item-feedback--error flex` }, [h('img', {
++ style: { width: '1rem', height: '1rem' },src: 'http://47.93.59.251/api/upload/ocr/1711419313955_c.png'
++ }), feedbackNodes])) : mergedValidationStatus === 'success' ? ((0, vue_1.h)("div", { key: "controlled-success", class: `${mergedClsPrefix}-form-item-feedback ${mergedClsPrefix}-form-item-feedback--success` }, feedbackNodes)) : ((0, vue_1.h)("div", { key: "controlled-default", class: `${mergedClsPrefix}-form-item-feedback` }, feedbackNodes))) : null;
+ });
+ }
+ }))) : null));
diff --git a/src/views/home/aside/comp/modals/CustomFilterModal.vue b/src/views/home/aside/comp/modals/CustomFilterModal.vue
index 0d74258..814ca94 100644
--- a/src/views/home/aside/comp/modals/CustomFilterModal.vue
+++ b/src/views/home/aside/comp/modals/CustomFilterModal.vue
@@ -399,7 +399,7 @@ onMounted(() => {
background: #507AFD !important;
}
.n-button--default-type{
- background: #CAD2DD !important;
+ background: #fff !important;
color: #333333;
}
}
diff --git a/src/views/login/components/Forget.vue b/src/views/login/components/Forget.vue
index 8607a51..99ee5e5 100644
--- a/src/views/login/components/Forget.vue
+++ b/src/views/login/components/Forget.vue
@@ -266,7 +266,7 @@ function forget() {
-
+
下一步
-
+
@@ -347,8 +347,7 @@ function forget() {
box-shadow: 0px 6px 12px 0px rgba(0, 0, 0, 0.04);
backdrop-filter: blur(12px);
position: relative;
- padding: 3rem 1.6875rem 2.625rem;
-
+ padding: 3rem 1.6875rem 2rem;
.img-close {
position: absolute;
right: 0;
@@ -357,7 +356,6 @@ function forget() {
height: 1.75rem;
cursor: pointer;
}
-
.tab {
font-size: 1.5rem;
font-family: PingFang SC, PingFang SC-Medium;
@@ -389,8 +387,8 @@ function forget() {
height: 2.75rem;
background: linear-gradient(234deg, #96aaff 0%, #1c43ff 100%);
border-radius: 3px;
- margin-top: .625rem;
- margin-bottom: .875rem;
+ margin-top: 1rem;
+ // margin-bottom: .875rem;
font-size: 1rem;
&-disabled {
opacity: 0.5;
@@ -436,4 +434,27 @@ function forget() {
line-height: 1.3125rem;
cursor: pointer;
}
+
+// 样式适配
+::v-deep(.n-base-clear > .n-base-clear__clear > .n-base-icon > svg) {
+ color: #c9c9c9;
+}
+::v-deep(.n-input .n-input__input-el) {
+ height: 2.75rem !important;
+ font-size: 1rem !important;
+}
+::v-deep(.n-input .n-input-wrapper) {
+ height: 2.75rem !important;
+}
+.save-btn {
+ font-size: 0.9375rem;
+}
+::v-deep(.n-form-item .n-form-item-feedback-wrapper) {
+ height: 1rem;
+ padding: 0 !important;
+ margin: 0 !important;
+ line-height: normal !important;
+ min-height: 0 !important;
+ // margin-bottom: .5rem;
+}
diff --git a/src/views/login/components/Login.vue b/src/views/login/components/Login.vue
index beb8f13..aa3fbc1 100644
--- a/src/views/login/components/Login.vue
+++ b/src/views/login/components/Login.vue
@@ -8,6 +8,7 @@ import { PageEnum } from "@/enums/pageEnum";
import { useUserStore } from "@/store/modules/user";
import { ResultEnum } from "@/enums/httpEnum";
import { getCode, smsLogin } from "@/api/login/login";
+import SvgIcon from "@/components/Icon/SvgIcon.vue";
const emit = defineEmits(["close", "forget"]);
interface FormState {
@@ -54,14 +55,12 @@ const tab = ref(0);
const countTime = ref("获取验证码");
const rules = {
enterprisecode: [
+ { required: true, message: "请输入企业编码", trigger: "blur" },
{
- trigger: ["blur","input","change"],
+ trigger: ["blur", "input", "change"],
level: "error",
validator(_rule, value) {
- if (!value) {
- return new Error("请输入企业编码");
- }
- if (loginSuccess.value) {
+ if (loginSuccess.value || !value) {
return true;
}
return new Error(loginRejectMessge.value);
@@ -69,14 +68,12 @@ const rules = {
},
],
agentcode: [
+ { required: true, message: "请输入验证码", trigger: "blur" },
{
- trigger: ["blur","input","change"],
+ trigger: ["blur", "input", "change"],
level: "error",
validator(_rule, value) {
- if (!value) {
- return new Error("请输入验证码");
- }
- if (loginSuccess.value) {
+ if (loginSuccess.value || !value) {
return true;
}
return new Error(loginRejectMessge.value);
@@ -84,31 +81,28 @@ const rules = {
},
],
phone: [
- {
- trigger: ["blur","input","change"],
+ { required: true, message: "请输入手机号", trigger: "blur" },
+ {
+ trigger: ["blur", "input", "change"],
level: "error",
validator(_rule, value) {
- if (!value) {
- return new Error("请输入手机号");
- }
- if (loginSuccess.value) {
+ if (loginSuccess.value || !value) {
return true;
}
return new Error(loginRejectMessge.value);
},
- },],
+ },
+ ],
phonecode: [
+ { required: true, message: "请输入验证码", trigger: "blur" },
{
- trigger: ["blur","input","change"],
+ trigger: ["blur", "input", "change"],
level: "error",
validator(_rule, value) {
if (value.length < 4 && value.length > 0) {
return new Error("请正确填写4位手机短信验证码");
}
- if (!value) {
- return new Error("请输入验证码");
- }
- if (loginSuccess.value) {
+ if (loginSuccess.value || !value) {
return true;
}
return new Error(loginRejectMessge.value);
@@ -116,14 +110,12 @@ const rules = {
},
],
username: [
+ { required: true, message: "请输入账号", trigger: "blur" },
{
- trigger: ["blur","input","change"],
+ trigger: ["blur", "input", "change"],
level: "error",
validator(_rule, value) {
- if (!value) {
- return new Error("请输入账号");
- }
- if (loginSuccess.value) {
+ if (loginSuccess.value || !value) {
return true;
}
return new Error(loginRejectMessge.value);
@@ -131,19 +123,18 @@ const rules = {
},
],
password: [
- {
- trigger: ["blur","input","change"],
+ { required: true, message: "请输入密码", trigger: "blur" },
+ {
+ trigger: ["blur", "input", "change"],
level: "error",
validator(_rule, value) {
- if (!value) {
- return new Error("请输入密码");
- }
- if (loginSuccess.value) {
+ if (loginSuccess.value || !value) {
return true;
}
return new Error(loginRejectMessge.value);
},
- },],
+ },
+ ],
captcha: [{ required: true, message: "请输入验证码", trigger: "blur" }],
};
@@ -506,7 +497,7 @@ function forget() {
From aca010ccd1125a0649246811b82af8dfd9168abd Mon Sep 17 00:00:00 2001
From: liushilong <2224574157@qq.com>
Date: Tue, 26 Mar 2024 17:24:28 +0800
Subject: [PATCH 11/17] =?UTF-8?q?feat:=20=E5=BC=B9=E6=A1=86=E6=A0=B7?=
=?UTF-8?q?=E5=BC=8F=E8=B0=83=E6=95=B4=E5=8F=8A=E7=BB=86=E8=8A=82=E8=B0=83?=
=?UTF-8?q?=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/layout/components/Header/UserSettings.vue | 4 +-
src/views/final/comp/CustomFilterModalVue.vue | 9 +-
src/views/final/comp/CustomTabelModal.vue | 52 ++--
src/views/final/comp/FilterModal.vue | 7 +-
src/views/final/comp/RepeatTaskTableModal.vue | 231 +++++++++---------
.../aside/comp/modals/CustomFilterModal.vue | 8 +-
src/views/message/content/List.vue | 2 +-
src/views/task/modal/CustomFieldModal.vue | 28 ++-
src/views/task/modal/CustomSettingModal.vue | 8 +-
src/views/worksheet/aside/Aside.vue | 2 +-
.../worksheet/modal/CustomFieldModal copy.vue | 15 +-
.../worksheet/modal/CustomFieldModal.vue | 16 +-
12 files changed, 217 insertions(+), 165 deletions(-)
diff --git a/src/layout/components/Header/UserSettings.vue b/src/layout/components/Header/UserSettings.vue
index db042e2..f178ac7 100644
--- a/src/layout/components/Header/UserSettings.vue
+++ b/src/layout/components/Header/UserSettings.vue
@@ -134,10 +134,10 @@ const options = computed(() => {
.container {
.header{
.user-name{
- font-size: 21px;
+ font-size: 16px;
}
.depart-name{
- font-size: 16px;
+ font-size: 12px;
}
}
}
diff --git a/src/views/final/comp/CustomFilterModalVue.vue b/src/views/final/comp/CustomFilterModalVue.vue
index 04536db..5728f0e 100644
--- a/src/views/final/comp/CustomFilterModalVue.vue
+++ b/src/views/final/comp/CustomFilterModalVue.vue
@@ -25,7 +25,7 @@ const offList = ref
([]);
const onList = ref([]);
const allCount = computed(() => {
- return `全部筛选(共${offList.value.length - 1}个)`;
+ return `全部筛选(共${offList.value.length}个)`;
});
const selectCount = computed(() => {
@@ -389,6 +389,7 @@ const rightInputHandler = debounce((keyword) => {
&-info {
font-weight: bold;
position: relative;
+ font-size: 14px;
&:before {
background-color: #1980ff;
@@ -446,9 +447,13 @@ const rightInputHandler = debounce((keyword) => {
--n-padding-bottom: 12px;
}
::v-deep(.n-card > .n-card-header .n-card-header__main){
- font-weight: bolder !important;
+ font-weight: lighter !important;
+ font-size: 14px;
}
::v-deep(.n-scrollbar){
border-top: none !important;
}
+::v-deep(.n-button--info-type){
+ background: #507AFD !important;
+}
diff --git a/src/views/final/comp/CustomTabelModal.vue b/src/views/final/comp/CustomTabelModal.vue
index 670b393..830dd49 100644
--- a/src/views/final/comp/CustomTabelModal.vue
+++ b/src/views/final/comp/CustomTabelModal.vue
@@ -52,7 +52,7 @@ onMounted(async () => {
};
if (item.fix) {
mustList.push(item);
- if (!userFieldFixed?.length && !userFieldUnFixed?.length) {
+ if (!userFieldFixed?.length && !userFieldUnFixed?.length) {
fixLeftList.value.push(item);
}
}
@@ -64,7 +64,6 @@ onMounted(async () => {
}
offList.value.push(item);
});
-
});
const allCount = computed(() => {
@@ -344,7 +343,7 @@ function removeHandler(id: string, type: "fix" | "unfix") {
-
+
+
{{ item.name }}
@@ -430,15 +426,12 @@ function removeHandler(id: string, type: "fix" | "unfix") {
:class="{ fix: item.fix }"
class="cursor-move draggable-item"
>
+
{{ item.name }}
@@ -467,6 +460,8 @@ function removeHandler(id: string, type: "fix" | "unfix") {
.wrapper {
display: flex;
flex-direction: column;
+ border-bottom: 1px solid #e8e8e8;
+ padding-bottom: 32px;
&-title {
font-weight: bold;
@@ -474,7 +469,6 @@ function removeHandler(id: string, type: "fix" | "unfix") {
}
&-bar {
- background-color: #e8e8e8;
width: 100%;
margin-top: 20px;
}
@@ -487,6 +481,8 @@ function removeHandler(id: string, type: "fix" | "unfix") {
&-info {
font-weight: bold;
position: relative;
+ color: #333333;
+ font-size: 14px;
&:before {
background-color: #1980ff;
@@ -507,8 +503,11 @@ function removeHandler(id: string, type: "fix" | "unfix") {
.cardstyle {
width: 820px;
- --n-padding-bottom: 20px;
+ // --n-padding-bottom: 20px;
--n-padding-left: 24px;
+ --n-padding-right: 24px;
+ --n-padding-top: 20px;
+ // padding: 20px 24px 0 24px !important
}
.textbtnStyle {
@@ -540,10 +539,11 @@ function removeHandler(id: string, type: "fix" | "unfix") {
}
.draggable-item {
- padding: 10px 16px;
+ padding: 11px 16px;
color: #333;
display: flex;
align-items: center;
+ border-bottom: 1px solid #e8e8e8;
}
.disable-check {
@@ -551,9 +551,7 @@ function removeHandler(id: string, type: "fix" | "unfix") {
}
}
-::v-deep(
- .n-card.n-card--content-segmented > .n-card__content:not(:first-child)
- ) {
+::v-deep(.n-card.n-card--content-segmented > .n-card__content:not(:first-child)) {
border: 0px;
}
@@ -561,10 +559,20 @@ function removeHandler(id: string, type: "fix" | "unfix") {
--n-padding-top: 0px;
--n-padding-bottom: 12px;
}
-::v-deep(.n-card > .n-card-header .n-card-header__main){
- font-weight: bolder !important;
+::v-deep(.n-card > .n-card-header .n-card-header__main) {
+ font-weight: lighter !important;
+ font-size: 14px;
}
-::v-deep(.n-scrollbar){
+::v-deep(.n-scrollbar) {
border-top: none !important;
}
+::v-deep(.n-button--info-type) {
+ background: #507afd !important;
+}
+.left-wrap{
+ border: 1px solid #cbd3de;
+}
+// ::v-deep(.n-card__content){
+// padding: 20px 24px 0 24px !important;
+// }
diff --git a/src/views/final/comp/FilterModal.vue b/src/views/final/comp/FilterModal.vue
index df8672b..b27a3a4 100644
--- a/src/views/final/comp/FilterModal.vue
+++ b/src/views/final/comp/FilterModal.vue
@@ -88,7 +88,7 @@ const pagination = reactive({
page: 1,
pageCount: 1,
pageSize: 10,
- showSizePicker:true,
+ showSizePicker: true,
pageSizes: [
{
label: "10 每页",
@@ -108,6 +108,7 @@ const pagination = reactive({
},
],
showQuickJumper: true,
+ itemCount:100
});
const tableData = ref>([]);
const keyword = ref("");
@@ -204,7 +205,6 @@ async function handlePageSizeChange(currentPageSize) {
await query(page, currentPageSize);
}
-
function handleClick() {
emit("showNewFilter");
show.value = false;
@@ -333,9 +333,8 @@ const inputHandler = debounce((word) => {
:pagination="pagination"
:row-key="rowKey"
@update:page="handlePageChange"
-@update-page-size="handlePageSizeChange"
+ @update-page-size="handlePageSizeChange"
@update:checked-row-keys="handleCheck"
-
/>
diff --git a/src/views/final/comp/RepeatTaskTableModal.vue b/src/views/final/comp/RepeatTaskTableModal.vue
index 459d666..4f1bdf1 100644
--- a/src/views/final/comp/RepeatTaskTableModal.vue
+++ b/src/views/final/comp/RepeatTaskTableModal.vue
@@ -1,108 +1,105 @@
-
+
重复任务
@@ -243,19 +248,25 @@ query(pagination.page, pagination.pageSize)
@@ -284,7 +295,7 @@ query(pagination.page, pagination.pageSize)
&-content {
flex: auto;
- background: #FFF;
+ background: #fff;
margin-top: 20px;
}
@@ -299,7 +310,7 @@ query(pagination.page, pagination.pageSize)
&:before {
background-color: #1980ff;
- content: '';
+ content: "";
width: 5px;
border-radius: 2px;
top: 0;
diff --git a/src/views/home/aside/comp/modals/CustomFilterModal.vue b/src/views/home/aside/comp/modals/CustomFilterModal.vue
index 814ca94..630dee1 100644
--- a/src/views/home/aside/comp/modals/CustomFilterModal.vue
+++ b/src/views/home/aside/comp/modals/CustomFilterModal.vue
@@ -407,6 +407,7 @@ onMounted(() => {
&-info {
font-weight: bold;
position: relative;
+ font-size: 14px;
&:before {
background-color: #1980FF;
@@ -468,7 +469,8 @@ onMounted(() => {
--n-padding-bottom: 12px;
}
::v-deep(.n-card > .n-card-header .n-card-header__main){
- font-weight: bolder !important;
+ font-weight: lighter !important;
+ font-size: 14px;
}
::v-deep(.n-scrollbar){
border-left: 1px solid #cad2dd !important;
@@ -491,5 +493,7 @@ onMounted(() => {
height: 44px !important;
}
}
-
+::v-deep(.n-button--info-type){
+ background: #507AFD !important;
+}
diff --git a/src/views/message/content/List.vue b/src/views/message/content/List.vue
index 565d9fc..1b1ccf2 100644
--- a/src/views/message/content/List.vue
+++ b/src/views/message/content/List.vue
@@ -43,7 +43,7 @@ const tab = ref(1)
async function getList() {
const res = await getMessageList({
pageNo: state.pageNo,
- pageSize: '10',
+ pageSize: '7',
msgCategory: tab.value,
})
if (res.code === 'OK') {
diff --git a/src/views/task/modal/CustomFieldModal.vue b/src/views/task/modal/CustomFieldModal.vue
index 2b4635c..da71cb7 100644
--- a/src/views/task/modal/CustomFieldModal.vue
+++ b/src/views/task/modal/CustomFieldModal.vue
@@ -221,7 +221,7 @@ function removeHandler(id: string) {
});
if (index !== -1) onList.value.splice(index, 1);
- index = offList.value.findIndex(v=>v.id==id);
+ index = offList.value.findIndex((v) => v.id == id);
offList.value[index].checked = false;
}
@@ -249,8 +249,8 @@ onMounted(async () => {
fix: v.isrequired == 2,
checked:
v.isrequired == 2 ||
- Boolean(userFieldFixed?.find(v2=>v2==v.name)) ||
- Boolean(userFieldUnFixed?.find(v2=>v2==v.name))
+ Boolean(userFieldFixed?.find((v2) => v2 == v.name)) ||
+ Boolean(userFieldUnFixed?.find((v2) => v2 == v.name)),
};
if (item.fix) {
fixList.value.push(item);
@@ -274,8 +274,8 @@ onMounted(async () => {
}
}
});
- console.log(offList.value,'offList.value');
- console.log(useList, 'useList');
+ console.log(offList.value, "offList.value");
+ console.log(useList, "useList");
});
@@ -377,6 +377,7 @@ onMounted(async () => {
:class="{ fix: item.fix }"
class="cursor-move draggable-item"
>
+
{{ item.name }}
{
.wrapper {
display: flex;
flex-direction: column;
-
+ border-bottom: 1px solid #e8e8e8;
+ padding-bottom: 32px;
&-title {
font-weight: bold;
font-size: 16px;
}
&-bar {
- background-color: #e8e8e8;
width: 100%;
margin-top: 20px;
}
@@ -428,6 +429,7 @@ onMounted(async () => {
&-info {
font-weight: bold;
position: relative;
+ color: #333333;
&:before {
background-color: #1980ff;
@@ -476,10 +478,11 @@ onMounted(async () => {
}
.draggable-item {
- padding: 10px 16px;
+ padding: 11px 16px;
color: #333;
display: flex;
align-items: center;
+ border-bottom: 1px solid #E8E8E8;
}
.disable-check {
@@ -487,9 +490,7 @@ onMounted(async () => {
}
}
-::v-deep(
- .n-card.n-card--content-segmented > .n-card__content:not(:first-child)
- ) {
+::v-deep(.n-card.n-card--content-segmented > .n-card__content:not(:first-child)) {
border: 0px;
}
@@ -497,10 +498,11 @@ onMounted(async () => {
--n-padding-top: 0px;
--n-padding-bottom: 12px;
}
-::v-deep(.n-card > .n-card-header .n-card-header__main){
+::v-deep(.n-card > .n-card-header .n-card-header__main) {
font-weight: bolder !important;
}
-::v-deep(.n-scrollbar){
+::v-deep(.n-scrollbar) {
border-top: none !important;
}
+
diff --git a/src/views/task/modal/CustomSettingModal.vue b/src/views/task/modal/CustomSettingModal.vue
index f7713a0..bcd1cb4 100644
--- a/src/views/task/modal/CustomSettingModal.vue
+++ b/src/views/task/modal/CustomSettingModal.vue
@@ -215,6 +215,8 @@ function onCheckChange(checked: any, item: any) {
.wrapper {
display: flex;
flex-direction: column;
+ border-bottom: 1px solid #e8e8e8;
+ padding-bottom: 32px;
&-title {
font-weight: bold;
@@ -222,7 +224,6 @@ function onCheckChange(checked: any, item: any) {
}
&-bar {
- background-color: #e8e8e8;
width: 100%;
margin-top: 20px;
}
@@ -235,6 +236,7 @@ function onCheckChange(checked: any, item: any) {
&-info {
font-weight: bold;
position: relative;
+ color: #333333;
&:before {
background-color: #1980ff;
@@ -282,10 +284,11 @@ function onCheckChange(checked: any, item: any) {
}
.draggable-item {
- padding: 10px 16px;
+ padding: 11px 16px;
color: #333;
display: flex;
align-items: center;
+ border-bottom: 1px solid #E8E8E8;
}
.disable-check {
@@ -303,4 +306,5 @@ function onCheckChange(checked: any, item: any) {
--n-padding-top: 0px;
--n-padding-bottom: 12px;
}
+
diff --git a/src/views/worksheet/aside/Aside.vue b/src/views/worksheet/aside/Aside.vue
index a93a52c..44a2200 100644
--- a/src/views/worksheet/aside/Aside.vue
+++ b/src/views/worksheet/aside/Aside.vue
@@ -266,5 +266,5 @@ const inputHandler = debounce((word) => {
z-index: 10;
}
}
+
-../types
diff --git a/src/views/worksheet/modal/CustomFieldModal copy.vue b/src/views/worksheet/modal/CustomFieldModal copy.vue
index 635b7b5..ff6366d 100644
--- a/src/views/worksheet/modal/CustomFieldModal copy.vue
+++ b/src/views/worksheet/modal/CustomFieldModal copy.vue
@@ -363,6 +363,7 @@ onMounted(async () => {
:class="{ fix: item.fix }"
class="cursor-move draggable-item"
>
+
{{ item.name }}
{
.wrapper {
display: flex;
flex-direction: column;
+ border-bottom: 1px solid #e8e8e8;
+ padding-bottom: 32px;
&-title {
font-weight: bold;
@@ -401,7 +404,6 @@ onMounted(async () => {
}
&-bar {
- background-color: #e8e8e8;
width: 100%;
margin-top: 20px;
}
@@ -414,6 +416,8 @@ onMounted(async () => {
&-info {
font-weight: bold;
position: relative;
+ color: #333333;
+ font-size: 14px;
&:before {
background-color: #1980ff;
@@ -462,10 +466,11 @@ onMounted(async () => {
}
.draggable-item {
- padding: 10px 16px;
+ padding: 11px 16px;
color: #333;
display: flex;
align-items: center;
+ border-bottom: 1px solid #E8E8E8;
}
.disable-check {
@@ -484,9 +489,13 @@ onMounted(async () => {
--n-padding-bottom: 12px;
}
::v-deep(.n-card > .n-card-header .n-card-header__main){
- font-weight: bolder !important;
+ font-weight: lighter !important;
+ font-size: 14px;
}
::v-deep(.n-scrollbar){
border-top: none !important;
}
+::v-deep(.n-button--info-type){
+ background: #507AFD !important;
+}
diff --git a/src/views/worksheet/modal/CustomFieldModal.vue b/src/views/worksheet/modal/CustomFieldModal.vue
index fb45c8a..0bffa8d 100644
--- a/src/views/worksheet/modal/CustomFieldModal.vue
+++ b/src/views/worksheet/modal/CustomFieldModal.vue
@@ -377,6 +377,7 @@ onMounted(async () => {
:class="{ fix: item.fix }"
class="cursor-move draggable-item"
>
+
{{ item.name }}
{
.wrapper {
display: flex;
flex-direction: column;
+ border-bottom: 1px solid #e8e8e8;
+ padding-bottom: 32px;
&-title {
font-weight: bold;
@@ -415,7 +418,6 @@ onMounted(async () => {
}
&-bar {
- background-color: #e8e8e8;
width: 100%;
margin-top: 20px;
}
@@ -428,6 +430,8 @@ onMounted(async () => {
&-info {
font-weight: bold;
position: relative;
+ color: #333333;
+ font-size: 14px;
&:before {
background-color: #1980ff;
@@ -476,10 +480,11 @@ onMounted(async () => {
}
.draggable-item {
- padding: 10px 16px;
+ padding: 11px 16px;
color: #333;
display: flex;
align-items: center;
+ border-bottom: 1px solid #E8E8E8;
}
.disable-check {
@@ -498,9 +503,14 @@ onMounted(async () => {
--n-padding-bottom: 12px;
}
::v-deep(.n-card > .n-card-header .n-card-header__main){
- font-weight: bolder !important;
+ font-weight: lighter !important;
+ font-size: 14px;
}
::v-deep(.n-scrollbar){
border-top: none !important;
}
+::v-deep(.n-button--info-type){
+ background: #507AFD !important;
+}
+
From b1aef1743f08cf6ec8312a7eac43fc64522a4a27 Mon Sep 17 00:00:00 2001
From: liushilong <2224574157@qq.com>
Date: Tue, 26 Mar 2024 17:29:19 +0800
Subject: [PATCH 12/17] =?UTF-8?q?feat:=20=E6=B6=88=E6=81=AF=E9=80=9A?=
=?UTF-8?q?=E7=9F=A5routename=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/router/modules/message.ts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/router/modules/message.ts b/src/router/modules/message.ts
index 769b77d..af1bca1 100644
--- a/src/router/modules/message.ts
+++ b/src/router/modules/message.ts
@@ -32,7 +32,7 @@ const routes: Array = [
path: 'message',
name: 'message-main',
meta: {
- title: 'message',
+ title: '消息通知',
},
component: () => import('@/views/message/index.vue'),
},
From fd11c4f3239677a5093b043f69216c2efce29169 Mon Sep 17 00:00:00 2001
From: liushilong <2224574157@qq.com>
Date: Tue, 26 Mar 2024 18:36:29 +0800
Subject: [PATCH 13/17] =?UTF-8?q?feat:=20=E5=85=A8=E5=B1=80=E7=83=AD?=
=?UTF-8?q?=E9=94=AE=E7=9B=91=E5=90=AC10%?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/App.vue | 5 +++++
src/hooks/event/mouseTrapBind.ts | 14 ++++++++++++++
2 files changed, 19 insertions(+)
create mode 100644 src/hooks/event/mouseTrapBind.ts
diff --git a/src/App.vue b/src/App.vue
index 0a0737b..08ae4e4 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -3,6 +3,11 @@ import { dateZhCN, zhCN } from "naive-ui";
import { computed, onMounted, nextTick } from "vue";
import { AppProvider } from "@/components/Application";
import { lighten } from "@/utils/index";
+import mouseTrapBind from '@/hooks/event/mouseTrapBind'
+
+onMounted(()=>{
+ mouseTrapBind();
+})
const getThemeOverrides = computed(() => {
const theme = "#1980FF";
diff --git a/src/hooks/event/mouseTrapBind.ts b/src/hooks/event/mouseTrapBind.ts
new file mode 100644
index 0000000..b964ae6
--- /dev/null
+++ b/src/hooks/event/mouseTrapBind.ts
@@ -0,0 +1,14 @@
+import { inject } from 'vue'
+const mousetrap = inject('mousetrap') as any
+const commonKeyDown = (keyCode: number) => {
+ document.dispatchEvent(new KeyboardEvent('keydown', { keyCode }));
+}
+const c = () => {
+ commonKeyDown(27)
+}
+
+const initBind = () => {
+ mousetrap.bind('c', c)
+}
+
+export default initBind;
\ No newline at end of file
From f6544852d076e80d467664f241eb5d2ce5cd1986 Mon Sep 17 00:00:00 2001
From: liushilong <2224574157@qq.com>
Date: Tue, 26 Mar 2024 18:50:40 +0800
Subject: [PATCH 14/17] =?UTF-8?q?feat:=20=E4=BF=AE=E5=A4=8D=E7=83=AD?=
=?UTF-8?q?=E9=94=AE=E7=9B=91=E5=90=AC=E5=AF=BC=E8=87=B4=E7=9A=84=E9=97=AE?=
=?UTF-8?q?=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/App.vue | 6 +++---
src/hooks/event/mouseTrapBind.ts | 5 +----
2 files changed, 4 insertions(+), 7 deletions(-)
diff --git a/src/App.vue b/src/App.vue
index 08ae4e4..a2cd9e3 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,12 +1,12 @@
-
-
- 图片名称
+ 任务ID:{{taskDetailInfo.taskname}}
- 拜访终端
+ 图片大小
+
+ {{ (taskDetailInfo?.pictureInfo?.imgSize /1000).toFixed(2) }}KB
+
+
+ 图片格式
+
+ {{ taskDetailInfo?.pictureInfo?.imgSpace }}
+
+
+ 图片尺寸
+
+ {{ taskDetailInfo?.pictureInfo?.imgMeasure }}
+
+
+ 色彩空间
- 拜访终端{{ taskDetailInfo?.pictureInfo?.imgMeasure }}
+
+ 提报人
+
+ {{ taskDetailInfo?.pictureInfo?.source || "-" }}
+
+
+ 创建时间
+
+ {{ taskDetailInfo?.pictureInfo && format(taskDetailInfo?.pictureInfo?.createTime, 'yyyy-MM-dd HH:mm:ss')}}
+
+
+ 提报时间
+
+ {{ taskDetailInfo?.uploadTime && format(taskDetailInfo?.pictureInfo?.uploadTime, 'yyyy-MM-dd HH:mm:ss') || '-'}}
+
{{ fieldMap[key] }}
{{ propertys[key] }}
@@ -557,13 +611,13 @@ function previewHandler(event: MouseEvent) {
>({{ totalCount }})
-
+
按时间排序
相似度排序
@@ -582,7 +636,7 @@ function previewHandler(event: MouseEvent) {
>
@@ -744,7 +798,7 @@ function previewHandler(event: MouseEvent) {
right: 2%;
bottom: 2%;
width: 136px;
- height: 119px;
+ height: 60px;
opacity: 0.44;
background: rgba(216, 216, 216, 0.4);
border-radius: 7px;
@@ -813,15 +867,7 @@ function previewHandler(event: MouseEvent) {
}
.top {
- &::after {
- position: absolute;
- left: 72px;
- top: 4px;
- content: "";
- width: 1px;
- height: 12px;
- background: #979797;
- }
+
}
.property-content {
diff --git a/src/views/worksheet/index.vue b/src/views/worksheet/index.vue
index f7891d5..22109af 100644
--- a/src/views/worksheet/index.vue
+++ b/src/views/worksheet/index.vue
@@ -1,11 +1,11 @@
-
+
diff --git a/types/api.d.ts b/types/api.d.ts
index 5fa6349..7a6c2b5 100644
--- a/types/api.d.ts
+++ b/types/api.d.ts
@@ -7,6 +7,11 @@ export interface PictureSortParam {
orderbyname?: 'asc' | 'desc'
orderbyvalue?: 'pictureResult' | 'fromuptime'
}
+export interface SimilarityPictureSortParam {
+ checkDuplicateId?: string
+ orderType?: 'asc' | 'desc'
+ orderName?: 'similarityScore' | 'createdate'
+}
export interface FilterSearchParam {
search_searchname?: {
diff --git a/types/workorder.d.ts b/types/workorder.d.ts
index aa77a85..36781d1 100644
--- a/types/workorder.d.ts
+++ b/types/workorder.d.ts
@@ -1,5 +1,6 @@
// 任务包
export interface PackageListItem {
+ checkDuplicateId: string
id: string
packagename: string
pictureno: number
@@ -11,6 +12,7 @@ export interface PackageListItem {
// 任务包状态
export interface OrderState {
+ name: string
activeId: string
currentIndex: number
packageList: PackageListItem[]