Browse Source

单位采集白名单

fanghuisheng 2 years ago
parent
commit
b2fab794f6

+ 1 - 1
src/App.vue

@@ -14,7 +14,7 @@ function initApp() {
   initConfig();
   // 检查用户登录状态
   //#ifdef H5
-  checkLogin();
+  // checkLogin();
   //#endif
 }
 

+ 10 - 0
src/api/business/mhxf/unitInfoCollection/index.js

@@ -23,3 +23,13 @@ export function addBaseCompany(param) {
     data: param,
   });
 }
+
+/**
+ * @建筑信息管理删除
+ */
+export function delBaseBuild(param) {
+  return request({
+    url: "/service-fire/baseBuild/delBaseBuild?id=" + param,
+    method: "DELETE",
+  });
+}

+ 2 - 1
src/config.js

@@ -1,7 +1,8 @@
 // 应用全局配置
 export default {
   // baseUrl: 'https://vue.ruoyi.vip/prod-api',
-  baseUrl: import.meta.env.MODE=== "production" ? "http://mobile.usky.cn:8099/prod-api" : "http://172.16.120.165:13200/prod-api",
+  // baseUrl: import.meta.env.MODE=== "production" ? "http://mobile.usky.cn:8099/prod-api" : "http://172.16.120.165:13200/prod-api",
+  baseUrl: import.meta.env.MODE=== "production" ? "http://172.16.120.165:13200/prod-api" : "http://172.16.120.165:13200/prod-api",
   // baseUrl: "http://mobile.usky.cn:8099/prod-api",
   websiteUrl: "https://qhome.usky.cn",
   // NODE_ENV=devlopment

+ 128 - 88
src/pages/business/mhxf/unitInfoCollection/index.vue

@@ -18,7 +18,7 @@
               </u-input>
             </u-form-item>
             <u-form-item label="组织机构代码" prop="organization" required :borderBottom="true">
-              <u-input v-model="form.organization" placeholder="请输入组织机构代码" border="none" />
+              <u-input v-model="form.organization" placeholder="请输入组织机构代码" border="none" maxlength="18" />
             </u-form-item>
             <u-form-item label="法人代表" prop="delegateName" required :borderBottom="true">
               <u-input v-model="form.delegateName" placeholder="请输入法人代表" border="none" />
@@ -27,7 +27,7 @@
               <u-input v-model="form.address" placeholder="请输入单位地址" border="none" />
             </u-form-item>
             <u-form-item label="消防管理人电话" prop="fireManagePhone" required :borderBottom="true">
-              <u-input v-model="form.fireManagePhone" placeholder="请输入消防管理人电话" border="none" />
+              <u-input v-model="form.fireManagePhone" placeholder="请输入消防管理人电话" border="none" maxlength="11" />
             </u-form-item>
             <u-form-item label="成立时间" prop="foundTime" required :borderBottom="true" @click="handleDateTime('成立时间')">
               <u-input v-model="form.foundTime" placeholder="请选择成立时间" border="none" suffixIcon="calendar" suffixIconStyle="color: #909399;font-size:22px" />
@@ -99,7 +99,7 @@
                 <u-input v-model="li.completeYear" placeholder="请选择建成年份" border="none" suffixIcon="calendar" suffixIconStyle="color: #909399;font-size:22px" />
               </u-form-item>
               <u-form-item label="建筑高度" prop="li.buildHigh" required :borderBottom="true">
-                <u-input v-model="li.buildHigh" placeholder="请输入建筑高度" border="none" />
+                <u-input v-model="li.buildHigh" placeholder="请输入建筑高度" border="none" suffixIcon="米" :suffixIconStyle="'color: #909399'"  />
               </u-form-item>
             </view>
           </view>
@@ -111,22 +111,42 @@
       </view>
 
       <view style="position: fixed; left: 0; right: 0; bottom: 0; padding: 15px; background-color: transparent">
-        <view>
-          <u-button type="primary" style="width: 100%; height: 40px; font-size: 14px; margin-bottom: 15px" @click="backSubmit" shape="circle"> 上一步 </u-button>
+        <view style="display: flex">
+          <u-button style="width: 50%; height: 40px; font-size: 14px; margin-right: 15px" @click="backSubmit" shape="circle" customStyle="border-color:#3c9cff;color:#3c9cff"> 上一步 </u-button>
 
-          <u-button type="primary" style="width: 100%; height: 40px; font-size: 14px" @click="submit" shape="circle"> 提交 </u-button>
+          <u-button type="primary" style="width: 50%; height: 40px; font-size: 14px" @click="submit" shape="circle"> 提交 </u-button>
         </view>
       </view>
     </view>
 
     <u-action-sheet :show="actionShow" :actions="actionsList" :title="'请选择' + actionTitle" @close="actionShow = false" @select="selectAction"> </u-action-sheet>
 
-    <u-datetime-picker :show="showTime" v-model="timeValue" mode="date" @close="showTime = false" @cancel="showTime = false" @confirm="timeSubmit" :closeOnClickOverlay="true"></u-datetime-picker>
-
-    <u-modal :show="modalShow" title="系统提示" confirmText="是" cancelText="否" :showCancelButton="true" @confirm="modelSubmit('是')" @cancel="modelSubmit('否')">
+    <u-datetime-picker
+      :show="showTime"
+      v-model="timeValue"
+      mode="date"
+      @close="showTime = false"
+      @cancel="showTime = false"
+      @confirm="timeSubmit"
+      :closeOnClickOverlay="true"
+      :minDate="80"
+    ></u-datetime-picker>
+
+    <u-modal
+      :show="modalShow"
+      title="系统提示"
+      confirmText="修改"
+      cancelText="新增"
+      :showCancelButton="true"
+      cancelColor="#2979ff"
+      @confirm="modelSubmit('是')"
+      @cancel="modelSubmit('否')"
+      :closeOnClickOverlay="true"
+      @close="modalShow = false"
+    >
       <view class="slot-content">
-        <view style="text-align: center; margin-bottom: 10px">是否需要修改“单位名称”为:“{{ newCompanyName }}”的信息吗?</view>
-        <view style="text-align: center; font-size: 13px; color: #ff0000">注:“是”则继续修改,“否”则提交一次新的记录</view>
+        <view style="text-align: center; margin-bottom: 10px">是否修改单位名称为“{{ newCompanyName }}”的信息?</view>
+        <view style="text-align: center; font-size: 13px; color: #ff0000">注:“修改”则点击修改,“新增”将提交一条新的记录,如需“取消”操作可点击空白区域</view>
       </view>
     </u-modal>
   </view>
@@ -138,7 +158,7 @@ import { ref, onMounted, inject, shallowRef, reactive, toRefs, getCurrentInstanc
 
 import publicStore from "@/store/modules/public.js";
 
-import { companyByNameSelect, addBaseCompany } from "@/api/business/mhxf/unitInfoCollection";
+import { companyByNameSelect, addBaseCompany, delBaseBuild } from "@/api/business/mhxf/unitInfoCollection";
 
 const { proxy } = getCurrentInstance();
 
@@ -191,6 +211,22 @@ const dataList = reactive({
         trigger: ["change"],
       },
     ],
+
+    fireManagePhone: [
+      {
+        required: true,
+        message: "请输入消防管理人电话",
+        trigger: ["blur", "change"],
+      },
+      {
+        type: "string",
+        min: 11,
+        required: true,
+        message: "请输入正确11位消防管理人电话",
+        pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
+        trigger: ["blur", "change"],
+      },
+    ],
   },
   noticeBarText: "注:信息提交后不可修改,提交前请核对填写是否有误",
   pagingBool: true,
@@ -243,31 +279,8 @@ function companySubmit(e) {
  * @按钮点击事件
  */
 function submit() {
-  let param = {};
-
   if (newCompanyName.value == "") {
-    param = {
-      baseCompany: {
-        companyName: form.value.companyName, //单位名称
-        organization: form.value.organization, //组织机构代码
-        address: form.value.address, //单位地址
-        foundTime: form.value.foundTime + "T00:00:00", //成立时间
-      },
-      baseCompanyAttach1: {
-        employeeNum: form.value.employeeNum, //职工人数
-        coverArea: form.value.coverArea, //占地面积
-        buildArea: form.value.buildArea, //建筑面积
-        fixedAssets: form.value.fixedAssets, //固定资产
-      },
-      baseCompanyPerson: {
-        delegateName: form.value.delegateName, //法人代表姓名
-        fireDutyName: form.value.fireDutyName, //消防安全责任人姓名
-        fireManageName: form.value.fireManageName, //消防安全管理人姓名
-        fireManagePhone: form.value.fireManagePhone, //消防安全管理人电话
-      },
-      baseBuildList: [],
-    };
-    handleSubmitApi(param);
+    handleSubmitApi("否");
   } else {
     modalShow.value = true;
   }
@@ -278,50 +291,53 @@ function submit() {
  * @按钮点击事件
  */
 function modelSubmit(value) {
-  let param = {
-    baseCompany: {
-      companyName: form.value.companyName, //单位名称
-      organization: form.value.organization, //组织机构代码
-      address: form.value.address, //单位地址
-      foundTime: form.value.foundTime + "T00:00:00", //成立时间
-    },
-    baseCompanyAttach1: {
-      employeeNum: form.value.employeeNum, //职工人数
-      coverArea: form.value.coverArea, //占地面积
-      buildArea: form.value.buildArea, //建筑面积
-      fixedAssets: form.value.fixedAssets, //固定资产
-    },
-    baseCompanyPerson: {
-      delegateName: form.value.delegateName, //法人代表姓名
-      fireDutyName: form.value.fireDutyName, //消防安全责任人姓名
-      fireManageName: form.value.fireManageName, //消防安全管理人姓名
-      fireManagePhone: form.value.fireManagePhone, //消防安全管理人电话
-    },
-    baseBuildList: [],
-  };
-
-  if (value === "是") {
-    param.baseCompany.id = "id" in form.value ? form.value.id : undefined; //主键ID
-    param.baseCompany.companyId = "companyId" in form.value ? form.value.companyId : undefined; //单位ID
-
-    param.baseCompanyAttach1.id = "id1" in form.value ? form.value.id1 : undefined; //附表ID(id1)
-
-    param.baseCompanyPerson.id = "id2" in form.value ? form.value.id2 : undefined; //单位关联人员表ID(id2)
-  }
-
-  handleSubmitApi(param);
+  handleSubmitApi(value);
 }
 
 /**
  * @api提交
  */
-function handleSubmitApi(param) {
+function handleSubmitApi(value) {
+  let param = {};
+
   uForm1.value
     .validate()
     .then((res) => {
       uni.$u.toast("校验通过");
+      uni.$u.toast("校验通过");
+
+      param = {
+        baseCompany: {
+          companyName: form.value.companyName, //单位名称
+          organization: form.value.organization, //组织机构代码
+          address: form.value.address, //单位地址
+          foundTime: form.value.foundTime + "T00:00:00", //成立时间
+        },
+        baseCompanyAttach1: {
+          employeeNum: form.value.employeeNum, //职工人数
+          coverArea: form.value.coverArea, //占地面积
+          buildArea: form.value.buildArea, //建筑面积
+          fixedAssets: form.value.fixedAssets, //固定资产
+        },
+        baseCompanyPerson: {
+          delegateName: form.value.delegateName, //法人代表姓名
+          fireDutyName: form.value.fireDutyName, //消防安全责任人姓名
+          fireManageName: form.value.fireManageName, //消防安全管理人姓名
+          fireManagePhone: form.value.fireManagePhone, //消防安全管理人电话
+        },
+        baseBuildList: [],
+      };
+
+      if (value === "是") {
+        param.baseCompany.id = "id" in form.value ? form.value.id : undefined; //主键ID
+        param.baseCompany.companyId = "companyId" in form.value ? form.value.companyId : undefined; //单位ID
+
+        param.baseCompanyAttach1.id = "id1" in form.value ? form.value.id1 : undefined; //附表ID(id1)
+
+        param.baseCompanyPerson.id = "id2" in form.value ? form.value.id2 : undefined; //单位关联人员表ID(id2)
+      }
 
-      form.value.baseBuildList.forEach((el) => {
+      form.value.baseBuildList.forEach((el, ind) => {
         param.baseBuildList.push({
           buildName: el.buildName, //建筑名称
           address: el.address, //详细地址
@@ -334,11 +350,23 @@ function handleSubmitApi(param) {
           completeYear: el.completeYear, //竣工年份
           buildHigh: el.buildHigh, //建筑高度
         });
+
+        if (value === "是") {
+          if ("id" in el) {
+            param.baseBuildList[ind].id = el.id;
+          }
+        }
       });
 
       addBaseCompany(param).then((res) => {
         if (res.status == "SUCCESS") {
-          proxy.$tab.reLaunch("/pages/index");
+          uni.showToast({
+            title: "提交成功",
+          });
+          setTimeout(()=>{
+            proxy.$tab.reLaunch("/pages/index");
+          },2000)
+          
         }
       });
     })
@@ -428,6 +456,8 @@ function handleDateTime(value, index) {
  * @action弹出框选择事件
  */
 function selectAction(e) {
+  console.log(e);
+
   if (actionTitle.value == "建筑结构") {
     form.value.baseBuildList[actionIndex.value].buildStructure = e.name;
     form.value.baseBuildList[actionIndex.value].buildStructureValue = e.value;
@@ -438,22 +468,24 @@ function selectAction(e) {
     newCompanyName.value = e.companyName;
     form.value = e;
     form.value.foundTime = e.foundTime.split("T")[0];
-    form.value.baseBuildList = [
-      {
-        buildName: "", //建筑名称
-        address: "", //详细地址
-        buildStructure: "", //建筑结构
-        buildStructureValue: 0, //建筑结构
-        aboveFloor: "", //地上楼层
-        underFloor: "", //地下楼层
-        buildArea: "", //建筑面积
-        underSpace: "", //地下空间
-        useCharacter: "", //使用性质
-        useCharacterValue: 0,
-        completeYear: "", //竣工年份
-        buildHigh: "", //建筑高度
-      },
-    ];
+    if (e.baseBuildList.length <= 0) {
+      form.value.baseBuildList = [
+        {
+          buildName: "", //建筑名称
+          address: "", //详细地址
+          buildStructure: "", //建筑结构
+          buildStructureValue: 0, //建筑结构
+          aboveFloor: "", //地上楼层
+          underFloor: "", //地下楼层
+          buildArea: "", //建筑面积
+          underSpace: "", //地下空间
+          useCharacter: "", //使用性质
+          useCharacterValue: 0,
+          completeYear: "", //竣工年份
+          buildHigh: "", //建筑高度
+        },
+      ];
+    }
   }
 }
 
@@ -498,7 +530,15 @@ function addSubmit() {
  * @按钮点击事件
  */
 function deleteSubmit(index) {
-  form.value.baseBuildList.splice(index, 1);
+  console.log("id" in form.value.baseBuildList[index]);
+
+  if ("id" in form.value.baseBuildList[index]) {
+    delBaseBuild(form.value.baseBuildList[index].id).then((res) => {
+      if (res.status == "SUCCESS") {
+        form.value.baseBuildList.splice(index, 1);
+      }
+    });
+  }
 }
 
 /**

+ 3 - 1
src/permission.js

@@ -5,7 +5,8 @@ const loginPage = "/pages/login"
   
 // 页面白名单
 const whiteList = [
-  '/pages/login', '/pages/common/webview/index'
+  '/pages/login', '/pages/common/webview/index',
+  '/pages/business/mhxf/unitInfoCollection/index', '/pages/business/mhxf/unitInfoCollection/index',
 ]
 
 // 检查地址白名单
@@ -19,6 +20,7 @@ let list = ["navigateTo", "redirectTo", "reLaunch", "switchTab"]
 list.forEach(item => {
   uni.addInterceptor(item, {
     invoke(to) {
+      console.log(to)
       if (getToken()) {
         if (to.url === loginPage) {
           uni.reLaunch({ url: "/" })