changhaoning пре 2 година
родитељ
комит
7d732f2d95

+ 19 - 0
src/api/pages/core/basic-data.js

@@ -0,0 +1,19 @@
+/**
+* @desc   : 基础资料服务
+* @author : 常皓宁
+* @date   : 2024/1/31 10:25
+*/
+export default {
+  basicDataService:{
+  }
+}
+
+/**
+* @desc   : 基础资料路由
+* @author : 常皓宁
+* @date   : 2024/1/31 10:25
+*/
+export const routeUrl = {
+  basicData:{
+  }
+}

+ 19 - 0
src/api/pages/core/goods-attr.js

@@ -0,0 +1,19 @@
+/**
+ * @desc   : 商品属性服务
+ * @author : 常皓宁
+ * @date   : 2024/1/31 10:25
+ */
+export default {
+  goodsAttrService:{
+  }
+}
+
+/**
+ * @desc   : 商品属性路由
+ * @author : 常皓宁
+ * @date   : 2024/1/31 10:25
+ */
+export const routeUrl = {
+  goodsAttr:{
+  }
+}

+ 21 - 0
src/api/pages/core/goods.js

@@ -0,0 +1,21 @@
+/**
+ * @desc   : 商品档案服务
+ * @author : 常皓宁
+ * @date   : 2024/1/31 10:25
+ */
+export default {
+  goodsService:{
+  }
+}
+
+/**
+ * @desc   : 商品档案路由
+ * @author : 常皓宁
+ * @date   : 2024/1/31 10:25
+ */
+export const routeUrl = {
+  goods:{
+    // add: {key: 'add', routeName: 'goods-add'},
+    // edit: {key: 'edit', routeName: 'add'},
+  }
+}

+ 19 - 0
src/api/pages/fin/fundAccount.js

@@ -0,0 +1,19 @@
+/**
+ * @desc   : 商品档案服务
+ * @author : 常皓宁
+ * @date   : 2024/1/31 10:25
+ */
+export default {
+  fundAccountService:{
+  }
+}
+
+/**
+ * @desc   : 商品档案路由
+ * @author : 常皓宁
+ * @date   : 2024/1/31 10:25
+ */
+export const routeUrl = {
+  fundAccount:{
+  }
+}

+ 452 - 1
src/view/core/basic-data/index.vue

@@ -1,10 +1,461 @@
+<!-- @desc:基础资料  @auth:常皓宁  @time:2024-1-30 15:28 -->
 <template>
 <template>
+  <div class="main-div" ref="mainDiv">
+    <loading :loading="loading" v-if="!modalVisible"></loading>
+    <BaseIndexButtonGroup ref="BaseIndexButtonGroup" id="BaseIndexButtonGroup">
+      <template #left>
+        <!--    查询    -->
+        <BaseIndexButton ref="search" name="search"></BaseIndexButton>
+        <!--    清空条件    -->
+        <BaseIndexButton ref="clear" name="clear"></BaseIndexButton>
+        <!--    编辑    -->
+        <BaseIndexButton ref="edit" name="edit"></BaseIndexButton>
+        <!--    启用    -->
+        <BaseIndexButton ref="enable" name="enable"></BaseIndexButton>
+        <!--    停用    -->
+        <BaseIndexButton ref="disable" name="disable"></BaseIndexButton>
+      </template>
+      <template #right>
+        <!--   新建     -->
+        <BaseIndexButton ref="add" name="add"></BaseIndexButton>
+      </template>
+    </BaseIndexButtonGroup>
 
 
+    <!--  查询条件区域  -->
+    <div id="search-cond-div" ref="search-cond-div" class="search-cond-class">
+      <SearchCond ref="searchCond" v-model="searchCond"
+                  @collapse-change="collapseChange" :setFlag="false"
+                  :searchContent="searchContent"
+      ></SearchCond>
+    </div>
+
+    <!--  表格部分  -->
+    <div :style="'height: ' + (tableHeight + 30) + 'px'" class="split-div-class">
+      <DkSplit v-model="split">
+        <!-- 左边部分   -->
+        <DkTable slot="left" ref="leftTable" :data="leftData" :height="tableHeight + 30" :page-flag="false"
+                 :page-total-flag="false" :show-setting-flag="false" :freeze="false" :choose-flag="false"
+                 @current-change="currentChangeEvent($event)">
+          <DkTableColumn :title="$t('allType')" field="kindName" width="auto" :filter="false" :sortable="false"
+                         :center-flag="true">
+          </DkTableColumn>
+        </DkTable>
+
+        <!-- 右边部分   -->
+        <DkTable slot="right" :id="'table-' + $options.name" ref="table-select" :data="tableData" :pageFlag="true"
+                 :page-total="pageInfo.total" :current-page="pageInfo.currentPage" :choose-flag="false"
+                 :height="this.tableHeight" primaryKey="basicDataId" @pageChange="pageSizeChange">
+          <DkTableColumn field="编码"></DkTableColumn>
+          <DkTableColumn field="名称"></DkTableColumn>
+          <DkTableColumn field="flgValid" type="switch" ></DkTableColumn>
+        </DkTable>
+      </DkSplit>
+    </div>
+
+    <!--新建编辑-->
+    <DkModal
+      :loading="loading"
+      v-model="editAddModal"
+      ref="modal_editAdd"
+      @on-visible-change="handleVisibleModal"
+      @modalOk="save"
+      :saveFlag="true"
+      :title="modalTitle"
+    >
+      <DkForm ref="formInline" v-model="formData" :col-count="1">
+        <DkFormItem prop="编码" :required="true">
+          <InputPop v-model="formData.编码"/>
+        </DkFormItem>
+        <DkFormItem prop="名称" :required="true">
+          <InputPop v-model="formData.名称"/>
+        </DkFormItem>
+        <DkFormItem prop="分类" :required="true">
+          <SelectPop v-model="formData.分类" ref="分类" :multiple="false" :options="kindList"
+                      labelKey="kindName" valueKey="kindId">
+          </SelectPop>
+        </DkFormItem>
+      </DkForm>
+    </DkModal>
+
+  </div>
 </template>
 </template>
 
 
 <script>
 <script>
