Explorar el Código

登录修改密码接口调试

luolei hace 5 años
padre
commit
de076d19cf

+ 2 - 0
package.json

@@ -5,10 +5,12 @@
   "main": "index.js",
   "dependencies": {
     "bluebird": "^3.5.5",
+    "echarts": "^4.7.0",
     "es3ify-loader": "^0.2.0",
     "install": "^0.13.0",
     "jquery": "^1.12.4",
     "jquery-templates": "^1.0.0",
+    "js-md5": "^0.7.3",
     "uninstall": "0.0.0",
     "webpack-cli": "^3.3.1"
   },

+ 28 - 0
src/css/console.less

@@ -0,0 +1,28 @@
+.echarts {
+  width: 400px;
+  height: 500px;
+}
+.partWrap {
+  margin-top: 30px;
+  .partLi {
+    float: left;
+    border: 1px solid #ccc;
+    padding: 20px;
+    border-radius: 5px;
+    margin: 15px;
+    p {
+      padding: 10px 0;
+      font-size: 16px;
+    }
+    .btm {
+      img {
+        float: left;
+      }
+      span {
+        float: right;
+        font-size: 28px;
+        color: blue;
+      }
+    }
+  }
+}

+ 26 - 0
src/css/index.less

@@ -51,4 +51,30 @@
     width: 100%;
     height: 100%;
   }
+}
+//设置
+.userAction {
+  background-color: #ccc;
+  display: none;
+  li {
+    text-align: center;
+    cursor: pointer;
+  }
+}
+//修改密码
+.modalAction {
+  position: fixed;
+  width: 200px;
+  height: 200px;
+  left: 50%;
+  top: 50%;
+  margin-left: -100px;
+  margin-top: -100px;
+  padding: 20px;
+  background-color: #ccc;
+  display: none;
+  .waring {
+    color: red;
+    display: none;
+  }
 }

+ 4 - 0
src/css/login.less

@@ -3,4 +3,8 @@ input {
 }
 .login {
   margin: 100px;
+  .waring {
+    color: red;
+    display: none;
+  }
 }

+ 29 - 0
src/html/console.html

@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  <title>Document</title>
+</head>
+<body>
+  <div class="partWrap">
+    <ul class="clearfix">
+      <li class="partLi">
+        <div>
+          <p class="top">本月病例数</p>
+          <p class="btm clearfix">
+            <img src="../images/jianb.png" alt="">
+            <span>33</span>
+          </p>
+        </div>
+      </li>
+      <li>sds</li>
+      <li>sds</li>
+    </ul>
+  </div>
+  <div id="main" class="echarts">
+    
+  </div>
+  
+</body>
+</html>

+ 11 - 1
src/html/index.html

@@ -30,7 +30,10 @@
           </div>
           <div class="login fr">
               <a class="setting" href="javascript:void(0);">设置</a>
-              <a class="login-out" href="javascript:void(0);">退出</a>
+              <ul class="userAction">
+                  <li id="changeWord">修改密码</li>
+                  <li><a class="login-out" href="./login.html">退出</a></li>
+              </ul>
           </div>
       </div>
       <div class="main-body clearfix">
@@ -39,6 +42,13 @@
               <iframe src="./console.html" frameborder="0" id="contentIframe"></iframe>
           </div>
       </div>
+      <div class="modalAction">
+          <p><span>原始密码:</span><input type="text" class="oldword"></p>
+          <p><span>新密码:</span><input type="text" class="newword"></p>
+          <p><span>确认密码:</span><input type="text" class="sureword"></p>
+          <p class="waring"></p>
+          <span class="sureChange">确认修改</span>
+      </div>
   </div>
 </body>
 

+ 3 - 2
src/html/login.html

@@ -11,12 +11,13 @@
     <div class="loginForm">
       <div class="name">
         <span>用户名:</span>
-        <input type="text" placeholder="请输入用户名称" id="username" value="h12">
+        <input type="text" placeholder="请输入用户名称" id="username" value="h1">
       </div>
       <div class="word">
         <span>密码:</span>
-        <input type="text" placeholder="请输入密码" id="password">
+        <input type="text" placeholder="请输入密码" id="password" value="a123456">
       </div>
+      <p class="waring">*****错误 </p>
       <div class="sureLogin">登录</div>
     </div>
   </div>

BIN
src/images/jianb.png


+ 77 - 0
src/js/console.js

