feat: 基础完成

This commit is contained in:
赵世界 2024-03-15 18:45:10 +08:00
parent 40bf72a4b6
commit 1d693cef96
5 changed files with 36 additions and 20 deletions

View File

@ -483,9 +483,6 @@ class GoodsSkusController extends Controller
$this->log->message = $request->get('reason');
$this->setBeforeUpdateForLog($record->loss_num);
$record->loss_num += $request->loss_num;
if ('补发' === $request->get('reason')) {
$record->reissue_num += $request->loss_num;
}
$record->save();
$this->setAfterUpdateForLog($record->loss_num);
$sku->stock -= $request->loss_num;

View File

@ -14,5 +14,6 @@ class DailySalesReport extends Model
public $fieldSearchable = [
'date',
'name' => 'like',
'sales_num' => '>',
];
}

View File

@ -25,7 +25,7 @@ class CreateDailySalesReportsTable extends Migration
$table->string('external_sku_id', 64);
$table->integer('inventory')->default(0)->comment('盘点数量');
$table->integer('arrived_today_num')->default(0)->comment('今日到货');
$table->integer('sales_num')->default(0)->comment('销量');
$table->integer('sales_num')->default(0)->comment('销量');
$table->integer('already_cancel_number')->default(0)->comment('已取消数量');
$table->unsignedInteger('loss_num')->default(0)->comment('损耗');
$table->decimal('goal_rate', 8, 4)->default(0)->comment('目标去化率');

View File

@ -3,13 +3,18 @@
<el-card :body-style="{ padding: '20px 20px 0 20px' }">
<el-form ref="form" :inline="true" :model="form">
<el-form-item label="日期:">
<el-date-picker v-model="form.date" type="date" placeholder="日期" format="yyyy-MM-DD" value-format="yyyy-MM-DD"></el-date-picker>
<el-date-picker v-model="form.date" type="date" placeholder="日期" format="yyyy-MM-DD"
value-format="yyyy-MM-DD"></el-date-picker>
</el-form-item>
<el-form-item label="商品名称:">
<el-input v-model="form.name" placeholder="商品名称"></el-input>
</el-form-item>
<el-form-item label="总销量大于:">
<el-input v-model="form.sales_num" placeholder="总销量"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="handleChoose">筛选</el-button>
<el-button plain @click="handleReChoose">重置筛选</el-button>
@ -18,53 +23,54 @@
</el-card>
<el-card style="margin-top: 10px">
<el-table v-loading="loading" ref="multipleTable" :data="tableData" style="width: 100%"
@sort-change="sortChange" :default-sort="{ prop: 'sales_num', order: 'descending' }">
<el-table v-loading="loading" ref="multipleTable" :data="tableData" style="width: 100%" height="900"
:cell-style="tableCellClassName" @sort-change="sortChange"
:default-sort="{ prop: 'sales_num', order: 'descending' }">
<el-table-column label="商品名称" prop="name" width="250"></el-table-column>
<el-table-column label="完整编码" prop="external_sku_id"></el-table-column>
<el-table-column label="入库数量" prop="stock"></el-table-column>
<el-table-column label="销量" prop="sales_num" sortable="custom"></el-table-column>
<el-table-column label="销量" prop="sales_num" sortable="custom"></el-table-column>
<el-table-column label="损耗" prop="loss_num"></el-table-column>
<el-table-column label="目标去化率" prop="goal_rate"></el-table-column>
<el-table-column label="S1(11:00-12:00)">
<el-table-column prop="S1" label="销量">
<el-table-column prop="S1" label="销量" sortable="custom">
</el-table-column>
<el-table-column prop="S1_rate" label="去化率" sortable="custom">
</el-table-column>
</el-table-column>
<el-table-column label="S2(11:00-13:30)">
<el-table-column prop="S2" label="销量">
<el-table-column prop="S2" label="销量" sortable="custom">
</el-table-column>
<el-table-column prop="S2_rate" label="去化率" sortable="custom">
</el-table-column>
</el-table-column>
<el-table-column label="S3(11:00-15:00)">
<el-table-column prop="S3" label="销量">
<el-table-column prop="S3" label="销量" sortable="custom">
</el-table-column>
<el-table-column prop="S3_rate" label="去化率" sortable="custom">
</el-table-column>
</el-table-column>
<el-table-column label="S4(15:00-16:00)">
<el-table-column prop="S4" label="销量">
<el-table-column prop="S4" label="销量" sortable="custom">
</el-table-column>
<el-table-column prop="S4_rate" label="去化率" sortable="custom">
</el-table-column>
</el-table-column>
<el-table-column label="S5(11:00-17:30)">
<el-table-column prop="S5" label="销量">
<el-table-column prop="S5" label="销量" sortable="custom">
</el-table-column>
<el-table-column prop="S5_rate" label="去化率" sortable="custom">
</el-table-column>
</el-table-column>
<el-table-column label="S6(11:00-20:00)">
<el-table-column prop="S6" label="销量">
<el-table-column prop="S6" label="销量" sortable="custom">
</el-table-column>
<el-table-column prop="S6_rate" label="去化率" sortable="custom">
</el-table-column>
</el-table-column>
<el-table-column label="S7(11:00-09:00)">
<el-table-column prop="S7" label="销量">
<el-table-column prop="S7" label="销量" sortable="custom">
</el-table-column>
<el-table-column prop="S7_rate" label="去化率" sortable="custom">
</el-table-column>
@ -92,12 +98,13 @@ export default {
name: "",
sort: "sales_num",
sortOrder: "DESC",
sales_num: 0,
},
loading: true,
tableData: [],
Paginationdata: {}, //
current_page: 1, //
per_page: 50, //
per_page: 100, //
};
},
mounted() {
@ -149,6 +156,15 @@ export default {
this.form.sort = line.prop;
this.form.sortOrder = ('ascending' === line.order) ? 'ASC' : 'DESC';
this.salseReportData(this.form);
},
tableCellClassName({ row, column, rowIndex, columnIndex }) {
if (column.property == 'S2' || column.property == 'S4' || column.property == 'S6' || column.property == 'S2_rate' || column.property == 'S4_rate' || column.property == 'S6_rate') {
return {
"background-color": "beige"
};
} else {
return '';
}
}
},
};

View File

@ -217,7 +217,7 @@
</el-radio-group>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="onLoss(scope.row.id)">保存</el-button>
<el-button type="primary" @click="onLoss(scope.row)">保存</el-button>
</el-form-item>
</el-form>
@ -264,7 +264,7 @@
<!-- 分页功能 -->
<div class="page">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
:current-page="current_page" :page-sizes="[15, 50, 100, 150, 200]" :page-size="per_page"
:current-page="current_page" :page-sizes="[100, 150, 200]" :page-size="per_page"
layout="total, sizes, prev, pager, next, jumper" :total="Paginationdata.total">
</el-pagination>
</div>
@ -465,7 +465,7 @@ export default {
},
Paginationdata: {}, //
current_page: 1, //
per_page: 10, //
per_page: 100, //
multipleSelection: [], //id
updateType: "", //newest-, inventory-, stock-
stock: false, //
@ -980,8 +980,10 @@ export default {
message: "损耗添加成功!",
type: "success",
});
this.getList();
this.handleChoose();
});
this.updateField = "";
this.editLossId = "";
},
//