mirror of
				https://gitee.com/hhyykk/ipms-sjy-ui.git
				synced 2025-11-04 12:18:43 +08:00 
			
		
		
		
	code review:商品评论
This commit is contained in:
		@@ -48,16 +48,15 @@ defineExpose({ open }) // 提供 open 方法,用于打开弹窗
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
/** 提交表单 */
 | 
					/** 提交表单 */
 | 
				
			||||||
const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调
 | 
					const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调
 | 
				
			||||||
 | 
					 | 
				
			||||||
const submitReplyForm = async () => {
 | 
					const submitReplyForm = async () => {
 | 
				
			||||||
 | 
					  // 校验表单
 | 
				
			||||||
  const valid = await formRef?.value?.validate()
 | 
					  const valid = await formRef?.value?.validate()
 | 
				
			||||||
  if (!valid) return
 | 
					  if (!valid) return
 | 
				
			||||||
 | 
					  // 提交请求
 | 
				
			||||||
  formLoading.value = true
 | 
					  formLoading.value = true
 | 
				
			||||||
  try {
 | 
					  try {
 | 
				
			||||||
    await CommentApi.replyComment(formData.value)
 | 
					    await CommentApi.replyComment(formData.value)
 | 
				
			||||||
    message.success(t('common.createSuccess'))
 | 
					    message.success(t('common.createSuccess'))
 | 
				
			||||||
 | 
					 | 
				
			||||||
    dialogVisible.value = false
 | 
					    dialogVisible.value = false
 | 
				
			||||||
    // 发送操作成功的事件
 | 
					    // 发送操作成功的事件
 | 
				
			||||||
    emit('success')
 | 
					    emit('success')
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -61,17 +61,24 @@
 | 
				
			|||||||
    <el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="false">
 | 
					    <el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="false">
 | 
				
			||||||
      <el-table-column label="评论编号" align="center" prop="id" min-width="60" />
 | 
					      <el-table-column label="评论编号" align="center" prop="id" min-width="60" />
 | 
				
			||||||
      <el-table-column label="用户名称" align="center" prop="userNickname" width="80" />
 | 
					      <el-table-column label="用户名称" align="center" prop="userNickname" width="80" />
 | 
				
			||||||
      <el-table-column label="商品信息" align="center" min-width="210">
 | 
					      <el-table-column label="商品信息" align="center" min-width="300">
 | 
				
			||||||
        <template #default="scope">
 | 
					        <template #default="scope">
 | 
				
			||||||
          <div class="flex row items-center gap-x-4px">
 | 
					          <div class="flex row items-center gap-x-4px">
 | 
				
			||||||
            <el-image
 | 
					            <el-image
 | 
				
			||||||
              v-if="scope.row.skuPicUrl"
 | 
					              v-if="scope.row.skuPicUrl"
 | 
				
			||||||
              :src="scope.row.skuPicUrl"
 | 
					              :src="scope.row.skuPicUrl"
 | 
				
			||||||
              :preview-src-list="[scope.row.skuPicUrl]"
 | 
					              :preview-src-list="[scope.row.skuPicUrl]"
 | 
				
			||||||
              class="w-30px h-30px shrink-0"
 | 
					              class="w-40px h-40px shrink-0"
 | 
				
			||||||
              preview-teleported
 | 
					              preview-teleported
 | 
				
			||||||
            />
 | 
					            />
 | 
				
			||||||
            <div>{{ scope.row.spuName }}</div>
 | 
					            <div>{{ scope.row.spuName }}</div>
 | 
				
			||||||
 | 
					            <el-tag
 | 
				
			||||||
 | 
					              v-for="property in scope.row.skuProperties"
 | 
				
			||||||
 | 
					              :key="property.propertyId"
 | 
				
			||||||
 | 
					              class="mr-10px"
 | 
				
			||||||
 | 
					            >
 | 
				
			||||||
 | 
					              {{ property.propertyName }}: {{ property.valueName }}
 | 
				
			||||||
 | 
					            </el-tag>
 | 
				
			||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
        </template>
 | 
					        </template>
 | 
				
			||||||
      </el-table-column>
 | 
					      </el-table-column>
 | 
				
			||||||
@@ -88,7 +95,7 @@
 | 
				
			|||||||
              :src="picUrl"
 | 
					              :src="picUrl"
 | 
				
			||||||
              :preview-src-list="scope.row.picUrls"
 | 
					              :preview-src-list="scope.row.picUrls"
 | 
				
			||||||
              :initial-index="index"
 | 
					              :initial-index="index"
 | 
				
			||||||
              class="w-30px h-30px"
 | 
					              class="w-40px h-40px"
 | 
				
			||||||
              preview-teleported
 | 
					              preview-teleported
 | 
				
			||||||
            />
 | 
					            />
 | 
				
			||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
@@ -151,7 +158,7 @@
 | 
				
			|||||||
import { dateFormatter } from '@/utils/formatTime'
 | 
					import { dateFormatter } from '@/utils/formatTime'
 | 
				
			||||||
import * as CommentApi from '@/api/mall/product/comment'
 | 
					import * as CommentApi from '@/api/mall/product/comment'
 | 
				
			||||||
import CommentForm from './CommentForm.vue'
 | 
					import CommentForm from './CommentForm.vue'
 | 
				
			||||||
import ReplyForm from '@/views/mall/product/comment/ReplyForm.vue'
 | 
					import ReplyForm from './ReplyForm.vue'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
defineOptions({ name: 'ProductComment' })
 | 
					defineOptions({ name: 'ProductComment' })
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -164,25 +171,10 @@ const list = ref([]) // 列表的数据
 | 
				
			|||||||
const queryParams = reactive({
 | 
					const queryParams = reactive({
 | 
				
			||||||
  pageNo: 1,
 | 
					  pageNo: 1,
 | 
				
			||||||
  pageSize: 10,
 | 
					  pageSize: 10,
 | 
				
			||||||
  userId: null,
 | 
					 | 
				
			||||||
  userNickname: null,
 | 
					 | 
				
			||||||
  userAvatar: null,
 | 
					 | 
				
			||||||
  anonymous: null,
 | 
					 | 
				
			||||||
  orderId: null,
 | 
					 | 
				
			||||||
  orderItemId: null,
 | 
					 | 
				
			||||||
  spuId: null,
 | 
					 | 
				
			||||||
  spuName: null,
 | 
					 | 
				
			||||||
  skuId: null,
 | 
					 | 
				
			||||||
  visible: null,
 | 
					 | 
				
			||||||
  scores: null,
 | 
					 | 
				
			||||||
  descriptionScores: null,
 | 
					 | 
				
			||||||
  benefitScores: null,
 | 
					 | 
				
			||||||
  content: null,
 | 
					 | 
				
			||||||
  picUrls: null,
 | 
					 | 
				
			||||||
  replyStatus: null,
 | 
					  replyStatus: null,
 | 
				
			||||||
  replyUserId: null,
 | 
					  spuName: null,
 | 
				
			||||||
  replyContent: null,
 | 
					  userNickname: null,
 | 
				
			||||||
  replyTime: [],
 | 
					  orderId: null,
 | 
				
			||||||
  createTime: []
 | 
					  createTime: []
 | 
				
			||||||
})
 | 
					})
 | 
				
			||||||
const queryFormRef = ref() // 搜索的表单
 | 
					const queryFormRef = ref() // 搜索的表单
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user