+import {indexMixin} from '@/mixins'
+
 export default {
 export default {
-  name: "index"
+  name: 'basic-data',
+  mixins: [indexMixin],
+  data() {
+    let self = this
+    return {
+      modalTitle: '',//新建编辑弹窗名称
+      submitType: '',//新建编辑提交类型
+      split: 0.15,
+      minSplit: 0.15,
+      leftData: [
+        {
+          kindId: 1,
+          kindName: '仓库档案',
+        },
+        {
+          kindId: 2,
+          kindName: '销售渠道',
+        },
+        {
+          kindId: 3,
+          kindName: '收入类别',
+        },
+        {
+          kindId: 4,
+          kindName: '支出类别',
+        },
+        {
+          kindId: 5,
+          kindName: '入库原因',
+        },
+        {
+          kindId: 6,
+          kindName: '出库原因',
+        },
+        {
+          kindId: 7,
+          kindName: '收付方式',
+        },
+        {
+          kindId: 8,
+          kindName: '客户来源',
+        },
+        {
+          kindId: 9,
+          kindName: '客户标签',
+        },
+      ],
+      tableData: [],
+      kindList:[
+        {
+          kindId:1,
+          kindName:'仓库档案',
+        },
+        {
+          kindId:2,
+          kindName:'销售渠道',
+        },
+        {
+          kindId:3,
+          kindName:'收入类别',
+        },
+        {
+          kindId:4,
+          kindName:'支出类别',
+        },
+        {
+          kindId:5,
+          kindName:'入库原因',
+        },
+        {
+          kindId:6,
+          kindName:'出库原因',
+        },
+        {
+          kindId:7,
+          kindName:'收付方式',
+        },
+        {
+          kindId: 8,
+          kindName: '客户来源',
+        },
+        {
+          kindId: 9,
+          kindName: '客户标签',
+        },
+      ],
+      formData:{
+        编码: '',
+        名称: '',
+        分类:null,
+      },
+      // 渲染数据
+      test00: [
+        {
+          编码: 'CK00001',
+          名称: '运营主仓',
+          flgValid:true
+        },
+        {
+          编码: 'CK00002',
+          名称: '红星店面仓库',
+          flgValid:true
+        },
+        {
+          编码: 'CK00003',
+          名称: '红星店面仓库',
+          flgValid:true
+        }],
+      test01: [
+        {
+          编码: 'QD00001',
+          名称: '零售',
+          flgValid: true
+        },
+        {
+          编码: 'QD00002',
+          名称: '家装',
+          flgValid: true
+        },
+        {
+          编码: 'QD00003',
+          名称: '分销',
+          flgValid: true
+        },
+        {
+          编码: 'QD00004',
+          名称: '工程',
+          flgValid: true
+        },
+        {
+          编码: 'QD00005',
+          名称: '其他',
+          flgValid: true
+        }
+      ],
+      test02: [
+        {
+          编码: 'SR00001',
+          名称: '配送费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00002',
+          名称: '安装费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00003',
+          名称: '加工费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00004',
+          名称: '拆旧费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00005',
+          名称: '其他收入',
+          flgValid: true
+        }
+      ],
+      test03: [
+        {
+          编码: 'SR00001',
+          名称: '房租费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00002',
+          名称: '水电费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00003',
+          名称: '送货费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00004',
+          名称: '员工工资',
+          flgValid: true
+        },
+        {
+          编码: 'SR00005',
+          名称: '促销活动费',
+          flgValid: true
+        }
+      ],
+      test04: [
+        {
+          编码: 'RK00001',
+          名称: '期初入库',
+          flgValid: true
+        },
+        {
+          编码: 'RK00002',
+          名称: '其他入库',
+          flgValid: true
+        },
+        {
+          编码: 'RK00003',
+          名称: '采购入库',
+          flgValid: true
+        },
+        {
+          编码: 'RK00004',
+          名称: '销售回库',
+          flgValid: true
+        }
+      ],
+      test05: [
+        {
+          编码: 'CK00001',
+          名称: '销售出库',
+          flgValid: true
+        },
+        {
+          编码: 'CK00002',
+          名称: '其他出库',
+          flgValid: true
+        },
+        {
+          编码: 'CK00003',
+          名称: '采购退货出库',
+          flgValid: true
+        },
+        {
+          编码: 'CK00004',
+          名称: '调货出库',
+          flgValid: true
+        }
+      ],
+      test06: [
+        {
+          编码: 'SF00001',
+          名称: '微信',
+          flgValid: true
+        },
+        {
+          编码: 'SF00002',
+          名称: '现金',
+          flgValid: true
+        },
+        {
+          编码: 'SF00003',
+          名称: '银行转账',
+          flgValid: true
+        },
+        {
+          编码: 'SF00004',
+          名称: '支付宝',
+          flgValid: true
+        }
+      ],
+      test07: [
+        {
+          编码: 'LY00001',
+          名称: '门店来源',
+          flgValid: true
+        },
+        {
+          编码: 'LY00002',
+          名称: '老客引荐',
+          flgValid: true
+        },
+        {
+          编码: 'LY00003',
+          名称: '同行接待',
+          flgValid: true
+        },
+      ],
+      test08: [
+        {
+          编码: 'SF00001',
+          名称: '新客',
+          flgValid: true
+        },
+        {
+          编码: 'SF00002',
+          名称: '老客',
+          flgValid: true
+        },
+      ],
+      searchContent:
+        [
+          {
+            itemCode: '编码',
+          },
+          {
+            itemCode: '名称',
+          },
+        ],
+    }
+  },
+  methods: {
+    /**
+     * @desc   : 左侧列表行变化事件
+     * @author : 常皓宁
+     * @date   : 2024/1/31 9:03
+     */
+    currentChangeEvent({row}) {
+      if (row != null) {
+        let name = row.kindName
+        if (name == '仓库档案') {
+          this.tableData = this.test00
+        }
+        if (name == '销售渠道') {
+          this.tableData = this.test01
+        }
+        if (name == '收入类别') {
+          this.tableData = this.test02
+        }
+        if (name == '支出类别') {
+          this.tableData = this.test03
+        }
+        if (name == '入库原因') {
+          this.tableData = this.test04
+        }
+        if (name == '出库原因') {
+          this.tableData = this.test05
+        }
+        if (name == '收付方式') {
+          this.tableData = this.test06
+        }
+        if (name == '客户来源') {
+          this.tableData = this.test07
+        }
+        if (name == '客户标签') {
+          this.tableData = this.test08
+        }
+      }
+    },
+
+    /**
+     * @desc   : 新建按钮点击事件
+     * @author : 常皓宁
+     * @date   : 2024/1/31 9:19
+     */
+    add() {
+      this.modalTitle = this.setTitle(this.$config.formMode.add, '基础资料')
+      let row = this.$refs['leftTable'].$refs.table.getCurrentRecord()
+      if (row) {
+        this.formData.分类 = row.kindId
+      }
+      this.editAddModal = true
+    },
+
+    /**
+     * @desc   : 编辑按钮事件
+     * @author : 常皓宁
+     * @date   : 2024/1/31 10:35
+     */
+    edit(rows) {
+      this.modalTitle = this.setTitle(this.$config.formMode.edit, '基础资料')
+      console.log('rows',rows)
+      if (rows.length > 0) {
+        // this.detail(rows[0].typeId)
+        this.formData.名称 = rows[0].名称
+        this.formData.编码 = rows[0].编码
+        let row = this.$refs['leftTable'].$refs.table.getCurrentRecord()
+        if (row) {
+          this.formData.分类 = row.kindId
+        }
+      }
+      this.editAddModal = true
+    },
+  },
+  created() {
+    this.primaryKey = 'basicDataId'  // 设置主键Id
+    this.routeObjName = 'basicData'  // 设置路由名称
+  }
 }
 }
 </script>
 </script>
 
 

