Преглед изворни кода

Merge branch 'master' of http://47.92.161.104:10080/shuzhan/shinestar-portal

xiao547607 пре 4 година
родитељ
комит
b15b45e5f7

+ 8 - 1
src/api/base/canteenDeviceRelation.js

@@ -45,8 +45,15 @@ function isUnbindDeviceList(formData) {
     return request.post(constant.serverUrl + "/base/canteenDeviceRelation/isUnbindDeviceList", formData);
 }
 
+function unbindDevice(formModel) {
+  return request.post(constant.serverUrl + "/base/canteenDeviceRelation/unbindDevice", formModel, {
+    headers: {
+      "Content-Type": "application/json"
+    }
+  });
+}
 
 
 export default {
-  create, edit, add, update, remove, batchRemove, pageList,isUnbindDeviceList
+  create, edit, add, update, remove, batchRemove, pageList,isUnbindDeviceList,unbindDevice
 }

+ 6 - 1
src/api/base/canteenInfo.js

@@ -46,6 +46,11 @@ function getTableHead() {
 }
 
 
+function getEditHead() {
+  return request.post(constant.serverUrl + "/base/canteenInfo/getEditHead");
+}
+
+
 export default {
-  create, edit, add, update, remove, batchRemove, pageList,getTableHead
+  create, edit, add, update, remove, batchRemove, pageList,getTableHead,getEditHead
 }

+ 7 - 3
src/views/base/canteenDeviceRelation-list.vue

@@ -69,9 +69,9 @@
             <span v-if="row.isBind == 0">
               <el-button size="mini" type="success" @click="handleBound(row)">关联设备</el-button>
             </span>
-            <!-- <span v-else>
+            <span v-else>
               <el-button size="mini" type="danger" @click="handleDelete(row)">解除关联</el-button>
-            </span>-->
+            </span>
           </template>
         </el-table-column>
       </el-table>
