qq_41295110
2025-12-04 05fb7af4f0316fdae54f52076509e582ca5e1e4c
Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-VUEUI
2个文件已添加
37个文件已修改
3730 ■■■■ 已修改文件
.env.development 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.env.production 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.js 220 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/store/modules/permission.js 108 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/CaiGouGuanLi/CaiGouRuKu/Kf_POStockInBillEdit.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FbStepFoldOutBillList/fbStepFoldOutBillList.vue 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FbStepFoldinBillList/fbStepFoldinBillList.vue 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/KCGL/MoveStockBill/Kf_MoveStockBillEdit.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/KCGL/OtherOutBill/Kf_OtherOutBillEdit.vue 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/KCGL/OtherOutBill/Kf_OtherOutBillList.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/ProductInBill/Kf_ProductInBillEdit.vue 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/ProductInBill/Kf_ProductInBillList.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/gy/gyDepartment.vue 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/gy/gyDepartmentEdit.vue 147 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/gy/gySupplier.vue 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/gyEmployee/gyEmployeeEdit.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/component/HSourceReportHtml/index.vue 210 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/purchase/cgPoInStockBill/cgPoInStockBill.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/purchase/cgPoOrderBill/cgPoOrderBill.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/purchase/postockInBack/Kf_POStockInBackBillList.vue 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/scMould/basicModeling/Gy_MouldFile.vue 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainList.vue 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit.vue 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/sell/XsSeOutStockBackBillEdit.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/sell/XsSeOutStockBackBillList.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/sell/XsSeOutStockBill.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/sell/sellOut/sellOutBill.vue 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/sell/xsSeOrderBill/xsSeOrderBill.vue 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/sell/xsSeOrderBill/xsSeOrderBillEdit.vue 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/user/GyDriver.vue 1676 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/user/GyDriverEdit.vue 734 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/user/Xt_UserGroupEdit.vue 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/user/Xt_UserGroupList.vue 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/user/xtUserList.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/user/xtUserListEdit.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/barcodeMaster/Gy_BarCodeBill.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/shipment/Kf_StockOutRequestBill.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/shipment/Kf_StockOutRequestBillList.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/transfer/Kf_MoveStockRequestBillEdit.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.env.development
@@ -6,7 +6,8 @@
# 智云迈思L-MOM管理系统/开发环境
# VUE_APP_BASE_API = 'http://localhost:81/API/'
VUE_APP_BASE_API = 'http://47.96.97.237/API/'
# VUE_APP_BASE_API = 'http://220.189.218.155:9010/API/'
# VUE_APP_BASE_API = 'http://47.96.97.237/API/'
VUE_APP_BASE_API = 'http://220.189.218.155:9010/API/'
VUE_APP_BASE_API = 'http://localhost:8082/LuBaoAPI/'
# 路由懒加载
VUE_CLI_BABEL_TRANSPILE_MODULES = true
.env.production
@@ -5,7 +5,7 @@
ENV = 'production'
# 智云迈思L-MOM管理系统/生产环境
VUE_APP_BASE_API = 'http://47.96.97.237/API/'
# VUE_APP_BASE_API = 'http://220.189.218.155:9010/API/'
# VUE_APP_BASE_API = 'http://47.96.97.237/API/'
VUE_APP_BASE_API = 'http://220.189.218.155:9010/API/'
# 路由懒加载
VUE_CLI_BABEL_TRANSPILE_MODULES = true
src/router/index.js
@@ -141,7 +141,10 @@
    children: [
      {
        path: "/sell/StockBillMainList/KfICStockBillMainList",
        component: () => import("@/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainList.vue"),
        component: () =>
          import(
            "@/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainList.vue"
          ),
        name: "KfICStockBillMainList",
        meta: { title: "销售退货单", activeMenu: "sell/StockBillMainList" },
      },
@@ -160,7 +163,10 @@
    children: [
      {
        path: "/sell/StockBillMainList/KfICStockBillMainListEdit",
        component: () => import("@/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit.vue"),
        component: () =>
          import(
            "@/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit.vue"
          ),
        name: "KfICStockBillMainListEdit",
        meta: { title: "销售退货单编辑", activeMenu: "sell/StockBillMainList" },
      },
@@ -204,6 +210,25 @@
      },
    ],
  },
  //用户列表
  {
    path: "/system/user/GyDriver",
    component: Layout,
    hidden: true,
    redirect: "noredirect",
    meta: {
      breadcrumb: false, // 如果设置为false,则不会在breadcrumb面包屑中显示
      activeMenu: "/system/user", // 当路由设置了该属性,则会高亮相对应的侧边栏。
    },
    children: [
      {
        path: "/system/user/GyDriver",
        component: () => import("@/views/system/user/GyDriver.vue"),
        name: "gyDriver",
        meta: { title: "驾驶员列表", activeMenu: "system/user" },
      },
    ],
  },
  //采购入库单
  {
    path: "/purchase/POStockInBill/POStockInBillList",
@@ -217,7 +242,8 @@
    children: [
      {
        path: "/purchase/POStockInBill/POStockInBillList",
        component: () => import("@/views/CaiGouGuanLi/CaiGouRuKu/Kf_POStockInBillList.vue"),
        component: () =>
          import("@/views/CaiGouGuanLi/CaiGouRuKu/Kf_POStockInBillList.vue"),
        name: "POStockInBillList",
        meta: { title: "采购入库单", activeMenu: "purchase/POStockInBill" },
      },
@@ -236,7 +262,8 @@
    children: [
      {
        path: "/purchase/POStockInBill/POStockInBillEdit",
        component: () => import("@/views/CaiGouGuanLi/CaiGouRuKu/Kf_POStockInBillEdit.vue"),
        component: () =>
          import("@/views/CaiGouGuanLi/CaiGouRuKu/Kf_POStockInBillEdit.vue"),
        name: "POStockInBillEdit",
        meta: {
          title: "采购入库单编辑",
@@ -367,7 +394,6 @@
        component: () => import("@/views/sell/xsSeOrderBill/xsSeOrderBill"),
        name: "XsSeOrderBill",
        meta: { title: "销售订单维护", activeMenu: "sell/seOrder" },
      },
      {
        path: "/sell/seOrder/xsSeOrderBillEdit",
@@ -485,7 +511,7 @@
  },
  // 生产订单
  {
    path: "/icmo/scIcmoBill/scIcmoBillList",
    path: "/icmo",
    component: Layout,
    hidden: true,
    redirect: "noredirect",
@@ -529,7 +555,6 @@
  },
  // i节点页面
  {
    path: "/iframe",
    component: () => import("@/layout/emptyLayout"), // 使用空布局
    hidden: true, // 在侧边栏不显示
@@ -541,50 +566,51 @@
        meta: { title: "退货通知单", noCache: true, noLoading: true },
      },
      {
        path: "XsSeOutStockBillEdit",
        component: () => import("@/views/sell/XsSeOutStockBillEdit"), // 发货通知单
        name: "IframeXsSeOutStockBillEdit",
        meta: { title: "发货通知单", noCache: true, noLoading: true },
      },
      {
        path: 'XsSeOrderBillEdit',
        component: () => import('@/views/sell/xsSeOrderBill/xsSeOrderBillEdit'), // 销售订单
        name: 'IframeXsSeOrderBillEdit',
        meta: { title: '销售订单', noCache: true, noLoading: true }
        path: "XsSeOrderBillEdit",
        component: () => import("@/views/sell/xsSeOrderBill/xsSeOrderBillEdit"), // 销售订单
        name: "IframeXsSeOrderBillEdit",
        meta: { title: "销售订单", noCache: true, noLoading: true },
      },
      {
        path: 'ScICMOBillEdit',
        component: () => import('@/views/ICMO/ScICMOBillEdit'), // 生产订单
        name: 'IframeScICMOBillEdit',
        meta: { title: '生产订单', noCache: true, noLoading: true }
      },
       {
        path: 'CgPoOrderBillEdit',
        component: () => import('@/views/purchase/cgPoOrderBill/cgPoOrderBillEdit'), // 采购订单
        name: 'IframeCgPoOrderBillEdit',
        meta: { title: '采购订单', noCache: true, noLoading: true }
      },
       {
        path: 'CgPoInStockBillEdit',
        component: () => import('@/views/purchase/cgPoInStockBill/cgPoInStockBillEdit'), // 收料通知单
        name: 'IframeCgPoInStockBillEdit',
        meta: { title: '收料通知单', noCache: true, noLoading: true }
        path: "ScICMOBillEdit",
        component: () => import("@/views/ICMO/ScICMOBillEdit"), // 生产订单
        name: "IframeScICMOBillEdit",
        meta: { title: "生产订单", noCache: true, noLoading: true },
      },
      {
        path: 'GyWarehouse',
        path: "CgPoOrderBillEdit",
        component: () =>
          import("@/views/purchase/cgPoOrderBill/cgPoOrderBillEdit"), // 采购订单
        name: "IframeCgPoOrderBillEdit",
        meta: { title: "采购订单", noCache: true, noLoading: true },
      },
      {
        path: "CgPoInStockBillEdit",
        component: () =>
          import("@/views/purchase/cgPoInStockBill/cgPoInStockBillEdit"), // 收料通知单
        name: "IframeCgPoInStockBillEdit",
        meta: { title: "收料通知单", noCache: true, noLoading: true },
      },
      {
        path: "GyWarehouse",
        component: () => import("@/views/basic/gyWarehouse/gyWarehouse"), // 仓库
        name: 'IframeGyWarehouse',
        meta: { title: '仓库列表', noCache: true, noLoading: true }
        name: "IframeGyWarehouse",
        meta: { title: "仓库列表", noCache: true, noLoading: true },
      },
      {
        path: 'GyMaterial',
        path: "GyMaterial",
        component: () => import("@/views/gyMaterial/GyMaterial"), // 物料
        name: 'IframeGyMaterial',
        meta: { title: '物料列表', noCache: true, noLoading: true }
        name: "IframeGyMaterial",
        meta: { title: "物料列表", noCache: true, noLoading: true },
      },
    ]
  },    // 客户
    ],
  }, // 客户
  {
    path: "/GyCustomer",
    component: () => import("@/views/GyCustomer/index"),
@@ -695,7 +721,8 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldProdOutBillList",
        component: () => import("@/views/scMould/warehouse/Sc_MouldProdOutBillList"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldProdOutBillList"),
        name: "Sc_MouldProdOutBillList",
        meta: { title: "器具领用出库单维护", activeMenu: "scMould/warehouse" },
      },
@@ -714,7 +741,8 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldProdOutBillEdit",
        component: () => import("@/views/scMould/warehouse/Sc_MouldProdOutBillEdit"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldProdOutBillEdit"),
        name: "Sc_MouldProdOutBillEdit",
        meta: { title: "器具领用出库单编辑", activeMenu: "scMould/warehouse" },
      },
@@ -734,7 +762,8 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldProdBackBillList",
        component: () => import("@/views/scMould/warehouse/Sc_MouldProdBackBillList"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldProdBackBillList"),
        name: "Sc_MouldProdBackBillList",
        meta: { title: "器具领用退库单维护", activeMenu: "scMould/warehouse" },
      },
@@ -753,7 +782,8 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldProdBackBillEdit",
        component: () => import("@/views/scMould/warehouse/Sc_MouldProdBackBillEdit"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldProdBackBillEdit"),
        name: "Sc_MouldProdBackBillEdit",
        meta: { title: "器具领用退库单编辑", activeMenu: "scMould/warehouse" },
      },
@@ -773,7 +803,8 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldProdMoveBillList",
        component: () => import("@/views/scMould/warehouse/Sc_MouldProdMoveBillList"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldProdMoveBillList"),
        name: "Sc_MouldProdMoveBillList",
        meta: { title: "器具直接调拨单维护", activeMenu: "scMould/warehouse" },
      },
@@ -792,7 +823,8 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldProdMoveBillEdit",
        component: () => import("@/views/scMould/warehouse/Sc_MouldProdMoveBillEdit"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldProdMoveBillEdit"),
        name: "Sc_MouldProdMoveBillEdit",
        meta: { title: "器具直接调拨单编辑", activeMenu: "scMould/warehouse" },
      },
@@ -812,7 +844,8 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldInRequestBillList",
        component: () => import("@/views/scMould/warehouse/Sc_MouldInRequestBillList"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldInRequestBillList"),
        name: "Sc_MouldInRequestBillList",
        meta: { title: "器具入库申请单维护", activeMenu: "scMould/warehouse" },
      },
@@ -831,13 +864,14 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldInRequestBillEdit",
        component: () => import("@/views/scMould/warehouse/Sc_MouldInRequestBillEdit"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldInRequestBillEdit"),
        name: "Sc_MouldInRequestBillEdit",
        meta: { title: "器具入库申请单编辑", activeMenu: "scMould/warehouse" },
      },
    ],
  },
    //器具领用申请单维护
  //器具领用申请单维护
  {
    path: "/scMould/warehouse/Sc_MouldOutRequestBillList",
    component: Layout,
@@ -851,7 +885,8 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldOutRequestBillList",
        component: () => import("@/views/scMould/warehouse/Sc_MouldOutRequestBillList"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldOutRequestBillList"),
        name: "Sc_MouldOutRequestBillList",
        meta: { title: "器具领用申请单维护", activeMenu: "scMould/warehouse" },
      },
@@ -870,13 +905,14 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldOutRequestBillEdit",
        component: () => import("@/views/scMould/warehouse/Sc_MouldOutRequestBillEdit"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldOutRequestBillEdit"),
        name: "Sc_MouldOutRequestBillEdit",
        meta: { title: "器具领用申请单编辑", activeMenu: "scMould/warehouse" },
      },
    ],
  },
    //器具调拨申请单维护
  //器具调拨申请单维护
  {
    path: "/scMould/warehouse/Sc_MouldMoveStockRequestBillList",
    component: Layout,
@@ -890,7 +926,8 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldMoveStockRequestBillList",
        component: () => import("@/views/scMould/warehouse/Sc_MouldMoveStockRequestBillList"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldMoveStockRequestBillList"),
        name: "Sc_MouldMoveStockRequestBillList",
        meta: { title: "器具调拨申请单维护", activeMenu: "scMould/warehouse" },
      },
@@ -909,14 +946,13 @@
    children: [
      {
        path: "/scMould/warehouse/Sc_MouldMoveStockRequestBillEdit",
        component: () => import("@/views/scMould/warehouse/Sc_MouldMoveStockRequestBillEdit"),
        component: () =>
          import("@/views/scMould/warehouse/Sc_MouldMoveStockRequestBillEdit"),
        name: "Sc_MouldMoveStockRequestBillEdit",
        meta: { title: "器具调拨申请单编辑", activeMenu: "scMould/warehouse" },
      },
    ],
  },
  //直接调拨单维护
  {
@@ -958,11 +994,6 @@
      },
    ],
  },
  //权限查询
  {
@@ -1172,47 +1203,58 @@
          import("@/views/purchase/postockInBack/Kf_POStockInBackBillList.vue"),
        name: "Kf_POStockInBackBillList",
        meta: {
          title: "采购退料单维护",
          title: "采购退料单列表(已入库)",
          activeMenu: "purchase/postockInBack",
        },
      }
    ],
  },
  {
    path: "/purchase/postockInBack/Kf_POStockInBackBillList0",
    component: Layout,
    hidden: true,
    redirect: "noredirect",
    meta: {
      breadcrumb: false, // 如果设置为false,则不会在breadcrumb面包屑中显示
      activeMenu: "/purchase/postockInBack/Kf_POStockInBackBillList", // 当路由设置了该属性,则会高亮相对应的侧边栏。
    },
    children: [
      {
        path: "/purchase/postockInBack/Kf_POStockInBackBillList0",
        component: () =>
          import("@/views/purchase/postockInBack/Kf_POStockInBackBillList.vue"),
        name: "Kf_POStockInBackBillList",
        meta: {
          title: "采购退料单列表(未入库)",
          activeMenu: "purchase/postockInBack",
        },
      },
    ],
  },
  //生产入库单列表
  {
    path: "/purchase/ProductInBill/ProductInBillList",
    component: Layout,
    hidden: true,
    redirect: "noredirect",
    meta: {
      breadcrumb: false, // 如果设置为false,则不会在breadcrumb面包屑中显示
      activeMenu: "/purchase/ProductInBill", // 当路由设置了该属性,则会高亮相对应的侧边栏。
    },
    children: [
      {
        path: "/purchase/ProductInBill/ProductInBillList",
        component: () => import("@/views/ProductInBill/Kf_ProductInBillList.vue"),
        name: "ProductInBillList",
        meta: { title: "生产入库单列表", activeMenu: "/purchase/ProductInBill" },
      },
    ],
  },
  //生产入库单
  {
    path: "/purchase/ProductInBill/ProductInBillEdit",
    path: "/icmo",
    component: Layout,
    hidden: true,
    redirect: "noredirect",
    meta: {
      breadcrumb: false, // 如果设置为false,则不会在breadcrumb面包屑中显示
      activeMenu: "/purchase/ProductInBill", // 当路由设置了该属性,则会高亮相对应的侧边栏。
      activeMenu: "/icmo/productInBill", // 当路由设置了该属性,则会高亮相对应的侧边栏。
    },
    children: [
      {
        path: "/purchase/ProductInBill/ProductInBillEdit",
        component: () => import("@/views/ProductInBill/Kf_ProductInBillEdit.vue"),
        path: "/icmo/productInBill/productInBillList",
        component: () =>
          import("@/views/ProductInBill/Kf_ProductInBillList.vue"),
        name: "ProductInBillList",
        meta: { title: "生产入库单列表", activeMenu: "icmo/productInBill" },
      },
      {
        path: "/icmo/productInBill/productInBillEdit",
        component: () =>
          import("@/views/ProductInBill/Kf_ProductInBillEdit.vue"),
        name: "ProductInBillEdit",
        meta: { title: "生产入库单", activeMenu: "/purchase/ProductInBill" },
        meta: { title: "生产入库单", activeMenu: "icmo/productInBill" },
      },
    ],
  },
@@ -1230,9 +1272,13 @@
    children: [
      {
        path: "/purchase/OtherOutBill/OtherOutBillList",
        component: () => import("@/views/KCGL/OtherOutBill/Kf_OtherOutBillList.vue"),
        component: () =>
          import("@/views/KCGL/OtherOutBill/Kf_OtherOutBillList.vue"),
        name: "OtherOutBillList",
        meta: { title: "其他出库单列表", activeMenu: "/views/KCGL/OtherOutBill" },
        meta: {
          title: "其他出库单列表",
          activeMenu: "/views/KCGL/OtherOutBill",
        },
      },
    ],
  },
@@ -1249,7 +1295,8 @@
    children: [
      {
        path: "/purchase/OtherOutBill/OtherOutBillEdit",
        component: () => import("@/views/KCGL/OtherOutBill/Kf_OtherOutBillEdit.vue"),
        component: () =>
          import("@/views/KCGL/OtherOutBill/Kf_OtherOutBillEdit.vue"),
        name: "OtherOutBillEdit",
        meta: { title: "其他出库单", activeMenu: "/views/KCGL/OtherOutBill" },
      },
@@ -1268,7 +1315,8 @@
    children: [
      {
        path: "/icmo/scICMOReportBill/scICMOReportBillList",
        component: () => import("@/views/ICMO/ScICMOReportBill/ScICMOReportBillList.vue"),
        component: () =>
          import("@/views/ICMO/ScICMOReportBill/ScICMOReportBillList.vue"),
        name: "ScICMOBillList",
        meta: { title: "生产汇报单维护", activeMenu: "/icmo/scICMOReportBill" },
      },
src/store/modules/permission.js
@@ -234,7 +234,10 @@
                      noCache: false,
                      title: "销售退货单维护",
                    },
                    component: () =>import ("@/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainList.vue"),
                    component: () =>
                      import(
                        "@/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainList.vue"
                      ),
                    hidden: false,
                    name: "KfICStockBillMainList",
                    path: "KfICStockBillMainList",
@@ -246,7 +249,10 @@
                      noCache: false,
                      title: "销售退货单",
                    },
                    component: () =>import ("@/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit.vue"),
                    component: () =>
                      import(
                        "@/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit.vue"
                      ),
                    hidden: false,
                    name: "KfICStockBillMainListEdit",
                    path: "KfICStockBillMainListEdit",
@@ -290,7 +296,9 @@
                      title: "出库申请单维护",
                    },
                    component: () =>
                      import("@/views/warehouse/shipment/Kf_StockOutRequestBillList.vue"),
                      import(
                        "@/views/warehouse/shipment/Kf_StockOutRequestBillList.vue"
                      ),
                    hidden: false,
                    name: "Kf_StockOutRequestBillList",
                    path: "Kf_StockOutRequestBillList",