@@ -0,0 +1,77 @@
+const $ = require('jquery');
+require("../css/reset.less")
+require("../css/console.less")
+require("../images/logo.png")
+// import 'zrender/lib/svg/svg';
+const echarts = require('echarts');
+console.log(echarts)
+$(function(){
+  // var myChart = echarts.init(document.getElementById('echarts'));
+  var myChart = echarts.init(document.getElementById('main'));
+  // 绘制图表
+  let app = {}
+  let option = {
+    title: {
+        text: '饼图程序调用高亮示例',
+        left: 'center'
+    },
+    tooltip: {
+        trigger: 'item',
+        formatter: '{a} <br/>{b} : {c} ({d}%)'
+    },
+    legend: {
+        orient: 'vertical',
+        left: 'left',
+        data: ['直接访问', '邮件营销', '联盟广告', '视频广告', '搜索引擎']
+    },
+    series: [
+          {
+              name: '访问来源',
+              type: 'pie',
+              radius: '55%',
+              center: ['50%', '60%'],
+              data: [
+                  {value: 335, name: '直接访问'},
+                  {value: 310, name: '邮件营销'},
+                  {value: 234, name: '联盟广告'},
+                  {value: 135, name: '视频广告'},
+                  {value: 1548, name: '搜索引擎'}
+              ],
+              emphasis: {
+                  itemStyle: {
+                      shadowBlur: 10,
+                      shadowOffsetX: 0,
+                      shadowColor: 'rgba(0, 0, 0, 0.5)'
+                  }
+              }
+          }
+      ]
+  };
+
+  app.currentIndex = -1;
+
+  setInterval(function () {
+      var dataLen = option.series[0].data.length;
+      // 取消之前高亮的图形
+      myChart.dispatchAction({
+          type: 'downplay',
+          seriesIndex: 0,
+          dataIndex: app.currentIndex
+      });
+      app.currentIndex = (app.currentIndex + 1) % dataLen;
+      // 高亮当前图形
+      myChart.dispatchAction({
+          type: 'highlight',
+          seriesIndex: 0,
+          dataIndex: app.currentIndex
+      });
+      // 显示 tooltip
+      myChart.dispatchAction({
+          type: 'showTip',
+          seriesIndex: 0,
+          dataIndex: app.currentIndex
+      });
+  }, 1000);
+  myChart.setOption(option);
+})
+

+ 40 - 1
src/js/index.js

@@ -1,11 +1,13 @@
 require("../css/index.less");
 const $ = require('jquery');
 require('jquery-templates');
+const md5 = require('js-md5');
 const {api,post,pageMap} = require('./utils.js');
 
 $(function(){
   getMenu();
   //菜单展开收起
+  sureChangeWord()
 });
 
 function initMenu(data){
@@ -33,4 +35,41 @@ function getMenu(){
       initMenu(data.menuWrappers);
     }
   });
-};
+};
+
+function sureChangeWord(){
+  $('.container').on('click','.sureChange',function(){
+    let oldword = $(".oldword").val()
+    let newword = $(".newword").val()
+    let sureword = $(".sureword").val()
+    if(newword != sureword){
+      $(".modalAction .waring").css('display','block').html('两次密码不一致')
+      return
+    }
+    changeWord(oldword,newword)
+  })
+}
+function changeWord(oldword,newword){
+  post(api.midifyPassword,{
+    "modifyPassword": md5(newword),
+    "password": md5(oldword)
+  }).then(function(res){
+    const data = res.data;
+    if(data.code==='0'){
+      console.log(data)
+      window.location.href = './login.html'
+    }else{
+      $(".modalAction .waring").css('display','block').html(data.msg)
+      return
+    }
+  });
+}
+//点击设置
+$(".setting").click(function(){
+  $(".userAction").slideToggle()
+})
+//点击修改密码
+$(".container").on('click','#changeWord',function(){
+  const status = $(".modalAction").css("display")
+  $(".modalAction").css('display',status=='block'?'none':'block')
+})

+ 7 - 6
src/js/login.js

@@ -1,23 +1,24 @@
 const $ = require('jquery');
 require("../css/reset.less")
 require("../css/login.less")
-
-const {post} = require('../js/utils.js');
+const {post,setCookie} = require('../js/utils.js');
 const url = '/sys/user/getJwt';
+const md5 = require('js-md5');
 $(function(){
   $(".sureLogin").click(()=>{
     let username = $("#username").val();
-    let password = $("#password").val()||'dc483e80a7a0bd9ef71d8cf973673924';
+    let password = md5($("#password").val());
     post(url,{
       username:username,
       password:password
     }).then((res)=>{
-      console.log(res)
       const data = res.data;
       if(data.code == 0){
-        alert('登录成功');
+        setCookie('accessToken',data.data.accessToken)
+        alert('登录成功')
+        window.location.href = '/index.html'
       }else{
-        alert(data.msg)
+        $(".login .waring").css('display','block').html(data.msg)
       }
     })
   })

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 30 - 2
src/js/utils.js


+ 0 - 0
src/templates/modal.html


+ 11 - 2
webpack.config.js

@@ -12,6 +12,7 @@ module.exports = {
     index: path.resolve(__dirname, 'src/js', 'index.js'),
     qcScore:path.resolve(__dirname, 'src/js', 'qcScore.js'),
     login:path.resolve(__dirname, 'src/js', 'login.js'),
+    console:path.resolve(__dirname, 'src/js', 'console.js'),
     vendor: 'lodash'// 多个页面所需的公共库文件,防止重复打包带入
   },
   output: {
@@ -41,7 +42,7 @@ module.exports = {
       title: 'console.html',
       template: path.resolve(__dirname, 'src/html', 'console.html'),
       filename: 'console.html',
-      chunks: ['index', 'vendor', 'common'],
+      chunks: ['console', 'vendor', 'common'],
       hash: true, //防止缓存
       inject: true,
       minify: {
@@ -192,6 +193,14 @@ module.exports = {
             presets:['@babel/preset-env']
           }
         }
+      },   
+      {
+        test: /\.css$/,
+        use: [{
+            loader: MiniCssExtractPlugin.loader
+          },
+          'css-loader'
+        ]
       },
       {
         test: /\.less$/,
@@ -233,7 +242,7 @@ module.exports = {
       '/': proxyHost
     },
     hot: true,
-    openPage:'index.html'
+    openPage:'login.html'
     
   }
 }