Procházet zdrojové kódy

Merge remote-tracking branch 'origin/yjb_ScrmStores' into yjb_ScrmStores

zyy před 22 hodinami
rodič
revize
5e649dfe70
2 změnil soubory, kde provedl 95 přidání a 19 odebrání
  1. 18 0
      src/api/his/company.js
  2. 77 19
      src/views/his/company/index.vue

+ 18 - 0
src/api/his/company.js

@@ -94,3 +94,21 @@ export function exitMiniProgram(data) {
     data: data
   })
 }
+
+//封禁销售公司ipad
+export function oneClickDisable(data) {
+  return request({
+    url: '/his/company/oneClickDisable',
+    method: 'post',
+    data: data
+  })
+}
+
+//启用销售公司ipad
+export function oneClickEnable(data) {
+  return request({
+    url: '/his/company/oneClickEnable',
+    method: 'post',
+    data: data
+  })
+}

+ 77 - 19
src/views/his/company/index.vue

@@ -48,6 +48,16 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
+      <el-form-item label="ipad是否封禁" prop="ipadDeactivate">
+        <el-select v-model="queryParams.ipadDeactivate" placeholder="请选择类型" clearable size="small">
+          <el-option
+            v-for="dict in ipadDeactivate"
+            :key="dict.dictValue"
+            :label="dict.dictLabel"
+            :value="dict.dictValue"
+          />
+        </el-select>
+      </el-form-item>
       <el-form-item>
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@@ -136,6 +146,12 @@
           </el-tag>
         </template>
       </el-table-column>
+      <el-table-column label="ipad是否封禁" align="center">
+        <template v-slot="scope">
+          <el-tag v-if="scope.row.ipadDeactivate == 0" type="success">否</el-tag>
+          <el-tag v-else type="danger">是</el-tag>
+        </template>
+      </el-table-column>
       <el-table-column label="备注" align="center" prop="remark"/>
       <el-table-column label="主小程序" align="center" prop="masterAppName"/>
       <el-table-column label="备小程序" align="center" prop="backupAppName"/>
@@ -193,6 +209,16 @@
             @click="handleRevenue(scope.row)"
             v-hasPermi="['his:companyDivConfig:set']"
           >分账配置</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="oneClickIpad(scope.row)"
+            v-hasPermi="['his:company:oneClickDisable']"
+          >
+            <span v-if="scope.row.ipadDeactivate == 0">一键停用ipad</span>
+            <span v-else>一键启用ipad</span>
+          </el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -603,7 +629,9 @@ import {
   resetPwd,
   getDivConfig,
   setDiv,
-  exitMiniProgram
+  exitMiniProgram,
+  oneClickDisable,
+  oneClickEnable
 } from '@/api/his/company'
 import { getFollowDoctorList } from '@/api/his/doctor'
 import { docList } from '@/api/his/doctor'
@@ -613,19 +641,21 @@ import { cateList } from '@/api/his/packageCate'
 import { getConfigByKey } from '@/api/system/config'
 import { listDept } from '@/api/system/dept'
 import { listAll } from '@/api/course/coursePlaySourceConfig'
+import Template from '@/views/his/complaint/template.vue'
 
 export default {
   name: 'Company',
+  components: { Template },
   data() {
     return {
-      signProjectName:"",
+      signProjectName: "",
       redSubmit: false,
       //分账参数
-      revenue:{
+      revenue: {
         open: false,
         title: '分账配置'
       },
-      revenueForm:{
+      revenueForm: {
         companyId: null,
         companyName: '',
         divFlag: '0',
@@ -667,6 +697,13 @@ export default {
       open: false,
       // 状态字典
       statusOptions: [],
+      ipadDeactivate:[{
+        dictValue:0,
+        dictLabel:'否'
+      },{
+        dictValue:1,
+        dictLabel:'是'
+      }],
       // 企业类型字典
       companyTypeOptions: [],
       //部门字典
@@ -681,7 +718,8 @@ export default {
         companyType: null,
         limitUserCount: null,
         maxPadNum: -1,
-        queryAppName:null,
+        queryAppName: null,
+        ipadDeactivate:null
       },
       voiceApis: [],
       // 表单参数
@@ -795,7 +833,7 @@ export default {
       this.deptOptions = response.data
     })
     getConfigByKey("medicalMall.func.switch").then(response => {
-      if(response.data && response.data.configValue) {
+      if (response.data && response.data.configValue) {
         this.medicalMallConfig = JSON.parse(response.data.configValue);
       }
     });
@@ -825,7 +863,7 @@ export default {
       }).catch(() => {
       })
     },
-    handleRevenue(row){
+    handleRevenue(row) {
       const companyId = row.companyId
       // 重置表单数据,避免保留上次的数据
       this.revenueForm = {
@@ -836,31 +874,31 @@ export default {
         percentageFlag: 'N',
         iscCleanSplit: 'N',
         acctInfos: [],
-        isAdd: 1
+        isAdd: 1,
       }
 
       //查询配置
       getDivConfig(companyId).then(response => {
-        if(response.data){
+        if (response.data) {
           this.revenueForm = {
             ...response.data,
             companyId: companyId,
             companyName: row.companyName,
             isAdd: 0  // 已有配置,设置为更新操作
           }
-          if(response.data.acctInfos == null){
+          if (response.data.acctInfos == null) {
             this.revenueForm.acctInfos = []
           }
-          if(response.data.divFlag != null){
+          if (response.data.divFlag != null) {
             this.revenueForm.divFlag = String(response.data.divFlag)
           }
-          if(!response.data.delayAcctFlag){
+          if (!response.data.delayAcctFlag) {
             this.revenueForm.delayAcctFlag = 'N'
           }
-          if(!response.data.percentageFlag){
+          if (!response.data.percentageFlag) {
             this.revenueForm.percentageFlag = 'N'
           }
-          if(!response.data.iscCleanSplit){
+          if (!response.data.iscCleanSplit) {
             this.revenueForm.iscCleanSplit = 'N'
           }
         }
@@ -884,11 +922,11 @@ export default {
       this.deductForm.money = null
       this.deduct.open = true
     },
-    submitRevenueForm(){
+    submitRevenueForm() {
       // 使用深拷贝,避免影响其他数据
       var param = JSON.parse(JSON.stringify(this.revenueForm));
-      console.log("--------------提交的分账配置参数",param)
-      if(param.companyId && param.divFlag != null){
+      console.log("--------------提交的分账配置参数", param)
+      if (param.companyId && param.divFlag != null) {
         setDiv(param).then(response => {
           if (response.code === 200) {
             this.msgSuccess(response.msg)
@@ -1143,9 +1181,29 @@ export default {
       }).catch(() => {
       })
     },
-    padNumFormatter(row){
-      // console.log(row.maxPadNum.type)
+    padNumFormatter(row) {
       return row.maxPadNum === -1 ? '不限' : row.maxPadNum
+    },
+    //一键封禁和启用
+    oneClickIpad(row) {
+      const text =(row.ipadDeactivate == 0 || row.ipadDeactivate == null)?'禁用':'启用';
+      this.$confirm('是否一键'+text+'当前销售公司ipad!',row.companyName, '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      }).then(() => {
+        let companyIds = [row.companyId]
+        if(row.ipadDeactivate == 0){
+          oneClickDisable({companyIds:companyIds}).then(response => {
+            this.getList();
+          })
+        }else {
+          oneClickEnable({companyIds:companyIds}).then(response => {
+            this.getList();
+          })
+        }
+      }).catch(() => {
+      });
     }
   }
 }