Browse Source

feat: 补充任务指定新评卷员的接口

chenhao 2 năm trước cách đây
mục cha
commit
c2ab1fd1a6

+ 27 - 0
jenkins.sh

@@ -0,0 +1,27 @@
+#!/bin/bash
+set -e # 如果构建失败,则退出,不能删除旧的包
+if [ "$#" -ne 1 ] ; then
+  echo "Usage: $0 BUILD_ENV" >&2
+  exit 1
+fi
+
+pwd
+
+echo “build env: $1”
+
+pwd
+
+yarn
+npm run build:$1
+
+mkdir -p ~/project/marking-cet/static-new/temp
+cp -r  dist ~/project/marking-cet/static-new/temp
+
+cd ~/project/marking-cet/static-new
+if [ -d "dist" ]; then
+  rm -rf dist/*
+fi
+
+mv temp/dist .
+rm -rf temp
+echo "ok..."

+ 2 - 0
src/api/statistics.ts

@@ -36,6 +36,8 @@ const StatisticsApi: DefineApiModule<Statistics.ApiMap> = {
   unProcessSimilarList: '/api/statistic/marking/progress/check/for/same/paper/list',
   /** 质量统计-收尾检查-未处理问题卷列表 */
   unProcessProblemList: '/api/statistic/marking/progress/check/for/problem/paper/list',
