shish il y a 2 ans
Parent
commit
f2bd69802a
3 fichiers modifiés avec 87 ajouts et 67 suppressions
  1. 28 10
      ghsApp/src/admin/staff/add.vue
  2. 31 13
      ghsApp/src/admin/staff/detail.vue
  3. 28 44
      ghsApp/src/admin/staff/list.vue

+ 28 - 10
ghsApp/src/admin/staff/add.vue

@@ -18,26 +18,36 @@
             </picker>
           </tui-list-cell>
 
+          <tui-list-cell class="line-cell" :hover="false">
+              <div class="tui-title required">手机号</div>
+              <input v-model="form.mobile" type="number" placeholder-class="phcolor" placeholder-style="color:#CCCCCC" class="tui-input" name="mobile" placeholder="员工手机号" />
+          </tui-list-cell>
+
+          <tui-list-cell class="line-cell" :hover="false">
+              <div class="tui-title required">验证码</div>
+              <input v-model="form.authCode" type="number" style="width:330upx;" placeholder-class="phcolor" placeholder-style="color:#CCCCCC" class="tui-input" name="authCode" placeholder="员工收到的验证码" />
+              <button v-if="hasGet == false" class="admin-button-com blue middle" @click="requestAuthCode()">获取</button>
+              <button v-else class="admin-button-com default middle" >{{count}}</button>
+          </tui-list-cell>
+
           <tui-list-cell class="line-cell" :hover="false">
             <div class="tui-title">改库存改价</div>
             <view><switch style="transform:scale(0.7,0.7)" :checked="form.super == 0 ? false : true" @change="superChangeFn" /></view>
           </tui-list-cell>
 
           <tui-list-cell class="line-cell" :hover="false">
-            <div class="tui-title">新订单通知</div>
-            <view><switch style="transform:scale(0.7,0.7)" :checked="form.remind == 0 ? false : true" @change="remindChangeFn" /></view>
+            <div class="tui-title">查看财务</div>
+            <view><switch style="transform:scale(0.7,0.7)" :checked="form.finance == 0 ? false : true" @change="financeChangeFn" /></view>
           </tui-list-cell>
 
           <tui-list-cell class="line-cell" :hover="false">
-              <div class="tui-title required">手机号</div>
-              <input v-model="form.mobile" type="number" placeholder-class="phcolor" placeholder-style="color:#CCCCCC" class="tui-input" name="mobile" placeholder="员工手机号" />
+            <div class="tui-title">管理分店</div>
+            <view><switch style="transform:scale(0.7,0.7)" :checked="form.switchShop == 0 ? false : true" @change="switchShopChangeFn" /></view>
           </tui-list-cell>
 
           <tui-list-cell class="line-cell" :hover="false">
-              <div class="tui-title required">验证码</div>
-              <input v-model="form.authCode" type="number" style="width:330upx;" placeholder-class="phcolor" placeholder-style="color:#CCCCCC" class="tui-input" name="authCode" placeholder="员工收到的验证码" />
-              <button v-if="hasGet == false" class="admin-button-com blue middle" @click="requestAuthCode()">获取</button>
-              <button v-else class="admin-button-com default middle" >{{count}}</button>
+            <div class="tui-title">新订单通知</div>
+            <view><switch style="transform:scale(0.7,0.7)" :checked="form.remind == 0 ? false : true" @change="remindChangeFn" /></view>
           </tui-list-cell>
 
           <tui-list-cell class="line-cell remark-wrap" :hover="false">
