gaoluyang
19 小时以前 0ef09fda1dfe99c7bba6629a68797cca03165ac1
src/pages/index.vue
@@ -1,24 +1,24 @@
<template>
  <view class="content">
    <view class="header-section">
      <view class="currentFactory">
        <up-text type="primary"
                 :text="userStore.currentFactoryName"
                 @click="show = true"
                 size="18"
                 class="factoryName"
                 suffixIcon="arrow-right"
                 :iconStyle="iconStyle"></up-text>
      </view>
      <up-picker :show="show"
                 :columns="factoryList"
                 @confirm="changeFactory"
                 @cancel="show = false"></up-picker>
    </view>
<!--    <view class="header-section">-->
<!--      <view class="currentFactory">-->
<!--        <up-text type="primary"-->
<!--                 :text="userStore.currentFactoryName"-->
<!--                 @click="show = true"-->
<!--                 size="18"-->
<!--                 class="factoryName"-->
<!--                 suffixIcon="arrow-right"-->
<!--                 :iconStyle="iconStyle"></up-text>-->
<!--      </view>-->
<!--      <up-picker :show="show"-->
<!--                 :columns="factoryList"-->
<!--                 @confirm="changeFactory"-->
<!--                 @cancel="show = false"></up-picker>-->
<!--    </view>-->
    <view class="hero-section">
      <view class="bg-img">
        <view class="hero-content">
          <text class="hero-title">军泰伟业</text>
<!--          <text class="hero-title">军泰伟业</text>-->
        </view>
        <view class="hero-wave"></view>
      </view>
