更新销售合同/提成/业绩、精工工序工价/生产审核/工时统计、仓储盘点/库存/补货/入库/库房管理,新增提成设置/销售业绩/库房管理/入库单移动端等模块及SQL脚本
This commit is contained in:
@@ -23,6 +23,8 @@
|
||||
<el-input v-model="queryForm.零件名称" clearable size="small" style="width: 150px" placeholder="零件名称" @keyup.enter.native="pageCurrent = 1;searchTable()" />
|
||||
<el-input v-model="queryForm.图号" clearable size="small" style="width: 150px" placeholder="图号" @keyup.enter.native="pageCurrent = 1;searchTable()" />
|
||||
<el-button icon="el-icon-search" type="primary" plain size="small" style="margin-left: 10px" @click="pageCurrent = 1;searchTable()">查询</el-button>
|
||||
<!-- 修改人:Ld 修改时间:2026-08-03 14:24:48; 工序工价按当前查询条件导出测试库新增的导出过程数据 -->
|
||||
<el-button type="success" plain icon="el-icon-download" size="small" @click="exportExcel()">导出</el-button>
|
||||
<el-button :disabled="!queryForm.工艺计划流水号 || tableData.length === 0" icon="el-icon-collection" type="success" plain size="small" @click="handleSaveSource()">保存</el-button>
|
||||
<el-button :disabled="!queryForm.工艺计划流水号" icon="el-icon-document-copy" type="warning" plain size="small" @click="openCopyDialog()">拷贝</el-button>
|
||||
<el-tag v-if="savedSourceInfo" size="small" type="success" style="margin-left: 6px" closable @close="savedSourceInfo = null">已保存: {{ savedSourceInfo.零件名称 }}</el-tag>
|
||||
@@ -92,7 +94,7 @@
|
||||
</el-table-column>
|
||||
<el-table-column label="总时间s" align="center" width="90">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.总时间s }}
|
||||
{{ getTotalTime(scope.row) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="单装数量(件)" align="center" width="110">
|
||||
@@ -165,7 +167,8 @@
|
||||
<!-- 修改人:Ld 修改时间:2026-07-02 15:33:23 -->
|
||||
<!-- 工价设置弹窗 -->
|
||||
<el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible" :title="dialogTitle" center width="960px">
|
||||
<el-form ref="form" :model="form" :rules="rules" label-position="left" label-width="100px">
|
||||
<!-- 修改人:Ld 修改时间:2026-08-04 09:39:18; 工价公式字段名称较长,放大标签宽度避免遮挡输入框 -->
|
||||
<el-form ref="form" :model="form" :rules="rules" label-position="left" label-width="130px">
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="工艺名称" prop="工艺名称">
|
||||
@@ -190,22 +193,22 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<!-- 修改人:Ld 修改时间:2026-07-03 08:02:29 -->
|
||||
<!-- 按现场确认的 9 个工价字段维护 -->
|
||||
<!-- 修改人:Ld 修改时间:2026-08-04 09:39:18; 设置弹窗补齐截图公式字段,计算字段随输入自动联动 -->
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="机动时间s" prop="机动时间s">
|
||||
<el-input-number v-model="form.机动时间s" :min="0" :precision="2" :step="1" controls-position="right" style="width: 100%;" />
|
||||
<el-form-item label="机动时间(秒)" prop="机动时间s">
|
||||
<el-input-number v-model="form.机动时间s" :min="0" :precision="2" :step="1" controls-position="right" style="width: 100%;" @change="refreshTotalTime()" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="辅助时间s" prop="辅助时间s">
|
||||
<el-input-number v-model="form.辅助时间s" :min="0" :precision="2" :step="1" controls-position="right" style="width: 100%;" />
|
||||
<el-form-item label="辅助时间(秒)" prop="辅助时间s">
|
||||
<el-input-number v-model="form.辅助时间s" :min="0" :precision="2" :step="1" controls-position="right" style="width: 100%;" @change="refreshTotalTime()" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="总时间s" prop="总时间s">
|
||||
<el-input-number v-model="form.总时间s" :min="0" :precision="2" :step="1" controls-position="right" style="width: 100%;" />
|
||||
<el-form-item label="总时间(秒)" prop="总时间s">
|
||||
<!-- 修改人:Ld 修改时间:2026-08-03 14:40:10; 总时间由机动时间和辅助时间自动相加,不允许手工改写 -->
|
||||
<el-input-number v-model="form.总时间s" :min="0" :precision="2" :step="1" controls-position="right" disabled style="width: 100%;" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -216,36 +219,52 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="操作台数" prop="操作台数">
|
||||
<el-form-item label="操作台数(台/人)" prop="操作台数">
|
||||
<el-input-number v-model="form.操作台数" :min="0" :precision="2" :step="1" controls-position="right" style="width: 100%;" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="日产能(件)" prop="日产能(件)">
|
||||
<el-input-number v-model="form['日产能(件)']" :min="0" :precision="2" :step="1" controls-position="right" style="width: 100%;" />
|
||||
<el-form-item label="工作时间(时)" prop="工作时间(时)">
|
||||
<el-input-number v-model="form['工作时间(时)']" :min="0" :precision="2" :step="0.5" controls-position="right" style="width: 100%;" @change="refreshPriceFormula()" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="最终单价" prop="最终单价(元/件)">
|
||||
<!-- 修改人:Ld 修改时间:2026-07-06 09:23:45; 最终单价输入框仅保留两位小数显示 -->
|
||||
<el-input-number v-model="form['最终单价(元/件)']" :min="0" :precision="2" :step="0.1" controls-position="right" style="width: 100%;" />
|
||||
<el-col :span="8">
|
||||
<el-form-item label="宽放时间(时)" prop="宽放时间(时)">
|
||||
<el-input-number v-model="form['宽放时间(时)']" :min="0" :precision="2" :step="0.5" controls-position="right" style="width: 100%;" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="日工资(元)" prop="日工资(元)">
|
||||
<el-input-number v-model="form['日工资(元)']" :min="0" :precision="2" :step="1" controls-position="right" style="width: 100%;" @change="refreshPriceFormula()" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="标准产能(件/天)" prop="标准产能(件/天)">
|
||||
<el-input-number v-model="form['标准产能(件/天)']" :min="0" :precision="2" :step="1" controls-position="right" disabled style="width: 100%;" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="工价定额" prop="工价定额">
|
||||
<el-input-number v-model="form.工价定额" :min="0" :precision="2" :step="0.1" controls-position="right" disabled style="width: 100%;" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="生效日期" prop="生效日期">
|
||||
<el-date-picker v-model="form.生效日期" type="date" value-format="yyyy-MM-dd" format="yyyy-MM-dd" clearable size="small" placeholder="选择生效日期" style="width: 100%;" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="12">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="变更次数" prop="变更次数">
|
||||
<el-input-number v-model="form.变更次数" :min="0" :precision="0" :step="1" controls-position="right" style="width: 100%;" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
</el-row>
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="启用状态" prop="是否启用">
|
||||
<el-select v-model="form.是否启用" clearable filterable size="small" style="width: 100%;" placeholder="请选择启用状态">
|
||||
<el-option v-for="item in statusOptions" :key="item.value" :label="item.label" :value="item.value" />
|
||||
@@ -428,6 +447,11 @@ export default {
|
||||
总时间s: 0,
|
||||
'单装数量(件)': 0,
|
||||
操作台数: 0,
|
||||
'工作时间(时)': 0,
|
||||
'宽放时间(时)': 0,
|
||||
'日工资(元)': 0,
|
||||
'标准产能(件/天)': 0,
|
||||
工价定额: 0,
|
||||
'日产能(件)': 0,
|
||||
'最终单价(元/件)': 0,
|
||||
生效日期: '',
|
||||
@@ -462,6 +486,34 @@ export default {
|
||||
this.searchTable()
|
||||
},
|
||||
methods: {
|
||||
// 修改人:Ld 修改时间:2026-08-03 14:40:10; 总时间统一按机动时间加辅助时间计算
|
||||
getTotalTime(row) {
|
||||
var total = Number(row.机动时间s || 0) + Number(row.辅助时间s || 0)
|
||||
return Number(total.toFixed(2))
|
||||
},
|
||||
// 修改人:Ld 修改时间:2026-08-03 14:40:10; 编辑弹窗中保持总时间自动等于机动时间加辅助时间
|
||||
refreshTotalTime() {
|
||||
if (!this.form) {
|
||||
return
|
||||
}
|
||||
this.form.总时间s = this.getTotalTime(this.form)
|
||||
this.refreshPriceFormula()
|
||||
},
|
||||
// 修改人:Ld 修改时间:2026-08-04 09:39:18; 按截图公式计算标准产能和工价定额,并同步旧字段兼容后端编辑过程
|
||||
refreshPriceFormula() {
|
||||
if (!this.form) {
|
||||
return
|
||||
}
|
||||
var totalTime = Number(this.form.总时间s || 0)
|
||||
var workTime = Number(this.form['工作时间(时)'] || 0)
|
||||
var dayWage = Number(this.form['日工资(元)'] || 0)
|
||||
var capacity = totalTime === 0 ? 0 : workTime * 3600 / totalTime
|
||||
var priceQuota = capacity === 0 ? 0 : dayWage / capacity
|
||||
this.form['标准产能(件/天)'] = Number(capacity.toFixed(4))
|
||||
this.form.工价定额 = Number(priceQuota.toFixed(4))
|
||||
this.form['日产能(件)'] = this.form['标准产能(件/天)']
|
||||
this.form['最终单价(元/件)'] = this.form.工价定额
|
||||
},
|
||||
// 修改人:Ld 修改时间:2026-07-17 16:30:55; 统一处理工时统计跳转参数,避免再次跳转时保留上一次查询条件
|
||||
applyJumpQuery(query) {
|
||||
if (!query || (!query.订单号 && !query.零件名称 && !query.图号 && !query.工序名称)) {
|
||||
@@ -593,10 +645,8 @@ export default {
|
||||
}
|
||||
})
|
||||
},
|
||||
// 修改人:Ld 修改时间:2026-07-06 08:36:02
|
||||
// 查询列表
|
||||
searchTable() {
|
||||
this.loading = true
|
||||
// 修改人:Ld 修改时间:2026-08-03 14:24:48; 查询和导出共用参数,保持筛选口径一致
|
||||
buildQueryParam() {
|
||||
var param = []
|
||||
param[0] = ['订单流水号', this.queryForm.订单流水号]
|
||||
param[1] = ['订单流水号_check', this.queryForm.订单流水号 ? 1 : 0]
|
||||
@@ -615,6 +665,13 @@ export default {
|
||||
// 修改人:Ld 修改时间:2026-07-17 08:44:08; 工时统计跳转后按图号精确查询,避免同名零件匹配过宽
|
||||
param[14] = ['图号', this.queryForm.图号]
|
||||
param[15] = ['图号_check', this.queryForm.图号 ? 1 : 0]
|
||||
return param
|
||||
},
|
||||
// 修改人:Ld 修改时间:2026-07-06 08:36:02
|
||||
// 查询列表
|
||||
searchTable() {
|
||||
this.loading = true
|
||||
var param = this.buildQueryParam()
|
||||
var Data = this.CreateData('11', '车间生产管理工艺_工序工价_查询数据', param, this.pageSize, this.pageCurrent)
|
||||
this.ExecDatabase(Data).then(response => {
|
||||
this.tableData = response.data && response.data.rows ? response.data.rows : response.data
|
||||
@@ -624,6 +681,11 @@ export default {
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
// 修改人:Ld 修改时间:2026-08-03 14:24:48; 调用测试库工序工价导出过程,导出当前查询条件下的全部数据
|
||||
exportExcel() {
|
||||
var Data = this.CreateData('2001', '车间生产管理工艺_工序工价_导出表格_查询', this.buildQueryParam())
|
||||
this.exportExcel_NPOI(Data)
|
||||
},
|
||||
// 修改人:Ld 修改时间:2026-07-08; 保存当前零件的工价信息,供拷贝时直接使用
|
||||
handleSaveSource() {
|
||||
if (!this.queryForm.工艺计划流水号 || !this.tableData || this.tableData.length === 0) {
|
||||
@@ -762,17 +824,23 @@ export default {
|
||||
图号: row.图号,
|
||||
机动时间s: Number(row.机动时间s || 0),
|
||||
辅助时间s: Number(row.辅助时间s || 0),
|
||||
总时间s: Number(row.总时间s || 0),
|
||||
总时间s: this.getTotalTime(row),
|
||||
'单装数量(件)': Number(row['单装数量(件)'] || 0),
|
||||
操作台数: Number(row.操作台数 || 0),
|
||||
'日产能(件)': Number(row['日产能(件)'] || 0),
|
||||
'最终单价(元/件)': Number(row['最终单价(元/件)'] || 0),
|
||||
'工作时间(时)': Number(row['工作时间(时)'] || 0),
|
||||
'宽放时间(时)': Number(row['宽放时间(时)'] || 0),
|
||||
'日工资(元)': Number(row['日工资(元)'] || 0),
|
||||
'标准产能(件/天)': Number(row['标准产能(件/天)'] || row['日产能(件)'] || 0),
|
||||
工价定额: Number(row.工价定额 || row['最终单价(元/件)'] || 0),
|
||||
'日产能(件)': Number(row['标准产能(件/天)'] || row['日产能(件)'] || 0),
|
||||
'最终单价(元/件)': Number(row.工价定额 || row['最终单价(元/件)'] || 0),
|
||||
生效日期: row.生效日期,
|
||||
变更次数: Number(row.变更次数 || 0),
|
||||
是否启用: row.是否启用 === '' || row.是否启用 === null || typeof row.是否启用 === 'undefined' ? 1 : Number(row.是否启用),
|
||||
备注: row.备注,
|
||||
工序流水号: row.工序流水号
|
||||
}
|
||||
this.refreshPriceFormula()
|
||||
},
|
||||
// 修改人:Ld 修改时间:2026-07-02 15:33:23
|
||||
// 提交新增或编辑
|
||||
@@ -781,6 +849,8 @@ export default {
|
||||
if (!valid) {
|
||||
return false
|
||||
}
|
||||
this.refreshTotalTime()
|
||||
this.refreshPriceFormula()
|
||||
var param = []
|
||||
param[0] = ['工价流水号', this.form.工价流水号]
|
||||
param[1] = ['工艺名称', this.form.工艺名称]
|
||||
@@ -789,7 +859,7 @@ export default {
|
||||
param[4] = ['图号', this.form.图号]
|
||||
param[5] = ['机动时间s', this.form.机动时间s]
|
||||
param[6] = ['辅助时间s', this.form.辅助时间s]
|
||||
param[7] = ['总时间s', this.form.总时间s]
|
||||
param[7] = ['总时间s', this.getTotalTime(this.form)]
|
||||
// 修改人:Ld 修改时间:2026-07-03 08:02:29
|
||||
// 带括号字段提交给存储过程时使用安全参数名,查询返回仍保持原字段名
|
||||
param[8] = ['单装数量件', this.form['单装数量(件)']]
|
||||
@@ -831,6 +901,11 @@ export default {
|
||||
总时间s: 0,
|
||||
'单装数量(件)': 0,
|
||||
操作台数: 0,
|
||||
'工作时间(时)': 0,
|
||||
'宽放时间(时)': 0,
|
||||
'日工资(元)': 0,
|
||||
'标准产能(件/天)': 0,
|
||||
工价定额: 0,
|
||||
'日产能(件)': 0,
|
||||
'最终单价(元/件)': 0,
|
||||
生效日期: '',
|
||||
|
||||
Reference in New Issue
Block a user