Эх сурвалжийг харах

1.详情返回列表保留查询条件
2.基本信息中,部分字典返回的为number类型导致无返反显

002390 2 жил өмнө
parent
commit
1275c8a57c

+ 3 - 1
src/router/index.js

@@ -130,7 +130,9 @@ export const constantRoutes = [
     children: [
     children: [
       {
       {
         path: `detail/:id`,
         path: `detail/:id`,
-        component: () => import('@/views/material/basicFile/details')
+        name: 'materialDetail',
+        component: () => import('@/views/material/basicFile/details'),
+        meta: { title: '基本信息详情' }
       }
       }
 
 
     ]
     ]

+ 4 - 3
src/store/getters.js

@@ -12,8 +12,9 @@ const getters = {
   roles: state => state.user.roles,
   roles: state => state.user.roles,
   permissions: state => state.user.permissions,
   permissions: state => state.user.permissions,
   permission_routes: state => state.permission.routes,
   permission_routes: state => state.permission.routes,
-  topbarRouters:state => state.permission.topbarRouters,
-  defaultRoutes:state => state.permission.defaultRoutes,
-  sidebarRouters:state => state.permission.sidebarRouters,
+  topbarRouters: state => state.permission.topbarRouters,
+  defaultRoutes: state => state.permission.defaultRoutes,
+  sidebarRouters: state => state.permission.sidebarRouters,
+  query: state => state.query,
 }
 }
 export default getters
 export default getters

+ 3 - 1
src/store/index.js

@@ -7,6 +7,7 @@ import tagsView from './modules/tagsView'
 import permission from './modules/permission'
 import permission from './modules/permission'
 import settings from './modules/settings'
 import settings from './modules/settings'
 import getters from './getters'
 import getters from './getters'
+import query from './material/query'
 
 
 Vue.use(Vuex)
 Vue.use(Vuex)
 
 
@@ -17,7 +18,8 @@ const store = new Vuex.Store({
     user,
     user,
     tagsView,
     tagsView,
     permission,
     permission,
-    settings
+    settings,
+    query
   },
   },
   getters
   getters
 })
 })

+ 13 - 2
src/store/material/query.js

@@ -1,17 +1,28 @@
 const query = {
 const query = {
 
 
   state: {
   state: {
+    queryVlue: {}
+  },
+  getters: {
+    getQuery(state) {
 
 
+      return state.queryVlue;
+    }
   },
   },
 
 
   mutations: {
   mutations: {
-    setData: (state) => {
 
 
+    SET_QUERY: (state, value) => {
+      console.log(state, 'value', value,);
+      state.queryVlue = value;
     }
     }
+
   },
   },
 
 
   actions: {
   actions: {
-
+    reflashQuery(store, value) {
+      store.commit('SET_QUERY', value);
+    }
   }
   }
 }
 }
 
 

+ 20 - 13
src/views/material/basicFile/details.vue

@@ -29,7 +29,7 @@
               </el-dropdown-menu>
               </el-dropdown-menu>
             </el-dropdown>
             </el-dropdown>
 
 
-                                                                                                                                                                                                                                                                                                                                                                                                      <el-button size="small" @click="handleQuery">查询</el-button> -->
+                                                                                                                                                                                                                                                                                                                                                                                                                                              <el-button size="small" @click="handleQuery">查询</el-button> -->
             <el-button size="small" @click="handleRefresh">刷新</el-button>
             <el-button size="small" @click="handleRefresh">刷新</el-button>
 
 
           </el-button-group>
           </el-button-group>
@@ -48,7 +48,7 @@
               <el-dropdown-menu slot="dropdown">
               <el-dropdown-menu slot="dropdown">
                 <el-dropdown-item :command="isInvoke(true)">启用</el-dropdown-item>
                 <el-dropdown-item :command="isInvoke(true)">启用</el-dropdown-item>
                 <el-dropdown-item :command="isInvoke(false)">停用</el-dropdown-item>
                 <el-dropdown-item :command="isInvoke(false)">停用</el-dropdown-item>
-                                                                                    </el-dropdown-menu></el-dropdown> -->
+                                                                                                                            </el-dropdown-menu></el-dropdown> -->
           </el-button-group>
           </el-button-group>
         </el-col>
         </el-col>
 
 
