Przeglądaj źródła

模板营养素支持上移下移

wangyang 5 lat temu
rodzic
commit
a8794640c9

+ 9 - 0
src/api/nutrientTemplate.js

@@ -61,6 +61,15 @@ export function updateTemplateNutrient(id, nutrientId, data) {
   })
 }
 
+// 更新模板管理的营养素的排序
+export function updateTemplateNutrientSort(id, nutrientId, data) {
+  return request({
+    url: `/api/nutrient-templates/${id}/nutrients/${nutrientId}/sorts`,
+    method: 'post',
+    data
+  })
+}
+
 // 上移下移
 export function updateSort(id, data) {
   return request({

+ 22 - 20
src/views/food/nutrient.vue

@@ -98,26 +98,28 @@
       </el-table-column>
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="160">
         <template slot-scope="{row}">
-          <el-button
-            v-if="row.edit"
-            type="success"
-            size="mini"
-            @click="confirmEdit(row)"
-          >
-            提交
-          </el-button>
-          <el-button v-else size="mini" type="primary" @click="row.edit=true">编辑</el-button>
-          <el-button
-            v-if="row.edit"
-            type="danger"
-            size="mini"
-            @click="fetchData"
-          >
-            取消
-          </el-button>
-          <el-button v-else size="mini" type="danger" @click="removeNutrient(row)">
-            删除
-          </el-button>
+          <template v-if="row.edit">
+            <el-button
+              type="success"
+              size="mini"
+              @click="confirmEdit(row)"
+            >
+              提交
+            </el-button>
+            <el-button
+              type="danger"
+              size="mini"
+              @click="fetchData"
+            >
+              取消
+            </el-button>
+          </template>
+          <template v-else>
+            <el-button size="mini" type="primary" @click="row.edit=true">编辑</el-button>
+            <el-button size="mini" type="danger" @click="removeNutrient(row)">
+              删除
+            </el-button>
+          </template>
         </template>
       </el-table-column>
     </el-table>

+ 39 - 30
src/views/nutrientTemplate/detail.vue

@@ -96,28 +96,36 @@
             <span v-else>{{ row.nvSpecUnit }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="160px">
+        <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="320px">
           <template slot-scope="{row}">
-            <el-button
-              v-if="row.edit"
-              type="success"
-              size="mini"
-              @click="confirmEdit(row)"
-            >
-              提交
-            </el-button>
-            <el-button v-else size="mini" type="primary" @click="row.edit=true">编辑</el-button>
-            <el-button
-              v-if="row.edit"
-              type="danger"
-              size="mini"
-              @click="fetchNutrients"
-            >
-              取消
-            </el-button>
-            <el-button v-else size="mini" type="danger" @click="removeNutrient(row)">
-              删除
-            </el-button>
+            <template v-if="row.edit">
+              <el-button
+                type="success"
+                size="mini"
+                @click="confirmEdit(row)"
+              >
+                提交
+              </el-button>
+              <el-button
+                type="danger"
+                size="mini"
+                @click="fetchNutrients"
+              >
+                取消
+              </el-button>
+            </template>
+            <template v-else>
+              <el-button size="mini" type="primary" @click="row.edit=true">编辑</el-button>
+              <el-button type="primary" size="mini" @click="updateSort(row, 0)">
+                上移
+              </el-button>
+              <el-button type="primary" size="mini" @click="updateSort(row, 1)">
+                下移
+              </el-button>
+              <el-button size="mini" type="danger" @click="removeNutrient(row)">
+                删除
+              </el-button>
+            </template>
           </template>
         </el-table-column>
       </el-table>
@@ -128,7 +136,8 @@
 <script>
 import { getList } from '@/api/nutrient'
 import { getList as getUnits } from '@/api/unit'
-import { getNutrients, addTemplateNutrient, updateTemplateNutrient, removeNutrient } from '@/api/nutrientTemplate'
+import { getNutrients, addTemplateNutrient, updateTemplateNutrient, removeNutrient,
+  updateTemplateNutrientSort } from '@/api/nutrientTemplate'
 
 export default {
   name: 'Detail',
@@ -183,14 +192,14 @@ export default {
         this.$message.error(res.data.message)
       })
     },
-    cancelEdit(row) {
-      this.$set(row, 'edit', null)
-      console.log(row)
-      if (row.edit){
-        console.log('1111111')
-      } else {
-        console.log('2222222222')
-      }
+    updateSort(row, type) {
+      updateTemplateNutrientSort(this.templateId, row.nutrientId, { type }).then(res => {
+        this.fetchNutrients()
+        this.$notify.success('提交成功')
+      }).catch(res => {
+        this.fetchNutrients()
+        this.$message.error(res.data.message)
+      })
     },
     queryNutrients(query) {
       getList({ query }).then(res => {