瀏覽代碼

完善计量检定功能

hfxc226 2 年之前
父節點
當前提交
ac46774b51

+ 1 - 1
src/views/sb/info/MeasureSbInfo.vue

@@ -5,7 +5,7 @@
 <script>
 import SbInfo from './SbInfo'
 export default {
-  name: 'MySbInfo',
+  name: 'MeasureSbInfo',
   components: {
     SbInfo
   }

+ 9 - 506
src/views/sb/info/MeasureSbInfoWarn.vue

@@ -1,514 +1,17 @@
 <template>
-  <a-card :bordered="false">
-    <a-row :gutter="8" v-show="visible">
-      <a-col :span="4">
-        <a-tree
-          @expand="onExpand"
-          :expandedKeys="expandedKeys"
-          :autoExpandParent="true"
-          @select="onSelect"
-          :selectedKeys="selectedKeys"
-          :treeData="treeData"
-        />
-      </a-col>
-      <a-col :span="20">
-        <div>
-          <div class="table-page-search-wrapper">
-            <a-form layout="inline">
-              <a-row :gutter="48">
-                <a-col :md="6" :sm="24">
-                  <a-form-item label="关键字">
-                    <a-input v-model.trim="queryParam.keyword" placeholder="请输入名称/设备新号"/>
-                  </a-form-item>
-                </a-col>
-                <a-col :md="6" :sm="24">
-                  <a-form-item label="设备旧号">
-                    <a-input v-model="queryParam.zbh" placeholder="请输入设备旧号"/>
-                  </a-form-item>
-                </a-col>
-                <a-col :md="8" :sm="24">
-                  <a-form-item label="设备状态">
-                    <a-select @change="handleDeptChange" v-model="queryParam.status" placeholder="请选择">
-                      <a-select-option
-                        v-for="(label,value) in statusMap"
-                        :key="value"
-                        :label="label"
-                        :value="parseInt(value)">{{ label }}
-                      </a-select-option>
-                    </a-select>
-                  </a-form-item>
-                </a-col>
-                <a-col :md="6 || 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;">
-            <a-button style="margin-left: 8px" v-if="$auth('sb-infos-export')" type="primary" icon="upload" @click="printQcode()">打印</a-button>
-            <a-dropdown v-action:edit v-if="selectedRowKeys.length > 0 && $auth('sb-infos-del')">
-              <a-menu slot="overlay">
-                <a-popconfirm title="是否要删除所选数据?" @confirm="batchDelete()">
-                  <a-menu-item key="1"><a-icon type="delete" /><a>删除</a></a-menu-item>
-                </a-popconfirm>
-              </a-menu>
-              <a-button style="margin-left: 8px">
-                批量操作 <a-icon type="down" />
-              </a-button>
-            </a-dropdown>
-          </div>
-
-          <s-table
-            ref="table"
-            size="default"
-            rowKey="id"
-            :widthSpace="true"
-            :columns="columns"
-            :data="loadData"
-            :alert="options.alert"
-            :rowSelection="options.rowSelection"
-            :scroll="{x: BaseTool.Constant.scrollX, y: BaseTool.Constant.scrollY }"
-            showPagination="auto"
-          >
-            <span slot="action" slot-scope="record">
-              <template>
-                <div>
-                  <a-dropdown>
-                    <a-menu slot="overlay">
-                      <a-menu-item key="0">
-                        <a @click="handleView(record)">查看</a>
-                      </a-menu-item>
-                      <a-menu-item key="1">
-                        <a v-if="$auth('sb-infos-edit')" @click="handleEdit(record)">修改</a>
-                      </a-menu-item>
-                      <a-menu-item key="4">
-                        <a @click="printQcode(record)">打印</a>
-                      </a-menu-item>
-                    </a-menu>
-                    <a-button> 操作 <a-icon type="down" /> </a-button>
-                  </a-dropdown>
-                </div>
-              </template>
-            </span>
-            <span slot="status" slot-scope="text">
-              <badge
-                :status="DictCache.COLOR.SB_INFO_STATUS[text]"
-                :text="statusMap[text]" />
-            </span>
-          </s-table>
-        </div>
-
-      </a-col>
-    </a-row>
-    <!--    <base-form ref="baseModal" :useType="4" @ok="handleOk"/>-->
-    <base-form-measure-relation ref="baseModalMeasureRelation" :useType="4" @ok="handleOk"/>
-    <detail ref="detailModal" @ok="handleOk"/>
-    <download-modal ref="downloadModal"/>
-    <preview-modal ref="previewModal"/>
-    <import-form-add ref="importModal" @ok="handleOk"/>
-    <print-sb-code ref="printSbCode"/>
-  </a-card>
-
-</template>
+  <SbInfo :use-type="4" :measure-status="1">
+  </sbinfo></template>
 
 <script>
-import { STable, Ellipsis } from '@/components'
-/*import BaseForm from './modules/BaseForm'*/
-import BaseFormMeasureRelation from './modules/BaseFormMeasureRelation'
-/*import Detail from './modules/Detail'*/
-import Detail from './modules/DetailMeasureRelation'
-import DownloadModal from '@/views/download/DownloadModal'
-import PreviewModal from '@/views/preview/PreviewModal'
-import { getMeasureWarn, deleteSbInfos, fetchSbInfo, exportSbInfo } from '@/api/sb/info'
-import { queryDept, getDeptsAllByParentId } from '@/api/upms/dept'
-import { fetchSbTypeTree } from '@/api/sb/type'
-import ImportFormAdd from './modules/ImportFormAdd'
-import PrintSbCode from '@/views/sb/info/modules/PrintSbCode'
-
+import SbInfo from './SbInfo'
 export default {
-  name: 'MeasureSbInfoList',
+  name: 'MeasureSbInfoWarn',
   components: {
-    STable,
-    Ellipsis,
-    BaseFormMeasureRelation,
-    Detail,
-    DownloadModal,
-    PreviewModal,
-    PrintSbCode,
-    ImportFormAdd
-  },
-  props: {
-    filter: {
-      type: Number,
-      default: -1
-    }
-  },
-  data () {
-    return {
-      // 查询参数
-      queryParam: {
-        filter: this.filter,
-        useType: 4
-      },
-      depreciationTypeMap: {},
-      visible: true,
-      levelMap: {},
-      unitMap: {},
-      areaList: {},
-      companyList: {},
-      projectList: {},
-      deptList: {},
-      useTypeMap: {},
-      statusMap: {},
-      expandedKeys: [],
-      selectedKeys: [],
-      sourceTypeMap: {},
-      treeData: [],
-      // 表头
-      columns: [
-        {
-          title: '序号',
-          dataIndex: 'index',
-          width: 50,
-          checked: true,
-          customRender: (text, record, index) => {
-            return `${(this.$refs.table.localPagination.current - 1) * this.$refs.table.localPagination.pageSize + index + 1}`
-          }
-        },
-        {
-          title: '设备新号',
-          dataIndex: 'no',
-          width: 120,
-          checked: true
-        },
-        /*        {
-                  title: '设备旧号',
-                  dataIndex: 'zbh',
-                  width: 120,
-                  checked: true
-                },
-        {
-          title: '计量设备编号',
-          dataIndex: 'cardNo',
-          width: 150,
-          checked: true
-        },*/
-        {
-          title: '设备名称',
-          checked: true,
-          width: 200,
-          dataIndex: 'name'
-        },
-        {
-          title: '设备型号',
-          checked: true,
-          width: 200,
-          dataIndex: 'model'
-        },
-        {
-          title: '使用位置',
-          checked: true,
-          width: 200,
-          dataIndex: 'cph'
-        },
-        {
-          title: '使用部门',
-          checked: true,
-          width: 200,
-          dataIndex: 'saveUserName'
-        },
-        {
-          title: '设备类型',
-          checked: true,
-          dataIndex: 'type',
-          width: 120,
-          customRender: (text, record, index) => {
-            return record.typeName
-          }
-        },
-        {
-          title: '设备等级',
-          checked: true,
-          dataIndex: 'level',
-          width: 120,
-          customRender: (text, record, index) => {
-            return this.BaseTool.Object.getField(this.levelMap, text)
-          }
-        },
-
-        {
-          title: '设备原值',
-          dataIndex: 'initialValue',
-          width: 100,
-          customRender: (text, record, index) => {
-            return this.BaseTool.Amount.formatter(text)
-          }
-        },
-        {
-          title: '购置日期',
-          dataIndex: 'buyDate',
-          width: 120,
-          checked: true
-        },
-        {
-          title: '投用日期',
-          dataIndex: 'startDate',
-          width: 120,
-          checked: true
-        },
-        {
-          title: '检定日期',
-          dataIndex: 'checkDate',
-          width: 150,
-          checked: true
-        },
-        {
-          title: '检定周期',
-          dataIndex: 'checkPeriod',
-          width: 100,
-          checked: true,
-          customRender: (text, record, index) => {
-            if (record.nextCheckDate == null) {
-              return '未知'
-            } else {
-              return text + '月'
-            }
-          }
-        },
-        {
-          title: '检定有效期',
-          dataIndex: 'nextCheckDate',
-          width: 150,
-          fixed: 'right',
-          checked: true
-        },
-        {
-          title: '检定截止',
-          dataIndex: 'restDay',
-          width: 100,
-          fixed: 'right',
-          checked: true,
-          customRender: (text, record, index) => {
-            if (record.nextCheckDate == null) {
-              return '未知'
-            } else {
-              return this.BaseTool.Date.getCountBetween(new Date(), record.nextCheckDate, 1) + '天'
-            }
-          }
-        },
-        {
-          title: '状态',
-          checked: true,
-          dataIndex: 'status',
-          width: 100,
-          fixed: 'right',
-          scopedSlots: { customRender: 'status' }
-        },
-        {
-          title: '操作',
-          key: 'action',
-          checked: true,
-          fixed: 'right',
-          align: 'center',
-          width: '100',
-          scopedSlots: { customRender: 'action' }
-        }
-      ],
-      // 加载数据方法 必须为 Promise 对象
-      loadData: parameter => {
-        parameter = {
-          ...parameter,
-          ...this.queryParam,
-          dataScope: {
-            sortBy: 'desc',
-            sortName: 'update_time'
-          }
-        }
-        return getMeasureWarn(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
-        }
-      },
-      optionAlertShow: false
-    }
-  },
-  created () {
-    this.tableOption()
-    this.depreciationTypeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBINFO_DEPRECIATIONTYPE)
-    this.levelMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBINFO_LEVEL)
-    this.statusMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SB_INFO_STATUS)
-    this.unitMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBINFO_UNIT)
-    this.sourceTypeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBTYPE_SOURCETYPE)
-    this.useTypeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SB_USE_TYPE)
-  },
-  methods: {
-    tableOption () {
-      this.setTree()
-      if (!this.optionAlertShow) {
-        this.options = {
-          alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
-          rowSelection: {
-            selectedRowKeys: this.selectedRowKeys,
-            onChange: this.onSelectChange,
-            getCheckboxProps: record => ({
-              props: {
-                disabled: false,
-                name: record.id
-              }
-            })
-          }
-        }
-        this.optionAlertShow = true
-      } else {
-        this.options = {
-          alert: false,
-          rowSelection: null
-        }
-        this.optionAlertShow = false
-      }
-    },
-    batchDelete (id) {
-      let ids = []
-      if (this.BaseTool.String.isBlank(id)) {
-        const length = this.selectedRows.length
-        if (length === 0) {
-          this.$message.info('请选择要删除的记录')
-          return
-        }
-        ids = this.selectedRows.map(item => item.id)
-      } else {
-        ids = [id]
-      }
-      deleteSbInfos(ids).then(res => {
-        this.$message.info('删除成功')
-        this.handleOk()
-        this.$refs.table.clearSelected()
-      })
-    },
-    handleEdit (record) {
-      fetchSbInfo({ id: record.id }).then(res => {
-        this.visible = false
-        const modal = this.$refs.baseModalMeasureRelation
-        modal.base(res.data)
-      })
-    },
-    printQcode (record) {
-      let recordList = []
-      console.log(record, this.selectedRows)
-      if (this.BaseTool.String.isBlank(record)) {
-        const length = this.selectedRows.length
-        if (length === 0) {
-          this.$message.info('请选择要打印的记录')
-          return
-        }
-        recordList = this.selectedRows
-      } else {
-        recordList = [record]
-      }
-      this.$refs.printSbCode.base(recordList)
-    },
-    handleAdd () {
-      this.visible = false
-      this.$refs.baseModal.base()
-    },
-    handleView (record) {
-      fetchSbInfo({ id: record.id }).then(res => {
-        this.visible = false
-        const modal = this.$refs.detailModal
-        modal.base(res.data)
-      })
-    },
-    handleAreaChange (value) {
-      getDeptsAllByParentId({ deptId: value, nature: this.DictCache.VALUE.SYS_DEPT_NATURE.FEN_GONG_SI }).then(res => {
-        this.companyList = res.data
-      })
-    },
-    handleCompanyChange (value) {
-      getDeptsAllByParentId({ deptId: value, nature: this.DictCache.VALUE.SYS_DEPT_NATURE.XIANG_MU_BU }).then(res => {
-        this.projectList = res.data
-      })
-    },
-    handleProjectChange (value) {
-      getDeptsAllByParentId({ deptId: value, nature: this.DictCache.VALUE.SYS_DEPT_NATURE.BU_MEN }).then(res => {
-        this.deptList = res.data
-      })
-    },
-    handleDeptChange (value) {
-      getDeptsAllByParentId({ deptId: value, nature: this.DictCache.VALUE.SYS_DEPT_NATURE.BAN_ZU }).then(res => {
-        this.groupList = res.data
-      })
-    },
-    handleOk () {
-      this.visible = true
-      this.setTree()
-      this.$refs.table.refresh()
-    },
-    onSelectChange (selectedRowKeys, selectedRows) {
-      this.selectedRowKeys = selectedRowKeys
-      this.selectedRows = selectedRows
-    },
-    resetSearchForm () {
-      this.queryParam = {
-        filter: this.filter
-      }
-      this.visible = true
-      this.$refs.table.refresh(true)
-    },
-    doExport () {
-      const parameter = {
-        ...this.queryParam
-      }
-      exportSbInfo(parameter).then(file => {
-        this.BaseTool.UPLOAD.downLoadExportExcel(file)
-      })
-    },
-    setTree (record = {}) {
-      queryDept({ nature: this.DictCache.VALUE.SYS_DEPT_NATURE.JITUAN }).then(res => {
-        this.areaList = res.data
-      })
-      fetchSbTypeTree().then(res => {
-        this.treeData = res.data
-      })
-    },
-    onSelect: function (selectedKeys, info) {
-      this.selectedKeys = selectedKeys
-      this.queryParam.typeId = selectedKeys.length > 0 ? selectedKeys[0] : ''
-      this.$refs.table.refresh(true)
-    },
-    onExpand (expandedKeys) {
-      this.expandedKeys = expandedKeys
-      this.autoExpandParent = false
-    },
-    doImport () {
-      if (this.queryParam.useCompany == null) {
-        this.$message.error('请先选择公司')
-        return
-      }
-      if (this.queryParam.useProject == null) {
-        this.$message.error('请先选择项目部')
-        return
-      }
-      this.$refs.importModal.base(this.queryParam.useCompany, this.queryParam.useProject)
-    },
-    doImportDe () {
-      this.queryParam.useCompany = null
-      this.queryParam.useProject = null
-      this.$refs.importModal.base()
-    }
+    SbInfo
   }
 }
 </script>