@@ -57,7 +57,7 @@
           <el-button-group>
           <el-button-group>
             <el-button size="small" @click="handleQueryForm">申请单查询</el-button>
             <el-button size="small" @click="handleQueryForm">申请单查询</el-button>
           </el-button-group>
           </el-button-group>
-                                                                                                                                                                                                                                                                                                                                                                                              </el-col> -->
+                                                                                                                                                                                                                                                                                                                                                                                                                                      </el-col> -->
 
 
         <!-- 导入导出 -->
         <!-- 导入导出 -->
       <!-- <el-col :span="1.5">
       <!-- <el-col :span="1.5">
@@ -65,7 +65,7 @@
             <el-button size="small" @click="handleImport">批量导入</el-button>
             <el-button size="small" @click="handleImport">批量导入</el-button>
             <el-button size="small" @click="handleExport">批量导出</el-button>
             <el-button size="small" @click="handleExport">批量导出</el-button>
           </el-button-group>
           </el-button-group>
-                                                                                                                                                                                                                                                                                                                                                                                                </el-col> -->
+                                                                                                                                                                                                                                                                                                                                                                                                                                        </el-col> -->
 
 
       </el-row>
       </el-row>
 
 
@@ -111,7 +111,7 @@
           <!-- 附件管理 -->
           <!-- 附件管理 -->
         <!-- <el-button-group>
         <!-- <el-button-group>
             <el-button size="small" icon="el-icon-paperclip" @click="handleFile"></el-button>
             <el-button size="small" icon="el-icon-paperclip" @click="handleFile"></el-button>
-                                                                                                                                                                                                                                                                                                                                                                                              </el-button-group> -->
+                                                                                                                                                                                                                                                                                                                                                                                                                                      </el-button-group> -->
 
 
           <!-- 切换 -->
           <!-- 切换 -->
         <!-- <el-button-group>
         <!-- <el-button-group>
@@ -123,7 +123,7 @@
               @click="handleChangePage('next')" />
               @click="handleChangePage('next')" />
             <el-button size="small" icon="el-icon-d-arrow-right" :disabled="!handleBasicEdit"
             <el-button size="small" icon="el-icon-d-arrow-right" :disabled="!handleBasicEdit"
               @click="handleChangePage('end')" />
               @click="handleChangePage('end')" />
-                                                                                                                                                                                                                                                                                                                                                                                              </el-button-group> -->
+                                                                                                                                                                                                                                                                                                                                                                                                                                      </el-button-group> -->
         </el-col>
         </el-col>
       </el-row>
       </el-row>
 
 
@@ -201,8 +201,8 @@
 
 
                         <!-- 图片 -->
                         <!-- 图片 -->
                         <el-form-item v-else-if="f.attribute == 'image'" :label="f.name">
                         <el-form-item v-else-if="f.attribute == 'image'" :label="f.name">
-                          <el-image :src="basicData.value[f.prop]" fit="contain"></el-image>
-                          <!-- <img :src="basicData.value[f.prop]" alt="加载失败"> -->
+                          <el-image :src="basicData.value[f.prop]" fit="contain" @clicks="handleUpImage"></el-image>
+                          <!-- <img :src="basicData.value[f.prop]" @clicks="handleUpImage" alt="加载失败"> -->
 
 
                         </el-form-item>
                         </el-form-item>
 
 
@@ -283,7 +283,7 @@
                                 @focus="m.apiUrl && handleQueryMore(m, '', { name: 'medcineData', prop: m.prop })">
                                 @focus="m.apiUrl && handleQueryMore(m, '', { name: 'medcineData', prop: m.prop })">
 
 
                               <!-- <el-option v-if="m.dictId" v-for="d in m.dictValue" :key="d.dictValue"
                               <!-- <el-option v-if="m.dictId" v-for="d in m.dictValue" :key="d.dictValue"
-                                                                                                                                                                                                            :label="d.dictLabel" :value="d.dictValue"></el-option> -->
+                                                                                                                                                                                                                                                    :label="d.dictLabel" :value="d.dictValue"></el-option> -->
 
 
                                 <div slot="empty"></div>
                                 <div slot="empty"></div>
                               </el-select>
                               </el-select>