+ 368 - 1
src/view/core/goods-attr/index.vue

@@ -1,10 +1,377 @@
+<!-- @desc:商品属性  @auth:常皓宁  @time:2024-1-31 9:47 -->
 <template>
 <template>
+  <div class="main-div" ref="mainDiv">
+    <loading :loading="loading" v-if="!modalVisible"></loading>
+    <BaseIndexButtonGroup ref="BaseIndexButtonGroup" id="BaseIndexButtonGroup">
+      <template #left>
+        <!--    查询    -->
+        <BaseIndexButton ref="search" name="search"></BaseIndexButton>
+        <!--    清空条件    -->
+        <BaseIndexButton ref="clear" name="clear"></BaseIndexButton>
+        <!--    编辑    -->
+        <BaseIndexButton ref="edit" name="edit"></BaseIndexButton>
+        <!--    启用    -->
+        <BaseIndexButton ref="enable" name="enable"></BaseIndexButton>
+        <!--    停用    -->
+        <BaseIndexButton ref="disable" name="disable"></BaseIndexButton>
+      </template>
+      <template #right>
+        <!--   新建     -->
+        <BaseIndexButton ref="add" name="add"></BaseIndexButton>
+      </template>
+    </BaseIndexButtonGroup>
 
 
+    <!--  查询条件区域  -->
+    <div id="search-cond-div" ref="search-cond-div" class="search-cond-class">
+      <SearchCond ref="searchCond" v-model="searchCond"
+                  @collapse-change="collapseChange" :setFlag="false"
+                  :searchContent="searchContent"
+      ></SearchCond>
+    </div>
+
+    <!--  表格部分  -->
+    <div :style="'height: ' + (tableHeight + 30) + 'px'" class="split-div-class">
+      <DkSplit v-model="split">
+        <!-- 左边部分   -->
+        <DkTable slot="left" ref="leftTable" :data="leftData" :height="tableHeight + 30" :page-flag="false"
+                 :page-total-flag="false" :show-setting-flag="false" :freeze="false" :choose-flag="false"
+                 @current-change="currentChangeEvent($event)">
+          <DkTableColumn :title="$t('allType')" field="kindName" width="auto" :filter="false" :sortable="false"
+                         :center-flag="true">
+          </DkTableColumn>
+        </DkTable>
+
+        <!-- 右边部分   -->
+        <DkTable slot="right" :id="'table-' + $options.name" ref="table-select" :data="tableData" :pageFlag="true"
+                 :page-total="pageInfo.total" :current-page="pageInfo.currentPage" :choose-flag="false"
+                 :height="this.tableHeight" primaryKey="typeId" @pageChange="pageSizeChange">
+          <DkTableColumn field="编码"></DkTableColumn>
+          <DkTableColumn field="名称"></DkTableColumn>
+          <DkTableColumn field="flgValid" type="switch" ></DkTableColumn>
+        </DkTable>
+      </DkSplit>
+    </div>
+
+    <!--新建编辑-->
+    <DkModal
+      :loading="loading"
+      v-model="editAddModal"
+      ref="modal_editAdd"
+      @on-visible-change="handleVisibleModal"
+      @modalOk="save"
+      :saveFlag="true"
+      :title="modalTitle"
+    >
+      <DkForm ref="formInline" v-model="formData" :col-count="1">
+        <DkFormItem prop="编码" :required="true">
+          <InputPop v-model="formData.编码"/>
+        </DkFormItem>
+        <DkFormItem prop="名称" :required="true">
+          <InputPop v-model="formData.名称"/>
+        </DkFormItem>
+        <DkFormItem prop="分类" :required="true">
+          <SelectPop v-model="formData.分类" ref="分类" :multiple="false" :options="kindList"
+                     labelKey="kindName" valueKey="kindId">
+          </SelectPop>
+        </DkFormItem>
+      </DkForm>
+    </DkModal>
+
+  </div>
 </template>
 </template>
 
 
 <script>
 <script>
