初始化
This commit is contained in:
395
pages/staff/add.vue
Normal file
395
pages/staff/add.vue
Normal file
@@ -0,0 +1,395 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
|
||||
<view class="contentitem flex-between">
|
||||
<view class="contentitemtext">
|
||||
头像
|
||||
</view>
|
||||
<view class="onecontent_itemright flex-start">
|
||||
|
||||
<view class="onecontent_itemrightimges flex-colum" v-if="avatar" @click="chooseImagelist()">
|
||||
<image :src="avatar"></image>
|
||||
</view>
|
||||
<view class="onecontent_itemrightimges flex-colum" v-else @click="chooseImagelist()">
|
||||
+
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="contentitem flex-between">
|
||||
<text class="contentitemtext">姓名</text>
|
||||
<input class="contentiteminput" v-model="form.nickname" type="text" placeholder="请输入员工姓名">
|
||||
</view>
|
||||
<view class="contentitem flex-between" style="border-radius: 10rpx 10rpx 0 0 ;">
|
||||
<text class="contentitemtext">账号/手机号</text>
|
||||
<input class="contentiteminput" v-model="form.mobile" type="text" placeholder="请设置员工账号/手机号">
|
||||
</view>
|
||||
<view class="contentitem flex-between" style="border-radius: 10rpx 10rpx 0 0 ; margin-top:32rpx ;">
|
||||
<text class="contentitemtext">登录密码</text>
|
||||
<input class="contentiteminput" v-model="form.password" password="false" type="text" placeholder="员工登录密码">
|
||||
</view>
|
||||
<view v-if="staff_id" style="font-size: 24rpx; padding: 10rpx 0;">不修改密码请留空</view>
|
||||
<view class="contentitem flex-between" style="border-radius:0 0 10rpx 10rpx;">
|
||||
<text class="contentitemtext">确认密码</text>
|
||||
<input class="contentiteminput" password="false" v-model="form.passwords" type="text" placeholder="再次输入密码">
|
||||
</view>
|
||||
<view class="contentitem flex-between" style="border-radius:10rpx; margin-top:32rpx;"
|
||||
>
|
||||
<text class="contentitemtext">排序</text>
|
||||
<u-number-box integer v-model="form.sort"></u-number-box>
|
||||
</view>
|
||||
<view v-if="staff_id" class="positionfixed" @click="staffsavestaff">
|
||||
确认修改
|
||||
</view>
|
||||
<view v-else class="positionfixed" @click="staffcreatestaff">
|
||||
确认创建
|
||||
</view>
|
||||
<view class="positionfixeds" @click="staffdeletestaff">
|
||||
删除员工
|
||||
</view>
|
||||
<view class="contentitem flex-between" style="border-radius:10rpx; margin-top:32rpx;"
|
||||
@click="pickershow = true">
|
||||
<text class="contentitemtext">全部订单权限</text>
|
||||
<view class="flex-start">
|
||||
<view class="contentiteminput">{{nameis_limits}}</view>
|
||||
<u-icon name="arrow-right" color="#999999" size="18"></u-icon>
|
||||
</view>
|
||||
</view>
|
||||
<u-picker :show="pickershow" :columns="columns" @confirm='confirm' keyName="label"
|
||||
@cancel='pickershow = false'></u-picker>
|
||||
</view>
|
||||
</template>
|
||||
<script>
|
||||
import uploadImage from "@/js_sdk/yushijie-ossutil/ossutil/uploadFile.js";
|
||||
import {
|
||||
nextTick
|
||||
} from "vue";
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
columns: [
|
||||
[{
|
||||
label: '允许',
|
||||
id: 1
|
||||
}, {
|
||||
label: '不允许',
|
||||
id: 2
|
||||
}],
|
||||
],
|
||||
pickershow: false,
|
||||
staff_id: '',
|
||||
avatar: '',
|
||||
nameis_limits: '允许',
|
||||
form: {
|
||||
nickname: '',
|
||||
mobile: '',
|
||||
store_id: '',
|
||||
password: '',
|
||||
passwords: "",
|
||||
sort: 1,
|
||||
is_limits: 1,
|
||||
avatar: ""
|
||||
}
|
||||
}
|
||||
},
|
||||
onLoad(e) {
|
||||
if (e.id) {
|
||||
uni.setNavigationBarTitle({
|
||||
title: '修改员工'
|
||||
})
|
||||
this.staff_id = e.id
|
||||
this.staffstaffreturn()
|
||||
} else {
|
||||
uni.setNavigationBarTitle({
|
||||
title: '添加员工'
|
||||
})
|
||||
}
|
||||
},
|
||||
onShow() {},
|
||||
methods: {
|
||||
async staffdeletestaff(){
|
||||
let res = await this.api.staffdeletestaff({
|
||||
staff_id:this.staff_id
|
||||
})
|
||||
if (res.code == 1) {
|
||||
uni.showToast({
|
||||
title: '删除成功',
|
||||
icon: 'none'
|
||||
});
|
||||
setTimeout(() => {
|
||||
uni.navigateBack();
|
||||
}, 2000);
|
||||
}
|
||||
},
|
||||
confirm(e) {
|
||||
this.pickershow = false
|
||||
this.form.is_limits = e.value[0].id
|
||||
this.nameis_limits = e.value[0].label
|
||||
console.log(e)
|
||||
},
|
||||
// 上传
|
||||
chooseImagelist() {
|
||||
uni.showLoading({
|
||||
title: '上传中',
|
||||
mask: true
|
||||
})
|
||||
uni.chooseImage({
|
||||
count: 1, //默认9
|
||||
sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
|
||||
sourceType: ['album'], //从相册选择
|
||||
success: (res) => {
|
||||
let file = res.tempFilePaths[0];
|
||||
uploadImage(file, 'wechat/staffadd/',
|
||||
result => {
|
||||
this.avatar = ''
|
||||
this.$nextTick(() => {
|
||||
this.form.avatar = result
|
||||
this.avatar = result
|
||||
uni.hideLoading()
|
||||
})
|
||||
}, result => {
|
||||
uni.hideLoading()
|
||||
})
|
||||
},
|
||||
fail: (res) => {
|
||||
uni.hideLoading()
|
||||
}
|
||||
});
|
||||
},
|
||||
async staffstaffreturn() { //员工信息回显
|
||||
let res = await this.api.staffstaffreturn({
|
||||
staff_id: this.staff_id,
|
||||
});
|
||||
if (res.code == 1) {
|
||||
this.form = res.data
|
||||
this.avatar = res.data.avatar
|
||||
if (this.form.is_limits == 1) {
|
||||
this.nameis_limits = '允许'
|
||||
} else {
|
||||
this.nameis_limits = '不允许'
|
||||
}
|
||||
}
|
||||
},
|
||||
async staffsavestaff() { //修改员工
|
||||
if (this.form.avatar == null || this.form.avatar == '') {
|
||||
uni.showToast({
|
||||
title: '请上传头像',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
if (this.form.nickname == null || this.form.nickname == '') {
|
||||
uni.showToast({
|
||||
title: '请输入姓名',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
if (this.form.mobile == null || this.form.mobile == '') {
|
||||
uni.showToast({
|
||||
title: '请输入电话/员工账号',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
if (this.form.password != null || this.form.passwords != '' || this.form.password != '' || this.form
|
||||
.passwords != null) {
|
||||
if (this.form.password != this.form.passwords) {
|
||||
uni.showToast({
|
||||
title: '两次输入密码不相同',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if (this.form.password != this.form.passwords) {
|
||||
uni.showToast({
|
||||
title: '两次输入密码不相同',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
if (this.form.sort == null || this.form.sort == '') {
|
||||
uni.showToast({
|
||||
title: '请输入排序',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
let res = await this.api.staffsavestaff({
|
||||
nickname: this.form.nickname,
|
||||
mobile: this.form.mobile,
|
||||
staff_id: this.staff_id,
|
||||
sort: this.form.sort,
|
||||
is_limits:this.form.is_limits,
|
||||
avatar:this.form.avatar
|
||||
});
|
||||
if (res.code == 1) {
|
||||
uni.showToast({
|
||||
title: '修改成功',
|
||||
icon: 'none'
|
||||
});
|
||||
setTimeout(() => {
|
||||
uni.navigateBack();
|
||||
}, 2000);
|
||||
}
|
||||
},
|
||||
async staffcreatestaff() { //创建员工
|
||||
if (this.form.avatar == null || this.form.avatar == '') {
|
||||
uni.showToast({
|
||||
title: '请上传头像',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
if (this.form.nickname == null || this.form.nickname == '') {
|
||||
uni.showToast({
|
||||
title: '请输入姓名',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
if (this.form.mobile == null || this.form.mobile == '') {
|
||||
uni.showToast({
|
||||
title: '请输入电话/员工账号',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
if (this.form.password == null || this.form.password == '') {
|
||||
uni.showToast({
|
||||
title: '请输入密码',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
if (this.form.passwords == null || this.form.passwords == '') {
|
||||
uni.showToast({
|
||||
title: '请输入确认密码',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
if (this.form.password != this.form.passwords) {
|
||||
uni.showToast({
|
||||
title: '两次输入密码不相同',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
if (this.form.sort == null || this.form.sort == '') {
|
||||
uni.showToast({
|
||||
title: '请输入排序',
|
||||
icon: 'none'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
let res = await this.api.staffcreatestaff(this.form);
|
||||
if (res.code == 1) {
|
||||
uni.showToast({
|
||||
title: '创建成功',
|
||||
icon: 'none'
|
||||
});
|
||||
setTimeout(() => {
|
||||
uni.navigateBack();
|
||||
}, 2000);
|
||||
}
|
||||
},
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
page {
|
||||
background: #FBFBFA;
|
||||
}
|
||||
|
||||
.content {
|
||||
margin: 32rpx 28rpx;
|
||||
|
||||
.positionfixeds {
|
||||
position: fixed;
|
||||
width: 70%;
|
||||
bottom: 120rpx;
|
||||
left: 15%;
|
||||
padding: 10rpx 0;
|
||||
text-align: center;
|
||||
background: #d4d4d4;
|
||||
font-size: 36rpx;
|
||||
border-radius: 18rpx;
|
||||
font-family: SourceHanSansCN-Regular, SourceHanSansCN;
|
||||
font-weight: 400;
|
||||
color: #707070;
|
||||
}
|
||||
|
||||
.positionfixed {
|
||||
position: fixed;
|
||||
width: 70%;
|
||||
bottom: 40rpx;
|
||||
left: 15%;
|
||||
padding: 10rpx 0;
|
||||
text-align: center;
|
||||
background: #2F87FD;
|
||||
font-size: 36rpx;
|
||||
border-radius: 18rpx;
|
||||
font-family: SourceHanSansCN-Regular, SourceHanSansCN;
|
||||
font-weight: 400;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.contentitem {
|
||||
width: 100%;
|
||||
padding: 12rpx 16rpx;
|
||||
border-bottom: 2rpx solid #E5E5E5;
|
||||
background: #FFFFFF;
|
||||
|
||||
.contentitemtext {
|
||||
font-size: 32rpx;
|
||||
font-family: SourceHanSansCN-Regular, SourceHanSansCN;
|
||||
font-weight: 400;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.onecontent_itemright {
|
||||
.onecontent_itemrighttext {
|
||||
font-size: 24rpx;
|
||||
font-family: SourceHanSansCN-Regular, SourceHanSansCN;
|
||||
font-weight: 400;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.onecontent_itemrightimges {
|
||||
width: 112rpx;
|
||||
height: 112rpx;
|
||||
background: #F5F5F5;
|
||||
border-radius: 10rpx;
|
||||
font-size: 40rpx;
|
||||
color: #878787;
|
||||
|
||||
image {
|
||||
width: 112rpx;
|
||||
height: 112rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.onecontent_itemright_text {
|
||||
width: 100%;
|
||||
font-size: 24rpx;
|
||||
font-family: SourceHanSansCN-Regular, SourceHanSansCN;
|
||||
font-weight: 400;
|
||||
color: #999999;
|
||||
}
|
||||
}
|
||||
|
||||
.contentiteminput {
|
||||
padding-left: 20rpx;
|
||||
text-align: right;
|
||||
flex: auto;
|
||||
font-size: 28rpx;
|
||||
font-family: SourceHanSansCN-Regular, SourceHanSansCN;
|
||||
font-weight: 400;
|
||||
color: #999999;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user