hfxc226 2 年之前
父节点
当前提交
5c62cc7fc8

+ 4 - 4
src/api/activiti/activiti.js

@@ -104,9 +104,9 @@ export function getAuditRecord (processInstanceId) {
  * @param parameter
  * @returns {*}
  */
-export function getShineProDefImage (parameter) {
+export function getShineProDefImage (processInstanceId) {
   return axios({
-    url: '/act/shine-procDef-image/' + parameter.id,
+    url: '/act/shine-procDef-image/' + processInstanceId,
     method: 'get',
     headers: {
       'Content-Type': 'application/json;charset=UTF-8'
@@ -137,9 +137,9 @@ export function getShineProDefXml (parameter) {
  * @param parameter
  * @returns {*}
  */
-export function getShineProImage (parameter) {
+export function getShineProImage (processInstanceId) {
   return axios({
-    url: '/act/shine-proc-image/' + parameter.processInstanceId,
+    url: '/act/shine-proc-image/' + processInstanceId,
     method: 'get',
     headers: {
       'Content-Type': 'application/json;charset=UTF-8'

+ 26 - 25
src/views/activiti/History.vue

@@ -4,13 +4,14 @@
     <a-table
       :columns="auditColumns"
       :dataSource="auditData"
+      :loading="historyRecordLoading"
       :pagination="false"
     >
     </a-table>
     <title-divider title="流程图" width="90px"></title-divider>
     <div>
-      <img style="width: 90%" :src="image1" v-show="!showFlag" />
-      <img style="width: 90%" :src="image2" v-show="showFlag"/>
+      <img :loading="historyImgLoading" style="width: 90%" :src="image1" v-show="!showFlag" />
+      <img :loading="historyImgLoading" style="width: 90%" :src="image2" v-show="showFlag"/>
     </div>
     <div v-show="audit">
       <title-divider title="审核信息" width="90px"></title-divider>
@@ -59,23 +60,16 @@ export default {
     audit: {
       type: Boolean,
       default: true
-    },
-    targetId: {
-      type: String,
-      default: null
-    },
-    processInstanceId: {
-      type: String,
-      default: null
-    },
-    taskId: {
-      type: String,
-      default: null
     }
   },
   data () {
     return {
+      targetId: null,
+      taskId: null,
+      processInstanceId: null,
       confirmLoading: false,
+      historyRecordLoading: false,
+      historyImgLoading: false,
       auditFinish: true,
       image1: '',
       timer: '',
@@ -120,16 +114,21 @@ export default {
     // 下拉框map
     this.statusMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.ACTIVITI_FORM_STATUS)
     this.modalTitle = '审批'
-    this.getAuditRecords()
-    this.getImage()
+    // this.getAuditRecords()
+    // this.getImage()
   },
   mounted () {
-    this.timer = setInterval(this.showImage, 1000)
+    // this.timer = setInterval(this.showImage, 1000)
   },
   methods: {
-    base () {
-      this.getAuditRecords()
-      this.getImage()
+    base (record, taskId) {
+      this.targetId = record.id
+      this.taskId = taskId
+      this.processInstanceId = record.processInstanceId
+      this.historyRecordLoading = true
+      this.historyImgLoading = true
+      this.getAuditRecords(record)
+      this.getImage(record)
     },
     showImage () {
       if (this.countNum === 0) {
@@ -142,8 +141,9 @@ export default {
         this.countNum = 0
       }
     },
-    getAuditRecords () {
-      getAuditRecord(this.processInstanceId).then(res => {
+    getAuditRecords (record) {
+      getAuditRecord(record.processInstanceId).then(res => {
+        this.historyRecordLoading = false
         const auditData = res.data
         for (let i = 0; i < auditData.length; i++) {
           const item = auditData[i]
@@ -159,13 +159,14 @@ export default {
         return opinion
       }
     },
-    getImage () {
-      getShineProImage({ processInstanceId: this.processInstanceId })
+    getImage (record) {
+      getShineProImage(record.processInstanceId)
         .then((res) => {
+          this.historyImgLoading = false
           const images = res.data.images
           this.image1 = 'data:image/png;base64,' + images[0]
           this.image2 = 'data:image/png;base64,' + images[1]
-          // this.timer = setInterval(this.showImage(), 1000)
+          this.timer = setInterval(this.showImage(), 1000)
         }).catch(() => {
           this.confirmLoading = false
         })

+ 1 - 1
src/views/activiti/ImageDefModal.vue

@@ -35,7 +35,7 @@ export default {
     base (id) {
       this.visible = true
       this.confirmLoading = true
-      getShineProDefImage({ id: id })
+      getShineProDefImage(id)
         .then((res) => {
           this.image1 = 'data:image/png;base64,' + res.data
         }).catch(() => {

+ 0 - 1
src/views/activiti/flow/Flow.vue

@@ -66,7 +66,6 @@
 import { STable, Ellipsis } from '@/components'
 import { getFlowPage, deleteFlows } from '@/api/activiti/flow'
 import ImageDefModal from '../ImageDefModal'
-import { exportSbInfo } from '@/api/sb/info'
 import { getShineProDefXml } from '@/api/activiti/activiti'
 export default {
   name: 'ModelList',

+ 394 - 395
src/views/purchase/purchase-apply/modules/PurchaseApplySelectModal.vue

@@ -1,411 +1,410 @@
 <template>
-    <a-modal
-            :title="modalTitle"
-            :width="1000"
-            :visible="visible"
-            :confirmLoading="confirmLoading"
-            class="ant-modal2"
-            @cancel="handleCancel"
-    >
-        <a-card :bordered="false">
-            <div class="table-page-search-wrapper">
-                <a-form layout="inline">
-                    <a-row :gutter="48">
-                        <a-col :md="8" :sm="24">
-                            <a-form-item label="关键字">
-                                <a-input v-model.trim="queryParam.keyword" placeholder="请输入名称/类型名称"/>
-                            </a-form-item>
-                        </a-col>
-                        <a-col :md="8 || 24" :sm="24">
-                <span class="table-page-search-submitButtons">
-                  <a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
-                  <a-button style="margin-left: 8px" @click="resetSearchForm">重置</a-button>
-                </span>
-                        </a-col>
-                    </a-row>
-                </a-form>
-            </div>
+  <a-modal
+    :title="modalTitle"
+    :width="1000"
+    :visible="visible"
+    :confirmLoading="confirmLoading"
+    class="ant-modal2"
+    @cancel="handleCancel"
+  >
+    <a-card :bordered="false">
+      <div class="table-page-search-wrapper">
+        <a-form layout="inline">
+          <a-row :gutter="48">
+            <a-col :md="8" :sm="24">
+              <a-form-item label="关键字">
+                <a-input v-model.trim="queryParam.keyword" placeholder="请输入名称/类型名称"/>
+              </a-form-item>
+            </a-col>
+            <a-col :md="8 || 24" :sm="24">
+              <span class="table-page-search-submitButtons">
+                <a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
+                <a-button style="margin-left: 8px" @click="resetSearchForm">重置</a-button>
+              </span>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
 
-            <div class="table-operator" style="margin-bottom: 8px;">
-            </div>
+      <div class="table-operator" style="margin-bottom: 8px;">
+      </div>
 
-            <s-table
-                    ref="table"
-                    size="default"
-                    rowKey="id"
-                    :columns="columns"
-                    :data="loadData"
-                    :alert="options.alert"
-                    :customRow="options.customRow"
-                    :rowSelection="options.rowSelection"
-                    showPagination="auto"
-            >
-                <span slot="action" slot-scope="record1">
-                  <template>
-                    <a @click="handleView(record1)">查看</a>
-                  </template>
-                </span>
-            </s-table>
-            <detail ref="detailModal"/>
-        </a-card>
-        <template slot="footer">
-            <a-button :loading="confirmLoading" type="primary" @click="handleCancel()">取消</a-button>
-            <a-button :loading="confirmLoading" type="primary" @click="handleSelect()">确定</a-button>
-        </template>
-    </a-modal>
+      <s-table
+        ref="table"
+        size="default"
+        rowKey="id"
+        :columns="columns"
+        :data="loadData"
+        :alert="options.alert"
+        :customRow="options.customRow"
+        :rowSelection="options.rowSelection"
+        showPagination="auto"
+      >
+        <span slot="action" slot-scope="record1">
+          <template>
+            <a @click="handleView(record1)">查看</a>
+          </template>
+        </span>
+      </s-table>
+      <detail ref="detailModal"/>
+    </a-card>
+    <template slot="footer">
+      <a-button :loading="confirmLoading" type="primary" @click="handleCancel()">取消</a-button>
+      <a-button :loading="confirmLoading" type="primary" @click="handleSelect()">确定</a-button>
+    </template>
+  </a-modal>
 </template>
 
 <script>
-    import { STable, Ellipsis } from '@/components'
-    import Detail from './Detail'
-    import { getPurchaseApplyPage, fetchPurchaseApply } from '@/api/purchase/purchase-apply'
+import { STable, Ellipsis } from '@/components'
+import Detail from './Detail'
+import { getPurchaseApplyPage, fetchPurchaseApply } from '@/api/purchase/purchase-apply'
 
-    export default {
-        name: 'PurchaseApplySelectModal',
-        components: {
-            STable,
-            Ellipsis,
-            Detail
+export default {
+  name: 'PurchaseApplySelectModal',
+  components: {
+    STable,
+    Ellipsis,
+    Detail
+  },
+  props: {
+    type: {
+      type: String,
+      default: 'radio'
+    },
+    selectedRowKey: {
+      type: Array,
+      default: () => {
+        return []
+      }
+    },
+    selectedRow: {
+      type: Array,
+      default: () => {
+        return []
+      }
+    }
+  },
+  data () {
+    return {
+      confirmLoading: false,
+      mdl: {},
+      modalTitle: null,
+      visible: false,
+      record: null,
+      // 查询参数
+      queryParam: {
+      },
+      extraQueryParam: {
+      },
+      // 表头
+      columns: [
+        {
+          title: '序号',
+          dataIndex: 'index',
+          customRender: (text, record, index) => {
+            return `${(this.$refs.table.localPagination.current - 1) * this.$refs.table.localPagination.pageSize + index + 1}`
+          }
         },
-        props: {
-            type: {
-                type: String,
-                default: 'radio'
-            },
-            selectedRowKey: {
-                type: Array,
-                default: () => {
-                    return []
-                }
-            },
-            selectedRow: {
-                type: Array,
-                default: () => {
-                    return []
-                }
-            }
+        {
+          title: '单号',
+          dataIndex: 'billNo'
         },
-        data () {
-            return {
-                confirmLoading: false,
-                mdl: {},
-                modalTitle: null,
-                visible: false,
-                record: null,
-                // 查询参数
-                queryParam: {
-                },
-                extraQueryParam: {
-                },
-                // 表头
-                columns: [
-                    {
-                        title: '序号',
-                        dataIndex: 'index',
-                        customRender: (text, record, index) => {
-                            return `${(this.$refs.table.localPagination.current - 1) * this.$refs.table.localPagination.pageSize + index + 1}`
-                        }
-                    },
-                                                                                                                                                {
-                                title: '单号',
-                                dataIndex: 'billNo'
-                            },
-                                                                                                                                                        {
-                                title: '总需求计划主键',
-                                dataIndex: 'demandPlanId'
-                            },
-                                                                                                                                                        {
-                                title: '采购计划ID',
-                                dataIndex: 'purchasePlanId'
-                            },
-                                                                                                                                                        {
-                                title: '公司ID',
-                                dataIndex: 'companyId'
-                            },
-                                                                                                                                                        {
-                                title: '公司名称',
-                                dataIndex: 'companyName'
-                            },
-                                                                                                                                                        {
-                                title: '项目主键',
-                                dataIndex: 'projectId'
-                            },
-                                                                                                                                                        {
-                                title: '项目名称',
-                                dataIndex: 'projectName'
-                            },
-                                                                                                                                                            {
-                                    title: '类型',
-                                    dataIndex: 'type',
-                                    customRender: (text, record, index) => {
-                                        return this.BaseTool.Object.getField(this.typeMap, text)
-                                    }                  ,
-                                },
-                                                                                                                                                        {
-                                title: '日期',
-                                dataIndex: 'planDate'
-                            },
-                                                                                                                                                            {
-                                    title: '呈报',
-                                    dataIndex: 'reportType',
-                                    customRender: (text, record, index) => {
-                                        return this.BaseTool.Object.getField(this.reportTypeMap, text)
-                                    }                  ,
-                                },
-                                                                                                                                                        {
-                                title: '需求日期',
-                                dataIndex: 'demandDate'
-                            },
-                                                                                                                                                        {
-                                title: '事项',
-                                dataIndex: 'item'
-                            },
-                                                                                                                                                        {
-                                title: '设备物资综述',
-                                dataIndex: 'summary'
-                            },
-                                                                                                                                                        {
-                                title: '特殊情况',
-                                dataIndex: 'specialDescription'
-                            },
-                                                                                                                                                            {
-                                    title: '总金额',
-                                    dataIndex: 'money',
-                                    customRender: (text, record, index) => {
-                                        return this.BaseTool.Amount.formatter(text)
-                                    }                                ,
-                                },
-                                                                                                                                                            {
-                                    title: '已付金额',
-                                    dataIndex: 'paidMoney',
-                                    customRender: (text, record, index) => {
-                                        return this.BaseTool.Amount.formatter(text)
-                                    }                                ,
-                                },
-                                                                                                                                                            {
-                                    title: '数量',
-                                    dataIndex: 'quantity',
-                                    customRender: (text, record, index) => {
-                                        return this.BaseTool.Amount.formatter(text)
-                                    }                                ,
-                                },
-                                                                                                                                                            {
-                                    title: '已购数量',
-                                    dataIndex: 'boughtQuantity',
-                                    customRender: (text, record, index) => {
-                                        return this.BaseTool.Amount.formatter(text)
-                                    }                                ,
-                                },
-                                                                                                                                                            {
-                                    title: '已到数量',
-                                    dataIndex: 'arrivedQuantity',
-                                    customRender: (text, record, index) => {
-                                        return this.BaseTool.Amount.formatter(text)
-                                    }                                ,
-                                },
-                                                                                                                                                            {
-                                    title: '未到数量',
-                                    dataIndex: 'notArriveQuantity',
-                                    customRender: (text, record, index) => {
-                                        return this.BaseTool.Amount.formatter(text)
-                                    }                                ,
-                                },
-                                                                                                                                                            {
-                                    title: '总重',
-                                    dataIndex: 'totalWeight',
-                                    customRender: (text, record, index) => {
-                                        return this.BaseTool.Amount.formatter(text)
-                                    }                                ,
-                                },
-                                                                                                                                                            {
-                                    title: '总体积',
-                                    dataIndex: 'totalVolume',
-                                    customRender: (text, record, index) => {
-                                        return this.BaseTool.Amount.formatter(text)
-                                    }                                ,
-                                },
-                                                                                                                                                        {
-                                title: '拒绝原因',
-                                dataIndex: 'refuseReason'
-                            },
-                                                                                                                                                        {
-                                title: '申请时间',
-                                dataIndex: 'applyTime'
-                            },
-                                                                                                                                                        {
-                                title: '审核时间',
-                                dataIndex: 'auditTime'
-                            },
-                                                                                                                                                        {
-                                title: '状态',
-                                dataIndex: 'status'
-                            },
-                                                                                                                                                        {
-                                title: '备注',
-                                dataIndex: 'remark'
-                            },
-                                                                                                                                                        {
-                                title: '删除标志',
-                                dataIndex: 'delFlag'
-                            },
-                                                                                                                                                                                                    {
-                                title: '创建人名称',
-                                dataIndex: 'createdUserName'
-                            },
-                                                                                                                                                        {
-                                title: '创建时间',
-                                dataIndex: 'createdTime'
-                            },
-                                                                                                                                                                                                                                {
-                        title: '操作',
-                        key: 'action',
-                        width: '200px',
-                        align: 'center',
-                        scopedSlots: { customRender: 'action' }
-                    }
-                ],
-                // 下拉框map
-                                    typeMap: {},
-                                    reportTypeMap: {},
-                                // 加载数据方法 必须为 Promise 对象
-                loadData: parameter => {
-                    parameter = {
-                        ...parameter,
-                        ...this.queryParam,
-                        ...this.extraQueryParam,
-                        dataScope: {
-                            sortBy: 'desc',
-                            sortName: 'update_time'
-                        }
-                    }
-                    return getPurchaseApplyPage(Object.assign(parameter, this.queryParam))
-                            .then(res => {
-                                return res.data
-                            })
-                },
-                selectedRowKeys: [],
-                selectedRows: [],
+        {
+          title: '总需求计划主键',
+          dataIndex: 'demandPlanId'
+        },
+        {
+          title: '采购计划ID',
+          dataIndex: 'purchasePlanId'
+        },
+        {
+          title: '公司ID',
+          dataIndex: 'companyId'
+        },
+        {
+          title: '公司名称',
+          dataIndex: 'companyName'
+        },
+        {
+          title: '项目主键',
+          dataIndex: 'projectId'
+        },
+        {
+          title: '项目名称',
+          dataIndex: 'projectName'
+        },
+        {
+          title: '类型',
+          dataIndex: 'type',
+          customRender: (text, record, index) => {
+            return this.BaseTool.Object.getField(this.typeMap, text)
+          }
+        },
+        {
+          title: '日期',
+          dataIndex: 'planDate'
+        },
+        {
+          title: '呈报',
+          dataIndex: 'reportType',
+          customRender: (text, record, index) => {
+            return this.BaseTool.Object.getField(this.reportTypeMap, text)
+          }
+        },
+        {
+          title: '需求日期',
+          dataIndex: 'demandDate'
+        },
+        {
+          title: '事项',
+          dataIndex: 'item'
+        },
+        {
+          title: '设备物资综述',
+          dataIndex: 'summary'
+        },
+        {
+          title: '特殊情况',
+          dataIndex: 'specialDescription'
+        },
+        {
+          title: '总金额',
+          dataIndex: 'money',
+          customRender: (text, record, index) => {
+            return this.BaseTool.Amount.formatter(text)
+          }
+        },
+        {
+          title: '已付金额',
+          dataIndex: 'paidMoney',
+          customRender: (text, record, index) => {
+            return this.BaseTool.Amount.formatter(text)
+          }
+        },
+        {
+          title: '数量',
+          dataIndex: 'quantity',
+          customRender: (text, record, index) => {
+            return this.BaseTool.Amount.formatter(text)
+          }
+        },
+        {
+          title: '已购数量',
+          dataIndex: 'boughtQuantity',
+          customRender: (text, record, index) => {
+            return this.BaseTool.Amount.formatter(text)
+          }
+        },
+        {
+          title: '已到数量',
+          dataIndex: 'arrivedQuantity',
+          customRender: (text, record, index) => {
+            return this.BaseTool.Amount.formatter(text)
+          }
+        },
+        {
+          title: '未到数量',
+          dataIndex: 'notArriveQuantity',
+          customRender: (text, record, index) => {
+            return this.BaseTool.Amount.formatter(text)
+          }
+        },
+        {
+          title: '总重',
+          dataIndex: 'totalWeight',
+          customRender: (text, record, index) => {
+            return this.BaseTool.Amount.formatter(text)
+          }
+        },
+        {
+          title: '总体积',
+          dataIndex: 'totalVolume',
+          customRender: (text, record, index) => {
+            return this.BaseTool.Amount.formatter(text)
+          }
+        },
+        {
+          title: '拒绝原因',
+          dataIndex: 'refuseReason'
+        },
+        {
+          title: '申请时间',
+          dataIndex: 'applyTime'
+        },
+        {
+          title: '审核时间',
+          dataIndex: 'auditTime'
+        },
+        {
+          title: '状态',
+          dataIndex: 'status'
+        },
+        {
+          title: '备注',
+          dataIndex: 'remark'
+        },
+        {
+          title: '删除标志',
+          dataIndex: 'delFlag'
+        },
+        {
+          title: '创建人名称',
+          dataIndex: 'createdUserName'
+        },
+        {
+          title: '创建时间',
+          dataIndex: 'createdTime'
+        },
+        {
+          title: '操作',
+          key: 'action',
+          width: '200px',
+          align: 'center',
+          scopedSlots: { customRender: 'action' }
+        }
+      ],
+      // 下拉框map
+      typeMap: {},
+      reportTypeMap: {},
+      // 加载数据方法 必须为 Promise 对象
+      loadData: parameter => {
+        parameter = {
+          ...parameter,
+          ...this.queryParam,
+          ...this.extraQueryParam,
+          dataScope: {
+            sortBy: 'desc',
+            sortName: 'update_time'
+          }
+        }
+        return getPurchaseApplyPage(Object.assign(parameter, this.queryParam))
+          .then(res => {
+            return res.data
+          })
+      },
+      selectedRowKeys: [],
+      selectedRows: [],
 
-                options: {
-                    alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
-                    rowSelection: {
-                        selectedRowKeys: this.selectedRowKeys,
-                        onChange: this.onSelectChange
-                    }
+      options: {
+        alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
+        rowSelection: {
+          selectedRowKeys: this.selectedRowKeys,
+          onChange: this.onSelectChange
+        }
+      },
+      optionAlertShow: false,
+      isCreated: false
+    }
+  },
+  created () {
+    // 下拉框map
+    this.typeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.PURCHASE_APPLY_TYPE)
+    this.reportTypeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.PURCHASE_APPLY_REPORT_TYPE)
+  },
+  methods: {
+    tableOption () {
+      if (!this.optionAlertShow) {
+        this.options = {
+          alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
+          rowSelection: {
+            selectedRowKeys: this.selectedRowKeys,
+            onChange: this.onSelectChange,
+            type: this.type,
+            getCheckboxProps: record => ({
+              props: {
+                disabled: false,
+                name: record.id
+              }
+            })
+          },
+          customRow: (record) => {
+            return {
+              on: { // 事件
+                click: (event) => { // 点击行
+                  // 选择对象
+                  this.mySelect([record.id], [record])
                 },
-                optionAlertShow: false,
-                isCreated: false
-            }
-        },
-        created () {
-            // 下拉框map
-                            this.typeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.PURCHASE_APPLY_TYPE)
-                            this.reportTypeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.PURCHASE_APPLY_REPORT_TYPE)
-                    },
-        methods: {
-            tableOption () {
-                if (!this.optionAlertShow) {
-                    this.options = {
-                        alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
-                        rowSelection: {
-                            selectedRowKeys: this.selectedRowKeys,
-                            onChange: this.onSelectChange,
-                            type: this.type,
-                            getCheckboxProps: record => ({
-                                props: {
-                                    disabled: false,
-                                    name: record.id
-                                }
-                            })
-                        },
-                        customRow: (record) => {
-                            return {
-                                on: { // 事件
-                                    click: (event) => { // 点击行
-                                        // 选择对象
-                                        this.mySelect([record.id], [record])
-                                    },
-                                    dblclick: (event) => {
-                                        this.mySelect([record.id], [record])
-                                        this.handleSelect()
-                                    }
-                                }
-                            }
-                        }
-                    }
-                    this.optionAlertShow = true
-                } else {
-                    this.options = {
-                        alert: false,
-                        rowSelection: null
-                    }
-                    this.optionAlertShow = false
-                }
-            },
-            handleView (record) {
-                fetchPurchaseApply({ id: record.id }).then(res => {
-                    const modal = this.$refs.detailModal
-                    modal.base(res.data)
-                })
-            },
-            handleOk () {
-                this.$refs.table.refresh()
-            },
-            onSelectChange (selectedRowKeys, selectedRows) {
-                this.selectedRowKeys = selectedRowKeys
-                this.selectedRows = selectedRows
-            },
-            resetSearchForm () {
-                this.queryParam = {
+                dblclick: (event) => {
+                  this.mySelect([record.id], [record])
+                  this.handleSelect()
                 }
-                this.$refs.table.refresh(true)
-            },
-            base (record, queryParam = {}) {
-                this.visible = true
-                this.modalTitle = '选择信息'
-                this.extraQueryParam = queryParam
-                this.record = record
-                if (this.isCreated) {
-                    this.$refs.table.clearSelected()
-                    this.options.rowSelection.type = this.type
-                    this.handleOk()
-                } else {
-                    this.tableOption()
-                    this.isCreated = true
-                }
-            },
-            handleCancel () {
-                this.visible = false
-                this.confirmLoading = false
-            },
-            handleSelect () {
-                if (this.selectedRowKeys.length === 0) {
-                    this.$message.warn('请至少选择一项信息')
-                } else {
-                    this.confirmLoading = true
-                    this.$emit('selected', this.record, this.selectedRowKeys, this.selectedRows)
-                    this.confirmLoading = false
-                    this.visible = false
-                }
-            },
-            mySelect(selectedRowKeys, selectedRows) {
-                if (this.type === 'radio') {
-                    this.$refs.table.updateSelect(selectedRowKeys, selectedRows)
-                            this.$refs.table.rowSelection.onChange(selectedRowKeys, selectedRows)
-                } else {
-                    let mySelectedRowKeys
-                    let mySelectedRows = this.selectedRows.filter(item => item.id !== selectedRowKeys[0])
-                    if (this.selectedRowKeys.includes(selectedRowKeys[0])) {
-                        mySelectedRowKeys = this.selectedRowKeys.filter(item => item !== selectedRowKeys[0])
-                    } else {
-                        mySelectedRowKeys = [...selectedRowKeys, ...this.selectedRowKeys]
-                        mySelectedRows = [...mySelectedRows, ...selectedRows]
-                    }
-                    this.$refs.table.updateSelect(mySelectedRowKeys, mySelectedRows)
-                            this.$refs.table.rowSelection.onChange(mySelectedRowKeys, mySelectedRows)
-                }
-
+              }
             }
+          }
+        }
+        this.optionAlertShow = true
+      } else {
+        this.options = {
+          alert: false,
+          rowSelection: null
+        }
+        this.optionAlertShow = false
+      }
+    },
+    handleView (record) {
+      fetchPurchaseApply({ id: record.id }).then(res => {
+        const modal = this.$refs.detailModal
+        modal.base(res.data)
+      })
+    },
+    handleOk () {
+      this.$refs.table.refresh()
+    },
+    onSelectChange (selectedRowKeys, selectedRows) {
+      this.selectedRowKeys = selectedRowKeys
+      this.selectedRows = selectedRows
+    },
+    resetSearchForm () {
+      this.queryParam = {
+      }
+      this.$refs.table.refresh(true)
+    },
+    base (record, queryParam = {}) {
+      this.visible = true
+      this.modalTitle = '选择信息'
+      this.extraQueryParam = queryParam
+      this.record = record
+      if (this.isCreated) {
+        this.$refs.table.clearSelected()
+        this.options.rowSelection.type = this.type
+        this.handleOk()
+      } else {
+        this.tableOption()
+        this.isCreated = true
+      }
+    },
+    handleCancel () {
+      this.visible = false
+      this.confirmLoading = false
+    },
+    handleSelect () {
+      if (this.selectedRowKeys.length === 0) {
+        this.$message.warn('请至少选择一项信息')
+      } else {
+        this.confirmLoading = true
+        this.$emit('selected', this.record, this.selectedRowKeys, this.selectedRows)
+        this.confirmLoading = false
+        this.visible = false
+      }
+    },
+    mySelect (selectedRowKeys, selectedRows) {
+      if (this.type === 'radio') {
+        this.$refs.table.updateSelect(selectedRowKeys, selectedRows)
+        this.$refs.table.rowSelection.onChange(selectedRowKeys, selectedRows)
+      } else {
+        let mySelectedRowKeys
+        let mySelectedRows = this.selectedRows.filter(item => item.id !== selectedRowKeys[0])
+        if (this.selectedRowKeys.includes(selectedRowKeys[0])) {
+          mySelectedRowKeys = this.selectedRowKeys.filter(item => item !== selectedRowKeys[0])
+        } else {
+          mySelectedRowKeys = [...selectedRowKeys, ...this.selectedRowKeys]
+          mySelectedRows = [...mySelectedRows, ...selectedRows]
         }
+        this.$refs.table.updateSelect(mySelectedRowKeys, mySelectedRows)
+        this.$refs.table.rowSelection.onChange(mySelectedRowKeys, mySelectedRows)
+      }
     }
+  }
+}
 </script>

+ 4 - 6
src/views/sb/scraps/SbScrapForm.vue

@@ -114,8 +114,8 @@
     </div>
     <base-form ref="baseModal" @ok="handleOk" />
     <detail ref="detailModal" @ok="handleOk" />
-    <image-modal ref="imageModal"/>
-    <history-table ref="historyModal"/>
+<!--    <image-modal ref="imageModal"/>-->
+<!--    <history-table ref="historyModal"/>-->
   </a-card>
 </template>
 
@@ -298,10 +298,8 @@ export default {
     },
     handleView (record) {
       this.visible = false
-      fetchSbScrapForm({ id: record.id }).then(res => {
-        const modal = this.$refs.detailModal
-        modal.base(res.data)
-      })
+      const modal = this.$refs.detailModal
+      modal.base(record)
     },
     handleOk (values) {
       this.visible = true

+ 9 - 4
src/views/sb/scraps/modules/Detail.vue

@@ -1,6 +1,6 @@
 <template>
-  <a-card :bordered="false" class="card" :title="modalTitle">
-    <div v-show="visible">
+  <a-card v-show="visible" :bordered="false" class="card" :title="modalTitle">
+    <div>
       <a-row :gutter="48" slot="extra">
         <a-col :md="48" :sm="48">
           <span class="table-page-search-submitButtons" style="float: right">
@@ -20,13 +20,14 @@
         <detail-list-item term="更新日期">{{ model.updateTime }}</detail-list-item>
       </detail-list>
     </div>
-    <history :target-id="model.id" :process-instance-id="model.processInstanceId" :audit="false" :ok="handleCancel"></history>
+    <history ref="history" :audit="false" :ok="handleCancel"></history>
   </a-card>
 </template>
 
 <script>
 import DetailList from '@/components/tools/DetailList'
 import History from '@/views/activiti/History'
+import { fetchSbScrapForm } from '@/api/sb/scraps'
 const DetailListItem = DetailList.Item
 
 export default {
@@ -71,7 +72,11 @@ export default {
     base (record) {
       this.visible = true
       this.modalTitle = '详情'
-      this.model = record
+      fetchSbScrapForm({ id: record.id }).then(res => {
+        this.model = res.data
+        const modal = this.$refs.history
+        modal.base(res.data, null)
+      })
     },
     handleCancel () {
       this.visible = false

+ 7 - 4
src/views/sb/scraps/modules/DetailAudit.vue

@@ -19,19 +19,19 @@
       <detail-list-item term="创建日期">{{ model.createdTime }}</detail-list-item>
       <detail-list-item term="更新日期">{{ model.updateTime }}</detail-list-item>
     </detail-list>
-    <history
+    <history ref="history" :audit="audit" :ok="handleCancel"></history>
+    <!--    <history
       :audit="audit"
       :target-id="task.targetId"
       :process-instance-id="task.processInstanceId"
       :task-id="task.taskId"
-      :ok="handleCancel"></history>
+      :ok="handleCancel"></history>-->
   </a-card>
 </template>
 
 <script>
 import DetailList from '@/components/tools/DetailList'
 import History from '@/views/activiti/History'
-import { fetchSbScrapForm } from '@/api/sb/scraps'
 const DetailListItem = DetailList.Item
 
 export default {
@@ -56,7 +56,8 @@ export default {
       // 下拉框map
       statusMap: {},
       task: {},
-      model: {'no': null,
+      model: {
+        'no': null,
         'sbId': null,
         'sbNo': null,
         'sbName': null,
@@ -85,6 +86,8 @@ export default {
       this.modalTitle = '详情'
       this.task = record
       this.model = model
+      const modal = this.$refs.history
+      modal.base(model, this.task.id)
     },
     handleCancel () {
       this.visible = false