+import {indexMixin} from '@/mixins'
+
 export default {
 export default {
-  name: "index"
+  name: 'goods-attr',
+  mixins: [indexMixin],
+  data() {
+    let self = this
+    return {
+      modalTitle: '',//新建编辑弹窗名称
+      submitType: '',//新建编辑提交类型
+      split: 0.15,
+      minSplit: 0.15,
+      leftData: [
+        {
+          kindId: 1,
+          kindName: '商品品牌',
+        },
+        {
+          kindId: 2,
+          kindName: '商品种类',
+        },
+        {
+          kindId: 3,
+          kindName: '商品系列',
+        },
+        {
+          kindId: 4,
+          kindName: '计量单位',
+        },
+      ],
+      tableData: [],
+      kindList:[
+        {
+          kindId: 1,
+          kindName: '商品品牌',
+        },
+        {
+          kindId: 2,
+          kindName: '商品种类',
+        },
+        {
+          kindId: 3,
+          kindName: '商品系列',
+        },
+        {
+          kindId: 4,
+          kindName: '计量单位',
+        },
+      ],
+      formData:{
+        编码: '',
+        名称: '',
+        分类:null,
+      },
+      // 渲染数据
+      test00: [
+        {
+          编码: 'CK00001',
+          名称: '运营主仓',
+          flgValid:true
+        },
+        {
+          编码: 'CK00002',
+          名称: '红星店面仓库',
+          flgValid:true
+        },
+        {
+          编码: 'CK00003',
+          名称: '红星店面仓库',
+          flgValid:true
+        }],
+      test01: [
+        {
+          编码: 'QD00001',
+          名称: '零售',
+          flgValid: true
+        },
+        {
+          编码: 'QD00002',
+          名称: '家装',
+          flgValid: true
+        },
+        {
+          编码: 'QD00003',
+          名称: '分销',
+          flgValid: true
+        },
+        {
+          编码: 'QD00004',
+          名称: '工程',
+          flgValid: true
+        },
+        {
+          编码: 'QD00005',
+          名称: '其他',
+          flgValid: true
+        }
+      ],
+      test02: [
+        {
+          编码: 'SR00001',
+          名称: '配送费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00002',
+          名称: '安装费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00003',
+          名称: '加工费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00004',
+          名称: '拆旧费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00005',
+          名称: '其他收入',
+          flgValid: true
+        }
+      ],
+      test03: [
+        {
+          编码: 'SR00001',
+          名称: '房租费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00002',
+          名称: '水电费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00003',
+          名称: '送货费',
+          flgValid: true
+        },
+        {
+          编码: 'SR00004',
+          名称: '员工工资',
+          flgValid: true
+        },
+        {
+          编码: 'SR00005',
+          名称: '促销活动费',
+          flgValid: true
+        }
+      ],
+      test04: [
+        {
+          编码: 'RK00001',
+          名称: '期初入库',
+          flgValid: true
+        },
+        {
+          编码: 'RK00002',
+          名称: '其他入库',
+          flgValid: true
+        },
+        {
+          编码: 'RK00003',
+          名称: '采购入库',
+          flgValid: true
+        },
+        {
+          编码: 'RK00004',
+          名称: '销售回库',
+          flgValid: true
+        }
+      ],
+      test05: [
+        {
+          编码: 'CK00001',
+          名称: '销售出库',
+          flgValid: true
+        },
+        {
+          编码: 'CK00002',
+          名称: '其他出库',
+          flgValid: true
+        },
+        {
+          编码: 'CK00003',
+          名称: '采购退货出库',
+          flgValid: true
+        },
+        {
+          编码: 'CK00004',
+          名称: '调货出库',
+          flgValid: true
+        }
+      ],
+      test06: [
+        {
+          编码: 'SF00001',
+          名称: '微信',
+          flgValid: true
+        },
+        {
+          编码: 'SF00002',
+          名称: '现金',
+          flgValid: true
+        },
+        {
+          编码: 'SF00003',
+          名称: '银行转账',
+          flgValid: true
+        },
+        {
+          编码: 'SF00004',
+          名称: '支付宝',
+          flgValid: true
+        }
+      ],
+      searchContent:
+        [
+          {
+            itemCode: '编码',
+          },
+          {
+            itemCode: '名称',
+          },
+        ],
+    }
+  },
+  methods: {
+    /**
+     * @desc   : 左侧列表行变化事件
+     * @author : 常皓宁
+     * @date   : 2024/1/31 9:03
+     */
+    currentChangeEvent({row}) {
+      if (row != null) {
+        let name = row.kindName
+        if (name == '商品品牌') {
+          this.tableData = this.test00
+        }
+        if (name == '商品种类') {
+          this.tableData = this.test01
+        }
+        if (name == '商品系列') {
+          this.tableData = this.test02
+        }
+        if (name == '计量单位') {
+          this.tableData = this.test03
+        }
+      }
+    },
+
+    /**
+     * @desc   : 新建按钮点击事件
+     * @author : 常皓宁
+     * @date   : 2024/1/31 9:19
+     */
+    add() {
+      this.modalTitle = this.setTitle(this.$config.formMode.add, '商品属性')
+      let row = this.$refs['leftTable'].$refs.table.getCurrentRecord()
+      if (row) {
+        this.formData.分类 = row.kindId
+      }
+      this.editAddModal = true
+    },
+
+    /**
+     * @desc   : 编辑按钮事件
+     * @author : 常皓宁
+     * @date   : 2024/1/31 10:35
+     */
+    edit(rows) {
+      this.modalTitle = this.setTitle(this.$config.formMode.edit, '商品属性')
+      console.log('rows',rows)
+      if (rows.length > 0) {
+        // this.detail(rows[0].typeId)
+        this.formData.名称 = rows[0].名称
+        this.formData.编码 = rows[0].编码
+        let row = this.$refs['leftTable'].$refs.table.getCurrentRecord()
+        if (row) {
+          this.formData.分类 = row.kindId
+        }
+      }
+      this.editAddModal = true
+    },
+  },
+  created() {
+    this.primaryKey = 'goodsAttrId'  // 设置主键Id
+    this.routeObjName = 'goodsAttr'  // 设置路由名称
+  }
 }
 }
 </script>
 </script>
 
 

