develop
ihzero 2023-12-05 15:58:18 +08:00
commit 7397101ece
28 changed files with 117 additions and 40 deletions

View File

@ -1,3 +1,3 @@
ENV = 'development'
VUE_APP_BASE_API = 'https://lcny-api.peidikeji.cn'
VUE_APP_BASE_API = 'https://lcny.sk797.cn'

View File

@ -1,2 +1,2 @@
<!DOCTYPE html><html lang="zh-CN"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title></title><script>var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') || CSS.supports('top: constant(a)'))
document.write('<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' + (coverSupport ? ', viewport-fit=cover' : '') + '" />')</script><link rel="stylesheet" href="https://lcny.sk797.cn/h5/static/index.97465e7b.css"></head><body><noscript><strong>Please enable JavaScript to continue.</strong></noscript><div id="app"></div><script src="https://lcny.sk797.cn/h5/static/js/chunk-vendors.959091ef.js"></script><script src="https://lcny.sk797.cn/h5/static/js/index.a0307298.js"></script></body></html>
document.write('<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' + (coverSupport ? ', viewport-fit=cover' : '') + '" />')</script><link rel="stylesheet" href="https://lcny.sk797.cn/h5/static/index.97465e7b.css"></head><body><noscript><strong>Please enable JavaScript to continue.</strong></noscript><div id="app"></div><script src="https://lcny.sk797.cn/h5/static/js/chunk-vendors.959091ef.js"></script><script src="https://lcny.sk797.cn/h5/static/js/index.878c9622.js"></script></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["pages-user-password-edit"],{"0771":function(n,t,o){"use strict";o.d(t,"b",(function(){return a})),o.d(t,"c",(function(){return e})),o.d(t,"a",(function(){return s}));var s={uForm:o("aa8f").default,uFormItem:o("e0a3").default,uInput:o("d5da").default,uButton:o("d9ad").default},a=function(){var n=this,t=n.$createElement,o=n._self._c||t;return o("v-uni-view",{staticClass:"password-page"},[o("u-form",{ref:"uForm",attrs:{model:n.form}},[o("u-form-item",{attrs:{label:"密码:","label-width":"100"}},[o("u-input",{attrs:{type:n.type,"password-icon":n.passwordIcon,clearable:!0},model:{value:n.form.password,callback:function(t){n.$set(n.form,"password",t)},expression:"form.password"}})],1),o("u-form-item",{attrs:{label:"确认密码:","label-width":"150"}},[o("u-input",{attrs:{type:n.type,"password-icon":n.passwordIcon,clearable:!0},model:{value:n.form.password_confirmation,callback:function(t){n.$set(n.form,"password_confirmation",t)},expression:"form.password_confirmation"}})],1),o("v-uni-view",{staticClass:"btns",staticStyle:{"margin-top":"68rpx"}},[o("u-button",{attrs:{type:"primary"},on:{click:function(t){arguments[0]=t=n.$handleEvent(t),n.passwordEditFn()}}},[n._v("确定")])],1)],1)],1)},e=[]},"37df":function(n,t,o){"use strict";o.r(t);var s=o("0771"),a=o("b082");for(var e in a)["default"].indexOf(e)<0&&function(n){o.d(t,n,(function(){return a[n]}))}(e);o("ad0e");var r,i=o("f0c5"),u=Object(i["a"])(a["default"],s["b"],s["c"],!1,null,"c5bae556",null,!1,s["a"],r);t["default"]=u.exports},"413f":function(n,t,o){var s=o("24fb");t=s(!1),t.push([n.i,'@charset "UTF-8";\n/**\n * 这里是uni-app内置的常用样式变量\n *\n * uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量\n * 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App\n *\n */\n/**\n * 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能\n *\n * 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件\n */\n/* 颜色变量 */\n/* 行为相关颜色 */\n/* 文字基本颜色 */\n/* 背景颜色 */\n/* 边框颜色 */\n/* 尺寸变量 */\n/* 文字尺寸 */\n/* 图片尺寸 */\n/* Border Radius */\n/* 水平间距 */\n/* 垂直间距 */\n/* 透明度 */\n/* 文章场景相关 */.password-page[data-v-c5bae556]{padding:%?32?%}',""]),n.exports=t},5947:function(n,t,o){var s=o("413f");s.__esModule&&(s=s.default),"string"===typeof s&&(s=[[n.i,s,""]]),s.locals&&(n.exports=s.locals);var a=o("4f06").default;a("c342612e",s,!0,{sourceMap:!1,shadowMode:!1})},"95f7":function(n,t,o){"use strict";o("7a82"),Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o("815d");t.default={data:function(){return{form:{password:"",password_confirmation:""},type:"password",passwordIcon:!0}},onLoad:function(){},methods:{passwordEditFn:function(){console.log(this.form),this.form.password?this.form.password_confirmation?this.form.password==this.form.password_confirmation?((0,s.showLoading)("请稍等..."),this.$http.put("/api/users/reset-password",this.form).then((function(n){var t=n.data;(0,s.hideLoading)(),console.log(t),200==t.code?uni.showToast({title:"修改成功",icon:"none"}):uni.showToast({title:t.message,icon:"none"})})).catch((function(){(0,s.hideLoading)()}))):uni.showToast({title:"两次密码不一致",icon:"none"}):uni.showToast({title:"请输入确认密码",icon:"none"}):uni.showToast({title:"请输入新密码",icon:"none"})}}}},ad0e:function(n,t,o){"use strict";var s=o("5947"),a=o.n(s);a.a},b082:function(n,t,o){"use strict";o.r(t);var s=o("95f7"),a=o.n(s);for(var e in s)["default"].indexOf(e)<0&&function(n){o.d(t,n,(function(){return s[n]}))}(e);t["default"]=a.a}}]);

