|
@@ -1,212 +1,137 @@
|
|
<template>
|
|
<template>
|
|
- <div class="price">
|
|
|
|
|
|
+ <div class="sellRegister">
|
|
<h2 style="margin-bottom: 20px;padding-bottom:7px;border-bottom:2px solid #ddd">销售统计</h2>
|
|
<h2 style="margin-bottom: 20px;padding-bottom:7px;border-bottom:2px solid #ddd">销售统计</h2>
|
|
- <header id="header">
|
|
|
|
- <el-row type="flex" :gutter="20">
|
|
|
|
- <el-col :span="4">
|
|
|
|
- <el-input v-model="search" placeholder="请选择"></el-input>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="4">
|
|
|
|
- <el-button type="primary" @click="getPriceList">查找</el-button>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="4">
|
|
|
|
- <el-button type="primary" @click="add">新增</el-button>
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
- </header>
|
|
|
|
- <section>
|
|
|
|
- <article class="table">
|
|
|
|
- <el-table
|
|
|
|
- ref="multipleTable"
|
|
|
|
- :data="tableData"
|
|
|
|
- tooltip-effect="dark"
|
|
|
|
- style="width: 100%"
|
|
|
|
- >
|
|
|
|
- <el-table-column prop="id" label="序号" width="80"></el-table-column>
|
|
|
|
- <el-table-column prop="productName" label="产品名称" width="180"></el-table-column>
|
|
|
|
- <el-table-column prop="specificModel" label="规格型号" width="180"></el-table-column>
|
|
|
|
- <el-table-column prop="category" label="所属类别"></el-table-column>
|
|
|
|
- <el-table-column prop="price" label="价格(元)"></el-table-column>
|
|
|
|
- <el-table-column prop="operation" label="操作"></el-table-column>
|
|
|
|
- <el-table-column label="操作" width="150">
|
|
|
|
- <template slot-scope="scope">
|
|
|
|
- <el-button @click="edit(scope.row)" type="text" size="small">编辑</el-button>
|
|
|
|
- <el-popconfirm title="是否删除此设备的信息?" @onConfirm="del(scope.row)">
|
|
|
|
- <el-button slot="reference" type="text" size="small">删除</el-button>
|
|
|
|
- </el-popconfirm>
|
|
|
|
- </template>
|
|
|
|
- </el-table-column>
|
|
|
|
- </el-table>
|
|
|
|
-
|
|
|
|
- <el-row type="flex" justify="end">
|
|
|
|
- <el-col :span="8" class="pagination">
|
|
|
|
- <el-pagination
|
|
|
|
- @current-change="pageChange"
|
|
|
|
- background
|
|
|
|
- layout="prev, pager, next"
|
|
|
|
- :page-count="Number(totalPages)"
|
|
|
|
- ></el-pagination>
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
- </article>
|
|
|
|
|
|
+ <section class="section">
|
|
|
|
+ <div class="left">
|
|
|
|
+ <el-button-group>
|
|
|
|
+ <el-button :type="btnFlag1?'primary':''" @click="btn_shift_1(true)">近一周</el-button>
|
|
|
|
+ <el-button :type="btnFlag1==false?'primary':''" @click="btn_shift_1(false)">近一月</el-button>
|
|
|
|
+ </el-button-group>
|
|
|
|
+ <EBuySellNum class="EBuySellNum"></EBuySellNum>
|
|
|
|
+ </div>
|
|
|
|
+ <aside class="aside">
|
|
|
|
+ <h2>近一年销售记录</h2>
|
|
|
|
+ <section class="middle">
|
|
|
|
+ <h4 class="title">累计销售</h4>
|
|
|
|
+ <div class="content">
|
|
|
|
+ <div class="num">348.2</div>
|
|
|
|
+ <span class="unit">万元</span>
|
|
|
|
+ </div>
|
|
|
|
+ </section>
|
|
|
|
+ <footer class="bottom">
|
|
|
|
+ <div class="cel">
|
|
|
|
+ 当前月
|
|
|
|
+ <span class="num">32</span>
|
|
|
|
+ 万
|
|
|
|
+ </div>
|
|
|
|
+ <div class="cel">
|
|
|
|
+ 上个月
|
|
|
|
+ <span class="num">76</span>
|
|
|
|
+ 万
|
|
|
|
+ </div>
|
|
|
|
+ </footer>
|
|
|
|
+ </aside>
|
|
</section>
|
|
</section>
|
|
-
|
|
|
|
- <el-dialog title="新增/编辑" :visible.sync="isShow" width="40%">
|
|
|
|
- <el-row type="flex">
|
|
|
|
- <el-col :span="20">
|
|
|
|
- <el-form ref="addPrice" :model="formData" :rules="rules" label-width="140px">
|
|
|
|
- <el-form-item label="产品名称">
|
|
|
|
- <el-input v-model="formData.productName"></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
-
|
|
|
|
- <el-form-item label="规格型号">
|
|
|
|
- <el-input v-model="formData.specificModel"></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
-
|
|
|
|
- <el-form-item label="所属类别">
|
|
|
|
- <el-input v-model="formData.category"></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
-
|
|
|
|
- <el-form-item label="价格(元)">
|
|
|
|
- <el-input v-model="formData.price"></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
-
|
|
|
|
- <el-form-item label="操作">
|
|
|
|
- <el-input v-model="formData.operation"></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
-
|
|
|
|
- <el-form-item>
|
|
|
|
- <el-button @click="isShow=false">取 消</el-button>
|
|
|
|
- <el-button type="primary" @click="submitForm('addPrice')">保 存</el-button>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-form>
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
- </el-dialog>
|
|
|
|
|
|
+ <footer class="footer">
|
|
|
|
+ <el-button-group>
|
|
|
|
+ <el-button :type="btnFlag2?'primary':''" @click="btn_shift_2(true)">近一周</el-button>
|
|
|
|
+ <el-button :type="btnFlag2==false?'primary':''" @click="btn_shift_2(false)">近一月</el-button>
|
|
|
|
+ </el-button-group>
|
|
|
|
+ <E-Saleroom></E-Saleroom>
|
|
|
|
+ </footer>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
-import {
|
|
|
|
- reqPriceList,
|
|
|
|
- reqAddPrice,
|
|
|
|
- reqUpdatePrice,
|
|
|
|
- reqDelPrice
|
|
|
|
-} from "@/api/sellManagement.js";
|
|
|
|
-
|
|
|
|
-const pageSize = 10;
|
|
|
|
-const rules = {};
|
|
|
|
|
|
+import EBuySellNum from "./charts/E-BuySellNum";
|
|
|
|
+import ESaleroom from "./charts/E-Saleroom";
|
|
|
|
|
|
export default {
|
|
export default {
|
|
- name: "price",
|
|
|
|
|
|
+ name: "sellRegister",
|
|
|
|
+ components: {
|
|
|
|
+ EBuySellNum,
|
|
|
|
+ ESaleroom
|
|
|
|
+ },
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
- search: "",
|
|
|
|
- page: 1,
|
|
|
|
- tableData: [],
|
|
|
|
- totalPages: 0,
|
|
|
|
- isShow: false,
|
|
|
|
- formData: {
|
|
|
|
- productName: "大羊排",
|
|
|
|
- specificModel: "2500g/袋",
|
|
|
|
- category: "成品",
|
|
|
|
- price: "198",
|
|
|
|
- operation: 1
|
|
|
|
- },
|
|
|
|
- isAdd: false,
|
|
|
|
- rules
|
|
|
|
|
|
+ btnFlag1: true,
|
|
|
|
+ btnFlag2: true
|
|
};
|
|
};
|
|
},
|
|
},
|
|
- created() {
|
|
|
|
- // 出仓管理列表
|
|
|
|
- this.getPriceList();
|
|
|
|
- },
|
|
|
|
|
|
+ created() {},
|
|
methods: {
|
|
methods: {
|
|
- submitForm(formName) {
|
|
|
|
- this.$refs[formName].validate(valid => {
|
|
|
|
- if (valid) {
|
|
|
|
- if (this.isAdd) {
|
|
|
|
- reqAddPrice(this.formData)
|
|
|
|
- .then(res => {
|
|
|
|
- // 出仓管理列表
|
|
|
|
- this.getPriceList();
|
|
|
|
- this.$message.success("添加成功!");
|
|
|
|
- })
|
|
|
|
- .catch(err => {
|
|
|
|
- console.log(err);
|
|
|
|
- this.$message.error("添加失败!");
|
|
|
|
- });
|
|
|
|
- } else {
|
|
|
|
- reqUpdatePrice(this.formData)
|
|
|
|
- .then(res => {
|
|
|
|
- // 出仓管理列表
|
|
|
|
- this.getPriceList();
|
|
|
|
- this.$message.success("编辑成功!");
|
|
|
|
- })
|
|
|
|
- .catch(err => {
|
|
|
|
- console.log(err);
|
|
|
|
- this.$message.error("编辑失败!");
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- // 出仓管理列表
|
|
|
|
- getPriceList() {
|
|
|
|
- reqPriceList({
|
|
|
|
- searchStr: this.search,
|
|
|
|
- pageSize,
|
|
|
|
- pageNum: this.page
|
|
|
|
- })
|
|
|
|
- .then(res => {
|
|
|
|
- this.tableData = res.content;
|
|
|
|
- this.totalPages = res.totalPages;
|
|
|
|
- })
|
|
|
|
- .catch(err => {
|
|
|
|
- console.log(err);
|
|
|
|
- });
|
|
|
|
|
|
+ btn_shift_1(flag) {
|
|
|
|
+ this.btnFlag1 = flag;
|
|
},
|
|
},
|
|
- add() {
|
|
|
|
- this.isShow = true;
|
|
|
|
- this.isAdd = true
|
|
|
|
- },
|
|
|
|
- edit(row) {
|
|
|
|
- this.formData = row;
|
|
|
|
- this.isShow = true;
|
|
|
|
- this.isAdd = false
|
|
|
|
- },
|
|
|
|
- del(row) {
|
|
|
|
- reqDelPrice(row.id)
|
|
|
|
- .then(res => {
|
|
|
|
- console.log(res);
|
|
|
|
- // 出仓管理列表
|
|
|
|
- this.getPriceList();
|
|
|
|
- this.$message.success("删除成功!");
|
|
|
|
- })
|
|
|
|
- .catch(err => {
|
|
|
|
- console.log(err);
|
|
|
|
- this.$message.error("删除失败!");
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- pageChange(p) {
|
|
|
|
- console.log(p);
|
|
|
|
- this.page = p;
|
|
|
|
- // 出仓管理列表
|
|
|
|
- this.getPriceList();
|
|
|
|
|
|
+ btn_shift_2(flag) {
|
|
|
|
+ this.btnFlag2 = flag;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
};
|
|
};
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
<style lang="scss" scoped>
|
|
-#header {
|
|
|
|
- margin-bottom: 15px;
|
|
|
|
-}
|
|
|
|
-.table {
|
|
|
|
- .pagination {
|
|
|
|
- margin-top: 20px;
|
|
|
|
|
|
+.sellRegister {
|
|
|
|
+
|
|
|
|
+ .section {
|
|
|
|
+ padding: 0 5%;
|
|
|
|
+ display: flex;
|
|
|
|
+ justify-content: space-between;
|
|
|
|
+ align-items: center;
|
|
|
|
+ margin-bottom: 20px;
|
|
|
|
+ .EBuySellNum {
|
|
|
|
+ width: 700px;
|
|
|
|
+ }
|
|
|
|
+ .aside {
|
|
|
|
+ width: 500px;
|
|
|
|
+ height: 300px;
|
|
|
|
+ color: #eee;
|
|
|
|
+ border-radius: 10px;
|
|
|
|
+ padding: 14px 18px;
|
|
|
|
+ background-color: #1f47a5;
|
|
|
|
+ .middle {
|
|
|
|
+ margin: 10% 0 0 0;
|
|
|
|
+ .title {
|
|
|
|
+ padding-left: 10%;
|
|
|
|
+ font-size: 20px;
|
|
|
|
+ }
|
|
|
|
+ .content {
|
|
|
|
+ display: flex;
|
|
|
|
+ justify-content: center;
|
|
|
|
+ position: relative;
|
|
|
|
+ .num {
|
|
|
|
+ min-width: 200px;
|
|
|
|
+ text-align: right;
|
|
|
|
+ font-size: 50px;
|
|
|
|
+ font-weight: 600;
|
|
|
|
+ background-color: #0b2c8f;
|
|
|
|
+ border-radius: 8px;
|
|
|
|
+ padding: 6px;
|
|
|
|
+ margin: 8px 10px;
|
|
|
|
+ }
|
|
|
|
+ .unit {
|
|
|
|
+ font-size: 30px;
|
|
|
|
+ position: relative;
|
|
|
|
+ bottom: -45px;
|
|
|
|
+ right: 0;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ .bottom {
|
|
|
|
+ display: flex;
|
|
|
|
+ justify-content: center;
|
|
|
|
+ font-size: 18px;
|
|
|
|
+ .cel {
|
|
|
|
+ margin: 25px 15px;
|
|
|
|
+ .num {
|
|
|
|
+ font-size: 30px;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ .footer{
|
|
|
|
+ padding: 0 5%;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
</style>
|
|
</style>
|