+ 18 - 0
src/view/core/goods/add.vue

@@ -0,0 +1,18 @@
+<template>
+  <CommonForm type="add"></CommonForm>
+</template>
+
+<script>
+import CommonForm from "./form";
+
+export default {
+  name: 'goods-add',
+  components: {
+    CommonForm
+  },
+}
+</script>
+
+<style scoped>
+
+</style>

+ 18 - 0
src/view/core/goods/edit.vue

@@ -0,0 +1,18 @@
+<template>
+  <CommonForm type="edit"></CommonForm>
+</template>
+
+<script>
+import CommonForm from "./form";
+
+export default {
+  name: 'edit',
+  components: {
+    CommonForm
+  },
+}
+</script>
+
+<style scoped>
+
+</style>

+ 248 - 0
src/view/core/goods/form.vue

@@ -0,0 +1,248 @@
+<template>
+  <div class="main-div" ref="mainDiv">
+    <!--加载中-->
+    <loading :loading="loading" v-if="!modalVisible"></loading>
+    <DkPageButton :total="editKeys?editKeys.length:0"
+                  :current="editIndex"
+                  v-if="editKeys && editKeys.length > 1"
+                  @pageChange="editPageChange"></DkPageButton>
+    <DkCollapse @on-change="changeCollapse" ref="collapse">
+      <DkPanel prop="基本信息">
+        <!--  下拉区域  -->
+        <DkForm slot="content" ref="formInline" v-model="formData" style="width: 95%" :labelMaxWords=5>
+          <!--唯一编码-->
+          <DkFormItem :required="true" prop="唯一编码">
+            <InputPop ref="唯一编码" v-model="formData.唯一编码" :readonly="type == $config.formMode.edit"/>
+          </DkFormItem>
+          <!--商品型号-->
+          <DkFormItem :required="true" prop="商品型号">
+            <InputPop ref="商品型号" v-model="formData.商品型号" :readonly="type == $config.formMode.edit"/>
+          </DkFormItem>
+          <!--商品名称-->
+          <DkFormItem :required="true" prop="商品名称">
+            <InputPop ref="商品名称" v-model="formData.商品名称"/>
+          </DkFormItem>
+          <DkFormItem prop="remarks">
+            <InputPop v-model="formData.remarks" maxlength="255"/>
+          </DkFormItem>
+        </DkForm>
+      </DkPanel>
+      <DkPanel prop="商品属性">
+        <!--  下拉区域  -->
+        <DkForm slot="content" ref="formInline" v-model="formData" style="width: 95%" :labelMaxWords=5>
+          <!--商品品牌-->
+          <DkFormItem prop="商品品牌" :required="true" :data-type="this.$config.dataType.array" :label="'商品品牌'">
+            <SelectPop v-model="formData.商品品牌" :multiple="false" :options="List1" ref="roleIds"
+                       labelKey="roleName"
+                       valueKey=roleId>
+            </SelectPop>
+          </DkFormItem>
+          <!--商品种类-->
+          <DkFormItem prop="商品种类" :required="true" :data-type="this.$config.dataType.array" :label="'商品种类'">
+            <SelectPop v-model="formData.商品种类" :multiple="false" :options="List2" ref="roleIds"
+                       labelKey="roleName"
+                       valueKey=roleId>
+            </SelectPop>
+          </DkFormItem>
+          <!--计量单位-->
+          <DkFormItem prop="计量单位" :required="true" :data-type="this.$config.dataType.array" :label="'计量单位'">
+            <SelectPop v-model="formData.计量单位" :multiple="false" :options="List4" ref="roleIds"
+                       labelKey="roleName"
+                       valueKey=roleId>
+            </SelectPop>
+          </DkFormItem>
+          <!--商品系列-->
+          <DkFormItem prop="商品系列" :data-type="this.$config.dataType.array" :label="'商品系列'">
+            <SelectPop v-model="formData.商品系列" :multiple="false" :options="List3" ref="roleIds"
+                       labelKey="roleName"
+                       valueKey=roleId>
+            </SelectPop>
+          </DkFormItem>
+          <!--商品规格-->
+          <DkFormItem prop="商品规格" :data-type="this.$config.dataType.array" :label="'商品规格'">
+            <SelectPop v-model="formData.商品规格" :multiple="false" :options="List5" ref="roleIds"
+                       labelKey="roleName"
+                       valueKey=roleId>
+            </SelectPop>
+          </DkFormItem>
+          <!--辅助计量单位-->
+          <DkFormItem prop="辅助计量单位">
+            <InputPop ref="辅助计量单位" v-model="formData.辅助计量单位"/>
+          </DkFormItem>
+        </DkForm>
+      </DkPanel>
+      <DkPanel prop="仓库信息">
+        <DkForm slot="content" ref="formInline" v-model="formData" style="width: 95%" :labelMaxWords=5>
+          <!--初期仓库-->
+          <DkFormItem :required="true" prop="orgId" :data-type="$config.dataType.number" :label="'初期仓库'">
+            <SelectMagnifier v-model="formData.初期仓库" :display-text="formData.levelName"
+                             :type="this.$config.MagnifierType.初期仓库"
+                             :multiple="false"
+                             title="初期仓库"
+                             @ok="chooseHouse"></SelectMagnifier>
+          </DkFormItem>
+          <!--库存色号-->
+          <DkFormItem prop="库存色号">
+            <InputPop ref="库存色号" v-model="formData.库存色号"/>
+          </DkFormItem>
+          <!--期初数量-->
+          <DkFormItem prop="期初数量">
+            <InputPop ref="期初数量" v-model="formData.期初数量"/>
+          </DkFormItem>
+          <!--期初成本价-->
+          <DkFormItem prop="期初成本价">
+            <InputPop ref="期初成本价" v-model="formData.期初成本价"/>
+          </DkFormItem>
+        </DkForm>
+      </DkPanel>
+      <DkPanel prop="价格明细">
+        <DkForm slot="content" ref="formInline" v-model="formData" style="width: 95%" :labelMaxWords=5>
+          <!--采购价-->
+          <DkFormItem prop="采购价">
+            <InputPop ref="采购价" v-model="formData.采购价"/>
+          </DkFormItem>
+          <!--零售价-->
+          <DkFormItem prop="零售价">
+            <InputPop ref="零售价" v-model="formData.零售价"/>
+          </DkFormItem>
+          <!--批发价-->
+          <DkFormItem prop="批发价">
+            <InputPop ref="批发价" v-model="formData.批发价"/>
+          </DkFormItem>
+          <!--销售售价-->
+          <DkFormItem prop="销售售价">
+            <InputPop ref="销售售价" v-model="formData.销售售价"/>
+          </DkFormItem>
+        </DkForm>
+      </DkPanel>
+    </DkCollapse>
+
+    <!--      下部分按钮区域-->
+    <DkSaveButton ref="saveButton" :loading="loading" @save="save" @close="close"
+                  v-if="type !== 'edit-staff'"></DkSaveButton>
+  </div>
+</template>
+
+<script>
+import {formMixin} from "@/mixins/form";
+
+export default {
+  components: {},
+  mixins: [formMixin],
+
+  data() {
+    return {
+      List1: [
+        {
+          roleId: 1,
+          roleName: '蒙娜丽莎瓷砖'
+        },
+        {
+          roleId: 2,
+          roleName: '箭牌卫浴'
+        },
+        {
+          roleId: 3,
+          roleName: '恒洁位于'
+        },
+      ],
+      List2: [
+        {
+          roleId: 1,
+          roleName: '陶瓷类'
+        },
+        {
+          roleId: 2,
+          roleName: '浴室柜类'
+        },
+      ],
+      List3: [
+        {
+          roleId: 1,
+          roleName: '原木系列'
+        },
+        {
+          roleId: 2,
+          roleName: '金属系列'
+        },
+        {
+          roleId: 3,
+          roleName: '古典系列'
+        },
+        {
+          roleId: 4,
+          roleName: '沐浴系列'
+        },
+      ],
+      List4: [
+        {
+          roleId: 1,
+          roleName: '米'
+        },
+        {
+          roleId: 2,
+          roleName: '箱'
+        },
+        {
+          roleId: 3,
+          roleName: '平方米'
+        },
+        {
+          roleId: 4,
+          roleName: '个'
+        },
+      ],
+      List5:[
+        {
+          roleId: 1,
+          roleName: '800*800'
+        },
+        {
+          roleId: 2,
+          roleName: '300*800'
+        },
+        {
+          roleId: 3,
+          roleName: '600*600'
+        },
+      ],
+      formData: {
+        唯一编码: null,
+        商品型号: null,
+        商品名称: null,
+        商品品牌: null,
+        商品种类: null,
+        商品系列: null,
+        计量单位: null,
+        商品规格: null,
+        辅助计量单位: null,
+        初期仓库: null,
+        库存色号: null,
+        期初数量: null,
+        期初成本价: null,
+        采购价: null,
+        零售价: null,
+        批发价: null,
+        销售售价: null,
+        remarks: null,
+      },
+    }
+  },
+  methods: {
+    /**
+     * @desc   : 打开搜索重新计算表格高度
+     * @author : 周兴
+     * @date   : 2023/4/18 11:22
+     */
+    changeCollapse() {
+      setTimeout(() => {
+        this.resizeTable() // 重新计算表格高度
+      }, 300)
+    },
+  },
+}
+</script>
+
+<style scoped>
+
+</style>

