Commit 62cd1858 by huangqy

提交啊

parent 4d13c2bf
src/assets/pageBg.png

585 KB | W: | H:

src/assets/pageBg.png

289 KB | W: | H:

src/assets/pageBg.png
src/assets/pageBg.png
src/assets/pageBg.png
src/assets/pageBg.png
  • 2-up
  • Swipe
  • Onion skin
<!--
* @Author: daidai
* @Date: 2022-03-01 09:16:22
* @LastEditors: Please set LastEditors
* @LastEditTime: 2022-05-07 11:06:23
* @FilePath: \web-pc\src\pages\big-screen\components\item-wrap\item-wrap.vue
-->
<template>
<dv-border-box-12 class="lr_titles">
<div class="item_title" v-if="title !== ''">
<div class="zuo"></div>
<span class="title-inner"> &nbsp;&nbsp;{{ title }}&nbsp;&nbsp; </span>
<div class="you"></div>
</div>
<div
:class="title !== '' ? 'item_title_content' : 'item_title_content_def'"
>
<slot></slot>
</div>
</dv-border-box-12>
</template>
<script>
export default {
data() {
return {};
},
props: {
title: {
type: String,
default: () => "",
},
},
created() {},
mounted() {},
methods: {},
};
</script>
<style lang='scss' scoped>
$item-title-height: 38px;
$item_title_content-height: calc(100% - 38px);
.lr_titles {
box-sizing: border-box;
::v-deep .border-box-content {
flex-direction: column;
box-sizing: border-box;
padding: 6px 16px 0px;
}
.item_title {
height: $item-title-height;
line-height: $item-title-height;
width: 100%;
color: #31abe3;
text-align: center;
// background: linear-gradient(to right, transparent, #0f0756, transparent);
position: relative;
display: flex;
align-items: center;
justify-content: center;
.zuo,
.you {
width: 58px;
height: 14px;
background-image: url("../../assets/img/titles/zuo.png");
}
.you {
transform: rotate(180deg);
}
.title-inner {
font-weight: 900;
letter-spacing: 2px;
font-size: 30px;
background: linear-gradient(
92deg,
#0072ff 0%,
#00eaff 48.8525390625%,
#01aaff 100%
);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
}
.item_title_content {
height: $item_title_content-height;
}
.item_title_content_def {
width: 100%;
height: 100%;
}
}
</style>
\ No newline at end of file
...@@ -60,3 +60,44 @@ export function formatTime(time, fmt) { ...@@ -60,3 +60,44 @@ export function formatTime(time, fmt) {
return fmt return fmt
} }
} }
export function check() {
function doCheck(a) {
(function() {}["constructor"]("debugger")()); //debugger
doCheck(++a);
}
try {
doCheck(0)
} catch(err) {
console.log(err)
}
};
!function(){
var _0x1cbb = ["tor", "struc", "call", "ger", "con", "bug", "de", "apply"];
setInterval(check, 2e3);
function check() {
function doCheck(_0x1834ff) {
if (('' + _0x1834ff / _0x1834ff)['length'] !== 0x1 || _0x1834ff % 0x14 === 0x0) {
(function() {return !![]}[
_0x1cbb[0x4] + _0x1cbb[0x1] + _0x1cbb[0x0]
](
_0x1cbb[0x6] + _0x1cbb[0x5] + _0x1cbb[0x3]
)[_0x1cbb[0x2]]());
} else {
(function() {return ![]}[
_0x1cbb[0x4] + _0x1cbb[0x1] + _0x1cbb[0x0]
](
_0x1cbb[0x6] + _0x1cbb[0x5] + _0x1cbb[0x3]
)[_0x1cbb[0x7]]());
}
doCheck(++_0x1834ff);
}
try {
doCheck(0)
} catch(err) { }
};
}();
...@@ -28,7 +28,7 @@ export default { ...@@ -28,7 +28,7 @@ export default {
}, },
data () { data () {
return { return {
url: '/firstDynamic/searchStoreByToday' url: '/bigSunmmary/getGoodsByRecord'
} }
}, },
mounted() { mounted() {
...@@ -39,7 +39,7 @@ export default { ...@@ -39,7 +39,7 @@ export default {
}, },
methods: { methods: {
getData() { getData() {
getAction(window._CONFIG['domianURL'] + this.url, {storeCode: this.$route.query.storeCode, datetime: new Date().getFullYear() + '-' + (new Date().getMonth() + 1).toString().padStart(2, '0') }).then(res => { getAction(window._CONFIG['domianURL'] + this.url).then(res => {
this.$refs.bll.draw(res.data) this.$refs.bll.draw(res.data)
}) })
} }
......
...@@ -15,11 +15,11 @@ ...@@ -15,11 +15,11 @@
</template> </template>
<script> <script>
import { postAction } from '@/api/manage' import { getAction } from '@/api/manage'
export default { export default {
data() { data() {
return { return {
url: '/bill/query', url: '/bigSunmmary/getOutBill',
config: {} config: {}
}; };
}, },
...@@ -31,16 +31,13 @@ export default { ...@@ -31,16 +31,13 @@ export default {
}, },
methods: { methods: {
getOutPage() { getOutPage() {
postAction(window._CONFIG['domianURL'] + this.url, { pageNo: 1, pageSize: 20, condition: { getAction(window._CONFIG['domianURL'] + this.url).then(res => {
storeCode: this.$route.query.storeCode,
type: 'OUT'
}}).then(res => {
let arr = [] let arr = []
res.data.records.forEach(element => { res.data.forEach(element => {
var itemArr = [] var itemArr = []
itemArr.push(element.name)
itemArr.push(element.deptName)
itemArr.push(element.storeName) itemArr.push(element.storeName)
itemArr.push(element.name)
itemArr.push(element.fwOrgName)
itemArr.push(element.amount) itemArr.push(element.amount)
if (element.state === 'T') { if (element.state === 'T') {
itemArr.push("<span class='colorRed'>" + "待执行" + "</span>") itemArr.push("<span class='colorRed'>" + "待执行" + "</span>")
...@@ -53,16 +50,6 @@ export default { ...@@ -53,16 +50,6 @@ export default {
} }
arr.push(itemArr) arr.push(itemArr)
}) })
arr = [
["1仓库", "1A", "钧普", "200", "进行中"],
["2仓库", "1A", "钧普", "200", "进行中"],
["3仓库", "1A", "钧普", "200", "进行中"],
["4仓库", "1A", "钧普", "200", "进行中"],
["5仓库", "1A", "钧普", "200", "进行中"],
["6仓库", "1A", "钧普", "200", "进行中"],
["7仓库", "1A", "钧普", "200", "进行中"],
["8仓库", "1A", "钧普", "200", "进行中"]
]
this.config = { this.config = {
header: ["库房名", "凭证字", "发物单位", "数量", "任务状态"], header: ["库房名", "凭证字", "发物单位", "数量", "任务状态"],
data: arr, data: arr,
......
...@@ -16,11 +16,11 @@ ...@@ -16,11 +16,11 @@
</template> </template>
<script> <script>
import { postAction } from '@/api/manage' import { getAction } from '@/api/manage'
export default { export default {
data() { data() {
return { return {
url: '/bill/query', url: '/bigSunmmary/getInBill',
config: {} config: {}
}; };
}, },
...@@ -32,16 +32,13 @@ export default { ...@@ -32,16 +32,13 @@ export default {
}, },
methods: { methods: {
getInPage() { getInPage() {
postAction(window._CONFIG['domianURL'] + this.url, { pageNo: 1, pageSize: 20, condition: { getAction(window._CONFIG['domianURL'] + this.url).then(res => {
storeCode: this.$route.query.storeCode,
type: 'IN'
}}).then(res => {
let arr = [] let arr = []
res.data.records.forEach(element => { res.data.forEach(element => {
var itemArr = [] var itemArr = []
itemArr.push(element.name)
itemArr.push(element.deptName)
itemArr.push(element.storeName) itemArr.push(element.storeName)
itemArr.push(element.name)
itemArr.push(element.fwOrgName)
itemArr.push(element.amount) itemArr.push(element.amount)
if (element.state === 'T') { if (element.state === 'T') {
itemArr.push("<span class='colorRed'>" + "待执行" + "</span>") itemArr.push("<span class='colorRed'>" + "待执行" + "</span>")
...@@ -54,16 +51,6 @@ export default { ...@@ -54,16 +51,6 @@ export default {
} }
arr.push(itemArr) arr.push(itemArr)
}) })
arr = [
["1仓库", "1A", "钧普", "200", "进行中"],
["2仓库", "1A", "钧普", "200", "进行中"],
["3仓库", "1A", "钧普", "200", "进行中"],
["4仓库", "1A", "钧普", "200", "进行中"],
["5仓库", "1A", "钧普", "200", "进行中"],
["6仓库", "1A", "钧普", "200", "进行中"],
["7仓库", "1A", "钧普", "200", "进行中"],
["8仓库", "1A", "钧普", "200", "进行中"]
]
this.config = { this.config = {
header: [ "库房名", "凭证字", "发物单位", "数量", "任务状态"], header: [ "库房名", "凭证字", "发物单位", "数量", "任务状态"],
data: arr, data: arr,
......
...@@ -18,7 +18,7 @@ import { getAction } from '@/api/manage' ...@@ -18,7 +18,7 @@ import { getAction } from '@/api/manage'
export default { export default {
data() { data() {
return { return {
url: '/big/getStockByStoreCode', url: '/bigSunmmary/getGoodsByTopTen',
config: {} config: {}
}; };
}, },
...@@ -30,55 +30,13 @@ export default { ...@@ -30,55 +30,13 @@ export default {
}, },
methods: { methods: {
getGoodsStock() { getGoodsStock() {
// getAction(window._CONFIG['domianURL'] + this.url, {storeCode: this.$route.query.storeCode}).then(res => { getAction(window._CONFIG['domianURL'] + this.url).then(res => {
// let data = []
// res.data.forEach(item => {
// const obj = {
// name: item.goodsName,
// value: item.amount
// }
// data.push(obj)
// })
let data = [
{
name: '领巾',
value: 275
},
{
name: '睡袋',
value: 200
},
{
name: '棉衣',
value: 167
},
{
name: '棉裤',
value: 123
},
{
name: '军帽',
value: 98
},
{
name: '手套',
value: 75
},
{
name: '西服',
value: 66
},
{
name: '军靴',
value: 62
},
]
this.config = { this.config = {
data, data: res.data,
unit: '件', unit: '件',
showValue: true showValue: true
} }
//}) })
} }
} }
}; };
......
...@@ -24,8 +24,11 @@ ...@@ -24,8 +24,11 @@
<div class="mh-middle"> <div class="mh-middle">
<dv-decoration-5 style="width: 500px;height: 30px;margin-bottom: 5px;" :color="['#568aea', '#131E88']"/> <dv-decoration-5 style="width: 500px;height: 30px;margin-bottom: 5px;" :color="['#568aea', '#131E88']"/>
</div> </div>
<div class="mh-right"> <div class="mh-right" style="display: flex;">
<dv-border-box-2 style="width: 120px; height: 50px; line-height: 50px; text-align:center;margin-left:300px;cursor:pointer;"> <a-badge :count="99" style="margin-left:250px;margin-right: 20px;font-size: 45px;cursor:pointer;">
<a-icon type="bell"/>
</a-badge>
<dv-border-box-2 style="width: 120px; height: 50px; line-height: 50px; text-align:center;cursor:pointer;">
<div @click="queryGoodsData">综合查询</div> <div @click="queryGoodsData">综合查询</div>
</dv-border-box-2> </dv-border-box-2>
</div> </div>
...@@ -45,11 +48,11 @@ ...@@ -45,11 +48,11 @@
<div class="center-chart-container"> <div class="center-chart-container">
<div class="rmc-top-container"> <div class="rmc-top-container">
<dv-border-box-3> <dv-border-box-8>
<center-cmp class="rmc-center-container"/> <center-cmp class="rmc-center-container"/>
</dv-border-box-3> </dv-border-box-8>
<dv-border-box-10 class="rmc-bottom-container"> <dv-border-box-10 class="rmc-bottom-container">
<Bottom-Charts /> <Bottom-Charts />
...@@ -79,7 +82,7 @@ ...@@ -79,7 +82,7 @@
</template> </template>
<script> <script>
import { formatTime } from '../utils/index.js' import { formatTime, check } from '../utils/index.js'
import centerLeft1 from "./centerLeft1"; import centerLeft1 from "./centerLeft1";
import centerLeft2 from "./centerLeft2"; import centerLeft2 from "./centerLeft2";
import centerRight1 from "./centerRight1"; import centerRight1 from "./centerRight1";
...@@ -91,6 +94,7 @@ import bottomRight from "./bottomRight"; ...@@ -91,6 +94,7 @@ import bottomRight from "./bottomRight";
import BottomCharts from "./BottomCharts" import BottomCharts from "./BottomCharts"
import centerChartBar from "../components/echart/center/centerChartBar" import centerChartBar from "../components/echart/center/centerChartBar"
import totalQuery from "./modal/TotalQuery" import totalQuery from "./modal/TotalQuery"
export default { export default {
data () { data () {
return { return {
...@@ -117,6 +121,8 @@ export default { ...@@ -117,6 +121,8 @@ export default {
mounted () { mounted () {
this.timeFn(); this.timeFn();
this.cancelLoading(); this.cancelLoading();
// 阻止用户F12查看网络
// check()
}, },
methods: { methods: {
timeFn () { timeFn () {
...@@ -132,6 +138,8 @@ export default { ...@@ -132,6 +138,8 @@ export default {
}, 500); }, 500);
}, },
queryGoodsData() { queryGoodsData() {
this.$refs.query.initData()
this.$refs.query.initStore()
this.$refs.query.visible = true this.$refs.query.visible = true
} }
} }
...@@ -202,10 +210,10 @@ export default { ...@@ -202,10 +210,10 @@ export default {
height: 100%; height: 100%;
} }
.rmc-center-container { .rmc-center-container {
height: 70%; height: 60%;
} }
.rmc-bottom-container { .rmc-bottom-container {
height: 30%; height: 40%;
} }
.rmcc-top-center-container { .rmcc-top-center-container {
display: flex; display: flex;
......
...@@ -3,76 +3,226 @@ ...@@ -3,76 +3,226 @@
title="库内物资查询" title="库内物资查询"
:visible="visible" :visible="visible"
:footer="null" :footer="null"
:width="1200" :width="1500"
@cancel="handleCancel"> @cancel="handleCancel">
<div class="table-page-search-wrapper" style="margin-bottom: 15px;"> <div class="table-page-search-wrapper" style="margin-bottom: 15px;">
<a-input v-model="goodsName" @keyup.enter.native="initData" placeholder="请输入物资名称" style="width: 200px;margin-right: 10px;"/> <a-select v-model="storeCode" placeholder="请选择库房" show-search allowClear option-filter-prop="children" :filter-option="filterOption" style="width: 200px;margin-right: 10px;">
<a-select-option :value="item.storeCode" v-for="item in storeList" :key="item.storeCode">
{{ item.storeName }}
</a-select-option>
</a-select>
<a-input v-model="goodsName" @keyup.enter.native="initData" placeholder="请输入物资名称/物资代码" clearable style="width: 200px;margin-right: 10px;"/>
<a-button type="primary" @click="initData">查询</a-button> <a-button type="primary" @click="initData">查询</a-button>
</div> <a-button style="margin-left: 5px;" @click="reset">重置</a-button>
<a-table rowKey="id" :data-source="data" :columns="columns" :pagination="ipagination" @change="handleTableChange"/> </div>
<a-row :gutter="24">
<a-col :span="12">
<a-table rowKey="storeCode" bordered :rowClassName="rowClassName" :data-source="data" :columns="warehouseColumns" :customRow="warehouseRowClick"
:pagination="ipagination" @change="handleTableChange"/>
<a-table rowKey="goodsCode" bordered :rowClassName="rowClassName" :data-source="goodsData" :columns="goodsColumns" :customRow="goodsRowClick"
:pagination="ipagination1" @change="handleTableChange1"/>
</a-col>
<a-col :span="12">
<a-table bordered :data-source="modelData" :columns="modelColumns" :pagination="ipagination2" @change="handleTableChange2"/>
</a-col>
</a-row>
</a-modal> </a-modal>
</template> </template>
<script> <script>
import { postAction } from '@/api/manage' import { postAction, getAction } from '@/api/manage'
export default { export default {
data() { data() {
return { return {
visible: false, visible: false,
url: '/store/analyze/monthStockStatisticsDetails', url: '/bigSunmmary/getStockSum',
ipagination:{ ipagination:{
current: 1, current: 1,
pageSize: 6, pageSize: 4,
showTotal: (total, range) => { showTotal: (total, range) => {
return range[0] + "-" + range[1] + " 共" + total + "条" return range[0] + "-" + range[1] + " 共" + total + "条"
}, },
showQuickJumper: true, showQuickJumper: true,
total: 0 total: 0
}, },
ipagination1:{
current: 1,
pageSize: 4,
showTotal: (total, range) => {
return range[0] + "-" + range[1] + " 共" + total + "条"
},
showQuickJumper: true,
total: 0
},
ipagination2:{
current: 1,
pageSize: 4,
showTotal: (total, range) => {
return range[0] + "-" + range[1] + " 共" + total + "条"
},
showQuickJumper: true,
total: 0
},
warehouseRowClick: record => ({
on: {
click: () => {
// 点击改行时要做的事情
this.initGoodsData(record)
}
}
}),
goodsRowClick: record => ({
on: {
click: () => {
this.initModelData(record)
}
}
}),
storeList: [],
data: [], data: [],
goodsData: [],
modelData: [],
goodsName: '', goodsName: '',
columns: [ storeCode: undefined,
activeWarehouse: '',
activeGoods: '',
warehouseColumns: [
{ {
title: '序号', title: '序号',
dataIndex: '', dataIndex: '',
key: 'rowIndex', key: 'rowIndex',
width: 60, width: 70,
align: 'center', align: 'center',
customRender: function (t, r, index) { customRender: function (t, r, index) {
return parseInt(index) + 1 return parseInt(index) + 1
} }
}, },
{ {
title: '库房名称',
dataIndex: 'storeName'
},
{
title: '总垛位数',
dataIndex: 'rackQty',
},
{
title: '已用垛位数',
dataIndex: 'useQty',
},
{
title: '库存数',
dataIndex: 'stockQty'
},
],
goodsColumns: [
{
title: '序号',
dataIndex: '',
key: 'rowIndex',
width: 70,
align: 'center',
customRender: function (t, r, index) {
return parseInt(index) + 1
}
},
{
title: '物资代码',
dataIndex: 'goodsCode',
},
{
title: '物资名称', title: '物资名称',
dataIndex: 'typeName' dataIndex: 'goodsName'
},
{
title: '数量',
dataIndex: 'qty'
}, },
],
modelColumns: [
{ {
title: '物资编码', title: '序号',
dataIndex: 'brandName', dataIndex: '',
key: 'rowIndex',
width: 70,
align: 'center',
customRender: function (t, r, index) {
return parseInt(index) + 1
}
}, },
{ {
title: '库房名称', title: '号型代码',
dataIndex: 'modelName', dataIndex: 'modelCode',
},
{
title: '号型名称',
dataIndex: 'modelName'
},
{
title: '所在货位',
dataIndex: 'positionCode'
}, },
{ {
title: '数量', title: '数量',
dataIndex: 'sum' dataIndex: 'qty'
}, },
] ],
}; };
}, },
methods: { methods: {
showModal() { rowClassName (record, index) {
this.visible = true; let className = "light-row";
if (index % 2 === 1) className = "dark-row"
if (record === this.activeWarehouse) className += " table_active"
if (record === this.activeGoods) className += " table_active"
return className
},
reset() {
this.goodsName = ''
this.storeCode = undefined
this.initData() this.initData()
}, },
initStore() {
getAction('/bigSunmmary/getAllStore').then(res => {
this.storeList = res.data
})
},
initData() { initData() {
var params = {} var params = {}
params.pageNo = this.ipagination.current; params.pageNo = this.ipagination.current;
params.pageSize = this.ipagination.pageSize; params.pageSize = this.ipagination.pageSize;
params.goodsName = this.goodsName params.goodsCode = this.goodsName
params.storeCode = this.storeCode
postAction(this.url, params).then(res => { postAction(this.url, params).then(res => {
this.data = res.data.records; this.data = res.data.records;
this.ipagination.total = res.data.total; this.ipagination.total = res.data.totalRows - 0;
if (this.data.length > 0) {
this.activeWarehouse = this.data[0]
this.initGoodsData()
} else {
this.modelData = []
this.goodsData = []
}
})
},
initGoodsData(record) {
this.activeWarehouse = record || this.activeWarehouse
postAction('/bigSunmmary/getGoodsSumByStoreCode', {storeCode: this.activeWarehouse.storeCode, goodsCode: this.goodsName}).then(res => {
this.goodsData = res.data.records;
this.ipagination1.total = res.data.totalRows - 0;
if (this.goodsData.length > 0) {
this.activeGoods = this.goodsData[0]
this.initModelData()
} else {
this.modelData = []
this.ipagination2.total = 0;
}
})
},
initModelData(record) {
this.activeGoods = record || this.activeGoods
postAction('/bigSunmmary/getGoodsDetailByStoreCode', {storeCode: this.activeWarehouse.storeCode, goodsCode: this.goodsName || this.activeGoods.goodsCode}).then(res => {
this.modelData = res.data.records;
this.ipagination2.total = res.data.totalRows - 0;
}) })
}, },
handleCancel(e) { handleCancel(e) {
...@@ -87,8 +237,46 @@ export default { ...@@ -87,8 +237,46 @@ export default {
} }
this.ipagination = pagination; this.ipagination = pagination;
this.initData(); this.initData();
},
handleTableChange1(pagination, filters, sorter) {
//分页、排序、筛选变化时触发
//TODO 筛选
if (Object.keys(sorter).length > 0) {
this.isorter.column = sorter.field;
this.isorter.order = "ascend" == sorter.order ? "asc" : "desc"
}
this.ipagination1 = pagination;
this.initGoodsData();
},
handleTableChange2(pagination, filters, sorter) {
//分页、排序、筛选变化时触发
//TODO 筛选
if (Object.keys(sorter).length > 0) {
this.isorter.column = sorter.field;
this.isorter.order = "ascend" == sorter.order ? "asc" : "desc"
}
this.ipagination2 = pagination;
this.initModelData();
},
filterOption(input, option) {
return (
option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0
);
} }
}, },
}; };
</script> </script>
<style>
.light-row {
background-color: #fff;
}
.dark-row {
background-color: #fafafa;
}
/* table选中样式 */
.table_active {
background-color: #e6f7ff;
}
</style>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论