Browse Source

Merge branch 'dev' of http://git.ycjcjy.com/SpaceOfCheng/admin into dev

yuantianjiao 6 years ago
parent
commit
c262614469
28 changed files with 200 additions and 121 deletions
  1. 1
    1
      dist/index.html
  2. 1
    1
      dist/static/js/manifest.3ad1d5771e9b13dbdad2.js.map
  3. 67
    28
      src/pages/system/cardAndCouponManager/cardManager/edit.vue
  4. 3
    3
      src/pages/system/cardAndCouponManager/cardManager/index.vue
  5. 24
    16
      src/pages/system/cardAndCouponManager/couponManager/edit.vue
  6. 0
    11
      src/pages/system/cardAndCouponManager/couponManager/index.vue
  7. 3
    3
      src/pages/system/cardAndCouponManager/vipManager/index.vue
  8. 3
    3
      src/pages/system/caseManager/caseAreaManager/index.vue
  9. 3
    3
      src/pages/system/caseManager/caseTableManager/index.vue
  10. 3
    3
      src/pages/system/caseManager/deviceManager/index.vue
  11. 3
    3
      src/pages/system/caseManager/signinManager/index.vue
  12. 3
    3
      src/pages/system/caseManager/tagManager/index.vue
  13. 3
    3
      src/pages/system/channelManager/channelList/index.vue
  14. 1
    3
      src/pages/system/cmsManager/indexMsg/add.vue
  15. 1
    3
      src/pages/system/cmsManager/indexMsg/edit.vue
  16. 3
    3
      src/pages/system/cmsManager/majorProjects/index.vue
  17. 3
    3
      src/pages/system/cmsManager/newsManager/edit.vue
  18. 3
    3
      src/pages/system/courseManager/courseList/index.vue
  19. 2
    2
      src/pages/system/dashboard/index.vue
  20. 5
    5
      src/pages/system/goodsManager/goodManager/index.vue
  21. 3
    3
      src/pages/system/goodsManager/goodsSpecManager/index.vue
  22. 3
    3
      src/pages/system/goodsManager/goodsTypeManager/index.vue
  23. 3
    3
      src/pages/system/healthManager/healthRecord/index.vue
  24. 3
    3
      src/pages/system/newOrder/caseRecord/index.vue
  25. 3
    3
      src/pages/system/systemSet/userManager/index.vue
  26. 17
    0
      src/pages/system/verificationManager/phoneVerification/index.vue
  27. 29
    1
      src/pages/system/verificationManager/phoneVerification/page.scss
  28. 4
    2
      src/pages/system/verificationManager/qrcodeVerification/verificationList/index.vue

+ 1
- 1
dist/index.html View File

1
-<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><link rel=stylesheet href=//at.alicdn.com/t/font_775069_dwqa9wy3lkh.css><title>城的空间后台管理系统</title><link href=./static/css/app.9b155962ba58904098ca11335a0765c9.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.3ad1d5771e9b13dbdad2.js></script><script type=text/javascript src=./static/js/vendor.992319e39e0ff64940a3.js></script><script type=text/javascript src=./static/js/app.0619b69720624a18b5d4.js></script></body></html>
1
+<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><link rel=stylesheet href=//at.alicdn.com/t/font_775069_dwqa9wy3lkh.css><title>城的空间后台管理系统</title><link href=./static/css/app.54403e04f718a97af7651aabc1d4f67f.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.3ad1d5771e9b13dbdad2.js></script><script type=text/javascript src=./static/js/vendor.992319e39e0ff64940a3.js></script><script type=text/javascript src=./static/js/app.cc1a29f0698fa69d88b6.js></script></body></html>

+ 1
- 1
dist/static/js/manifest.3ad1d5771e9b13dbdad2.js.map View File

