Jelajahi Sumber

编辑时如果账号是启用状态,必填项禁用

xiaohaizhao 11 bulan lalu
induk
melakukan
6936ee39f7
1 mengubah file dengan 197 tambahan dan 176 penghapusan
  1. 197 176
      team/userCenter/insert.vue

+ 197 - 176
team/userCenter/insert.vue

@@ -1,98 +1,115 @@
 <template>
-    <view>
-        <my_form ref="form" :form="form" @isUncomplete="isUncomplete" @interrupt="interrupt" requiredFieldOnly />
-        <view style="height: 70px;" />
-        <view class="footer">
-            <view class="add" @click="uncomplete || loading ? '' : submit()" :class="uncomplete ? 'forbidden' : ''"
-                hover-class=" navigator-hover">
-                <u-loading-icon v-if="loading" />
-                <block v-else>
-                    提交
-                </block>
-            </view>
-        </view>
+  <view>
+    <my_form
+      ref="form"
+      :form="form"
+      @isUncomplete="isUncomplete"
+      @interrupt="interrupt"
+      requiredFieldOnly
+    />
+    <view style="height: 70px" />
+    <view class="footer">
+      <view
+        class="add"
+        @click="uncomplete || loading ? '' : submit()"
+        :class="uncomplete ? 'forbidden' : ''"
+        hover-class=" navigator-hover"
+      >
+        <u-loading-icon v-if="loading" />
+        <block v-else> 提交 </block>
+      </view>
     </view>