@@ -435,7 +435,7 @@
               <el-option v-if="mt.dictId" v-for="d in mt.dictId" :key="d.dictValue" :label="d.dictLabel"
               <el-option v-if="mt.dictId" v-for="d in mt.dictId" :key="d.dictValue" :label="d.dictLabel"
                 :value="d.dictValue">
                 :value="d.dictValue">
               </el-option>
               </el-option>
-                                                                                                                                                                                                                              </el-select> -->
+                                                                                                                                                                                                                                                                      </el-select> -->
 
 
             <!-- 其他类型 -->
             <!-- 其他类型 -->
 
 
@@ -487,7 +487,7 @@
           <el-collapse-item title="物料基本信息" name="basic">
           <el-collapse-item title="物料基本信息" name="basic">
             <el-form :inline="true" label-position="right" :model="basicData.value">
             <el-form :inline="true" label-position="right" :model="basicData.value">
             <!-- <el-form-item label="所属组织">
             <!-- <el-form-item label="所属组织">
-                                                                                                                                                                                                                                                                                      <el-input v-model="basicData.value.orgName" placeholder="所属组织"></el-input></el-form-item> -->
+                                                                                                                                                                                                                                                                                                                              <el-input v-model="basicData.value.orgName" placeholder="所属组织"></el-input></el-form-item> -->
               <el-form-item label="物料编码">
               <el-form-item label="物料编码">
                 <el-input v-model="basicData.value.code" size="small" readonly placeholder="物料编码"></el-input>
                 <el-input v-model="basicData.value.code" size="small" readonly placeholder="物料编码"></el-input>
               </el-form-item>
               </el-form-item>
@@ -498,7 +498,7 @@
                 <el-input v-model="basicData.value.enName" size="small" readonly placeholder="英文名称"></el-input>
                 <el-input v-model="basicData.value.enName" size="small" readonly placeholder="英文名称"></el-input>
               </el-form-item>
               </el-form-item>
             <!-- <el-form-item label="版本号">
             <!-- <el-form-item label="版本号">
-                                                                                                                                                                                                                                                                                    <el-input v-model="basicData.value.version"  placeholder="版本号"></el-input></el-form-item> -->
+                                                                                                                                                                                                                                                                                                                            <el-input v-model="basicData.value.version"  placeholder="版本号"></el-input></el-form-item> -->
 
 
             </el-form>
             </el-form>
           </el-collapse-item>
           </el-collapse-item>
@@ -926,6 +926,10 @@ export default {
       console.log(e, '主页签 列表数据选择');
       console.log(e, '主页签 列表数据选择');
       this.mainMsg.checkedList = e;
       this.mainMsg.checkedList = e;
     },
     },
