From d1f08bfc65d459b893fb6d5134927e0c078d32e5 Mon Sep 17 00:00:00 2001 From: MrShi <1878285526@qq.com> Date: 星期五, 24 一月 2025 13:50:59 +0800 Subject: [PATCH] Merge branch '2.0.1' of http://139.186.142.91:10010/r/productDev/funingyunwei into 2.0.1 --- admin/src/views/stock/components/config.js | 12 +++--- h5/utils/config.js | 3 + admin/src/views/stock/components/OutEdit.vue | 11 +++-- admin/src/views/stock/components/AssetSel.vue | 11 ++++- admin/src/views/stock/components/InEdit.vue | 16 ++++--- admin/src/views/stock/record.vue | 40 +++++++++++++++++-- h5/manifest.json | 4 +- h5/pages/login.vue | 6 ++- 8 files changed, 73 insertions(+), 30 deletions(-) diff --git a/admin/src/views/stock/components/AssetSel.vue b/admin/src/views/stock/components/AssetSel.vue index a315d02..bb5d356 100644 --- a/admin/src/views/stock/components/AssetSel.vue +++ b/admin/src/views/stock/components/AssetSel.vue @@ -1,5 +1,5 @@ <template> - <GlobalWindow title="閫夋嫨鐗╂枡" :visible.sync="isShowModal" :confirm-working="isLoading" width="900px" @close="close" + <GlobalWindow title="閫夋嫨鐗╂枡" :visible.sync="isShowModal" :confirm-working="isLoading" width="1000px" @close="close" @confirm="confirm"> <el-form ref="searchForm" :model="searchForm" label-width="100px" inline> <el-form-item prop="code" label="鐗╂枡淇℃伅"> @@ -10,7 +10,8 @@ :options="cateList" :props="{ label: 'name', value: 'id', - children: 'childCategoryList' + children: 'childCategoryList', + checkStrictly: true }"></el-cascader> </el-form-item> <span> @@ -87,7 +88,7 @@ fn({ capacity: pagination.pageSize, page: pagination.page, - model: {...searchForm} + model: {...searchForm,status: 0} }).then((res) => { this.listLoading = false this.list = res.records @@ -120,6 +121,10 @@ changeSel(e) { if (e && e.length == 2) { this.$set(this.searchForm, 'cateId', e[1]) + this.$set(this.searchForm, 'parentCateId', '') + }else if((e && e.length == 1)){ + this.$set(this.searchForm, 'parentCateId', e[0]) + this.$set(this.searchForm, 'cateId', '') } else { this.$set(this.searchForm, 'cateId', '') } diff --git a/admin/src/views/stock/components/InEdit.vue b/admin/src/views/stock/components/InEdit.vue index b19d3a0..71441e5 100644 --- a/admin/src/views/stock/components/InEdit.vue +++ b/admin/src/views/stock/components/InEdit.vue @@ -1,5 +1,5 @@ <template> - <GlobalWindow title="鏂板缓鍏ュ簱鍗�" :visible.sync="isShowModal" :confirm-working="isLoading" width="900px" @close="close" + <GlobalWindow title="鏂板缓鍏ュ簱鍗�" :visible.sync="isShowModal" :confirm-working="isLoading" width="1000px" @close="close" @confirm="confirm"> <el-form :model="param" ref="form" :rules="rules"> <div class="df_ac"> @@ -37,13 +37,13 @@ <el-table-column prop="qrcode" label="鏉″舰鐮�" show-overflow-tooltip min-width="70px"></el-table-column> <el-table-column prop="brand" label="鍝佺墝" show-overflow-tooltip min-width="70px"></el-table-column> <el-table-column prop="unitName" label="鍗曚綅" show-overflow-tooltip min-width="70px"></el-table-column> - <el-table-column prop="dealUserName" label="鍏ュ簱鏁伴噺" min-width="90px"> + <el-table-column prop="dealUserName" label="鍏ュ簱鏁伴噺" min-width="100px"> <template v-slot="{ row }"> - <el-input oninput="value=value.replace(/^(0+)|[^\d]+/g, '').slice(0, 11)" v-model="row.stock" + <el-input oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" v-model="row.stock" class="w100"></el-input> </template> </el-table-column> - <el-table-column prop="maxStock" label="搴撳瓨鏁伴噺" show-overflow-tooltip min-width="80px"></el-table-column> + <!-- <el-table-column prop="maxStock" label="搴撳瓨鏁伴噺" show-overflow-tooltip min-width="80px"></el-table-column> --> <el-table-column label="鎿嶄綔" min-width="60px"> <template v-slot="scope"> <span @click="handleDel(scope)" class="red pointer">鍒犻櫎</span> @@ -62,6 +62,7 @@ import { ywOutinboundCreate } from '@/api/store/index' import { StoreTypeOps, rules } from './config' import { Message } from 'element-ui' +import dayjs from 'dayjs' export default { name: 'OperaCategoryWindow', components: { GlobalWindow, AssetSel }, @@ -69,7 +70,7 @@ return { // 琛ㄥ崟鏁版嵁 param: { - createUserName: this.$store.state.userInfo.username, + createUserName: this.$store.state.userInfo.realname || this.$store.state.userInfo.username, creator: this.$store.state.userInfo.id, inOut: 0 }, @@ -118,9 +119,9 @@ }) }, initData() { - getStoreList({ capacity: 9999, page: 1, model: {} }).then(res => { + this.$set(this.param, 'doneDate', dayjs().format('YYYY-MM-DD')) + getStoreList({ capacity: 9999, page: 1, model: {status: 0} }).then(res => { this.storeList = res.records || [] - }) }, changeSel(val) { @@ -130,6 +131,7 @@ if(index == -1){ item.materialId = item.id item.multifile = null + item.createDate = null this.list.push(item) } }) diff --git a/admin/src/views/stock/components/OutEdit.vue b/admin/src/views/stock/components/OutEdit.vue index dd12706..1447841 100644 --- a/admin/src/views/stock/components/OutEdit.vue +++ b/admin/src/views/stock/components/OutEdit.vue @@ -1,5 +1,5 @@ <template> - <GlobalWindow title="鏂板缓鍑哄簱鍗�" :visible.sync="isShowModal" :confirm-working="isLoading" width="900px" @close="close" + <GlobalWindow title="鏂板缓鍑哄簱鍗�" :visible.sync="isShowModal" :confirm-working="isLoading" width="1000px" @close="close" @confirm="confirm"> <el-form :model="param" ref="form" :rules="rules"> <div class="df_ac"> @@ -39,7 +39,7 @@ <el-table-column prop="unitName" label="鍗曚綅" show-overflow-tooltip min-width="70px"></el-table-column> <el-table-column prop="dealUserName" label="鍑哄簱鏁伴噺" min-width="90px"> <template v-slot="{ row }"> - <el-input oninput="value=value.replace(/^(0+)|[^\d]+/g, '').slice(0, 11)" v-model="row.stock" + <el-input oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" v-model="row.stock" class="w100"></el-input> </template> </el-table-column> @@ -62,6 +62,7 @@ import { ywOutinboundCreate } from '@/api/store/index' import { StoreTypeOps, rules } from './config' import { Message } from 'element-ui' +import dayjs from 'dayjs' export default { name: 'OperaCategoryWindow', components: { GlobalWindow, AssetSel }, @@ -69,7 +70,7 @@ return { // 琛ㄥ崟鏁版嵁 param: { - createUserName: this.$store.state.userInfo.username, + createUserName: this.$store.state.userInfo.realname || this.$store.state.userInfo.username, creator: this.$store.state.userInfo.id, inOut: 1 }, @@ -116,7 +117,8 @@ }) }, initData() { - getStoreList({ capacity: 9999, page: 1, model: {} }).then(res => { + this.$set(this.param, 'doneDate', dayjs().format('YYYY-MM-DD')) + getStoreList({ capacity: 9999, page: 1, model: {status: 0} }).then(res => { this.storeList = res.records || [] }) }, @@ -126,6 +128,7 @@ if(this.list.indexOf(item.id) === -1){ item.materialId = item.id item.stock = null + item.createDate = null this.list.push(item) } }) diff --git a/admin/src/views/stock/components/config.js b/admin/src/views/stock/components/config.js index 7b0333f..f03110b 100644 --- a/admin/src/views/stock/components/config.js +++ b/admin/src/views/stock/components/config.js @@ -1,15 +1,15 @@ export const StoreTypeOps = [ { name: '閲囪喘鍏ュ簱', id: 0, type: 0 }, { name: '棰嗙敤閫�鍥�', id: 1, type: 0 }, - { name: '璋冩暣鍏ュ簱', id: 2, type: 0 }, - { name: '鍏朵粬鍏ュ簱', id: 3, type: 0 }, - { name: '鐩樼泩鍏ュ簱', id: 4, type: 0 }, + { name: '搴撳瓨璋冩暣', id: 2, type: 0 }, + { name: '鍏跺畠鍏ュ簱', id: 3, type: 0 }, + // { name: '鐩樼泩鍏ュ簱', id: 4, type: 0 }, { name: '棰嗙敤鍑哄簱', id: 5, type: 1 }, - { name: '浠撳簱鍑哄簱', id: 6, type: 1 }, + { name: '浠撳簱鍑哄崟', id: 6, type: 1 }, { name: '璋冩暣鍑哄簱', id: 7, type: 1 }, { name: '閲囪喘鍑哄簱', id: 8, type: 1 }, - { name: '鍏朵粬鍑哄簱', id: 9, type: 1 }, - { name: '鐩樺嚭鍑哄簱', id: 10, type: 1 }, + { name: '鍏跺畠鍑哄簱', id: 9, type: 1 }, + // { name: '鐩樺嚭鍑哄簱', id: 10, type: 1 }, ] export const rules = { warehouseId: [{ required: true, message: '璇烽�夋嫨', trigger: 'blur' }], diff --git a/admin/src/views/stock/record.vue b/admin/src/views/stock/record.vue index 9969ac6..a508f51 100644 --- a/admin/src/views/stock/record.vue +++ b/admin/src/views/stock/record.vue @@ -20,13 +20,13 @@ </el-table-column> <el-table-column prop="param1" label="绫诲瀷" min-width="70" show-overflow-tooltip> <template v-slot="{ row }"> - <span v-if="row.type || row.type == 0">{{ StoreTypeOps[row.type] }}</span> + <span v-if="row.type || row.type == 0">{{ StoreTypeOps[row.type].name }}</span> </template> </el-table-column> <el-table-column prop="warehouseName" label="浠撳簱" min-width="90" show-overflow-tooltip /> - <el-table-column prop="code" label="鍗曟嵁缂栧彿" min-width="120" show-overflow-tooltip> + <el-table-column prop="code" label="鍗曟嵁缂栧彿" min-width="140"> <template v-slot="{ row }"> - <span class="primaryColor">{{ row.code }}</span> + <span class="primaryColor pointer" @click='detailClick(row)'>{{ row.code }}</span> </template> </el-table-column> <el-table-column prop="createUserName" label="鍒涘缓浜�" min-width="80" show-overflow-tooltip /> @@ -35,14 +35,21 @@ <div class="mt20"> <Pagination @size-change="handleSizeChange" @current-change="getList" :pagination="pagination" /> </div> + <!-- --> + <OutDetail v-if="isShowOutDetail" ref="OutDetailRef" /> + <InDetail v-if="isShowInDetail" ref="InDetailRef" /> </div> </template> <script> import Pagination from '@/components/common/Pagination' import QueryForm from '@/components/common/QueryForm' +import InDetail from './components/InDetail' +import OutDetail from './components/OutDetail.vue' + import dayjs from 'dayjs' import duration from 'dayjs/plugin/duration' + dayjs.extend(duration) import { ywOutinboundRecord, ywOutinboundRecordEx } from '@/api' import { fetchList as getStoreList } from '@/api/ywWarehouse' @@ -50,11 +57,15 @@ export default { components: { Pagination, - QueryForm + QueryForm, + InDetail, + OutDetail }, data() { return { loading: false, + isShowInDetail: false, + isShowOutDetail: false, pagination: { pageSize: 10, page: 1, @@ -119,6 +130,22 @@ } }) }, + detailClick(item) { + const index = item.code.indexOf('RK') + if(index > -1){ + this.isShowInDetail = true + this.$nextTick(() => { + this.$refs.InDetailRef.visible = true + this.$refs.InDetailRef.getDetail(item.outInBoundId) + }) + }else{ + this.isShowOutDetail = true + this.$nextTick(() => { + this.$refs.OutDetailRef.visible = true + this.$refs.OutDetailRef.getDetail(row.outInBoundId) + }) + } + }, handleEx() { this.$dialog.exportConfirm('纭瀵煎嚭鍚楋紵') .then(() => { @@ -162,12 +189,15 @@ filters.createDateStart = null filters.createDateEnd = null } + if(page){ + pagination.page = page + } ywOutinboundRecord({ model: { ...filters }, capacity: pagination.pageSize, - page: page || pagination.page, + page: pagination.page, }).then(res => { this.loading = false this.list = res.records || [] diff --git a/h5/manifest.json b/h5/manifest.json index 4f22dff..2ed6c9c 100644 --- a/h5/manifest.json +++ b/h5/manifest.json @@ -86,7 +86,7 @@ "quickapp" : {}, /* 灏忕▼搴忕壒鏈夌浉鍏� */ "mp-weixin" : { - "appid" : "wxcd2b89fd2ff065f8", + "appid" : "wx4d7c10bdec51942b", "setting" : { "urlCheck" : false, "es6" : true, @@ -121,7 +121,7 @@ }, // "base" : "/h5/" "devServer" : { - "open": false, + "open" : false, "port" : 8090, "historyApiFallback" : true, "disableHostCheck" : true, diff --git a/h5/pages/login.vue b/h5/pages/login.vue index 840eba8..ebe40f2 100644 --- a/h5/pages/login.vue +++ b/h5/pages/login.vue @@ -105,8 +105,10 @@ } }) } else { - let url = 'https://zhcg.fnwtzx.com/yunwei_h5' - const appID = 'wx95ac1efb67f0330d' + // let url = 'https://zhcg.fnwtzx.com/yunwei_h5' + // const appID = 'wx95ac1efb67f0330d' + let url = 'https://dmtest.ahapp.net/yunwei_h5' + const appID = 'wx4d7c10bdec51942b' let uri = encodeURIComponent(url) let authURL = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appID}&redirect_uri=${uri}&response_type=code&scope=snsapi_base#wechat_redirect` diff --git a/h5/utils/config.js b/h5/utils/config.js index 450773b..df81430 100644 --- a/h5/utils/config.js +++ b/h5/utils/config.js @@ -1,6 +1,7 @@ // export const baseUrl = 'gateway_interface/' // export const baseUrl = 'http://192.168.0.173/gateway_interface/' -export const baseUrl = 'https://zhcg.fnwtzx.com/gateway_interface/' +// export const baseUrl = 'https://zhcg.fnwtzx.com/gateway_interface/' +export const baseUrl = 'https://dmtest.ahapp.net/gateway_interface/' export const uploadAvatar = `${baseUrl}visitsAdmin/cloudService/web/public/uploadFtp.do` export const uploadUrl = `${baseUrl}visitsAdmin/cloudService/public/uploadBatch` -- Gitblit v1.9.3