+ 152 - 1
src/view/core/goods/index.vue

@@ -1,10 +1,161 @@
+<!-- @desc:商品档案  @auth:常皓宁  @time:2024-1-31 14:56 -->
 <template>
 <template>
+  <div class="main-div" ref="mainDiv">
+    <loading :loading="loading" v-if="!modalVisible"></loading>
+    <BaseIndexButtonGroup ref="BaseIndexButtonGroup" id="BaseIndexButtonGroup">
+      <template #left>
+        <!--    查询    -->
+        <BaseIndexButton ref="search" name="search"></BaseIndexButton>
+        <!--    清空条件    -->
+        <BaseIndexButton ref="clear" name="clear"></BaseIndexButton>
+        <!--    编辑    -->
+        <BaseIndexButton ref="edit" name="edit"></BaseIndexButton>
+        <!--    启用    -->
+        <BaseIndexButton ref="enable" name="enable"></BaseIndexButton>
+        <!--    停用    -->
+        <BaseIndexButton ref="disable" name="disable"></BaseIndexButton>
+      </template>
+      <template #right>
+        <!--   新建     -->
+        <BaseIndexButton ref="add" name="add"></BaseIndexButton>
+      </template>
+    </BaseIndexButtonGroup>
 
 
+    <!--  查询条件区域  -->
+    <div id="search-cond-div" ref="search-cond-div" class="search-cond-class">
+      <SearchCond ref="searchCond" v-model="searchCond"
+                  @collapse-change="collapseChange" :setFlag="false"
+                  :searchContent="searchContent"
+      ></SearchCond>
+    </div>
+
+    <!--  表格部分  -->
+    <div :style="'height: ' + (tableHeight + 30) + 'px'" class="split-div-class">
+      <DkSplit v-model="split">
+        <!-- 左边部分   -->
+        <div slot="left" class="split-pane">
+          <DkTree  :data="hgSpuCategoryList" :topCurrentFlag="true" style="margin-top: 5px" expandMode="one"
+                   id="categoryId" parent-id="parentId" tree-node-name="categoryName" :height="tableHeight"></DkTree>
+        </div>
+
+        <!-- 右边部分   -->
+        <DkTable slot="right" :id="'table-' + $options.name" ref="table-select" :data="tableData" :pageFlag="true"
+                 :page-total="pageInfo.total" :current-page="pageInfo.currentPage" :choose-flag="false"
+                 :height="this.tableHeight" primaryKey="typeId" @pageChange="pageSizeChange">
+          <DkTableColumn field="编码"></DkTableColumn>
+          <DkTableColumn field="名称"></DkTableColumn>
+          <DkTableColumn field="flgValid" type="switch" ></DkTableColumn>
+        </DkTable>
+      </DkSplit>
+    </div>
+  </div>
 </template>
 </template>
 
 
 <script>
 <script>
