|
|
@@ -1,11 +1,6 @@
|
|
|
<!-- 搜索表单 -->
|
|
|
<template>
|
|
|
- <el-form
|
|
|
- label-width="90px"
|
|
|
- class="ele-form-search"
|
|
|
- @keyup.enter.native="search"
|
|
|
- @submit.native.prevent
|
|
|
- >
|
|
|
+ <el-form label-width="90px" class="ele-form-search" @keyup.enter.native="search" @submit.native.prevent>
|
|
|
<el-row :gutter="15">
|
|
|
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
|
|
|
<el-form-item label="销售订单号:">
|
|
|
@@ -34,67 +29,37 @@
|
|
|
</el-col>
|
|
|
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
|
|
|
<el-form-item label="订单来源:">
|
|
|
- <DictSelection
|
|
|
- dictName="订单来源"
|
|
|
- clearable
|
|
|
- v-model="where.orderSource"
|
|
|
- >
|
|
|
+ <DictSelection dictName="订单来源" clearable v-model="where.orderSource">
|
|
|
</DictSelection>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
|
|
|
<el-form-item label="客户名称:">
|
|
|
- <el-input
|
|
|
- v-model="where.customerName"
|
|
|
- placeholder="请输入"
|
|
|
- ></el-input>
|
|
|
+ <el-input v-model="where.customerName" placeholder="请输入"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
|
|
|
<el-form-item label="订单类型:">
|
|
|
- <DictSelection
|
|
|
- dictName="订单类型"
|
|
|
- clearable
|
|
|
- v-model="where.orderType"
|
|
|
- >
|
|
|
+ <DictSelection dictName="订单类型" clearable v-model="where.orderType">
|
|
|
</DictSelection>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
|
|
|
<el-form-item label="生产状态:">
|
|
|
<el-select v-model="where.proStu" placeholder="请选择" class="w100">
|
|
|
- <el-option
|
|
|
- v-if="activeName == 'first'"
|
|
|
- v-for="item in awaitProcuct"
|
|
|
- :key="item.value"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- >
|
|
|
+ <el-option v-if="activeName == 'first'" v-for="item in awaitProcuct" :key="item.value" :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
</el-option>
|
|
|
- <el-option
|
|
|
- v-if="activeName == 'second'"
|
|
|
- v-for="item in alreadyProcuct"
|
|
|
- :key="item.value"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- >
|
|
|
+ <el-option v-if="activeName == 'second'" v-for="item in alreadyProcuct" :key="item.value" :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
|
|
|
<el-form-item label="按单按库:">
|
|
|
- <el-select
|
|
|
- v-model="where.orderLibraryType"
|
|
|
- placeholder="请选择"
|
|
|
- class="w100"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in orderTypeList"
|
|
|
- :key="item.value"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- >
|
|
|
+ <el-select v-model="where.orderLibraryType" placeholder="请选择" class="w100">
|
|
|
+ <el-option v-for="item in orderTypeList" :key="item.value" :label="item.label" :value="item.value">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
@@ -108,60 +73,31 @@
|
|
|
<el-row :gutter="15">
|
|
|
<el-col v-bind="styleResponsive ? { lg: 12, md: 12 } : { span: 12 }">
|
|
|
<el-form-item label="交货日期:">
|
|
|
- <el-date-picker
|
|
|
- style="width: 100%"
|
|
|
- v-model="time"
|
|
|
- type="daterange"
|
|
|
- range-separator="至"
|
|
|
- start-placeholder="开始日期"
|
|
|
- end-placeholder="结束日期"
|
|
|
- value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
- :default-time="['00:00:00', '23:59:59']"
|
|
|
- >
|
|
|
+ <el-date-picker style="width: 100%" v-model="time" type="daterange" range-separator="至" start-placeholder="开始日期"
|
|
|
+ end-placeholder="结束日期" value-format="yyyy-MM-dd HH:mm:ss" :default-time="['00:00:00', '23:59:59']">
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col v-bind="styleResponsive ? { lg: 12, md: 12 } : { span: 12 }">
|
|
|
<div class="ele-form-actions">
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- icon="el-icon-search"
|
|
|
- class="ele-btn-icon"
|
|
|
- @click="search"
|
|
|
- >
|
|
|
+ <el-button type="primary" icon="el-icon-search" class="ele-btn-icon" @click="search">
|
|
|
查询
|
|
|
</el-button>
|
|
|
- <el-button @click="reset" icon="el-icon-refresh-left" type="primary"
|
|
|
- >重置</el-button
|
|
|
- >
|
|
|
+ <el-button @click="reset" icon="el-icon-refresh-left" type="primary">重置</el-button>
|
|
|
</div>
|
|
|
</el-col>
|
|
|
<el-col v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
|
|
|
<el-form-item label-width="0px">
|
|
|
<div class="btn-wrapper">
|
|
|
<el-button @click="goProduct">转生产计划</el-button>
|
|
|
- <el-button type="primary" @click="orderRefresh" :loading="loading"
|
|
|
- >订单刷新</el-button
|
|
|
- >
|
|
|
+ <el-button type="primary" @click="orderRefresh" :loading="loading">订单刷新</el-button>
|
|
|
<el-button type="success" @click="toCreate">创建订单</el-button>
|
|
|
- <el-upload
|
|
|
- class="avatar-uploader"
|
|
|
- action="#"
|
|
|
- :show-file-list="false"
|
|
|
- :http-request="uploadFile"
|
|
|
- :before-upload="beforeUpload"
|
|
|
- :on-change="handleChange"
|
|
|
- ref="uploadFile"
|
|
|
- >
|
|
|
+ <el-upload class="avatar-uploader" action="#" :show-file-list="false" :http-request="uploadFile"
|
|
|
+ :before-upload="beforeUpload" :on-change="handleChange" ref="uploadFile">
|
|
|
<el-button type="warning">批量导入</el-button>
|
|
|
</el-upload>
|
|
|
<el-button type="info">
|
|
|
- <a
|
|
|
- :href="fileUrl"
|
|
|
- download="销售订单导入模板.xls"
|
|
|
- class="button-link"
|
|
|
- >下载模板</a
|
|
|
- >
|
|
|
+ <a :href="fileUrl" download="销售订单导入模板.xls" class="button-link">下载模板</a>
|
|
|
</el-button>
|
|
|
<el-button type="danger" @click="batchDelete">批量删除</el-button>
|
|
|
</div>
|
|
|
@@ -179,228 +115,237 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
- import ImportException from '../components/import-exception.vue';
|
|
|
- import CreateOrder from '../components/create-order.vue';
|
|
|
- import GroupOrder from '../components/group-order.vue';
|
|
|
- import { importFile } from '@/api/saleOrder';
|
|
|
- import fileUrl from '@/assets/file/销售订单导入模板.xls';
|
|
|
- import { pullSalesOrder, deleteOrder } from '@/api/saleOrder';
|
|
|
- export default {
|
|
|
- props: {
|
|
|
- selection: Array,
|
|
|
- activeName: String
|
|
|
+import ImportException from '../components/import-exception.vue';
|
|
|
+import CreateOrder from '../components/create-order.vue';
|
|
|
+import GroupOrder from '../components/group-order.vue';
|
|
|
+import { importFile } from '@/api/saleOrder';
|
|
|
+import fileUrl from '@/assets/file/销售订单导入模板.xls';
|
|
|
+import { pullSalesOrder, deleteOrder } from '@/api/saleOrder';
|
|
|
+export default {
|
|
|
+ props: {
|
|
|
+ selection: Array,
|
|
|
+ activeName: String
|
|
|
+ },
|
|
|
+ components: {
|
|
|
+ ImportException,
|
|
|
+ CreateOrder,
|
|
|
+ GroupOrder
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ // 默认表单数据
|
|
|
+ const defaultWhere = {
|
|
|
+ code: '',
|
|
|
+ productCode: '',
|
|
|
+ customerName: '',
|
|
|
+ lineNumber: '',
|
|
|
+ model: '',
|
|
|
+ brandNo: '',
|
|
|
+ orderSource: 0,
|
|
|
+ orderType: 0,
|
|
|
+ proStu: '',
|
|
|
+ orderLibraryType: 0,
|
|
|
+ salesman: ''
|
|
|
+ };
|
|
|
+ return {
|
|
|
+ fileUrl,
|
|
|
+ // 表单数据
|
|
|
+ defaultWhere,
|
|
|
+ where: { ...defaultWhere },
|
|
|
+ time: [],
|
|
|
+ fileList: [],
|
|
|
+ awaitProcuct: [{ value: 1, label: '待排产' }],
|
|
|
+ alreadyProcuct: [
|
|
|
+ { value: 0, label: '所有状态' },
|
|
|
+ { value: 2, label: '待发布' },
|
|
|
+ { value: 3, label: '发布失败' },
|
|
|
+ { value: 4, label: '待生产' },
|
|
|
+ { value: 5, label: '生产中' },
|
|
|
+ { value: 6, label: '已完成' },
|
|
|
+ { value: 7, label: '已延期' }
|
|
|
+ ],
|
|
|
+ orderTypeList: [
|
|
|
+ { value: 0, label: '所有' },
|
|
|
+ { value: 1, label: '按单' },
|
|
|
+ { value: 2, label: '按库' }
|
|
|
+ ],
|
|
|
+ loading: false
|
|
|
+ };
|
|
|
+ },
|
|
|
+ computed: {
|
|
|
+ // 是否开启响应式布局
|
|
|
+ styleResponsive() {
|
|
|
+ return this.$store.state.theme.styleResponsive;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ activeName: {
|
|
|
+ handler() {
|
|
|
+ if (this.activeName == 'first') {
|
|
|
+ this.where.proStu = 1;
|
|
|
+ } else {
|
|
|
+ this.where.proStu = 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ this.reset();
|
|
|
+ },
|
|
|
+ immediate: true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ created() { },
|
|
|
+ methods: {
|
|
|
+ /* 搜索 */
|
|
|
+ search() {
|
|
|
+ if (this.time.length) {
|
|
|
+ this.where.startTime = this.time[0];
|
|
|
+ this.where.endTime = this.time[1];
|
|
|
+ }
|
|
|
+ this.$emit('search', this.where);
|
|
|
},
|
|
|
- components: {
|
|
|
- ImportException,
|
|
|
- CreateOrder,
|
|
|
- GroupOrder
|
|
|
+ /* 重置 */
|
|
|
+ reset() {
|
|
|
+ this.time = [];
|
|
|
+ this.where = { ...this.defaultWhere };
|
|
|
+ if (this.activeName == 'first') {
|
|
|
+ this.where.proStu = 1;
|
|
|
+ } else {
|
|
|
+ this.where.proStu = 0;
|
|
|
+ }
|
|
|
+ this.search();
|
|
|
},
|
|
|
- data() {
|
|
|
- // 默认表单数据
|
|
|
- const defaultWhere = {
|
|
|
- code: '',
|
|
|
- productCode: '',
|
|
|
- customerName: '',
|
|
|
- lineNumber: '',
|
|
|
- model: '',
|
|
|
- brandNo: '',
|
|
|
- orderSource: 0,
|
|
|
- orderType: 0,
|
|
|
- proStu: '',
|
|
|
- orderLibraryType: 0,
|
|
|
- salesman: ''
|
|
|
- };
|
|
|
- return {
|
|
|
- fileUrl,
|
|
|
- // 表单数据
|
|
|
- defaultWhere,
|
|
|
- where: { ...defaultWhere },
|
|
|
- time: [],
|
|
|
- fileList: [],
|
|
|
- awaitProcuct: [{ value: 1, label: '待排产' }],
|
|
|
- alreadyProcuct: [
|
|
|
- { value: 0, label: '所有状态' },
|
|
|
- { value: 2, label: '待发布' },
|
|
|
- { value: 3, label: '发布失败' },
|
|
|
- { value: 4, label: '待生产' },
|
|
|
- { value: 5, label: '生产中' },
|
|
|
- { value: 6, label: '已完成' },
|
|
|
- { value: 7, label: '已延期' }
|
|
|
- ],
|
|
|
- orderTypeList: [
|
|
|
- { value: 0, label: '所有' },
|
|
|
- { value: 1, label: '按单' },
|
|
|
- { value: 2, label: '按库' }
|
|
|
- ],
|
|
|
- loading: false
|
|
|
- };
|
|
|
+ toImport() {
|
|
|
+ this.$refs.importDialog.open();
|
|
|
},
|
|
|
- computed: {
|
|
|
- // 是否开启响应式布局
|
|
|
- styleResponsive() {
|
|
|
- return this.$store.state.theme.styleResponsive;
|
|
|
- }
|
|
|
+ toCreate() {
|
|
|
+ this.$refs.createDialog.open();
|
|
|
},
|
|
|
- watch: {
|
|
|
- activeName: {
|
|
|
- handler() {
|
|
|
- if (this.activeName == 'first') {
|
|
|
- this.where.proStu = 1;
|
|
|
- } else {
|
|
|
- this.where.proStu = 0;
|
|
|
- }
|
|
|
-
|
|
|
- this.reset();
|
|
|
- },
|
|
|
- immediate: true
|
|
|
- }
|
|
|
+ toGroup() {
|
|
|
+ this.$refs.groupDialog.open();
|
|
|
},
|
|
|
- created() {},
|
|
|
- methods: {
|
|
|
- /* 搜索 */
|
|
|
- search() {
|
|
|
- if (this.time.length) {
|
|
|
- this.where.startTime = this.time[0];
|
|
|
- this.where.endTime = this.time[1];
|
|
|
+ goProduct() {
|
|
|
+ if (!this.selection.length) {
|
|
|
+ return this.$message.warning('请先勾选一个或多个订单!');
|
|
|
+ }
|
|
|
+ const productCode = this.selection[0].productCode;
|
|
|
+ const orderType = this.selection[0].orderType;
|
|
|
+ const produceRoutingId = this.selection[0].produceRoutingId
|
|
|
+
|
|
|
+ for (var i = 0; i < this.selection.length; i++) {
|
|
|
+ if (productCode != this.selection[i].productCode) {
|
|
|
+ return this.$message.warning('物料编码不一致!');
|
|
|
}
|
|
|
- this.$emit('search', this.where);
|
|
|
- },
|
|
|
- /* 重置 */
|
|
|
- reset() {
|
|
|
- this.time = [];
|
|
|
- this.where = { ...this.defaultWhere };
|
|
|
- if (this.activeName == 'first') {
|
|
|
- this.where.proStu = 1;
|
|
|
- } else {
|
|
|
- this.where.proStu = 0;
|
|
|
+ if (orderType != this.selection[i].orderType) {
|
|
|
+ return this.$message.warning('订单类型不一致!');
|
|
|
}
|
|
|
- this.search();
|
|
|
- },
|
|
|
- toImport() {
|
|
|
- this.$refs.importDialog.open();
|
|
|
- },
|
|
|
- toCreate() {
|
|
|
- this.$refs.createDialog.open();
|
|
|
- },
|
|
|
- toGroup() {
|
|
|
- this.$refs.groupDialog.open();
|
|
|
- },
|
|
|
- goProduct() {
|
|
|
- if (!this.selection.length) {
|
|
|
- return this.$message.warning('请先勾选一个或多个订单!');
|
|
|
+ if (produceRoutingId != this.selection[i].produceRoutingId) {
|
|
|
+ return this.$message.warning('工艺路线不一致!');
|
|
|
}
|
|
|
- const productCode = this.selection[0].productCode;
|
|
|
- const orderType = this.selection[0].orderType;
|
|
|
- for (var i = 0; i < this.selection.length; i++) {
|
|
|
- if (productCode != this.selection[i].productCode) {
|
|
|
- return this.$message.warning('物料编码不一致!');
|
|
|
- }
|
|
|
- if (orderType != this.selection[i].orderType) {
|
|
|
- return this.$message.warning('订单类型不一致!');
|
|
|
- }
|
|
|
+ }
|
|
|
+ const list = [];
|
|
|
+ this.selection.map((item) => {
|
|
|
+ list.push(item.id);
|
|
|
+ });
|
|
|
+ this.$router.push({
|
|
|
+ path: '/saleOrder/salesToProduction',
|
|
|
+ query: {
|
|
|
+ selection: JSON.stringify(list),
|
|
|
+ produceRoutingId: produceRoutingId,
|
|
|
+ produceRoutingName: this.selection[0].produceRoutingName
|
|
|
}
|
|
|
- const list = [];
|
|
|
- this.selection.map((item) => {
|
|
|
- list.push(item.id);
|
|
|
- });
|
|
|
- this.$router.push({
|
|
|
- path: '/saleOrder/salesToProduction',
|
|
|
- query: {
|
|
|
- selection: JSON.stringify(list)
|
|
|
- }
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ // 刷新订单
|
|
|
+ orderRefresh() {
|
|
|
+ this.loading = true;
|
|
|
+ pullSalesOrder()
|
|
|
+ .then((res) => {
|
|
|
+ this.$message.success('刷新成功!');
|
|
|
+ this.loading = false;
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ this.loading = false;
|
|
|
});
|
|
|
- },
|
|
|
+ },
|
|
|
|
|
|
- // 刷新订单
|
|
|
- orderRefresh() {
|
|
|
- this.loading = true;
|
|
|
- pullSalesOrder()
|
|
|
- .then((res) => {
|
|
|
- this.$message.success('刷新成功!');
|
|
|
- this.loading = false;
|
|
|
- })
|
|
|
- .catch(() => {
|
|
|
- this.loading = false;
|
|
|
+ // 点击批量删除
|
|
|
+ batchDelete() {
|
|
|
+ if (!this.selection.length) {
|
|
|
+ return this.$message.warning('请先勾选一个或多个订单!');
|
|
|
+ }
|
|
|
+ let ids = [];
|
|
|
+ this.selection.map((item) => {
|
|
|
+ ids.push(item.id);
|
|
|
+ });
|
|
|
+ this.$confirm('此操作将永久删除所选择的订单, 是否继续?', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning'
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
+ deleteOrder(ids).then((res) => {
|
|
|
+ this.$message.success(res);
|
|
|
+ this.search();
|
|
|
});
|
|
|
- },
|
|
|
-
|
|
|
- // 点击批量删除
|
|
|
- batchDelete() {
|
|
|
- if (!this.selection.length) {
|
|
|
- return this.$message.warning('请先勾选一个或多个订单!');
|
|
|
- }
|
|
|
- let ids = [];
|
|
|
- this.selection.map((item) => {
|
|
|
- ids.push(item.id);
|
|
|
- });
|
|
|
- this.$confirm('此操作将永久删除所选择的订单, 是否继续?', '提示', {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning'
|
|
|
})
|
|
|
- .then(() => {
|
|
|
- deleteOrder(ids).then((res) => {
|
|
|
- this.$message.success(res);
|
|
|
- this.search();
|
|
|
- });
|
|
|
- })
|
|
|
- .catch(() => {});
|
|
|
- },
|
|
|
+ .catch(() => { });
|
|
|
+ },
|
|
|
|
|
|
- handleChange(file, fileList) {
|
|
|
- this.fileList = fileList;
|
|
|
- console.log(fileList);
|
|
|
- },
|
|
|
+ handleChange(file, fileList) {
|
|
|
+ this.fileList = fileList;
|
|
|
+ console.log(fileList);
|
|
|
+ },
|
|
|
|
|
|
- //上传限制
|
|
|
- beforeUpload(file) {
|
|
|
- const isLt10M = file.size / 1024 / 1024 < 10;
|
|
|
- if (!isLt10M) {
|
|
|
- this.$message.error('上传文件大小不能超过 10MB!');
|
|
|
- }
|
|
|
- return isLt10M;
|
|
|
- },
|
|
|
- //文件上传
|
|
|
- uploadFile(param) {
|
|
|
- let fd = new FormData();
|
|
|
- this.fileList.forEach((item) => {
|
|
|
- fd.append('importExcel', item.raw);
|
|
|
- });
|
|
|
- importFile(fd)
|
|
|
- .then((res) => {
|
|
|
- this.$emit('search', this.where);
|
|
|
- this.$refs.uploadFile.clearFiles();
|
|
|
- })
|
|
|
- .catch((data) => {
|
|
|
- if (data.code != -1) {
|
|
|
- this.$message.error(data.message);
|
|
|
- }
|
|
|
- })
|
|
|
- .finally(() => {
|
|
|
- this.$refs.uploadFile.clearFiles();
|
|
|
- });
|
|
|
+ //上传限制
|
|
|
+ beforeUpload(file) {
|
|
|
+ const isLt10M = file.size / 1024 / 1024 < 10;
|
|
|
+ if (!isLt10M) {
|
|
|
+ this.$message.error('上传文件大小不能超过 10MB!');
|
|
|
}
|
|
|
+ return isLt10M;
|
|
|
+ },
|
|
|
+ //文件上传
|
|
|
+ uploadFile(param) {
|
|
|
+ let fd = new FormData();
|
|
|
+ this.fileList.forEach((item) => {
|
|
|
+ fd.append('importExcel', item.raw);
|
|
|
+ });
|
|
|
+ importFile(fd)
|
|
|
+ .then((res) => {
|
|
|
+ this.$emit('search', this.where);
|
|
|
+ this.$refs.uploadFile.clearFiles();
|
|
|
+ })
|
|
|
+ .catch((data) => {
|
|
|
+ if (data.code != -1) {
|
|
|
+ this.$message.error(data.message);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .finally(() => {
|
|
|
+ this.$refs.uploadFile.clearFiles();
|
|
|
+ });
|
|
|
}
|
|
|
- };
|
|
|
+ }
|
|
|
+};
|
|
|
</script>
|
|
|
<style lang="scss" scoped>
|
|
|
- .ele-form-actions {
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- justify-content: flex-end;
|
|
|
- }
|
|
|
+.ele-form-actions {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: flex-end;
|
|
|
+}
|
|
|
|
|
|
- .btn-wrapper {
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- justify-content: flex-start;
|
|
|
- flex-wrap: wrap;
|
|
|
- }
|
|
|
- .avatar-uploader {
|
|
|
- display: inline-block;
|
|
|
- margin: 0 10px;
|
|
|
- }
|
|
|
- .button-link {
|
|
|
- color: #fff;
|
|
|
- }
|
|
|
+.btn-wrapper {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: flex-start;
|
|
|
+ flex-wrap: wrap;
|
|
|
+}
|
|
|
+
|
|
|
+.avatar-uploader {
|
|
|
+ display: inline-block;
|
|
|
+ margin: 0 10px;
|
|
|
+}
|
|
|
+
|
|
|
+.button-link {
|
|
|
+ color: #fff;
|
|
|
+}
|
|
|
</style>
|