@@ -303,7 +311,9 @@
                      title: "出库申请单",
                    },
                    component: () =>
                      import("@/views/warehouse/shipment/Kf_StockOutRequestBill.vue"),
                      import(
                        "@/views/warehouse/shipment/Kf_StockOutRequestBill.vue"
                      ),
                    hidden: false,
                    name: "Kf_StockOutRequestBill",
                    path: "Kf_StockOutRequestBill",
@@ -331,7 +341,9 @@
                      title: "调拨申请单维护",
                    },
                    component: () =>
                      import("@/views/warehouse/transfer/Kf_MoveStockRequestBillList.vue"),
                      import(
                        "@/views/warehouse/transfer/Kf_MoveStockRequestBillList.vue"
                      ),
                    hidden: false,
                    name: "Kf_MoveStockRequestBillList",
                    path: "Kf_MoveStockRequestBillList",
@@ -344,7 +356,9 @@
                      title: "调拨申请单",
                    },
                    component: () =>
                      import("@/views/warehouse/transfer/Kf_MoveStockRequestBillEdit.vue"),
                      import(
                        "@/views/warehouse/transfer/Kf_MoveStockRequestBillEdit.vue"
                      ),
                    hidden: false,
                    name: "Kf_MoveStockRequestBillEdit",
                    path: "Kf_MoveStockRequestBillEdit",
@@ -357,7 +371,9 @@
                      title: "直接调拨单维护",
                    },
                    component: () =>
                      import("@/views/KCGL/MoveStockBill/Kf_MoveStockBillList.vue"),
                      import(
                        "@/views/KCGL/MoveStockBill/Kf_MoveStockBillList.vue"
                      ),
                    hidden: false,
                    name: "Kf_MoveStockBillList",
                    path: "Kf_MoveStockBillList",
@@ -370,7 +386,9 @@
                      title: "直接调拨单",
                    },
                    component: () =>
                      import("@/views/KCGL/MoveStockBill/Kf_MoveStockBillEdit.vue"),
                      import(
                        "@/views/KCGL/MoveStockBill/Kf_MoveStockBillEdit.vue"
                      ),
                    hidden: false,
                    name: "Kf_MoveStockBillEdit",
                    path: "Kf_MoveStockBillEdit",
@@ -398,7 +416,9 @@
                      title: "条码生成",
                    },
                    component: () =>
                      import("@/views/warehouse/barcodeMaster/Gy_BarCodeBill.vue"),
                      import(
                        "@/views/warehouse/barcodeMaster/Gy_BarCodeBill.vue"
                      ),
                    hidden: false,
                    name: "Gy_BarCodeBill",
                    path: "Gy_BarCodeBill",
@@ -750,7 +770,7 @@
                      icon: "build",
                      link: null,
                      noCache: false,
                      title: "采购退料单维护",
                      title: "采购退料单列表(已入库)",
                    },
                    component: () =>
                      import(
@@ -759,6 +779,23 @@
                    hidden: false,
                    name: "Kf_POStockInBackBillList",
                    path: "Kf_POStockInBackBillList",
                    query: "{\"type\":1}"
                  },
                  {
                    meta: {
                      icon: "build",
                      link: null,
                      noCache: false,
                      title: "采购退料单列表(未入库)",
                    },
                    component: () =>
                      import(
                        "@/views/purchase/postockInBack/Kf_POStockInBackBillList.vue"
                      ),
                    hidden: false,
                    name: "Kf_POStockInBackBillList",
                    path: "Kf_POStockInBackBillList0",
                    query: "{\"type\":0}"
                  },
                ],
              },
@@ -782,7 +819,10 @@
                      noCache: false,
                      title: "其他出库单列表",
                    },
                    component: () => import("@/views/KCGL/OtherOutBill/Kf_OtherOutBillList.vue"),
                    component: () =>
                      import(
                        "@/views/KCGL/OtherOutBill/Kf_OtherOutBillList.vue"
                      ),
                    hidden: false,
                    name: "OtherOutBillList",
                    path: "OtherOutBillList",
@@ -794,7 +834,10 @@
                      noCache: false,
                      title: "其他出库单",
                    },
                    component: () => import("@/views/KCGL/OtherOutBill/Kf_OtherOutBillEdit.vue"),
                    component: () =>
                      import(
                        "@/views/KCGL/OtherOutBill/Kf_OtherOutBillEdit.vue"
                      ),
                    hidden: false,
                    name: "OtherOutBillEdit",
                    path: "OtherOutBillEdit",
@@ -865,7 +908,7 @@
                },
                hidden: false,
                name: "ProductInBill",
                path: "ProductInBill",
                path: "productInBill",
                redirect: "noRedirect",
                component: "Layout",
                children: [
@@ -876,10 +919,11 @@
                      noCache: false,
                      title: "生产入库列表",
                    },
                    component: () => import("@/views/ProductInBill/Kf_ProductInBillList.vue"),
                    component: () =>
                      import("@/views/ProductInBill/Kf_ProductInBillList.vue"),
                    hidden: false,
                    name: "ProductInBillList",
                    path: "ProductInBillList",
                    path: "productInBillList",
                  },
                  {
                    meta: {
@@ -888,10 +932,11 @@
                      noCache: false,
                      title: "生产入库单",
                    },
                    component: () => import("@/views/ProductInBill/Kf_ProductInBillEdit.vue"),
                    component: () =>
                      import("@/views/ProductInBill/Kf_ProductInBillEdit.vue"),
                    hidden: false,
                    name: "ProductInBillEdit",
                    path: "ProductInBillEdit",
                    path: "productInBillEdit",
                  },
                ],
              },
@@ -915,7 +960,10 @@
                      noCache: false,
                      title: "生产汇报列表",
                    },
                    component: () => import("@/views/ICMO/ScICMOReportBill/ScICMOReportBillList.vue"),
                    component: () =>
                      import(
                        "@/views/ICMO/ScICMOReportBill/ScICMOReportBillList.vue"
                      ),
                    hidden: false,
                    name: "ScICMOReportBillList",
                    path: "scICMOReportBillList",