@@ -197,7 +197,11 @@ export default {
         .then(() => {
           self.loading = true;
 
-          canteenDeviceRelationApi.remove(record.id).then(function(response) {
+          self.formModel.canteenId = self.canteenId;
+          self.formModel.deviceId = record.id;
+          self.formModel.isWrite = true;
+
+          canteenDeviceRelationApi.unbindDevice(self.formModel).then(function(response) {
             var jsonData = response.data;
             self.loading = false;
             if (jsonData.result) {

+ 95 - 39
src/views/base/canteenInfo-detail.vue

@@ -15,17 +15,18 @@
     width="35%"
   >
     <div class="user-panel" v-loading="loading">
-      <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'100px'">
-        <el-form-item label="食堂名称" prop="name" style="width:450px">
+      <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'120px'">
+        <el-form-item label="食堂名称" prop="name" style="width:470px">
             <el-input v-model="formModel.name" placeholder="请输入食堂名称" ></el-input>
         </el-form-item>
-        <el-form-item label="地点" prop="address" style="width:450px">
+        <el-form-item label="地点" prop="address" style="width:470px">
             <el-input v-model="formModel.address" placeholder="请输入地点" ></el-input>
         </el-form-item>
-        <el-form-item label="午餐时间" prop="lunchTimeRange">
+
+        <el-form-item label="早餐时间" prop="diningTimeRange1">
               <el-time-picker
                 is-range
-                v-model="formModel.lunchTimeRange"
+                v-model="formModel.diningTimeRange1"
                 range-separator="至"
                 start-placeholder="开始时间"
                 end-placeholder="结束时间"
@@ -35,13 +36,13 @@
                 >
             </el-time-picker>
         </el-form-item>
-        <el-form-item label="午餐金额" prop="lunchFee" style="width:450px">
-            <el-input type="number" v-model="formModel.lunchFee"></el-input>
+        <el-form-item label="早餐金额(元)" prop="outsourcerDiningFee1" style="width:450px">
+            <el-input type="number" v-model="formModel.outsourcerDiningFee1"></el-input>
         </el-form-item>
-        <el-form-item label="晚餐时间" prop="dinnerTimeRange">
+        <el-form-item label="午餐时间" prop="diningTimeRange2">
               <el-time-picker
                 is-range
-                v-model="formModel.dinnerTimeRange"
+                v-model="formModel.diningTimeRange2"
                 range-separator="至"
                 start-placeholder="开始时间"
                 end-placeholder="结束时间"
@@ -51,13 +52,13 @@
                 >
             </el-time-picker>
         </el-form-item>
-        <el-form-item label="晚餐金额" prop="dinnerFee" style="width:450px">
-            <el-input type="number" v-model="formModel.dinnerFee"></el-input>
-        </el-form-item> 
-        <el-form-item label="宵夜时间" prop="midnightTimeRange">
+        <el-form-item label="午餐金额(元)" prop="outsourcerDiningFee2" style="width:450px">
+            <el-input type="number" v-model="formModel.outsourcerDiningFee2"></el-input>
+        </el-form-item>
+        <el-form-item label="晚餐时间" prop="diningTimeRange3">
               <el-time-picker
                 is-range
-                v-model="formModel.midnightTimeRange"
+                v-model="formModel.diningTimeRange3"
                 range-separator="至"
                 start-placeholder="开始时间"
                 end-placeholder="结束时间"
@@ -67,9 +68,25 @@
                 >
             </el-time-picker>
         </el-form-item>
-        <el-form-item label="宵夜金额" prop="midnightFee" style="width:450px">
-            <el-input type="number" v-model="formModel.midnightFee"></el-input>
+        <el-form-item label="晚餐金额(元)" prop="outsourcerDiningFee3" style="width:450px">
+            <el-input type="number" v-model="formModel.outsourcerDiningFee3"></el-input>
         </el-form-item> 
+        <el-form-item label="宵夜时间" prop="diningTimeRange4">
+              <el-time-picker
+                is-range
+                v-model="formModel.diningTimeRange4"
+                range-separator="至"
+                start-placeholder="开始时间"
+                end-placeholder="结束时间"
+                placeholder="选择时间范围"
+                format='HH:mm'
+                value-format="HH:mm"
+                >
+            </el-time-picker>
+        </el-form-item>
+        <el-form-item label="宵夜金额(元)" prop="outsourcerDiningFee4" style="width:450px">
+            <el-input type="number" v-model="formModel.outsourcerDiningFee4"></el-input>
+        </el-form-item>
         
       </el-form>
     </div>
@@ -98,6 +115,7 @@ export default {
       submitting: false,
       canQuery: true,
       treeData: [],
+      editHeadList:[],
       props: {
         // 配置项(必选)
         value: "id",
@@ -107,6 +125,10 @@ export default {
     };
   },
   created() {
+      canteenInfoApi.getEditHead().then(response => {
+          var jsonData = response.data;
+          this.editHeadList = jsonData.data;
+      });
   },
   methods: {
     closeDialog() {
@@ -122,20 +144,24 @@ export default {
 
             self.loading = true;
 
-            if(self.formModel.lunchTimeRange!=null){
-                var lunchTimeRange = self.formModel.lunchTimeRange.toString();
-                self.formModel.lunchTimeRange = lunchTimeRange;
+            if(self.formModel.diningTimeRange1!=null){
+                var diningTimeRange1 = self.formModel.diningTimeRange1.toString();
+                self.formModel.diningTimeRange1 = diningTimeRange1;
             }
 
-            if(self.formModel.dinnerTimeRange!=null){
-                var dinnerTimeRange = self.formModel.dinnerTimeRange.toString();
-                self.formModel.dinnerTimeRange = dinnerTimeRange;
+            if(self.formModel.diningTimeRange2!=null){
+                var diningTimeRange2 = self.formModel.diningTimeRange2.toString();
+                self.formModel.diningTimeRange2 = diningTimeRange2;
             }
 
+            if(self.formModel.diningTimeRange3!=null){
+                var diningTimeRange3 = self.formModel.diningTimeRange3.toString();
+                self.formModel.diningTimeRange3 = diningTimeRange3;
+            }
 
-            if(self.formModel.midnightTimeRange!=null){
-                var midnightTimeRange = self.formModel.midnightTimeRange.toString();
-                self.formModel.midnightTimeRange = midnightTimeRange;
+            if(self.formModel.diningTimeRange4!=null){
+                var diningTimeRange4 = self.formModel.diningTimeRange4.toString();
+                self.formModel.diningTimeRange4 = diningTimeRange4;
             }
 
 
@@ -186,22 +212,52 @@ export default {
         if (jsonData.result) {
             self.formModel = jsonData.data;
 
-            if(jsonData.data.lunchTimeRange!=null){
-                var lunchTimeRange = jsonData.data.lunchTimeRange;
-                var lunchTimeArray = lunchTimeRange.split(",");
-                self.formModel.lunchTimeRange = lunchTimeArray;
-            }
+            self.canteenDiningList = jsonData.data.canteenDiningList;
 
-            if(jsonData.data.dinnerTimeRange!=null){
-                var dinnerTimeRange = jsonData.data.dinnerTimeRange;
-                var dinnerTimeArray = dinnerTimeRange.split(",");
-                self.formModel.dinnerTimeRange = dinnerTimeArray;
-            }
 
-            if(jsonData.data.midnightTimeRange!=null){
-                var midnightTimeRange = jsonData.data.midnightTimeRange;
-                var midnightTimeArray = midnightTimeRange.split(",");
-                self.formModel.midnightTimeRange = midnightTimeArray;
+            if(self.formModel.canteenDiningObjMap!=null){
+
+              if(self.formModel.canteenDiningObjMap["diningTimeRange1"]!=null){
+                  var diningTimeRange1 = self.formModel.canteenDiningObjMap["diningTimeRange1"]
+
+                  var diningTimeRangeArray1 = diningTimeRange1.split(",");
+                  self.formModel.diningTimeRange1 = diningTimeRangeArray1;
+
+              }
+
+              if(self.formModel.canteenDiningObjMap["diningTimeRange2"]!=null){
+                  var diningTimeRange2 = self.formModel.canteenDiningObjMap["diningTimeRange2"];
+                  var diningTimeRangeArray2 = diningTimeRange2.split(",");
+                  self.formModel.diningTimeRange2 = diningTimeRangeArray2;
+              }
+
+              if(self.formModel.canteenDiningObjMap["diningTimeRange3"]!=null){
+                  var dinnerTimeRange3 = self.formModel.canteenDiningObjMap["diningTimeRange3"];
+                  var dinnerTimeRangeArray3 = dinnerTimeRange3.split(",");
+                  self.formModel.diningTimeRange3 = dinnerTimeRangeArray3;
+              }
+
+              if(self.formModel.canteenDiningObjMap["diningTimeRange4"]!=null){
+                  var dinnerTimeRange4 =self.formModel.canteenDiningObjMap["diningTimeRange4"];
+                  var dinnerTimeRangeArray4 = dinnerTimeRange4.split(",");
+                  self.formModel.diningTimeRange4 = dinnerTimeRangeArray4;
+              }
+
+              if(self.formModel.canteenDiningObjMap["outsourcerDiningFee1"]!=null){
+                  self.formModel.outsourcerDiningFee1 = self.formModel.canteenDiningObjMap["outsourcerDiningFee1"]
+              }
+
+              if(self.formModel.canteenDiningObjMap["outsourcerDiningFee2"]!=null){
+                self.formModel.outsourcerDiningFee2 = self.formModel.canteenDiningObjMap["outsourcerDiningFee2"]
+              }
+
+              if(self.formModel.canteenDiningObjMap["outsourcerDiningFee3"]!=null){
+                self.formModel.outsourcerDiningFee3 = self.formModel.canteenDiningObjMap["outsourcerDiningFee3"]
+              }
+
+              if(self.formModel.canteenDiningObjMap["outsourcerDiningFee4"]!=null){
+                self.formModel.outsourcerDiningFee4 = self.formModel.canteenDiningObjMap["outsourcerDiningFee4"]
+              }
             }
 
         } else {

+ 29 - 19
src/views/base/canteenInfo-list.vue

@@ -60,20 +60,28 @@
       <el-table-column type="index" label="序号" :index="indexMethod" width="50"></el-table-column>
       <el-table-column prop="name" label="食堂名称" width="150"></el-table-column>
       <el-table-column prop="address" label="地点" width="200"></el-table-column>
-      <template v-for="item in tableHeadList">
+      <template v-for="head in tableHeadList">
         <el-table-column
-          :label="item.col + ''"
-          :prop="item.prop + ''"
-          :key="item.prop + ''"
-          width="150px"
+          :label="head.col + ''"
+          :prop="head.prop + ''"
+          :key="head.prop + ''"
+          width="130px"
         >
+          <template slot-scope="{ row }">
+            <div style="display: flex; flex-direction: column">
+              <template v-for="(item, index) in row.canteenDiningMap[head.prop]">
+                <div
+                  v-html="showItem(item)"
+                  :key="index"
+                  style="white-space: pre-wrap; cursor: pointer"
+                ></div>
+              </template>
+            </div>
+          </template>
+
         </el-table-column>
       </template>
 
-
-
-      
-
       <!-- <el-table-column prop="lunchTimeRange" label="午餐时间" width="120"></el-table-column>
       <el-table-column prop="lunchFee" label="午餐金额(元)" width="120" ></el-table-column>
       <el-table-column prop="dinnerTimeRange" label="晚餐时间"  width="120"></el-table-column>
@@ -194,6 +202,13 @@ export default {
     indexMethod(index) {
       return (this.pageIndex - 1) * this.pageSize + (index + 1);
     },
+    showItem(item) {
+      var str = item;
+      if (item == null || item == "") {
+        str = "无";
+      }
+      return str;
+    },
     changePage(pageIndex) {
       var self = this;
 
@@ -213,17 +228,12 @@ export default {
         .then(function(response) {
           self.loading = false;
           var jsonData = response.data;
-          
-          if(jsonData.result) {
-              var page = jsonData.data;
 
-              self.tableData = page.data;
-              self.totalPages = page.totalPages;
-              self.totalElements = page.recordsTotal;
-          }
-          else{
-            self.$message.warning(jsonData.message + "");
-          }
+          self.tableData = jsonData.canteenInfoList;
+          self.totalPages = jsonData.totalPage;
+          self.totalElements = jsonData.recordsTotal;
+
+
         })
         .catch(error => {
           self.loading = false;

+ 9 - 3
src/views/base/deviceInfo-detail.vue

@@ -6,17 +6,19 @@
 </style>
 <template>
   <el-dialog
+    top="5vh"
     :visible.sync="showDialog"
     :title="title"
     :modal-append-to-body="false"
     style="text-align:left;"
+    width="800px"
     @close="closeDialog"
     :close-on-click-modal="false"
   >
     <div class="user-panel" v-loading="loading">
       <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'100px'">
         <el-row>
-          <el-col :span="12">
+          <el-col :span="24">
             <el-form-item label="单位" prop="companyId">
               <!-- <el-select
                 v-model="formModel.companyId"
@@ -35,7 +37,7 @@
                 :props="props"
                 :options="companyResult"
                 v-model="formModel.companyId"
-                height="200"
+                width="350px"
               ></el-select-tree>&nbsp;
             </el-form-item>
           </el-col>
@@ -132,7 +134,8 @@
         <el-row>
           <el-col :span="24">
             <el-form-item label="设备用途" prop="sceneArray">
-              <el-select v-model="formModel.sceneArray" multiple  placeholder="请选择"  style="width:595px" @change="$forceUpdate()">
+              <el-select v-model="formModel.sceneArray" multiple  placeholder="请选择"  
+              style="width:350px" @change="$forceUpdate()">
                   <el-option
                   v-for="item in sceneList"
                   :key="item.value"
@@ -353,6 +356,9 @@ export default {
             if(self.formModel.sceneArray!=null&&self.formModel.sceneArray.length>0){
               self.formModel.scene = self.formModel.sceneArray.splice(",").toString();
             }
+            else{
+              self.formModel.scene = "";
+            }
 
             // if (self.formModel.companyId == null) {
             //   self.formModel.companyId = "";