liding
19 小时以前 35a0a3348d1fcd77b78b96cf392afadfa3d7ed30
feat: 标准查新模块新增是否查新及自动归档功能
已修改4个文件
104 ■■■■■ 文件已修改
src/api/cnas/process/method/standardNoveltyRetrieval.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/CNAS/process/method/standardMethod/index.vue 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/CNAS/process/method/standardNoveltyRetrieval/component/EditFormDia.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/CNAS/process/method/standardNoveltyRetrieval/index.vue 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/cnas/process/method/standardNoveltyRetrieval.js
@@ -19,6 +19,15 @@
  });
}
// 查询由标准维护自动归档的记录
export function pageAutoArchived(query) {
  return request({
    url: "/processMethodSearchNew/pageAutoArchived",
    method: "get",
    params: query,
  });
}
// 新增标准查新审批流程
export function addSearchNewArchived(data) {
  return request({
src/views/CNAS/process/method/standardMethod/index.vue
@@ -70,6 +70,12 @@
            <el-option label="是" :value="1"></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="是否查新" prop="needSearchNew">
          <el-select v-model="addForm.needSearchNew" size="small" placeholder="请选择" style="width: 100%">
            <el-option label="否" :value="0"></el-option>
            <el-option label="是" :value="1"></el-option>
          </el-select>
        </el-form-item>
        <el-form-item v-if="title === '新增'" label="附件">
          <el-upload ref="addUpload" action="#" :auto-upload="false" multiple :file-list="pendingFiles"
                     :on-change="pendingFileChange" :on-remove="pendingFileRemove" :before-upload="beforeFileUpload"
@@ -175,6 +181,14 @@
            }
          },
        },
        {
          label: "是否查新",
          prop: "needSearchNew",
          width: "90px",
          dataType: "tag",
          formatData: (value) => value == 1 ? "是" : "否",
          formatType: (value) => value == 1 ? "success" : "info",
        },
        {label: "创建人", prop: "createUserName"},
        {label: "创建时间", prop: "createTime"},
        {label: "更新人", prop: "updateUserName"},
@@ -232,6 +246,9 @@
        isUse: [
          {required: true, message: "请选择是否启用", trigger: "change"},
        ],
        needSearchNew: [
          {required: true, message: "请选择是否查新", trigger: "change"},
        ],
      },
    };
  },
@@ -275,7 +292,7 @@
    },
    openAdd() {
      this.title = "新增";
      this.addForm = {industryIds: [], isProduct: 1, isUse: 1};
      this.addForm = {industryIds: [], isProduct: 1, isUse: 1, needSearchNew: 0};
      this.pendingFiles = [];
      this.addDlog = true;
    },