+    // 上传图片
+    handleUpImage() {
+      console.log('上传图片');
+    },
     // 编辑状态下,参照弹窗显示查询数据
     // 编辑状态下,参照弹窗显示查询数据
     handleQueryMore(msg, val, target) {
     handleQueryMore(msg, val, target) {
       this.MoreDataDialog.loading = true;
       this.MoreDataDialog.loading = true;
@@ -1008,7 +1012,10 @@ export default {
         if (code == 200) {
         if (code == 200) {
 
 
           _this.basicData.value = data.data;
           _this.basicData.value = data.data;
-          // this.basicData.form = data.form;
+
+          for (const key in data.data) {
+            _this.basicData.value[key] = (typeof data.data[key] === 'number') ? String(data.data[key]) : data.data[key];
+          }
 
 
           // _this.handleAddReferLabel('basicData');
           // _this.handleAddReferLabel('basicData');
 
 

+ 32 - 8
src/views/material/basicFile/index.vue

@@ -26,7 +26,7 @@
               <el-dropdown-item :command="filterCondition('stop')">显示停用</el-dropdown-item>
               <el-dropdown-item :command="filterCondition('stop')">显示停用</el-dropdown-item>
               <el-dropdown-item :command="filterCondition('allot')">显示已分配</el-dropdown-item>
               <el-dropdown-item :command="filterCondition('allot')">显示已分配</el-dropdown-item>
             </el-dropdown-menu>
             </el-dropdown-menu>
-                                                                    </el-dropdown> -->
+                                                                                                                                    </el-dropdown> -->
 
 
           <!-- <el-button size="small" @click="handleQuery">查询</el-button> -->
           <!-- <el-button size="small" @click="handleQuery">查询</el-button> -->
           <el-button size="small" @click="handleRefresh">刷新</el-button>
           <el-button size="small" @click="handleRefresh">刷新</el-button>
@@ -45,14 +45,14 @@
             </el-dropdown-menu>
             </el-dropdown-menu>
           </el-dropdown>
           </el-dropdown>
         </el-button-group>
         </el-button-group>
-                                                                </el-col> -->
+                                                                                                                                </el-col> -->
 
 
       <!-- 申请单查询 -->
       <!-- 申请单查询 -->
     <!-- <el-col :span="1.5">
     <!-- <el-col :span="1.5">
         <el-button-group>
         <el-button-group>
           <el-button size="small" @click="handleQueryForm">申请单查询</el-button>
           <el-button size="small" @click="handleQueryForm">申请单查询</el-button>
         </el-button-group>
         </el-button-group>
-                                                                </el-col> -->
+                                                                                                                                </el-col> -->
 
 
       <!-- 导入导出 -->
       <!-- 导入导出 -->
       <el-col :span="1.5">
       <el-col :span="1.5">
@@ -62,8 +62,8 @@
         </el-button-group>
         </el-button-group>
       </el-col>
       </el-col>
 
 
+      <!-- 查询框 -->
       <el-col :span="1.5">
       <el-col :span="1.5">
-        <!-- 查询框 -->
         <el-form :inline="true" :model="queryForm" class="mb-query" @submit.native.prevent>
         <el-form :inline="true" :model="queryForm" class="mb-query" @submit.native.prevent>
           <el-form-item label="物料名称">
           <el-form-item label="物料名称">
             <el-input size="small" v-model="queryForm.name" placeholder="物料名称" clearable></el-input>
             <el-input size="small" v-model="queryForm.name" placeholder="物料名称" clearable></el-input>
@@ -146,6 +146,7 @@ export default {
       // 查询表单字段
       // 查询表单字段
       queryForm: {
       queryForm: {
         name: '',
         name: '',
+        code: ''
       },
       },
       // 总条数
       // 总条数
       total: 1,
       total: 1,
@@ -240,7 +241,7 @@ export default {
     handleQuery() {
     handleQuery() {
 
 
       console.log('查询');
       console.log('查询');
-      this.getMaterialList('material', this.queryForm);
+      this.getMaterialList('material');
     },
     },
     // 刷新
     // 刷新
     handleRefresh() {
     handleRefresh() {
@@ -381,7 +382,7 @@ export default {
 
 
       let param = {
       let param = {
         templateCode,
         templateCode,
-        ...query
+        ...this.queryForm
       }
       }
       console.log(param, 'param');
       console.log(param, 'param');
       materialApi.materialList(param, page).then((res) => {
       materialApi.materialList(param, page).then((res) => {
@@ -412,9 +413,32 @@ export default {
 
 
   },
   },
   created() {
   created() {
-    this.getMaterialList('material');
-    this.getTagList('material');
+    // this.getMaterialList('material');
+    // this.getTagList('material');
+  },
+  beforeRouteEnter(to, from, next) {
+    console.log(to, 'to', from, 'beforeRouteEnter');
+
+    next((vm) => {
+      if (from.name == 'materialDetail') {
+        // this.$store.getQuery(this.queryForm);
+        console.log(vm, 'queryValue', vm.$store);
+        vm.queryForm = vm.$store.state.query.queryVlue;
+      }
+      vm.getTagList('material');
+      vm.getMaterialList('material');
+    });
   },
   },
+  // 进入详情,保留查询条件
+  beforeRouteLeave(to, from, next) {
+    console.log(to, 'to', from, 'beforeRouteLeave');
+    if (to.name == 'materialDetail') {
+      this.$store.commit('SET_QUERY', this.queryForm);
+    } else {
+      this.$store.commit('SET_QUERY', { name: '', code: '' });
+    }
+    next();
+  }
 
 
 };
 };
 </script>
 </script>