刘洋 7 달 전
부모
커밋
9ace0bb778

+ 2 - 2
src/render/views/Login/IpSet.vue

@@ -95,8 +95,8 @@ const ipData = reactive({
   port: "",
 });
 onMounted(() => {
-  let lastBaseUrl = session.get("baseUrl");
-  //说明是去了别的页面后,连接失败回跳回来的。
+  let lastBaseUrl = session.get("baseUrl") || local.get("baseUrl");
+  //session说明是去了别的页面后,连接失败回跳回来的。
   if (lastBaseUrl) {
     let ipAndPort = lastBaseUrl.split("//")[1];
     ipData.port = ipAndPort.split(":")[1];

+ 2 - 2
src/render/views/ResultExport/ModifyMarkSite.vue

@@ -29,14 +29,14 @@
       <a-form-item name="oddNumber" label="奇数考场评卷点代码">
         <a-input
           v-model:value="formData.oddNumber"
-          :maxlength="30"
+          :maxlength="6"
           placeholder="请输入"
         />
       </a-form-item>
       <a-form-item name="evenNumber" label="偶数考场评卷点代码">
         <a-input
           v-model:value="formData.evenNumber"
-          :maxlength="30"
+          :maxlength="6"
           placeholder="请输入"
         />
       </a-form-item>

+ 11 - 0
src/render/views/ScanManage/StuInfo.vue

@@ -59,6 +59,16 @@ const { dataList, pagination, loading, getList, toPage } = useTable(
   transParams,
   false
 );
+const hasParams = computed(() => {
+  return (
+    params.subjectCode &&
+    (params.examNumber ||
+      params.name ||
+      params.examSite ||
+      params.campusCode ||
+      params.packageCode)
+  );
+});
 const fields = computed(() => {
   return [
     {
@@ -121,6 +131,7 @@ const fields = computed(() => {
           text: "导出",
           attrs: {
             type: "default",
+            disabled: !hasParams.value,
           },
           onClick: () => {
             exportStu(transParams.value).then(() => {

+ 23 - 22
src/render/views/ScanManage/WorkStatistics.vue

@@ -67,35 +67,36 @@ const search = () => {
   });
 };
 const createTableData = () => {
-  let deviceNames = Array.from(
-    new Set(data.value.map((item: any) => item.deviceName))
-  );
-  let subjectNames = Array.from(
-    new Set(data.value.map((item: any) => item.subjectName))
+  let subjectCodes = Array.from(
+    new Set(data.value.map((item: any) => item.subjectCode))
   );
   let arr = [];
-  for (let i = 0; i < subjectNames.length; i++) {
-    let sName = subjectNames[i];
-    let obj: any = {};
-    for (let j = 0; j < deviceNames.length; j++) {
-      let filter: any = data.value.filter((item: any) => {
-        return item.deviceName == deviceNames[j] && item.subjectName == sName;
-      });
-      obj[sName] = filter.length ? filter[0]?.answerScanCount : "";
-      obj.subjectName = sName;
+  for (let i = 0; i < subjectCodes.length; i++) {
+    let code = subjectCodes[i];
+    let row: any = {};
+    for (let j = 0; j < data.value.length; j++) {
+      let item: any = data.value[j];
+      if (item.subjectCode == code) {
+        row[item.device] = item.answerScanCount;
+        row.subjectName = item.subjectName;
+      }
     }
-    arr.push(obj);
+    arr.push(row);
   }
   tableData.value = arr;
 };
+const findDeviceName = (deviceCode: string) => {
+  let find: any = data.value.find((item: any) => item.device == deviceCode);
+  return find ? find.deviceName : "";
+};
 const columns = computed(() => {
-  let arr = data.value.map((item: any) => {
-    return {
-      title: item.deviceName,
-      dataIndex: item.subjectName,
-    };
-  });
-  return [{ title: "科目", dataIndex: "subjectName" }, ...arr];
+  let devices = Array.from(new Set(data.value.map((item: any) => item.device)));
+  let columns = devices.map((item) => ({
+    title: findDeviceName(item),
+    dataIndex: item,
+  }));
+  columns.unshift({ title: "科目", dataIndex: "subjectName" });
+  return columns;
 });
 onMounted(() => {
   search();