+  /** 任务指定新评卷员 */
+  changeTaskMarker: '/api/mark/task/assign',
   /** 决策分析-小组监控 */
   getGroupMonitor: {
     url: '/api/statistic/monitor/for/group',

+ 42 - 11
src/modules/quality/ending-check/components/EndCheck.vue

@@ -11,31 +11,37 @@
       <div class="radius-base fill-blank p-base overflow-hidden flex-1">
         <div class="flex items-center m-b-base table-title">
           <span class="label">在评卷员手中</span>
-          <span class="data-count">123</span>
+          <span class="data-count">{{ unMarkPaperList?.result?.length }}</span>
           <el-button type="primary" size="small" @click="onTaskChangeMarker">任务指定评卷员</el-button>
         </div>
-        <base-table :columns="columns1"></base-table>
+        <base-table :columns="columns1" :data="unMarkPaperList?.result" @current-change="onCheckTask"></base-table>
       </div>
       <div class="radius-base fill-blank p-base overflow-hidden m-l-base flex-1">
         <div class="flex items-center m-b-base table-title">
           <span class="label">未处理问题卷</span>
-          <span class="data-count">123</span>
+          <span class="data-count">{{ unProcessProblemList?.length }}</span>
         </div>
         <base-table :columns="columns2" :data="unProcessProblemList"></base-table>
       </div>
       <div class="radius-base fill-blank p-base overflow-hidden m-l-base flex-1">
         <div class="flex items-center m-b-base table-title">
           <span class="label">未处理雷同卷</span>
-          <span class="data-count">123</span>
+          <span class="data-count">{{ unProcessSimilarList?.length }}</span>
         </div>
         <base-table :columns="columns3" :data="unProcessSimilarList"></base-table>
       </div>
     </div>
   </div>
-  <base-dialog v-model="visibleChangeMarker" title="任务指定评卷员">
-    <base-form size="small" :model="changeMarkerModel" :items="changeMarkerItems"></base-form>
+  <base-dialog v-model="visibleChangeMarker" title="任务指定评卷员" destroy-on-close>
+    <base-form
+      ref="formRef"
+      size="small"
+      :rules="rules"
+      :model="changeMarkerModel"
+      :items="changeMarkerItems"
+    ></base-form>
     <template #footer>
-      <confirm-button around></confirm-button>
+      <confirm-button around @confirm="onSubmitChangeMarker" @cancel="visibleChangeMarker = false"></confirm-button>
     </template>
   </base-dialog>
 </template>
@@ -54,8 +60,8 @@ import useOptions from '@/hooks/useOptions'
 import useVW from '@/hooks/useVW'
 import useForm from '@/hooks/useForm'
 
-import type { ExtractApiParams } from 'api-type'
-import type { EpFormItem, EpTableColumn } from 'global-type'
+import type { ExtractApiParams, ExtractMultipleApiResponse } from 'api-type'
+import type { EpFormItem, EpTableColumn, EpFormRules } from 'global-type'
 
 const mainStore = useMainStore()
 
@@ -64,10 +70,14 @@ const visibleChangeMarker = ref<boolean>(false)
 
 const changeMarkerModel = reactive({ loginName: '' })
 
-const {} = useFetch('addMainQuestion')
+const { formRef, elFormRef } = useForm()
 
 const changeMarkerItems: EpFormItem[] = [{ label: '请输入指定评卷员账号', prop: 'loginName', slotType: 'input' }]
 
+const rules: EpFormRules = {
+  loginName: [{ required: true, message: '请输入指定评卷员账号' }],
+}
+
 /** 搜索 */
 const model = reactive<ExtractApiParams<'unProcessProblemList'>>({
   markingGroupNumber: void 0,
@@ -75,7 +85,7 @@ const model = reactive<ExtractApiParams<'unProcessProblemList'>>({
   subjectCode: '',
 })
 
-const { fetch: getUnMarkPaperList } = useFetch('unMarkPaperList')
+const { fetch: getUnMarkPaperList, result: unMarkPaperList } = useFetch('unMarkPaperList')
 const { fetch: getUnProcessProblemList, result: unProcessProblemList } = useFetch('unProcessProblemList')
 const { fetch: getUnProcessSimilarList, result: unProcessSimilarList } = useFetch('unProcessSimilarList')
 
@@ -142,11 +152,32 @@ const onStartCheck = () => {
   getUnProcessSimilarList(model)
 }
 
+const currentTask = ref<ExtractMultipleApiResponse<'unMarkPaperList'>>()
+
+const onCheckTask = (row: ExtractMultipleApiResponse<'unMarkPaperList'>) => {
+  currentTask.value = row
+}
+
 /** 任务指定评卷员 */
 const onTaskChangeMarker = () => {
   visibleChangeMarker.value = true
 }
 
+const onSubmitChangeMarker = async () => {
+  try {
+    const valid = await elFormRef?.value?.validate()
+    if (valid && currentTask.value) {
+      useFetch('changeTaskMarker')
+        .fetch({ taskId: currentTask.value.taskId, loginName: changeMarkerModel.loginName })
+        .then(() => {
+          visibleChangeMarker.value = false
+        })
+    }
+  } catch (error) {
+    console.error(error)
+  }
+}
+
 onOptionInit(onStartCheck)
 </script>
 

+ 2 - 1
src/modules/quality/self-check/index.vue

@@ -32,6 +32,7 @@ import useFetch from '@/hooks/useFetch'
 import useForm from '@/hooks/useForm'
 import useVW from '@/hooks/useVW'
 import useOptions from '@/hooks/useOptions'
+import useTableCheck from '@/hooks/useTableCheck'
 
 import type { ExtractApiParams, ExtractApiResponse } from 'api-type'
 import type { EpFormItem, EpTableColumn } from 'global-type'
@@ -101,7 +102,7 @@ const columns1: EpTableColumn<ExtractArrayValue<ExtractApiResponse<'selfCheckAna
   { label: '自查份数', prop: 'checkCount' },
   { label: '平均离差', prop: 'avgDiff' },
 ]
-const columns2: EpTableColumn[] = []
+const columns2: EpTableColumn[] = [{}]
 const columns3: EpTableColumn[] = []
 
 const { fetch: selfCheckAnalysis, result: data1 } = useFetch('selfCheckAnalysis')

+ 4 - 0
types/api.d.ts

@@ -1321,6 +1321,8 @@ declare module 'api-type' {
     }
     type UnProcessProblemList = BaseDefine<BaseParams, UnProcessProblem[]>
 
+    type ChangeTaskMarker = BaseDefine<{ loginName: string; taskId?: number }>
+
     /** 小组监控 */
     interface GroupMonitor {
       /** 已浏览自定义抽查卷数 */
@@ -1521,6 +1523,8 @@ declare module 'api-type' {
       unProcessSimilarList: UnProcessSimilarList
       /** 质量统计-收尾检查-未处理问题卷列表 */
       unProcessProblemList: UnProcessProblemList
+      /** 任务指定新评卷员 */
+      changeTaskMarker: ChangeTaskMarker
       /** 决策分析-小组监控 */
       getGroupMonitor: GetGroupMonitor
       /** 决策分析-监控统计(整体) */