View File

@ -72,11 +72,10 @@
"flv.js": "^1.6.2",
"flyio": "^0.6.2",
"hls.js": "^1.4.12",
"js-md5": "^0.8.3",
"lodash-es": "^4.17.21",
"mui-player": "^1.8.1",
"portal-vue": "^2.1.7",
"node-sass": "^6.0.1",
"sass-loader": "^13.3.2",
"uview-ui": "^1.8.8",
"video.js": "^8.6.1",
"videojs-contrib-hls": "^5.15.0",
@ -107,6 +106,7 @@
"postcss-comment": "^2.0.0",
"postcss-windicss": "file:src/vendor/postcss-windicss",
"sass": "^1.43.4",
"sass-loader": "^8.0.2",
"vue-template-compiler": "^2.6.11"
},
"browserslist": [

View File

@ -68,8 +68,8 @@
>
<view class="popup-form-ubox">
<view class="top_box">
<view class="title" v-if="setInfo.id"></view>
<view class="title" v-else></view>
<view class="title" v-if="setInfo.id"></view>
<view class="title" v-else></view>
</view>
<scroll-view class="scroll-y" scroll-y="true">
<view class="form_edit" style="padding-left: 50rpx">

View File

@ -46,8 +46,8 @@
mode="center" :closeable="true" :mask-close-able="false" z-index="910">
<view class="popup-form-ubox">
<view class="top_box">
<view class="title" v-if="setInfo.id"></view>
<view class="title" v-else></view>
<view class="title" v-if="setInfo.id"></view>
<view class="title" v-else></view>
</view>
<scroll-view class="scroll-y" scroll-y="true">
<view class="form_edit" style="padding-left: 50rpx;">

View File

@ -53,8 +53,8 @@
mode="center" :closeable="true" :mask-close-able="false" z-index="910">
<view class="popup-form-ubox">
<view class="top_box">
<view class="title" v-if="setInfo.id"></view>
<view class="title" v-else></view>
<view class="title" v-if="setInfo.id"></view>
<view class="title" v-else></view>
</view>
<scroll-view class="scroll-y" scroll-y="true">
<view class="form_edit" style="padding-left: 50rpx;">

View File

@ -25,7 +25,9 @@
v-model="password"
/>
</view>
<u-button type="primary" shape="circle" @tap="login()"> </u-button>
<u-button type="primary" shape="circle" @tap="login()"
> </u-button
>
<!-- <view class="reg" @tap="reg()"> </view> -->
</form>
</view>
@ -40,6 +42,7 @@ import {
toast,
} from '@/com/utils.js'
import jwt from '@/api/jwt.js'
import md5 from 'js-md5'
export default {
data() {
return {
@ -62,7 +65,7 @@ export default {
}
let params = {
username: this.username,
password: this.password,
password: md5(this.password),
}
this.$http
@ -134,8 +137,6 @@ export default {
padding-top: 80rpx;
}
.t-login input {
height: 90rpx;
line-height: 90rpx;

View File

@ -129,6 +129,7 @@
<view class="handle-btns">
<view v-auth="['endpoint.admin_users.destroy']" class="btn_del" @click="deleteInfoId(formInfo.id)"></view>
<view v-auth="['endpoint.admin_users.edit_password']" class="btn_edit" @click="editPwdPopup(formInfo.id)"></view>
<view v-if="formInfo.banned_at" v-auth="['super']" class="btn_edit" @click="unlock(formInfo.id)"></view>
<view v-auth="['endpoint.admin_users.edit']" class="btn_edit" @click="editInfoId(formInfo.id)"></view>
</view>
</view>
@ -150,6 +151,10 @@
<view class="label_t">部门</view>
<view class="flex-1">{{formInfo.department?formInfo.department:'-' }}</view>
</view>
<view class="plist u-border-bottom">
<view class="label_t">封禁时间</view>
<view class="flex-1">{{formInfo.banned_at?$u.date(formInfo.banned_at, 'yyyy-MM-dd hh:mm'):'-' }}</view>
</view>
<view class="plist u-border-bottom">
<view class="label_t">是否启用</view>
<view class="flex-1 flex-row align-items-c">
@ -236,6 +241,7 @@
<script>
import {showLoading,hideLoading} from '@/com/utils.js'
import checkPermission from '@/utils/permission.js'
import md5 from 'js-md5'
export default {
data() {
return {
@ -508,7 +514,7 @@
uni.showToast({ title: '请填写密码', icon: 'none' });
return;
}
params['password'] = password;
params['password'] = md5(password);
this.$http.post(`/api/admin-users`,params).then(({data})=>{
hideLoading();
if(data.code==200){
@ -607,6 +613,30 @@
this.$refs.uFormPwd.setRules(this.rules);
},600)
},
unlock(id){
uni.showModal({
title: '提示',
content: '是否确定解封?',
success: (res)=> {
if (res.confirm) {
console.log('用户点击确定');
showLoading('请稍等...');
this.$http.put(`/api/admin-users/${id}/unban`).then(({data})=>{
hideLoading();
if(data.code==200){
this.popupShow = false;
uni.showToast({ title: data.message, icon: 'none' });
}
}).catch(()=>{
hideLoading();
})
} else if (res.cancel) {
console.log('用户点击取消');
}
}
});
},
//
editPassword(){
@ -614,8 +644,8 @@
if (valid) {
console.log('验证通过');
let params = {
password:this.form.password,
password_confirmation:this.form.password2
password:md5(this.form.password),
password_confirmation:md5(this.form.password2)
}
this.$http.put(`/api/admin-users/${this.form.id}/edit-password`,params).then(({data})=>{
if(data.code==200){

View File

@ -85,8 +85,8 @@
mode="center" :closeable="true" :mask-close-able="false" z-index="910">
<view class="popup-form-ubox">
<view class="top_box">
<view class="title" v-if="setInfo.id"></view>
<view class="title" v-else></view>
<view class="title" v-if="setInfo.id"></view>
<view class="title" v-else></view>
</view>
<scroll-view class="scroll-y" scroll-y="true">
<view class="form_edit" style="padding-left: 50rpx;">
@ -140,7 +140,7 @@
v-if="setInfo.type">{{typeName[setInfo.type]}}</view>
<view class="placeholder" v-else></view>
<view class="right">
<u-icon name="arrow-right" color="#999" size="28"></u-icon>
<!-- <u-icon name="arrow-right" color="#999" size="28"></u-icon> -->
</view>
</view>
</view>

View File

@ -16,6 +16,7 @@
<script>
import {showLoading,hideLoading} from '@/com/utils.js'
import md5 from 'js-md5'
export default {
data() {
return {
@ -46,8 +47,13 @@
uni.showToast({ title: '两次密码不一致', icon: 'none' });
return;
}
showLoading('请稍等...');
this.$http.put('/api/users/reset-password',this.form).then(({data})=>{
this.$http.put('/api/users/reset-password',{
...this.form,
password:md5(this.form.password),
password_confirmation:md5(this.form.password_confirmation)
}).then(({data})=>{
hideLoading();
console.log(data)
if(data.code==200){

View File

@ -22,7 +22,11 @@ const actions = {
async getUserInfo({ commit, dispatch }, userInfo) {
try {
const { data } = await http.get('/api/users/info')
if(data.data.info.username=='admin'){
data.data.permissions_slug.push('super')
}
dispatch(types.USER_INFO, data.data)
} catch (error) {
dispatch('logout')
uni.reLaunch({

View File

@ -7158,6 +7158,11 @@ jiti@^1.9.2:
resolved "https://registry.npmmirror.com/jiti/-/jiti-1.20.0.tgz"
integrity sha512-3TV69ZbrvV6U5DfQimop50jE9Dl6J8O1ja1dvBbMba/sZ3YBEQqJ2VZRoQPVnhlzjNtU1vaXRZVrVjU4qtm8yA==
js-md5@^0.8.3:
version "0.8.3"
resolved "https://registry.yarnpkg.com/js-md5/-/js-md5-0.8.3.tgz#921bab7efa95bfc9d62b87ee08a57f8fe4305b69"
integrity sha512-qR0HB5uP6wCuRMrWPTrkMaev7MJZwJuuw4fnwAzRgP4J4/F8RwtodOKpGp4XpqsLBFzzgqIO42efFAyz2Et6KQ==
js-message@1.0.7:
version "1.0.7"
resolved "https://registry.npmmirror.com/js-message/-/js-message-1.0.7.tgz"
@ -8141,7 +8146,7 @@ negotiator@0.6.3:
resolved "https://registry.npmmirror.com/negotiator/-/negotiator-0.6.3.tgz"
integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==
neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.1, neo-async@^2.6.2:
neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.1:
version "2.6.2"
resolved "https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz"
integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
@ -9932,12 +9937,16 @@ sane@^4.0.3:
minimist "^1.1.1"
walker "~1.0.5"
sass-loader@^13.3.2:
version "13.3.2"
resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-13.3.2.tgz#460022de27aec772480f03de17f5ba88fa7e18c6"
integrity sha512-CQbKl57kdEv+KDLquhC+gE3pXt74LEAzm+tzywcA0/aHZuub8wTErbjAoNI57rPUWRYRNC5WUnNl8eGJNbDdwg==
sass-loader@^8.0.2:
version "8.0.2"
resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-8.0.2.tgz#debecd8c3ce243c76454f2e8290482150380090d"
integrity sha512-7o4dbSK8/Ol2KflEmSco4jTjQoV988bM82P9CZdmo9hR3RLnvNc0ufMNdMrB0caq38JQ/FgF4/7RcbcfKzxoFQ==
dependencies:
neo-async "^2.6.2"
clone-deep "^4.0.1"
loader-utils "^1.2.3"
neo-async "^2.6.1"
schema-utils "^2.6.1"
semver "^6.3.0"
sass@^1.43.4:
version "1.66.1"
@ -9969,7 +9978,7 @@ schema-utils@^1.0.0:
ajv-errors "^1.0.0"
ajv-keywords "^3.1.0"
schema-utils@^2.0.0, schema-utils@^2.5.0, schema-utils@^2.6.5, schema-utils@^2.7.0:
schema-utils@^2.0.0, schema-utils@^2.5.0, schema-utils@^2.6.1, schema-utils@^2.6.5, schema-utils@^2.7.0:
version "2.7.1"
resolved "https://registry.npmmirror.com/schema-utils/-/schema-utils-2.7.1.tgz"
integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==