@@ -70,7 +80,7 @@ import { getRoleList, getStaffDet as getDet } from "@/api/staff";
 import { getDet as getMemberDet } from "@/api/member";
 import { getStaffAuthCode,createStaff } from "@/api/staff";
 export default {
-  name: "staff-add",
+  name: "add",
   components: {
     TuiListCell,
     AppAvatarModule
@@ -85,7 +95,9 @@ export default {
         remark: "",
         name:'',
         mobile:'',
-        super:0
+        super:0,
+        finance:0,
+        switchShop:0
       },
       roleList: [],
       roleSelData: {},
@@ -102,6 +114,12 @@ export default {
   onShow() {
   },
   methods: {
+    switchShopChangeFn(e){
+      this.form.switchShop = e.detail.value ? 1 : 0;
+    },
+    financeChangeFn(e){
+      this.form.finance = e.detail.value ? 1 : 0;
+    },
     superChangeFn(e){
       this.form.super = e.detail.value ? 1 : 0;
     },

+ 31 - 13
ghsApp/src/admin/staff/detail.vue

@@ -22,6 +22,16 @@
             <view><switch style="transform:scale(0.7,0.7)" :checked="form.super == 0 ? false : true" @change="superChangeFn" /></view>
           </tui-list-cell>
 
+          <tui-list-cell class="line-cell" :hover="false">
+            <div class="tui-title">查看财务</div>
+            <view><switch style="transform:scale(0.7,0.7)" :checked="form.finance == 0 ? false : true" @change="financeChangeFn" /></view>
+          </tui-list-cell>
+
+          <tui-list-cell class="line-cell" :hover="false">
+            <div class="tui-title">管理分店</div>
+            <view><switch style="transform:scale(0.7,0.7)" :checked="form.switchShop == 0 ? false : true" @change="switchShopChangeFn" /></view>
+          </tui-list-cell>
+
           <tui-list-cell class="line-cell" :hover="false">
             <div class="tui-title">新订单通知</div>
             <view><switch style="transform:scale(0.7,0.7)" :checked="form.remind == 0 ? false : true" @change="remindChangeFn" /></view>
@@ -48,7 +58,7 @@ const form = require("@/utils/formValidation.js");
 import { getRoleList, getStaffDet as getDet, updateStaff} from "@/api/staff";
 import { getDet as getMemberDet } from "@/api/member";
 export default {
-  name: "staff-add",
+  name: "detail",
   components: {
     TuiListCell,
     AppAvatarModule
@@ -62,7 +72,9 @@ export default {
         password: "",
         status: 1,
         remark: "",
-        super:0
+        super:0,
+        finance:0,
+        switchShop:0
       },
       roleList: [],
       roleSelData: {},
@@ -72,8 +84,11 @@ export default {
       memberData: {}
     };
   },
-  onLoad() {},
-  onShow() {
+  onLoad() {
+		//返回上一页时需要刷新
+		let pages = getCurrentPages();
+		let prevPage = pages[ pages.length - 2 ];
+		prevPage.$vm.fromDetail = {status:1}
   },
   methods: {
     init() {
@@ -93,19 +108,19 @@ export default {
       if (data){
         return false;
       } 
-      this._getRoleList().then(res => {
+      this.getRoleListFn().then(res => {
         if (this.option.id) {
-          this._getDet();
+          this.getDetail();
         }
       });
     },
-    async _getRoleList() {
+    async getRoleListFn() {
       await getRoleList().then(res => {
         if (this.$util.isEmpty(res.data)) return false;
         this.roleList = res.data.list;
       });
     },
-    _getDet() {
+    getDetail() {
       getDet({ id: this.option.id }).then(res => {
         if (this.$util.isEmpty(res.data)) return;
         Object.keys(this.form).forEach((i, index) => {
@@ -116,11 +131,11 @@ export default {
         )[0];
 
         if (this.form.userId && this.form.userId != "0") {
-          this._getMemberDet();
+          this.getStaffDetail();
         }
       });
     },
-    _getMemberDet() {
+    getStaffDetail() {
       getMemberDet({ userId: this.form.userId }).then(res => {
         if (this.$util.isEmpty(res.data)) return;
         this.memberData = res.data;
@@ -139,15 +154,18 @@ export default {
       this.roleSelData = this.roleList[e.detail.value];
       this.form.roleId = this.roleSelData.id;
     },
+    switchShopChangeFn(e){
+      this.form.switchShop = e.detail.value ? 1 : 0;
+    },
+    financeChangeFn(e){
+      this.form.finance = e.detail.value ? 1 : 0;
+    },
     remindChangeFn(e) {
       this.form.remind = e.detail.value ? 1 : 0;
     },
     superChangeFn(e){
       this.form.super = e.detail.value ? 1 : 0;
     },
-    statusChangeFn(e) {
-      this.form.status = e.detail.value ? 1 : 0;
-    },
     complete(){
       this.$util.pageTo(1)
     },

+ 28 - 44
ghsApp/src/admin/staff/list.vue

@@ -18,13 +18,13 @@
 						<div>
 							<image :src="item.avatar" mode="aspectFit" style="width:100upx;height:100upx;border-radius: 50%"></image>
 						</div>
-						<div class="list-det">
+						<div class="list-det" @click="pageTo({url: '/admin/staff/detail?id='+ item.id})">
 							<div class="list-det-left">
 								<div>
 									<span class="staff-name">{{ item.name }}</span>
-									<span>{{ item.mobile }}</span>
+									<span> {{ item.id }}</span>
 								</div>
-								<div></div>
+								<div>{{ item.mobile }}</div>
 								<div class="flex-center">
 									<div class="status-list">
 										<i class="iconfont icondagou" :class="[item.remind == 1 ? 'app-color-1' : '' ]"></i>
@@ -38,8 +38,8 @@
 								<view class="super-class" v-if="item.founder == 2">超管</view>
 							</div>
 							<div class="list-det-right">
-								<div v-if="item.founder != 2 && item.id != loginInfo.shopAdminId" @click="delModalFn(item)"> <i class="iconfont iconshanchu1"></i> </div>
-								<div @click="pageTo({url: '/admin/staff/detail',query: {id: item.id}})"> <i class="iconfont iconbianji"></i> </div>
+								<div v-if="item.founder != 2 && item.id != loginInfo.shopAdminId" @click.stop="delModalFn(item)"> <i class="iconfont iconshanchu1"></i> </div>
+								<div> <i class="iconfont iconbianji"></i> </div>
 							</div>
 						</div>
 					</div>
@@ -59,29 +59,14 @@
 			<div class="list-wrap role-list">
 				<block v-if="!$util.isEmpty(list.data)">
 					<div class="list" v-for="(item, index) in list.data" :key="index">
-						<div class="app-size-32">{{ item.roleName }}({{ item.num }})</div>
-						<div class="role-option">
-							<!--
-							<div @click="modifyRoleFn(item)">
-								<i class="iconfont iconbianji"></i>
-							</div>
-							<div @click="delModalFn(item)">
-								<i class="iconfont iconshanchu1"></i>
-							</div>
-							-->
-						</div>
+						<div class="app-size-32">{{ item.roleName }}</div>
+						<div class="role-option"></div>
 					</div>
 				</block>
 				<block v-else>
 					<app-wrapper-empty title="暂无数据" :is-empty="$util.isEmpty(list.data)" />
 				</block>
 			</div>
-			<!-- 按钮 -->
-			<!--
-			<div class="app-footer">
-				<div class="admin-button-com middle blue" @click="addRoleFn">添加角色</div>
-			</div>
-			-->
 		</block>
 		<!-- 操作记录 -->
 		<block v-if="tabIndex == 2">
@@ -108,7 +93,7 @@
 			</div>
 		</block>
 		<!-- 角色操作 -->
-		<modal-module :show="roleModal" @cancel="modalCancel" @click="roleModalClick" :title="roleModalText" padding="30upx 30upx">
+		<modal-module :show="roleModal" @cancel="modalCancel" @click="roleModalClick" :title="roleModalText" padding="30rpx 30rpx">
 			<template v-slot:content>
 				<div class="app-modal-input-wrap">
 					<div class="inp-list-line required">
@@ -121,10 +106,9 @@
 			</template>
 		</modal-module>
 		<!-- 删除弹窗 -->
-		<modal-module :show="delModal" @cancel="modalCancel" @click="delModalClick" :content="delModalText" color="#333" :size="32" padding="30upx 30upx"></modal-module>
+		<modal-module :show="delModal" @cancel="modalCancel" @click="delModalClick" :content="delModalText" color="#333" :size="32" padding="30rpx 30rpx"></modal-module>
 	</view>
 </template>
-
 <script>
 import AppTabs from '@/components/plugin/tabs'
 import AppAvatarModule from '@/components/module/app-avatar'
@@ -161,20 +145,19 @@ export default {
 					value: 2
 				}
 			],
-			// 删除弹窗操作
 			delModal: false,
 			delModalText: '确定删除该员工吗?',
 			operateData: {},
-			// 角色弹窗操作
 			roleModal: false,
 			roleModalText: '添加',
 			roleModalVal: '',
-			roleOperateData: {}
+			roleOperateData: {},
+			fromDetail:{status:0}
 		}
 	},
 	onPullDownRefresh() {
 		this.resetList()
-		this._list().then(res => {
+		this.getStaffList().then(res => {
 			uni.stopPullDownRefresh()
 		})
 	},
@@ -183,25 +166,27 @@ export default {
 	},
 	onReachBottom() {
 		if (!this.list.finished) {
-			this._list().then(res => {
+			this.getStaffList().then(res => {
 				uni.stopPullDownRefresh()
 			})
 		} else {
 			uni.stopPullDownRefresh()
 		}
 	},
-	onLoad: function() {
+	onShow(){
+		if(this.fromDetail.status == 1){
+			this.fromDetail.status = 0
+			this.resetList()
+			this.getStaffList()
+		}
 	},
 	methods: {
 		async init() {
-			this._list()
-		},
-		searchFn(){
-
+			this.getStaffList()
 		},
-		_list() {
+		getStaffList() {
 			let hostFn = this.tabIndex == 0 ? getStaffList : this.tabIndex == 1 ? getRoleList : getLogList
-			return hostFn().then(res => {
+			return hostFn({page: this.list.page}).then(res => {
 				this.completes(res)
 			})
 		},
@@ -211,7 +196,7 @@ export default {
 			} else {
 				this.tabIndex = e.index
 				this.resetList()
-				this._list()
+				this.getStaffList()
 			}
 		},
 		// 关闭弹窗
@@ -238,12 +223,11 @@ export default {
 					this.$msg('删除成功!')
 					setTimeout(() => {
 						this.resetList()
-						this._list()
+						this.getStaffList()
 					}, 1000)
 				})
 			}
 		},
-		// 角色操作
 		addRoleFn() {
 			this.roleModal = true
 			this.roleModalText = '添加'
@@ -272,7 +256,7 @@ export default {
 					this.$msg(`${this.roleModalText}成功!`)
 					setTimeout(() => {
 						this.resetList()
-						this._list()
+						this.getStaffList()
 					}, 1000)
 				})
 			}
@@ -339,14 +323,14 @@ export default {
 				position:relative;
 				.staff-name {
 					color: #333;
-					font-size: 30upx;
+					font-size:27upx;
 					font-weight: 600;
 					margin-right: 10upx;
 					display: inline-block;
 					overflow: hidden;
 					text-overflow:ellipsis;
 					white-space: nowrap;
-					width:150upx;
+					width:180upx;
 				}
 				.super-class{
 					background-color: #3385FF;
@@ -358,7 +342,7 @@ export default {
 					text-align: center;
 					padding:6upx 0 6upx 0;
 					position:absolute;
-					right:-90upx;
+					right:-50upx;
 					top:9upx;
 				}
 				.flex-center {