Sfoglia il codice sorgente

修改食物列表,增加手工同步入口

sh 4 anni fa
parent
commit
d74e57918d
1 ha cambiato i file con 28 aggiunte e 3 eliminazioni
  1. 28 3
      src/views/food/index.vue

+ 28 - 3
src/views/food/index.vue

@@ -22,6 +22,11 @@
           <el-option v-for="item in sortOptions" :key="item.key" :label="item.label" :value="item.key" />
         </el-select>
 
+        <span style="color:gray;font-size:14px;margin-left:15px;">营养物语环境</span>
+        <el-select v-model="yywyEnv" style="width:100px;margin-left:10px;" class="filter-item" placeholder="营养物语环境">
+          <el-option v-for="item in sortOptions" :key="item.key" :label="item.label" :value="item.key" />
+        </el-select>
+
         <el-button
           class="filter-item"
           style="float: right;"
@@ -54,9 +59,11 @@
       @row-dblclick="handleFoodClick"
     >
       <el-table-column type="index" label="序号" align="center" fixed width="60px" />
-      <el-table-column label="名称" align="center" fixed width="200px">
+      <el-table-column label="名称" fixed width="200px">
         <template slot-scope="{row}">
           <span>{{ row.name }}</span>
+          <br>
+          <el-button size="mini" @click="toYYWY(row)">同步至营养物语</el-button>
         </template>
       </el-table-column>
       <el-table-column label="图片" align="center" width="180">
@@ -252,7 +259,8 @@ export default {
         { 'label': 'CFCT', 'value': 'CFCT' }, { 'label': 'Foundation', 'value': 'USDA_FOUNDATION' },
         { 'label': 'SR Legacy', 'value': 'USDA_SR_LEGACY' }, { 'label': 'Branded', 'value': 'USDA_BRANDED' },
         { 'label': 'FNDDS', 'value': 'USDA_FNDDS' }],
-      selectType: ''
+      selectType: '',
+      yywyEnv: 'dev'
     }
   },
   created() {
@@ -290,11 +298,28 @@ export default {
         }
       }
       getList(this.listQuery).then(response => {
-        this.list = response.data.list
+        this.list = response.data.list.map(v => {
+          v._to_yywy = false
+          return v
+        })
         this.total = response.data.count
         this.listLoading = false
       })
     },
+    toYYWY(row) {
+      row._to_yywy = true
+      const headers = {
+        headers: { 'Authorization': getToken() },
+        timeout: 1000 * 60 * 3
+      }
+      axios.post(`/api/foods/${row.id}/to-yywy?env=${this.yywyEnv}`, {}, headers).then(res => {
+        console.log(res)
+        this.$notify.success('同步成功:' + JSON.stringify(res))
+      }).catch(res => {
+        this.$message.error(res.response.data.message)
+        row._to_yywy = false
+      })
+    },
     handleCreate() {
       this.$router.push({ path: '/food/create' })
     },