+import {indexMixin} from "@/mixins";
+
 export default {
 export default {
-  name: "index"
+  name: 'goods-attr',
+  mixins: [indexMixin],
+  data(){
+    let self = this
+    return{
+      split: 0.15,
+      minSplit: 0.15,
+      hgSpuCategoryList:[
+      ],
+      searchContent:
+        [
+          {
+            itemCode: '商品名称',
+          },
+          {
+            itemCode: '商品编码',
+          },
+          {
+            itemCode: '唯一编码',
+          },
+          {
+            itemCode: '商品品牌',
+          },
+        ],
+    }
+  },
+  methods:{
+    /**
+     * @desc   : 新建按钮点击事件
+     * @author : 常皓宁
+     * @date   : 2024/1/31 9:19
+     */
+    add() {
+      console.log('sdsdsds')
+      this.$router.push('/core/goods/add')
+    },
+
+  },
+  created() {
+    this.primaryKey = 'goodsId'  // 设置主键Id
+    this.routeObjName = 'goods'  // 设置路由名称
+  },
+  mounted() {
+    this.hgSpuCategoryList = [
+      {
+        categoryId:0,
+        categoryName:'全部分类',
+        parentId:null
+      },
+      {
+        categoryId:1,
+        categoryName:'智能一体机',
+        parentId:0
+      },
+      {
+        categoryId:2,
+        categoryName:'陶瓷坐便',
+        parentId:0
+      },
+      {
+        categoryId:3,
+        categoryName:'浴室柜',
+        parentId:0
+      },
+      {
+        categoryId:4,
+        categoryName:'定制浴室柜',
+        parentId:0
+      },
+      {
+        categoryId:5,
+        categoryName:'花洒',
+        parentId:0
+      },
+      {
+        categoryId:6,
+        categoryName:'淋浴房',
+        parentId:0
+      },
+      {
+        categoryId:7,
+        categoryName:'龙头类',
+        parentId:0
+      },
+      {
+        categoryId:8,
+        categoryName:'五金类',
+        parentId:0
+      },
+      {
+        categoryId:9,
+        categoryName:'浴缸',
+        parentId:0
+      },
+      {
+        categoryId:10,
+        categoryName:'配件',
+        parentId:0
+      },
+    ]
+  }
 }
 }
 </script>
 </script>
 
 

+ 248 - 1
src/view/fin/fundAccount/index.vue

@@ -1,10 +1,257 @@
+<!-- @desc:资金账户  @auth:常皓宁  @time:2024-2-1 13:47 -->
 <template>
 <template>
+  <div class="main-div" ref="mainDiv">
+    <loading :loading="loading" v-if="!modalVisible"></loading>
+    <BaseIndexButtonGroup ref="BaseIndexButtonGroup" id="BaseIndexButtonGroup">
+      <template #left>
+        <!--    查询    -->
+        <BaseIndexButton ref="search" name="search"></BaseIndexButton>
+        <!--    清空条件    -->
+        <BaseIndexButton ref="clear" name="clear"></BaseIndexButton>
+        <!--    编辑    -->
+        <BaseIndexButton ref="edit" name="edit"></BaseIndexButton>
+        <!--    启用    -->
+        <BaseIndexButton ref="enable" name="enable"></BaseIndexButton>
+        <!--    停用    -->
+        <BaseIndexButton ref="disable" name="disable"></BaseIndexButton>
+      </template>
+      <template #right>
+        <!--   新建     -->
+        <BaseIndexButton ref="add" name="add"></BaseIndexButton>
+      </template>
+    </BaseIndexButtonGroup>
 
 
+    <!--  查询条件区域  -->
+    <div id="search-cond-div" ref="search-cond-div" class="search-cond-class">
+      <SearchCond ref="searchCond" v-model="searchCond"
+                  @collapse-change="collapseChange" :setFlag="false"
+                  :searchContent="searchContent"
+      ></SearchCond>
+    </div>
+
+    <!--  表格部分  -->
+    <div :style="'height: ' + (tableHeight + 30) + 'px'" class="split-div-class">
+      <!-- 表格   -->
+      <DkTable :data="tableData" :page-flag="false" :page-total-flag="false" :height="tableHeight-20"
+               :tree-flag="true"
+               :choose-flag="false"
+               :expand-flag="true"
+               tree-row-field="fundAccountId"
+               ref="tree" name="table">
+        <DkTableColumn field="分类" min-width="150" tree-node></DkTableColumn>
+        <DkTableColumn field="金额"></DkTableColumn>
+      </DkTable>
+    </div>
+
+    <!--新建编辑-->
+    <DkModal
+      :loading="loading"
+      v-model="editAddModal"
+      ref="modal_editAdd"
+      @on-visible-change="handleVisibleModal"
+      @modalOk="save"
+      :saveFlag="true"
+      :title="modalTitle"
+    >
+      <DkForm ref="formInline" v-model="formData" :col-count="1">
+        <DkFormItem prop="分类" :required="true">
+          <SelectPop v-model="formData.分类" ref="分类" :multiple="false" :options="kindList"
+                     labelKey="kindName" valueKey="kindId">
+          </SelectPop>
+        </DkFormItem>
+        <DkFormItem prop="金额" :required="true">
+          <InputPop v-model="formData.金额"/>
+        </DkFormItem>
+      </DkForm>
+    </DkModal>
+
+  </div>
 </template>
 </template>
 
 
 <script>
 <script>
