瀏覽代碼

团队管理

xiaohaizhao 1 年之前
父節點
當前提交
d17be365a5

+ 18 - 2
components/My_search.vue

@@ -2,7 +2,7 @@
     <view class="search-box">
         <view class="search" :style="{ background: background || '#F2F2F2' }">
             <icon class="icon" type="search" size="3.733vw" />
-            <input v-model="value" class="input" :disabled="disabled" confirm-type="search"
+            <input :focus="inputFocus" v-model="value" class="input" :disabled="disabled" confirm-type="search"
                 placeholder-style="font-size:3.733vw;" :placeholder="placeholder" type="text"
                 @input="isInput ? onConfirm($event) : ''" @confirm="isInput ? '' : onConfirm($event)">
             <icon v-if="value" class="icon" type="clear" size="3.733vw" @click="onClear" />
@@ -18,9 +18,17 @@ export default {
             type: String,
             default: "搜索关键字"
         },
+        focus: {
+            type: Boolean,
+            default: true
+        },
         onSearch: {
             type: Function
         },
+        delay: {
+            type: [String, Number],
+            default: 350
+        },
         disabled: {
             type: Boolean,
             default: false
@@ -33,9 +41,17 @@ export default {
             default: false
         }
     },
+    watch: {
+        focus: function (newVal) {
+            setTimeout(() => {
+                this.inputFocus = newVal;
+            }, this.delay)
+        }
+    },
     data() {
         return {
-            value: ""
+            value: "",
+            inputFocus: false,
         }
     },
     methods: {

+ 49 - 30
components/my_form.vue

@@ -218,27 +218,30 @@
                 <!-- 标签 -->
                 <view class="tag-box custom-class-box " v-else-if="item.type == 'tag'"
                     :style="{ marginTop: tovw(item.marginTop || 0) }">
-                        <text class="label">{{ item.label }}</text>
-                        <view class="tag-list">
-                            <view class="tag" v-for="tag in item.value" :key="tag">
-                                <text>{{tag}}</text>
-                                <view @click="delTag(tag,index)" class="del">x</view>
-                            </view>
-                            <view>
-                                <u-modal :title="item.label" :show="showTagModal" style="flex: 0 !important;" confirmColor='#C30D23' ref="uModal" showCancelButton :asyncClose="false"
-                                    @confirm="addTagSend(index)" @cancel="showTagModal = false">
-                                    <view class="slot-content">
-                                        <view v-if="item.errText" class="err-text" style="margin-bottom: 10px;">
-                                            <icon class="icon" color="#E3041F" type="clear" size="2.733vw" />
-                                            {{ item.errText }}
-                                        </view>
-                                        <u--input :focus="showUModal" @input="onTagInput($event, index)" :placeholder="item.placeholder || '请输入'" v-model="tagValue" border="bottom" clearable />
+                    <text class="label">{{ item.label }}</text>
+                    <view class="tag-list">
+                        <view class="tag" v-for="tag in item.value" :key="tag">
+                            <text>{{ tag }}</text>
+                            <view @click="delTag(tag, index)" class="del">x</view>
+                        </view>
+                        <view>
+                            <u-modal :title="item.label" :show="showTagModal" style="flex: 0 !important;"
+                                confirmColor='#C30D23' ref="uModal" showCancelButton :asyncClose="false"
+                                @confirm="addTagSend(index)" @cancel="showTagModal = false">
+                                <view class="slot-content">
+                                    <view v-if="item.errText" class="err-text" style="margin-bottom: 10px;">
+                                        <icon class="icon" color="#E3041F" type="clear" size="2.733vw" />
+                                        {{ item.errText }}
                                     </view>
-                                </u-modal>
-                                <view class="add-tag" @click="showTagModal=true">+ 添加</view>
-                            </view>
-                            
+                                    <u--input :focus="showUModal" @input="onTagInput($event, index)"
+                                        :placeholder="item.placeholder || '请输入'" v-model="tagValue" border="bottom"
+                                        clearable />
+                                </view>
+                            </u-modal>
+                            <view class="add-tag" @click="showTagModal = true">+ 添加</view>
                         </view>
+
+                    </view>
                 </view>
             </block>
         </block>
@@ -276,8 +279,8 @@ export default {
             list: [],
             focusLabel: "",
             unShowAll: false,
-            showTagModal:false,
-            tagValue:''
+            showTagModal: false,
+            tagValue: ''
         }
     },
     watch: {
@@ -352,13 +355,13 @@ export default {
             }] */
     },
     methods: {
-        delTag (tag,index) {
+        delTag(tag, index) {
             let item = this.list[index];
             console.log(tag);
-            item.value.splice(item.value.indexOf(tag),1)
+            item.value.splice(item.value.indexOf(tag), 1)
             this.$set(this.list[index], 'value', item.value)
         },
-        addTagSend (index) {
+        addTagSend(index) {
             let item = this.list[index]
             if (!item.errText) {
                 item.value.push(this.tagValue)
@@ -368,8 +371,16 @@ export default {
             }
         },
         toRoute(item, index) {
+            let url = item.path;
+            if (item.showValue.length) {
+                let obj = JSON.stringify({
+                    value: item.value,
+                    showValue: item.showValue
+                })
+                url += (url.indexOf("?") == -1 ? '?alreadySelecteds=' : '&alreadySelecteds=') + obj
+            }
             uni.navigateTo({
-                url: item.path
+                url
             });
             this.$Http.routeSelected = function (selected) {
                 this.$emit('interrupt', item, selected, index)
@@ -855,6 +866,7 @@ export default {
     }
 
 }
+
 .tag-box {
     .label {
         width: 100px;
@@ -864,18 +876,21 @@ export default {
         font-size: 14px;
         color: #666666;
         flex-shrink: 0;
+
         .must {
             color: #E3041F;
             margin-right: 5px;
         }
     }
-    .tag-list{
+
+    .tag-list {
         display: flex;
         align-content: center;
         align-items: center;
         flex-wrap: wrap;
         font-family: PingFang SC, PingFang SC;
-        margin-top:10px;
+        margin-top: 10px;
+
         .err-text {
             font-size: 12px;
             color: #E3041F;
@@ -885,6 +900,7 @@ export default {
                 margin-right: 2px;
             }
         }
+
         .tag {
             padding: 6px 10px;
             background: #F2F2F2;
@@ -897,22 +913,25 @@ export default {
             display: flex;
             align-items: center;
             align-content: center;
-            text-align:center;
+            text-align: center;
+
             &:last-child {
                 margin-right: 0 !important;
             }
+
             .del {
                 margin-left: 10px;
                 padding: 2px;
             }
         }
+
         .add-tag {
             border-radius: 5px 5px 5px 5px;
             border: 1px dashed #C30D23;
             padding: 6px 20px;
-            color:#C30D23;
+            color: #C30D23;
             font-weight: 400;
-            margin-bottom:10px;
+            margin-bottom: 10px;
             font-size: 14px;
         }
     }

+ 23 - 2
team/team/modules/userList.vue → components/userList.vue

@@ -1,6 +1,7 @@
 <template>
     <view>
-        <view class="item" v-for="item in list" :key="item.userid" hover-class="navigator-hover" @click="itemClick(item)">
+        <view class="item" v-for="item in list" :key="item.sys_enterprise_hrid" hover-class="navigator-hover"
+            @click="itemClick(item)">
             <u--image
                 :src="item.headpic || 'https://yossys06593.obs.cn-east-3.myhuaweicloud.com:443/202404231713854678447B26b4363.svg'"
                 :width="tovw(44)" :height="tovw(44)" shape="circle">
@@ -30,6 +31,7 @@
                     </text>
                 </view>
             </view>
+            <view v-if="isDelete" class="iconfont icon-shanchu detele" @click.stop="deleteItem(item)" />
         </view>
     </view>
 </template>
@@ -43,11 +45,21 @@ export default {
         },
         onClick: {
             type: Function
-        }
+        },
+        isDelete: {
+            type: Boolean,
+            default: false
+        },
+        onDelete: {
+            type: Function
+        },
     },
     methods: {
         itemClick(item) {
             this.$emit("onClick", item)
+        },
+        deleteItem(item) {
+            this.$emit("onDelete", item)
         }
     },
 }
@@ -55,6 +67,7 @@ export default {
 
 <style lang="scss" scoped>
 .item {
+    position: relative;
     width: 355px;
     background: #FFFFFF;
     border-radius: 8px;
@@ -88,6 +101,14 @@ export default {
         }
     }
 
+    .detele {
+        position: absolute;
+        right: 0;
+        bottom: 0;
+        padding: 10px;
+        color: #999999;
+        font-size: 14px;
+    }
 }
 
 .item:last-child {

+ 1 - 1
packageCase/electricAppliances/index.vue

@@ -8,7 +8,7 @@
         </u-tabs>
         <u-transition :show="searchShow">
             <view class="My_search-box">
-                <My_search :value="content.where.condition" @onSearch="onSearch">
+                <My_search :focus="searchShow" :value="content.where.condition" @onSearch="onSearch">
                     <view class="cancel" v-if="content.where.condition" hover-class="navigator-hover" @click="onSearch('')">
                         取消
                     </view>

+ 4 - 0
pages.json

@@ -76,6 +76,8 @@
 			"path": "storeQRCode/index"
 		}, {
 			"path": "insert/store"
+		}, {
+			"path": "insert/member"
 		}, {
 			"path": "center/detail"
 		}]
@@ -143,6 +145,8 @@
 			"path": "store/store"
 		}, {
 			"path": "place/index"
+		}, {
+			"path": "roleid/roleid"
 		}]
 	}],
 	"preloadRule": {

+ 1 - 1
pages/index/cloud/product.vue

@@ -8,7 +8,7 @@
         </u-tabs>
         <u-transition :show="searchShow">
             <view class="My_search-box">
-                <My_search :value="content.where.condition" @onSearch="onSearch">
+                <My_search :focus="searchShow" :value="content.where.condition" @onSearch="onSearch">
                     <view class="cancel" v-if="content.where.condition" hover-class="navigator-hover" @click="onSearch('')">
                         取消
                     </view>

+ 169 - 0
select/roleid/roleid.vue

@@ -0,0 +1,169 @@
+<template>
+    <view>
+        <view class="head">
+            请选择角色
+        </view>
+        <My_listbox ref="List" @getlist="getList" bottomHeight="70">
+            <view class="item" hover-class="navigator-hover" v-for="item in list" :key="item.roleid"
+                @click="selectItem(item)">
+                <view class="checkbox-box">
+                    <checkbox :checked="selectList.some(v => v == item.roleid)" color="#3874F6"
+                        style="transform:scale(0.7)" />
+                </view>
+                <view class="name u-line-1">
+                    {{ item.rolename || '--' }}
+                </view>
+            </view>
+        </My_listbox>
+        <view class="footer">
+            <view class="total">
+                已选:{{ selectList.length }}
+            </view>
+            <view class="confirm" :class="selectList.length ? '' : 'forbidden'" @click="selectList.length ? submit() : ''">
+                确定
+            </view>
+        </view>
+    </view>
+</template>
+
+<script>
+export default {
+    data() {
+        return {
+            list: [],
+            "content": {
+                "where": {
+                    "sys_enterprise_hrid": 0
+                }
+            },
+            selectList: [],
+            results: [],
+        }
+    },
+    onLoad(options) {
+        console.log("options", options)
+        uni.setNavigationBarTitle({
+            title: options.title || '选择角色'
+        });
+        if (options.sys_enterprise_hrid) this.content.where.sys_enterprise_hrid = options.sys_enterprise_hrid;
+        if (options.alreadySelecteds) {
+            const alreadySelecteds = JSON.parse(options.alreadySelecteds);
+            this.selectList = alreadySelecteds.value;
+            this.results = alreadySelecteds.value.map((v, i) => {
+                return {
+                    roleid: v,
+                    rolename: alreadySelecteds.showValue[i]
+                }
+            });
+        }
+        this.getList()
+    },
+    methods: {
+        getList(init = false) {
+            if (this.paging(this.content, init)) return;
+            this.$Http.basic({
+                "id": 20240411110602,
+                content: this.content
+            }).then(res => {
+                this.$refs.List.RefreshToComplete()
+                console.log("获取角色列表", res)
+                if (this.cutoff(res.msg)) return;
+                this.list = res.pageNumber == 1 ? res.data : this.list.concat(res.data);
+
+                this.content = this.$refs.List.paging(this.content, res)
+            })
+        },
+        selectItem(item) {
+            let index = this.selectList.findIndex(v => v == item.roleid);
+            if (index == -1) {
+                this.selectList.push(item.roleid)
+                this.results.push(item)
+            } else {
+                this.selectList.splice(index, 1);
+                this.results.splice(index, 1);
+            }
+        },
+        submit() {
+            this.$Http.routeSelected({
+                value: this.selectList,
+                showValue: this.results.map(v => v.rolename)
+            })
+        }
+    },
+
+}
+</script>
+
+<style lang="scss" scoped>
+.head {
+    line-height: 17px;
+    font-family: Source Han Sans SC, Source Han Sans SC;
+    font-size: 12px;
+    color: #666666;
+    padding: 10px;
+}
+
+.item {
+    display: flex;
+    align-items: center;
+    height: 50px;
+    background: #fff;
+
+    .checkbox-box {
+        display: flex;
+        justify-content: center;
+        width: 44px;
+        flex-shrink: 0;
+    }
+
+    .name {
+        height: 50px;
+        line-height: 50px;
+        width: 100%;
+        box-sizing: border-box;
+        border-bottom: 0.5px solid #ddd;
+        font-family: PingFang SC, PingFang SC;
+        font-size: 14px;
+        color: #333333;
+        padding-right: 10px;
+    }
+}
+
+
+.footer {
+    position: fixed;
+    bottom: 0;
+    width: 100vw;
+    height: 65px;
+    background: #FFFFFF;
+    box-shadow: 0px -2px 6px 1px rgba(0, 0, 0, 0.16);
+    box-sizing: border-box;
+    padding: 5px 10px;
+    display: flex;
+    justify-content: space-between;
+
+    .total {
+        line-height: 45px;
+        font-family: PingFang SC, PingFang SC;
+        font-size: 14px;
+        color: #333333;
+    }
+
+    .confirm {
+        display: flex;
+        align-items: center;
+        justify-content: center;
+        width: 112px;
+        height: 45px;
+        background: #C30D23;
+        border-radius: 5px;
+        font-family: PingFang SC, PingFang SC;
+        font-size: 14px;
+        color: #FFFFFF;
+    }
+
+    .forbidden {
+        opacity: .6;
+    }
+}
+</style>

+ 13 - 3
select/store/store.vue

@@ -77,11 +77,21 @@ export default {
             results: [],
         }
     },
-    onLoad() {
-        this.getList()
+    onLoad(options) {
         uni.setNavigationBarTitle({
-            title: '选择门店'
+            title: options.title || '选择门店'
         });
+        if (options.alreadySelecteds) {
+            const alreadySelecteds = JSON.parse(options.alreadySelecteds);
+            this.selectList = alreadySelecteds.value;
+            this.results = alreadySelecteds.value.map((v, i) => {
+                return {
+                    sa_storeid: v,
+                    storename: alreadySelecteds.showValue[i]
+                }
+            });
+        }
+        this.getList()
     },
     methods: {
         getList(init = false) {

+ 7 - 3
static/iconfont/iconfont.css

@@ -1,8 +1,8 @@
 @font-face {
   font-family: "iconfont"; /* Project id 4131149 */
-  src: url('//at.alicdn.com/t/c/font_4131149_od1w04hipjs.woff2?t=1715924322036') format('woff2'),
-       url('//at.alicdn.com/t/c/font_4131149_od1w04hipjs.woff?t=1715924322036') format('woff'),
-       url('//at.alicdn.com/t/c/font_4131149_od1w04hipjs.ttf?t=1715924322036') format('truetype');
+  src: url('//at.alicdn.com/t/c/font_4131149_4al2qsdn077.woff2?t=1716534997648') format('woff2'),
+       url('//at.alicdn.com/t/c/font_4131149_4al2qsdn077.woff?t=1716534997648') format('woff'),
+       url('//at.alicdn.com/t/c/font_4131149_4al2qsdn077.ttf?t=1716534997648') format('truetype');
 }
 
 .iconfont {
@@ -13,6 +13,10 @@
   -moz-osx-font-smoothing: grayscale;
 }
 
+.icon-xinzeng:before {
+  content: "\e6df";
+}
+
 .icon-shouji_xian:before {
   content: "\e6de";
 }

+ 158 - 6
store/center/detail.vue

@@ -42,6 +42,31 @@
             @click="changeCurrent" :current="current" />
         <view v-show="current == 0">
             <displayCell :showList="showList" :detail="detail" />
+            <view v-if="detail.status == '审核'" style="height: 30px;" />
+        </view>
+
+        <view v-show="current == 1">
+            <view class="user-head">
+                <view class="title">
+                    门店人员
+                </view>
+                <view class="funs">
+                    <view class="item" hover-class="navigator" @click="changeSearchShow">
+                        <text class="iconfont icon-sousuo" />
+                    </view>
+                    <navigator class="item" @click="onInsert" :url="'/store/insert/member?id=' + detail.sa_storeid">
+                        <text class="iconfont icon-xinzeng" />
+                    </navigator>
+                </view>
+            </view>
+            <u-transition :show="searchShow">
+                <view class="My_search-box">
+                    <My_search :focus="searchShow" :value="content.where.condition" @onSearch="onSearch" />
+                </view>
+            </u-transition>
+            <My_listbox ref="List" @getlist="getList" :bottomHeight="detail.status != '审核' ? 70 : 30">
+                <user-list :list="list" @onClick="onClick" isDelete @onDelete="onDelete" />
+            </My_listbox>
         </view>
         <block v-if="detail.status != '审核'">
             <view style="height: 75px;" />
@@ -50,31 +75,37 @@
                     @click="detail.status == '新建' ? toEdit() : ''">
                     编辑门店信息
                 </view>
-
                 <view class="invite" @click="detail.status == '新建' ? submit() : revocation()">
                     {{ detail.status == '新建' ? '提交门店信息' : '撤回' }}
                 </view>
             </view>
         </block>
-        <view v-else style="height: 30px;" />
     </view>
 </template>
 
 <script>
+import userList from "../../components/userList";
 export default {
+    components: { userList },
     data() {
         return {
             current: 0,
             sa_storeid: 0,
             detail: {},
             tabs: [{ name: "门店详情" }, { name: "门店人员" }],
-            showList: []
-
+            showList: [],
+            "content": {
+                "where": {
+                    "condition": ""
+                }
+            },
+            list: null,
+            searchShow: false,
         }
     },
     onLoad(options) {
-        console.log(options)
         this.sa_storeid = options.id;
+        this.content.sa_storeid = options.id;
         this.getDetail();
         uni.setNavigationBarTitle({
             title: '门店信息'
@@ -82,8 +113,15 @@ export default {
     },
     onUnload() {
         delete this.$Http.uploadStoreDetail;
+        delete this.$Http.uploadUserList;
     },
     methods: {
+        changeSearchShow() {
+            this.searchShow = !this.searchShow;
+            setTimeout(() => {
+                this.$refs.List.setHeight();
+            }, 300)
+        },
         getDetail() {
             this.$Http.basic({
                 "id": "20240410095402",
@@ -140,6 +178,20 @@ export default {
                 url: "/store/insert/store?title=编辑门店信息&data=" + JSON.stringify(this.detail)
             })
         },
+        getList(init = false) {
+            if (this.paging(this.content, init)) return;
+            this.$Http.basic({
+                "id": "20240410150702",
+                content: this.content
+            }).then(res => {
+                this.$refs.List.RefreshToComplete()
+                console.log("获取门店人员列表", res)
+                this.$refs.List.setHeight();
+                if (this.cutoff(res.msg)) return;
+                this.list = res.pageNumber == 1 ? res.data : this.list.concat(res.data);
+                this.content = this.$refs.List.paging(this.content, res)
+            })
+        },
         submit() {
             let that = this;
             uni.showModal({
@@ -180,8 +232,70 @@ export default {
                 }
             });
         },
-        changeCurrent({ index }) {
+        changeCurrent({ index, name }) {
             this.current = index;
+            if (name == '门店人员') {
+                uni.pageScrollTo({
+                    scrollTop: 0,
+                    duration: 0,
+                });
+                if (this.list == null) {
+                    this.getList(true);
+                } else {
+                    setTimeout(() => {
+                        this.$refs.List.setHeight();
+                    }, 300)
+                }
+            }
+        },
+        onClick(item) {
+            uni.navigateTo({
+                url: '/team/userCenter/personal?id=' + item.sys_enterprise_hrid
+            });
+            this.onInsert();
+        },
+        onDelete(item) {
+            this.onInsert();
+            let that = this;
+            uni.showModal({
+                title: '提示',
+                content: `是否确定将“${item.name}”移除门店?`,
+                success: ({ confirm }) => {
+                    if (confirm) that.$Http.basic({
+                        "id": "20240410153602",
+                        "content": {
+                            "sa_store_hrids": [
+                                item.sa_store_hrid
+                            ]
+                        }
+                    }).then(res => {
+                        console.log("删除门店成员", res)
+                        if (that.cutoff(res.msg, `移除成员成功`)) return;
+                        that.$Http.uploadUserList();
+                    })
+                },
+            })
+
+        },
+        onInsert() {
+            this.$Http.uploadUserList = function () {
+                if (this.content.pageNumber && this.content.pageNumber >= 2) {
+                    let content = this.paging(this.content, true, true)
+                    this.$Http.basic({
+                        "id": "20240410150702",
+                        content
+                    }).then(res => {
+                        console.log("更新人员列表", res)
+                        if (this.cutoff(res.msg)) return;
+                        this.$refs.List.setHeight()
+                        this.list = res.data;
+                    })
+                }
+            }.bind(this)
+        },
+        onSearch(condition) {
+            this.content.where.condition = condition;
+            this.getList(true)
         }
     },
 
@@ -259,6 +373,44 @@ export default {
     }
 }
 
+.user-head {
+    height: 60px;
+    width: 100vw;
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    padding: 10px;
+    box-sizing: border-box;
+
+    .title {
+        font-family: PingFang SC, PingFang SC;
+        font-weight: 500;
+        font-size: 16px;
+        color: #333333;
+    }
+
+    .funs {
+        display: flex;
+
+        .item {
+            width: 40px;
+            height: 40px;
+            text-align: center;
+            line-height: 40px;
+            background: #FFFFFF;
+            border-radius: 4px;
+            border: 1px solid #CCCCCC;
+            font-size: 18px;
+            color: #666666;
+            margin-left: 10px;
+        }
+    }
+}
+
+.My_search-box {
+    padding: 10px;
+    padding-top: 0px;
+}
 
 .footer {
     position: fixed;

+ 83 - 0
store/insert/member.vue

@@ -0,0 +1,83 @@
+<template>
+    <My_listbox ref="List" @getlist="getList">
+        <view style="height: 10px;" />
+        <user-list :list="list" @onClick="onClick" />
+    </My_listbox>
+</template>
+
+<script>
+import userList from "../../components/userList"
+export default {
+    components: { userList },
+    data() {
+        return {
+            list: [],
+            "content": {
+                "sa_storeid": 0,
+                "pageNumber": 1,
+                "pageSize": 20
+            }
+        }
+    },
+    onLoad(options) {
+        uni.setNavigationBarTitle({
+            title: options.title || '添加门店成员',
+        });
+        this.content.sa_storeid = options.id;
+        this.getList(true);
+    },
+    onUnload() {
+        this.$Http.uploadUserList && this.$Http.uploadUserList()
+    },
+    methods: {
+        getList(init = false) {
+            if (this.paging(this.content, init)) return;
+            this.$Http.basic({
+                "id": "20240410142002",
+                content: this.content
+            }).then(res => {
+                this.$refs.List.RefreshToComplete()
+                console.log("获取可添加人员列表", res)
+                if (this.cutoff(res.msg)) return;
+                this.list = res.pageNumber == 1 ? res.data : this.list.concat(res.data);
+                this.content = this.$refs.List.paging(this.content, res)
+            })
+        },
+        onClick(item) {
+            let that = this;
+            uni.showModal({
+                title: "提示",
+                content: `是否确定添加“${item.name}”至门店人员中?`,
+                success: ({ confirm }) => {
+                    if (confirm) that.$Http.basic({
+                        "id": "20240410153502",
+                        "content": {
+                            "sa_storeid": that.content.sa_storeid,
+                            "sys_enterprise_hrids": [item.sys_enterprise_hrid]
+                        }
+                    }).then(res => {
+                        console.log("添加成员", res)
+                        if (that.cutoff(res.msg, '添加成功!')) return;
+                        that.onInsert()
+                    })
+                },
+            })
+        },
+        onInsert() {
+            if (this.content.pageNumber && this.content.pageNumber >= 2) {
+                let content = this.paging(this.content, true, true)
+                this.$Http.basic({
+                    "id": "20240410142002",
+                    content
+                }).then(res => {
+                    console.log("更新人员列表", res)
+                    if (this.cutoff(res.msg)) return;
+                    this.list = res.data;
+                })
+            }
+        },
+    },
+}
+</script>
+
+<style lang="scss"></style>

+ 1 - 1
store/orderForm/index.vue

@@ -23,7 +23,7 @@
         </view>
         <u-transition :show="searchShow">
             <view class="My_search-box">
-                <My_search :value="content.where.condition" @onSearch="onSearch">
+                <My_search :focus="searchShow" :value="content.where.condition" @onSearch="onSearch">
                     <view class="cancel" v-if="content.where.condition" hover-class="navigator-hover" @click="onSearch('')">
                         取消
                     </view>

+ 1 - 1
team/team/modules/users.vue

@@ -28,7 +28,7 @@
 </template>
 
 <script>
-import userList from "../../team/modules/userList"
+import userList from "../../../components/userList";
 export default {
     components: { userList },
     data() {

+ 12 - 4
team/userCenter/insert.vue

@@ -25,7 +25,6 @@ export default {
         }
     },
     async onLoad(options) {
-        console.log(options)
         uni.setNavigationBarTitle({
             title: options.title || '新增人员'
         });
@@ -78,10 +77,8 @@ export default {
             value: [],
             showValue: [],
         }];
-
         if (options.data) {
             let data = JSON.parse(options.data);
-            console.log(data)
             this.sys_enterprise_hrid = data.sys_enterprise_hrid;
             form = form.map(v => {
                 switch (v.key) {
@@ -95,6 +92,16 @@ export default {
                 }
                 return v
             })
+            /*  if (data.iswechatbind) form.splice(6, 0, {
+                 key: "roleids",
+                 type: "route",
+                 path: "/select/roleid/roleid?sys_enterprise_hrid=" + data.sys_enterprise_hrid,
+                 isRadio: false,
+                 label: "角色",
+                 isMust: true,//是否必填
+                 value: data.roleids || [],
+                 showValue: data.rolenames ? data.rolenames.split(",") : [],
+             }) */
         }
         this.form = form;
     },
@@ -104,7 +111,7 @@ export default {
         },
         interrupt(item, selected, index) {
             switch (item.key) {
-                case "sa_storeids":
+                default:
                     item.showValue = selected.showValue || [];
                     item.value = selected.value || [];
                     this.$refs.form.setItem(index, item, true)
@@ -116,6 +123,7 @@ export default {
             let that = this;
             this.$refs.form.submit().then(data => {
                 data.sa_storeids = data.sa_storeids.value
+                if (data.roleids) data.roleids = data.roleids.value
                 this.$Http.basic({
                     "id": 20240410164102,
                     "content": {

+ 1 - 1
team/userCenter/personal.vue

@@ -21,7 +21,7 @@
 </template>
 
 <script>
-import user from "../team/modules/userList.vue"
+import user from "../../components/userList.vue"
 export default {
     components: { user },
     data() {

+ 1 - 1
team/userCenter/selectUser.vue

@@ -6,7 +6,7 @@
 </template>
 
 <script>
-import userList from "../team/modules/userList.vue"
+import userList from "../../components/userList.vue"
 export default {
     components: { userList },
     data() {