jwyu 10 月之前
父节点
当前提交
7bcf7cb472

+ 1 - 1
.env.development

@@ -5,4 +5,4 @@ VITE_APP_BASE_URL="/"
 # 打包输入文件名
 VITE_APP_OUTDIR="eta_mini_crm_front"
 # 参数解密key
-VITE_APP_RESPONSE_DES_KEY="MxuqSoUrTAmyRd9fb0TtlrPk"
+VITE_APP_RESPONSE_DES_KEY="5filp4vSvLVQK8SLioNlKm3q"

+ 1 - 1
.env.production

@@ -5,4 +5,4 @@ VITE_APP_BASE_URL="/"
 # 打包输入文件名
 VITE_APP_OUTDIR="eta_mini_crm_front"
 # 参数解密key
-VITE_APP_RESPONSE_DES_KEY="MxuqSoUrTAmyRd9fb0TtlrPk"
+VITE_APP_RESPONSE_DES_KEY="5filp4vSvLVQK8SLioNlKm3q"

+ 1 - 1
.env.test

@@ -5,4 +5,4 @@ VITE_APP_BASE_URL="/"
 # 打包输入文件名
 VITE_APP_OUTDIR="eta_mini_crm_front"
 # 参数解密key
-VITE_APP_RESPONSE_DES_KEY="MxuqSoUrTAmyRd9fb0TtlrPk"
+VITE_APP_RESPONSE_DES_KEY="5filp4vSvLVQK8SLioNlKm3q"

+ 4 - 0
src/api/system/user.js