+  </view>
 </template>
 
 <script>
 export default {
-    data() {
-        return {
-            sys_enterprise_hrid: 0,
-            form: [],
-            uncomplete: true,
-            loading: false,
+  data() {
+    return {
+      sys_enterprise_hrid: 0,
+      form: [],
+      uncomplete: true,
+      loading: false,
+    };
+  },
+  async onLoad(options) {
+    uni.setNavigationBarTitle({
+      title: options.title || "新增人员",
+    });
+    let form = [
+      {
+        key: "name",
+        type: "text",
+        label: "姓名",
+        isMust: true, //是否必填
+        value: "",
+      },
+      {
+        key: "phonenumber",
+        type: "text",
+        label: "手机号",
+        isMust: true, //是否必填
+        value: "",
+        placeholder: "请输入收货人手机号",
+        inputmode: "number",
+        verify: [this.getReg("phonenumber")],
+      },
+      {
+        key: "sex",
+        type: "sex",
+        label: "性别",
+        value: "男",
+      },
+      {
+        key: "birthday",
+        type: "date",
+        label: "生日",
+        value: "",
+        placeholder: "请选择出生日期",
+      },
+      {
+        key: "email",
+        type: "text",
+        label: "邮箱",
+        isMust: false, //是否必填
+        value: "",
+        verify: [this.getReg("email")],
+      },
+      {
+        key: "position",
+        type: "text",
+        label: "店内职位",
+        isMust: false, //是否必填
+        value: "",
+      },
+      {
+        key: "sa_storeids",
+        type: "route",
+        path: "/select/store/store",
+        isRadio: false,
+        label: "所属门店",
+        isMust: false, //是否必填
+        value: [],
+        showValue: [],
+      },
+    ];
+    if (options.data) {
+      let data = JSON.parse(options.data);
+      this.sys_enterprise_hrid = data.sys_enterprise_hrid;
+      form = form.map((v) => {
+        switch (v.key) {
+          case "sa_storeids":
+            v.showValue = data.storenames ? data.storenames.split(",") : [];
+            v.value = data.sa_storeids || [];
+            break;
+          default:
+            v.value = data[v.key] || "";
+            break;
         }
-    },
-    async onLoad(options) {
-        uni.setNavigationBarTitle({
-            title: options.title || '新增人员'
-        });
-        let form = [{
-            key: "name",
-            type: "text",
-            label: "姓名",
-            isMust: true,//是否必填
-            value: "",
-        }, {
-            key: "phonenumber",
-            type: "text",
-            label: "手机号",
-            isMust: true,//是否必填
-            value: "",
-            placeholder: "请输入收货人手机号",
-            inputmode: 'number',
-            verify: [this.getReg("phonenumber")]
-        }, {
-            key: "sex",
-            type: "sex",
-            label: "性别",
-            value: "男",
-        }, {
-            key: "birthday",
-            type: "date",
-            label: "生日",
-            value: "",
-            placeholder: "请选择出生日期",
-        }, {
-            key: "email",
-            type: "text",
-            label: "邮箱",
-            isMust: false,//是否必填
-            value: "",
-            verify: [this.getReg("email")]
-        }, {
-            key: "position",
-            type: "text",
-            label: "店内职位",
-            isMust: false,//是否必填
-            value: "",
-        }, {
-            key: "sa_storeids",
-            type: "route",
-            path: "/select/store/store",
-            isRadio: false,
-            label: "所属门店",
-            isMust: false,//是否必填
-            value: [],
-            showValue: [],
-        }];
-        if (options.data) {
-            let data = JSON.parse(options.data);
-            this.sys_enterprise_hrid = data.sys_enterprise_hrid;
-            form = form.map(v => {
-                switch (v.key) {
-                    case 'sa_storeids':
-                        v.showValue = data.storenames ? data.storenames.split(",") : []
-                        v.value = data.sa_storeids || []
-                        break;
-                    default:
-                        v.value = data[v.key] || ''
-                        break;
-                }
-                return v
-            })
-            /*  if (data.iswechatbind) form.splice(6, 0, {
+        if (data.status == "启用" && v.isMust) v.disabled = true;
+        return v;
+      });
+      /*  if (data.iswechatbind) form.splice(6, 0, {
                  key: "roleids",
                  type: "route",
                  path: "/select/roleid/roleid?sys_enterprise_hrid=" + data.sys_enterprise_hrid,
@@ -102,103 +119,107 @@ export default {
                  value: data.roleids || [],
                  showValue: data.rolenames ? data.rolenames.split(",") : [],
              }) */
-        }
-        this.form = form;
+    }
+    this.form = form;
+  },
+  methods: {
+    isUncomplete(uncomplete) {
+      this.uncomplete = uncomplete;
     },
-    methods: {
-        isUncomplete(uncomplete) {
-            this.uncomplete = uncomplete;
-        },
-        interrupt(item, selected, index) {
-            switch (item.key) {
-                default:
-                    item.showValue = selected.showValue || [];
-                    item.value = selected.value || [];
-                    this.$refs.form.setItem(index, item, true)
-                    break;
-            }
-        },
-        submit() {
+    interrupt(item, selected, index) {
+      switch (item.key) {
+        default:
+          item.showValue = selected.showValue || [];
+          item.value = selected.value || [];
+          this.$refs.form.setItem(index, item, true);
+          break;
+      }
+    },
+    submit() {
+      this.loading = true;
+      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: {
+              sys_enterprise_hrid: this.sys_enterprise_hrid,
+              ...data,
+            },
+          })
+          .then((res) => {
+            this.loading = false;
+            console.log("加入团队", res);
+            if (this.cutoff(res.msg)) return;
             this.loading = true;
-            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": {
-                        "sys_enterprise_hrid": this.sys_enterprise_hrid,
-                        ...data
-                    }
-                }).then(res => {
-                    this.loading = false;
-                    console.log("加入团队", res)
-                    if (this.cutoff(res.msg)) return;
-                    this.loading = true;
 
-                    this.$Http.uploadUserList && this.$Http.uploadUserList();
-                    if (this.sys_enterprise_hrid == 0) {
-                        uni.showModal({
-                            title: '新增成功',
-                            content: '人员新增成功!是否立即查看',
-                            cancelText: '返回',
-                            confirmText: '查看',
-                            success: ({ confirm }) => {
-                                if (confirm) {
-                                    uni.redirectTo({
-                                        url: '/team/userCenter/personal?id=' + res.data.sys_enterprise_hrid,
-                                    })
-                                } else {
-                                    uni.navigateBack();
-                                }
-                            },
-                        })
-                    } else {
-                        this.$Http.uploadUserDetail && this.$Http.uploadUserDetail();
-                        uni.showToast({
-                            title: "编辑成功",
-                            icon: "none",
-                            duration: 1500,
-                            mask: true
-                        })
-                        setTimeout(() => {
-                            uni.navigateBack();
-                        }, 800)
-                    }
-                })
-            })
-        },
+            this.$Http.uploadUserList && this.$Http.uploadUserList();
+            if (this.sys_enterprise_hrid == 0) {
+              uni.showModal({
+                title: "新增成功",
+                content: "人员新增成功!是否立即查看",
+                cancelText: "返回",
+                confirmText: "查看",
+                success: ({ confirm }) => {
+                  if (confirm) {
+                    uni.redirectTo({
+                      url:
+                        "/team/userCenter/personal?id=" +
+                        res.data.sys_enterprise_hrid,
+                    });
+                  } else {
+                    uni.navigateBack();
+                  }
+                },
+              });
+            } else {
+              this.$Http.uploadUserDetail && this.$Http.uploadUserDetail();
+              uni.showToast({
+                title: "编辑成功",
+                icon: "none",
+                duration: 1500,
+                mask: true,
+              });
+              setTimeout(() => {
+                uni.navigateBack();
+              }, 800);
+            }
+          });
+      });
     },
-}
+  },
+};
 </script>
 
 <style lang="scss" scoped>
 .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;
-    z-index: 999;
+  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;
+  z-index: 999;
 
-    .add {
-        display: flex;
-        align-items: center;
-        justify-content: center;
-        width: 100%;
-        height: 45px;
-        background: #C30D23;
-        border-radius: 5px;
-        font-family: PingFang SC, PingFang SC;
-        font-size: 14px;
-        color: #FFFFFF;
-    }
+  .add {
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    width: 100%;
+    height: 45px;
+    background: #c30d23;
+    border-radius: 5px;
+    font-family: PingFang SC, PingFang SC;
+    font-size: 14px;
+    color: #ffffff;
+  }
 
-    .forbidden {
-        opacity: .6;
-    }
+  .forbidden {
+    opacity: 0.6;
+  }
 }
 </style>