@@ -38,77 +38,77 @@
    <!--         </view>-->
    <!--      </view>-->
    <!-- 营销管理模块 -->
    <!--    <view class="common-module marketing-module">-->
    <!--      <view class="module-header">-->
    <!--        <view class="module-title-container">-->
    <!--          <text class="module-title">营销管理</text>-->
    <!--        </view>-->
    <!--      </view>-->
    <!--      <view class="module-content">-->
    <!--        <up-grid :border="false"-->
    <!--                 col="4">-->
    <!--          <up-grid-item v-for="(item, index) in marketingItems"-->
    <!--                        :key="index"-->
    <!--                        @click="handleCommonItemClick(item)">-->
    <!--            <view class="icon-container"-->
    <!--                  :style="{ background: item.bgColor }">-->
    <!--              <up-icon :name="item.icon"-->
    <!--                       :size="58"-->
    <!--                       color="#ffffff"></up-icon>-->
    <!--            </view>-->
    <!--            <text class="item-label">{{item.label}}</text>-->
    <!--          </up-grid-item>-->
    <!--        </up-grid>-->
    <!--      </view>-->
    <!--    </view>-->
    <view class="common-module marketing-module">
      <view class="module-header">
        <view class="module-title-container">
          <text class="module-title">营销管理</text>
        </view>
      </view>
      <view class="module-content">
        <up-grid :border="false"
                 col="4">
          <up-grid-item v-for="(item, index) in marketingItems"
                        :key="index"
                        @click="handleCommonItemClick(item)">
            <view class="icon-container"
                  :style="{ background: item.bgColor }">
              <up-icon :name="item.icon"
                       :size="58"
                       color="#ffffff"></up-icon>
            </view>
            <text class="item-label">{{item.label}}</text>
          </up-grid-item>
        </up-grid>
      </view>
    </view>
    <!--    &lt;!&ndash; 采购管理模块 &ndash;&gt;-->
    <!--    <view class="common-module purchase-module">-->
    <!--      <view class="module-header">-->
    <!--        <view class="module-title-container">-->
    <!--          <text class="module-title">采购管理</text>-->
    <!--        </view>-->
    <!--      </view>-->
    <!--      <view class="module-content">-->
    <!--        <up-grid :border="false"-->
    <!--                 col="4">-->
    <!--          <up-grid-item v-for="(item, index) in purchaseItems"-->
    <!--                        :key="index"-->
    <!--                        @click="handleCommonItemClick(item)">-->
    <!--            <view class="icon-container"-->
    <!--                  :style="{ background: item.bgColor }">-->
    <!--              <up-icon :name="item.icon"-->
    <!--                       :size="58"-->
    <!--                       color="#ffffff"></up-icon>-->
    <!--            </view>-->
    <!--            <text class="item-label">{{item.label}}</text>-->
    <!--          </up-grid-item>-->
    <!--        </up-grid>-->
    <!--      </view>-->
    <!--    </view>-->
    <!--    &lt;!&ndash; 协同办公模块 &ndash;&gt;-->
    <!--    <view class="common-module collaboration-module">-->
    <!--      <view class="module-header">-->
    <!--        <view class="module-title-container">-->
    <!--          <text class="module-title">协同办公</text>-->
    <!--        </view>-->
    <!--      </view>-->
    <!--      <view class="module-content">-->
    <!--        <up-grid :border="false"-->
    <!--                 col="4">-->
    <!--          <up-grid-item v-for="(item, index) in collaborationItems"-->
    <!--                        :key="index"-->
    <!--                        @click="handleCommonItemClick(item)">-->
    <!--            <view class="icon-container"-->
    <!--                  :style="{ background: item.bgColor }">-->
    <!--              <up-icon :name="item.icon"-->
    <!--                       :size="58"-->
    <!--                       color="#ffffff"></up-icon>-->
    <!--            </view>-->
    <!--            <text class="item-label">{{item.label}}</text>-->
    <!--          </up-grid-item>-->
    <!--        </up-grid>-->
    <!--      </view>-->
    <!--    </view>-->
    <view class="common-module purchase-module">
      <view class="module-header">
        <view class="module-title-container">
          <text class="module-title">采购管理</text>
        </view>
      </view>
      <view class="module-content">
        <up-grid :border="false"
                 col="4">
          <up-grid-item v-for="(item, index) in purchaseItems"
                        :key="index"
                        @click="handleCommonItemClick(item)">
            <view class="icon-container"
                  :style="{ background: item.bgColor }">
              <up-icon :name="item.icon"
                       :size="58"
                       color="#ffffff"></up-icon>
            </view>
            <text class="item-label">{{item.label}}</text>
          </up-grid-item>
        </up-grid>
      </view>
    </view>
    <!-- &lt;!&ndash; 协同办公模块 &ndash;&gt; -->
    <view class="common-module collaboration-module">
      <view class="module-header">
        <view class="module-title-container">
          <text class="module-title">协同办公</text>
        </view>
      </view>
      <view class="module-content">
        <up-grid :border="false"
                 col="4">
          <up-grid-item v-for="(item, index) in collaborationItems"
                        :key="index"
                        @click="handleCommonItemClick(item)">
            <view class="icon-container"
                  :style="{ background: item.bgColor }">
              <up-icon :name="item.icon"
                       :size="58"
                       color="#ffffff"></up-icon>
            </view>
            <text class="item-label">{{item.label}}</text>
          </up-grid-item>
        </up-grid>
      </view>
    </view>
    <!-- 生产管控模块 -->
    <!--      <view class="common-module production-module">-->
    <!--         <view class="module-header">-->
@@ -163,29 +163,29 @@
      </view>
    </view>
    <!-- 设备管理模块 -->
    <!--    <view class="common-module equipment-module">-->
    <!--      <view class="module-header">-->
    <!--        <view class="module-title-container">-->
    <!--          <text class="module-title">设备管理</text>-->
    <!--        </view>-->
    <!--      </view>-->
    <!--      <view class="module-content">-->
    <!--        <up-grid :border="false"-->
    <!--                 col="4">-->
    <!--          <up-grid-item v-for="(item, index) in equipmentItems"-->
    <!--                        :key="index"-->
    <!--                        @click="handleCommonItemClick(item)">-->
    <!--            <view class="icon-container"-->
    <!--                  :style="{ background: item.bgColor }">-->
    <!--              <up-icon :name="item.icon"-->
    <!--                       :size="58"-->
    <!--                       color="#ffffff"></up-icon>-->
    <!--            </view>-->
    <!--            <text class="item-label">{{item.label}}</text>-->
    <!--          </up-grid-item>-->
    <!--        </up-grid>-->
    <!--      </view>-->
    <!--    </view>-->
    <view class="common-module equipment-module">
      <view class="module-header">
        <view class="module-title-container">
          <text class="module-title">设备管理</text>
        </view>
      </view>
      <view class="module-content">
        <up-grid :border="false"
                 col="4">
          <up-grid-item v-for="(item, index) in equipmentItems"
                        :key="index"
                        @click="handleCommonItemClick(item)">
            <view class="icon-container"
                  :style="{ background: item.bgColor }">
              <up-icon :name="item.icon"
                       :size="58"
                       color="#ffffff"></up-icon>
            </view>
            <text class="item-label">{{item.label}}</text>
          </up-grid-item>
        </up-grid>
      </view>
    </view>
  </view>