@@ -284,6 +301,7 @@
      this.addDlog = true;
      this.addForm = this.HaveJson(row)
      this.addForm.industryIds = this.addForm.industryIds || [];
      if (this.addForm.needSearchNew == null) this.addForm.needSearchNew = 0;
    },
    getQualificationList() {
      this.getDicts("cnas_method_qualification").then((response) => {
src/views/CNAS/process/method/standardNoveltyRetrieval/component/EditFormDia.vue
@@ -18,11 +18,8 @@
          </el-form-item>
        </el-col>
        <el-col :span="8">
          <el-form-item label="是否是新标准:" prop="isNewStandard">
            <el-radio-group v-model="form.isNewStandard">
              <el-radio :value="0">否</el-radio>
              <el-radio :value="1">是</el-radio>
            </el-radio-group>
          <el-form-item label="是否是新标准:">
            <el-tag type="success">是</el-tag>
          </el-form-item>
        </el-col>
        <el-col :span="8">
@@ -89,7 +86,6 @@
      formRules: {
        methodName: [{required: true, message: '请填写标准名称',trigger: 'blur'}],
        standardNo: [{required: true, message: '请填写标准号',trigger: 'blur'}],
        isNewStandard: [{required: true, message: '请选择是否是新标准',trigger: 'change'}],
        newMethodName: [{required: false, message: '请填写新标准名称',trigger: 'blur'}],
        newStandardNo: [{required: false, message: '请填写新标准号',trigger: 'blur'}],
        searchNewSource: [{required: true, message: '请选择查新记录来源',trigger: 'change'}],
@@ -103,7 +99,7 @@
  methods: {
    openDia(row) {
      this.formDia = true
      this.form = {...row}
      this.form = {...row, isNewStandard: 1}
    },
    handleEdit() {
      this.$refs['form'].validate((valid) => {
src/views/CNAS/process/method/standardNoveltyRetrieval/index.vue
@@ -7,9 +7,14 @@
          <el-input size="small" placeholder="请输入" clearable v-model="searchForm.standardNo"
                    @keyup.enter="searchList"></el-input>
        </div>
        <div style="margin-bottom: 18px;margin-right: 10px;display: flex;align-items: center;line-height: 32px;" v-if="tabIndex === '1'">
        <div style="margin-bottom: 18px;margin-right: 10px;display: flex;align-items: center;line-height: 32px;" v-if="tabIndex === '1' && historyType === 'manual'">
          <span style="width: 88px;font-size: 14px;font-weight: 700;color: var(--lims-text-2);">存档名称</span>
          <el-input size="small" placeholder="请输入" clearable v-model="searchForm.archivedName"
                    @keyup.enter="searchList"></el-input>
        </div>
        <div style="margin-bottom: 18px;margin-right: 10px;display: flex;align-items: center;line-height: 32px;" v-if="tabIndex === '1' && historyType === 'auto'">
          <span style="width: 68px;font-size: 14px;font-weight: 700;color: var(--lims-text-2);">标准号</span>
          <el-input size="small" placeholder="请输入" clearable v-model="searchForm.standardNo"
                    @keyup.enter="searchList"></el-input>
        </div>
        <div style="line-height: 30px;">
@@ -17,7 +22,7 @@
          <el-button size="small" @click="resetSearchForm">重置</el-button>
        </div>
      </div>
      <div style="line-height: 30px;">
      <div style="line-height: 30px;" v-if="tabIndex === '0'">
        <el-button size="small" type="primary" @click="openApprovalDialog1">建 档</el-button>
        <el-upload ref='upload' :action="action" :before-upload="beforeUpload" :headers="uploadHeader" :on-error="onError"
                   :on-success="handleSuccessUp" :show-file-list="false"
@@ -42,8 +47,15 @@
          </lims-table>
        </div>
        <div v-if="tabIndex === '1'">
          <lims-table :column="oldTableColumn" :height="'calc(100vh - 20em)'" :table-data="oldTableData"
          <el-radio-group v-model="historyType" size="small" style="margin-bottom: 10px" @change="switchHistoryType">
            <el-radio-button value="manual">手动档案</el-radio-button>
            <el-radio-button value="auto">自动归档记录</el-radio-button>
          </el-radio-group>
          <lims-table v-if="historyType === 'manual'" :column="oldTableColumn" :height="'calc(100vh - 23em)'" :table-data="oldTableData"
                      :table-loading="oldTableLoading" :page="oldPage" @pagination="oldPagination">
          </lims-table>
          <lims-table v-else :column="autoArchivedColumn" :height="'calc(100vh - 23em)'" :table-data="autoArchivedData"
                      :table-loading="autoArchivedLoading" :page="autoArchivedPage" @pagination="autoArchivedPagination">
          </lims-table>
        </div>
      </div>
@@ -86,7 +98,7 @@
import EditFormDia from './component/EditFormDia.vue';
import {
  addSearchNewArchived, exportMethodSearchNew,
  pageMethodSearchNew, pageSearchNewArchived, pageSearchNewBackups, ratifySearchNewArchivedr
  pageMethodSearchNew, pageSearchNewArchived, pageSearchNewBackups, pageAutoArchived, ratifySearchNewArchivedr
} from '@/api/cnas/process/method/standardNoveltyRetrieval'
export default {
@@ -450,6 +462,25 @@
      oldTableData: [],
      oldTableLoading: false,
      tabIndex: '0',
      historyType: 'manual',
      autoArchivedData: [],
      autoArchivedLoading: false,
      autoArchivedPage: {size: 10, current: 1, total: 0},
      autoArchivedColumn: [
        {label: '标准名称', prop: 'methodName', minWidth: '120'},
        {label: '标准号', prop: 'standardNo', minWidth: '100'},
        {label: '文件编号', prop: 'fileNo', minWidth: '110'},
        {
          dataType: 'tag', label: '是否是新标准', prop: 'isNewStandard', minWidth: '110',
          formatData: () => '否', formatType: () => 'danger'
        },
        {
          dataType: 'tag', label: '查询记录来源', prop: 'searchNewSource', minWidth: '110',
          formatData: (value) => ({0: '标准网', 1: '委托情报', 2: '标准数', 3: '其他'}[value] || ''),
          formatType: (value) => ({0: 'success', 1: 'danger', 2: 'warning', 3: 'info'}[value] || 'info')
        },
        {label: '自动归档时间', prop: 'autoArchivedTime', minWidth: '150'}
      ],
      formDialog: false,
      editFormDialog: false,
      upLoading: false,
@@ -488,7 +519,7 @@
          console.log('err---', err);
          this.tableLoading = false
        })
      } else {
      } else if (this.historyType === 'manual') {
        this.oldTableLoading = true
        pageSearchNewArchived({archivedName: this.searchForm.archivedName, ...this.oldPage}).then(res => {
          this.oldTableLoading = false
@@ -500,6 +531,18 @@
        }).catch(err => {
          console.log('err---', err);
          this.oldTableLoading = false
        })
      } else {
        this.autoArchivedLoading = true
        pageAutoArchived({standardNo: this.searchForm.standardNo, ...this.autoArchivedPage}).then(res => {
          this.autoArchivedLoading = false
          if (res.code === 200) {
            this.autoArchivedData = res.data.records
            this.autoArchivedPage.total = res.data.total
          }
        }).catch(err => {
          console.log('err---', err);
          this.autoArchivedLoading = false
        })
      }
    },
@@ -575,6 +618,12 @@
    // 重置查询条件
    resetSearchForm() {
      this.searchForm.standardNo = '';
      this.searchForm.archivedName = '';
      this.searchList()
    },
    switchHistoryType() {
      this.oldPage.current = 1
      this.autoArchivedPage.current = 1
      this.searchList()
    },
    // 操作新增框
@@ -642,6 +691,12 @@
    },
    oldPagination(page) {
      this.oldPage.size = page.limit
      this.oldPage.current = page.page
      this.searchList();
    },
    autoArchivedPagination(page) {
      this.autoArchivedPage.size = page.limit
      this.autoArchivedPage.current = page.page
      this.searchList();
    },
  },