@@ -32,6 +32,10 @@ export default {
   // 获取系统中所有用户 按部门分级
   allUserForDepart:params=>{
     return get('/seller/list',params)
+  },
+  // 系统用户修改密码
+  modifyPwd:params=>{
+    return post('/sys_user/reset_my_pass',params)
   }
 
   

+ 10 - 1
src/components/AllUserForDepart.vue

@@ -7,6 +7,14 @@ const props=defineProps({
   clearable:{
     type:Boolean,
     default:false
+  },
+  filterable:{
+    type:Boolean,
+    default:true
+  },
+  placeholder:{
+    type:String,
+    default:'营业部/销售'
   }
 })
 const emits=defineEmits(['change'])
@@ -46,9 +54,10 @@ function handleChange(){
       ...props.props
     }"
     v-model="model"
-    placeholder="营业部\销售"
+    :placeholder="props.placeholder"
     collapse-tags
     :clearable="clearable"
+    :filterable="filterable"
     @change="handleChange"
   />
 </template>

+ 5 - 0
src/views/Login.vue

@@ -3,6 +3,7 @@ import { apiSystemCommon, apiSystemRole } from '@/api/system'
 import md5 from 'js-md5'
 import { Base64 } from 'js-base64'
 import { useRouter } from 'vue-router'
+import { ElMessage } from 'element-plus'
 
 const router = useRouter()
 
@@ -52,6 +53,10 @@ function getMenuList() {
   apiSystemRole.menuData().then(res => {
     if (res.Ret === 200) {
       const arr = res.Data || []
+      if(arr.length===0){
+        ElMessage.warning('您暂无任何菜单权限请联系管理员')
+        return
+      }
       let path = ''
       if (arr[0]?.Children[0]) {
         path = arr[0].Children[0].Path

+ 15 - 1
src/views/customer/UserEdit.vue

@@ -61,6 +61,15 @@ const formRules = {
   company: [{ required: true, message: '所属公司不能为空', trigger: 'blur' }],
   sellerId: [{ required: true, message: '请选择销售', trigger: 'change' }],
 }
+const showPhoneVal=computed({
+  get(){
+    return formState.phone
+  },
+  set(value){
+    // formState.phone=value.replace(/\s+/g, ''); //`\s`在正则表达式中匹配的不仅仅是空格;它还匹配制表符、换行符等。如果只想替换普通的空白字符(即ASCII码中的32号字符)
+    formState.phone=value.replace(/ /g, '');
+  }
+})
 const formState = reactive({
   realName: '',
   areaCode: '86',
@@ -73,6 +82,7 @@ const formState = reactive({
 
 })
 
+
 const checkedIds = ref([])
 
 function getUserInfo() {
@@ -90,6 +100,9 @@ function getUserInfo() {
       formState.validTime = [dayjs(Detail.ValidStartTime).format('YYYY-MM-DD'), dayjs(Detail.ValidEndTime).format('YYYY-MM-DD')]
       formState.company = Detail.Company
       formState.isEnabled = Detail.Status ? true : false
+      if(route.query.startTime){
+        formState.validTime=[route.query.startTime,route.query.endTime]
+      }
     }
   })
 }
@@ -193,7 +206,7 @@ async function handleSave(type) {
               />
             </el-select>
             <el-input
-              v-model="formState.phone"
+              v-model="showPhoneVal"
               placeholder="手机号和邮箱至少填一个"
               style="width: 60%; margin-left: 5%"
             />
@@ -210,6 +223,7 @@ async function handleSave(type) {
                 emitPath: false,
               }"
               v-model="formState.sellerId"
+              placeholder="请选择营业部/销售"
             />
           </el-form-item>
         </div>

+ 1 - 0
src/views/customer/UserList.vue

@@ -206,6 +206,7 @@ function handleGoDetail(e){
           multiple: true,
         }"
         clearable
+        filterable
         @change="handleFilterList"
       />
       <el-select

+ 3 - 1
src/views/customer/components/EnableUser.vue

@@ -61,7 +61,9 @@ function goEdit(){
   router.push({
     path:'/customer/userEdit',
     query:{
-      id:props.userId
+      id:props.userId,
+      startTime:time.value[0],
+      endTime:time.value[1]
     }
   })
 }

+ 1 - 0
src/views/customer/reportStatistic/List.vue

@@ -118,6 +118,7 @@ function handleShowDetail(e){
           multiple: true,
         }"
         clearable
+        filterable
         @change="handleFilterList"
       />
       <el-select

+ 1 - 0
src/views/system/AuthSet.vue

@@ -32,6 +32,7 @@ async function getRoleAuthData(){
   defaultCheckedKeys.value=arr.filter(i=>{
     return !hArr.includes(i)
   })
+  checkboxTree.value.setCheckedKeys(defaultCheckedKeys.value)
 }
 
 function handlRoleChange(){

+ 6 - 3
src/views/system/ResetPwd.vue

@@ -1,6 +1,8 @@
 <script setup>
 import { useRouter } from "vue-router"
 import {checkPassWord} from '@/utils/common'
+import {apiSystemUser} from '@/api/system'
+import { Base64 } from 'js-base64'
 
 const router = useRouter()
 
@@ -51,9 +53,10 @@ async function addSubmit() {
     return false;
   }
 
-  const res = await modifyPwd({
-    OldPwd: md5.hex_md5(addForm.OldPwd),
-    NewPwd: md5.hex_md5(addForm.NewPwd),
+  const res = await apiSystemUser.modifyPwd({
+    OriginPassword:Base64.encode(addForm.OldPwd),
+    Password:Base64.encode(addForm.NewPwd),
+    RePassword:Base64.encode(addForm.twoNewPwd),
   })
   if (res.Ret == 200) {
     ElMessage.success("修改密码成功,请重新登录!");

+ 1 - 1
src/views/system/RoleList.vue

@@ -74,7 +74,7 @@ async function handleDel(e) {
 <template>
   <div class="system-rolelist-page">
     <div class="shadow-box top-box">
-      <el-button type="primary" @click="handleEdit" v-permission="'role:add'">添加角色</el-button>
+      <el-button type="primary" @click="handleEdit('')" v-permission="'role:add'">添加角色</el-button>
     </div>
     <div class="shadow-box content-box">
       <el-table

+ 2 - 2
src/views/system/userList/components/EditUser.vue

@@ -196,7 +196,7 @@ async function handleSave() {
           :disabled="isEditAdmin"
         />
       </el-form-item>
-      <el-form-item label="登录密码" prop="pwd" v-if="!props.data||!isEditAdmin">
+      <el-form-item label="登录密码" prop="pwd" v-if="!props.data&&!isEditAdmin">
         <el-input
           v-model.trim="formState.pwd"
           placeholder="6-12位数字与字母的组合"
@@ -234,7 +234,7 @@ async function handleSave() {
           style="width: 60%; margin-left: 5%"
         />
       </el-form-item>
-      <el-form-item label="所属部门" prop="depart" v-if="!isEditAdmin">
+      <el-form-item label="所属部门" prop="depart" v-if="!props.data&&!isEditAdmin">
         <el-cascader
           style="width: 100%"
           :options="departArr"