@@ -1052,7 +1100,8 @@
                    hidden: false,
                    name: "Sc_MouldProdMoveBillEdit",
                    path: "Sc_MouldProdMoveBillEdit",
                  },{
                  },
                  {
                    meta: {
                      icon: "build",
                      link: null,
@@ -1081,7 +1130,8 @@
                    hidden: false,
                    name: "Sc_MouldInRequestBillEdit",
                    path: "Sc_MouldInRequestBillEdit",
                  },{
                  },
                  {
                    meta: {
                      icon: "build",
                      link: null,
@@ -1110,7 +1160,8 @@
                    hidden: false,
                    name: "Sc_MouldOutRequestBillEdit",
                    path: "Sc_MouldOutRequestBillEdit",
                  },{
                  },
                  {
                    meta: {
                      icon: "build",
                      link: null,
@@ -1249,7 +1300,8 @@
                      noCache: false,
                      title: "角色列表",
                    },
                    component: () =>import("@/views/system/user/Xt_UserGroupList.vue"),
                    component: () =>
                      import("@/views/system/user/Xt_UserGroupList.vue"),
                    hidden: false,
                    name: "Xt_UserGroupList",
                    path: "Xt_UserGroupList",
@@ -1259,6 +1311,18 @@
                      icon: "build",
                      link: null,
                      noCache: false,
                      title: "驾驶员列表",
                    },
                    component: () =>import("@/views/system/user/GyDriver.vue"),
                    hidden: false,
                    name: "gyDriver",
                    path: "GyDriver",
                  },
                  {
                    meta: {
                      icon: "build",
                      link: null,
                      noCache: false,
                      title: "权限查询",
                    },
                    component: () =>
src/views/CaiGouGuanLi/CaiGouRuKu/Kf_POStockInBillEdit.vue
@@ -377,7 +377,8 @@
    this.getdata()
  },
  beforeDestroy() {
    this.$destroy()
    // 下面的代码会导致页面崩溃,先注释掉
    // this.$destroy()
  },
  methods: {
    //#region 表单数据初始化
src/views/FbStepFoldOutBillList/fbStepFoldOutBillList.vue
@@ -8,7 +8,7 @@
                    </el-select>
                </el-form-item>
                <el-form-item label="开始日期">
                    <el-date-picker v-model="query.HBeginDate" type="date" placeholder="开始日期" style="width:160px" :disabled="timeCycleDisabled" value-formate="yyyy-mm-dd" format="yyyy-mm-dd"/>
                    <el-date-picker v-model="query.HBeginDate" type="date" placeholder="开始日期" style="width:160px" :disabled="timeCycleDisabled" value-formate="yyyy-MM-dd" format="yyyy-MM-dd"/>
                </el-form-item>
                <el-form-item label="结束日期">
                    <el-date-picker v-model="query.HEndDate" type="date" placeholder="结束日期" style="width:160px" :disabled="timeCycleDisabled" value-format="yyyy-MM-dd" format="yyyy-MM-dd"/>
@@ -72,14 +72,14 @@
                                    <el-col :span="6">
                                        <el-form-item label="过滤">
                                            <el-select v-model="query.ColName" style="width:190px">
                                                <el-option value="0" label=""></el-option>
                                                <!-- <el-option value="0" label=""></el-option> -->
                                                <el-option v-for="col in filterColumns" :key="col.field" :value="col.field" :label="col.title" />
                                            </el-select>
                                        </el-form-item>
                                    </el-col>
                                    <el-col :span="6">
                                        <el-select v-model="query.Comparator" style="width:190px">
                                            <el-option value="0" label=""></el-option>
                                            <!-- <el-option value="0" label=""></el-option> -->
                                            <el-option value="=" label="=" />
                                            <el-option value=">=" label=">=" />
                                            <el-option value=">" label=">" />
@@ -108,7 +108,7 @@
                                    </el-col>
                                    <el-col :span="6">
                                        <el-select v-model="query.Comparator1" style="width:190px">
                                            <el-option value="0" label=""></el-option>
                                            <!-- <el-option value="0" label=""></el-option> -->
                                            <el-option value="=" label="=" />
                                            <el-option value=">=" label=">=" />
                                            <el-option value=">" label=">" />
@@ -137,7 +137,7 @@
                                    </el-col>
                                    <el-col :span="6">
                                        <el-select v-model="query.Comparator2" style="width:190px">
                                            <el-option value="0" label=""></el-option>
                                            <!-- <el-option value="0" label=""></el-option> -->
                                            <el-option value="=" label="=" />
                                            <el-option value=">=" label=">=" />
                                            <el-option value=">" label=">" />
@@ -220,6 +220,7 @@
//import FbStepFoldinBillEdit from './fbStepFoldinBillEdit'
import FbStepFoldinBillEdit from '@/views/FbStepFoldOutBillList/fbStepFoldOutBillListEdit'
import BarCodeDetail from '@/views/component/BarCodeDetail'
import dayjs from 'dayjs';
export default {
@@ -249,14 +250,14 @@
                HSourceBillNo: '',
                Warehouse: '',
                Hmaker: '',
                ColName: '0',
                Comparator: '0',
                ColName: '',
                Comparator: '',
                ColContent: '',
                ColName1: '0',
                Comparator1: '0',
                ColName1: '',
                Comparator1: '',
                ColContent1: '',
                ColName2: '0',
                Comparator2: '0',
                ColName2: '',
                Comparator2: '',
                ColContent2: ''
            },
            timeCycles: [
@@ -322,6 +323,7 @@
            const yyyy = d.getFullYear();
            const mm = String(d.getMonth() + 1).padStart(2, '0');
            const dd = String(d.getDate()).padStart(2, '0');
            return `${yyyy}-${mm}-${dd}`;
        },
        onTimeCycleChange() {
@@ -392,8 +394,8 @@
            if (q.ColName2 && q.Comparator2 && q.Comparator2 !== '0' && q.ColContent2) 
                sWhereParts.push(buildComparator(q.ColName2, q.Comparator2, q.ColContent2));
            
            if (q.HBeginDate) sWhereParts.push(` and CONVERT(varchar(100),日期, 23) >= '${q.HBeginDate}'`);
            if (q.HEndDate) sWhereParts.push(` and CONVERT(varchar(100),日期, 23) <= '${q.HEndDate}'`);
            if (q.HBeginDate) sWhereParts.push(` and CONVERT(varchar(100),日期, 23) >= '${dayjs(q.HBeginDate).format("YYYY-MM-DD")}'`);
            if (q.HEndDate) sWhereParts.push(` and CONVERT(varchar(100),日期, 23) <= '${dayjs(q.HEndDate).format("YYYY-MM-DD")}'`);
            if (q.HBillNo) sWhereParts.push(` and 单据号 like '%${q.HBillNo}%'`);
            if (q.HDeptID) sWhereParts.push(` and 部门 like '%${q.HDeptID}%'`);
            if (q.MaterialCode) sWhereParts.push(` and 物料代码 like '%${q.MaterialCode}%'`);
src/views/FbStepFoldinBillList/fbStepFoldinBillList.vue
@@ -72,7 +72,7 @@
                                    <el-col :span="6">
                                        <el-form-item label="过滤">
                                            <el-select v-model="query.ColName" style="width:190px">
                                                <el-option value="0" label=""></el-option>
                                                <!-- <el-option value="0" label=""></el-option> -->
                                                <el-option v-for="col in filterColumns" :key="col.field" :value="col.field" :label="col.title" />
                                            </el-select>
                                        </el-form-item>
@@ -101,7 +101,7 @@
                                    <el-col :span="6">
                                        <el-form-item label="过滤1">
                                            <el-select v-model="query.ColName1" style="width:190px">
                                                <el-option value="0" label=""></el-option>
                                                <!-- <el-option value="0" label=""></el-option> -->
                                                <el-option v-for="col in filterColumns" :key="col.field" :value="col.field" :label="col.title" />
                                            </el-select>
                                        </el-form-item>
@@ -130,7 +130,7 @@
                                    <el-col :span="6">
                                        <el-form-item label="过滤2">
                                            <el-select v-model="query.ColName2" style="width:190px">
                                                <el-option value="0" label=""></el-option>
                                                <!-- <el-option value="0" label=""></el-option> -->
                                                <el-option v-for="col in filterColumns" :key="col.field" :value="col.field" :label="col.title" />
                                            </el-select>
                                        </el-form-item>
@@ -246,14 +246,14 @@
                HSourceBillNo: '',
                Warehouse: '',
                Hmaker: '',
                ColName: '0',
                Comparator: '0',
                ColName: '',
                Comparator: '',
                ColContent: '',
                ColName1: '0',
                Comparator1: '0',
                ColName1: '',
                Comparator1: '',
                ColContent1: '',
                ColName2: '0',
                Comparator2: '0',
                ColName2: '',
                Comparator2: '',
                ColContent2: ''
            },
            timeCycles: [
src/views/KCGL/MoveStockBill/Kf_MoveStockBillEdit.vue
@@ -505,7 +505,8 @@
    this.getdata()
  },
  beforeDestroy() {
    this.$destroy()
    // 会导致页面崩溃 先注释掉
    // this.$destroy()
  },
  methods: {
    //#region 表单数据初始化
src/views/KCGL/OtherOutBill/Kf_OtherOutBillEdit.vue
@@ -14,7 +14,7 @@
          <el-row>
            <el-col :span="6">
              <el-form-item label="单据编号" prop="HBillNo">
                <el-input v-model="form.HBillNo" placeholder="请输入单据编号" disabled="true" />
                <el-input v-model="form.HBillNo" placeholder="请输入单据编号" :disabled="true" />
              </el-form-item>
            </el-col>
            <el-col :span="6">
@@ -175,7 +175,7 @@
        @selection-change="handleTableZbEdit" :row-class-name="rowSysZbIndex" show-summary border>
        <el-table-column type="selection" width="55" align="center" />
        <el-table-column align="center" label="序号" type="index" width="80" />
        <el-table-column align="center" label="源单单号" width="120">
        <!-- <el-table-column align="center" label="源单单号" width="120">
          <template slot-scope="scope">
            <span>{{ scope.row.HSourceBillNo }}</span>
          </template>
@@ -194,7 +194,7 @@
          <template slot-scope="scope">
            <span>{{ scope.row.HSourceEntryID }}</span>
          </template>
        </el-table-column>
        </el-table-column> -->
        <el-table-column align="center" label="HMaterID" width="120">
          <template slot-scope="scope">
            <span>{{ scope.row.HMaterID }}</span>
@@ -287,8 +287,8 @@
        </el-table-column>
        <el-table-column align="center" label="发料仓位" width="120">
          <template slot-scope="scope">
            <el-input v-model="scope.row.收料仓位" placeholder="请输入发料仓位" @keyup.native.f7="openDataDialog(2, scope.row)"
              @dblclick.native="openDataDialog(2, scope.row)" />
            <el-input v-model="scope.row.收料仓位" placeholder="请输入发料仓位" @keyup.native.f7="openDataDialog(4, scope.row)"
              @dblclick.native="openDataDialog(4, scope.row)" />
          </template>
        </el-table-column>
        <el-table-column align="center" label="批次" width="120">
@@ -417,6 +417,7 @@
      activeName: 'first',
      zbIndex: null,
      zbSelForm: {},                                                             //子表选中数据,用于子表复制、上移、下移等操作
      zbRow: null,
    };
  },
  created() {
@@ -425,14 +426,15 @@
    this.getdata()
  },
  beforeDestroy() {
    this.$destroy()
    // this.$destroy()
  },
  methods: {
    //#region 表单数据初始化
    getdata() {
      this.formShow = false
      this.formLoading = true
      console.log(this.OperationType,this.copyType)
      if ((this.OperationType == 1 && this.copyType != 1) || (!this.OperationType && !this.copyType)) {
        this.handleAdd()
      } 
@@ -637,7 +639,10 @@
    //#region 打开数据列表弹窗
    openDataDialog(num, row) {
      if (row) {
        this.zbIndex = row.index - 1
        const idx = this.editData.indexOf(row);
        this.zbIndex = idx >= 0 ? idx : null;
        this.zbRow = row;
      }
      this.showReset()
      if (num == 1) {
@@ -677,13 +682,23 @@
        this.openData = false
      } 
      else if (num == 2) {                                                      //收料仓库
        this.editData[this.zbIndex].HWHID = deptRow.HItemID;
        this.editData[this.zbIndex].收料仓库 = deptRow.仓库名称;
        if (this.zbIndex == null || this.zbIndex < 0 || !this.editData[this.zbIndex]) {
          this.$modal.msgError('请选择要编辑的明细行后再选择仓库');
          this.openData = false;
          return;
        }
        this.$set(this.editData[this.zbIndex], 'HWHID', deptRow.HItemID);
        this.$set(this.editData[this.zbIndex], '收料仓库', deptRow.仓库名称);
        this.openData = false
      }
      else if (num == 4) {                                                      //仓位
        this.editData[this.zbIndex].HSPID = deptRow.HItemID;
        this.editData[this.zbIndex].仓位名称 = deptRow.仓位名称;
      else if (num == 4) {
        this.$set(this.editData[this.zbIndex], 'HSPID', deptRow.HItemID);
        this.$set(this.editData[this.zbIndex], '发料仓位', deptRow.仓位名称);                                              //仓位
        // this.editData[this.zbIndex].HSPID = deptRow.HItemID;
        // this.editData[this.zbIndex].仓位名称 = deptRow.仓位名称;
        this.openData = false
      }
      else if (num == 3) {                                                      //物料
@@ -803,8 +818,9 @@
    //#region 子表操作
    //#region 设置子表序号列
    rowSysZbIndex({ row, rowIndex }) {
    rowSysZbIndex( row, rowIndex ) {
      row.index = rowIndex + 1;
      return '';
    },
    //#endregion
@@ -837,13 +853,20 @@
          HCostPrice: 0,
          HCostMoney: 0,
          HSalePrice: 0,
          HSeOrderInterID: 741,
          HSeOrderEntryID: 18,
          HSeOrderBillNo: 'XSFH00000747',
          HSourceInterID: 741,
          HSourceEntryID: 18,
          HSourceBillNo: 'XSFH00000747',
          HSourceBillType: 1402,
          // HSeOrderInterID: 741,
          // HSeOrderEntryID: 18,
          HSeOrderInterID: '',
          HSeOrderEntryID: '',
          //HSeOrderBillNo: 'XSFH00000747',
          HSeOrderBillNo: '',
          // HSourceInterID: 741,
          // HSourceEntryID: 18,
          // HSourceBillNo: 'XSFH00000747',
          HSourceInterID: '',
          HSourceEntryID: '',
          HSourceBillNo: '',
          //HSourceBillType: '1402',
          HSourceBillType: '',
          HRelationQty: 0,
          HRelationMoney: 0,
          HSPID: 0,
@@ -943,7 +966,8 @@
    handleTableZbEdit(selection) {
      this.checkedSysZb = selection.map(item => item.index)
      this.zbSelForm = selection[0]
      this.zbIndex = this.checkedSysZb[0]
      this.zbIndex = selection.length ? this.editData.indexOf(selection[0]) : null
      if (selection.length > 1) {
        const del_row = selection.shift()
        this.$refs.zbTable.toggleRowSelection(del_row, false) //设置这一行取消选中
src/views/KCGL/OtherOutBill/Kf_OtherOutBillList.vue
@@ -374,7 +374,7 @@
      }).catch(error => {
        this.$modal.msgError("接口请求失败!");
      });
      this.queryParams.HOrgID = sessionStorage["OrganizationID"];
      this.queryParams.HOrgID = sessionStorage["Organization"];
    },
    //#endregion
@@ -475,9 +475,9 @@
      if (this.queryParams.HBillNo) {
        this.sWhere += " and 单据号 like '%" + this.queryParams.HBillNo + "%'";
      }
      if (this.queryParams.HOrgID) {
        this.sWhere += " and HOrgID = '" + this.queryParams.HOrgID + "'";
      //this.queryParams.HOrgID
      if (sessionStorage["OrganizationID"] != "0") {
        this.sWhere += " and HOrgID = '" + sessionStorage["OrganizationID"] + "'";
      }
      this.getList()
    },
src/views/ProductInBill/Kf_ProductInBillEdit.vue
@@ -164,7 +164,7 @@
        @selection-change="handleTableZbEdit" :row-class-name="rowSysZbIndex" show-summary border>
        <el-table-column type="selection" width="55" align="center" />
        <el-table-column align="center" label="序号" type="index" width="80" />
        <el-table-column align="center" label="源单单号" width="120">
        <!-- <el-table-column align="center" label="源单单号" width="120">
          <template slot-scope="scope">
            <span>{{ scope.row.HSourceBillNo }}</span>
          </template>
@@ -183,7 +183,7 @@
          <template slot-scope="scope">
            <span>{{ scope.row.HSourceEntryID }}</span>
          </template>
        </el-table-column>
        </el-table-column> -->
        <el-table-column align="center" label="HMaterID" width="120">
          <template slot-scope="scope">
            <span>{{ scope.row.HMaterID }}</span>
@@ -372,7 +372,7 @@
    this.getdata()
  },
  beforeDestroy() {
    this.$destroy()
    // this.$destroy()
  },
  methods: {
    //#region 表单数据初始化
@@ -524,10 +524,10 @@
            )
          }
          if (data.状态 != '创建' && this.copyType != 1) {
            this.$modal.msgError("此条数据不是创建状态,不能修改");
            this.subDisabled = true
          }
          // if (data.状态 != '创建' && this.copyType != 1) {
          //   this.$modal.msgError("此条数据不是创建状态,不能修改");
          //   this.subDisabled = true
          // }
          this.formShow = true
          this.formLoading = false
@@ -606,7 +606,8 @@
        this.form.HManagerName = deptRow.负责人
        this.openData = false
      } 
      else if (num == 2) {                                                      //收料仓库
      else if (num == 2) {
        console.log(deptRow)                                                     //收料仓库
        this.editData[this.zbIndex].HWHID = deptRow.HItemID;
        this.editData[this.zbIndex].收料仓库 = deptRow.仓库名称;
        this.openData = false
@@ -659,9 +660,9 @@
        if (valid) {
          let fhck = false
          this.editData.map((item, index) => {
            if (!item.发货仓库) {
            if (!item.收料仓库) {
              fhck = true
              this.$modal.msgError("第" + (index + 1) + "行:发货仓库未选择!");
              this.$modal.msgError("第" + (index + 1) + "行:收料仓库未选择!");
            }
          })
          this.$nextTick(() => {
@@ -679,7 +680,7 @@
                if (response.data.count == 1) {
                  this.subDisabled = true//设置保存按钮不可用
                  this.$modal.msgSuccess(response.data.Message);
                  this.get_MAXNum_Task(1);//设置流水号增加
                  // this.get_MAXNum_Task(1);//设置流水号增加
                  if (response.data.Verify == "Y") //自动审核
                  {
                    this.set_CheckBill(0, this.form); //审核
@@ -759,7 +760,7 @@
          HMoney: 0,
          HTaxMoney: 0,
          HWHID: 0,
          发货仓库: '',
          收料仓库: '',
          HRemark: '',
          HQty_Full: 0,
          HQty_Empty: 0,
@@ -769,10 +770,10 @@
          HSalePrice: 0,
          HSeOrderInterID: 741,
          HSeOrderEntryID: 18,
          HSeOrderBillNo: 'XSFH00000747',
          HSourceInterID: 741,
          HSourceEntryID: 18,
          HSourceBillNo: 'XSFH00000747',
          HSeOrderBillNo: '',
          HSourceInterID: 0,
          HSourceEntryID: 0,
          HSourceBillNo: '',
          HSourceBillType: 1402,
          HRelationQty: 0,
          HRelationMoney: 0,
@@ -941,7 +942,8 @@
    //#region 获取最大单据号
    get_MAXNum_Task(Type) {
      var sql = `exec h_p_Xt_GetMaxBillNo_SubType '1202','${this.form.HDate}',0,0,0,'${Type}','${this.form.HDeptID}'`;
      console.log(dayjs(this.form.HDate).format("YYYY-MM-DD"))
      var sql = `exec h_p_Xt_GetMaxBillNo_SubType '1202','${dayjs(this.form.HDate).format("YYYY-MM-DD")}',0,0,0,'${Type}','${this.form.HDeptID}'`;
      axios({
        method: 'get',
        url: this.baseURL + "/CommonModel/searchMethod",
src/views/ProductInBill/Kf_ProductInBillList.vue
@@ -371,11 +371,12 @@
      }).then(response => {
        if (response.data.count == 1) {
          this.organizationList = response.data.data;//组织列表
          this.queryParams.HOrgID = Number(sessionStorage["OrganizationID"]);
        }
      }).catch(error => {
        this.$modal.msgError("接口请求失败!");
      });
      this.queryParams.HOrgID = sessionStorage["OrganizationID"];
    },
    //#endregion
src/views/basic/gy/gyDepartment.vue
@@ -109,7 +109,7 @@
      </el-col>
      <el-col :span="1.5">
        <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="single"
          @click="handleEdit(row = rowForm, OperationType = 2)">复制</el-button>
          @click="handleEdit(row = rowForm, copyType = 1)">复制</el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single" @click="handleDelete">删除
@@ -705,6 +705,7 @@
      }
      // this.sWhere += this.addSWhereByOpenType()
      // this.sWhere += this.getOrgIDByUser()
      this.clearData()
      this.getList()
    },
@@ -757,16 +758,23 @@
        ColContent2: '',
        ColContent: '',
      }
      this.clearData()
      this.resetForm("queryForm")
      this.getList()
    },
    clearData() {
      this.single = true
      this.multiple = true
      this.OperationType = 0
      this.copyType = 0
      this.ids = []
    },
    //退出
    close() {
      this.tableShow = true
      this.single = true
      this.openEdit = false
      this.editShow = false
      this.clearData()
      this.getList()
    },
    //打开新增组件弹窗
@@ -789,8 +797,7 @@
    editGyClose(val) {
      this.editShow = false
      this.openEdit = false
      this.single = true
      this.multiple = true
      this.clearData()
      this.getList()
    },
    /** 删除按钮操作 */
@@ -829,15 +836,16 @@
        else {
          this.$modal.msgError("错误:" + result.code + result.Message,);
        }
        this.clearData()
      }).catch(error => {
        this.$modal.msgError("接口请求失败!");
      });
    },
    // 反禁用/禁用数据
    set_De_Stop(num, form) {
      var InterID = form.HItemID || form.HInterID
      var InterID = form.HItemID.toString() || form.HInterID.toString()
      //逻辑审核方法
      axios.get(this.baseURL + "/Gy_Source/StopGy_Source", {
      axios.get(this.baseURL + "/Gy_Department/StopGy_Department", {
        params: { "HInterID": InterID, "IsStop": num, "CurUserName": sessionStorage["HUserName"] }
      }).then(response => {
        let result = response.data
@@ -848,6 +856,7 @@
        else {
          this.$modal.msgError("错误:" + result.code + result.Message,);
        }
        this.clearData()
      }).catch(error => {
        this.$modal.msgError("接口请求失败!");
      });
src/views/basic/gy/gyDepartmentEdit.vue
@@ -173,13 +173,12 @@
      openData: false, //数据弹窗
      dialogTitle: "",
      zuzhiId: 0,
      organizationList: [], //组织列表
      organizationList: JSON.parse(sessionStorage.getItem('organizationList')), //组织列表
      subDisabled: false, //编辑页面保存按钮是否禁用(true禁用,false可用)
      CheckBillDisabled: true,
      // OperationType: this.$route.query.OperationType,//保存类型(新增1修改3)
      HInterID: null,
      baseURL: process.env.VUE_APP_BASE_API || "http://47.96.97.237/API/",
      user: "admin",
      currentRow: [],
      lastSelectedRowIndex: null, // 用于记录上次点击的行索引
      lastSelectedRow: null, // 上一次选中的行
@@ -224,96 +223,66 @@
  },
  created() {
    this.reset();
    this.fetchData();
    this.getdata();
  },
  activated() {
    this.reset();
    this.fetchData();
    this.getdata();
  },
  methods: {
    fetchData() {
      //登录用户信息
      axios
        .get(
          "http://47.96.97.237/API/Web/GetUser?UserName=001&PassWord=123456&HOrgName=100038"
        )
        .then((response) => {
          let data = response.data.data[0];
          this.zuzhiId = data.HUSEORGID; //根据登录用户获取默认的组织ID
          this.user = data.Czymc;
          axios
            .get(this.baseURL + "/Web/GetOrganizations", {})
            .then((response) => {
              if (response.data.count == 1) {
                this.organizationList = response.data.data; //组织列表
                this.getdata();
              }
            })
            .catch((error) => {
              this.$modal.msgError("接口请求失败!");
            });
        })
        .catch((error) => {
          this.$modal.msgError("接口请求失败!");
        });
    },
    getdata() {
      this.reset();
      console.log(this.OperationType);
      console.log(this.OperationType,this.copyType);
      if (this.OperationType != 1) {
        this.zzSelDis = true;
        axios
          .get(this.baseURL + "/Gy_Department/cx", {
            params: {
              HInterID: this.linterid,
            },
          })
          .then((response) => {
            console.log(response);
            let result = response.data;
            if (result.code == 1) {
              // 说明验证成功了,
              var data = result.data[0];
              Object.assign(this.form, {
                HNumber: data.部门代码,
                HItemID: data.HItemID,
                HName: data.部门名称,
                HHelpCode: data.HHelpCode,
                HEmpID: data.HEmpID,
                HEmpName: data.HEmpName,
                HBarCode: data.条形码,
                HStopflag: data.禁用标记,
                HRemark: data.HRemark,
                HUSEORGID: data.HUSEORGID,
                HRemark: data.备注,
                HMakeEmp: data["创建人"],
                HMakeDate:
                  data["创建日期"] == null
                    ? ""
                    : dayjs(new Date(data["创建日期"])).format("yyyy-MM-dd"),
                HCheckEmp: data["审核人"],
                HCheckDate:
                  data["审核日期"] == null
                    ? ""
                    : dayjs(new Date(data["审核日期"])).format("yyyy-MM-dd"),
                HStopEmp: data["禁用人"],
                HStopDate:
                  data["禁用日期"] == null
                    ? ""
                    : dayjs(new Date(data["禁用日期"])).format("yyyy-MM-dd"),
              });
              if (!data.HCheckEmp) {
                this.CheckBillDisabled = false;
              }
            }
            this.$nextTick(() => {
              this.formShow = true;
              this.formLoading = false;
        axios.get(this.baseURL + "/Gy_Department/cx", {
          params: {
            HInterID: this.linterid,
          },
        }).then((response) => {
          let result = response.data;
          if (result.code == 1) {
            // 说明验证成功了,
            var data = result.data[0];
            Object.assign(this.form, {
              HNumber: data.部门代码,
              HItemID: data.HItemID,
              HName: data.部门名称,
              HHelpCode: data.HHelpCode,
              HEmpID: data.HEmpID,
              HEmpName: data.HEmpName,
              HBarCode: data.条形码,
              HStopflag: data.禁用标记,
              HRemark: data.HRemark,
              HUSEORGID: data.HUSEORGID,
              HRemark: data.备注,
              HMakeEmp: data["创建人"],
              HMakeDate: data["创建日期"] == null ? "" : dayjs(new Date(data["创建日期"])).format("yyyy-MM-dd"),
              HCheckEmp: data["审核人"],
              HCheckDate: data["审核日期"] == null ? "" : dayjs(new Date(data["审核日期"])).format("yyyy-MM-dd"),
              HStopEmp: data["禁用人"],
              HStopDate: data["禁用日期"] == null ? "" : dayjs(new Date(data["禁用日期"])).format("yyyy-MM-dd"),
            });
          })
          .catch((error) => {
            this.$modal.msgError("接口请求失败!");
            if (!data.HCheckEmp) {
              this.CheckBillDisabled = false;
            }
            if (this.copyType == 1) {
              this.form.HItemID = 0
              this.form.HMakeEmp = sessionStorage["HUserName"]
              this.form.HMakeDate = moment(new Date()).format("YYYY-MM-DDTHH:mm:ss")
              this.form.HCheckEmp = ''
              this.form.HCheckDate = ''
              this.form.HStopEmp = ''
              this.form.HStopDate = ''
            }
          }
          this.$nextTick(() => {
            this.formShow = true;
            this.formLoading = false;
          });
        }).catch((error) => {
          this.$modal.msgError("接口请求失败!");
        });
      } else if (this.OperationType == 1) {
        let date = new Date();
        this.form.HMakeDate = moment(date).format("YYYY-MM-DDTHH:mm:ss");
@@ -361,17 +330,17 @@
    reset() {
      this.form = {
        HNumber: '',
        HItemID:0,
        HItemID: 0,
        HName: '',
        HHelpCode: '',
        HEmpID: 0,
        HEmpName: '',
        HBarCode: '',
        HStopflag: false,
        HRemark:'',
        HUSEORGID:sessionStorage["OrganizationID"],
        HRemark: '',
        HMakeEmp:sessionStorage["HUserName"],
        HUSEORGID: sessionStorage["OrganizationID"] - 0,
        HRemark: '',
        HMakeEmp: sessionStorage["HUserName"],
        HMakeTime: null,
        HStopEmp: null,
        HStopTime: null,
@@ -444,7 +413,7 @@
          if (this.rowForm.状态 == "创建") {
            axios
              .get(this.baseURL + "/Kf_SellOutBill/DeltetSellOutBill", {
                params: { HInterID: this.rowForm.hmainid.toString(), user: this.user },
                params: { HInterID: this.rowForm.hmainid.toString(), user: sessionStorage["HUserName"] },
              })
              .then((response) => {
                if (response.data.count == 1) {
@@ -464,11 +433,11 @@
    },
    // 反审核/审核数据
    set_CheckBill(num, form) {
      var InterID = form.HItemID || form.HInterID;
      var InterID = this.form.HItemID.toString();
      //逻辑审核方法
      axios
        .get(this.baseURL + "/Gy_Department/StopGy_Department", {
          params: { HInterID: InterID, IsAudit: num, CurUserName: this.user },
        .get(this.baseURL + "/Gy_Department/AuditGy_Department", {
          params: { HInterID: InterID, IsAudit: num, CurUserName: sessionStorage["HUserName"] },
        })
        .then((response) => {
          let result = response.data;
src/views/basic/gy/gySupplier.vue
@@ -10,7 +10,7 @@
        </el-form-item>
        <el-form-item label="组织">
          <el-select v-model="queryParams.HUSEORGID" placeholder="请选择">
            <el-option v-for="(item, index) in organizationList" :key="index" :label="item.Name" :value="item.ID">
            <el-option v-for="(item, index) in organizationList" :key="index" :label="item.Name" :value="item.Name">
            </el-option>
          </el-select>
        </el-form-item>
@@ -291,7 +291,7 @@
      open: false,
      // 查询参数
      queryParams: {
        HUSEORGID: sessionStorage["OrganizationID"] - 0,
        HUSEORGID: sessionStorage["Organization"],
        HName: null,
        HNumber: null,
        HSupTypeID: null,
@@ -448,7 +448,7 @@
        params: {
          "sWhere": this.sWhere,
          "user": sessionStorage["HUserName"],
          "Organization": sessionStorage["Organization"],
          "Organization": this.queryParams.HUSEORGID,
          "page": this.page,
          "size": this.pageSize
        },
@@ -635,7 +635,7 @@
      this.selectedRow = row; // 记录当前选中的行
      this.lastSelectedRowIndex = this.tableData.indexOf(row);
      this.$refs.tableData.toggleRowSelection(row);
        if (this.openPage) {
      if (this.openPage) {
        this.$emit('deptEmit', row, 6)
      }
    },
@@ -752,11 +752,12 @@
      if (this.queryParams.HName) {
        this.sWhere += " and 供应商名称 like '%" + this.queryParams.HName + "%'";
      }
      if (this.queryParams.HUSEORGID) {
        this.sWhere += " and HUSEORGID = '" + this.queryParams.HUSEORGID + "'"
      }
      // if (this.queryParams.HUSEORGID) {
      //   this.sWhere += " and HUSEORGID = '" + this.queryParams.HUSEORGID + "'"
      // }
      // this.sWhere += this.addSWhereByOpenType()
      // this.sWhere += this.getOrgIDByUser()
      this.clearData()
      this.getList()
    },
@@ -799,7 +800,7 @@
    resetQuery() {
      this.sWhere = ''
      this.queryParams = {
        HUSEORGID: null,
        HUSEORGID:sessionStorage["Organization"],
        HName: null,
        HNumber: null,
        Comparator1: '',
@@ -810,14 +811,22 @@
        ColContent: '',
      }
      this.resetForm("queryForm")
      this.clearData()
      this.getList()
    },
    clearData() {
      this.single = true
      this.multiple = true
      this.OperationType = 0
      this.copyType = 0
      this.ids = []
    },
    //退出
    close() {
      this.tableShow = true
      this.openEdit = false
      this.editShow = false
      this.clearData()
      this.getList()
    },
    //打开新增组件弹窗
@@ -840,8 +849,8 @@
    editGyClose(val) {
      this.editShow = false
      this.openEdit = false
      this.multiple = true,
        this.getList()
      this.clearData()
      this.getList()
    },
    /** 删除按钮操作 */
    handleDelete() {
@@ -868,7 +877,7 @@
    set_CheckBill(num, form) {
      var InterID = form.HItemID || form.HInterID
      //逻辑审核方法
      axios.get(this.baseURL + "/Gy_Source/AuditGy_Source", {
      axios.get(this.baseURL + "/Gy_Supplier/AuditGy_Supplier", {
        params: { "HInterID": InterID, "IsAudit": num, "CurUserName": sessionStorage["HUserName"] }
      }).then(response => {
        let result = response.data
@@ -879,6 +888,7 @@
        else {
          this.$modal.msgError("错误:" + result.code + result.Message,);
        }
        this.clearData()
      }).catch(error => {
        this.$modal.msgError("接口请求失败!");
      });
@@ -887,7 +897,7 @@
    set_De_Stop(num, form) {
      var InterID = form.HItemID || form.HInterID
      //逻辑审核方法
      axios.get(this.baseURL + "/Gy_Source/StopGy_Source", {
      axios.get(this.baseURL + "/Gy_Supplier/StopGy_Supplier", {
        params: { "HInterID": InterID, "IsStop": num, "CurUserName": sessionStorage["HUserName"] }
      }).then(response => {
        let result = response.data
@@ -898,6 +908,7 @@
        else {
          this.$modal.msgError("错误:" + result.code + result.Message,);
        }
        this.clearData()
      }).catch(error => {
        this.$modal.msgError("接口请求失败!");
      });
src/views/basic/gyEmployee/gyEmployeeEdit.vue
@@ -1702,8 +1702,6 @@
      window.open(row.url, "_self");
    },
    async uploadDataUpload(row, index) {
      console.log(row.raw instanceof File);
      console.log(row.raw);
      try {
        let blob = await this.fileToBlob(row.raw);
        console.log(blob);
src/views/component/HSourceReportHtml/index.vue
@@ -285,7 +285,7 @@
            if (this.pageSize == 0) {
                this.pageSize = 50;
            }
            if (this.queryParams.HBillStatus &&this.HSouceBillType == '生产订单') {
            if (this.queryParams.HBillStatus && this.HSouceBillType == '生产订单') {
                this.sWhere += " and 状态 = '" + this.queryParams.HBillStatus + "'";
            }
            if (this.HSouceBillType == '生产订单') {
@@ -306,111 +306,117 @@
                    limit: this.pageSize,
                },
            }).then((response) => {
                console.log(response)
                this.tyResList = response.data.data; //总数据
                let data1 = response.data;
                let option = [];
                if (data1.code == 1) {
                    this.btResList = data1.list; //接口表头数据
                    this.total = data1.count;
                    var data = []; //列字段数据
                    var col = [];
                    var totalArray = ["件数"];
                    //给空的数组赋值
                    for (var key in data1.list) {
                        //循序遍历数组
                        data.push({
                            id: data1.list[key].ColmCols,
                            name: data1.list[key].ColmCols,
                            Type: data1.list[key].ColmType,
                        }); //从每个对象中提取数据
                        var patrn = new RegExp(/^h/i);
                        if (patrn.test(data1.list[key].ColmCols)) {
                            this.titleData[key] = data1.list[key].ColmCols;
                        }
                // if (data1.code == 1) {
                this.btResList = data1.list; //接口表头数据
                this.total = data1.count;
                var data = []; //列字段数据
                var col = [];
                var totalArray = ["件数"];
                //给空的数组赋值
                for (var key in data1.list) {
                    //循序遍历数组
                    data.push({
                        id: data1.list[key].ColmCols,
                        name: data1.list[key].ColmCols,
                        Type: data1.list[key].ColmType,
                    }); //从每个对象中提取数据
                    var patrn = new RegExp(/^h/i);
                    if (patrn.test(data1.list[key].ColmCols)) {
                        this.titleData[key] = data1.list[key].ColmCols;
                    }
                    //在列表左边添加勾选框
                    col.push({ type: "checkbox", fixed: "left", totalRowText: "合计" });
                    for (var i = 0; i < data.length; i++) {
                        //遍历data数组重的数据
                        if (this.titleData.indexOf(data[i].name) > -1) {
                            //检查data【i】.name是否在数组中  //计算列
                            col.push({
                                field: data[i].id,
                                title: data[i].name,
                                align: "center",
                                hide: true,
                            }); //隐藏id列
                        } else if (
                            totalArray.indexOf(data[i].name) > -1 ||
                            data[i].Type == "Decimal" ||
                            data[i].Type == "Int32"
                        ) {
                            //计算列
                            col.push({
                                field: data[i].id,
                                title: data[i].name,
                                align: "center",
                                sort: true,
                                totalRow: true,
                                width: 120,
                            });
                        } else {
                            col.push({
                                field: data[i].id,
                                title: data[i].name,
                                align: "center",
                                sort: true,
                                width: 200,
                            });
                        }
                    }
                    option.cols = [col];
                    this.dataList = option;
                    option.data = data1.data;
                    var result = data1.data;
                    option.data = result;
                    switch (this.HSouceBillType) {
                        case '生产订单':
                            this.HModName = "Sc_ICMOBill_3710";
                            break;
                        case '生产汇报单':
                            this.HModName = "Sc_ICMOReportBill_3711";
                            break;
                        case '采购订单':
                            this.HModName = "Cg_POOrderBill_1102";
                            break;
                        case '收料通知单':
                            this.HModName = "Cg_POInStockBill_1103";
                            break;
                        case '委外订单':
                            this.HModName = "WW_EntrustOrderBill_1601";
                            break;
                        case '生产入库单':
                            $("#HProcExchBillNoHidden").show();
                            this.HModName = "ProductInBill_1202";
                            break;
                        case '采购入库单':
                            this.HModName = "POStockInBill_1201";
                            break;
                        case '销售退货':
                            this.HModName = "SellOutBackBill_1247";
                            break;
                        case '生产退料':
                            this.HModName = "MateOutBackBill_1244";
                            break;
                        case '工序流转卡':
                            this.HModName = "ProcessExchangeBill_3772";
                            break;
                        case '销售出库单':
                            this.HModName = "SellOutBill_1205";
                            break;
                        case '领料出库单':
                            this.HModName = "MateOutBill_1204";
                            break;
                    }
                    this.DisPlay_HideColumn(this.HModName, sessionStorage["HUserName"], option, this.dataList);
                }
                //在列表左边添加勾选框
                col.push({ type: "checkbox", fixed: "left", totalRowText: "合计" });
                for (var i = 0; i < data.length; i++) {
                    //遍历data数组重的数据
                    if (this.titleData.indexOf(data[i].name) > -1) {
                        //检查data【i】.name是否在数组中  //计算列
                        col.push({
                            field: data[i].id,
                            title: data[i].name,
                            align: "center",
                            hide: true,
                        }); //隐藏id列
                    } else if (
                        totalArray.indexOf(data[i].name) > -1 ||
                        data[i].Type == "Decimal" ||
                        data[i].Type == "Int32"
                    ) {
                        //计算列
                        col.push({
                            field: data[i].id,
                            title: data[i].name,
                            align: "center",
                            sort: true,
                            totalRow: true,
                            width: 120,
                        });
                    } else {
                        col.push({
                            field: data[i].id,
                            title: data[i].name,
                            align: "center",
                            sort: true,
                            width: 200,
                        });
                    }
                }
                option.cols = [col];
                this.dataList = option;
                if (data1.code == 0) {
                    data1.data = []
                }
                option.data = data1.data;
                var result = data1.data;
                option.data = result;
                switch (this.HSouceBillType) {
                    case '生产订单':
                        this.HModName = "Sc_ICMOBill_3710";
                        break;
                    case '生产汇报单':
                        this.HModName = "Sc_ICMOReportBill_3711";
                        break;
                    case '采购订单':
                        this.HModName = "Cg_POOrderBill_1102";
                        break;
                    case '收料通知单':
                        this.HModName = "Cg_POInStockBill_1103";
                        break;
                    case '委外订单':
                        this.HModName = "WW_EntrustOrderBill_1601";
                        break;
                    case '生产入库单':
                        $("#HProcExchBillNoHidden").show();
                        this.HModName = "ProductInBill_1202";
                        break;
                    case '采购入库单':
                        this.HModName = "POStockInBill_1201";
                        break;
                    case '销售退货':
                        this.HModName = "SellOutBackBill_1247";
                        break;
                    case '生产退料':
                        this.HModName = "MateOutBackBill_1244";
                        break;
                    case '工序流转卡':
                        this.HModName = "ProcessExchangeBill_3772";
                        break;
                    case '销售出库单':
                        this.HModName = "SellOutBill_1205";
                        break;
                    case '领料出库单':
                        this.HModName = "MateOutBill_1204";
                        break;
                }
                this.DisPlay_HideColumn(this.HModName, sessionStorage["HUserName"], option, this.dataList);
                // }
            }).catch((error) => {
                console.log(error)
                this.$modal.msgError("接口请求失败!");
            });
        },
@@ -674,7 +680,7 @@
            if (this.queryParams.HBillNo) {
                this.sWhere += " and 单据号 like '%" + this.queryParams.HBillNo + "%'";
            }
            if (this.queryParams.HProcExchBillNo &&this.HSouceBillType == '生产入库单') {
            if (this.queryParams.HProcExchBillNo && this.HSouceBillType == '生产入库单') {
                this.sWhere += " and 流转卡号 like '%" + this.queryParams.HProcExchBillNo + "%'";
            }
            if (this.queryParams.HDeptName) {
@@ -686,7 +692,7 @@
            if (this.queryParams.PartName) {
                this.sWhere += " and 物料名称 like '%" + this.queryParams.PartName + "%'";
            }
            if (this.queryParams.HBillStatus &&this.HSouceBillType == '生产订单') {
            if (this.queryParams.HBillStatus && this.HSouceBillType == '生产订单') {
                this.sWhere += " and 状态 like '%" + this.queryParams.HBillStatus + "%'";
            }
            if (sessionStorage["Organization"] == "九菱电机" && this.HSouceBillType == '生产订单') {
src/views/purchase/cgPoInStockBill/cgPoInStockBill.vue
@@ -1388,6 +1388,7 @@
    },
    /** 删除按钮操作 */
    handleDelete() {
      console.log("this.rowForm", this.rowForm)
      this.$modal
        .confirm("确认要删除吗,删除后不能恢复")
        .then(() => {
@@ -1395,20 +1396,21 @@
            axios
              .get(this.baseURL + "Cg_POInStockBill/DeltetPOInStockBill", {
                params: {
                  HInter: this.rowForm.hmainid.toString(),
                  HsupId: this.rowForm.HsupId,
                  HQty: this.rowForm.HQty,
                  HSourceInterID: this.rowForm.HSourceInterID,
                  HSourceEntryID: this.rowForm.HSourceEntryID,
                  HInterID: this.rowForm.hmainid.toString(),
                  HsupId: this.rowForm.HSupID,
                  HQty: this.rowForm['数量'],
                  HSourceInterID: this.rowForm['源单主内码'],
                  HSourceEntryID: this.rowForm['源单子内码'],
                  user: sessionStorage["HUserName"],
                },
              })
              .then((res) => {
                if (res.data.count == 1) {
                  this.handleQuery();
                  this.$modal.msgSuccess("删除成功");
                } else {
                  this.$modal.msgError("错误:" + result.code + result.Message);
                  this.$modal.msgError("错误:" + res.data.code + res.data.Message);
                }
              })
              .catch((error) => {
src/views/purchase/cgPoOrderBill/cgPoOrderBill.vue
@@ -62,8 +62,8 @@
            <el-option
              v-for="(item, index) in organizationList"
              :key="index"
              :label="item.label"
              :value="item.value"
              :label="item.Name"
              :value="item.ID"
            >
            </el-option>
          </el-select>
src/views/purchase/postockInBack/Kf_POStockInBackBillList.vue
@@ -148,7 +148,7 @@
            </el-collapse>
        </el-form>
        <el-row :gutter="10" class="mb8" style="margin-top: 10px">
              <!-- <el-col :span="1.5">
            <!-- <el-col :span="1.5">
                <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAddEdit((OperationType = 1))"
                    id="btn-Add">新增</el-button>
            </el-col> -->
@@ -233,14 +233,14 @@
            <!-- 编辑 -->
            <el-dialog title="编辑" :visible.sync="openEdit" width="1480px" append-to-body class="xsckdBox"
                @close="close">
                <edit :OperationType="OperationType" :linterid="this.rowForm.hmainid"
                    HSouceBillType="0" :copyType="copyType" @editClose="editClose"
                    v-if="editShow" />
                <edit :OperationType="OperationType" :linterid="this.rowForm.hmainid" HSouceBillType="0"
                    :copyType="copyType" @editClose="editClose" v-if="editShow" />
            </el-dialog>
            <PrintList :linterid="this.rowForm.hmainid" :MyMsg="this.rowForm.hmainid" Type="HPOInStockBill"
                HModName="HPOInStockBill" @rowEditClose="rowSetClose" v-if="printListShow" />
            <BarCodeDetail :visible.sync="barCodeDetailShow" ref="barcodeDetail" />
        </div>
    </div>
</template>
@@ -257,8 +257,10 @@
    components: { RowSettings, Edit, PrintList, BarCodeDetail },
    data() {
        return {
            typeIndex: 0,
            activeSeach: "",
            HModName: "Kf_StockOutRequestBillList",
            backTypeList: [{ name: ' 采购退料列表(已入库)', value: 1, }, { name: '采购退料列表(未入库)', value: 0, }],
            organizationList: JSON.parse(sessionStorage.getItem('organizationList')),
            editShow: false,
            openEdit: false,
@@ -421,6 +423,7 @@
            this.eTime = yyyyE + "-" + mmE + "-" + ddE;
        },
        getList() {
            console.log(this.$route.query.type)
            this.pageSize = 50;
            this.tableShow = false;
            this.loading = true;
@@ -806,22 +809,22 @@
                this.sWhere += " and 物料代码 like '%" + this.queryParams.MaterialCode + "%'";
            }
            if (this.queryParams.MaterialName) {
                this.sWhere += " and 物料名称 like '%" + MaterialName + "%'";
                this.sWhere += " and 物料名称 like '%" + this.queryParams.MaterialName + "%'";
            }
            if (this.queryParams.SpecificationModel) {
                this.sWhere += " and 规格型号 like '%" + SpecificationModel + "%'";
                this.sWhere += " and 规格型号 like '%" + this.queryParams.SpecificationModel + "%'";
            }
            if (this.queryParams.HSourceBillNo) {
                this.sWhere += " and 源单单号 like '%" + HSourceBillNo + "%'";
                this.sWhere += " and 源单单号 like '%" + this.queryParams.HSourceBillNo + "%'";
            }
            if (this.queryParams.Warehouse) {
                this.sWhere += " and 发货仓库 like '%" + Warehouse + "%'";
                this.sWhere += " and 发货仓库 like '%" + this.queryParams.Warehouse + "%'";
            }
            if (this.queryParams.Hmaker) {
                this.sWhere += " and 制单人 like '%" + Hmaker + "%'";
                this.sWhere += " and 制单人 like '%" + this.queryParams.Hmaker + "%'";
            }
            if (this.queryParams.HUSEORGID) {
                this.sWhere += " and HOrgID like '%" + HUSEORGID + "%'";
                this.sWhere += " and HOrgID like '%" + this.queryParams.HUSEORGID + "%'";
            }
            this.getList();
        },
@@ -956,8 +959,8 @@
            if (this.ids.length != 1) {
                this.$modal.msgError("请选择一行数据");
            } else {
                 this.printListShow = true;
                            this.openPrintList = true;
                this.printListShow = true;
                this.openPrintList = true;
                // axios.get(this.baseURL + "/Kf_SellOutBill/CheckSellOutBill_IsExist", {
                //         params: { HInterID: this.rowForm.hmainid },
                //     })
@@ -995,4 +998,15 @@
.xsckdBox .el-date-editor.el-input {
    width: 100%;
}
.cgtlType {
    text-decoration: underline;
    line-height: 36px;
    color: #606266;
    cursor: pointer;
}
.cgtlActive {
    color: blue;
}
</style>
src/views/scMould/basicModeling/Gy_MouldFile.vue
@@ -285,7 +285,40 @@
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :span="6">
              <el-form-item label="长" prop="HMouldLength">
                <el-input v-model="form.HMouldLength" placeholder="请输入长" />
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="宽" prop="HMouldWidth">
                <el-input v-model="form.HMouldWidth" placeholder="请输入宽" />
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="高" prop="HMouldHeight">
                <el-input v-model="form.HMouldHeight" placeholder="请输入高" />
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="折叠高度" prop="HMouldFoldHeight">
                <el-input v-model="form.HMouldFoldHeight" placeholder="请输入折叠高度" />
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :span="6">
              <el-form-item label="周转容器标记" prop="HTransPackFlag">
                <el-checkbox v-model="form.HTransPackFlag"></el-checkbox>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="发货容器标记" prop="HSendPackFlag">
                <el-checkbox v-model="form.HSendPackFlag"></el-checkbox>
              </el-form-item>
            </el-col>
          </el-row>
        </el-tab-pane>
        <el-tab-pane label="制单信息" name="third">
          <el-row>
@@ -935,8 +968,14 @@
        HNowSPName: '',
        HMouldUseStatus: '',
        HNextMainDate: '',
        HUSEORGID: sessionStorage["OrganizationID"],
        HCREATEORGID: sessionStorage["OrganizationID"],
        HUSEORGID: sessionStorage["OrganizationID"] - 0,
        HCREATEORGID: sessionStorage["OrganizationID"] - 0,
        HMouldLength: '',
        HMouldWidth: '',
        HMouldHeight: '',
        HMouldFoldHeight: '',
        HTransPackFlag: 0,
        HSendPackFlag: 0,
        HMaker: sessionStorage["HUserName"],
        HMakeDate: '',
        HChecker: '',
@@ -1090,6 +1129,12 @@
          this.form.HMouldUseStatus = data.模具可用状态
          this.form.HNextMainDate = data.校正日期
          this.form.HUSEORGID = data.HUSEORGID
          this.form.HMouldLength = data.HMouldLength
          this.form.HMouldWidth = data.HMouldWidth
          this.form.HMouldHeight = data.HMouldHeight
          this.form.HMouldFoldHeight = data.HMouldFoldHeight
          this.form.HTransPackFlag = data.HTransPackFlag == 0 ? false : true
          this.form.HSendPackFlag = data.HSendPackFlag == 0 ? false : true
          for (var i = 0; i < result.data.length; i++) {
            this.editData.push(
              {
@@ -1379,7 +1424,6 @@
    },
    // 编辑提交保存
    submitForm() {
      console.log(1)
      this.$refs["form"].validate(valid => {
        if (valid) {
          let url = null
@@ -1394,6 +1438,8 @@
          } else (
            url = '/Gy_Mould_Edit/AddBill'
          )
          this.form.HTransPackFlag = this.form.HTransPackFlag == false ? 0 : 1
          this.form.HSendPackFlag = this.form.HSendPackFlag == false ? 0 : 1
          var sMainStr = JSON.stringify(this.form);
          var sSubStr = JSON.stringify(this.editData);
          var mainTableMaintainRuleStr = JSON.stringify(this.maintainData);
src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainList.vue
@@ -9,29 +9,38 @@
      class="searchBox"
    >
      <el-row>
        <el-form-item label="日期" style="margin-left: 100px">
          <el-date-picker
            v-model="dateRange"
            value-format="yyyy-MM-dd"
            type="daterange"
            range-separator="-"
            start-placeholder="开始日期"
            end-placeholder="结束日期"
          ></el-date-picker>
        </el-form-item>
        <el-form-item label="日期间隔">
          <el-select
            v-model="queryParams.HInitTimeCycle"
            placeholder="请选择"
            @change="riqiChange"
              <el-form-item label="开始日期" style="margin-left: 100px">
        <el-date-picker
          v-model="sTime"
          type="date"
          placeholder="开始日期"
          style="width: 150px"
        >
        </el-date-picker>
      </el-form-item>
      <el-form-item label="结束日期">
        <el-date-picker
          v-model="eTime"
          type="date"
          placeholder="结束日期"
          style="width: 150px"
        >
        </el-date-picker>
      </el-form-item>
      <el-form-item label="日期间隔">
        <el-select
          v-model="queryParams.HInitTimeCycle"
          placeholder="请选择"
          @change="riqiChange"
          style="width: 150px"
        >
          <el-option
            v-for="(item, index) in rqsgList"
            :key="index"
            :label="item.label"
            :value="item.value"
          >
            <el-option
              v-for="(item, index) in rqsgList"
              :key="index"
              :label="item.label"
              :value="item.value"
            >
            </el-option>
          </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="单据号" prop="HBillNo">
@@ -405,6 +414,9 @@
       <el-col :span="1.5">
        <el-button type="primary" icon="el-icon-printer" size="mini" :disabled="single" @click="get_BarCodeDetail">条码明细</el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button type="primary" icon="el-icon-printer" size="mini" :disabled="single" @click="get_PackStockDetail">包装容器出入库明细</el-button>
      </el-col>
    </el-row>
    <div class="tableBox" v-loading="loading">
      <el-table
@@ -587,6 +599,8 @@
      </el-dialog>
      <!-- 条码明细 -->
      <BarCodeDetail :visible.sync="barCodeDetailShow" ref="barcodeDetail"/>
      <!-- 包装容器出入库明细 -->
      <PackStockDetail :visible.sync="packStockDetailShow" ref="packStockDetail"/>
    </div>
  </div>
</template>
@@ -597,10 +611,11 @@
import Edit from '@/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit'
import BarCodeDetail from '@/views/component/BarCodeDetail'               //条码明细组件
import dayjs from "dayjs";                                                //日期处理库
import PackStockDetail from '@/views/component/PackStockDetail'               //包装明细组件
export default {
  name: "GySource",
  components: { RowSettings,Edit,BarCodeDetail},
  components: { RowSettings,Edit,BarCodeDetail,PackStockDetail},
  props: {
    openPage: { type: String },
  },
@@ -617,6 +632,7 @@
      printListShow: false,
      HClassTag: "ForFilteringSchemes",                     //过滤条件的class类
      barCodeDetailShow: false,                             //条码明细组件容器显示标记
      packStockDetailShow:false,                            //包装容器出入库明细容器显示标记
      HBillType: "1202",
      openBtnHide: false,
      btnHideShow: false,
@@ -696,8 +712,8 @@
        ColContent2: "",
        ColContent: "",
        HInitTimeCycle: 29,
        HBeginDate: dayjs(new Date()).subtract(29, "d").format("YYYY-MM-DDTHH:mm:ss"),
        HEndDate: dayjs(new Date()).format("YYYY-MM-DDTHH:mm:ss"),
        HBeginDate: dayjs(new Date()).subtract(29, "d").format("YYYY-MM-DD"),
        HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
      },
      // 显示搜索条件
      showSearch: true,
@@ -854,15 +870,11 @@
      const start = dayjs(new Date())
        .subtract(this.queryParams.HInitTimeCycle, "d")
        .format("YYYY-MM-DD");
      // start.setTime(start.getTime() - 3600 * 1000 * 24 * this.queryParams.HInitTimeCycle);
      // const yyyyS = start.getFullYear();
      // const mmS = String(start.getMonth() + 1).padStart(2, "0"); // 月份是从0开始的
      // const ddS = String(start.getDate()).padStart(2, "0");
      // const yyyyE = end.getFullYear();
      // const mmE = String(end.getMonth() + 1).padStart(2, "0"); // 月份是从0开始的
      // const ddE = String(end.getDate()).padStart(2, "0");
      this.sTime = start;
      this.eTime = end;
      this.queryParams.HBeginDate = start;
      this.queryParams.HEndDate = end;
      this.dateRange = [this.sTime, this.eTime];
    },
    organizationChange(val) {
@@ -917,11 +929,11 @@
      // this.sWhere += ` and CONVERT(varchar(100),日期, 23) >= '2020-01-01' and CONVERT(varchar(100),日期, 23) <= '2030-01-01'`;
      // 收料通知单列表
      if (this.dateRange.length > 0) {
      if (this.queryParams.HBeginDate && this.queryParams.HEndDate) {
        this.sWhere +=
          " and CONVERT(varchar(100),日期, 23) >= '" + this.dateRange[0] + "'";
          " and CONVERT(varchar(100),日期, 23) >= '" + this.queryParams.HBeginDate + "'";
        this.sWhere +=
          " and CONVERT(varchar(100),日期, 23) <= '" + this.dateRange[1] + "'";
          " and CONVERT(varchar(100),日期, 23) <= '" + this.queryParams.HEndDate + "'";
      }
      try {
@@ -1177,7 +1189,7 @@
    },
    //选中行高亮样式
    rowStyle({ row, rowIndex }) {
      if (this.ids.includes(row.HItemID)) {
      if (this.ids.includes(row.hmainid)) {
        return { background: "#ecf5ff" };
      }
    },
@@ -1189,7 +1201,7 @@
    // 多选框选中数据
    handleSelectionChange(selection) {
      // this.rowForm = {}
      this.ids = selection.map((item) => item.HItemID);
      this.ids = selection.map((item) => item.hmainid);
      this.single = selection.length != 1;
      this.multiple = !selection.length;
      if (!this.single) {
@@ -1570,6 +1582,18 @@
        );
      }
    },
      //#region 包装容器出入库明细
    get_PackStockDetail() {
      // if (this.selectedRow.length !== 1) {
      //   this.$message.warning('请选择一行数据查看条码明细!')
      //   return
      // }
      this.packStockDetailShow = true
      this.$nextTick(() => {
        this.$refs.packStockDetail.open(this.rowForm)
      })
        },
    //#endregion
    // 提交上传文件
    submitFileForm() {
      this.$refs.upload.submit();
src/views/sell/Kf_ICStockBillMainList/Kf_ICStockBillMainListEdit.vue
@@ -247,12 +247,12 @@
            <span>{{ scope.row.计量单位 }}</span>
          </template>
        </el-table-column>
        <el-table-column align="center" label="应收数量" width="120">
        <el-table-column align="center" label="应退数量" width="120">
          <template slot-scope="scope">
              <span>{{ scope.row.HQtyMust }}</span>
          </template>
        </el-table-column>
        <el-table-column align="center" label="实收数量" width="120">
        <el-table-column align="center" label="实退数量" width="120">
          <template slot-scope="scope">
            <el-input-number v-model="scope.row.HQty" :min="0" style="width: 90px;"
              controls-position="right"></el-input-number>
@@ -515,7 +515,7 @@
                    , "规格型号": dataArray[i].规格型号
                    , "HUnitID": dataArray[i].HUnitID
                    , "计量单位": dataArray[i].计量单位
                    , "HQtyMust": dataArray[i].数量.toFixed(6)
                    , "HQtyMust": dataArray[i].应发数量.toFixed(6)
                    , "HQty": dataArray[i].数量.toFixed(6)
                    , "HPieceQty": "0"
                    , "HPrice": dataArray[i].单价.toFixed(4)
@@ -737,8 +737,8 @@
                , "规格型号": result.data[i].规格型号
                , "HUnitID": result.data[i].HUnitID
                , "计量单位": result.data[i].计量单位
                , "HQtyMust": result.data[i].应收数量
                , "HQty": result.data[i].实收数量
                , "HQtyMust": result.data[i].应发数量
                , "HQty": result.data[i].数量
                , "HRemark": result.data[i].表体备注
                , "HPrice": result.data[i].单价
                , "HMoney": result.data[i].金额
@@ -853,8 +853,8 @@
              "规格型号": result.data[i].规格型号,
              "HUnitID": result.data[i].HUnitID,
              "计量单位": result.data[i].计量单位,
              "HQtyMust": result.data[i].应收数量,
              "HQty": result.data[i].实收数量,
              "HQtyMust": result.data[i].应发数量,
              "HQty": result.data[i].数量,
              "HRemark": (result.data[i].表体备注 || "") + " (复制)",
              "HPrice": result.data[i].单价,
              "HMoney": result.data[i].金额,
src/views/sell/XsSeOutStockBackBillEdit.vue
@@ -320,7 +320,7 @@
        </el-table-column>
        <el-table-column align="center" label="发货仓库" width="120">
          <template slot-scope="scope">
            <span>{{ scope.row.计量单位 }}</span>
            <span>{{ scope.row.发货仓库 }}</span>
          </template>
        </el-table-column>
        <el-table-column align="center" label="收货仓库" width="120">
src/views/sell/XsSeOutStockBackBillList.vue
@@ -1403,7 +1403,7 @@
    //打开新增组件弹窗
    handleAddEdit() {
      this.rowForm.HItemID = 0;
      this.iframeUrl = `/iframe/XsSeOutStockBackBillEdit?HInterID=${0}&OperationType=${1}&copyType=${-1}`;
      this.iframeUrl = `/iframe/XsSeOutStockBackBillEdit?HInterID=0&OperationType=1&CopyType=2`;
      this.$nextTick(() => {
        this.openEdit = true;
        this.editShow = true;
@@ -1411,7 +1411,7 @@
    },
    //打开修改组件弹窗
    handleEdit(row, OperationType, copyType) {
      this.iframeUrl = `/iframe/XsSeOutStockBackBillEdit?HInterID=${row.hmainid}&OperationType=${OperationType}&copyType=${copyType}`;
      this.iframeUrl = `/iframe/XsSeOutStockBackBillEdit?HInterID=${row.hmainid}&OperationType=${OperationType}&CopyType=${copyType}`;
      this.$nextTick(() => {
        this.openEdit = true;
        this.editShow = true;
src/views/sell/XsSeOutStockBill.vue
@@ -300,6 +300,7 @@
          >复制</el-button
        >
      </el-col>
      -->
      <el-col :span="1.5">
        <el-button
          type="primary"
@@ -310,6 +311,7 @@
          >删除
        </el-button>
      </el-col>
      <!--
      <el-col :span="1.5">
        <el-button
          type="primary"
src/views/sell/sellOut/sellOutBill.vue
@@ -305,7 +305,14 @@
        >
      </el-col>
      <el-col :span="1.5">
        <el-button type="primary" icon="el-icon-printer" size="mini" :disabled="single" @click="get_BarCodeDetail">条码明细</el-button>
        <el-button
          type="primary"
          icon="el-icon-printer"
          size="mini"
          :disabled="single"
          @click="get_BarCodeDetail"
          >条码明细</el-button
        >
      </el-col>
    </el-row>
    <div class="tableBox" v-loading="loading">
@@ -416,7 +423,7 @@
        <!-- <div>111</div> -->
      </el-dialog>
      <!-- 条码明细 -->
      <BarCodeDetail :visible.sync="barCodeDetailShow" ref="barcodeDetail"/>
      <BarCodeDetail :visible.sync="barCodeDetailShow" ref="barcodeDetail" />
    </div>
  </div>
</template>
@@ -426,12 +433,12 @@
import RowSettings from "@/views/component/rowSettings";
import Edit from "@/views/sell/sellOut/sellOutBillEdit";
import PrintList from "@/views/component/printList";
import BarCodeDetail from '@/views/component/BarCodeDetail'               //条码明细组件
import BarCodeDetail from "@/views/component/BarCodeDetail"; //条码明细组件
import moment from "moment";
export default {
  name: "SellOutBill",
  components: { RowSettings, Edit, PrintList,BarCodeDetail },
  components: { RowSettings, Edit, PrintList, BarCodeDetail },
  data() {
    return {
      activeSeach: "",
@@ -441,7 +448,7 @@
      tableShow: true,
      openPrintList: false,
      printListShow: false,
      barCodeDetailShow: false,                             //条码明细组件容器显示标记
      barCodeDetailShow: false, //条码明细组件容器显示标记
      openBtnHide: false,
      btnHideShow: false,
      rowHideShow: false,
@@ -1055,6 +1062,7 @@
        .confirm("确认要删除吗,删除后不能恢复")
        .then(() => {
          if (this.rowForm.状态 == "创建") {
            this.loading = true;
            axios
              .get(this.baseURL + "/Kf_SellOutBill/DeltetSellOutBill", {
                params: {
@@ -1065,13 +1073,16 @@
              .then((response) => {
                if (response.data.count == 1) {
                  this.getList();
                  this.$modal.msgSuccess("删除成功");
                  this.$modal.msgSuccess(response.data.Message);
                } else {
                  this.$modal.msgError("错误:" + result.code + result.Message);
                }
              })
              .catch((error) => {
                this.$modal.msgError("接口请求失败!");
              })
              .finally(() => {
                this.loading = false;
              });
          } else {
            this.$modal.msgError("此条数据不是创建状态,无法删除!");
@@ -1144,13 +1155,12 @@
      //   this.$message.warning('请选择一行数据查看条码明细!')
      //   return
      // }
      this.barCodeDetailShow = true
      this.barCodeDetailShow = true;
      this.$nextTick(() => {
        this.$refs.barcodeDetail.open(this.rowForm)
      })
        },
        this.$refs.barcodeDetail.open(this.rowForm);
      });
    },
    //#endregion
    //#region 获取公司名,根据公司进行定制化开发
    defaintOperationByCompanyName() {
src/views/sell/xsSeOrderBill/xsSeOrderBill.vue
@@ -683,7 +683,7 @@
      openData: false, //数据弹窗
      dialogTitle: "",
      zuzhiId: "",
      organizationList: [], //组织列表
      organizationList: JSON.parse(sessionStorage["organizationList"]), //组织列表
      subDisabled: false, //编辑页面保存按钮是否禁用(true禁用,false可用)
      OperationType: null, //保存类型(新增1修改3)
      HInterID: null,
@@ -1390,7 +1390,8 @@
    },
    //打开新增组件弹窗
    handleAddEdit() {
      this.rowForm.HItemID = 0;
      // this.rowForm.HItemID = 0;
      this.iframeUrl = `/iframe/XsSeOrderBillEdit?HInterID=0&OperationType=1&copyType=-1`;
      this.$nextTick(() => {
        this.openEdit = true;
        this.editShow = true;
@@ -1417,13 +1418,9 @@
        .then(() => {
          if (!this.rowForm.审核人) {
            axios
              .get(this.baseURL + "Cg_POInStockBill/DeltetPOInStockBill", {
              .get(this.baseURL + "Xs_SeOrderBill/DropXs_SeOrderBill", {
                params: {
                  HInter: this.rowForm.hmainid.toString(),
                  HsupId: this.rowForm.HsupId,
                  HQty: this.rowForm.HQty,
                  HSourceInterID: this.rowForm.HSourceInterID,
                  HSourceEntryID: this.rowForm.HSourceEntryID,
                  HInterID: this.rowForm.hmainid.toString(),
                  user: sessionStorage["HUserName"],
                },
              })
src/views/sell/xsSeOrderBill/xsSeOrderBillEdit.vue
@@ -435,18 +435,18 @@
        </el-table-column>
        <el-table-column align="center" label="仓库" width="120">
          <template slot-scope="scope">
            <el-input-number
              v-model="scope.row.HQty"
            <el-input
              v-model="scope.row.仓库"
              :min="1"
              style="width: 90px"
              controls-position="right"
            ></el-input-number>
            ></el-input>
          </template>
        </el-table-column>
        <el-table-column align="center" label="数量2" width="120">
          <template slot-scope="scope">
            <el-input-number
              v-model="scope.row.HPrice"
              v-model="scope.row.HQty"
              :min="0"
              style="width: 90px"
              controls-position="right"
@@ -455,22 +455,22 @@
        </el-table-column>
        <el-table-column align="center" label="单价" width="120">
          <template slot-scope="scope">
            <span>{{ scope.row.HTaxPrice }}</span>
            <span>{{ scope.row.HPrice }}</span>
          </template>
        </el-table-column>
        <el-table-column align="center" label="加税合计" width="120">
        <el-table-column align="center" label="价税合计" width="120">
          <template slot-scope="scope">
            <span>{{ scope.row.HTaxRate }}</span>
            <span>{{ scope.row.HTaxMoney }}</span>
          </template>
        </el-table-column>
        <el-table-column align="center" label="客户规格型号" width="120">
          <template slot-scope="scope">
            <span>{{ scope.row.HPrice * scope.row.HQty }}</span>
            <span>{{ scope.row.HPrice * scope.row.规格型号 }}</span>
          </template>
        </el-table-column>
        <el-table-column align="center" label="交货日期" width="120">
          <template slot-scope="scope">
            <span>{{ scope.row.HTaxPrice * scope.row.HQty }}</span>
            <span>{{ scope.row.HTaxPrice * scope.row.HDate }}</span>
          </template>
        </el-table-column>
        <el-table-column align="center" label="备注" width="120">
@@ -648,8 +648,8 @@
    getdata() {
      this.HInterID2 = this.$route.query.HInterID || this.linterid || 0;
      this.OperationType2 = this.$route.query.OperationType || this.OperationType || 1;
      this.CopyType2 = this.$route.query.copyType || this.copyType || -1;
      console.log(this.CopyType2, this.OperationType2, this.HInterID2);
      this.CopyType2 = this.$route.query.CopyType || this.copyType || -1;
      console.log("传递的参数",this.$route.query.CopyType,this.$route.query.OperationType, this.$route.query.HInterID);
      this.formShow = false;
      this.formLoading = true;
@@ -712,7 +712,7 @@
                    HMoney: dataArray[i].金额.toFixed(2),
                    HTaxMoney: dataArray[i].价税合计.toFixed(2),
                    HWHID: dataArray[i].HWHID,
                    发货仓库: dataArray[i].HWHName,
                    仓库: dataArray[i].HWHName,
                    HRemark: "",
                    HQty_Full: "0",
                    HQty_Empty: "0",
src/views/system/user/GyDriver.vue
New file
@@ -0,0 +1,1676 @@
<template>
  <div style="padding: 10px">
    <el-card class="search-card" style="margin-bottom: 15px">
            <el-button
              type="text"
              @click="toggleAdvancedSearch"
              style="font-size: 12px; color: #409eff"
            >
              {{ showAdvancedSearch ? "收起" : "更多" }}
              <i
                :class="
                  showAdvancedSearch
                    ? 'el-icon-arrow-up'
                    : 'el-icon-arrow-down'
                "
              ></i>
            </el-button>
      <div style="margin-top: 15px">
        <el-row :gutter="15">
          <el-col :span="6">
            <div style="display: flex; align-items: center">
              <span style="width: 200px; text-align: right; margin-right: 10px"
                >驾驶员代码:</span
              >
              <el-input
                v-model="queryParams.HNumber"
                placeholder="请输入驾驶员代码"
                size="small"
                @keyup.enter.native="handleQuery"
                clearable
              />
            </div>
          </el-col>
          <el-col :span="6">
            <div style="display: flex; align-items: center">
              <span style="width: 200px; text-align: right; margin-right: 10px"
                >驾驶员名称:</span
              >
              <el-input
                v-model="queryParams.HName"
                placeholder="请输入驾驶员名称"
                size="small"
                @keyup.enter.native="handleQuery"
                clearable
              />
            </div>
          </el-col>
          <el-col :span="6">
            <div style="display: flex; align-items: center">
              <span style="width: 100px; text-align: right; margin-right: 10px"
                >组织:</span
              >
              <el-select
                v-model="queryParams.HUSEORGID"
                placeholder="请选择组织"
                size="small"
                style="width: 100%"
              >
                <el-option
                  v-for="(item, index) in organizationList"
                  :key="index"
                  :label="item.Name"
                  :value="item.ID"
                >
                </el-option>
              </el-select>
            </div>
          </el-col>
          <el-col :span="6">
            <div style="display: flex; align-items: center">
              <span style="width: 80px; text-align: right; margin-right: 10px"
                >重新同步:</span
              >
              <el-input
                v-model="queryParams.HSyncNumber"
                placeholder="请输入驾驶员代码"
                size="small"
                @keyup.enter.native="handleSync"
                clearable
                style="flex: 1"
              />
              <el-button
                @click="handleSync"
                size="small"
                style="margin-left: 5px"
                >同步</el-button
              >
            </div>
          </el-col>
        </el-row>
      <div class="search-header">
        <div style="display: flex; justify-content: space-between; align-items: center">
          <div>
            <el-button
              type="primary"
              icon="el-icon-search"
              size="mini"
              @click="handleQuery"
              style="margin-right: 10px"
              >搜索</el-button
            >
            <el-button
              icon="el-icon-refresh"
              size="mini"
              @click="resetQuery"
              style="margin-right: 10px"
              >重置</el-button
            >
            <el-button
              icon="el-icon-refresh"
              size="mini"
              @click="getList"
              style="margin-right: 10px"
              >刷新</el-button
            >
          </div>
        </div>
      </div>
        <el-collapse-transition>
          <div v-show="showAdvancedSearch">
            <div style="margin-top: 15px">
              <el-row :gutter="15">
                <div style="margin-bottom: 50px">
                <!-- 第一组过滤条件 -->
                <el-col :span="24">
                  <div style="display: flex; align-items: center">
                    <el-select
                      v-model="queryParams.ColName"
                      placeholder="请选择"
                      size="small"
                      style="flex: 1"
                    >
                      <el-option label="" value="0"></el-option>
                      <el-option
                        v-for="(item, index) in filterColumnList"
                        :key="index"
                        :label="item.field"
                        :value="item.field"
                        v-if="!item.hide"
                      ></el-option>
                    </el-select>
                    <el-select
                      v-model="queryParams.Comparator"
                      placeholder="请选择"
                      size="small"
                      style="width: 100px; margin: 0 10px"
                    >
                      <el-option label="" value="0"></el-option>
                      <el-option
                        v-for="(item, index) in comparatorList"
                        :key="index"
                        :label="item.label"
                        :value="item.value"
                      ></el-option>
                    </el-select>
                    <el-input
                      v-model="queryParams.ColContent"
                      placeholder="请输入"
                      size="small"
                      @keyup.enter.native="handleQuery"
                      clearable
                      style="flex: 1"
                    />
                  </div>
                </el-col>
                </div>
                <div style="margin-bottom: 100px">
                <!-- 第二组过滤条件 -->
                <el-col :span="24">
                  <div style="display: flex; align-items: center">
                    <el-select
                      v-model="queryParams.ColName1"
                      placeholder="请选择"
                      size="small"
                      style="flex: 1"
                    >
                      <!-- <el-option label="" value="0"></el-option> -->
                      <el-option
                        v-for="(item, index) in filterColumnList"
                        :key="index"
                        :label="item.field"
                        :value="item.field"
                        v-if="!item.hide"
                      ></el-option>
                    </el-select>
                    <el-select
                      v-model="queryParams.Comparator1"
                      placeholder="请选择"
                      size="small"
                      style="width: 100px; margin: 0 10px"
                    >
                      <!-- <el-option label="" value="0"></el-option> -->
                      <el-option
                        v-for="(item, index) in comparatorList"
                        :key="index"
                        :label="item.label"
                        :value="item.value"
                      ></el-option>
                    </el-select>
                    <el-input
                      v-model="queryParams.ColContent1"
                      placeholder="请输入"
                      size="small"
                      @keyup.enter.native="handleQuery"
                      clearable
                      style="flex: 1"
                    />
                  </div>
                </el-col>
                </div>
                <div style="margin-bottom: 50px">
                <!-- 第三组过滤条件 -->
                <el-col :span="24">
                  <div style="display: flex; align-items: center">
                    <el-select
                      v-model="queryParams.ColName2"
                      placeholder="请选择"
                      size="small"
                      style="flex: 1"
                    >
                      <!-- <el-option label="" value="0"></el-option> -->
                      <el-option
                        v-for="(item, index) in filterColumnList"
                        :key="index"
                        :label="item.field"
                        :value="item.field"
                        v-if="!item.hide"
                      ></el-option>
                    </el-select>
                    <el-select
                      v-model="queryParams.Comparator2"
                      placeholder="请选择"
                      size="big"
                      style="width: 100px; margin: 0 10px"
                    >
                      <el-option label="" value="0"></el-option>
                      <el-option
                        v-for="(item, index) in comparatorList"
                        :key="index"
                        :label="item.label"
                        :value="item.value"
                      ></el-option>
                    </el-select>
                    <el-input
                      v-model="queryParams.ColContent2"
                      placeholder="请输入"
                      size="big"
                      @keyup.enter.native="handleQuery"
                      clearable
                      style="flex: 1"
                    />
                  </div>
                </el-col>
                </div>
              </el-row>
            </div>
            <div
              v-if="currentFilterScheme"
              style="
                margin-top: 15px;
                padding: 10px;
                background-color: #f0f9ff;
                border-radius: 4px;
                border-left: 4px solid #409eff;
              "
            >
              <span style="font-size: 14px; font-weight: bold; color: #fc9393">
                当前过滤方案:{{ currentFilterScheme }}
              </span>
              <span
                v-if="currentFilterRemark"
                style="font-size: 13px; color: #7b90fb; margin-left: 10px"
              >
                ({{ currentFilterRemark }})
              </span>
              <el-button
                type="text"
                @click="handleSaveScheme"
                size="mini"
                style="margin-left: 20px"
                >保存方案</el-button
              >
              <el-button
                type="text"
                @click="handleReadScheme"
                size="mini"
                >读取方案</el-button
              >
              <el-button
                type="text"
                @click="clearFilterScheme"
                size="mini"
                style="color: #f56c6c"
                >清除方案</el-button
              >
            </div>
          </div>
        </el-collapse-transition>
      </div>
    </el-card>
    <el-row :gutter="10" class="mb8">
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-upload2"
          size="mini"
          @click="handleImport"
          id="set_SouceExcel"
          >导入</el-button
        >
      </el-col>
      <!-- <el-col :span="1.5">
        <el-button
          type="warning"
          plain
          icon="el-icon-download"
          size="mini"
          @click="handleExport"
          id="get_export"
          >导出</el-button
        >
      </el-col> -->
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-plus"
          size="mini"
          @click="handleAddEdit((OperationType = 1))"
          id="set_add"
          >新增</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-document-copy"
          size="mini"
          :disabled="single"
          @click="handleCopy"
          id="set_Copy"
          >复制</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-edit"
          size="mini"
          :disabled="single"
          @click="handleEdit((row = rowForm), (OperationType = 3))"
          id="set_show"
          >编辑</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-delete"
          size="mini"
          :disabled="single"
          @click="handleDelete"
          id="set_delete"
          >删除</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-check"
          size="mini"
          :disabled="single"
          @click="handleAudit(0)"
          id="btn_audit"
          >审核</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-close"
          size="mini"
          :disabled="single"
          @click="handleAudit(1)"
          id="btn_deaudit"
          >反审核</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-turn-off"
          size="mini"
          :disabled="single"
          @click="handleStop(0)"
          id="btn_stop"
          >禁用</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-open"
          size="mini"
          :disabled="single"
          @click="handleStop(1)"
          id="btn_destop"
          >反禁用</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-setting"
          size="mini"
          @click="handleRowHide"
          id="set_hidecolumn"
          >列设置</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-s-operation"
          size="mini"
          @click="handleBtnHide"
          id="HideButton"
          >按钮设置</el-button
        >
      </el-col>
    </el-row>
    <div class="tableBox" v-loading="loading">
      <el-table
        :data="tableData"
        ref="tableData"
        max-height="650"
        @selection-change="handleSelectionChange"
        border
        @row-click="handleRowClick"
        :row-style="rowStyle"
        @cell-dblclick="handleDblclick"
        v-if="tableShow"
        stripe
      >
        <el-table-column
          type="selection"
          width="55"
          align="center"
          fixed="left"
        />
        <template v-for="(item, index) in btList">
          <el-table-column
            :align="item.align"
            :prop="item.field"
            :label="item.title"
            :width="item.width"
            :key="item.field"
            v-if="!item.hide && item.field !== 'checkbox'"
            :sortable="item.sort"
            show-overflow-tooltip
            :fixed="item.fixed"
          >
            <template slot-scope="{ row, column }">
              <div :style="item.style">
                <!-- 日期格式化 -->
                <span
                  v-if="
                    column.property.includes('日期') ||
                    column.property.includes('Date')
                  "
                >
                  {{ parseTime(row[column.property], "{y}-{m}-{d}") }}
                </span>
                <el-button
                  type="text"
                  @click="handleDriverCodeClick(row)"
                  v-else-if="column.property === '驾驶员代码'"
                  style="color: #409eff"
                  >{{ row[column.property] }}</el-button
                >
                <span
                  v-else-if="column.property === '禁用标记'"
                  :style="{
                    color: row[column.property] === 'Y' ? '#f56c6c' : '#67c23a',
                    fontWeight:
                      row[column.property] === 'Y' ? 'bold' : 'normal',
                  }"
                >
                  {{ row[column.property] === "Y" ? "已禁用" : "正常" }}
                </span>
                <!-- 审核状态特殊样式 -->
                <span
                  v-else-if="column.property === '审核人'"
                  :style="{
                    color: row[column.property] ? '#67c23a' : '#909399',
                  }"
                >
                  {{ row[column.property] || "未审核" }}
                </span>
                <span v-else>{{ row[column.property] }}</span>
              </div>
            </template>
          </el-table-column>
        </template>
      </el-table>
      <pagination
        v-show="total > 0"
        :total="total"
        :page.sync="page"
        :limit.sync="pageSize"
        :pageSizes="pageSizes"
        @pagination="getList"
      />
      <!-- 隐藏列设置弹窗 -->
      <el-dialog
        title="隐藏列设置"
        :visible.sync="openRowHide"
        width="816px"
        append-to-body
      >
        <RowSettings
          :colName="btResList"
          :HModName="HModName"
          @rowEditClose="rowSetClose"
          v-if="rowHideShow"
        />
      </el-dialog>
      <!-- 编辑弹窗 -->
      <el-dialog
        :title="editDialogTitle"
        :visible.sync="openEdit"
        width="1480px"
        append-to-body
        class="driver-edit-dialog"
        :before-close="closeEditDialog"
        :close-on-click-modal="false"
      >
        <GyDriverEdit
          :OperationType="OperationType"
          :linterid="rowForm.HItemID"
          :HSouceBillType="''"
          @editCloseGy="editGyClose"
          v-if="editShow"
          ref="editComponent"
        />
        <span slot="footer" class="dialog-footer" v-if="OperationType !== 4">
          <!-- <el-button @click="closeEditDialog">取 消</el-button>
          <el-button type="primary" @click="saveDriverData">保 存</el-button> -->
        </span>
      </el-dialog>
      <!-- 导入弹窗 -->
      <el-dialog
        :title="upload.title"
        :visible.sync="upload.open"
        width="1500px"
        append-to-body
      >
        <div style="margin-top: -20px">
          <el-button type="primary" @click="set_AddNew">导入数据</el-button>
          <el-button type="primary" @click="upload.open = false">退 出</el-button>
          <el-upload
            ref="upload"
            :limit="1"
            accept=".xlsx, .xls"
            style="display: inline-block; margin-left: 10px"
            :action="upload.url + '?updateSupport=' + upload.updateSupport"
            :disabled="upload.isUploading"
            :on-progress="handleFileUploadProgress"
            :on-success="handleFileSuccess"
          >
            <el-button type="primary">文件上传</el-button>
          </el-upload>
        </div>
        <el-table
          :data="uploadData"
          v-loading="uploadTableLoading"
          :row-class-name="uploadDataIndex"
          border
          height="550"
        >
          <el-table-column
            type="index"
            label="序号"
            width="55"
            align="center"
          />
          <el-table-column
            label="驾驶员代码"
            prop="驾驶员代码"
            align="center"
            width="120"
          />
          <el-table-column
            label="驾驶员名称"
            prop="驾驶员名称"
            align="center"
            width="120"
          />
          <el-table-column
            label="联系电话"
            prop="联系电话"
            align="center"
            width="120"
          />
          <el-table-column
            label="驾驶证号"
            prop="驾驶证号"
            align="center"
            width="120"
          />
          <el-table-column label="操作" align="center">
            <template slot-scope="scope">
              <el-button
                size="mini"
                type="text"
                icon="el-icon-delete"
                @click="uploadDataDelete(scope.row)"
                >删除</el-button
              >
            </template>
          </el-table-column>
        </el-table>
        <pagination
          v-show="uploadTotal > 0"
          :total="uploadTotal"
          :page.sync="uploadPage"
          :limit.sync="uploadPageSize"
          :pageSizes="uploadPageSizes"
          @pagination="currentPage"
        />
      </el-dialog>
      <!-- 过滤方案弹窗 -->
      <el-dialog
        title="过滤方案列表"
        :visible.sync="openFilterScheme"
        width="80%"
        append-to-body
      >
        <div style="height: 500px; overflow: auto">
          <el-table
            :data="filterSchemeList"
            border
            style="width: 100%"
            @row-click="selectFilterScheme"
          >
            <el-table-column
              prop="方案名称"
              label="方案名称"
              width="200"
            ></el-table-column>
            <el-table-column
              prop="备注"
              label="备注"
              width="300"
            ></el-table-column>
            <el-table-column prop="创建人" label="创建人" width="120"></el-table-column>
            <el-table-column
              prop="创建日期"
              label="创建日期"
              width="150"
            ></el-table-column>
            <el-table-column label="操作" width="150" align="center">
              <template slot-scope="scope">
                <el-button
                  type="text"
                  size="mini"
                  @click="applyFilterScheme(scope.row)"
                  >应用</el-button
                >
                <el-button
                  type="text"
                  size="mini"
                  @click="deleteFilterScheme(scope.row)"
                  style="color: #f56c6c"
                  >删除</el-button
                >
              </template>
            </el-table-column>
          </el-table>
        </div>
        <span slot="footer" class="dialog-footer">
          <el-button type="primary" @click="confirmFilterScheme">确 定</el-button>
          <el-button @click="openFilterScheme = false">取 消</el-button>
        </span>
      </el-dialog>
    </div>
  </div>
</template>
<script>
import axios from "axios";
import RowSettings from "@/views/component/rowSettings";
import GyDriverEdit from "@/views/system/user/GyDriverEdit.vue";
export default {
  name: "GyDriverListNew",
  components: { RowSettings, GyDriverEdit },
  props: {
    openPage: { type: String },
  },
  data() {
    return {
      HModName: "gy_driver",
      HModuleName: "驾驶员设置",
      showAdvancedSearch: false,
      currentFilterScheme: "",
      currentFilterRemark: "",
      filterSchemeList: [],
      openFilterScheme: false,
      comparatorList: [
        { label: "=", value: "=" },
        { label: ">=", value: ">=" },
        { label: ">", value: ">" },
        { label: "<=", value: "<=" },
        { label: "<", value: "<" },
        { label: "<>", value: "<>" },
        { label: "包含", value: "7" },
        { label: "左包含", value: "8" },
        { label: "右包含", value: "9" },
        { label: "不包含", value: "10" },
      ],
      sWhere: "",
      organizationList: [],
      filterColumnList: [],
      user: "admin",
      Organization: "",
      currentRow: [],
      rowForm: {},
      editShow: false,
      openEdit: false,
      editDialogTitle: "驾驶员编辑",
      tableShow: true,
      openBtnHide: false,
      btnHideShow: false,
      rowHideShow: false,
      openRowHide: false,
      queryParams: {
        HUSEORGID: null,
        HName: null,
        HNumber: null,
        HSyncNumber: null,
        Comparator: "",
        Comparator1: "",
        Comparator2: "",
        ColContent: "",
        ColContent1: "",
        ColContent2: "",
        ColName: "",
        ColName1: "",
        ColName2: "",
      },
      showSearch: true,
      ids: [],
      single: true,
      multiple: true,
      loading: true,
      tyResList: [],
      btList: [],
      btResList: [],
      tableData: [],
      dataList: [],
      titleData: ["HItemID", "HUSEORGID", "HEmpID", "负责人"],
      pageSizes: [50, 100, 500, 5000, 50000],
      page: 1,
      pageSize: 50,
      total: 0,
      upload: {
        open: false,
        title: "导入驾驶员",
        isUploading: false,
        updateSupport: 0,
        url: process.env.VUE_APP_BASE_API + "/Gy_Driver/Gy_Driver_Excel",
      },
      uploadData: [],
      alluploadList: [],
      uploadTableLoading: false,
      uploadPageSizes: [50, 100, 500, 5000, 50000],
      uploadPage: 1,
      uploadPageSize: 50,
      uploadTotal: 0,
      OperationType: null,
      copyType: 0,
      baseURL: process.env.VUE_APP_BASE_API,
    };
  },
  created() {
    this.initData();
  },
  methods: {
    async initData() {
      try {
        const userRes = await axios.get(
          `${this.baseURL}/Web/GetUser?UserName=${
            sessionStorage.getItem("UserName") || "001"
          }&PassWord=123456&HOrgName=100038`
        );
        if (userRes.data.data && userRes.data.data[0]) {
          const userData = userRes.data.data[0];
          this.user = userData.Czymc || "admin";
          this.Organization = userData.HUSEORGID;
          this.queryParams.HUSEORGID = userData.HUSEORGID;
        }
        const orgRes = await axios.get(`${this.baseURL}/Web/GetOrganizations`);
        if (orgRes.data.count == 1) {
          this.organizationList = orgRes.data.data;
        }
        await this.getList();
      } catch (error) {
        this.$modal.msgError("初始化数据失败!");
      }
    },
    toggleAdvancedSearch() {
      this.showAdvancedSearch = !this.showAdvancedSearch;
    },
    async getList() {
      this.tableShow = false;
      this.loading = true;
      console.log("获取列表数据...",this.sWhere );
      try {
        const params = {
          sWhere: this.sWhere || "",
          user: this.user,
          Organization: this.Organization,
          page: this.page,
          size: this.pageSize,
        };
        const res = await axios.get(`${this.baseURL}/Gy_DriverController/list`, {
          params,
        });
        if (res.data.count == 1) {
          this.tyResList = res.data.data;
          this.btResList = res.data.list;
          this.total = res.data.count;
          this.processTableHeader(res.data.list, res.data.data);
        } else {
          this.$modal.msgError(res.data.Message || "获取数据失败");
        }
      } catch (error) {
        this.$modal.msgError("接口请求失败!");
      } finally {
        this.loading = false;
      }
    },
    processTableHeader(headerList, data) {
      const col = [];
      col.push({ type: "checkbox", fixed: "left", field: "checkbox" });
      headerList.forEach((item) => {
        if (this.titleData.includes(item.ColmCols)) {
          col.push({
            field: item.ColmCols,
            title: item.ColmCols,
            align: "center",
            hide: true,
          });
        } else {
          const column = {
            field: item.ColmCols,
            title: item.ColmCols,
            align: "center",
            sort: true,
            width: 200,
          };
          if (item.ColmType === "DateTime") {
            column.templet = true; // 标记为日期类型
          }
          col.push(column);
        }
      });
      this.btList = col;
      this.tableData = data;
      this.tableShow = true;
      this.updateFilterColumns();
      this.DisPlay_HideColumn();
    },
    updateFilterColumns() {
      this.filterColumnList = this.btList.filter(
        (item) => !item.hide && item.field !== "checkbox"
      );
    },
    async DisPlay_HideColumn() {
      try {
        const res = await axios.get(
          `${this.baseURL}/Xt_grdAlignment_WMES/grdAlignmentWMESList`,
          {
            params: {
              HModName: this.HModName,
              user: this.user,
            },
          }
        );
        if (res.data.data.length > 0) {
          const config = res.data.data[0];
          const dataCol = config.HGridString.split(",");
          dataCol.forEach((colStr, index) => {
            if (this.btList[index + 1]) {
              const colParts = colStr.split("|");
              // 隐藏列
              if (colParts[1] == "1") {
                this.btList[index + 1].hide = true;
              }
              // 列宽
              if (colParts[3] > 0) {
                this.btList[index + 1].width = colParts[3];
              }
              // 字体大小
              if (config.HFontSize != 0) {
                this.btList[index + 1].style = `font-size:${config.HFontSize}px;`;
              }
              // 显示列
              if (
                colParts[1] == "0" &&
                !this.titleData.includes(this.btList[index + 1].title)
              ) {
                this.btList[index + 1].hide = false;
              }
              // 对齐方式
              switch (colParts[2]) {
                case "L":
                  this.btList[index + 1].align = "left";
                  break;
                case "M":
                  this.btList[index + 1].align = "center";
                  break;
                case "R":
                  this.btList[index + 1].align = "right";
                  break;
              }
              // 列别名
              if (colParts[4]) {
                this.btList[index + 1].title = colParts[4];
              }
            }
          });
          // 冻结列
          if (config.HFixCols > 0) {
            for (
              let i = 1;
              i <= config.HFixCols && i < this.btList.length;
              i++
            ) {
              this.btList[i].fixed = "left";
            }
          }
          this.tableShow = false;
          this.$nextTick(() => {
            this.tableShow = true;
          });
        }
      } catch (error) {
        console.error("加载列配置失败:", error);
      }
    },
    handleQuery() {
      this.sWhere = "";
      const conditions = [];
      if (this.queryParams.HNumber) {
        conditions.push(`驾驶员代码 like '%${this.queryParams.HNumber}%'`);
      }
      if (this.queryParams.HName) {
        conditions.push(`驾驶员名称 like '%${this.queryParams.HName}%'`);
      }
      // if (this.queryParams.HUSEORGID) {
      //   conditions.push(`HUSEORGID = '${this.queryParams.HUSEORGID}'`);
      // }
      if (this.queryParams.ColName !== "0" && this.queryParams.Comparator !== "0") {
        const condition = this.buildCondition(
          this.queryParams.ColName,
          this.queryParams.Comparator,
          this.queryParams.ColContent
        );
        if (condition) conditions.push(condition);
      }
      if (
        this.queryParams.ColName1 !== "0" &&
        this.queryParams.Comparator1 !== "0"
      ) {
        const condition = this.buildCondition(
          this.queryParams.ColName1,
          this.queryParams.Comparator1,
          this.queryParams.ColContent1
        );
        if (condition) conditions.push(condition);
      }
      if (
        this.queryParams.ColName2 !== "0" &&
        this.queryParams.Comparator2 !== "0"
      ) {
        const condition = this.buildCondition(
          this.queryParams.ColName2,
          this.queryParams.Comparator2,
          this.queryParams.ColContent2
        );
        if (condition) conditions.push(condition);
      }
      if (conditions.length > 0) {
        this.sWhere ="and "+conditions;
      }
      console.log("查询条件:", this.sWhere);
      //this.sWhere += this.addSWhereByOpenType();
      this.page = 1;
      this.getList();
    },
    buildCondition(colName, comparator, content) {
      if (!content) return null;
      switch (comparator) {
        case "7":
          return `${colName} like '%${content}%'`;
        case "8":
          return `${colName} like '%${content}'`;
        case "9":
          return `${colName} like '${content}%'`;
        case "10":
          return `${colName} not like '%${content}%'`;
        default:
          return `${colName} ${comparator} '${content}'`;
      }
    },
    //
    addSWhereByOpenType() {
      // if (this.openPage) {
      //   return " and 禁用标记 = '' and ISNULL(审核人,'') <> ''";
      // }
      // // 直接打开的情况
      // return " and 禁用标记 = ' '";
    },
    resetQuery() {
      this.queryParams = {
        HUSEORGID: this.Organization,
        HName: "",
        HNumber: "",
        HSyncNumber: "",
        Comparator: "0",
        Comparator1: "0",
        Comparator2: "0",
        ColContent: "",
        ColContent1: "",
        ColContent2: "",
        ColName: "0",
        ColName1: "0",
        ColName2: "0",
      };
      this.sWhere = "";
      this.page = 1;
      this.getList();
    },
    async handleSync() {
      if (!this.queryParams.HSyncNumber) {
        this.$modal.msgWarning("请输入要同步的驾驶员代码");
        return;
      }
      try {
        const res = await axios.get(`${this.baseURL}/Gy_Driver/Gy_DriverViewApi`, {
          params: {
            Number: this.queryParams.HSyncNumber,
            Type: "JSY", // 驾驶员类型
            HUseOrgID: this.queryParams.HUSEORGID,
          },
        });
        if (res.data.count == 1) {
          this.$modal.msgSuccess("同步成功");
          this.getList();
        } else {
          this.$modal.msgError(res.data.Message || "同步失败");
        }
      } catch (error) {
        this.$modal.msgError("同步失败");
      }
    },
    // 点击行
    handleRowClick(row) {
      this.$refs.tableData.toggleRowSelection(row);
    },
    // 行样式
    rowStyle({ row }) {
      if (this.ids.includes(row.HItemID)) {
        return { background: "#ecf5ff" };
      }
      return {};
    },
    // 双击行
    handleDblclick(row) {
      this.rowForm = row;
      this.OperationType = 3;
      this.editDialogTitle = "编辑驾驶员";
      this.openEdit = true;
      this.editShow = true;
    },
    handleDriverCodeClick(row) {
      this.rowForm = row;
      this.OperationType = 3;
      this.editDialogTitle = "编辑驾驶员";
      this.openEdit = true;
      this.editShow = true;
    },
    handleSelectionChange(selection) {
      this.ids = selection.map((item) => item.HItemID);
      this.single = selection.length !== 1;
      this.multiple = !selection.length;
      if (!this.single) {
        this.rowForm = selection[0];
      }
    },
    // 新增
    handleAddEdit() {
      this.rowForm = { HItemID: 0 };
      this.OperationType = 1;
      this.editDialogTitle = "新增驾驶员";
      this.openEdit = true;
      this.editShow = true;
    },
    // 复制
    handleCopy() {
      if (this.single) {
        this.$modal.msgWarning("请选择一条数据进行复制");
        return;
      }
      this.OperationType = 2;
      this.editDialogTitle = "复制驾驶员";
      this.openEdit = true;
      this.editShow = true;
    },
    // 编辑
    handleEdit() {
      if (this.single) {
        this.$modal.msgWarning("请选择一条数据进行编辑");
        return;
      }
      this.OperationType = 3;
      this.editDialogTitle = "编辑驾驶员";
      this.openEdit = true;
      this.editShow = true;
    },
    // 关闭编辑弹窗
    closeEditDialog() {
      this.openEdit = false;
      this.editShow = false;
      setTimeout(() => {
        this.getList();
      }, 100);
    },
    // 保存
    async saveDriverData() {
      if (this.$refs.editComponent) {
        await this.$refs.editComponent.handleSave();
        this.closeEditDialog();
      }
    },
    // 关闭编辑页面
    editGyClose(val) {
      this.editShow = false;
      this.openEdit = false;
      this.getList();
    },
    // 删除
    async handleDelete() {
      if (this.single) {
        this.$modal.msgWarning("请选择一条数据进行删除");
        return;
      }
      if (this.rowForm.审核人) {
        this.$modal.msgError("已审核的数据不能删除");
        return;
      }
      try {
        await this.$modal.confirm("确认要删除吗,删除后不能恢复");
        const res = await axios.get(`${this.baseURL}/DeltetGy_Driver`, {
          params: {
            HItemID: this.rowForm.HItemID.toString(),
            user: this.user,
          },
        });
        if (res.data.count == 1) {
          this.$modal.msgSuccess("删除成功");
          this.getList();
        } else {
          this.$modal.msgError(res.data.Message || "删除失败");
        }
      } catch (error) {
        if (error !== "cancel") {
          this.$modal.msgError("删除失败");
        }
      }
    },
    // 审核/反审核
    async handleAudit(isAudit) {
      if (this.single) {
        this.$modal.msgWarning("请选择一条数据");
        return;
      }
      try {
        const action = isAudit ? "反审核" : "审核";
        await this.$modal.confirm(`确认要${action}吗?`);
        const res = await axios.get(`${this.baseURL}/Gy_Driver/AuditGy_Driver`, {
          params: {
            HInterID: this.rowForm.HItemID.toString(),
            IsAudit: isAudit,
            CurUserName: this.user,
          },
        });
        if (res.data.count == 1) {
          this.$modal.msgSuccess(`${action}成功`);
          this.getList();
        } else {
          this.$modal.msgError(res.data.Message || `${action}失败`);
        }
      } catch (error) {
        if (error !== "cancel") {
          this.$modal.msgError("操作失败");
        }
      }
    },
    // 禁用/反禁用
    async handleStop(isStop) {
      if (this.single) {
        this.$modal.msgWarning("请选择一条数据");
        return;
      }
      try {
        const action = isStop ? "反禁用" : "禁用";
        await this.$modal.confirm(`确认要${action}吗?`);
        const res = await axios.get(`${this.baseURL}/Gy_Driver/StopGy_Driver`, {
          params: {
            HInterID: this.rowForm.HItemID.toString(),
            IsStop: isStop,
            CurUserName: this.user,
          },
        });
        if (res.data.count == 1) {
          this.$modal.msgSuccess(`${action}成功`);
          this.getList();
        } else {
          this.$modal.msgError(res.data.Message || `${action}失败`);
        }
      } catch (error) {
        if (error !== "cancel") {
          this.$modal.msgError("操作失败");
        }
      }
    },
    // // 导出
    // handleExport() {
    //   import("@/vendor/Export2Excel").then((excel) => {
    //     const tHeader = this.btList
    //       .filter((item) => !item.hide && item.field !== "checkbox")
    //       .map((item) => item.title);
    //     const filterVal = this.btList
    //       .filter((item) => !item.hide && item.field !== "checkbox")
    //       .map((item) => item.field);
    //     const data = this.formatJson(filterVal, this.tyResList);
    //     excel.export_json_to_excel({
    //       header: tHeader,
    //       data,
    //       filename: `驾驶员设置_${new Date().getTime()}`,
    //       autoWidth: true,
    //       bookType: "xlsx",
    //     });
    //   });
    // },
    formatJson(filterVal, jsonData) {
      return jsonData.map((v) =>
        filterVal.map((j) => {
          if (j.includes("日期") || j.includes("Date")) {
            return this.parseTime(v[j], "{y}-{m}-{d}");
          }
          return v[j];
        })
      );
    },
    parseTime(time, cFormat) {
      if (arguments.length === 0) {
        return null;
      }
      const format = cFormat || "{y}-{m}-{d} {h}:{i}:{s}";
      let date;
      if (typeof time === "object") {
        date = time;
      } else {
        if (typeof time === "string" && /^[0-9]+$/.test(time)) {
          time = parseInt(time);
        }
        if (typeof time === "number" && time.toString().length === 10) {
          time = time * 1000;
        }
        date = new Date(time);
      }
      const formatObj = {
        y: date.getFullYear(),
        m: date.getMonth() + 1,
        d: date.getDate(),
        h: date.getHours(),
        i: date.getMinutes(),
        s: date.getSeconds(),
        a: date.getDay(),
      };
      const time_str = format.replace(/{([ymdhisa])+}/g, (result, key) => {
        const value = formatObj[key];
        if (key === "a") {
          return ["日", "一", "二", "三", "四", "五", "六"][value];
        }
        return value.toString().padStart(2, "0");
      });
      return time_str;
    },
    // 导入
    handleImport() {
      this.uploadData = [];
      this.upload.title = "导入驾驶员";
      this.upload.open = true;
    },
    // 文件上传中
    handleFileUploadProgress(event, file, fileList) {
      this.upload.isUploading = true;
      this.uploadTableLoading = true;
    },
    // 文件上传成功
    handleFileSuccess(response, file, fileList) {
      this.upload.isUploading = false;
      this.$refs.upload.clearFiles();
      if (response.code == 1) {
        this.alluploadList = response.data;
        this.uploadData = this.getPage(this.uploadPage, this.alluploadList);
        this.uploadTotal = this.alluploadList.length;
        this.uploadTableLoading = false;
      } else {
        this.$alert(
          `<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>${response.Message}</div>`,
          "导入结果",
          { dangerouslyUseHTMLString: true }
        );
      }
    },
    // 执行导入
    async set_AddNew() {
      const validData = this.uploadData.filter((item) => item);
      if (validData.length === 0) {
        this.$modal.msgWarning("没有可导入的数据");
        return;
      }
      try {
        const sSubStr = JSON.stringify(validData);
        const sMainSub = sSubStr + "&和" + this.user;
        const res = await axios.post(`${this.baseURL}/Gy_Driver/Gy_Process_Excel`, {
          sMainSub: sMainSub,
        });
        this.$alert(
          `<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>${res.data.Message}</div>`,
          "导入结果",
          { dangerouslyUseHTMLString: true }
        );
        this.upload.open = false;
        this.getList();
      } catch (error) {
        this.$modal.msgError("导入失败");
      }
    },
    // 获取分页数据
    getPage(page, list) {
      const sindex = (page - 1) * this.uploadPageSize;
      const eindex = page * this.uploadPageSize;
      return list.slice(sindex, eindex);
    },
    // 导入分页
    currentPage(val) {
      this.uploadPage = val.page;
      this.uploadData = this.getPage(this.uploadPage, this.alluploadList);
    },
    // 导入数据序号
    uploadDataIndex({ row, rowIndex }) {
      row.index = rowIndex + 1 + (this.uploadPage - 1) * this.uploadPageSize;
    },
    // 删除导入数据
    uploadDataDelete(row) {
      this.$modal.confirm("确认要删除吗").then(() => {
        const deleteIndex = row.index - 1 - (this.uploadPage - 1) * this.uploadPageSize;
        this.uploadData.splice(deleteIndex, 1);
        this.alluploadList.splice(row.index - 1, 1);
        this.uploadTotal = this.alluploadList.length;
        // 重新计算当前页数据
        this.uploadData = this.getPage(this.uploadPage, this.alluploadList);
      });
    },
    // 隐藏列设置
    handleRowHide() {
      this.rowHideShow = true;
      this.openRowHide = true;
    },
    // 关闭列设置
    rowSetClose(val) {
      this.rowHideShow = false;
      this.openRowHide = val;
      this.getList();
    },
    // 按钮设置
    handleBtnHide() {
      this.$modal.msgInfo("按钮设置功能待开发");
    },
    // 保存方案
    handleSaveScheme() {
      this.$modal.msgInfo("保存方案功能待开发");
    },
    // 读取方案
    handleReadScheme() {
      this.loadFilterSchemes();
      this.openFilterScheme = true;
    },
    // 加载过滤方案
    async loadFilterSchemes() {
      try {
        const res = await axios.get(`${this.baseURL}/Xt_FastICScheme/list`, {
          params: {
            HModuleName: this.HModuleName,
            user: this.user,
          },
        });
        if (res.data.count == 1) {
          this.filterSchemeList = res.data.data;
        }
      } catch (error) {
        console.error("加载过滤方案失败:", error);
      }
    },
    // 选择过滤方案
    selectFilterScheme(row) {
      this.selectedFilterScheme = row;
    },
    // 应用过滤方案
    applyFilterScheme(row) {
      this.currentFilterScheme = row.方案名称;
      this.currentFilterRemark = row.备注;
      // 这里应该根据方案内容设置查询条件
      // 由于方案数据结构复杂,这里只做简单演示
      this.$modal.msgSuccess(`已应用方案:${row.方案名称}`);
      this.openFilterScheme = false;
    },
    // 删除过滤方案
    async deleteFilterScheme(row) {
      try {
        await this.$modal.confirm(`确认要删除方案"${row.方案名称}"吗?`);
        const res = await axios.post(`${this.baseURL}/Xt_FastICScheme/delete`, {
          HInterID: row.hmainid,
        });
        if (res.data.count == 1) {
          this.$modal.msgSuccess("删除成功");
          this.loadFilterSchemes();
        } else {
          this.$modal.msgError("删除失败");
        }
      } catch (error) {
        if (error !== "cancel") {
          this.$modal.msgError("删除失败");
        }
      }
    },
    // 确认过滤方案
    confirmFilterScheme() {
      if (this.selectedFilterScheme) {
        this.applyFilterScheme(this.selectedFilterScheme);
      } else {
        this.$modal.msgWarning("请选择一个过滤方案");
      }
    },
    // 清除过滤方案
    clearFilterScheme() {
      this.currentFilterScheme = "";
      this.currentFilterRemark = "";
      this.resetQuery();
      this.$modal.msgSuccess("已清除过滤方案");
    },
  },
};
</script>
<style scoped>
.search-card {
  border-radius: 4px;
  border: 1px solid #ebeef5;
  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
}
.search-header {
  border-bottom: 1px solid #ebeef5;
  padding-bottom: 8px;
  margin-bottom: 8px;
}
.mb8 {
  margin-bottom: 15px;
}
.tableBox {
  margin-top: 10px;
  border: 1px solid #ebeef5;
  border-radius: 4px;
  padding: 15px;
  background-color: #fff;
}
.driver-edit-dialog ::v-deep .el-dialog__body {
  padding: 20px;
}
/* 响应式调整 */
@media (max-width: 1200px) {
  .el-col {
    margin-bottom: 10px;
  }
}
/* 表格行样式优化 */
::v-deep .el-table--striped .el-table__body tr.el-table__row--striped td {
  background-color: #fafafa;
}
::v-deep .el-table th {
  background-color: #f5f7fa;
  color: #909399;
  font-weight: bold;
}
/* 按钮组样式 */
::v-deep .el-button-group .el-button {
  margin-right: 0;
}
/* 折叠过渡效果 */
.el-collapse-transition-enter-active,
.el-collapse-transition-leave-active {
  transition: all 0.3s ease;
}
.el-collapse-transition-enter,
.el-collapse-transition-leave-to {
  opacity: 0;
  transform: translateY(-10px);
}
</style>
src/views/system/user/GyDriverEdit.vue
New file
@@ -0,0 +1,734 @@
<template>
  <div class="gy-driver-edit">
    <div class="operation-buttons">
      <el-button
        type="primary"
        icon="el-icon-check"
        @click="handleSave"
        :disabled="saveDisabled"
        id="set_SaveBill"
        >保存</el-button
      >
      <el-button
        type="primary"
        icon="el-icon-check"
        @click="handleAudit"
        :disabled="!canAudit"
        id="set_CheckBill"
        >审核</el-button
      >
      <el-button
        type="primary"
        icon="el-icon-close"
        @click="handleCancel"
        id="Cancel"
        >退出</el-button
      >
    </div>
    <el-form
      ref="formRef"
      :model="formData"
      :rules="formRules"
      label-width="120px"
      class="edit-form"
    >
      <el-tabs v-model="activeTab" type="card">
        <el-tab-pane label="基本信息" name="basic">
          <div class="form-row">
            <el-form-item label="驾驶员代码" prop="HNumber">
              <el-input
                v-model="formData.HNumber"
                placeholder="请输入驾驶员代码"
                clearable
                :disabled="isViewMode"
              />
              <el-input
                type="hidden"
                v-model="formData.HCREATEORGID"
                style="display: none"
              />
            </el-form-item>
            <el-form-item label="驾驶员名称" prop="HName">
              <el-input
                v-model="formData.HName"
                placeholder="请输入驾驶员名称"
                clearable
                :disabled="isViewMode"
              />
            </el-form-item>
            <el-form-item label="助记码">
              <el-input
                v-model="formData.HHelpCode"
                placeholder="请输入助记码"
                clearable
                :disabled="isViewMode"
              />
            </el-form-item>
            <el-form-item label="所属公司" prop="HDeptID">
              <div class="dept-select">
                <el-input
                  v-model="formData.HDeptName"
                  placeholder="请选择所属公司"
                  readonly
                  clearable
                  :disabled="isViewMode"
                />
                <el-input
                  type="hidden"
                  v-model="formData.HDeptID"
                  style="display: none"
                />
                <el-button
                  type="primary"
                  icon="el-icon-search"
                  @click="openDeptDialog"
                  :disabled="isViewMode"
                  style="margin-left: 10px"
                >
                </el-button>
              </div>
            </el-form-item>
          </div>
          <div class="form-row">
            <el-form-item label="禁用标记">
              <el-checkbox
                v-model="formData.checkboxHStopflag"
                :true-label="1"
                :false-label="0"
                :disabled="!canEditStopFlag"
                @change="handleStopFlagChange"
              >
                是否禁用
              </el-checkbox>
              <el-input
                type="hidden"
                v-model="formData.HStopflag"
                style="display: none"
              />
            </el-form-item>
          </div>
          <div class="form-row">
            <el-form-item label="备注">
              <el-input
                v-model="formData.HRemark"
                placeholder="请输入备注"
                type="textarea"
                :rows="3"
                style="width: 75%"
                :disabled="isViewMode"
              />
            </el-form-item>
          </div>
          <div class="form-row">
            <el-form-item label="组织" prop="Organization">
              <el-select
                v-model="formData.Organization"
                placeholder="请选择组织"
                style="width: 717px"
                :disabled="isViewMode || orgDisabled"
              >
                <el-option
                  v-for="org in organizationList"
                  :key="org.ID"
                  :label="org.Name"
                  :value="org.ID"
                  style="color: blue"
                />
              </el-select>
            </el-form-item>
          </div>
        </el-tab-pane>
        <el-tab-pane label="其他信息" name="other">
          <div class="form-row">
            <el-form-item label="身份证号码">
              <el-input
                v-model="formData.identityID"
                placeholder="请输入身份证号码"
                clearable
                :disabled="isViewMode"
                style="width: 150px; background-color: #f5f7fa"
              />
            </el-form-item>
            <el-form-item label="手机号码">
              <el-input
                v-model="formData.Telephone"
                placeholder="请输入手机号码"
                clearable
                :disabled="isViewMode"
              />
            </el-form-item>
            <el-form-item label="驾照类型">
              <el-select
                v-model="formData.LicenseType"
                placeholder="请选择驾照类型"
                :disabled="isViewMode"
              >
                <el-option label="A1" value="A1" />
                <el-option label="A2" value="A2" />
                <el-option label="A3" value="A3" />
                <el-option label="B1" value="B1" />
                <el-option label="B2" value="B2" />
              </el-select>
            </el-form-item>
            <el-form-item label="司机类型">
              <el-select
                v-model="formData.DriverType"
                placeholder="请选择司机类型"
                :disabled="isViewMode"
              >
                <el-option label="固定" value="固定" />
                <el-option label="临时" value="临时" />
              </el-select>
            </el-form-item>
          </div>
        </el-tab-pane>
        <el-tab-pane label="制单信息" name="record">
          <div class="form-row">
            <el-form-item label="制单人">
              <el-input
                v-model="formData.HMakeEmp"
                readonly
                style="width: 200px; background-color: #f5f7fa"
              />
            </el-form-item>
            <el-form-item label="审核人">
              <el-input
                v-model="formData.HCheckEmp"
                readonly
                style="width: 200px; background-color: #f5f7fa"
              />
            </el-form-item>
            <el-form-item label="禁用人">
              <el-input
                v-model="formData.HStopEmp"
                readonly
                style="width: 200px; background-color: #f5f7fa"
              />
            </el-form-item>
          </div>
          <div class="form-row">
            <el-form-item label="制单日期">
              <el-input
                v-model="formData.HMakeDate"
                readonly
                style="width: 200px; background-color: #f5f7fa"
              />
            </el-form-item>
            <el-form-item label="审核日期">
              <el-input
                v-model="formData.HCheckDate"
                readonly
                style="width: 200px; background-color: #f5f7fa"
              />
            </el-form-item>
            <el-form-item label="禁用日期">
              <el-input
                v-model="formData.HStopDate"
                readonly
                style="width: 200px; background-color: #f5f7fa"
              />
            </el-form-item>
          </div>
        </el-tab-pane>
      </el-tabs>
      <el-input type="hidden" v-model="formData.HItemID" />
    </el-form>
    <!-- 部门选择弹窗 -->
    <el-dialog
      title="dialogTitle"
      :visible.sync="openData"
      width="90%"
      top="5vh"
      append-to-body
    >
    <Dept @deptEmitDb="dbEmitData" @deptEmit="emitData" v-if="deptShow" />
      <span slot="footer" class="dialog-footer">
        <el-button type="primary" @click="deptClickSub">确 定</el-button>
        <el-button @click="closeDeptDialog">取 消</el-button>
      </span>
    </el-dialog>
  </div>
</template>
<script>
import axios from "axios";
import Dept from "@/views/component/dept";
export default {
  name: "GyDriverEdit",
  components: { Dept},
  props: {
    OperationType: {
      type: Number,
      default: 1, // 1:新增, 2:复制, 3:编辑, 4:浏览
    },
    linterid: {
      type: String,
      type: Number,
      default: "0",
    },
    HSouceBillType: {
      type: String,
      default: "",
    },
  },
  data() {
    return {
      baseURL: process.env.VUE_APP_BASE_API,
      activeTab: "basic",
      // 部门选择弹窗
      deptDialogVisible: false,
      deptDialogUrl: "",
      dialogTitle: "",
      deptShow: false,
      openData: false,
      deptform: {}, //弹窗选中数据
      // 组织列表
      organizationList: [],
      // 表单数据
      formData: {
        HItemID: "0",
        HNumber: "",
        HName: "",
        HHelpCode: "",
        HDeptName: "",
        HDeptID: "0",
        HDepNumber: "",
        identityID: "",
        Telephone: "",
        LicenseType: "A1",
        DriverType: "固定",
        HStopflag: "0",
        checkboxHStopflag: 0,
        HRemark: "",
        HUSEORGID: "",
        HCREATEORGID: "0",
        HMakeEmp: "",
        HMakeDate: "",
        HCheckEmp: "",
        HCheckDate: "",
        HStopEmp: "",
        HStopDate: "",
        Organization: "",
      },
      // 表单验证规则
      formRules: {
        HNumber: [
          { required: true, message: "请输入驾驶员代码", trigger: "blur" },
        ],
        HName: [
          { required: true, message: "请输入驾驶员名称", trigger: "blur" },
        ],
        HUSEORGID: [
          { required: true, message: "请选择组织", trigger: "change" },
        ],
        HDeptID: [
          { required: true, message: "请选择所属公司", trigger: "change" },
        ],
      },
      saveDisabled: false,
      orgDisabled: false,
      isViewMode: false,
      canEditStopFlag: true,
    };
  },
  computed: {
    canAudit() {
      return (
        this.OperationType === 3 &&
        this.formData.HItemID !== "0" &&
        !this.formData.HCheckEmp
      );
    },
    // 格式化当前日期
    currentDate() {
      const now = new Date();
      const year = now.getFullYear();
      const month = String(now.getMonth() + 1).padStart(2, "0");
      const day = String(now.getDate()).padStart(2, "0");
      return `${year}-${month}-${day}`;
    },
  },
  created() {
    this.initData();
  },
  methods: {
    async initData() {
      try {
        await this.getOrganizationList();
        await this.initByOperationType();
      } catch (error) {
        this.$modal.msgError("初始化失败");
        console.error("初始化错误:", error);
      }
    },
    emitData(row) {
        this.deptform = row; // 存储选中的部门数据
    },
    dbEmitData(deptRow){
        this.formData.HDeptName = deptRow.部门名称;
        this.formData.HDeptID = deptRow.HItemID;
        this.openData = false;
    },
    deptClickSub() {
      if (this.deptform && this.deptform.HItemID) {
      this.formData.HDeptName = this.deptform.部门名称;
      this.formData.HDeptID = this.deptform.HItemID;
      this.openData = false;
      this.deptShow = false;
    } else {
      this.$modal.msgWarning("请先选择一个部门");
    }
    },
    deptDialogVisible() {
      this.deptform = {};
      this.openData = false;
    },
    // 获取组织列表
    async getOrganizationList() {
      try {
        const res = await axios.get(`${this.baseURL}/Web/GetOrganizations`);
        if (res.data.count === 1) {
          this.organizationList = res.data.data;
          const orgId = sessionStorage.getItem("Organization");
          this.formData.HUSEORGID = sessionStorage.getItem("OrganizationID") || "";
          this.formData.Organization = orgId;
          this.formData.HCREATEORGID = sessionStorage.getItem("OrganizationID")|| "0";
        }
      } catch (error) {
        console.error("获取组织列表失败:", error);
      }
    },
    async initByOperationType() {
      const { OperationType, linterid } = this;
      this.formData.HMakeEmp = sessionStorage.getItem("HUserName") || "";
      this.formData.HMakeDate = this.currentDate;
      switch (OperationType) {
        case 1: // 新增
          this.orgDisabled = true;
          this.formData.HItemID = "0";
          break;
        case 2: // 复制
          await this.loadDriverData(linterid);
          this.formData.HItemID = "0";
          this.formData.HNumber = "";
          this.formData.HName = "";
          this.formData.HMakeEmp = sessionStorage.getItem("HUserName") || "";
          this.formData.HMakeDate = this.currentDate;
          this.formData.HCheckEmp = "";
          this.formData.HCheckDate = "";
          this.formData.HStopEmp = "";
          this.formData.HStopDate = "";
          break;
        case 3: // 编辑
          this.orgDisabled = true;
          this.formData.HItemID = linterid;
          await this.loadDriverData(linterid);
          break;
        case 4: // 浏览
          this.isViewMode = true;
          this.saveDisabled = true;
          this.canEditStopFlag = false;
          this.formData.HItemID = linterid;
          await this.loadDriverData(linterid);
          break;
        default:
          this.$modal.msgError("未知操作类型");
          break;
      }
    },
    async loadDriverData(linterid) {
      try {
        const res = await axios.get(`${this.baseURL}/Gy_Driver/cx`, {
          params: { HInterID: linterid },
        });
        console.log("驾驶员数据加载响应:", linterid,this.baseURL);
        console.log("加载驾驶员数据:", res.data.data);
        if (res.data.data[0]) {
          const data = res.data.data[0];
          console.log("加载驾驶员数据:", data);
          this.mapDataToForm(data);
        } else {
          this.$modal.msgError(res.data.msg || "加载数据失败");
        }
      } catch (error) {
        console.error("加载驾驶员数据失败:", error);
        this.$modal.msgError("加载数据失败");
      }
    },
    mapDataToForm(data) {
      const mapping = {
        HNumber: "驾驶员代码",
        HName: "驾驶员名称",
        HHelpCode: "短代码",
        HDeptName: "所属公司名称",
        HDepNumber: "所属公司代码",
        HDeptID: "所属公司ID",
        identityID: "身份证号码",
        Telephone: "手机号码",
        HStopflag: "禁用标记",
        HRemark: "备注",
        HUSEORGID: "HUSEORGID",
        LicenseType: "驾照类型",
        DriverType: "司机类型",
        HMakeEmp: "创建人",
        HMakeDate: "创建日期",
        HCheckEmp: "审核人",
        HCheckDate: "审核日期",
        HStopEmp: "禁用人",
        HStopDate: "禁用日期",
      };
      Object.entries(mapping).forEach(([formKey, dataKey]) => {
        if (data[dataKey] !== undefined) {
          if (dataKey.includes("日期")) {
            this.formData[formKey] = this.formatDate(data[dataKey]);
          } else {
            this.formData[formKey] = data[dataKey];
          }
        }
      });
      if (data.禁用标记) {
        this.formData.checkboxHStopflag = 1;
        this.formData.HStopflag = "1";
      } else {
        this.formData.checkboxHStopflag = 0;
        this.formData.HStopflag = "0";
      }
    },
    formatDate(dateStr) {
      if (!dateStr) return "";
      try {
        const date = new Date(dateStr);
        const year = date.getFullYear();
        const month = String(date.getMonth() + 1).padStart(2, "0");
        const day = String(date.getDate()).padStart(2, "0");
        return `${year}-${month}-${day}`;
      } catch (error) {
        return dateStr;
      }
    },
    async handleSave() {
      try {
        await this.$refs.formRef.validate();
        if (!this.formData.HNumber) {
          this.$modal.msgWarning("请输入驾驶员代码!");
          return;
        }
        if (!this.formData.HName) {
          this.$modal.msgWarning("请输入驾驶员名称!");
          return;
        }
        const saveData = {
          ...this.formData,
          HItemID: this.formData.HItemID,
          HStopflag: this.formData.HStopflag,
        };
        console.log("保存数据:", saveData);
        const sMainStr = JSON.stringify(saveData);
        const res = await axios.post(`${this.baseURL}/Gy_Driver/AddBill1`, {
          oMain: `${sMainStr};${sessionStorage.getItem("HUserName")};${
            sessionStorage.getItem("OrganizationID") || 100038
          }`,
        });
        if (res.data.count === 1) {
          this.$modal.msgSuccess("保存成功");
          this.saveDisabled = true;
          if (this.OperationType === 1 || this.OperationType === 2) {
            this.isViewMode = true;
          }
        } else {
          this.$modal.msgError(res.data.Message || "保存失败");
        }
      } catch (error) {
        if (error.name !== "Error") {
          this.$modal.msgError("保存失败");
          console.error("保存错误:", error);
        }
      }
    },
    async handleAudit() {
      try {
        await this.$modal.confirm("确认要审核吗?");
        const res = await axios.get(`${this.baseURL}/Gy_Driver/AuditGy_Driver`, {
          params: {
            HInterID: this.formData.HItemID,
            IsAudit: 0,
            CurUserName: sessionStorage.getItem("HUserName") || "",
          },
        });
        if (res.data.count === 1) {
          this.$modal.msgSuccess("审核成功");
          if (this.formData.HItemID !== "0") {
            await this.loadDriverData(this.formData.HItemID);
          }
        } else {
          this.$modal.msgError(res.data.Message || "审核失败");
        }
      } catch (error) {
        if (error !== "cancel") {
          this.$modal.msgError("审核失败");
        }
      }
    },
    handleCancel() {
      this.$emit("editCloseGy", false);
    },
    handleStopFlagChange(value) {
      this.formData.HStopflag = value ? "1" : "0";
    },
    openDeptDialog() {
        this.deptShow = false;
       this.dialogTitle = "部门列表";
        this.deptShow = true;
        this.openData = true;
    },
    clearDept() {
      this.formData.HDeptName = "";
      this.formData.HDeptID = "0";
      this.formData.HDepNumber = "";
    },
    handleMessage(event) {
      if (event.data && event.data.type === "deptSelected") {
        const dept = event.data.data;
        if (dept) {
          this.formData.HDeptName = dept.部门名称;
          this.formData.HDeptID = dept.HItemID;
          this.formData.HDepNumber = dept.部门代码;
          this.deptDialogVisible = false;
        }
      }
    },
  },
};
</script>
<style scoped>
.gy-driver-edit {
  padding: 15px;
  height: 100%;
  box-sizing: border-box;
}
.operation-buttons {
  margin-bottom: 20px;
}
.operation-buttons .el-button {
  margin-right: 10px;
}
.edit-form {
  height: calc(100% - 60px);
  overflow-y: auto;
}
.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 15px;
}
.form-row .el-form-item {
  flex: 1 1 300px;
  margin-right: 20px;
  margin-bottom: 0;
  min-width: 300px;
}
.form-row .el-form-item:last-child {
  margin-right: 0;
}
.dept-select {
  display: flex;
  align-items: center;
}
.dept-select .el-input {
  flex: 1;
}
/* 调整标签页样式 */
::v-deep .el-tabs__header {
  margin-bottom: 20px;
}
::v-deep .el-tabs__content {
  padding: 0 20px;
}
/* 响应式调整 */
@media (max-width: 1200px) {
  .form-row .el-form-item {
    flex: 1 1 100%;
    margin-right: 0;
  }
}
/* 隐藏字段样式 */
input[type="hidden"] {
  display: none;
}
</style>
src/views/system/user/Xt_UserGroupEdit.vue
@@ -6,7 +6,7 @@
      <!-- <el-button @click="cancel">取 消</el-button> -->
    </div>
    <div style="margin: 10px; font-size: 28px; font-weight: bold; text-align: center;">新增/编辑用户信息</div>
    <el-form ref="form" :model="form" :rules="rules" label-width="128px">
    <el-form ref="form" :model="form"  label-width="128px">
      <el-tabs v-model="activeName" type="card">
        <el-tab-pane label="基本信息" name="first">
          <el-row>
@@ -74,7 +74,7 @@
  components: {},
  props: {
    OperationType: { type: Number, },
    linterid: {},
    linterid: {type: Number},
  },
  data() {
    return {
@@ -97,20 +97,25 @@
    };
  },
  created() {
    this.getdata()
  },
  methods: {
    //#region 页面初始化
    getdata() {
      this.formShow = false
      this.formLoading = true
      this.getUserGroup()
      if ((this.OperationType == 1 && this.copyType != 1) || (!this.OperationType && !this.copyType)) {
        this.handleAdd()
      } else if (this.OperationType == 3 || this.copyType == 1) {
        this.$nextTick(() => {
          this.handleUpdate()
        })
      try {
        this.formShow = false
        this.formLoading = true
        this.getUserGroup()
        if ((this.OperationType == 1 && this.copyType != 1) || (!this.OperationType && !this.copyType)) {
          this.handleAdd()
        } else if (this.OperationType == 3 || this.copyType == 1) {
          this.$nextTick(() => {
            this.handleUpdate()
          })
        }
      } catch (err) {
        console.error('Error ', err)
      }
    },
@@ -179,12 +184,20 @@
    handleUpdate() {
      this.reset()
      let rowHmainid = this.linterid
      axios.get(this.baseURL + "/Xt_User/EditUser", {
        params: { 'HID': rowHmainid }
      let sWhere = " and HGroupID=" + rowHmainid ;
      console.log("编辑用户ID",rowHmainid)
      ///Xt_User/EditUser
      axios.get(this.baseURL + "Xt_UserGroup/list", {
        params: { 'sWhere': sWhere }
      }).then(response => {
        if (response.data.code == 1) {
          var result = response.data
          var data = result.data.h_v_IF_UserList_Edit[0]
          // var data = result.data.h_v_IF_UserList_Edit[0]
          var data = result.data[0]
          console.log("编辑用户信息",data)
          this.form.HLev = data.级别
          this.form.HGroupName = data.角色
          this.form.HUSEORGID = sessionStorage["Organization"]
          this.form.Czybm = data.用户编码
          this.form.Czymc = data.用户名称
          this.form.Czmm = data.密码
@@ -216,7 +229,7 @@
          this.form.HCusID = data.HCusID
          this.form.HCusName = data.客户
          this.form.HGroupID = data.HGroupID
          this.form.HGroupName = data.班组
          // this.form.HGroupName = data.班组
          this.form.HSourceID = data.HSourceID
          this.form.HSourceName = data.生产资源
          this.form.HCheckEmpID = data.HCheckEmpID
@@ -238,16 +251,22 @@
    //#endregion
    
    //#region 获取子表数据
    getUserGroup() {
    async getUserGroup() {
      //角色列表
      axios.get(this.baseURL + '/Xt_UserGroup/list', {
      axios.get(this.baseURL + '/Xt_User/list', {
        params: {
          sWhere: '',
          user: sessionStorage["HUserName"],
        },
      }).then(response => {
        let data1 = response.data
        if (data1.code == 1) {
          console.log(data1)
          this.editData = data1.data
          this.form.Czybm = data1.data.用户编码
          console.log("zhiwei",this.editData)
          console.log("用户",this.form.Czybm)
          //this.get_DisplayUserGroupInfoList()
        }
      }).catch(error => {
        this.$modal.msgError("接口请求失败!");
@@ -256,14 +275,15 @@
    //#endregion
    
    get_DisplayUserGroupInfoList() {
      var sWhere = "and UserId='" + this.linterid + "'";
    async get_DisplayUserGroupInfoList() {
      var sWhere = "and GroupId='" + this.linterid + "'";
      axios.get(this.baseURL + '/Xt_UserGroup/UserGroupInfoList', {
        params: {
          sWhere: sWhere,
        },
      }).then(response => {
        let data1 = response.data
        console.log(data1)
        if (data1.count == 1) {
          if (data1.data.length > 0)
            if (this.editData.length > 0) {
src/views/system/user/Xt_UserGroupList.vue
@@ -148,11 +148,11 @@
      </el-dialog>
      <!-- 编辑 -->
      <el-dialog title="编辑" :visible.sync="openEdit" width="1480px" append-to-body class="xsckdBox" @close="close">
        <edit :OperationType=OperationType :linterid="this.rowForm.hmainid" @editClose="editClose" v-if="editShow" />
        <edit :OperationType="OperationType" :linterid="this.rowForm.HGroupID" @editClose="editClose" v-if="editShow" />
      </el-dialog>
      <!-- 权限 -->
      <el-dialog title="角色权限" :visible.sync="openQuery" width="1480px" append-to-body class="xsckdBox">
        <Query HSouceBillType="js" @editQueryClose="editQueryClose" :linterid=this.rowForm.HGroupID v-if="queryShow" />
        <Query HSouceBillType="js" @editQueryClose="editQueryClose" :linterid="this.rowForm.HGroupID" v-if="queryShow" />
      </el-dialog>
    </div>
  </div>
@@ -282,7 +282,7 @@
    //#region 选中行高亮样式
    rowStyle({ row, rowIndex }) {
      if (this.ids.includes(row.hmainid)) {
        return { "background": "#ecf5ff" }
        return {  }
      }
    },
    //#endregion
@@ -290,7 +290,7 @@
    //#region 双击行
    handleDblclick(row, column, cell, event) {
      this.OperationType = 3
      this.handleEdit()
      this.handleEdit(row)
    },
    //#endregion
@@ -519,7 +519,9 @@
    //#region 新增
    handleAddEdit() {
      this.rowForm.hmainid = 0
      this.OperationType = 1
      this.rowForm.HGroupID = 0
      console.log(' OperationType=', this.OperationType, 'rowForm.HGroupID=', this.rowForm.HGroupID)
      this.editShow = true
      this.openEdit = true
    },
@@ -528,6 +530,7 @@
    //#region 编辑
    handleEdit(row) {
      this.rowForm = row
      console.log('OperationType=', this.OperationType, 'rowForm=', this.rowForm)
      this.editShow = true
      this.openEdit = true
    },
src/views/system/user/xtUserList.vue
@@ -528,7 +528,7 @@
    },
    //选中行高亮样式
    rowStyle({ row, rowIndex }) {
      if (this.ids.includes(row.HEmpID)) {
      if (this.ids.includes(row.用户编码)) {
        return { "background": "#ecf5ff" }
      }
    },
src/views/system/user/xtUserListEdit.vue
@@ -330,12 +330,18 @@
        Czybm: [
          { required: true, message: "编码不能为空!", trigger: "blur" }
        ],
        Czmm: [
        Czymc: [
          { required: true, message: "用户名不能为空!", trigger: "blur" }
        ],
        Czmm: [
          { required: true, message: "密码不能为空!", trigger: "blur" }
        ],
        Czyyz: [
          { required: true, message: "确认密码不能为空!", trigger: "blur" },
          { required: true, validator: equalToPassword, trigger: "blur" }
        ],
        HDept: [
          { required: true, message: "对应部门不能为空!", trigger: "blur" }
        ],
        HWHName: [
          { validator: equalToHWHName, trigger: "blur" }
@@ -679,6 +685,8 @@
              this.formShow = false
              this.$emit('editClose', false)
              this.$modal.msgSuccess(response.data.Message);
            } else {
              this.$modal.msgError(response.data.Message)
            }
          }).catch(error => {
            this.$modal.msgError("接口请求失败!");
src/views/warehouse/barcodeMaster/Gy_BarCodeBill.vue
@@ -9,7 +9,7 @@
            <el-button type="primary" @click="ToolBatch">批次</el-button>
            <el-button type="primary" @click="close">退 出</el-button>
        </div>
        <div style="margin: 10px; font-size: 28px; font-weight: bold; text-align: center;">器具档案编辑</div>
        <div style="margin: 10px; font-size: 28px; font-weight: bold; text-align: center;">条码生成</div>
        <el-form ref="form" :model="form" :rules="rules" label-width="80px">
            <el-row>
                <el-col :span="6">
@@ -23,7 +23,7 @@
                </el-col>
                <el-col :span="6">
                    <el-form-item label="工厂代码" prop="HWorksNumber">
                        <el-select v-model="form.HWorksNumber" placeholder="请选择组织" style="width: 100%">
                        <el-select v-model="form.HWorksNumber" placeholder="请选择工厂" style="width: 100%">
                            <el-option v-for="(item, index) in HWorksNumberList" :key="index" :label="item"
                                :value="item">
                            </el-option>
src/views/warehouse/shipment/Kf_StockOutRequestBill.vue
@@ -693,6 +693,8 @@
                    this.form.HLinkPhone = data.联系电话
                    this.form.HInnerBillNo = data.辅助字段
                    this.form.HRemark = data.表头备注
                    this.form.HWHName = data['仓库']
                    this.form.HWHID = data['HWHID']
                    for (var i = 0; i < result.data.length; i++) {
                        this.editData.push(
                            {
@@ -712,7 +714,10 @@
                                "HlineTotalBB": (result.data[i].金额 + result.data[i].税额) * result.data[i].汇率, "HTaxPrice": result.data[i].含税单价,
                                "HDiscountRate": result.data[i].折扣率,
                                "HRelTaxPrice": data.实际含税单价,
                                "HDate": moment(result.data[i].交货日期).format('YYYY-MM-DD')
                                "仓库":  data.仓库,
                                "HDate": moment(result.data[i].交货日期).format('YYYY-MM-DD'),
                                "HQtyMust": data.实收数量,
                                "HQty": data.应收数量
                            }
                        );
                    }
src/views/warehouse/shipment/Kf_StockOutRequestBillList.vue
@@ -365,6 +365,7 @@
            this.eTime = yyyyE + "-" + mmE + "-" + ddE;
        },
        getList() {
            this.sWhere = ''
            this.pageSize = 50;
            this.tableShow = false;
            this.loading = true;
src/views/warehouse/transfer/Kf_MoveStockRequestBillEdit.vue
@@ -495,10 +495,13 @@
          this.warehouseShow = false
          this.openData = false
        } else if (num == 3){
            console.log(deptRow)
            this.editData[this.zbIndex].HMaterID = deptRow.HItemID
            this.editData[this.zbIndex].物料代码 = deptRow.物料代码
            this.editData[this.zbIndex].物料名称 = deptRow.物料名称
            this.editData[this.zbIndex].规格型号 = deptRow.规格型号
            this.editData[this.zbIndex].计量单位 = deptRow.计量单位名称
            this.editData[this.zbIndex].HUnitID = deptRow.HUnitID
            this.materialShow = false
            this.openData = false
        } else if (num == 4) {