From 47e3a50f0abea3f854d42c3cb16a8e2a73e446e2 Mon Sep 17 00:00:00 2001
From: zhy <luhan1008611>
Date: 星期四, 26 十月 2023 15:54:59 +0800
Subject: [PATCH] feat: 添加全部路由菜单
---
admin-web/src/views/stock/inventorycount/inventorytask/index.vue | 272 ++
admin-web/src/views/departmentitem/ledgerquy/itemQuy/edit.vue | 111
admin-web/src/views/stock/ledger/inventoryQuery/edit.vue | 111
admin-web/src/views/stock/ledger/ledgerQuery/edit.vue | 111
admin-web/src/views/departmentitem/itemret/retDetails/edit.vue | 111
admin-web/src/views/departmentitem/ledgerquy/ledQuy/edit.vue | 111
admin-web/src/views/departmentitem/itemscr/scrappDetails/index.vue | 280 ++
admin-web/src/views/stock/ledger/inventoryAlert/index.vue | 280 ++
admin-web/src/views/departmentitem/itemscr/scrapping/index.vue | 449 +++
admin-web/src/views/stock/inventorycount/inventorytask/edit.vue | 111
admin-web/src/views/departmentitem/itemret/retDetails/index.vue | 280 ++
admin-web/src/views/departmentitem/itemscr/scrappDetails/edit.vue | 111
admin-web/src/views/departmentitem/ledgerquy/itemQuy/index.vue | 280 ++
admin-web/src/views/stock/ledger/alertQuery/index.vue | 280 ++
admin-web/src/views/statisticalreport/itemReport/index.vue | 280 ++
admin-web/src/views/stock/ledger/inventoryQuery/index.vue | 280 ++
admin-web/src/views/departmentitem/itemret/returnNote/index.vue | 449 +++
admin-web/src/views/stock/inventorycount/exceptionDetails/index.vue | 272 ++
admin-web/src/views/stock/scrap/scrapDetails/edit.vue | 111
admin-web/src/views/departmentitem/itemdis/disDetails/index.vue | 280 ++
admin-web/src/views/departmentitem/ledgerquy/ledQuy/index.vue | 280 ++
admin-web/src/views/stock/ledger/ledgerQuery/index.vue | 280 ++
admin-web/src/views/departmentitem/itemdis/disDetails/edit.vue | 111
admin-web/src/views/stock/ledger/alertQuery/edit.vue | 111
admin-web/src/views/stock/inventorycount/exceptionDetails/edit.vue | 111
admin-web/src/views/stock/scrap/itemScrapping/index.vue | 449 +++
admin-web/src/views/stock/scrap/scrapDetails/index.vue | 280 ++
admin-web/src/views/stock/ledger/inventoryAlert/edit.vue | 111
admin-web/src/views/departmentitem/itemdis/distribution/index.vue | 449 +++
admin-web/src/views/statisticalreport/itemReport/edit.vue | 111
30 files changed, 6,863 insertions(+), 0 deletions(-)
diff --git a/admin-web/src/views/departmentitem/itemdis/disDetails/edit.vue b/admin-web/src/views/departmentitem/itemdis/disDetails/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/departmentitem/itemdis/disDetails/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/departmentitem/itemdis/disDetails/index.vue b/admin-web/src/views/departmentitem/itemdis/disDetails/index.vue
new file mode 100644
index 0000000..2936cd9
--- /dev/null
+++ b/admin-web/src/views/departmentitem/itemdis/disDetails/index.vue
@@ -0,0 +1,280 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'select',
+ dataIndex: 'status',
+ label: '绫诲瀷',
+ placeholder: '璇烽�夋嫨',
+ defaultValue: '1',
+ options: [
+ {
+ label: '鍚敤',
+ value: '1'
+ },
+ {
+ label: '绂佺敤',
+ value: '0'
+ }
+ ]
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '绫诲瀷', field: 'name', align: 'left',},
+ {title: '鍗曞彿', field: 'code', align: 'center'},
+ {title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center', },
+ {title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center', },
+ {title: '鍑哄叆搴撴暟閲�', field: 'summary', align: 'left',},
+ {title: '閲戦', field: 'summary', align: 'left',},
+ {title: '鎵�灞炴満鏋�', field: 'summary', align: 'left',},
+ {title: '鍒涘缓浜�', field: 'summary', align: 'left',},
+ {title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/departmentitem/itemdis/distribution/index.vue b/admin-web/src/views/departmentitem/itemdis/distribution/index.vue
new file mode 100644
index 0000000..ea1d5b0
--- /dev/null
+++ b/admin-web/src/views/departmentitem/itemdis/distribution/index.vue
@@ -0,0 +1,449 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-button name="鏂板" @click="addtable" site="form" />
+ <div :style="{'overflow-y': 'auto', height:`${clientHeight - 320}px`}">
+ <el-row class="card"
+ :gutter="5">
+ <el-col v-for="(item, index) in proData" :key="index" class="cm-item">
+ <el-card class="card-data">
+ <div class="card-container">
+ <div class="hed-one">鍑哄簱鍗曞彿锛歿{ item.order_no }}</div>
+ <div class="one-hed">
+ <div class="box"><span class="span-two">鏈烘瀯锛�</span>{{ item.customer_name }}</div>
+ <div class="box"><span class="span-two">鎿嶄綔浜猴細</span>{{ item.customer_name }}</div>
+ <div class="box"><span class="span-two">鍑哄簱鏃堕棿锛�</span>{{ item.customer_name }}</div>
+ </div>
+ <div class="card-end">
+ <div v-for="(just, index) in item.data" class="two-end">
+ <div class="item"><span>{{ just.order_no }}锛�</span>{{ just.customer_name }}</div>
+ </div>
+ </div>
+ </div>
+ <div class="card-but">
+ <my-button name="鏌ョ湅璇︽儏" site="form" />
+ <my-button name="瀵煎嚭鍑哄簱鍗�" site="form" />
+ </div>
+ </el-card>
+ </el-col>
+ </el-row>
+ </div>
+ <el-pagination
+ :small="false"
+ :current-page="1"
+ :page-sizes="[5, 10, 20, 50, 100, 200, 300, 400, 500]"
+ :page-size="10"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="0"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <el-dialog title="鏂板鍑哄簱" :close-on-click-modal="false" :visible.sync="adddialog" width="60%" >
+ <el-form ref="ruleForm" :model="formData" class="demo-ruleForm" label-width="100px">
+ <el-row :gutter="24" class="headerHeight">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="24" class="headerHeight">
+ <el-col :span="24">
+ <el-form-item label="鍑哄簱鎵嬬画" prop="name">
+ 浠呭厑璁稿鍏ls銆亁lsx鏍煎紡鏂囦欢
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <div style="position: relative;">
+ <div style="background-color: #F9F9F9;width: 90%;">
+ <el-row :gutter="24" class="">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="24" class="">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-table :data="formData.tableData" height="100%" :stripe="true">
+ <el-table-column prop="projectName" label="瑙勬牸鍨嬪彿" align="center"> </el-table-column>
+ <el-table-column prop="time1" label="鍗曚綅" align="center"> </el-table-column>
+ <el-table-column prop="unit" label="鐜版湁搴撳瓨" align="center"> </el-table-column>
+ <el-table-column prop="time2" label="鍑哄簱鏁伴噺" align="center"> </el-table-column>
+ </el-table>
+ </div>
+ <div style="position: absolute;right: 0;top: 152px;">
+ <my-button style="display: block;margin-left: 10px;margin-bottom: 5px;" name="绉婚櫎" site="form"/>
+ <my-button name="鏂板鐗╁搧" site="form"/>
+ </div>
+ </div>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="纭畾" site="form" />
+ <my-button name="鍙栨秷" site="form" @click="adddialog = false"/>
+ </div>
+ </el-dialog>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, myImport},
+ data() {
+ return {
+
+ adddialog: false,
+ formData:{
+ tableData:[
+ {
+ projectName:'555'
+ },
+ {
+ projectName:'444'
+ }
+ ],
+ },
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍑哄簱鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '鍙ā绯婃悳绱�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'date-picker',
+ dataIndex: 'val1',
+ label: '鍑哄簱鏃堕棿',
+ defaultValue: ''
+ },
+ {
+ type: 'date-picker',
+ dataIndex: 'val2',
+ label: '鑷�',
+ defaultValue: ''
+ },
+ // {
+ // type: 'select',
+ // dataIndex: 'status',
+ // label: '鐘舵��',
+ // placeholder: '璇烽�夋嫨',
+ // defaultValue: '1',
+ // options: [
+ // {
+ // label: '鍚敤',
+ // value: '1'
+ // },
+ // {
+ // label: '绂佺敤',
+ // value: '0'
+ // }
+ // ]
+ // }
+ ],
+ proData: [
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ }
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ }
+ },
+ computed: {
+ clientHeight () {
+ return document.documentElement.clientHeight
+ },
+ },
+ created() {
+ },
+ methods: {
+ handleSizeChange(){},
+ handleCurrentChange(){},
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+
+ addtable() {
+ this.adddialog = true
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ // this.$refs.myTable.search(pageNum)
+ } else {
+ // this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ console.log(params,'555');
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+.card {
+ display: flex;
+ flex-wrap: wrap;
+ margin: 0px !important;
+ .cm-item {
+ width: 100%;
+ }
+ .cm-item /deep/ .el-card__body {
+ padding: 10px;
+ }
+}
+.card-data{
+ margin-top: 8px;
+ .card-container{
+ display: inline-block;
+ width: 70%;
+ .hed-one{
+ color: #2298EE;
+ font-size: 18px;
+ }
+ .one-hed{
+ margin-top: 15px;
+ .box{
+ display: inline-block;
+ margin-right: 20px;
+ }
+ }
+ .span-two{
+ color: #83919e;
+ font-size: 14px;
+ }
+ .card-end{
+ font-size: 14px;
+ color: #3d3d3d;
+ margin-top: 15px;
+ display: flex;
+ flex-wrap: wrap;
+ .two-end{
+ width: calc(33.33% - 20px);
+ margin-bottom: 15px;
+ }
+ }
+
+ }
+ .card-but{
+ display: inline-block;
+ }
+ .end{
+ display: inline-block;
+ }
+
+}
+
+</style>
diff --git a/admin-web/src/views/departmentitem/itemret/retDetails/edit.vue b/admin-web/src/views/departmentitem/itemret/retDetails/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/departmentitem/itemret/retDetails/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/departmentitem/itemret/retDetails/index.vue b/admin-web/src/views/departmentitem/itemret/retDetails/index.vue
new file mode 100644
index 0000000..2936cd9
--- /dev/null
+++ b/admin-web/src/views/departmentitem/itemret/retDetails/index.vue
@@ -0,0 +1,280 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'select',
+ dataIndex: 'status',
+ label: '绫诲瀷',
+ placeholder: '璇烽�夋嫨',
+ defaultValue: '1',
+ options: [
+ {
+ label: '鍚敤',
+ value: '1'
+ },
+ {
+ label: '绂佺敤',
+ value: '0'
+ }
+ ]
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '绫诲瀷', field: 'name', align: 'left',},
+ {title: '鍗曞彿', field: 'code', align: 'center'},
+ {title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center', },
+ {title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center', },
+ {title: '鍑哄叆搴撴暟閲�', field: 'summary', align: 'left',},
+ {title: '閲戦', field: 'summary', align: 'left',},
+ {title: '鎵�灞炴満鏋�', field: 'summary', align: 'left',},
+ {title: '鍒涘缓浜�', field: 'summary', align: 'left',},
+ {title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/departmentitem/itemret/returnNote/index.vue b/admin-web/src/views/departmentitem/itemret/returnNote/index.vue
new file mode 100644
index 0000000..ea1d5b0
--- /dev/null
+++ b/admin-web/src/views/departmentitem/itemret/returnNote/index.vue
@@ -0,0 +1,449 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-button name="鏂板" @click="addtable" site="form" />
+ <div :style="{'overflow-y': 'auto', height:`${clientHeight - 320}px`}">
+ <el-row class="card"
+ :gutter="5">
+ <el-col v-for="(item, index) in proData" :key="index" class="cm-item">
+ <el-card class="card-data">
+ <div class="card-container">
+ <div class="hed-one">鍑哄簱鍗曞彿锛歿{ item.order_no }}</div>
+ <div class="one-hed">
+ <div class="box"><span class="span-two">鏈烘瀯锛�</span>{{ item.customer_name }}</div>
+ <div class="box"><span class="span-two">鎿嶄綔浜猴細</span>{{ item.customer_name }}</div>
+ <div class="box"><span class="span-two">鍑哄簱鏃堕棿锛�</span>{{ item.customer_name }}</div>
+ </div>
+ <div class="card-end">
+ <div v-for="(just, index) in item.data" class="two-end">
+ <div class="item"><span>{{ just.order_no }}锛�</span>{{ just.customer_name }}</div>
+ </div>
+ </div>
+ </div>
+ <div class="card-but">
+ <my-button name="鏌ョ湅璇︽儏" site="form" />
+ <my-button name="瀵煎嚭鍑哄簱鍗�" site="form" />
+ </div>
+ </el-card>
+ </el-col>
+ </el-row>
+ </div>
+ <el-pagination
+ :small="false"
+ :current-page="1"
+ :page-sizes="[5, 10, 20, 50, 100, 200, 300, 400, 500]"
+ :page-size="10"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="0"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <el-dialog title="鏂板鍑哄簱" :close-on-click-modal="false" :visible.sync="adddialog" width="60%" >
+ <el-form ref="ruleForm" :model="formData" class="demo-ruleForm" label-width="100px">
+ <el-row :gutter="24" class="headerHeight">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="24" class="headerHeight">
+ <el-col :span="24">
+ <el-form-item label="鍑哄簱鎵嬬画" prop="name">
+ 浠呭厑璁稿鍏ls銆亁lsx鏍煎紡鏂囦欢
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <div style="position: relative;">
+ <div style="background-color: #F9F9F9;width: 90%;">
+ <el-row :gutter="24" class="">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="24" class="">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-table :data="formData.tableData" height="100%" :stripe="true">
+ <el-table-column prop="projectName" label="瑙勬牸鍨嬪彿" align="center"> </el-table-column>
+ <el-table-column prop="time1" label="鍗曚綅" align="center"> </el-table-column>
+ <el-table-column prop="unit" label="鐜版湁搴撳瓨" align="center"> </el-table-column>
+ <el-table-column prop="time2" label="鍑哄簱鏁伴噺" align="center"> </el-table-column>
+ </el-table>
+ </div>
+ <div style="position: absolute;right: 0;top: 152px;">
+ <my-button style="display: block;margin-left: 10px;margin-bottom: 5px;" name="绉婚櫎" site="form"/>
+ <my-button name="鏂板鐗╁搧" site="form"/>
+ </div>
+ </div>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="纭畾" site="form" />
+ <my-button name="鍙栨秷" site="form" @click="adddialog = false"/>
+ </div>
+ </el-dialog>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, myImport},
+ data() {
+ return {
+
+ adddialog: false,
+ formData:{
+ tableData:[
+ {
+ projectName:'555'
+ },
+ {
+ projectName:'444'
+ }
+ ],
+ },
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍑哄簱鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '鍙ā绯婃悳绱�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'date-picker',
+ dataIndex: 'val1',
+ label: '鍑哄簱鏃堕棿',
+ defaultValue: ''
+ },
+ {
+ type: 'date-picker',
+ dataIndex: 'val2',
+ label: '鑷�',
+ defaultValue: ''
+ },
+ // {
+ // type: 'select',
+ // dataIndex: 'status',
+ // label: '鐘舵��',
+ // placeholder: '璇烽�夋嫨',
+ // defaultValue: '1',
+ // options: [
+ // {
+ // label: '鍚敤',
+ // value: '1'
+ // },
+ // {
+ // label: '绂佺敤',
+ // value: '0'
+ // }
+ // ]
+ // }
+ ],
+ proData: [
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ }
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ }
+ },
+ computed: {
+ clientHeight () {
+ return document.documentElement.clientHeight
+ },
+ },
+ created() {
+ },
+ methods: {
+ handleSizeChange(){},
+ handleCurrentChange(){},
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+
+ addtable() {
+ this.adddialog = true
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ // this.$refs.myTable.search(pageNum)
+ } else {
+ // this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ console.log(params,'555');
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+.card {
+ display: flex;
+ flex-wrap: wrap;
+ margin: 0px !important;
+ .cm-item {
+ width: 100%;
+ }
+ .cm-item /deep/ .el-card__body {
+ padding: 10px;
+ }
+}
+.card-data{
+ margin-top: 8px;
+ .card-container{
+ display: inline-block;
+ width: 70%;
+ .hed-one{
+ color: #2298EE;
+ font-size: 18px;
+ }
+ .one-hed{
+ margin-top: 15px;
+ .box{
+ display: inline-block;
+ margin-right: 20px;
+ }
+ }
+ .span-two{
+ color: #83919e;
+ font-size: 14px;
+ }
+ .card-end{
+ font-size: 14px;
+ color: #3d3d3d;
+ margin-top: 15px;
+ display: flex;
+ flex-wrap: wrap;
+ .two-end{
+ width: calc(33.33% - 20px);
+ margin-bottom: 15px;
+ }
+ }
+
+ }
+ .card-but{
+ display: inline-block;
+ }
+ .end{
+ display: inline-block;
+ }
+
+}
+
+</style>
diff --git a/admin-web/src/views/departmentitem/itemscr/scrappDetails/edit.vue b/admin-web/src/views/departmentitem/itemscr/scrappDetails/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/departmentitem/itemscr/scrappDetails/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/departmentitem/itemscr/scrappDetails/index.vue b/admin-web/src/views/departmentitem/itemscr/scrappDetails/index.vue
new file mode 100644
index 0000000..2936cd9
--- /dev/null
+++ b/admin-web/src/views/departmentitem/itemscr/scrappDetails/index.vue
@@ -0,0 +1,280 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'select',
+ dataIndex: 'status',
+ label: '绫诲瀷',
+ placeholder: '璇烽�夋嫨',
+ defaultValue: '1',
+ options: [
+ {
+ label: '鍚敤',
+ value: '1'
+ },
+ {
+ label: '绂佺敤',
+ value: '0'
+ }
+ ]
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '绫诲瀷', field: 'name', align: 'left',},
+ {title: '鍗曞彿', field: 'code', align: 'center'},
+ {title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center', },
+ {title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center', },
+ {title: '鍑哄叆搴撴暟閲�', field: 'summary', align: 'left',},
+ {title: '閲戦', field: 'summary', align: 'left',},
+ {title: '鎵�灞炴満鏋�', field: 'summary', align: 'left',},
+ {title: '鍒涘缓浜�', field: 'summary', align: 'left',},
+ {title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/departmentitem/itemscr/scrapping/index.vue b/admin-web/src/views/departmentitem/itemscr/scrapping/index.vue
new file mode 100644
index 0000000..ea1d5b0
--- /dev/null
+++ b/admin-web/src/views/departmentitem/itemscr/scrapping/index.vue
@@ -0,0 +1,449 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-button name="鏂板" @click="addtable" site="form" />
+ <div :style="{'overflow-y': 'auto', height:`${clientHeight - 320}px`}">
+ <el-row class="card"
+ :gutter="5">
+ <el-col v-for="(item, index) in proData" :key="index" class="cm-item">
+ <el-card class="card-data">
+ <div class="card-container">
+ <div class="hed-one">鍑哄簱鍗曞彿锛歿{ item.order_no }}</div>
+ <div class="one-hed">
+ <div class="box"><span class="span-two">鏈烘瀯锛�</span>{{ item.customer_name }}</div>
+ <div class="box"><span class="span-two">鎿嶄綔浜猴細</span>{{ item.customer_name }}</div>
+ <div class="box"><span class="span-two">鍑哄簱鏃堕棿锛�</span>{{ item.customer_name }}</div>
+ </div>
+ <div class="card-end">
+ <div v-for="(just, index) in item.data" class="two-end">
+ <div class="item"><span>{{ just.order_no }}锛�</span>{{ just.customer_name }}</div>
+ </div>
+ </div>
+ </div>
+ <div class="card-but">
+ <my-button name="鏌ョ湅璇︽儏" site="form" />
+ <my-button name="瀵煎嚭鍑哄簱鍗�" site="form" />
+ </div>
+ </el-card>
+ </el-col>
+ </el-row>
+ </div>
+ <el-pagination
+ :small="false"
+ :current-page="1"
+ :page-sizes="[5, 10, 20, 50, 100, 200, 300, 400, 500]"
+ :page-size="10"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="0"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <el-dialog title="鏂板鍑哄簱" :close-on-click-modal="false" :visible.sync="adddialog" width="60%" >
+ <el-form ref="ruleForm" :model="formData" class="demo-ruleForm" label-width="100px">
+ <el-row :gutter="24" class="headerHeight">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="24" class="headerHeight">
+ <el-col :span="24">
+ <el-form-item label="鍑哄簱鎵嬬画" prop="name">
+ 浠呭厑璁稿鍏ls銆亁lsx鏍煎紡鏂囦欢
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <div style="position: relative;">
+ <div style="background-color: #F9F9F9;width: 90%;">
+ <el-row :gutter="24" class="">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="24" class="">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-table :data="formData.tableData" height="100%" :stripe="true">
+ <el-table-column prop="projectName" label="瑙勬牸鍨嬪彿" align="center"> </el-table-column>
+ <el-table-column prop="time1" label="鍗曚綅" align="center"> </el-table-column>
+ <el-table-column prop="unit" label="鐜版湁搴撳瓨" align="center"> </el-table-column>
+ <el-table-column prop="time2" label="鍑哄簱鏁伴噺" align="center"> </el-table-column>
+ </el-table>
+ </div>
+ <div style="position: absolute;right: 0;top: 152px;">
+ <my-button style="display: block;margin-left: 10px;margin-bottom: 5px;" name="绉婚櫎" site="form"/>
+ <my-button name="鏂板鐗╁搧" site="form"/>
+ </div>
+ </div>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="纭畾" site="form" />
+ <my-button name="鍙栨秷" site="form" @click="adddialog = false"/>
+ </div>
+ </el-dialog>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, myImport},
+ data() {
+ return {
+
+ adddialog: false,
+ formData:{
+ tableData:[
+ {
+ projectName:'555'
+ },
+ {
+ projectName:'444'
+ }
+ ],
+ },
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍑哄簱鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '鍙ā绯婃悳绱�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'date-picker',
+ dataIndex: 'val1',
+ label: '鍑哄簱鏃堕棿',
+ defaultValue: ''
+ },
+ {
+ type: 'date-picker',
+ dataIndex: 'val2',
+ label: '鑷�',
+ defaultValue: ''
+ },
+ // {
+ // type: 'select',
+ // dataIndex: 'status',
+ // label: '鐘舵��',
+ // placeholder: '璇烽�夋嫨',
+ // defaultValue: '1',
+ // options: [
+ // {
+ // label: '鍚敤',
+ // value: '1'
+ // },
+ // {
+ // label: '绂佺敤',
+ // value: '0'
+ // }
+ // ]
+ // }
+ ],
+ proData: [
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ }
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ }
+ },
+ computed: {
+ clientHeight () {
+ return document.documentElement.clientHeight
+ },
+ },
+ created() {
+ },
+ methods: {
+ handleSizeChange(){},
+ handleCurrentChange(){},
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+
+ addtable() {
+ this.adddialog = true
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ // this.$refs.myTable.search(pageNum)
+ } else {
+ // this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ console.log(params,'555');
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+.card {
+ display: flex;
+ flex-wrap: wrap;
+ margin: 0px !important;
+ .cm-item {
+ width: 100%;
+ }
+ .cm-item /deep/ .el-card__body {
+ padding: 10px;
+ }
+}
+.card-data{
+ margin-top: 8px;
+ .card-container{
+ display: inline-block;
+ width: 70%;
+ .hed-one{
+ color: #2298EE;
+ font-size: 18px;
+ }
+ .one-hed{
+ margin-top: 15px;
+ .box{
+ display: inline-block;
+ margin-right: 20px;
+ }
+ }
+ .span-two{
+ color: #83919e;
+ font-size: 14px;
+ }
+ .card-end{
+ font-size: 14px;
+ color: #3d3d3d;
+ margin-top: 15px;
+ display: flex;
+ flex-wrap: wrap;
+ .two-end{
+ width: calc(33.33% - 20px);
+ margin-bottom: 15px;
+ }
+ }
+
+ }
+ .card-but{
+ display: inline-block;
+ }
+ .end{
+ display: inline-block;
+ }
+
+}
+
+</style>
diff --git a/admin-web/src/views/departmentitem/ledgerquy/itemQuy/edit.vue b/admin-web/src/views/departmentitem/ledgerquy/itemQuy/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/departmentitem/ledgerquy/itemQuy/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/departmentitem/ledgerquy/itemQuy/index.vue b/admin-web/src/views/departmentitem/ledgerquy/itemQuy/index.vue
new file mode 100644
index 0000000..2936cd9
--- /dev/null
+++ b/admin-web/src/views/departmentitem/ledgerquy/itemQuy/index.vue
@@ -0,0 +1,280 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'select',
+ dataIndex: 'status',
+ label: '绫诲瀷',
+ placeholder: '璇烽�夋嫨',
+ defaultValue: '1',
+ options: [
+ {
+ label: '鍚敤',
+ value: '1'
+ },
+ {
+ label: '绂佺敤',
+ value: '0'
+ }
+ ]
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '绫诲瀷', field: 'name', align: 'left',},
+ {title: '鍗曞彿', field: 'code', align: 'center'},
+ {title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center', },
+ {title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center', },
+ {title: '鍑哄叆搴撴暟閲�', field: 'summary', align: 'left',},
+ {title: '閲戦', field: 'summary', align: 'left',},
+ {title: '鎵�灞炴満鏋�', field: 'summary', align: 'left',},
+ {title: '鍒涘缓浜�', field: 'summary', align: 'left',},
+ {title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/departmentitem/ledgerquy/ledQuy/edit.vue b/admin-web/src/views/departmentitem/ledgerquy/ledQuy/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/departmentitem/ledgerquy/ledQuy/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/departmentitem/ledgerquy/ledQuy/index.vue b/admin-web/src/views/departmentitem/ledgerquy/ledQuy/index.vue
new file mode 100644
index 0000000..2936cd9
--- /dev/null
+++ b/admin-web/src/views/departmentitem/ledgerquy/ledQuy/index.vue
@@ -0,0 +1,280 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'select',
+ dataIndex: 'status',
+ label: '绫诲瀷',
+ placeholder: '璇烽�夋嫨',
+ defaultValue: '1',
+ options: [
+ {
+ label: '鍚敤',
+ value: '1'
+ },
+ {
+ label: '绂佺敤',
+ value: '0'
+ }
+ ]
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '绫诲瀷', field: 'name', align: 'left',},
+ {title: '鍗曞彿', field: 'code', align: 'center'},
+ {title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center', },
+ {title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center', },
+ {title: '鍑哄叆搴撴暟閲�', field: 'summary', align: 'left',},
+ {title: '閲戦', field: 'summary', align: 'left',},
+ {title: '鎵�灞炴満鏋�', field: 'summary', align: 'left',},
+ {title: '鍒涘缓浜�', field: 'summary', align: 'left',},
+ {title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/statisticalreport/itemReport/edit.vue b/admin-web/src/views/statisticalreport/itemReport/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/statisticalreport/itemReport/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/statisticalreport/itemReport/index.vue b/admin-web/src/views/statisticalreport/itemReport/index.vue
new file mode 100644
index 0000000..2936cd9
--- /dev/null
+++ b/admin-web/src/views/statisticalreport/itemReport/index.vue
@@ -0,0 +1,280 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'select',
+ dataIndex: 'status',
+ label: '绫诲瀷',
+ placeholder: '璇烽�夋嫨',
+ defaultValue: '1',
+ options: [
+ {
+ label: '鍚敤',
+ value: '1'
+ },
+ {
+ label: '绂佺敤',
+ value: '0'
+ }
+ ]
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '绫诲瀷', field: 'name', align: 'left',},
+ {title: '鍗曞彿', field: 'code', align: 'center'},
+ {title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center', },
+ {title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center', },
+ {title: '鍑哄叆搴撴暟閲�', field: 'summary', align: 'left',},
+ {title: '閲戦', field: 'summary', align: 'left',},
+ {title: '鎵�灞炴満鏋�', field: 'summary', align: 'left',},
+ {title: '鍒涘缓浜�', field: 'summary', align: 'left',},
+ {title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/stock/inventorycount/exceptionDetails/edit.vue b/admin-web/src/views/stock/inventorycount/exceptionDetails/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/stock/inventorycount/exceptionDetails/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/stock/inventorycount/exceptionDetails/index.vue b/admin-web/src/views/stock/inventorycount/exceptionDetails/index.vue
new file mode 100644
index 0000000..54f2d7d
--- /dev/null
+++ b/admin-web/src/views/stock/inventorycount/exceptionDetails/index.vue
@@ -0,0 +1,272 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐩樼偣鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ // {
+ // type: 'select',
+ // dataIndex: 'status',
+ // label: '绫诲瀷',
+ // placeholder: '璇烽�夋嫨',
+ // defaultValue: '1',
+ // options: [
+ // {
+ // label: '鍚敤',
+ // value: '1'
+ // },
+ // {
+ // label: '绂佺敤',
+ // value: '0'
+ // }
+ // ]
+ // },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '浠诲姟鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '鐩樼偣鍗曞彿', field: 'name', align: 'left',},
+ {title: '浠诲姟鍚嶇О', field: 'code', align: 'center'},
+ {title: '鐩樼偣浠撳簱', field: 'lv', align: 'center', },
+ {title: '鐩樼偣浜�', field: 'lv', align: 'center', },
+ {title: '鐩戠洏浜�', field: 'summary', align: 'left',},
+ {title: '鐩樼偣鏃堕棿', field: 'summary', align: 'left',},
+ {title: '鍒涘缓鏃堕棿', field: 'summary', align: 'left',},
+ {title: '鐘舵��', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/stock/inventorycount/inventorytask/edit.vue b/admin-web/src/views/stock/inventorycount/inventorytask/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/stock/inventorycount/inventorytask/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/stock/inventorycount/inventorytask/index.vue b/admin-web/src/views/stock/inventorycount/inventorytask/index.vue
new file mode 100644
index 0000000..54f2d7d
--- /dev/null
+++ b/admin-web/src/views/stock/inventorycount/inventorytask/index.vue
@@ -0,0 +1,272 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐩樼偣鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ // {
+ // type: 'select',
+ // dataIndex: 'status',
+ // label: '绫诲瀷',
+ // placeholder: '璇烽�夋嫨',
+ // defaultValue: '1',
+ // options: [
+ // {
+ // label: '鍚敤',
+ // value: '1'
+ // },
+ // {
+ // label: '绂佺敤',
+ // value: '0'
+ // }
+ // ]
+ // },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '浠诲姟鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '鐩樼偣鍗曞彿', field: 'name', align: 'left',},
+ {title: '浠诲姟鍚嶇О', field: 'code', align: 'center'},
+ {title: '鐩樼偣浠撳簱', field: 'lv', align: 'center', },
+ {title: '鐩樼偣浜�', field: 'lv', align: 'center', },
+ {title: '鐩戠洏浜�', field: 'summary', align: 'left',},
+ {title: '鐩樼偣鏃堕棿', field: 'summary', align: 'left',},
+ {title: '鍒涘缓鏃堕棿', field: 'summary', align: 'left',},
+ {title: '鐘舵��', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/stock/ledger/alertQuery/edit.vue b/admin-web/src/views/stock/ledger/alertQuery/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/stock/ledger/alertQuery/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/stock/ledger/alertQuery/index.vue b/admin-web/src/views/stock/ledger/alertQuery/index.vue
new file mode 100644
index 0000000..2936cd9
--- /dev/null
+++ b/admin-web/src/views/stock/ledger/alertQuery/index.vue
@@ -0,0 +1,280 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'select',
+ dataIndex: 'status',
+ label: '绫诲瀷',
+ placeholder: '璇烽�夋嫨',
+ defaultValue: '1',
+ options: [
+ {
+ label: '鍚敤',
+ value: '1'
+ },
+ {
+ label: '绂佺敤',
+ value: '0'
+ }
+ ]
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '绫诲瀷', field: 'name', align: 'left',},
+ {title: '鍗曞彿', field: 'code', align: 'center'},
+ {title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center', },
+ {title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center', },
+ {title: '鍑哄叆搴撴暟閲�', field: 'summary', align: 'left',},
+ {title: '閲戦', field: 'summary', align: 'left',},
+ {title: '鎵�灞炴満鏋�', field: 'summary', align: 'left',},
+ {title: '鍒涘缓浜�', field: 'summary', align: 'left',},
+ {title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/stock/ledger/inventoryAlert/edit.vue b/admin-web/src/views/stock/ledger/inventoryAlert/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/stock/ledger/inventoryAlert/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/stock/ledger/inventoryAlert/index.vue b/admin-web/src/views/stock/ledger/inventoryAlert/index.vue
new file mode 100644
index 0000000..2936cd9
--- /dev/null
+++ b/admin-web/src/views/stock/ledger/inventoryAlert/index.vue
@@ -0,0 +1,280 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'select',
+ dataIndex: 'status',
+ label: '绫诲瀷',
+ placeholder: '璇烽�夋嫨',
+ defaultValue: '1',
+ options: [
+ {
+ label: '鍚敤',
+ value: '1'
+ },
+ {
+ label: '绂佺敤',
+ value: '0'
+ }
+ ]
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '绫诲瀷', field: 'name', align: 'left',},
+ {title: '鍗曞彿', field: 'code', align: 'center'},
+ {title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center', },
+ {title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center', },
+ {title: '鍑哄叆搴撴暟閲�', field: 'summary', align: 'left',},
+ {title: '閲戦', field: 'summary', align: 'left',},
+ {title: '鎵�灞炴満鏋�', field: 'summary', align: 'left',},
+ {title: '鍒涘缓浜�', field: 'summary', align: 'left',},
+ {title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/stock/ledger/inventoryQuery/edit.vue b/admin-web/src/views/stock/ledger/inventoryQuery/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/stock/ledger/inventoryQuery/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/stock/ledger/inventoryQuery/index.vue b/admin-web/src/views/stock/ledger/inventoryQuery/index.vue
new file mode 100644
index 0000000..2936cd9
--- /dev/null
+++ b/admin-web/src/views/stock/ledger/inventoryQuery/index.vue
@@ -0,0 +1,280 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'select',
+ dataIndex: 'status',
+ label: '绫诲瀷',
+ placeholder: '璇烽�夋嫨',
+ defaultValue: '1',
+ options: [
+ {
+ label: '鍚敤',
+ value: '1'
+ },
+ {
+ label: '绂佺敤',
+ value: '0'
+ }
+ ]
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '绫诲瀷', field: 'name', align: 'left',},
+ {title: '鍗曞彿', field: 'code', align: 'center'},
+ {title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center', },
+ {title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center', },
+ {title: '鍑哄叆搴撴暟閲�', field: 'summary', align: 'left',},
+ {title: '閲戦', field: 'summary', align: 'left',},
+ {title: '鎵�灞炴満鏋�', field: 'summary', align: 'left',},
+ {title: '鍒涘缓浜�', field: 'summary', align: 'left',},
+ {title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/stock/ledger/ledgerQuery/edit.vue b/admin-web/src/views/stock/ledger/ledgerQuery/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/stock/ledger/ledgerQuery/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/stock/ledger/ledgerQuery/index.vue b/admin-web/src/views/stock/ledger/ledgerQuery/index.vue
new file mode 100644
index 0000000..2936cd9
--- /dev/null
+++ b/admin-web/src/views/stock/ledger/ledgerQuery/index.vue
@@ -0,0 +1,280 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'select',
+ dataIndex: 'status',
+ label: '绫诲瀷',
+ placeholder: '璇烽�夋嫨',
+ defaultValue: '1',
+ options: [
+ {
+ label: '鍚敤',
+ value: '1'
+ },
+ {
+ label: '绂佺敤',
+ value: '0'
+ }
+ ]
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '绫诲瀷', field: 'name', align: 'left',},
+ {title: '鍗曞彿', field: 'code', align: 'center'},
+ {title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center', },
+ {title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center', },
+ {title: '鍑哄叆搴撴暟閲�', field: 'summary', align: 'left',},
+ {title: '閲戦', field: 'summary', align: 'left',},
+ {title: '鎵�灞炴満鏋�', field: 'summary', align: 'left',},
+ {title: '鍒涘缓浜�', field: 'summary', align: 'left',},
+ {title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/admin-web/src/views/stock/scrap/itemScrapping/index.vue b/admin-web/src/views/stock/scrap/itemScrapping/index.vue
new file mode 100644
index 0000000..ea1d5b0
--- /dev/null
+++ b/admin-web/src/views/stock/scrap/itemScrapping/index.vue
@@ -0,0 +1,449 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-button name="鏂板" @click="addtable" site="form" />
+ <div :style="{'overflow-y': 'auto', height:`${clientHeight - 320}px`}">
+ <el-row class="card"
+ :gutter="5">
+ <el-col v-for="(item, index) in proData" :key="index" class="cm-item">
+ <el-card class="card-data">
+ <div class="card-container">
+ <div class="hed-one">鍑哄簱鍗曞彿锛歿{ item.order_no }}</div>
+ <div class="one-hed">
+ <div class="box"><span class="span-two">鏈烘瀯锛�</span>{{ item.customer_name }}</div>
+ <div class="box"><span class="span-two">鎿嶄綔浜猴細</span>{{ item.customer_name }}</div>
+ <div class="box"><span class="span-two">鍑哄簱鏃堕棿锛�</span>{{ item.customer_name }}</div>
+ </div>
+ <div class="card-end">
+ <div v-for="(just, index) in item.data" class="two-end">
+ <div class="item"><span>{{ just.order_no }}锛�</span>{{ just.customer_name }}</div>
+ </div>
+ </div>
+ </div>
+ <div class="card-but">
+ <my-button name="鏌ョ湅璇︽儏" site="form" />
+ <my-button name="瀵煎嚭鍑哄簱鍗�" site="form" />
+ </div>
+ </el-card>
+ </el-col>
+ </el-row>
+ </div>
+ <el-pagination
+ :small="false"
+ :current-page="1"
+ :page-sizes="[5, 10, 20, 50, 100, 200, 300, 400, 500]"
+ :page-size="10"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="0"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <el-dialog title="鏂板鍑哄簱" :close-on-click-modal="false" :visible.sync="adddialog" width="60%" >
+ <el-form ref="ruleForm" :model="formData" class="demo-ruleForm" label-width="100px">
+ <el-row :gutter="24" class="headerHeight">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="24" class="headerHeight">
+ <el-col :span="24">
+ <el-form-item label="鍑哄簱鎵嬬画" prop="name">
+ 浠呭厑璁稿鍏ls銆亁lsx鏍煎紡鏂囦欢
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <div style="position: relative;">
+ <div style="background-color: #F9F9F9;width: 90%;">
+ <el-row :gutter="24" class="">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="24" class="">
+ <el-col :span="12">
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-table :data="formData.tableData" height="100%" :stripe="true">
+ <el-table-column prop="projectName" label="瑙勬牸鍨嬪彿" align="center"> </el-table-column>
+ <el-table-column prop="time1" label="鍗曚綅" align="center"> </el-table-column>
+ <el-table-column prop="unit" label="鐜版湁搴撳瓨" align="center"> </el-table-column>
+ <el-table-column prop="time2" label="鍑哄簱鏁伴噺" align="center"> </el-table-column>
+ </el-table>
+ </div>
+ <div style="position: absolute;right: 0;top: 152px;">
+ <my-button style="display: block;margin-left: 10px;margin-bottom: 5px;" name="绉婚櫎" site="form"/>
+ <my-button name="鏂板鐗╁搧" site="form"/>
+ </div>
+ </div>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="纭畾" site="form" />
+ <my-button name="鍙栨秷" site="form" @click="adddialog = false"/>
+ </div>
+ </el-dialog>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, myImport},
+ data() {
+ return {
+
+ adddialog: false,
+ formData:{
+ tableData:[
+ {
+ projectName:'555'
+ },
+ {
+ projectName:'444'
+ }
+ ],
+ },
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍑哄簱鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '鍙ā绯婃悳绱�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'date-picker',
+ dataIndex: 'val1',
+ label: '鍑哄簱鏃堕棿',
+ defaultValue: ''
+ },
+ {
+ type: 'date-picker',
+ dataIndex: 'val2',
+ label: '鑷�',
+ defaultValue: ''
+ },
+ // {
+ // type: 'select',
+ // dataIndex: 'status',
+ // label: '鐘舵��',
+ // placeholder: '璇烽�夋嫨',
+ // defaultValue: '1',
+ // options: [
+ // {
+ // label: '鍚敤',
+ // value: '1'
+ // },
+ // {
+ // label: '绂佺敤',
+ // value: '0'
+ // }
+ // ]
+ // }
+ ],
+ proData: [
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ },
+ {
+ order_no:'55555',
+ customer_name:'666',
+ data:[
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'20浠�'
+ },
+ {
+ order_no:'鐭冲嫆鑺鑹茬⒊绮�',
+ customer_name:'666'
+ },
+ ]
+
+ }
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ }
+ },
+ computed: {
+ clientHeight () {
+ return document.documentElement.clientHeight
+ },
+ },
+ created() {
+ },
+ methods: {
+ handleSizeChange(){},
+ handleCurrentChange(){},
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+
+ addtable() {
+ this.adddialog = true
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ // this.$refs.myTable.search(pageNum)
+ } else {
+ // this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ console.log(params,'555');
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+.card {
+ display: flex;
+ flex-wrap: wrap;
+ margin: 0px !important;
+ .cm-item {
+ width: 100%;
+ }
+ .cm-item /deep/ .el-card__body {
+ padding: 10px;
+ }
+}
+.card-data{
+ margin-top: 8px;
+ .card-container{
+ display: inline-block;
+ width: 70%;
+ .hed-one{
+ color: #2298EE;
+ font-size: 18px;
+ }
+ .one-hed{
+ margin-top: 15px;
+ .box{
+ display: inline-block;
+ margin-right: 20px;
+ }
+ }
+ .span-two{
+ color: #83919e;
+ font-size: 14px;
+ }
+ .card-end{
+ font-size: 14px;
+ color: #3d3d3d;
+ margin-top: 15px;
+ display: flex;
+ flex-wrap: wrap;
+ .two-end{
+ width: calc(33.33% - 20px);
+ margin-bottom: 15px;
+ }
+ }
+
+ }
+ .card-but{
+ display: inline-block;
+ }
+ .end{
+ display: inline-block;
+ }
+
+}
+
+</style>
diff --git a/admin-web/src/views/stock/scrap/scrapDetails/edit.vue b/admin-web/src/views/stock/scrap/scrapDetails/edit.vue
new file mode 100644
index 0000000..37b0db9
--- /dev/null
+++ b/admin-web/src/views/stock/scrap/scrapDetails/edit.vue
@@ -0,0 +1,111 @@
+<template>
+ <win-sm :title="setting.title" @close="close" :width="'800px'">
+ <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
+ <el-form-item label="缂栧彿" prop="code">
+ <el-input disabled v-model="formData.code" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="浠撳簱鍚嶇О" prop="name">
+ <el-input v-model="formData.name" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鍦板潃" >
+ <el-input v-model="formData.adss" clearable maxlength="20" show-word-limit style="width: 100%"/>
+ </el-form-item>
+ <el-form-item label="鐘舵��" prop="status">
+ <el-switch
+ v-model="formData.status"
+ active-color="#0d997c"
+ inactive-color="#C0CCDA">
+ </el-switch>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" align="center" class="dialog-footer">
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
+ </div>
+ </win-sm>
+</template>
+
+<script>
+import winSm from '@/components/win/win-sm'
+import myButton from '@/components/myButton/myButton'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+
+export default {
+ components: {winSm, myButton},
+ props: {
+ setting: {
+ type: Object,
+ default: () => {
+ }
+ }
+ },
+ data() {
+ return {
+ checkAll: false,
+ checkedList: [],
+ formData: {
+ code: '',
+ name: '',
+ status: true,
+ summary: '',
+ },
+ rules: {
+ code: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}
+ ],
+ name: [
+ {required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}
+ ],
+ status: [
+ {required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}
+ ]
+ }
+ }
+ },
+ created() {
+ if(this.setting.info){
+ this.formData = Object.assign({},JSON.parse(this.setting.info))
+ }
+ },
+ methods: {
+ getEditInfo(id){
+
+ },
+ close() {
+ this.$emit('close')
+ },
+ save() {
+ this.$refs.ruleForm.validate((valid) => {
+ if (valid) {
+ const params = Object.assign({}, this.formData)
+ if(this.setting.id){
+ // 缂栬緫鎺ュ彛
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }else{
+ params.orgId = this.setting.orgId
+ finsystenant.add(params).then(res => {
+ if (res) {
+ this.$message.success('淇濆瓨鎴愬姛锛�')
+ this.close()
+ this.$emit('search')
+ } else {
+ this.$message.error('淇濆瓨澶辫触')
+ }
+ })
+ }
+ } else {
+ this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��')
+ }
+ })
+ }
+ }
+}
+</script>
diff --git a/admin-web/src/views/stock/scrap/scrapDetails/index.vue b/admin-web/src/views/stock/scrap/scrapDetails/index.vue
new file mode 100644
index 0000000..2936cd9
--- /dev/null
+++ b/admin-web/src/views/stock/scrap/scrapDetails/index.vue
@@ -0,0 +1,280 @@
+<template>
+ <div class="app-container">
+ <el-container>
+ <el-container>
+ <el-card class="box-card" style="width: 100%" shadow="never">
+ <!--鎼滅储鏉′欢-->
+ <div class="filter-container">
+ <my-search ref="searchBar" :items="items" @search="fifterForm"></my-search>
+ </div>
+ <el-row style="margin-top: 15px">
+ <el-col>
+ <!--鍒楄〃-->
+ <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
+ </el-col>
+ </el-row>
+ <!--娣诲姞/缂栬緫寮圭獥-->
+ <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+ </el-card>
+ </el-container>
+ </el-container>
+ <my-import
+ :import-setting="importSetting"
+ :dialog-show="importSetting.dialogShow"
+ :dialog-title="importSetting.dialogTitle"
+ />
+ </div>
+</template>
+
+<script>
+import MyTableV2 from "@/components/myTable/myTableV2";
+import MyButton from "@/components/myButton/myButton";
+import SettingIplatform from '@/utils/settingIplatform';
+import edit from './edit'
+import * as finsystenant from '@/api/baseSetting/finsystenant'
+import myImport from '@/views/components/myImport'
+import {getBaseUrl} from '@/utils/base';
+
+export default {
+ name: "index",
+ components: {MyButton, MyTableV2, edit, myImport},
+ data() {
+ return {
+ // 鎼滅储妗�
+ items: [
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍗曞彿',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'select',
+ dataIndex: 'status',
+ label: '绫诲瀷',
+ placeholder: '璇烽�夋嫨',
+ defaultValue: '1',
+ options: [
+ {
+ label: '鍚敤',
+ value: '1'
+ },
+ {
+ label: '绂佺敤',
+ value: '0'
+ }
+ ]
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鐗╁搧鍚嶇О',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ {
+ type: 'text',
+ dataIndex: 'name',
+ label: '鍒涘缓浜�',
+ placeholder: '璇疯緭鍏�',
+ defaultValue: ''
+ },
+ ],
+ // 鏍戞暟鎹�
+ treeDataList: [],
+ // 鎼滅储鏉′欢
+ filterFrom: {
+ tenantId: null,
+ userName: null,
+ userPhone: null,
+ status: 1
+ },
+ // 瀵煎叆
+ importSetting: {
+ dialogTitle: '瀵煎叆',
+ dialogShow: false,
+ fileSettings: {
+ data: {},
+ uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃
+ accept: '.xls', // 鏍煎紡
+ type: 'text', // 鍥炴樉褰㈠紡
+ loading: false // 瀵煎叆鏁堟灉
+ },
+ /* 妯℃澘涓嬭浇 */
+ templateSettings: {
+ templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О
+ templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃
+ },
+ onSuccess: null
+ },
+ editSetting: {
+ title: '',
+ id: '',
+ orgId: '',
+ show: false,
+ },
+ // 琛ㄦ牸鏁版嵁
+ table: {
+ showIndex: true, // 鏄惁鏄剧ず搴忓彿
+ expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
+ url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+ // 宸ュ叿鏉�
+ tools: {
+ columnsCtrl: {// 鍒楁帶鍒舵寜閽�
+ show: false
+ },
+ generalExport: {// 閫氱敤瀵煎嚭鎸夐挳
+ show: false
+ },
+ // 鑷畾涔夊伐鍏锋潯鎸夐挳
+ custom: [
+ ]
+ },
+ // 鍒椾俊鎭�
+ columns: [
+ {title: '绫诲瀷', field: 'name', align: 'left',},
+ {title: '鍗曞彿', field: 'code', align: 'center'},
+ {title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center', },
+ {title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center', },
+ {title: '鍑哄叆搴撴暟閲�', field: 'summary', align: 'left',},
+ {title: '閲戦', field: 'summary', align: 'left',},
+ {title: '鎵�灞炴満鏋�', field: 'summary', align: 'left',},
+ {title: '鍒涘缓浜�', field: 'summary', align: 'left',},
+ {title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left',},
+ ],
+ // 鎿嶄綔淇℃伅
+ operation: {
+ show: true, // 鏄剧ず鎿嶄綔鍒�
+ width: '150', // 鍒楀
+ attr: [
+ {
+ title: '璇︽儏',
+ events: (row) => {
+ this.showAudit(row);
+ },
+ },
+ ],
+ },
+ paging: {
+ show: true, // 鏄剧ず鍒嗛〉
+ // 鍒嗛〉淇℃伅
+ page: {
+ small: false,
+ pageNum: 1,
+ pageSize: 10,
+ total: 0
+ }
+ }
+ },
+ }
+ },
+ created() {
+ // 鑾峰彇鏈烘瀯鏍�
+ this.initTreeData()
+ },
+ methods: {
+ //瀵煎叆
+ importOrg() {
+ this.importSetting.dialogShow = true
+ this.importSetting.onSuccess = (response, callBack) => {
+ if (response.code===1){
+ this.$message.success(response.msg)
+ this.search(1)
+ }else{
+ this.$message.warning(response.msg)
+ }
+ callBack()
+ }
+ },
+ // 宸︿晶鏍戝垵濮嬪寲
+ initTreeData() {
+ finsystenant.getTree().then(res => {
+ const content = res || []
+ this.treeDataList.splice(0, this.treeDataList.length)
+ this.treeDataList = content
+ if (content.length > 0) {
+ this.importSetting.fileSettings.data = {pid: content[0].id}
+ }
+ })
+ },
+ updState(row) {
+ let vm = this
+ let text = row.status == 0 ? "鍚敤" : "绂佺敤";
+ vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () {
+ let params = Object.assign({}, row)
+ params.status = row.status == 1 ? 0 : 1
+ finsystenant.edit(params).then(res => {
+ if (res) {
+ row.status = row.status === 1 ? 0 : 1
+ vm.$modal.msgSuccess(text + "鎴愬姛");
+ vm.search()
+ }
+ })
+ })
+ },
+ del(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+ .then(function () {
+ finsystenant.del({id: row.id}).then((res) => {
+ });
+ })
+ .then((res) => {
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
+ this.search()
+ })
+ .catch(() => {
+ });
+ },
+ showAdd() {
+ // if (!this.editSetting.orgId) {
+ // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯')
+ // } else {
+ this.editSetting.id = null;
+ this.editSetting.info = null;
+ this.editSetting.title = '鏂板';
+ this.editSetting.show = true;
+ // }
+ },
+ showAudit(row) {
+ this.editSetting.id = row.id;
+ this.editSetting.info = JSON.stringify(row);
+ this.editSetting.title = '缂栬緫';
+ this.editSetting.show = true;
+ },
+ nodeClick(param) {
+ param = param || {}
+ this.p = Object.assign({}, {
+ id: param.id,
+ name: param.name
+ })
+ if (this.p.id != undefined && this.p.id != null) {
+ this.filterFrom.tenantId = this.p.id
+ this.editSetting.orgId = this.p.id
+ } else {
+ this.filterFrom.tenantId = null
+ this.editSetting.orgId = null
+ }
+ this.importSetting.fileSettings.data = {pid: param.id}
+ this.search(1)
+ },
+ // 鏌ヨtable鍒楄〃
+ search(pageNum) {
+ if (pageNum != undefined) {
+ this.$refs.myTable.search(pageNum)
+ } else {
+ this.$refs.myTable.search()
+ }
+ },
+ fifterForm(params) {
+ this.filterFrom = Object.assign(this.filterFrom, params)
+ this.search(1)
+ }
+ }
+}
+</script>
+
+<style scoped>
+
+</style>
--
Gitblit v1.9.1