1
-{"version":3,"sources":["webpack:///webpack/bootstrap 4e2b271680c7e58e6944"],"names":["parentJsonpFunction","window","chunkIds","moreModules","executeModules","moduleId","chunkId","result","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","shift","__webpack_require__","s","installedModules","2","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","p","oe","err","console","error"],"mappings":"aACA,IAAAA,EAAAC,OAAA,aACAA,OAAA,sBAAAC,EAAAC,EAAAC,GAIA,IADA,IAAAC,EAAAC,EAAAC,EAAAC,EAAA,EAAAC,KACQD,EAAAN,EAAAQ,OAAoBF,IAC5BF,EAAAJ,EAAAM,GACAG,EAAAL,IACAG,EAAAG,KAAAD,EAAAL,GAAA,IAEAK,EAAAL,GAAA,EAEA,IAAAD,KAAAF,EACAU,OAAAC,UAAAC,eAAAC,KAAAb,EAAAE,KACAY,EAAAZ,GAAAF,EAAAE,IAIA,IADAL,KAAAE,EAAAC,EAAAC,GACAK,EAAAC,QACAD,EAAAS,OAAAT,GAEA,GAAAL,EACA,IAAAI,EAAA,EAAYA,EAAAJ,EAAAM,OAA2BF,IACvCD,EAAAY,IAAAC,EAAAhB,EAAAI,IAGA,OAAAD,GAIA,IAAAc,KAGAV,GACAW,EAAA,GAIA,SAAAH,EAAAd,GAGA,GAAAgB,EAAAhB,GACA,OAAAgB,EAAAhB,GAAAkB,QAGA,IAAAC,EAAAH,EAAAhB,IACAG,EAAAH,EACAoB,GAAA,EACAF,YAUA,OANAN,EAAAZ,GAAAW,KAAAQ,EAAAD,QAAAC,IAAAD,QAAAJ,GAGAK,EAAAC,GAAA,EAGAD,EAAAD,QAKAJ,EAAAO,EAAAT,EAGAE,EAAAQ,EAAAN,EAGAF,EAAAS,EAAA,SAAAL,EAAAM,EAAAC,GACAX,EAAAY,EAAAR,EAAAM,IACAhB,OAAAmB,eAAAT,EAAAM,GACAI,cAAA,EACAC,YAAA,EACAC,IAAAL,KAMAX,EAAAiB,EAAA,SAAAZ,GACA,IAAAM,EAAAN,KAAAa,WACA,WAA2B,OAAAb,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAL,EAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAO,EAAAC,GAAsD,OAAA1B,OAAAC,UAAAC,eAAAC,KAAAsB,EAAAC,IAGtDpB,EAAAqB,EAAA,KAGArB,EAAAsB,GAAA,SAAAC,GAA8D,MAApBC,QAAAC,MAAAF,GAAoBA","file":"static/js/manifest.3ad1d5771e9b13dbdad2.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n \t\tif(executeModules) {\n \t\t\tfor(i=0; i < executeModules.length; i++) {\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = executeModules[i]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"./\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 4e2b271680c7e58e6944"],"sourceRoot":""}
1
+{"version":3,"sources":["webpack:///webpack/bootstrap 478fbc714a626246a25b"],"names":["parentJsonpFunction","window","chunkIds","moreModules","executeModules","moduleId","chunkId","result","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","shift","__webpack_require__","s","installedModules","2","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","p","oe","err","console","error"],"mappings":"aACA,IAAAA,EAAAC,OAAA,aACAA,OAAA,sBAAAC,EAAAC,EAAAC,GAIA,IADA,IAAAC,EAAAC,EAAAC,EAAAC,EAAA,EAAAC,KACQD,EAAAN,EAAAQ,OAAoBF,IAC5BF,EAAAJ,EAAAM,GACAG,EAAAL,IACAG,EAAAG,KAAAD,EAAAL,GAAA,IAEAK,EAAAL,GAAA,EAEA,IAAAD,KAAAF,EACAU,OAAAC,UAAAC,eAAAC,KAAAb,EAAAE,KACAY,EAAAZ,GAAAF,EAAAE,IAIA,IADAL,KAAAE,EAAAC,EAAAC,GACAK,EAAAC,QACAD,EAAAS,OAAAT,GAEA,GAAAL,EACA,IAAAI,EAAA,EAAYA,EAAAJ,EAAAM,OAA2BF,IACvCD,EAAAY,IAAAC,EAAAhB,EAAAI,IAGA,OAAAD,GAIA,IAAAc,KAGAV,GACAW,EAAA,GAIA,SAAAH,EAAAd,GAGA,GAAAgB,EAAAhB,GACA,OAAAgB,EAAAhB,GAAAkB,QAGA,IAAAC,EAAAH,EAAAhB,IACAG,EAAAH,EACAoB,GAAA,EACAF,YAUA,OANAN,EAAAZ,GAAAW,KAAAQ,EAAAD,QAAAC,IAAAD,QAAAJ,GAGAK,EAAAC,GAAA,EAGAD,EAAAD,QAKAJ,EAAAO,EAAAT,EAGAE,EAAAQ,EAAAN,EAGAF,EAAAS,EAAA,SAAAL,EAAAM,EAAAC,GACAX,EAAAY,EAAAR,EAAAM,IACAhB,OAAAmB,eAAAT,EAAAM,GACAI,cAAA,EACAC,YAAA,EACAC,IAAAL,KAMAX,EAAAiB,EAAA,SAAAZ,GACA,IAAAM,EAAAN,KAAAa,WACA,WAA2B,OAAAb,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAL,EAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAO,EAAAC,GAAsD,OAAA1B,OAAAC,UAAAC,eAAAC,KAAAsB,EAAAC,IAGtDpB,EAAAqB,EAAA,KAGArB,EAAAsB,GAAA,SAAAC,GAA8D,MAApBC,QAAAC,MAAAF,GAAoBA","file":"static/js/manifest.3ad1d5771e9b13dbdad2.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n \t\tif(executeModules) {\n \t\t\tfor(i=0; i < executeModules.length; i++) {\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = executeModules[i]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"./\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 478fbc714a626246a25b"],"sourceRoot":""}

+ 67
- 28
src/pages/system/cardAndCouponManager/cardManager/edit.vue View File

6
           <span>选择案场:<em>*</em></span>
6
           <span>选择案场:<em>*</em></span>
7
           <div class="flex-item">
7
           <div class="flex-item">
8
             <div style="width:50%">
8
             <div style="width:50%">
9
-              <el-select v-model="cardInfo.CaseId" placeholder="请选择" @change="caseChange">
9
+              <el-select v-model="cardInfo.CaseId" placeholder="请选择" @change="caseChange" :disabled="isEdit">
10
                 <el-option
10
                 <el-option
11
                   v-for="item in cases"
11
                   v-for="item in cases"
12
                   :key="item.CaseId"
12
                   :key="item.CaseId"
22
           <div class="flex-item">
22
           <div class="flex-item">
23
             <div>
23
             <div>
24
               <el-upload
24
               <el-upload
25
+                :disabled="isEdit"
25
                 class="avatar-uploader"
26
                 class="avatar-uploader"
26
                 action='string'
27
                 action='string'
27
                 :http-request="toolClass.upload"
28
                 :http-request="toolClass.upload"
50
           <div class="flex-item">
51
           <div class="flex-item">
51
             <div style="width:200px;">
52
             <div style="width:200px;">
52
               <el-input
53
               <el-input
54
+                :disabled="isEdit"
53
                 placeholder="请输入"
55
                 placeholder="请输入"
54
                 v-model="cardInfo.Price"
56
                 v-model="cardInfo.Price"
55
                 clearable>
57
                 clearable>
62
           <div class="flex-item">
64
           <div class="flex-item">
63
             <div style="width:200px;">
65
             <div style="width:200px;">
64
               <el-input
66
               <el-input
67
+                :disabled="isEdit"
65
                 placeholder="请输入"
68
                 placeholder="请输入"
66
                 v-model="cardInfo.TotalCount"
69
                 v-model="cardInfo.TotalCount"
67
                 clearable>
70
                 clearable>
73
           <span>发送类型:<em>*</em></span>
76
           <span>发送类型:<em>*</em></span>
74
           <div class="flex-item">
77
           <div class="flex-item">
75
             <div>
78
             <div>
76
-              <el-radio v-model="cardInfo.SendType" label="channel">渠道</el-radio>
77
-              <el-radio v-model="cardInfo.SendType" label="case">案场</el-radio>
78
-              <el-radio v-model="cardInfo.SendType" label="system">系统</el-radio>
79
+              <el-radio v-model="cardInfo.SendType" label="channel" :disabled="isEdit">渠道</el-radio>
80
+              <el-radio v-model="cardInfo.SendType" label="case" :disabled="isEdit">案场</el-radio>
81
+              <el-radio v-model="cardInfo.SendType" label="system" :disabled="isEdit">系统</el-radio>
79
             </div>
82
             </div>
80
           </div>
83
           </div>
81
         </li>
84
         </li>
83
           <span>选择渠道:<em>*</em></span>
86
           <span>选择渠道:<em>*</em></span>
84
           <div class="flex-item">
87
           <div class="flex-item">
85
             <div style="width:50%">
88
             <div style="width:50%">
86
-              <el-select v-model="cardInfo.ChannelId" placeholder="请选择">
89
+              <el-select v-model="cardInfo.ChannelId" placeholder="请选择" :disabled="isEdit">
87
                 <el-option
90
                 <el-option
88
                   v-for="item in channelList"
91
                   v-for="item in channelList"
89
                   :key="item.ChannelId"
92
                   :key="item.ChannelId"
98
           <span>目标课程:<em>*</em></span>
101
           <span>目标课程:<em>*</em></span>
99
           <div class="flex-item">
102
           <div class="flex-item">
100
             <div>
103
             <div>
101
-              <el-select v-model="cardInfo.Targets[0].TargetId" placeholder="请选择">
104
+              <el-select v-model="cardInfo.Targets[0].TargetId" placeholder="请选择" :disabled="isEdit">
102
                 <el-option
105
                 <el-option
103
                   v-for="item in courseList"
106
                   v-for="item in courseList"
104
                   :key="item.CourseId"
107
                   :key="item.CourseId"
115
           <div class="flex-item">
118
           <div class="flex-item">
116
             <div>
119
             <div>
117
               <div class="addLine flex-h" style="align-item:center;margin-bottom:20px;">
120
               <div class="addLine flex-h" style="align-item:center;margin-bottom:20px;">
118
-                <el-date-picker
121
+                <!-- <el-date-picker
122
+                  :disabled="isEdit"
119
                   v-model="date"
123
                   v-model="date"
120
                   type="daterange"
124
                   type="daterange"
121
                   range-separator="至"
125
                   range-separator="至"
122
                   start-placeholder="开始日期"
126
                   start-placeholder="开始日期"
123
                   end-placeholder="结束日期">
127
                   end-placeholder="结束日期">
128
+                </el-date-picker> -->
129
+                <el-date-picker
130
+                  :disabled="isEdit"
131
+                  v-model="cardInfo.StartDate"
132
+                  type="date"
133
+                  placeholder="选择起始日期">
134
+                </el-date-picker>
135
+                <span style="line-height:40px;">至</span>
136
+                <el-date-picker
137
+                  :disabled="isEdit"
138
+                  v-model="cardInfo.EndDate"
139
+                  type="date"
140
+                  placeholder="选择截止日期">
124
                 </el-date-picker>
141
                 </el-date-picker>
125
               </div>
142
               </div>
126
             </div>
143
             </div>
132
             <div style="vertical-align: middle;">
149
             <div style="vertical-align: middle;">
133
               <a style="line-height: 40px;" v-if="videoOff" :href="cardInfo.VideoUrl" target="blank">{{cardInfo.VideoUrl}}</a>
150
               <a style="line-height: 40px;" v-if="videoOff" :href="cardInfo.VideoUrl" target="blank">{{cardInfo.VideoUrl}}</a>
134
               <el-upload
151
               <el-upload
152
+                :disabled="isEdit"
135
                 class="avatar-uploader"
153
                 class="avatar-uploader"
136
                 action='string'
154
                 action='string'
137
                 :http-request="toolClass.upload"
155
                 :http-request="toolClass.upload"
206
       videoOff: false,
224
       videoOff: false,
207
       total: 0,
225
       total: 0,
208
       type: this.$route.query.type,
226
       type: this.$route.query.type,
209
-      isEdit: this.$route.query.id === undefined ? 0 : 1,
227
+      isEdit: !!this.$route.query.id,
210
       ChannelList: [], // 渠道列表
228
       ChannelList: [], // 渠道列表
211
       TypeList: [], // 类型列表
229
       TypeList: [], // 类型列表
212
       GoodsList: [], // 商品列表
230
       GoodsList: [], // 商品列表
256
             this.getCardById({
274
             this.getCardById({
257
               id: this.$route.query.id
275
               id: this.$route.query.id
258
             }).then((res) => {
276
             }).then((res) => {
259
-              // console.log(JSON.stringify(res.Card))
260
-              this.cardInfo = res.Card
261
-              if (res.Card.VideoUrl) {
262
-                this.videoOff = true
263
-              }
264
-              if (res.Card.Images === null) {
265
-                this.cardInfo.Images = [{
266
-                  CardImageUrl: ''
267
-                }]
268
-              }
269
-              if (res.Card.StartDate) {
270
-                this.date = [res.Card.StartDate, res.Card.EndDate]
277
+              if (res.Card.CaseId !== '') {
278
+                var aRes = res
279
+                this.GetChannelListList({
280
+                  caseid: res.Card.CaseId,
281
+                  page: 1,
282
+                  pagesize: 10000
283
+                }).then((res) => {
284
+                  this.cardInfo = aRes.Card
285
+                  if (aRes.Card.VideoUrl) {
286
+                    this.videoOff = true
287
+                  }
288
+                  if (aRes.Card.Images === null) {
289
+                    this.cardInfo.Images = [{
290
+                      CardImageUrl: ''
291
+                    }]
292
+                  }
293
+                  if (aRes.Card.StartDate) {
294
+                    this.date = [aRes.Card.StartDate, aRes.Card.EndDate]
295
+                  }
296
+                })
297
+              } else {
298
+                this.cardInfo = res.Card
299
+                if (res.Card.VideoUrl) {
300
+                  this.videoOff = true
301
+                }
302
+                if (res.Card.Images === null) {
303
+                  this.cardInfo.Images = [{
304
+                    CardImageUrl: ''
305
+                  }]
306
+                }
307
+                if (res.Card.StartDate) {
308
+                  this.date = [res.Card.StartDate, res.Card.EndDate]
309
+                }
271
               }
310
               }
272
             })
311
             })
273
           }
312
           }