+import {indexMixin} from '@/mixins'
+
 export default {
 export default {
-name: "index"
+  name: 'fundAccount',
+  mixins: [indexMixin],
+  data() {
+    let self = this
+    return {
+      modalTitle: '',//新建编辑弹窗名称
+      submitType: '',//新建编辑提交类型
+      split: 0.15,
+      minSplit: 0.15,
+      tableData: [
+        {
+          fundAccountId: 99,
+          分类: '现金',
+          parentId: 0,
+          金额:'12,000.00'
+        },
+        {
+          fundAccountId: 1,
+          分类: '红星门店现金',
+          parentId: 99,
+          金额:'4,000.00'
+        },
+        {
+          fundAccountId: 2,
+          分类: '红星商城代收',
+          parentId: 99,
+          金额:'4,000.00'
+        },
+        {
+          fundAccountId: 3,
+          分类: '居然商城代收',
+          parentId: 99,
+          金额:'4,000.00'
+        },
+        {
+          fundAccountId: 98,
+          分类: '银行',
+          parentId: 0,
+          金额:'12,000.00'
+        },
+        {
+          fundAccountId: 1,
+          分类: '建行卡号0958',
+          parentId: 98,
+          金额:'6,000.00'
+        },
+        {
+          fundAccountId: 2,
+          分类: '工行卡号9888',
+          parentId: 98,
+          金额:'6,000.00'
+        },
+        {
+          fundAccountId: 97,
+          分类: '微信',
+          parentId: 0,
+          金额:'12,000.00'
+        },
+        {
+          fundAccountId: 1,
+          分类: '红星门店微信',
+          parentId: 97,
+          金额:'6,000.00'
+        },
+        {
+          fundAccountId: 2,
+          分类: '居然门店微信',
+          parentId: 97,
+          金额:'6,000.00'
+        },
+        {
+          fundAccountId: 96,
+          分类: '支付宝',
+          parentId: 0,
+          金额:'12,000.00'
+        },
+        {
+          fundAccountId: 1,
+          分类: '红星门店支付宝',
+          parentId: 96,
+          金额:'6,000.00'
+        },
+        {
+          fundAccountId: 2,
+          分类: '居然门店支付宝',
+          parentId: 96,
+          金额:'6,000.00'
+        },
+      ],
+      kindList: [
+        {
+          kindId: 1,
+          kindName: '现金',
+        },
+        {
+          kindId: 2,
+          kindName: '银行',
+        },
+        {
+          kindId: 3,
+          kindName: '微信',
+        },
+        {
+          kindId: 4,
+          kindName: '支付宝',
+        },
+      ],
+      formData: {
+        分类: '',
+        金额: '',
+      },
+      searchContent:
+        [
+          {
+            itemCode: '编码',
+          },
+          {
+            itemCode: '名称',
+          },
+        ],
+    }
+  },
+  methods: {
+    /**
+     * @desc   : 左侧列表行变化事件
+     * @author : 常皓宁
+     * @date   : 2024/1/31 9:03
+     */
+    currentChangeEvent({row}) {
+      if (row != null) {
+        let name = row.kindName
+        if (name == '商品品牌') {
+          this.tableData = this.test00
+        }
+        if (name == '商品种类') {
+          this.tableData = this.test01
+        }
+        if (name == '商品系列') {
+          this.tableData = this.test02
+        }
+        if (name == '计量单位') {
+          this.tableData = this.test03
+        }
+      }
+    },
+
+    /**
+     * @desc   : 新建按钮点击事件
+     * @author : 常皓宁
+     * @date   : 2024/1/31 9:19
+     */
+    add() {
+      this.modalTitle = this.setTitle(this.$config.formMode.add, '资金账户')
+      this.editAddModal = true
+    },
+
+    /**
+     * @desc   : 编辑按钮事件
+     * @author : 常皓宁
+     * @date   : 2024/1/31 10:35
+     */
+    edit(rows) {
+      this.modalTitle = this.setTitle(this.$config.formMode.edit, '资金账户')
+      console.log('rows', rows)
+      if (rows.length > 0) {
+        // this.detail(rows[0].typeId)
+        this.formData.名称 = rows[0].名称
+        this.formData.编码 = rows[0].编码
+        let row = this.$refs['leftTable'].$refs.table.getCurrentRecord()
+        if (row) {
+          this.formData.分类 = row.kindId
+        }
+      }
+      this.editAddModal = true
+    },
+  },
+  created() {
+    this.primaryKey = 'fundAccountId'  // 设置主键Id
+    this.routeObjName = 'fundAccount'  // 设置路由名称
+  }
 }
 }
 </script>
 </script>