</template>
@@ -196,8 +196,7 @@
  import modal from "@/plugins/modal";
  import useUserStore from "@/store/modules/user";
  const userStore = useUserStore();
  const factoryId = ref("");
  const userStore = useUserStore();;
  const show = ref(false);
  const factoryList = ref([]);
  const factoryListTem = ref([]);
@@ -279,9 +278,37 @@
  // 协同办公功能数据
  const collaborationItems = reactive([
    {
      icon: "/static/images/icon/xietongshenpi@2x.png",
      label: "协同审批",
      icon: "/static/images/icon/gongchuguanli@2x.png",
      label: "考勤管理",
    },
    {
      icon: "/static/images/icon/baoxiaoguanli.png",
      label: "财务管理",
    },
    {
      icon: "/static/images/icon/huiyiliebiao@2x.png",
      label: "会议管理",
    },
    {
      icon: "/static/images/icon/tongzhigonggao@2x.png",
      label: "通知公告",
    },
    {
      icon: "/static/images/icon/zhishiku@2x.png",
      label: "知识库",
    },
    {
      icon: "/static/images/icon/yongyinguanli@2x.png",
      label: "用印管理",
    },
    {
      icon: "/static/images/icon/guizhangzhidu@2x.png",
      label: "规章制度",
    },
    // {
    //   icon: "/static/images/icon/xietongshenpi@2x.png",
    //   label: "协同审批",
    // },
    {
      icon: "/static/images/icon/kehubaifang@2x.png",
      label: "客户拜访",
@@ -323,6 +350,10 @@
    //    icon: '/static/images/icon/shebeitaizhang@2x.png',
    //    label: '设备台账',
    // },
    {
      icon: "/static/images/icon/shbeibaoxiu@2x.png",
      label: "运行管理",
    },
    {
      icon: "/static/images/icon/shbeibaoxiu@2x.png",
      label: "设备报修",
@@ -421,6 +452,112 @@
          url: "/pages/procurementManagement/paymentLedger/index",
        });
        break;
      case "公出管理":
        uni.navigateTo({
          url: "/pages/cooperativeOffice/collaborativeApproval/index1",
        });
        break;
      case "请假管理":
        uni.navigateTo({
          url: "/pages/cooperativeOffice/collaborativeApproval/index2",
        });
        break;
      case "出差管理":
        uni.navigateTo({
          url: "/pages/cooperativeOffice/collaborativeApproval/index3",
        });
        break;
      case "报销管理":
        uni.navigateTo({
          url: "/pages/cooperativeOffice/collaborativeApproval/index4",
        });
        break;
      case "考勤管理":
        uni.navigateTo({
          url: "/pages/indexItem?label=考勤管理",
        });
        break;
      case "财务管理":
        uni.navigateTo({
          url: "/pages/indexItem?label=财务管理",
        });
        break;
      case "会议管理":
        uni.navigateTo({
          url: "/pages/indexItem?label=会议管理",
        });
        break;
      case "采购管理":
        uni.navigateTo({
          url: "/pages/cooperativeOffice/collaborativeApproval/index5",
        });
        break;
      case "报价管理":
        uni.navigateTo({
          url: "/pages/cooperativeOffice/collaborativeApproval/index6",
        });
        break;
      case "出库管理":
        uni.navigateTo({
          url: "/pages/cooperativeOffice/collaborativeApproval/index7",
        });
        break;
      case "会议设置":
        uni.navigateTo({
          url: "/pages/managementMeetings/meetingSettings/index",
        });
        break;
      case "会议列表":
        uni.navigateTo({
          url: "/pages/managementMeetings/meetingList/index",
        });
        break;
      case "会议申请":
        uni.navigateTo({
          url: "/pages/managementMeetings/meetApplication/index",
        });
        break;
      case "会议审批":
        uni.navigateTo({
          url: "/pages/managementMeetings/meetExamine/index",
        });
        break;
      case "会议发布":
        uni.navigateTo({
          url: "/pages/managementMeetings/meetPublish/index",
        });
        break;
      case "会议总结":
        uni.navigateTo({
          url: "/pages/managementMeetings/meetSummary/index",
        });
        break;
      case "会议看板":
        uni.navigateTo({
          url: "/pages/managementMeetings/meetingBoard/index",
        });
        break;
      case "通知公告":
        uni.navigateTo({
          url: "/pages/cooperativeOffice/noticeManagement/index",
        });
        break;
      case "知识库":
        uni.navigateTo({
          url: "/pages/managementMeetings/knowledgeBase/index",
        });
        break;
      case "用印管理":
        uni.navigateTo({
          url: "/pages/managementMeetings/sealManagement/index",
        });
        break;
      case "规章制度":
        uni.navigateTo({
          url: "/pages/managementMeetings/rulesRegulationsManagement/index",
        });
        break;
      case "协同审批":
        uni.navigateTo({
          url: "/pages/cooperativeOffice/collaborativeApproval/index",
@@ -457,6 +594,11 @@
      case "设备台账":
        uni.navigateTo({
          url: "/pages/equipmentManagement/ledger/index",
        });
        break;
      case "运行管理":
        uni.navigateTo({
          url: "/pages/equipmentManagement/runManagement/index",
        });
        break;
      case "设备报修":
@@ -514,8 +656,7 @@
          factoryListTem.value = res.data;
          res.data.forEach(item => {
            factoryList.value[0].push(item.deptName);
          });
          factoryId.value = userStore.currentDeptId;
          })
        } else {
          // 如果res.data不是数组,设置为空数组
          factoryList.value = [];
@@ -535,7 +676,7 @@
        // 判断扫描结果是否为纯数字(id)
        const isNumericId = /^\d+$/.test(scanResult.trim());
        if (isNumericId) {
          // 如果是纯数字,根据 id 获取工单数据
          const workOrderId = scanResult.trim();
@@ -543,20 +684,23 @@
          try {
            const workRes = await getProductWorkOrderById({ id: workOrderId });
            modal.closeLoading();
            console.log("工单查询结果:", workRes);
            if (workRes.code === 200 && workRes.data) {
              // 新接口返回的是单个对象,不是数组
              const workData = workRes.data;
              console.log("工单数据:", workData);
              orderRow = JSON.stringify({
                id: workData.id || workOrderId,
                planQuantity: workData.planQuantity-workData.completeQuantity,
                productProcessRouteItemId: workData.productProcessRouteItemId || workData.产品工艺路线项ID || "",
                planQuantity: workData.planQuantity - workData.completeQuantity,
                productProcessRouteItemId:
                  workData.productProcessRouteItemId ||
                  workData.产品工艺路线项ID ||
                  "",
              });
              console.log("构造的orderRow:", orderRow);
            } else {
              modal.msgError("未找到对应的工单信息");
@@ -585,7 +729,7 @@
            console.error(e, "解析失败====????=====");
            orderRow = "";
          }
          // 验证是否为有效的JSON
          try {
            JSON.parse(orderRow);
@@ -594,7 +738,7 @@
            return;
          }
        }
        console.log(orderRow, "orderRow======@@@@@@@@");
        // 扫码成功后跳转到生产报工页面,并传递orderRow参数
        uni.navigateTo({
@@ -615,7 +759,6 @@
    const loginForm = {
      username: userStore.name,
      password: uni.getStorageSync("remembered_password"),
      factoryId: factoryId,
    };
    modal.loading("刷新中,请耐心等待...");
    userStore