439
     },
478
     },
440
     submit () { // 保存
479
     submit () { // 保存
441
       if (this.$route.query.id) {
480
       if (this.$route.query.id) {
442
-        if (this.date !== '') {
443
-          this.cardInfo.StartDate = this.date[0]
444
-          this.cardInfo.EndDate = this.date[1]
445
-        }
481
+        // if (this.date !== '') {
482
+        //   this.cardInfo.StartDate = this.date[0]
483
+        //   this.cardInfo.EndDate = this.date[1]
484
+        // }
446
         this.courseList = this.courseList || []
485
         this.courseList = this.courseList || []
447
         for (var x = 0; x < this.courseList.length; x++) {
486
         for (var x = 0; x < this.courseList.length; x++) {
448
           if (this.courseList[x].CourseId === this.cardInfo.Targets[0].TargetId) {
487
           if (this.courseList[x].CourseId === this.cardInfo.Targets[0].TargetId) {
463
         })
502
         })
464
       } else {
503
       } else {
465
         this.cardInfo.OrgId = this.OrgId
504
         this.cardInfo.OrgId = this.OrgId
466
-        if (this.date !== '') {
467
-          this.cardInfo.StartDate = this.date[0]
468
-          this.cardInfo.EndDate = this.date[1]
469
-        }
505
+        // if (this.date !== '') {
506
+        //   this.cardInfo.StartDate = this.date[0]
507
+        //   this.cardInfo.EndDate = this.date[1]
508
+        // }
470
         this.courseList = this.courseList || []
509
         this.courseList = this.courseList || []
471
         for (var n = 0; n < this.courseList.length; n++) {
510
         for (var n = 0; n < this.courseList.length; n++) {
472
           if (this.courseList[n].CourseId === this.cardInfo.Targets[0].TargetId) {
511
           if (this.courseList[n].CourseId === this.cardInfo.Targets[0].TargetId) {

+ 3
- 3
src/pages/system/cardAndCouponManager/cardManager/index.vue View File

46
           label="有效期"
46
           label="有效期"
47
           width="150">
47
           width="150">
48
           <template slot-scope="scope">
48
           <template slot-scope="scope">
49
-            <span style="width:100%;display:block;text-align:center;white-space: nowrap;">{{toolClass.dateFormat(scope.row.StartDate)}}</span>
49
+            <span style="width:100%;display:block;text-align:center;white-space: nowrap;">{{toolClass.dateFormat(scope.row.StartDate, 'yyyy-MM-dd')}}</span>
50
             <span style="width:100%;display:block;text-align:center;white-space: nowrap;">至</span>
50
             <span style="width:100%;display:block;text-align:center;white-space: nowrap;">至</span>
51
-            <span style="width:100%;display:block;text-align:center;white-space: nowrap;">{{toolClass.dateFormat(scope.row.EndDate)}}</span>
51
+            <span style="width:100%;display:block;text-align:center;white-space: nowrap;">{{toolClass.dateFormat(scope.row.EndDate, 'yyyy-MM-dd')}}</span>
52
           </template>
52
           </template>
53
         </el-table-column>
53
         </el-table-column>
54
         <el-table-column
54
         <el-table-column
243
         begindate: '',
243
         begindate: '',
244
         enddate: '',
244
         enddate: '',
245
         page: 1, // 当前页码
245
         page: 1, // 当前页码
246
-        pagesize: 10, // 请求数据量
246
+        pagesize: 6, // 请求数据量
247
       },
247
       },
248
       customerList: [],
248
       customerList: [],
249
       centerDialogVisible: false,
249
       centerDialogVisible: false,

+ 24
- 16
src/pages/system/cardAndCouponManager/couponManager/edit.vue View File

7
           <span>选择案场:<em>*</em></span>
7
           <span>选择案场:<em>*</em></span>
8
           <div class="flex-item">
8
           <div class="flex-item">
9
             <div style="width:50%">
9
             <div style="width:50%">
10
-              <el-select v-model="couponInfo.CaseId" placeholder="请选择" @change="caseChange">
10
+              <el-select v-model="couponInfo.CaseId" placeholder="请选择" @change="caseChange" :disabled="isEdit">
11
                 <el-option
11
                 <el-option
12
                   v-for="item in cases"
12
                   v-for="item in cases"
13
                   :key="item.CaseId"
13
                   :key="item.CaseId"
23
           <div class="flex-item">
23
           <div class="flex-item">
24
             <div>
24
             <div>
25
               <el-upload
25
               <el-upload
26
+                :disabled="isEdit"
26
                 class="avatar-uploader"
27
                 class="avatar-uploader"
27
                 action='string'
28
                 action='string'
28
                 :http-request="toolClass.upload"
29
                 :http-request="toolClass.upload"
50
           <span>券类型:<em>*</em></span>
51
           <span>券类型:<em>*</em></span>
51
           <div class="flex-item">
52
           <div class="flex-item">
52
             <div style="width:50%">
53
             <div style="width:50%">
53
-              <el-select v-model="couponInfo.CouponType" placeholder="请选择" @change="couponTypeChange">
54
+              <el-select v-model="couponInfo.CouponType" placeholder="请选择" @change="couponTypeChange" :disabled="isEdit">
54
                 <el-option
55
                 <el-option
55
                   v-for="item in TypeList"
56
                   v-for="item in TypeList"
56
                   :key="item.id"
57
                   :key="item.id"
66
           <div class="flex-item">
67
           <div class="flex-item">
67
             <div style="width:200px;">
68
             <div style="width:200px;">
68
               <el-input
69
               <el-input
70
+                :disabled="isEdit"
69
                 placeholder="请输入"
71
                 placeholder="请输入"
70
                 v-model="couponInfo.Price"
72
                 v-model="couponInfo.Price"
71
                 clearable>
73
                 clearable>
78
           <div class="flex-item">
80
           <div class="flex-item">
79
             <div style="width:200px;">
81
             <div style="width:200px;">
80
               <el-input
82
               <el-input
83
+                :disabled="isEdit"
81
                 placeholder="请输入"
84
                 placeholder="请输入"
82
                 v-model="couponInfo.TotalCount"
85
                 v-model="couponInfo.TotalCount"
83
                 clearable>
86
                 clearable>
89
           <span>发送类型:<em>*</em></span>
92
           <span>发送类型:<em>*</em></span>
90
           <div class="flex-item">
93
           <div class="flex-item">
91
             <div>
94
             <div>
92
-              <el-radio v-model="couponInfo.SendType" label="channel">渠道</el-radio>
93
-              <el-radio v-if="couponInfo.CouponType === 'course'" v-model="couponInfo.SendType" label="case">案场</el-radio>
94
-              <el-radio v-model="couponInfo.SendType" label="system">系统</el-radio>
95
+              <el-radio v-model="couponInfo.SendType" label="channel" :disabled="isEdit">渠道</el-radio>
96
+              <el-radio v-if="couponInfo.CouponType === 'course'" v-model="couponInfo.SendType" label="case" :disabled="isEdit">案场</el-radio>
97
+              <el-radio v-model="couponInfo.SendType" label="system" :disabled="isEdit">系统</el-radio>
95
             </div>
98
             </div>
96
           </div>
99
           </div>
97
         </li>
100
         </li>
99
           <span>选择渠道:<em>*</em></span>
102
           <span>选择渠道:<em>*</em></span>
100
           <div class="flex-item">
103
           <div class="flex-item">
101
             <div style="width:50%">
104
             <div style="width:50%">
102
-              <el-select v-model="couponInfo.ChannelId" placeholder="请选择">
105
+              <el-select v-model="couponInfo.ChannelId" placeholder="请选择" :disabled="isEdit">
103
                 <el-option
106
                 <el-option
104
                   v-for="item in channelList"
107
                   v-for="item in channelList"
105
                   :key="item.ChannelId"
108
                   :key="item.ChannelId"
114
           <span>目标商品:<em>*</em></span>
117
           <span>目标商品:<em>*</em></span>
115
           <div class="flex-item">
118
           <div class="flex-item">
116
             <div>
119
             <div>
117
-              <el-radio v-model="couponInfo.IsAll" label="1">全部商品</el-radio>
118
-              <el-radio v-model="couponInfo.IsAll" label="0">指定商品</el-radio>
120
+              <el-radio v-model="couponInfo.IsAll" label="1" :disabled="isEdit">全部商品</el-radio>
121
+              <el-radio v-model="couponInfo.IsAll" label="0" :disabled="isEdit">指定商品</el-radio>
119
             </div>
122
             </div>
120
           </div>
123
           </div>
121
         </li>
124
         </li>
142
                     <el-button
145
                     <el-button
143
                       size="mini"
146
                       size="mini"
144
                       type="warning"
147
                       type="warning"
145
-                      @click="deleteGoodsItem(scope.$index, scope.row)">删除</el-button>
148
+                      @click="deleteGoodsItem(scope.$index, scope.row)" :disabled="isEdit">删除</el-button>
146
                   </template>
149
                   </template>
147
                 </el-table-column>
150
                 </el-table-column>
148
               </el-table>
151
               </el-table>
149
               <div style="text-align:center;padding:10px 0;">
152
               <div style="text-align:center;padding:10px 0;">
150
-                <el-button type="success" size="mini" @click="addGoods">添加商品</el-button>
153
+                <el-button type="success" size="mini" @click="addGoods" :disabled="isEdit">添加商品</el-button>
151
               </div>
154
               </div>
152
             </div>
155
             </div>
153
           </div>
156
           </div>
157
           <div class="flex-item">
160
           <div class="flex-item">
158
             <div>
161
             <div>
159
               <div class="addLine flex-h" style="align-item:center;margin-bottom:20px;">
162
               <div class="addLine flex-h" style="align-item:center;margin-bottom:20px;">
160
-                <el-radio v-model="postData.TimeType" label="1">固定时间</el-radio>
163
+                <el-radio v-model="postData.TimeType" label="1" :disabled="isEdit">固定时间</el-radio>
161
                 <el-date-picker
164
                 <el-date-picker
165
+                  :disabled="isEdit"
162
                   v-model="couponInfo.StartDate"
166
                   v-model="couponInfo.StartDate"
163
                   type="date"
167
                   type="date"
164
                   placeholder="选择起始日期">
168
                   placeholder="选择起始日期">
165
                 </el-date-picker>
169
                 </el-date-picker>
166
                 <span style="line-height:40px;">至</span>
170
                 <span style="line-height:40px;">至</span>
167
                 <el-date-picker
171
                 <el-date-picker
172
+                  :disabled="isEdit"
168
                   v-model="couponInfo.EndDate"
173
                   v-model="couponInfo.EndDate"
169
                   type="date"
174
                   type="date"
170
                   placeholder="选择截止日期">
175
                   placeholder="选择截止日期">
171
                 </el-date-picker>
176
                 </el-date-picker>
172
               </div>
177
               </div>
173
               <div class="addLine flex-h" style="align-item:center;">
178
               <div class="addLine flex-h" style="align-item:center;">
174
-                <el-radio v-model="postData.TimeType" label="2">领取后</el-radio>
179
+                <el-radio v-model="postData.TimeType" label="2" :disabled="isEdit">领取后</el-radio>
175
                 <span style="width:100px;">
180
                 <span style="width:100px;">
176
                   <el-input
181
                   <el-input
182
+                    :disabled="isEdit"
177
                     placeholder="请输入"
183
                     placeholder="请输入"
178
                     v-model="couponInfo.ValidDays"
184
                     v-model="couponInfo.ValidDays"
179
                     clearable>
185
                     clearable>
189
           <div class="flex-item">
195
           <div class="flex-item">
190
             <div>
196
             <div>
191
               <el-date-picker
197
               <el-date-picker
198
+                :disabled="isEdit"
192
                 v-model="couponInfo.StartDate"
199
                 v-model="couponInfo.StartDate"
193
                 type="date"
200
                 type="date"
194
                 placeholder="选择起始日期">
201
                 placeholder="选择起始日期">
195
               </el-date-picker>
202
               </el-date-picker>
196
               <span style="line-height:40px;">至</span>
203
               <span style="line-height:40px;">至</span>
197
               <el-date-picker
204
               <el-date-picker
205
+                :disabled="isEdit"
198
                 v-model="couponInfo.EndDate"
206
                 v-model="couponInfo.EndDate"
199
                 type="date"
207
                 type="date"
200
                 placeholder="选择截止日期">
208
                 placeholder="选择截止日期">
208
             <div style="vertical-align: middle;">
216
             <div style="vertical-align: middle;">
209
               <a style="line-height: 40px;" v-if="videoOff" :href="couponInfo.VideoUrl" target="blank">{{couponInfo.VideoUrl}}</a>
217
               <a style="line-height: 40px;" v-if="videoOff" :href="couponInfo.VideoUrl" target="blank">{{couponInfo.VideoUrl}}</a>
210
               <el-upload
218
               <el-upload
219
+                :disabled="isEdit"
211
                 class="avatar-uploader"
220
                 class="avatar-uploader"
212
                 action='string'
221
                 action='string'
213
                 :http-request="toolClass.upload"
222
                 :http-request="toolClass.upload"
214
                 :show-file-list="false"
223
                 :show-file-list="false"
215
                 :on-success="videoSuccess">
224
                 :on-success="videoSuccess">
216
-                <a style="line-height: 40px;padding: 0 10px;">{{videoOff ? '更换' : '添加'}}视频</a>
225
+                <a style="line-height: 40px;padding: 0 10px;" :disabled="isEdit">{{videoOff ? '更换' : '添加'}}视频</a>
217
               </el-upload>
226
               </el-upload>
218
-              <el-button v-if="videoOff" type="danger" @click="deleteVideo">删除视频</el-button>
227
+              <el-button v-if="videoOff" type="danger" @click="deleteVideo" :disabled="isEdit">删除视频</el-button>
219
             </div>
228
             </div>
220
           </div>
229
           </div>
221
         </li>
230
         </li>
373
       total: 0,
382
       total: 0,
374
       centerDialogVisible: false,
383
       centerDialogVisible: false,
375
       type: this.$route.query.type || '', // goods、course
384
       type: this.$route.query.type || '', // goods、course
376
-      isEdit: this.$route.query.id === undefined ? 0 : 1,
385
+      isEdit: !!this.$route.query.id,
377
       ChannelList: [], // 渠道列表
386
       ChannelList: [], // 渠道列表
378
       TypeList: [{ // 类型列表
387
       TypeList: [{ // 类型列表
379
         value: '商品券',
388
         value: '商品券',
429
               id: this.$route.query.id
438
               id: this.$route.query.id
430
             }).then((res) => {
439
             }).then((res) => {
431
               // console.log(JSON.stringify(res))
440
               // console.log(JSON.stringify(res))
432
-
433
               if (res.coupon.CaseId !== '') {
441
               if (res.coupon.CaseId !== '') {
434
                 var aRes = res
442
                 var aRes = res
435
                 this.GetChannelListList({
443
                 this.GetChannelListList({

+ 0
- 11
src/pages/system/cardAndCouponManager/couponManager/index.vue View File

4
       <div class="flex-h">
4
       <div class="flex-h">
5
         <div class="flex-item flex-h">
5
         <div class="flex-item flex-h">
6
           <el-button size="mini" type="success" @click="addCoupon('')">新增优惠券</el-button>
6
           <el-button size="mini" type="success" @click="addCoupon('')">新增优惠券</el-button>
7
-          <!-- <el-button size="mini" type="success" @click="addCoupon('drink')">新增饮品优惠券</el-button>
8
-          <el-button size="mini" type="success" @click="addCoupon('course')">新增课程优惠券</el-button> -->
9
         </div>
7
         </div>
10
         <ul>
8
         <ul>
11
           <li>
9
           <li>
12
-            <!-- <span>选择案场:</span> -->
13
             <el-select v-model="CaseId" placeholder="请选择案场">
10
             <el-select v-model="CaseId" placeholder="请选择案场">
14
               <el-option
11
               <el-option
15
                 v-for="item in cases"
12
                 v-for="item in cases"
64
           prop="TotalCount"
61
           prop="TotalCount"
65
           label="总数量">
62
           label="总数量">
66
         </el-table-column>
63
         </el-table-column>
67
-        <!-- <el-table-column
68
-          prop="SentCount"
69
-          label="已发">
70
-        </el-table-column>
71
-        <el-table-column
72
-          prop="UsedCount"
73
-          label="实际使用">
74
-        </el-table-column> -->
75
         <el-table-column
64
         <el-table-column
76
           prop="Status"
65
           prop="Status"
77
           label="状态">
66
           label="状态">

+ 3
- 3
src/pages/system/cardAndCouponManager/vipManager/index.vue View File

7
           <li>
7
           <li>
8
             <el-select v-model="CaseId" placeholder="请选择">
8
             <el-select v-model="CaseId" placeholder="请选择">
9
               <el-option
9
               <el-option
10
-                key=""
10
+                key="all"
11
                 label="所有案场"
11
                 label="所有案场"
12
-                value="">
12
+                value="all">
13
               </el-option>
13
               </el-option>
14
               <el-option
14
               <el-option
15
                 v-for="item in cases"
15
                 v-for="item in cases"
166
       this.getList()
166
       this.getList()
167
     },
167
     },
168
     getList () { // 获取列表
168
     getList () { // 获取列表
169
-      this.GetVipList({...this.postData, caseid: this.CaseId})
169
+      this.GetVipList({ ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId })
170
     },
170
     },
171
     handleCurrentChange (val) { // 跳转到分页
171
     handleCurrentChange (val) { // 跳转到分页
172
       this.postData.page = val
172
       this.postData.page = val

+ 3
- 3
src/pages/system/caseManager/caseAreaManager/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="CaseId" placeholder="请选择">
11
             <el-select v-model="CaseId" placeholder="请选择">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in cases"
18
                 v-for="item in cases"
133
     getList () { // 获取列表
133
     getList () { // 获取列表
134
       this.$ajax(this.$api.caseManager.getCaseAreaList.url, {
134
       this.$ajax(this.$api.caseManager.getCaseAreaList.url, {
135
         method: this.$api.caseManager.getCaseAreaList.method,
135
         method: this.$api.caseManager.getCaseAreaList.method,
136
-        queryData: { ...this.postData, caseid: this.CaseId }
136
+        queryData: { ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId }
137
       }).then(res => {
137
       }).then(res => {
138
         // for (var n = 0; n < res.list.length; n++) {
138
         // for (var n = 0; n < res.list.length; n++) {
139
         //   res.list[n].CaseName = this.cases.filter(x => x.CaseId === res.list[n].CaseId)[0].CaseName
139
         //   res.list[n].CaseName = this.cases.filter(x => x.CaseId === res.list[n].CaseId)[0].CaseName

+ 3
- 3
src/pages/system/caseManager/caseTableManager/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="CaseId" placeholder="请选择">
11
             <el-select v-model="CaseId" placeholder="请选择">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in cases"
18
                 v-for="item in cases"
115
     getList () { // 获取列表
115
     getList () { // 获取列表
116
       this.$ajax(this.$api.caseManager.getCaseTableList.url, {
116
       this.$ajax(this.$api.caseManager.getCaseTableList.url, {
117
         method: this.$api.caseManager.getCaseTableList.method,
117
         method: this.$api.caseManager.getCaseTableList.method,
118
-        queryData: { ...this.postData, caseid: this.CaseId }
118
+        queryData: { ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId }
119
       }).then(res => {
119
       }).then(res => {
120
         this.currentList = res.list
120
         this.currentList = res.list
121
         this.postData.page = res.page
121
         this.postData.page = res.page

+ 3
- 3
src/pages/system/caseManager/deviceManager/index.vue View File

9
           <li>
9
           <li>
10
             <el-select v-model="CaseId" placeholder="请选择">
10
             <el-select v-model="CaseId" placeholder="请选择">
11
               <el-option
11
               <el-option
12
-                key=""
12
+                key="all"
13
                 label="所有案场"
13
                 label="所有案场"
14
-                value="">
14
+                value="all">
15
               </el-option>
15
               </el-option>
16
               <el-option
16
               <el-option
17
                 v-for="item in cases"
17
                 v-for="item in cases"
141
       this.getList()
141
       this.getList()
142
     },
142
     },
143
     getList () { // 获取列表
143
     getList () { // 获取列表
144
-      this.GetDeviceList(this.postData)
144
+      this.GetDeviceList({ ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId })
145
     },
145
     },
146
     delCallBack () {
146
     delCallBack () {
147
       this.$message({
147
       this.$message({

+ 3
- 3
src/pages/system/caseManager/signinManager/index.vue View File

17
       <span class="case-title">案场:</span>
17
       <span class="case-title">案场:</span>
18
        <el-select v-model="valueCase" placeholder="请选择" @change="handelSignin">
18
        <el-select v-model="valueCase" placeholder="请选择" @change="handelSignin">
19
             <el-option
19
             <el-option
20
-              key=""
20
+              key="all"
21
               label="所有案场"
21
               label="所有案场"
22
-              value="">
22
+              value="all">
23
             </el-option>
23
             </el-option>
24
             <el-option
24
             <el-option
25
               v-for="item in optionsCase"
25
               v-for="item in optionsCase"
156
     getCase () { // 获取案场数据列表
156
     getCase () { // 获取案场数据列表
157
       this.$ajax(this.$api.caseManager.getCaseList.url, {
157
       this.$ajax(this.$api.caseManager.getCaseList.url, {
158
         method: this.$api.caseManager.getCaseList.method,
158
         method: this.$api.caseManager.getCaseList.method,
159
-        queryData: { ...this.postData, caseid: this.CaseId }
159
+        queryData: { ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId }
160
       }).then(res => {
160
       }).then(res => {
161
         this.tempoptionsCase = res.list
161
         this.tempoptionsCase = res.list
162
         this.postData.page = res.page
162
         this.postData.page = res.page

+ 3
- 3
src/pages/system/caseManager/tagManager/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="CaseId" placeholder="请选择案场">
11
             <el-select v-model="CaseId" placeholder="请选择案场">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in cases"
18
                 v-for="item in cases"
111
     getList () { // 获取列表
111
     getList () { // 获取列表
112
       this.$ajax(this.$api.caseManager.getCaseTagList.url, {
112
       this.$ajax(this.$api.caseManager.getCaseTagList.url, {
113
         method: this.$api.caseManager.getCaseTagList.method,
113
         method: this.$api.caseManager.getCaseTagList.method,
114
-        queryData: { ...this.postData, caseid: this.CaseId }
114
+        queryData: { ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId }
115
       }).then(res => {
115
       }).then(res => {
116
         this.currentList = res.list
116
         this.currentList = res.list
117
         this.postData.page = res.page
117
         this.postData.page = res.page

+ 3
- 3
src/pages/system/channelManager/channelList/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="CaseId" placeholder="请选择">
11
             <el-select v-model="CaseId" placeholder="请选择">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in cases"
18
                 v-for="item in cases"
110
     getList () { // 获取列表
110
     getList () { // 获取列表
111
       this.$ajax(this.$api.channelManager.getChannelList.url, {
111
       this.$ajax(this.$api.channelManager.getChannelList.url, {
112
         method: this.$api.channelManager.getChannelList.method,
112
         method: this.$api.channelManager.getChannelList.method,
113
-        queryData: { ...this.postData, caseid: this.CaseId }
113
+        queryData: { ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId }
114
       }).then(res => {
114
       }).then(res => {
115
         this.currentList = res.list
115
         this.currentList = res.list
116
         this.postData.page = res.page
116
         this.postData.page = res.page

+ 1
- 3
src/pages/system/cmsManager/indexMsg/add.vue View File

121
             type: 'success',
121
             type: 'success',
122
             duration: 1000
122
             duration: 1000
123
           })
123
           })
124
-          setTimeout(() => {
125
-            this.$router.push({ name: 'indexMsg' })
126
-          }, 1000)
124
+          this.$router.push({ name: 'indexMsg' })
127
         }).catch(msg => {
125
         }).catch(msg => {
128
           this.ajaxOff = true
126
           this.ajaxOff = true
129
         })
127
         })

+ 1
- 3
src/pages/system/cmsManager/indexMsg/edit.vue View File

119
             type: 'success',
119
             type: 'success',
120
             duration: 1000
120
             duration: 1000
121
           })
121
           })
122
-          setTimeout(() => {
123
-            this.$router.push({ name: 'indexMsg' })
124
-          }, 1000)
122
+          this.$router.push({ name: 'indexMsg' })
125
         }).catch(msg => {
123
         }).catch(msg => {
126
 
124
 
127
         })
125
         })

+ 3
- 3
src/pages/system/cmsManager/majorProjects/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="tableSearch.caseId" placeholder="请选择">
11
             <el-select v-model="tableSearch.caseId" placeholder="请选择">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in caseList"
18
                 v-for="item in caseList"
179
         queryData: {
179
         queryData: {
180
           page: this.postData.currentPage,
180
           page: this.postData.currentPage,
181
           pagesize: this.postData.pageSize,
181
           pagesize: this.postData.pageSize,
182
-          caseid: this.tableSearch.caseId,
182
+          caseid: this.tableSearch.caseId === 'all' ? '' : this.tableSearch.caseId,
183
           name: this.tableSearch.key
183
           name: this.tableSearch.key
184
         }
184
         }
185
       }).then(res => {
185
       }).then(res => {

+ 3
- 3
src/pages/system/cmsManager/newsManager/edit.vue View File

124
   },
124
   },
125
   components: {},
125
   components: {},
126
   created () {
126
   created () {
127
-    this.updateLocationInfo().then(() => {
127
+    this.updateLocationAllInfo().then(() => {
128
       this.getDetail()
128
       this.getDetail()
129
       this.GetCourseList({ page: 1, pagesize: 10000 })
129
       this.GetCourseList({ page: 1, pagesize: 10000 })
130
     })
130
     })
131
   },
131
   },
132
   computed: {
132
   computed: {
133
     ...mapState({
133
     ...mapState({
134
-      positionList: x => x.cms.location
134
+      positionList: x => x.cms.locationAll
135
     }),
135
     }),
136
     ...mapCourseState({
136
     ...mapCourseState({
137
       courses: x => x.courseList,
137
       courses: x => x.courseList,
141
     ...mapCourseActions([
141
     ...mapCourseActions([
142
       'GetCourseList',
142
       'GetCourseList',
143
     ]),
143
     ]),
144
-    ...mapCmsActions(['updateLocationInfo']),
144
+    ...mapCmsActions(['updateLocationAllInfo']),
145
     submit () {
145
     submit () {
146
       if (this.postData.ForwardType === 'url') {
146
       if (this.postData.ForwardType === 'url') {
147
         this.postData.ForwardResourceId = ''
147
         this.postData.ForwardResourceId = ''

+ 3
- 3
src/pages/system/courseManager/courseList/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="postData.caseid" placeholder="请选择案场">
11
             <el-select v-model="postData.caseid" placeholder="请选择案场">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in cases"
18
                 v-for="item in cases"
356
       this.getList()
356
       this.getList()
357
     },
357
     },
358
     getList () { // 获取列表
358
     getList () { // 获取列表
359
-      this.GetCourseList(this.postData)
359
+      this.GetCourseList({...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId})
360
     },
360
     },
361
     handleCurrentChange (val) { // 跳转到分页
361
     handleCurrentChange (val) { // 跳转到分页
362
       this.postData.page = val
362
       this.postData.page = val

+ 2
- 2
src/pages/system/dashboard/index.vue View File

18
         <!-- <div v-if="subItem.type === 'histogram' && subItem.value.length">
18
         <!-- <div v-if="subItem.type === 'histogram' && subItem.value.length">
19
           <histogram :data="subItem.value" :index="index + '-' + subIndex"></histogram>
19
           <histogram :data="subItem.value" :index="index + '-' + subIndex"></histogram>
20
         </div> -->
20
         </div> -->
21
-        <div v-if="subItem.type === 'pieDiagram' && subItem.value.length">
21
+        <!-- <div v-if="subItem.type === 'pieDiagram' && subItem.value.length">
22
           <pieDiagram :data="subItem" :index="index + '-' + subIndex"></pieDiagram>
22
           <pieDiagram :data="subItem" :index="index + '-' + subIndex"></pieDiagram>
23
-        </div>
23
+        </div> -->
24
         <!-- <div v-if="subItem.type === 'brokenLineGraph' && subItem.value.length">
24
         <!-- <div v-if="subItem.type === 'brokenLineGraph' && subItem.value.length">
25
           <brokenLineGraph :data="subItem.value" :index="index + '-' + subIndex"></brokenLineGraph>
25
           <brokenLineGraph :data="subItem.value" :index="index + '-' + subIndex"></brokenLineGraph>
26
         </div>
26
         </div>

+ 5
- 5
src/pages/system/goodsManager/goodManager/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="CaseId" placeholder="请选择">
11
             <el-select v-model="CaseId" placeholder="请选择">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in cases"
18
                 v-for="item in cases"
128
       },
128
       },
129
       set (val) {
129
       set (val) {
130
         this.postData.caseid = val
130
         this.postData.caseid = val
131
-        this.GetGoodTypes({ pagesize: 1000, caseid: this.CaseId })
131
+        this.GetGoodTypes({ pagesize: 1000, caseid: this.CaseId === 'all' ? '' : this.CaseId })
132
       }
132
       }
133
     }
133
     }
134
   },
134
   },
157
       this.getList()
157
       this.getList()
158
     },
158
     },
159
     getList () {
159
     getList () {
160
-      this.GetGoodsList({...this.postData, caseid: this.CaseId})
160
+      this.GetGoodsList({ ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId })
161
     },
161
     },
162
     handleSizeChange (val) {
162
     handleSizeChange (val) {
163
       console.log(`每页 ${val} 条`)
163
       console.log(`每页 ${val} 条`)
179
         type: 'warning'
179
         type: 'warning'
180
       })
180
       })
181
         .then(() => {
181
         .then(() => {
182
-          this.DelGoods({id: row.GoodsId, callback: this.delCallBack})
182
+          this.DelGoods({ id: row.GoodsId, callback: this.delCallBack })
183
         })
183
         })
184
         .catch(() => {
184
         .catch(() => {
185
           this.$message({
185
           this.$message({

+ 3
- 3
src/pages/system/goodsManager/goodsSpecManager/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="CaseId" placeholder="请选择">
11
             <el-select v-model="CaseId" placeholder="请选择">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in cases"
18
                 v-for="item in cases"
115
     getList () { // 获取列表
115
     getList () { // 获取列表
116
       this.$ajax(this.$api.goodsManager.getGoodsSpecList.url, {
116
       this.$ajax(this.$api.goodsManager.getGoodsSpecList.url, {
117
         method: this.$api.goodsManager.getGoodsSpecList.method,
117
         method: this.$api.goodsManager.getGoodsSpecList.method,
118
-        queryData: { ...this.postData, caseid: this.CaseId }
118
+        queryData: { ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId }
119
       }).then(res => {
119
       }).then(res => {
120
         this.currentList = res.list
120
         this.currentList = res.list
121
         this.postData.page = res.page
121
         this.postData.page = res.page

+ 3
- 3
src/pages/system/goodsManager/goodsTypeManager/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="CaseId" placeholder="请选择">
11
             <el-select v-model="CaseId" placeholder="请选择">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in cases"
18
                 v-for="item in cases"
116
     getList () { // 获取列表
116
     getList () { // 获取列表
117
       this.$ajax(this.$api.goodsManager.getGoodsTypeList.url, {
117
       this.$ajax(this.$api.goodsManager.getGoodsTypeList.url, {
118
         method: this.$api.goodsManager.getGoodsTypeList.method,
118
         method: this.$api.goodsManager.getGoodsTypeList.method,
119
-        queryData: { ...this.postData, caseid: this.CaseId }
119
+        queryData: { ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId }
120
       }).then(res => {
120
       }).then(res => {
121
         // for (var n = 0; n < res.list.length; n++) {
121
         // for (var n = 0; n < res.list.length; n++) {
122
         //   res.list[n].CaseName = this.cases.filter(x => x.CaseId === res.list[n].CaseId)[0].CaseName
122
         //   res.list[n].CaseName = this.cases.filter(x => x.CaseId === res.list[n].CaseId)[0].CaseName

+ 3
- 3
src/pages/system/healthManager/healthRecord/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="CaseId" placeholder="请选择">
11
             <el-select v-model="CaseId" placeholder="请选择">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in cases"
18
                 v-for="item in cases"
134
       return (this.cases.filter(x => x.CaseId === caseid)[0] || {}).CaseName
134
       return (this.cases.filter(x => x.CaseId === caseid)[0] || {}).CaseName
135
     },
135
     },
136
     getList () { // 获取列表
136
     getList () { // 获取列表
137
-      this.getHealthList({ ...this.postData, caseid: this.CaseId, phone: this.mobile, name: this.name }).then((res) => {
137
+      this.getHealthList({ ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId, phone: this.mobile, name: this.name }).then((res) => {
138
         this.currentList = this.list.list
138
         this.currentList = this.list.list
139
         this.postData.page = this.list.page
139
         this.postData.page = this.list.page
140
         this.total = this.list.pagenum
140
         this.total = this.list.pagenum

+ 3
- 3
src/pages/system/newOrder/caseRecord/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="CaseId" placeholder="请选择">
11
             <el-select v-model="CaseId" placeholder="请选择">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in cases"
18
                 v-for="item in cases"
205
       this.getList()
205
       this.getList()
206
     },
206
     },
207
     getList () {
207
     getList () {
208
-      this.GetRecordList({ ...this.postData, caseid: this.CaseId })
208
+      this.GetRecordList({ ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId })
209
     },
209
     },
210
     handleCurrentChange (val) { // 跳转到分页
210
     handleCurrentChange (val) { // 跳转到分页
211
       this.postData.page = val
211
       this.postData.page = val

+ 3
- 3
src/pages/system/systemSet/userManager/index.vue View File

10
             <!-- <span>选择案场:</span> -->
10
             <!-- <span>选择案场:</span> -->
11
             <el-select v-model="CaseId" placeholder="请选择">
11
             <el-select v-model="CaseId" placeholder="请选择">
12
               <el-option
12
               <el-option
13
-                key=""
13
+                key="all"
14
                 label="所有案场"
14
                 label="所有案场"
15
-                value="">
15
+                value="all">
16
               </el-option>
16
               </el-option>
17
               <el-option
17
               <el-option
18
                 v-for="item in cases"
18
                 v-for="item in cases"
293
     getList () { // 获取列表
293
     getList () { // 获取列表
294
       this.$ajax(this.$api.systemSet.getUserList.url, {
294
       this.$ajax(this.$api.systemSet.getUserList.url, {
295
         method: this.$api.systemSet.getUserList.method,
295
         method: this.$api.systemSet.getUserList.method,
296
-        queryData: { ...this.postData, caseid: this.CaseId, typeid: this.usertype, username: this.name }
296
+        queryData: { ...this.postData, caseid: this.CaseId === 'all' ? '' : this.CaseId, typeid: this.usertype, username: this.name }
297
       }).then(res => {
297
       }).then(res => {
298
         for (var n = 0; n < (res.list || []).length; n++) {
298
         for (var n = 0; n < (res.list || []).length; n++) {
299
           res.list[n].CreateDate = this.returnTime(res.list[n].CreateDate)
299
           res.list[n].CreateDate = this.returnTime(res.list[n].CreateDate)

+ 17
- 0
src/pages/system/verificationManager/phoneVerification/index.vue View File

1
 <template>
1
 <template>
2
   <div class="subPage">
2
   <div class="subPage">
3
+    <div class="flex-h top">
4
+      <div class="flex-item">
5
+        <div>
6
+          <i class="iconfont icon-qrcode"></i>
7
+          <span>1</span>
8
+          <span>请输入用户的手机号</span>
9
+        </div>
10
+      </div>
11
+      <div class="flex-item">
12
+        <div>
13
+          <i class="iconfont icon-hexiao"></i>
14
+          <span>2</span>
15
+          <span>点击“立即核销”按钮</span>
16
+        </div>
17
+      </div>
18
+    </div>
3
     <div>
19
     <div>
4
       <div class="flex-h">
20
       <div class="flex-h">
5
         <div class="flex-item">
21
         <div class="flex-item">
46
 
62
 
47
 <!-- Add "scoped" attribute to limit CSS to this component only -->
63
 <!-- Add "scoped" attribute to limit CSS to this component only -->
48
 <style lang="scss" scoped>
64
 <style lang="scss" scoped>
65
+@import "page.scss";
49
 .subPage {
66
 .subPage {
50
   > div {
67
   > div {
51
     width: 100%;
68
     width: 100%;

+ 29
- 1
src/pages/system/verificationManager/phoneVerification/page.scss View File

1
-
1
+.subPage{
2
+  .top{
3
+    width: 100%;
4
+    position: relative;
5
+    overflow: hidden;
6
+    margin-top: 40px;
7
+    >div{
8
+      >div{
9
+        width: 100%;
10
+        position: relative;
11
+        overflow: hidden;
12
+        text-align: center;
13
+        >span{
14
+          width: 100%;
15
+          display: block;
16
+          text-align: center;
17
+          line-height: 24px;
18
+          font-size: 15px;
19
+          color: #666;
20
+        }
21
+        >i{
22
+          font-size: 30px;
23
+          color: #409EFF;
24
+          display: inline-block;
25
+        }
26
+      }
27
+    }
28
+  }
29
+}
2
 
30
 
3
 
31
 
4
 
32
 

+ 4
- 2
src/pages/system/verificationManager/qrcodeVerification/verificationList/index.vue View File

8
             type="warning"
8
             type="warning"
9
             @click="reback">返回</el-button>
9
             @click="reback">返回</el-button>
10
         </div>
10
         </div>
11
-        <div v-if="(courses.list||[]).length>0">
11
+        <div v-if="courses !== null && (courses.list||[]).length>0">
12
           <el-table
12
           <el-table
13
               :data="courses.list"
13
               :data="courses.list"
14
               stripe
14
               stripe
213
     },
213
     },
214
     getList () {
214
     getList () {
215
       this.GetCourseVerList({ id: this.code }).then((res) => {
215
       this.GetCourseVerList({ id: this.code }).then((res) => {
216
-        this.customerId = res.customerInfo.CustomerId
216
+        if (res !== null) {
217
+          this.customerId = res.customerInfo.CustomerId
218
+        }
217
       })
219
       })
218
     },
220
     },
219
     afterCheck () {
221
     afterCheck () {