+

-
-
+
+
+
diff --git a/src/views/creative-generation-workshop/manuscript/detail/style.scss b/src/views/creative-generation-workshop/manuscript/detail/style.scss
index 14cda51..76b35c1 100644
--- a/src/views/creative-generation-workshop/manuscript/detail/style.scss
+++ b/src/views/creative-generation-workshop/manuscript/detail/style.scss
@@ -1,3 +1,25 @@
-.manuscript-edit-wrap {
-
+$footer-height: 68px;
+.manuscript-detail-wrap {
+ height: calc(100% - 72px);
+ display: flex;
+ flex-direction: column;
+ .cts {
+ color: #939499;
+ font-family: $font-family-regular;
+ font-size: 14px;
+ font-style: normal;
+ font-weight: 400;
+ line-height: 22px;
+ &.bold {
+ font-family: $font-family-medium;
+ }
+ }
+}
+.footer-row {
+ position: fixed;
+ bottom: 0;
+ left: $sidebar-width;
+ width: calc(100% - $sidebar-width);
+ border-top: 1px solid #e6e6e8;
+ height: $footer-height;
}
\ No newline at end of file
diff --git a/src/views/creative-generation-workshop/manuscript/edit/index.vue b/src/views/creative-generation-workshop/manuscript/edit/index.vue
index 6b95a0d..a286729 100644
--- a/src/views/creative-generation-workshop/manuscript/edit/index.vue
+++ b/src/views/creative-generation-workshop/manuscript/edit/index.vue
@@ -2,6 +2,15 @@
import { Button, Message as AMessage } from '@arco-design/web-vue';
import EditForm from '../components/edit-form';
import CancelEditModal from './cancel-edit-modal.vue';
+import { getWorksDetail, putWorksUpdate } from '@/api/all/generationWorkshop';
+
+const INITIAL_DATA = {
+ title: '',
+ desc: '',
+ content: '',
+ project_ids: [],
+ files: [],
+};
export default {
components: {
@@ -9,15 +18,18 @@ export default {
},
setup(props, { emit, expose }) {
const router = useRouter();
+ const route = useRoute();
const formRef = ref(null);
const cancelEditModal = ref(null);
const dataSource = ref({});
- const editDataSource = ref({});
+ const remoteDataSource = ref({});
const uploadLoading = ref(false);
const isSaved = ref(false);
+ const workId = ref(route.params.id);
+
const onCancel = () => {
- const isModified = !isEqual(dataSource.value, editDataSource.value);
+ const isModified = !isEqual(dataSource.value, remoteDataSource.value);
if (isModified && isSaved.value) {
cancelEditModal.value?.open();
} else {
@@ -25,31 +37,29 @@ export default {
}
};
- const onSubmit = async () => {
- formRef.value?.validate().then(() => {
- AMessage.success('保存成功');
- isSaved.value = true;
- console.log('success');
+ const onSave = async (check = false) => {
+ formRef.value?.validate().then(async () => {
+ const { code, data } = await putWorksUpdate({ id: workId.value, ...dataSource.value });
+ if (code === 200) {
+ AMessage.success('保存成功');
+ isSaved.value = true;
+
+ if (check) {
+ router.push({ name: 'ManuscriptCheck', params: { id: workId.value } });
+ }
+ }
});
};
-
- const onSubmitAndCheck = () => {
- console.log('onSubmitAndCheck');
- isSaved.value = false;
+ const init = () => {
+ dataSource.value = cloneDeep(INITIAL_DATA);
+ remoteDataSource.value = cloneDeep(INITIAL_DATA);
};
-
- const getData = () => {
- const _data = {
- id: 1,
- title: '',
- desc: '',
- content: '挖到宝了!这个平价好物让我素颜出门都自信✨挖到宝了!这个平价好物让我素颜出门都自信✨',
- type: 1,
- project_ids: [],
- files: [],
- };
- dataSource.value = cloneDeep(_data);
- editDataSource.value = cloneDeep(_data);
+ const getData = async () => {
+ const { code, data } = await getWorksDetail(workId.value);
+ if (code === 200) {
+ dataSource.value = cloneDeep(data);
+ remoteDataSource.value = cloneDeep(data);
+ }
};
const handleFormChange = () => {
console.log('handleFormChange');
@@ -58,7 +68,8 @@ export default {
router.push({ name: 'ManuscriptList' });
};
onMounted(() => {
- getData();
+ init();
+ workId && getData();
});
return () => (
@@ -79,10 +90,10 @@ export default {
-
diff --git a/src/views/creative-generation-workshop/manuscript/list/components/filter-block/index.vue b/src/views/creative-generation-workshop/manuscript/list/components/filter-block/index.vue
index 31678b6..83675a1 100644
--- a/src/views/creative-generation-workshop/manuscript/list/components/filter-block/index.vue
+++ b/src/views/creative-generation-workshop/manuscript/list/components/filter-block/index.vue
@@ -18,7 +18,13 @@