From fa86bd0b33eca54d3cd993e8e8a42054267e72f3 Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期一, 08 十二月 2025 17:05:25 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-VUEUI

---
 .env.development                                |    3 
 src/views/basic/gyItemMoney/gyItemMoneyEdit.vue |  613 +++++++++++++++++++++++++
 src/store/modules/permission.js                 |   13 
 src/views/basic/gyItemMoney/gyItemMoney.vue     |  745 +++++++++++++++++++++++++++++++
 src/router/index.js                             |   19 
 5 files changed, 1,392 insertions(+), 1 deletions(-)

diff --git a/.env.development b/.env.development
index 67b6994..1458729 100644
--- a/.env.development
+++ b/.env.development
@@ -5,8 +5,9 @@
 ENV = 'development'
 
 # 鏅轰簯杩堟�滾-MOM绠$悊绯荤粺/寮�鍙戠幆澧�
-VUE_APP_BASE_API = http://localhost:81/API/
+# VUE_APP_BASE_API = http://localhost:81/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://localhost:8082/LuBaoAPI/
 # 璺敱鎳掑姞杞�
 VUE_CLI_BABEL_TRANSPILE_MODULES = true
diff --git a/src/router/index.js b/src/router/index.js
index 20374ae..877a04c 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -397,6 +397,25 @@
       },
     ],
   },
+    //璐圭敤椤圭洰鍒楄〃
+  {//src\views\basic\gyItemMoney\gyItemMoney.vue
+    path: "/basic/gy/gyItemMoney",
+    component: Layout,
+    hidden: true,
+    redirect: "noredirect",
+    meta: {
+      breadcrumb: false, // 濡傛灉璁剧疆涓篺alse锛屽垯涓嶄細鍦╞readcrumb闈㈠寘灞戜腑鏄剧ず
+      activeMenu: "/basic/gy", // 褰撹矾鐢辫缃簡璇ュ睘鎬э紝鍒欎細楂樹寒鐩稿搴旂殑渚ц竟鏍忋��
+    },
+    children: [
+      {
+        path: "/basic/gy/gyItemMoney",
+        component: () => import("@/views/basic/gyItemMoney/gyItemMoney.vue"),
+        name: "GyItemMoney",
+        meta: { title: "璐圭敤椤圭洰鍒楄〃", activeMenu: "basic/gy" },
+      },
+    ],
+  },
   // 閿�鍞鍗�
   {
     path: "/sell/seOrder/xsSeOrderBill",
diff --git a/src/store/modules/permission.js b/src/store/modules/permission.js
index ebbde1a..7e0a423 100644
--- a/src/store/modules/permission.js
+++ b/src/store/modules/permission.js
@@ -521,6 +521,19 @@
                     name: "GyCartypelist",
                     path: "gyCartypelist",
                   },