+
+<style scoped>
+
+</style>

+ 10 - 1
src/views/sb/info/SbInfo.vue

@@ -281,6 +281,10 @@ export default {
     useType: {
       type: Number,
       default: null
+    },
+    measureStatus: {
+      type: Number,
+      default: null
     }
   },
   data () {
@@ -289,6 +293,7 @@ export default {
       queryParam: {
         filter: this.filter,
         useType: this.useType,
+        measureStatus: this.measureStatus,
         id: this.$route.query.id,
         typeId: this.$route.query.typeId,
         status: this.$route.query.status
@@ -693,7 +698,11 @@ export default {
     resetSearchForm () {
       this.queryParam = {
         filter: this.filter,
-        useType: this.useType
+        useType: this.useType,
+        measureStatus: this.measureStatus,
+        id: this.$route.query.id,
+        typeId: this.$route.query.typeId,
+        status: this.$route.query.status
       }
       this.visible = true
       this.$refs.table.refresh(true)

+ 4 - 3
src/views/sb/info/modules/BaseForm.vue

@@ -28,14 +28,14 @@
               v-decorator="['no', {rules: [{required: true, message: '不能为空'}]}]" />
           </a-form-item>
         </a-col>
-        <!--        <a-col :lg="12" :md="24" :sm="24">
+        <a-col :lg="12" :md="24" :sm="24">
           <a-form-item
-            label="设备(旧号)"
+            label="设备位号"
             :labelCol="BaseTool.Constant.labelCol"
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
             <a-input
-              v-decorator="['zbh', {rules: [{required: false, message: '不能为空'}]}]" />
+              v-decorator="['positionNo', {rules: [{required: false, message: '不能为空'}]}]" />
           </a-form-item>
         </a-col>-->
       </a-row>
@@ -1149,6 +1149,7 @@ export default {
           'id',
           'no',
           'parentId',
+          'positionNo',
           'parentSbName',
           'isChild',
           'isShow',

+ 3 - 2
src/views/sb/info/modules/Detail.vue

@@ -138,8 +138,8 @@
                 {{ model.no }}
               </a-descriptions-item>
               <a-descriptions-item label="资产编号">{{ model.financingNo }}</a-descriptions-item>
-              <a-descriptions-item label="设备(旧号)">
-                {{ model.zbh }}
+              <a-descriptions-item label="设备位号">
+                {{ model.positionNo }}
               </a-descriptions-item>
               <a-descriptions-item label="设备描述">
                 {{ model.name }}
@@ -359,6 +359,7 @@ export default {
       collapseActiveKey: '1',
       model: {
         'no': null,
+        'positionNo': null,
         'financingNo': null,
         'financingNoTwo': null,
         'financingNoThird': null,