+                   {
+                    meta: {
+                      icon: "build",
+                      link: null,
+                      noCache: false,
+                      title: "璐圭敤椤圭洰鍒楄〃",
+                    },
+                    component: () =>
+                      import("@/views/basic/gyItemMoney/gyItemMoney.vue"),
+                    hidden: false,
+                    name: "GyItemMoney",
+                    path: "gyItemMoney",
+                  },
                   {
                     meta: {
                       icon: "build",
diff --git a/src/views/basic/gyItemMoney/gyItemMoney.vue b/src/views/basic/gyItemMoney/gyItemMoney.vue
new file mode 100644
index 0000000..76248a3
--- /dev/null
+++ b/src/views/basic/gyItemMoney/gyItemMoney.vue
@@ -0,0 +1,745 @@
+<template>
+  <div style="padding: 10px; position: relative;">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="98px" class="searchBox">
+      <el-row>
+        <el-form-item label="椤圭洰璐圭敤浠g爜" prop="HNumber" style="margin-left: 100px;">
+          <el-input v-model="queryParams.HNumber" placeholder="璇疯緭鍏ラ」鐩垂鐢ㄤ唬鐮�" @keyup.enter.native="handleQuery" />
+        </el-form-item>
+        <el-form-item label="椤圭洰璐圭敤鍚嶇О" prop="HName">
+          <el-input v-model="queryParams.HName" placeholder="璇疯緭鍏ラ」鐩垂鐢ㄥ悕绉�" @keyup.enter.native="handleQuery" />
+        </el-form-item>
+        <el-form-item label="缁勭粐">
+          <el-select v-model="queryParams.HOrgID" placeholder="璇烽�夋嫨">
+            <el-option v-for="(item, index) in organizationList" :key="index" :label="item.Name" :value="item.ID">
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label-width="78px">
+          <el-button type="primary" icon="el-icon-search" @click="handleQuery">
+            鎼滅储</el-button>
+          <el-button type="primary" icon="el-icon-refresh" @click="resetQuery">閲嶇疆</el-button>
+        </el-form-item>
+      </el-row>
+      <el-collapse v-model="activeSeach">
+        <el-collapse-item title="鏇村" name="1">
+          <el-card class="box-card">
+            <div slot="header" class="clearfix"><span>杩囨护</span></div>
+            <div>
+              <el-form-item label-width="0">
+                <el-row>
+                  <el-col :span="7">
+                    <el-select v-model="queryParams.ColName1" placeholder="璇烽�夋嫨">
+                      <span v-for="(item, index) in btList" :key="index">
+                        <el-option :label="item.field" :value="item.field" v-if="!item.hide"></el-option>
+                      </span>
+                    </el-select>
+                  </el-col>
+                  <el-col :span="6" style="padding: 0 10px;">
+                    <el-select v-model="queryParams.Comparator1" placeholder="璇烽�夋嫨">
+                      <el-option v-for="(item, index) in comparatorList" :key="index" :label="item.label"
+                        :value="item.value"></el-option>
+                    </el-select>
+                  </el-col>
+                  <el-col :span="11">
+                    <el-input v-model="queryParams.ColContent1" placeholder="璇疯緭鍏�" clearable
+                      @keyup.enter.native="handleQuery" />
+                  </el-col>
+                </el-row>
+              </el-form-item>
+              <el-row>
+                <el-form-item label-width="0">
+                  <el-row>
+                    <el-col :span="7">
+                      <el-select v-model="queryParams.ColName2" placeholder="璇烽�夋嫨">
+                        <span v-for="(item, index) in btList" :key="index">
+                          <el-option :label="item.field" :value="item.field" v-if="!item.hide"></el-option>
+                        </span>
+                      </el-select>
+                    </el-col>
+                    <el-col :span="6" style="padding: 0 10px;">
+                      <el-select v-model="queryParams.Comparator2" placeholder="璇烽�夋嫨">
+                        <span v-for="(item, index) in comparatorList" :key="index">
+                          <el-option :label="item.field" :value="item.field" v-if="!item.hide"></el-option>
+                        </span>
+                      </el-select>
+                    </el-col>
+                    <el-col :span="11">
+                      <el-input v-model="queryParams.ColContent2" placeholder="璇疯緭鍏�" clearable
+                        @keyup.enter.native="handleQuery" />
+                    </el-col>
+                  </el-row>
+                </el-form-item>
+              </el-row>
+              <el-form-item label-width="0">
+                <el-row>
+                  <el-col :span="7">
+                    <el-select v-model="queryParams.ColName" placeholder="璇烽�夋嫨">
+                      <el-option v-for="(item, index) in btList" :key="index" :label="item.field"
+                        :value="item.field"></el-option>
+                    </el-select>
+                  </el-col>
+                  <el-col :span="6" style="padding: 0 10px;">
+                    <el-select v-model="queryParams.Comparator" placeholder="璇烽�夋嫨">
+                      <el-option v-for="(item, index) in comparatorList" :key="index" :label="item.label"
+                        :value="item.value"></el-option>
+                    </el-select>
+                  </el-col>
+                  <el-col :span="11">
+                    <el-input v-model="queryParams.ColContent" placeholder="璇疯緭鍏�" clearable
+                      @keyup.enter.native="handleQuery" />
+                  </el-col>
+                </el-row>
+              </el-form-item>
+            </div>
+          </el-card>
+        </el-collapse-item>
+      </el-collapse>
+    </el-form>
+    <el-row :gutter="10" class="mb8" style="margin-top: 10px;">
+      <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>
+      <el-col :span="1.5">
+        <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="single"
+          @click="handleEdit(row = rowForm, OperationType = 3)">缂栬緫</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="single" @click="handleDelete">鍒犻櫎
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="single"
+          @click="set_CheckBill(0, form = rowForm)">瀹℃牳</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="single"
+          @click="set_CheckBill(1, form = rowForm)">鍙嶅鏍�</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="single"
+          @click="set_De_Stop(0, form = rowForm)">绂佺敤</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="single"
+          @click="set_De_Stop(1, form = rowForm)">鍙嶇鐢�</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button type="primary" icon="el-icon-download" size="mini" @click="handleExport">瀵煎嚭</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button type="primary" icon="el-icon-download" size="mini" @click="handleRowHide">闅愯棌鍒楄缃�</el-button>
+      </el-col>
+    </el-row>
+    <div class="tableBox" v-loading="loading">
+      <el-table :data="tableData" ref="tableData" max-height="750" @selection-change="handleSelectionChange" border @row-click="handleRowClick" :row-style="rowStyle"
+        @cell-dblclick="handleDblclick" v-if="tableShow">
+        <template v-for="(item, index) in btList">
+          <el-table-column type="selection" width="55" align="center" :fixed="item.fixed" v-if="item.type == 'checkbox'"
+            :key="index" />
+          <el-table-column :align="item.align" :prop="item.field" :label="item.title" :width="item.width"
+            :key="item.sorderid" v-else-if="!item.hide && item.type != '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('鏃ユ湡')">{{ parseTime(row[column.property], '{y}-{m}-{d}') }}</span>
+                <el-button type="text" @click="handleEdit(row, OperationType = 3)"
+                  v-else-if="column.property == '璐圭敤椤圭洰浠g爜'">{{ row.璐圭敤椤圭洰浠g爜 }}</el-button>
+                <span v-else>{{ row[column.label] }}</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="缂栬緫璐圭敤椤圭洰璧勬枡" :visible.sync="openEdit" width="1480px" append-to-body class="xsckdBox" @close="close">
+        <edit :OperationType=OperationType :linterid=this.rowForm.HItemID :HSouceBillType=this.rowForm.HSourceBillType
+          :copyType="copyType" @editCloseGy="editGyClose" v-if="editShow" />
+      </el-dialog>
+    </div>
+  </div>
+</template>
+
+<script>
+import axios from 'axios'
+import RowSettings from '@/views/component/rowSettings'
+import Edit from '@/views/basic/gyItemMoney/gyItemMoneyEdit.vue'
+
+export default {
+  name: 'Gy_ItemMoney',
+  components: { RowSettings, Edit },
+  props: {
+    openPage: { type: String, },
+  },
+  data() {
+    return {
+      activeSeach: '',
+      HModName: 'Gy_ItemMoney',
+      editShow: false,
+      openEdit: false,
+      tableShow: true,
+      openRowHide: false,
+      rowHideShow: false,
+      copyType: 0,
+      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: JSON.parse(sessionStorage.getItem('organizationList') || '[]'),
+      OperationType: null,
+      baseURL: process.env.VUE_APP_BASE_API,
+      lastSelectedRowIndex: null,
+      lastSelectedRow: null,
+      selectedRow: null,
+      rowForm: {},
+      activeName: 'first',
+      queryParams: {
+        HOrgID: sessionStorage["OrganizationID"] - 0,
+        HName: null,
+        HNumber: null,
+        Comparator1: '',
+        Comparator2: '',
+        Comparator: '',
+        ColContent1: '',
+        ColContent2: '',
+        ColContent: '',
+      },
+      ids: [],
+      single: true,
+      multiple: true,
+      loading: true,
+      tyResList: [],
+      btList: [],
+      btResList: [],
+      tableData: [],
+      dataList: [],
+      titleData: ["HItemID", "HUSEORGID", "HParentID"],
+      pageSizes: [50, 100, 500, 5000, 50000],
+      page: 1,
+      pageSize: 0,
+      total: 0,
+      form: {},
+      rules: {},
+    };
+  },
+  created() {
+    this.getList()
+  },
+  methods: {
+    handleRowHide() {
+      this.rowHideShow = true
+      this.openRowHide = true
+    },
+    rowSetClose(val) {
+      this.rowHideShow = false
+      this.tableShow = true
+      this.openRowHide = val
+      this.getList()
+    },
+    getList() {
+      this.pageSize = 50
+      this.tableShow = false
+      this.loading = true
+      if (this.pageSize == 0) {
+        this.pageSize = 50
+      }
+      this.sWhere += " and HUSEORGID = '" + this.queryParams.HOrgID + "'"
+      
+      axios.get(this.baseURL + '/Gy_BadReason/Gy_ItemMoneyList', {
+        params: {
+          "sWhere": this.sWhere,
+          "user": sessionStorage["HUserName"],
+        },
+      }).then(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 = [];
+          
+          for (var key in data1.list) {
+            data.push({ "id": data1.list[key].ColmCols, "name": data1.list[key].ColmCols, "Type": data1.list[key].ColmType });
+          }
+          
+          col.push({ type: 'checkbox', fixed: 'left' });
+          for (var i = 0; i < data.length; i++) {
+            if (this.titleData.indexOf(data[i].name) > -1) {
+              col.push({ field: data[i].id, title: data[i].name, align: 'center', hide: true });
+            } else if (data[i].name == '璐圭敤椤圭洰浠g爜') {
+              col.push({
+                field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 120, event: '璐圭敤椤圭洰浠g爜',
+                templet: function (d) {
+                  return '<span style="color: blue;">' + d.璐圭敤椤圭洰浠g爜 + '</span>'
+                }, style: 'cursor: pointer;'
+              });
+            } else if (data[i].Type == "Decimal" || data[i].Type == "Int32" || data[i].Type == "Double") {
+              col.push({ field: data[i].id, title: data[i].name, align: 'right', sort: true, width: 120 });
+            } else if (data[i].Type == "DateTime") {
+              col.push({ 
+                field: data[i].id, 
+                title: data[i].name, 
+                align: 'center', 
+                sort: true, 
+                width: 120,
+                formatter: (row, column) => {
+                  return row[column.property] ? this.parseTime(row[column.property], '{y}-{m}-{d}') : ''
+                }
+              });
+            } 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;
+          this.DisPlay_HideColumn(this.HModName, sessionStorage["HUserName"], option, this.dataList);
+        }
+      }).catch(error => {
+        this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+      });
+    },
+    
+    DisPlay_HideColumn(HModName, user, option, dataOption) {
+      axios.get(this.baseURL + '/Xt_grdAlignment_WMES/grdAlignmentWMESList', {
+        params: {
+          "HModName": HModName,
+          "user": user,
+        },
+      }).then(res => {
+        let data1 = res.data
+        if (data1.data.length != 0) {
+          var dataCol = [];
+          var newCols = [[]];
+          newCols[0].push(option.cols[0][0]);
+          dataCol = data1.data[0].HGridString.split(',');
+          
+          if (dataCol.length == option.cols[0].length - 1) {
+            for (var j = 0; j < option.cols[0].length - 1; j++) {
+              for (var i = 0; i < option.cols[0].length - 1; i++) {
+                var dataCols = dataCol[j].split('|');
+                if (option.cols[0][i + 1]["field"] == dataCols[5]) {
+                  if (dataCols[1] == 1) {
+                    option.cols[0][i + 1]["hide"] = true;
+                  }
+                  if (dataCols[3] > 0) {
+                    option.cols[0][i + 1]["width"] = dataCols[3];
+                  }
+                  if (data1.data[0].HFontSize != 0) {
+                    option.cols[0][i + 1]["style"] = "font-size:" + data1.data[0].HFontSize + "px;";
+                  } else {
+                    option.cols[0][i + 1]["style"] = "font-size:100%";
+                  }
+                  if (dataCols[1] == 0 && this.titleData.indexOf(option.cols[0][i + 1]["title"]) == -1) {
+                    option.cols[0][i + 1]["hide"] = false;
+                  }
+                  switch (dataCols[2]) {
+                    case "L":
+                      option.cols[0][i + 1]["align"] = "left";
+                      break;
+                    case "M":
+                      option.cols[0][i + 1]["align"] = "center";
+                      break;
+                    case "R":
+                      option.cols[0][i + 1]["align"] = "right";
+                      break;
+                  }
+                  if (dataCols[4] != null && dataCols[4] != "") {
+                    option.cols[0][i + 1]["title"] = dataCols[4];
+                  }
+                  if (dataCols[6] == 1) {
+                    option.cols[0][i + 1]["totalRow"] = true;
+                  } else {
+                    option.cols[0][i + 1]["totalRow"] = false;
+                  }
+                  newCols[0].push(option.cols[0][i + 1]);
+                  break;
+                }
+              }
+            }
+            if (dataCol.length == newCols[0].length - 1) {
+              option.cols = newCols;
+              for (var i = 1; i < option.cols[0].length - 1; i++) {
+                if (option.cols[0][i + 1]["fixed"] != null) {
+                  option.cols[0][i + 1]["fixed"] = null;
+                } else {
+                  break;
+                }
+              }
+              if (data1.data[0].HFixCols != 0) {
+                for (var i = 0; i < data1.data[0].HFixCols; i++) {
+                  if (dataOption.cols[0].indexOf(option.cols[0][i + 1]["title"]) != -1) {
+                    data1.data[0].HFixCols += 1;
+                  }
+                  option.cols[0][i + 1]["fixed"] = "left";
+                }
+              }
+              for (var i = 1; i < option.cols[0].length; i++) {
+                if (data1.data[0].HSortFlag == "鏄�") {
+                  option.cols[0][i]["sort"] = true;
+                } else {
+                  option.cols[0][i]["sort"] = false;
+                }
+              }
+            }
+          }
+          this.btList = option.cols[0]
+          if (data1.data[0].HPageSize == 0) {
+            this.pageSize = 50
+          } else {
+            this.pageSize = data1.data[0].HPageSize
+          }
+          this.tableData = option.data
+          this.tableShow = true
+          this.loading = false
+        } else {
+          this.btList = dataOption.cols[0]
+          this.tableData = dataOption.data
+          this.tableShow = true
+          this.loading = false
+        }
+      }).catch(error => {
+        this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+      });
+    },
+    
+    handleRowClick(row, column, event) {
+      this.lastSelectedRow = this.selectedRow;
+      this.selectedRow = row;
+      this.lastSelectedRowIndex = this.tableData.indexOf(row);
+      this.$refs.tableData.toggleRowSelection(row);
+      if (this.openPage) {
+        this.$emit('carTypeEmit', row, 1)
+      }
+    },
+    
+    rowStyle({ row, rowIndex }) {
+      if (this.ids.includes(row.HItemID)) {
+        return { "background": "#ecf5ff" }
+      }
+    },
+    
+    handleDblclick(row, column, cell, event) {
+      this.OperationType = 3
+      if (this.openPage) {
+        this.$emit('carTypeEmitDb', row, 1)
+      } else {
+        this.handleEdit();
+      }
+    },
+    
+    handleSelectionChange(selection) {
+      if (this.openPage) {
+        if (selection.length > 1) {
+          const del_row = selection.shift()
+          this.$refs.tableData.toggleRowSelection(del_row, false)
+        }
+        this.rowForm = {}
+        this.ids = selection.map(item => item.HItemID)
+        this.rowForm = selection[0]
+      } else {
+        this.ids = selection.map(item => item.HItemID)
+        this.single = selection.length != 1
+        this.multiple = !selection.length
+        if (!this.single) {
+          this.rowForm = selection[0]
+        }
+      }
+    },
+    
+    handleQuery() {
+      this.sWhere = ''
+      if (this.queryParams.ColName && this.queryParams.Comparator) {
+        var com = "";
+        switch (this.queryParams.Comparator) {
+          case "7":
+            com = "like'%" + this.queryParams.ColContent + "%'";
+            break;
+          case "8":
+            com = "like'%" + this.queryParams.ColContent + "'";
+            break;
+          case "9":
+            com = "like'" + this.queryParams.ColContent + "%'";
+            break;
+          case "10":
+            com = "not like'%" + this.queryParams.ColContent + "%'";
+            break;
+          default:
+            com = "" + this.queryParams.Comparator + "'" + this.queryParams.ColContent + "'";
+            break;
+        }
+        this.sWhere += " and " + this.queryParams.ColName + " " + com;
+      }
+      if (this.queryParams.ColName1 && this.queryParams.Comparator1) {
+        var com1 = "";
+        switch (this.queryParams.Comparator1) {
+          case "7":
+            com1 = "like'%" + this.queryParams.ColContent1 + "%'";
+            break;
+          case "8":
+            com1 = "like'%" + this.queryParams.ColContent1 + "'";
+            break;
+          case "9":
+            com1 = "like'" + this.queryParams.ColContent1 + "%'";
+            break;
+          case "10":
+            com1 = "not like'%" + this.queryParams.ColContent1 + "%'";
+            break;
+          default:
+            com1 = "" + this.queryParams.Comparator1 + "'" + this.queryParams.ColContent1 + "'";
+            break;
+        }
+        this.sWhere += " and " + this.queryParams.ColName1 + " " + com1;
+      }
+      if (this.queryParams.ColName2 && this.queryParams.Comparator2) {
+        var com2 = "";
+        switch (this.queryParams.Comparator2) {
+          case "7":
+            com2 = "like'%" + this.queryParams.ColContent2 + "%'";
+            break;
+          case "8":
+            com2 = "like'%" + this.queryParams.ColContent2 + "'";
+            break;
+          case "9":
+            com2 = "like'" + this.queryParams.ColContent2 + "%'";
+            break;
+          case "10":
+            com2 = "not like'%" + this.queryParams.ColContent2 + "%'";
+            break;
+          default:
+            com2 = "" + this.queryParams.Comparator + "'" + this.queryParams.ColContent + "'";
+            break;
+        }
+        this.sWhere += " and " + this.queryParams.ColName2 + " " + com2;
+      }
+      if (this.queryParams.HNumber) {
+        this.sWhere += " and 璐圭敤椤圭洰浠g爜 like '%" + this.queryParams.HNumber + "%'";
+      }
+      if (this.queryParams.HName) {
+        this.sWhere += " and 璐圭敤椤圭洰鍚嶇О like '%" + this.queryParams.HName + "%'";
+      }
+      if (this.queryParams.HOrgID) {
+        this.sWhere += " and HUSEORGID = '" + this.queryParams.HOrgID + "'"
+      }
+      this.getList()
+    },
+    
+        // 淇敼 resetQuery 鏂规硶
+    resetQuery() {
+      // 淇濆瓨缁勭粐ID
+      const currentOrgID = sessionStorage["OrganizationID"] - 0
+      
+      // 瀹屽叏閲嶇疆鎵�鏈夋煡璇㈠弬鏁�
+      this.queryParams = {
+        HOrgID: currentOrgID,
+        HName: '',
+        HNumber: '',
+        Comparator1: '',
+        Comparator2: '',
+        Comparator: '',
+        ColContent1: '',
+        ColContent2: '',
+        ColContent: '',
+        ColName: '',
+        ColName1: '',
+        ColName2: ''
+      }
+      
+      // 娓呯┖鎼滅储鏉′欢瀛楃涓�
+      this.sWhere = ''
+      
+      // 閲嶇疆鎶樺彔闈㈡澘锛堟敹璧锋洿澶氭悳绱㈡潯浠讹級
+      this.activeSeach = ''
+      
+      // 浣跨敤 $nextTick 纭繚 DOM 鏇存柊鍚庡啀閲嶇疆琛ㄥ崟
+      this.$nextTick(() => {
+        // 閲嶇疆琛ㄥ崟瀛楁锛堝寘鎷� el-select锛�
+        if (this.$refs.queryForm) {
+          this.$refs.queryForm.resetFields()
+          // 鎵嬪姩閲嶆柊璁剧疆缁勭粐ID锛屽洜涓� resetFields 浼氭竻绌烘墍鏈�
+          this.$set(this.queryParams, 'HOrgID', currentOrgID)
+        }
+        
+        // 閲嶇疆椤甸潰涓虹涓�椤�
+        this.page = 1
+        
+        // 閲嶆柊鑾峰彇鏁版嵁锛堜笉浼犱换浣曡繃婊ゆ潯浠讹級
+        this.getList()
+        
+        // 濡傛灉鏈夐�変腑琛岋紝娓呴櫎閫変腑鐘舵��
+        if (this.$refs.tableData) {
+          this.$refs.tableData.clearSelection()
+        }
+        this.single = true
+        this.multiple = true
+        this.ids = []
+        this.rowForm = {}
+      })
+      
+      // 婊氬姩鍒伴《閮�
+      this.$nextTick(() => {
+        const container = document.querySelector('.el-table__body-wrapper')
+        if (container) {
+          container.scrollTop = 0
+        }
+      })
+    },
+    
+    close() {
+      this.tableShow = true
+      this.single = true
+      this.openEdit = false
+      this.editShow = false
+      this.getList()
+    },
+    
+    handleAddEdit() {
+      this.rowForm.HItemID = 0
+      this.$nextTick(() => {
+        this.openEdit = true
+        this.editShow = true
+      })
+    },
+        
+    handleEdit() {
+      this.$nextTick(() => {
+        // 娣诲姞 200ms 鐨勫欢鏃讹紙鍙互鏍规嵁闇�瑕佽皟鏁存椂闂达級
+        setTimeout(() => {
+          this.openEdit = true
+          this.editShow = true
+        }, 200) // 200姣寤舵椂锛屽彲浠ヨ皟鏁翠负 100銆�300 绛夊��
+      })
+    },
+    editGyClose(val) {
+      this.editShow = false
+      this.openEdit = false
+      this.single = true
+      this.multiple = true
+      this.getList()
+    },
+    
+    handleDelete() {
+      this.$modal.confirm('纭瑕佸垹闄ゅ悧锛屽垹闄ゅ悗涓嶈兘鎭㈠').then(() => {
+        if (!this.rowForm.瀹℃牳浜�) {
+          axios.get(this.baseURL + "DeltetGy_ItemMoney", {
+            params: { 'HItemID': this.rowForm.HItemID, 'user': sessionStorage["HUserName"] }
+          }).then(response => {
+            if (response.data.count == 1) {
+              this.getList()
+              this.$modal.msgSuccess("鍒犻櫎鎴愬姛")
+            } else {
+              this.$modal.msgError("閿欒:" + result.code + result.Message);
+            }
+          }).catch(error => {
+            this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+          });
+        } else {
+          this.$modal.msgError("姝ゆ潯鏁版嵁涓嶆槸鍒涘缓鐘舵��,鏃犳硶鍒犻櫎!");
+        }
+      }).catch(() => { })
+    },
+    
+    set_CheckBill(num, form) {
+      var InterID = form.HItemID || form.HInterID
+      axios.get(this.baseURL + "/Gy_BadReason/AuditGy_ProjectMoney", {
+        params: { "HInterID": InterID, "IsAudit": num, "CurUserName": sessionStorage["HUserName"] }
+      }).then(response => {
+        let result = response.data
+        if (result.code == 1) {
+          this.$modal.msgSuccess('鎿嶄綔鎴愬姛');
+          this.getList();
+        } else {
+          this.$modal.msgError("閿欒:" + result.code + result.Message);
+        }
+      }).catch(error => {
+        this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+      });
+    },
+    
+    set_De_Stop(num, form) {
+      var InterID = form.HItemID || form.HInterID
+      axios.get(this.baseURL + "/Gy_BadReason/StopGy_ItemMoney", {
+        params: { "HInterID": InterID, "IsStop": num, "CurUserName": sessionStorage["HUserName"] }
+      }).then(response => {
+        let result = response.data
+        if (result.code == 1) {
+          this.$modal.msgSuccess('鎿嶄綔鎴愬姛');
+          this.getList();
+        } else {
+          this.$modal.msgError("閿欒:" + result.code + result.Message);
+        }
+      }).catch(error => {
+        this.$modal.msgError("鎺ュ彛璇锋眰澶辫触!");
+      });
+    },
+    
+    handleExport() {
+      const ws = this.$XLSX.utils.json_to_sheet(this.tyResList);
+      const wb = this.$XLSX.utils.book_new();
+      this.$XLSX.utils.book_append_sheet(wb, ws, "Sheet1");
+      this.$XLSX.writeFile(wb, `gyCarType_${new Date().getTime()}.xlsx`);
+    },
+    
+    parseTime(time, pattern) {
+      if (!time) {
+        return ''
+      }
+      const format = pattern || '{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(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
+        let value = formatObj[key]
+        if (key === 'a') { return ['鏃�', '涓�', '浜�', '涓�', '鍥�', '浜�', '鍏�'][value] }
+        if (result.length > 0 && value < 10) {
+          
+          value = '0' + value
+        }
+        return value || 0
+      })
+      return time_str
+    }
+  }
+};
+</script>
+
+<style>
+.xsckdBox .el-date-editor.el-input {
+  width: 100%;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/basic/gyItemMoney/gyItemMoneyEdit.vue b/src/views/basic/gyItemMoney/gyItemMoneyEdit.vue
new file mode 100644
index 0000000..01187c2
--- /dev/null
+++ b/src/views/basic/gyItemMoney/gyItemMoneyEdit.vue
@@ -0,0 +1,613 @@
+<template>
+  <div v-loading="formLoading" v-if="formShow">
+    <div style="margin-bottom: 10px; border-bottom: 1px solid #f6f6f6">
+      <el-button type="primary" @click="submitForm" :disabled="subDisabled"
+        >淇� 瀛�</el-button
+      >
+      <el-button
+        type="primary"
+        @click="set_CheckBill(0)"
+        :disabled="CheckBillDisabled"
+        >瀹� 鏍�</el-button
+      >
+      <el-button
+        type="primary"
+        @click="set_CheckBill(1)"
+        :disabled="DeCheckBillDisabled"
+        >鍙嶅鏍�</el-button
+      >
+      <el-button type="primary" @click="close">閫� 鍑�</el-button>
+    </div>
+    <el-form ref="form" :model="form" :rules="rules" label-width="110px">
+      <el-tabs v-model="activeName" type="card">
+        <el-tab-pane label="鍩烘湰淇℃伅" name="first">
+          <el-row>
+            <el-col :span="8">
+              <el-form-item label="璐圭敤椤圭洰浠g爜" prop="HNumber">
+                <el-input v-model="form.HNumber" placeholder="璇疯緭鍏ヨ垂鐢ㄩ」鐩唬鐮�" />
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="璐圭敤椤圭洰鍚嶇О" prop="HName">
+                <el-input v-model="form.HName" placeholder="璇疯緭鍏ヨ垂鐢ㄩ」鐩悕绉�" />
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="鍔╄鐮�" prop="HHelpCode">
+                <el-input v-model="form.HHelpCode" placeholder="璇疯緭鍏ュ姪璁扮爜" />
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="8">
+              <el-form-item label="鏍囧噯鍗曚环" prop="HPrice">
+                <el-input
+                  v-model="form.HPrice"
+                  placeholder="0.00"
+                  type="text"
+                />
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="绯绘暟姣旂巼" prop="HRate">
+                <el-input
+                  v-model="form.HRate"
+                  placeholder="0.00"
+                  type="text"
+                />
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="8">
+              <el-form-item label="浣跨敤鐘舵��" prop="HUseFlag">
+                <el-select v-model="form.HUseFlag" placeholder="璇烽�夋嫨浣跨敤鐘舵��">
+                  <el-option value="鏈娴�" label="鏈娴�"></el-option>
+                  <el-option value="鏈娇鐢�" label="鏈娇鐢�"></el-option>
+                  <el-option value="宸蹭娇鐢�" label="宸蹭娇鐢�"></el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="绛夌骇" prop="HLevel">
+                <el-input
+                  v-model="form.HLevel"
+                  placeholder="0"
+                  type="text"
+                />
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="8">
+              <el-form-item label="鏈骇鏍囧織" prop="HEndFlag">
+                <el-checkbox v-model="form.HEndFlag" disabled>鏄惁鏈骇</el-checkbox>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="绂佺敤鏍囪" prop="HStopflag">
+                <el-checkbox v-model="form.HStopflag" disabled>鏄惁绂佺敤</el-checkbox>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="12">
+              <el-form-item label="浣跨敤缁勭粐" prop="HUSEORGID">
+                <el-select
+                  v-model="form.HUSEORGID"
+                  :disabled="useOrgDisabled"
+                  @change="handleOrgChange"
+                  placeholder="璇烽�夋嫨浣跨敤缁勭粐"
+                >
+                  <el-option
+                    v-for="item in organizationList"
+                    :key="item.ID"
+                    :label="item.Name"
+                    :value="item.ID"
+                  >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="鍒涘缓缁勭粐" prop="HCREATEORGID">
+                <el-select
+                  v-model="form.HCREATEORGID"
+                  :disabled="createOrgDisabled"
+                  @change="handleCreateOrgChange"
+                  placeholder="璇烽�夋嫨鍒涘缓缁勭粐"
+                >
+                  <el-option
+                    v-for="item in organizationList"
+                    :key="item.ID"
+                    :label="item.Name"
+                    :value="item.ID"
+                  >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-tab-pane>
+        <el-tab-pane label="鍏朵粬淇℃伅" name="second">
+          <el-row>
+            <el-col :span="24">
+              <el-form-item label="澶囨敞" prop="HRemark">
+                <el-input
+                  v-model="form.HRemark"
+                  type="textarea"
+                  placeholder="璇疯緭鍏ュ娉ㄤ俊鎭�"
+                  :rows="4"
+                  style="width: 80%"
+                />
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-tab-pane>
+        <el-tab-pane label="鍒跺崟淇℃伅" name="third">
+          <el-row>
+            <el-col :span="8">
+              <el-form-item label="鍒涘缓浜�" prop="HMakeEmp">
+                <el-input v-model="form.HMakeEmp" disabled />
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="瀹℃牳浜�" prop="HCheckEmp">
+                <el-input v-model="form.HCheckEmp" disabled />
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="绂佺敤浜�" prop="HStopEmp">
+                <el-input v-model="form.HStopEmp" disabled />
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="8">
+              <el-form-item label="寤虹珛鏃堕棿" prop="HMakeTime">
+                <el-date-picker
+                  v-model="form.HMakeTime"
+                  type="date"
+                  disabled
+                >
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="瀹℃牳鏃堕棿" prop="HCheckTime">
+                <el-date-picker
+                  v-model="form.HCheckTime"
+                  type="date"
+                  disabled
+                >
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="绂佺敤鏃堕棿" prop="HStopTime">
+                <el-date-picker
+                  v-model="form.HStopTime"
+                  type="date"
+                  disabled
+                >
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="8">
+              <el-form-item label="淇敼浜�" prop="HModifyEmp">
+                <el-input v-model="form.HModifyEmp" disabled />
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="淇敼鏃堕棿" prop="HModifyTime">
+                <el-date-picker
+                  v-model="form.HModifyTime"
+                  type="date"
+                  disabled
+                >
+              </el-date-picker>
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-tab-pane>
+      </el-tabs>
+      <el-input v-model="form.HItemID" type="hidden" />
+      <el-input v-model="form.HParentID" type="hidden" />
+    </el-form>
+  </div>
+</template>
+
+<script>
+import axios from "axios";
+import dayjs from "dayjs";
+
+export default {
+  name: "gyCarTypeEdit",
+  components: {},
+  props: {
+    OperationType: { type: Number },
+    linterid: { type: Number },
+    HSouceBillType: { type: String },
+    copyType: { type: Number },
+  },
+  data() {
+    return {
+      formShow: false,
+      formLoading: true,
+      useOrgDisabled: false,
+      createOrgDisabled: false,
+      organizationList: [],
+      currentOrgId: "", // 褰撳墠缁勭粐ID
+      subDisabled: false,
+      CheckBillDisabled: true,
+      DeCheckBillDisabled: true,
+      baseURL: process.env.VUE_APP_BASE_API || "http://47.96.97.237/API/",
+      activeName: "first",
+      title: "",
+      open: false,
+      showSearch: true,
+      ids: [],
+      form: {
+        HItemID: 0,
+        HParentID: 0,
+        HNumber: "",
+        HName: "",
+        HHelpCode: "",
+        HPrice: "",
+        HRate: "",
+        HHeight: "",
+        HMaxVolume: "",
+        HUseFlag: "鏈娴�",
+        HLevel: "",
+        HEndFlag: true,
+        HStopflag: false,
+        HShortNumber: "",
+        HUSEORGID: "", // 鍒濆鍖栦负绌�
+        HCREATEORGID: "", // 鍒濆鍖栦负绌�
+        HRemark: "",
+        HMakeEmp: "",
+        HMakeTime: null,
+        HCheckEmp: null,
+        HCheckTime: null,
+        HStopEmp: null,
+        HStopTime: null,
+        HModifyEmp: null,
+        HModifyTime: null,
+      },
+      rules: {
+        HNumber: [
+          { required: true, message: "璐圭敤椤圭洰浠g爜涓嶈兘涓虹┖", trigger: "blur" },
+        ],
+        HName: [
+          { required: true, message: "璐圭敤椤圭洰鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
+        ],
+        HPrice: [
+          {
+            pattern: /^\d+(\.\d+)?$/,
+            message: "蹇呴』涓烘暟瀛�",
+            trigger: "blur",
+          },
+        ],
+        HRate: [
+          {
+            pattern: /^\d+(\.\d+)?$/,
+            message: "蹇呴』涓烘暟瀛�",
+            trigger: "blur",
+          },
+        ],
+        HLevel: [
+          {
+            pattern: /^\d+$/,
+            message: "绛夌骇蹇呴』涓烘暟瀛�",
+            trigger: "blur",
+          },
+        ],
+      },
+    };
+  },
+  created() {
+    this.initCurrentOrgId();
+  },
+  activated() {
+    this.initCurrentOrgId();
+  },
+  methods: {
+    // 鍒濆鍖栧綋鍓嶇粍缁嘔D - 涓庡垪琛ㄩ〉淇濇寔涓�鑷�
+    async initCurrentOrgId() {
+      try {
+        // 浠巗essionStorage鑾峰彇褰撳墠缁勭粐ID锛屼笌鍒楄〃椤典繚鎸佷竴鑷�
+        this.currentOrgId = sessionStorage.getItem('currentOrgId') || 
+                           (sessionStorage["OrganizationID"] - 0) || 
+                           "";
+        
+        // 浠巗essionStorage鑾峰彇缁勭粐鍒楄〃锛屼笌鍒楄〃椤典繚鎸佷竴鑷�
+        const savedOrgList = sessionStorage.getItem('organizationList');
+        if (savedOrgList) {
+          this.organizationList = JSON.parse(savedOrgList);
+        }
+        
+        // 濡傛灉缁勭粐鍒楄〃涓虹┖锛屽垯浠庢帴鍙h幏鍙栵紙澶囩敤鏂规锛�
+        if (!this.organizationList || this.organizationList.length === 0) {
+          const response = await axios.get(this.baseURL + "/Web/GetOrganizations", {});
+          if (response.data.count == 1) {
+            this.organizationList = response.data.data;
+          }
+        }
+        
+        this.getdata();
+      } catch (error) {
+        console.error("鍒濆鍖栫粍缁囨暟鎹け璐�:", error);
+        this.$modal.msgError("鑾峰彇缁勭粐鏁版嵁澶辫触!");
+        this.formLoading = false;
+      }
+    },
+
+    // 鑾峰彇琛ㄥ崟鏁版嵁
+    getdata() {
+      // 鍏堣皟鐢╮eset璁剧疆榛樿鍊�
+      this.reset();
+      
+      if (this.OperationType == 1) {
+        // 鏂板 - 涓庡垪琛ㄩ〉淇濇寔涓�鑷�
+        this.useOrgDisabled = false;
+        this.createOrgDisabled = false;
+        
+        // 璁剧疆鍒涘缓鏃堕棿鍜屽垱寤轰汉
+        let date = new Date();
+        this.form.HMakeTime = dayjs(date).format("YYYY-MM-DD");
+        this.form.HMakeEmp = sessionStorage["HUserName"] || "";
+        
+        // 鍏抽敭淇敼锛氫笌鍒楄〃椤典繚鎸佷竴鑷�
+        // 浣跨敤缁勭粐锛氬垵濮嬩负绌猴紝鐢ㄦ埛闇�瑕侀�夋嫨
+        // 鍒涘缓缁勭粐锛氶粯璁や负褰撳墠缁勭粐锛岀敤鎴峰彲浠ヤ慨鏀�
+        this.form.HCREATEORGID = this.currentOrgId;
+        this.form.HUSEORGID = this.currentOrgId; // 浣跨敤缁勭粐鐣欑┖锛岃鐢ㄦ埛閫夋嫨
+        
+        this.$nextTick(() => {
+          this.formShow = true;
+          this.formLoading = false;
+        });
+      } else if (this.OperationType == 3 || this.OperationType == 4) {
+        // 缂栬緫鎴栨祻瑙�
+        this.useOrgDisabled = true;
+        this.createOrgDisabled = true;
+        
+        if (this.OperationType == 4) {
+          // 娴忚
+          this.subDisabled = true;
+          this.CheckBillDisabled = true;
+          this.DeCheckBillDisabled = true;
+        }
+        
+        axios
+          .get(this.baseURL + "Web/GetGy_ItemMoneyDetail", {
+            params: {
+              HID: this.linterid,
+            
+            },
+          })
+          .then((response) => {
+            console.log(response);
+            let result = response.data.data.h_v_Gy_ItemMoney_1[0];;
+              var data = result;
+              this.form = {
+                HItemID: data.HItemID,
+                HParentID: data.鐖剁骇ID,
+                HNumber: data.璐圭敤椤圭洰浠g爜,
+                HName: data.璐圭敤椤圭洰鍚嶇О,
+                HHelpCode: data.鍔╄鐮�,
+                HPrice: data.鏍囧噯鍗曚环,
+                HRate: data.绯绘暟姣旂巼,
+               
+                HUseFlag: data.HUseFlag,
+                HLevel: data.绛夌骇,
+                HEndFlag: data.鏈骇鏍囧織,
+                HStopflag: data.HStopflag,
+                HUSEORGID: data.HUSEORGID,
+                HCREATEORGID: data.HCREATEORGID,
+                HRemark: data.澶囨敞,
+                HMakeEmp: data.鍒涘缓浜�,
+                HMakeTime: data.鍒涘缓鏃堕棿
+                  ? dayjs(new Date(data.鍒涘缓鏃堕棿)).format("YYYY-MM-DD")
+                  : "",
+                HCheckEmp: data.瀹℃牳浜�,
+                HCheckTime: data.瀹℃牳鏃堕棿
+                  ? dayjs(new Date(data.瀹℃牳鏃堕棿)).format("YYYY-MM-DD")
+                  : "",
+                HStopEmp: data.HStopEmp,
+                HStopTime: data.HStopTime
+                  ? dayjs(new Date(data.HStopTime)).format("YYYY-MM-DD")
+                  : "",
+                HModifyEmp: data.HModifyEmp,
+                HModifyTime: data.HModifyTime
+                  ? dayjs(new Date(data.HModifyTime)).format("YYYY-MM-DD")
+                  : "",
+              };
+              
+              if (this.OperationType == 3) {
+                if (!data.HCheckEmp) {
+                  this.CheckBillDisabled = false;
+                } else {
+                  this.DeCheckBillDisabled = false;
+                }
+              }
+            
+            this.$nextTick(() => {
+              this.formShow = true;
+              this.formLoading = false;
+            });
+          })
+          .catch((error) => {
+            this.$modal.msgError("鑾峰彇鏁版嵁澶辫触!");
+            this.formLoading = false;
+          });
+      }
+    },
+
+    // 閲嶇疆琛ㄥ崟 - 淇敼榛樿鍊艰缃�
+    reset() {
+      this.form = {
+        HItemID: 0,
+        HParentID: 0,
+        HNumber: "",
+        HName: "",
+        HHelpCode: "",
+        HPrice: "",
+        HRate: "",
+        HUseFlag: "鏈娴�",
+        HLevel: "",
+        HEndFlag: true,
+        HStopflag: false,
+        HUSEORGID: "", // 浣跨敤缁勭粐锛氬垵濮嬩负绌猴紝鐢ㄦ埛闇�瑕侀�夋嫨
+        HCREATEORGID: this.currentOrgId, // 鍒涘缓缁勭粐锛氶粯璁や负褰撳墠缁勭粐
+        HRemark: "",
+        HMakeEmp: sessionStorage["HUserName"] || "",
+        HMakeTime: null,
+        HCheckEmp: null,
+        HCheckTime: null,
+        HStopEmp: null,
+        HStopTime: null,
+        HModifyEmp: null,
+        HModifyTime: null,
+      };
+      this.ids = [];
+      this.formShow = false;
+      this.subDisabled = false;
+      this.formLoading = true;
+      this.CheckBillDisabled = true;
+      this.DeCheckBillDisabled = true;
+      this.activeName = "first";
+      if (this.$refs.form) {
+        this.$refs.form.resetFields();
+      }
+    },
+
+    // 缁勭粐閫夋嫨鍙樺寲
+    handleOrgChange(value) {
+      this.form.HUSEORGID = value;
+    },
+
+    // 鍒涘缓缁勭粐閫夋嫨鍙樺寲
+    handleCreateOrgChange(value) {
+      this.form.HCREATEORGID = value;
+    },
+
+    // 鍏抽棴琛ㄥ崟
+    close() {
+      this.reset();
+      this.formShow = false;
+      this.$emit("editCloseGy", 0);
+    },
+
+    // 鎻愪氦琛ㄥ崟
+    submitForm() {
+      this.$refs["form"].validate((valid) => {
+        if (valid) {
+          // 蹇呭~瀛楁楠岃瘉
+          if (!this.form.HNumber) {
+            this.$modal.msgError("璐圭敤椤圭洰浠g爜涓嶈兘涓虹┖!");
+            return;
+          }
+          if (!this.form.HName) {
+            this.$modal.msgError("璐圭敤椤圭洰鍚嶇О涓嶈兘涓虹┖!");
+            return;
+          }
+          
+          // 浣跨敤缁勭粐蹇呭~楠岃瘉 - 涓庡垪琛ㄩ〉淇濇寔涓�鑷�
+          if (!this.form.HUSEORGID) {
+            this.$modal.msgError("浣跨敤缁勭粐涓嶈兘涓虹┖!");
+            return;
+          }
+          
+          if (!this.form.HCREATEORGID) {
+            this.$modal.msgError("鍒涘缓缁勭粐涓嶈兘涓虹┖!");
+            return;
+          }
+
+          // 鏁板瓧瀛楁楠岃瘉
+          if (this.form.HPrice && isNaN(this.form.HPrice)) {
+            this.$modal.msgError("蹇呴』涓烘暟瀛�!");
+            return;
+          }
+          
+          if (this.form.HLevel && isNaN(this.form.HLevel)) {
+            this.$modal.msgError("绛夌骇蹇呴』涓烘暟瀛�!");
+            return;
+          }
+
+          var sMainStr = JSON.stringify(this.form);
+          var oMain = sMainStr + ";" + sessionStorage["HUserName"];
+
+          axios({
+            method: "post",
+            url: this.baseURL + "/SaveGy_ItemMoney",
+            data: { msg: oMain },
+          })
+            .then((response) => {
+              if (response.data.count == 1) {
+                this.subDisabled = true;
+                this.CheckBillDisabled = false;
+                this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�");
+              } else {
+                this.$modal.msgError(response.data.Message);
+                //this.$modal.msgError("6666");
+              }
+            })
+            .catch((error) => {
+              this.$modal.msgError("淇濆瓨澶辫触!");
+            });
+        }
+      });
+    },
+
+    // 瀹℃牳/鍙嶅鏍�
+    set_CheckBill(num) {
+      var HItemID = this.form.HItemID;
+      if (!HItemID || HItemID == "0") {
+        this.$modal.msgError("璇峰厛淇濆瓨鏁版嵁鍐嶈繘琛屽鏍告搷浣滐紒");
+        return;
+      }
+
+      axios
+        .get(this.baseURL + "/Gy_BadReason/AuditGy_ItemMoney", {
+          params: {
+            HInterID: HItemID,
+            IsAudit: num,
+            CurUserName: sessionStorage["HUserName"],
+          },
+        })
+        .then((response) => {
+          let result = response.data;
+          if (result.code == 1) {
+            this.$modal.msgSuccess(result.Message);
+            if (num == 0) {
+              this.CheckBillDisabled = true;
+              this.DeCheckBillDisabled = false;
+            } else {
+              this.CheckBillDisabled = false;
+              this.DeCheckBillDisabled = true;
+            }
+          } else {
+            this.$modal.msgError(result.Message);
+          }
+        })
+        .catch((error) => {
+          this.$modal.msgError("瀹℃牳鎿嶄綔澶辫触!");
+        });
+    },
+  },
+};
+</script>
+
+<style>
+.xsckdBox .el-date-editor.el-input {
+  width: 100%;
+}
+
+.form-inline > .el-form-item__content {
+  display: flex;
+  flex-direction: row;
+}
+</style>
\ No newline at end of file

--
Gitblit v1.9.1