Compare commits
No commits in common. "5f4e40e712007c479214a28ebc59cd58ce86e95c" and "acf22e0d90b3801f54d84f0338a8155a8d8e6283" have entirely different histories.
5f4e40e712
...
acf22e0d90
Binary file not shown.
Before Width: | Height: | Size: 791 KiB After Width: | Height: | Size: 509 KiB |
|
@ -113,7 +113,7 @@
|
||||||
<boolean-tag :value="d.row.disabled" true-text="禁用" true-type="danger" false-text="启用" false-type="success" />
|
<boolean-tag :value="d.row.disabled" true-text="禁用" true-type="danger" false-text="启用" false-type="success" />
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="column.key === 'quantity'">
|
<template v-else-if="column.key === 'quantity'">
|
||||||
{{formatFraction(d.row.quantityNumerator, d.row.quantityDenominator)}} 个
|
{{d.row.quantity | fix2 | dv}} 个
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="column.key === 'price'">
|
<template v-else-if="column.key === 'price'">
|
||||||
{{d.row.price | dv}} 元
|
{{d.row.price | dv}} 元
|
||||||
|
@ -143,7 +143,7 @@ import Price from "@/views/yh/price/index.vue";
|
||||||
import DeptTreeSelect from "@/components/Business/Dept/DeptTreeSelect.vue";
|
import DeptTreeSelect from "@/components/Business/Dept/DeptTreeSelect.vue";
|
||||||
import {$showColumns} from "@/utils/mixins";
|
import {$showColumns} from "@/utils/mixins";
|
||||||
import {listPrice} from "@/api/yh/price";
|
import {listPrice} from "@/api/yh/price";
|
||||||
import {deepClone, formatFraction} from "@/utils";
|
import {deepClone} from "@/utils";
|
||||||
|
|
||||||
const defaultSort = {
|
const defaultSort = {
|
||||||
prop: "createTime",
|
prop: "createTime",
|
||||||
|
@ -227,7 +227,6 @@ export default {
|
||||||
this.getList();
|
this.getList();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
formatFraction,
|
|
||||||
/** 重置按钮操作 */
|
/** 重置按钮操作 */
|
||||||
resetQuery() {
|
resetQuery() {
|
||||||
this.resetForm("queryForm");
|
this.resetForm("queryForm");
|
||||||
|
|
|
@ -3,13 +3,15 @@
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<el-dialog :title="title" :visible="show" width="90%" top="2vh" @close="close" :append-to-body="true">
|
<el-dialog :title="title" :visible="show" width="90%" top="2vh" @close="close" :append-to-body="true">
|
||||||
<price-check
|
<el-scrollbar style="height: 50vh">
|
||||||
v-if="show"
|
<price-check
|
||||||
ref="check"
|
v-if="show"
|
||||||
:multiple="multiple"
|
ref="check"
|
||||||
:init-select="initSelect"
|
:multiple="multiple"
|
||||||
v-on="$listeners"
|
:init-select="initSelect"
|
||||||
/>
|
v-on="$listeners"
|
||||||
|
/>
|
||||||
|
</el-scrollbar>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<el-button type="primary" @click="submit()">确定</el-button>
|
<el-button type="primary" @click="submit()">确定</el-button>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -39,18 +39,6 @@
|
||||||
</el-checkbox-button>
|
</el-checkbox-button>
|
||||||
</el-checkbox-group>
|
</el-checkbox-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="物料规格" prop="materialCategory">
|
|
||||||
<el-input v-model="queryParams.materialCategory" placeholder="请输入物料规格" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="物料大小" prop="materialSize">
|
|
||||||
<el-input v-model="queryParams.materialSize" placeholder="请输入物料大小" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="表面处理" prop="materialSurface">
|
|
||||||
<el-input v-model="queryParams.materialSurface" placeholder="请输入物料表面处理" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="盖子方式" prop="materialCover">
|
|
||||||
<el-input v-model="queryParams.materialCover" placeholder="请输入物料盖子方式" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||||
|
|
|
@ -42,7 +42,7 @@ export default {
|
||||||
.table-form-item {
|
.table-form-item {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
.table-form-item.is-error {
|
.is-error {
|
||||||
margin-bottom: 18px;
|
margin-bottom: 18px;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -499,11 +499,3 @@ export function getLastDateTimeStart(n) {
|
||||||
export function getLastDateTimeEnd(n) {
|
export function getLastDateTimeEnd(n) {
|
||||||
return new Date(getLastDateTimeEndStr(n));
|
return new Date(getLastDateTimeEndStr(n));
|
||||||
}
|
}
|
||||||
|
|
||||||
// 展示分数
|
|
||||||
export function formatFraction(numerator, denominator) {
|
|
||||||
if (denominator === 1) {
|
|
||||||
return numerator;
|
|
||||||
}
|
|
||||||
return `${numerator}/${denominator}`;
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="login">
|
<div class="login">
|
||||||
<div class="bg-box"/>
|
|
||||||
<el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form">
|
<el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form">
|
||||||
<h3 class="title-box">
|
<h3 class="title-box">
|
||||||
<img :src="logo" class="logo"/>
|
<img :src="logo" class="logo"/>
|
||||||
|
@ -80,8 +79,8 @@ export default {
|
||||||
logo: logoImg,
|
logo: logoImg,
|
||||||
codeUrl: "",
|
codeUrl: "",
|
||||||
loginForm: {
|
loginForm: {
|
||||||
username: "",
|
username: "admin",
|
||||||
password: "",
|
password: "admin123",
|
||||||
rememberMe: false,
|
rememberMe: false,
|
||||||
code: "",
|
code: "",
|
||||||
uuid: ""
|
uuid: ""
|
||||||
|
@ -166,21 +165,11 @@ export default {
|
||||||
<style rel="stylesheet/scss" lang="scss">
|
<style rel="stylesheet/scss" lang="scss">
|
||||||
.login {
|
.login {
|
||||||
position: relative;
|
position: relative;
|
||||||
display: flex;
|
|
||||||
display: -webkit-flex;
|
|
||||||
height: calc(100vh - env(safe-area-inset-bottom));
|
height: calc(100vh - env(safe-area-inset-bottom));
|
||||||
width: 100%;
|
background-image: url("../assets/images/login-background.webp");
|
||||||
|
-webkit-background-image: url("../assets/images/login-background.webp");
|
||||||
.bg-box {
|
background-size: cover;
|
||||||
flex: 1;
|
-webkit-background-size: cover;
|
||||||
background-image: url("../assets/images/login-background.jpg");
|
|
||||||
-webkit-background-image: url("../assets/images/login-background.jpg");
|
|
||||||
background-size: cover;
|
|
||||||
-webkit-background-size: cover;
|
|
||||||
background-position: center;
|
|
||||||
-webkit-background-position: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.title-box {
|
.title-box {
|
||||||
|
@ -204,7 +193,7 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.login-form {
|
.login-form {
|
||||||
position: relative;
|
position: absolute;
|
||||||
background: #ffffff;
|
background: #ffffff;
|
||||||
width: 480px;
|
width: 480px;
|
||||||
padding: 200px 64px 5px;
|
padding: 200px 64px 5px;
|
||||||
|
|
|
@ -84,10 +84,10 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</template>
|
</template>
|
||||||
<el-descriptions :column="2" size="small">
|
<el-descriptions :column="2">
|
||||||
<el-descriptions-item v-for="column of columns" v-if="column.visible" :key="column.key" :label="column.label">
|
<el-descriptions-item v-for="column of columns" v-if="column.visible" :key="column.key" :label="column.label">
|
||||||
<template v-if="column.key === 'status'">
|
<template v-if="column.key === 'status'">
|
||||||
<dict-tag :options="dict.type.report_status" :value="report[column.key]" size="mini"/>
|
<dict-tag :options="dict.type.report_status" :value="report[column.key]" size="small"/>
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="column.key === 'totalAmount'">
|
<template v-else-if="column.key === 'totalAmount'">
|
||||||
{{report.totalAmount | dv}} 元
|
{{report.totalAmount | dv}} 元
|
||||||
|
|
|
@ -262,17 +262,11 @@ export default {
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleSync() {
|
handleSync() {
|
||||||
this.$confirm('确定同步物料吗?', '提示', {
|
syncMaterial().then(res => {
|
||||||
confirmButtonText: '确定',
|
if (res.code === 200) {
|
||||||
cancelButtonText: '取消',
|
this.$message.success("同步成功");
|
||||||
type: 'warning'
|
}
|
||||||
}).then(() => {
|
})
|
||||||
syncMaterial().then(res => {
|
|
||||||
if (res.code === 200) {
|
|
||||||
this.$message.success("同步成功");
|
|
||||||
}
|
|
||||||
})
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
/** 当排序按钮被点击时触发 **/
|
/** 当排序按钮被点击时触发 **/
|
||||||
onSortChange(column) {
|
onSortChange(column) {
|
||||||
|
|
|
@ -19,9 +19,7 @@
|
||||||
<el-descriptions-item label="单价">{{detail.price | dv}} 元</el-descriptions-item>
|
<el-descriptions-item label="单价">{{detail.price | dv}} 元</el-descriptions-item>
|
||||||
<el-descriptions-item label="单位">{{detail.unit | dv}}</el-descriptions-item>
|
<el-descriptions-item label="单位">{{detail.unit | dv}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="分类">{{detail.classify | dv}}</el-descriptions-item>
|
<el-descriptions-item label="分类">{{detail.classify | dv}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="生产倍数" span="2">
|
<el-descriptions-item label="生产数量" span="2">{{detail.quantity | fix2 | dv}} 个</el-descriptions-item>
|
||||||
{{formatFraction(detail.quantityNumerator, detail.quantityDenominator)}} 个
|
|
||||||
</el-descriptions-item>
|
|
||||||
<el-descriptions-item label="备注" span="3">{{detail.remark | dv}}</el-descriptions-item>
|
<el-descriptions-item label="备注" span="3">{{detail.remark | dv}}</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</div>
|
</div>
|
||||||
|
@ -34,7 +32,6 @@
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import {getPrice, verifyPrice} from "@/api/yh/price";
|
import {getPrice, verifyPrice} from "@/api/yh/price";
|
||||||
import {formatFraction} from "../../../../utils";
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "VerifyPriceDialog",
|
name: "VerifyPriceDialog",
|
||||||
|
@ -74,7 +71,6 @@ export default {
|
||||||
this.getDetail(this.priceId);
|
this.getDetail(this.priceId);
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
formatFraction,
|
|
||||||
submitVerify(pass) {
|
submitVerify(pass) {
|
||||||
this.$confirm(`确定要${pass ? '通过' : '驳回'}吗?`, '提示', {
|
this.$confirm(`确定要${pass ? '通过' : '驳回'}吗?`, '提示', {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: '确定',
|
||||||
|
|
|
@ -190,7 +190,7 @@
|
||||||
<boolean-tag :value="d.row.disabled" true-text="禁用" true-type="danger" false-text="启用" false-type="success" />
|
<boolean-tag :value="d.row.disabled" true-text="禁用" true-type="danger" false-text="启用" false-type="success" />
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="column.key === 'quantity'">
|
<template v-else-if="column.key === 'quantity'">
|
||||||
{{formatFraction(d.row.quantityNumerator, d.row.quantityDenominator)}} 个
|
{{d.row.quantity | fix2 | dv}} 个
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="column.key === 'price'">
|
<template v-else-if="column.key === 'price'">
|
||||||
{{d.row.price | dv}} 元
|
{{d.row.price | dv}} 元
|
||||||
|
@ -299,11 +299,10 @@
|
||||||
<form-col :span="span" label="分类" prop="classify">
|
<form-col :span="span" label="分类" prop="classify">
|
||||||
<el-input v-model="form.classify" placeholder="请输入分类" />
|
<el-input v-model="form.classify" placeholder="请输入分类" />
|
||||||
</form-col>
|
</form-col>
|
||||||
<form-col :span="span" label="生产倍数" prop="quantity">
|
<form-col :span="span" label="生产数量" prop="quantity">
|
||||||
<el-input v-model="form.quantityNumerator" placeholder="分子" type="number" :min="0" style="width: calc(50% - 1.5em)"/>
|
<el-input v-model="form.quantity" placeholder="请输入生产数量" type="number" :min="0">
|
||||||
/
|
<template #suffix>个</template>
|
||||||
<el-input v-model="form.quantityDenominator" placeholder="分母" type="number" :min="0" style="width: calc(50% - 1.5em)"/>
|
</el-input>
|
||||||
个
|
|
||||||
</form-col>
|
</form-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-form-item label="备注" prop="remark">
|
<el-form-item label="备注" prop="remark">
|
||||||
|
@ -346,7 +345,6 @@ import {PriceStatus} from "@/utils/constants";
|
||||||
import VerifyPriceDialog from "@/views/yh/price/components/VerifyPriceDialog.vue";
|
import VerifyPriceDialog from "@/views/yh/price/components/VerifyPriceDialog.vue";
|
||||||
import FormCol from "@/components/FormCol/index.vue";
|
import FormCol from "@/components/FormCol/index.vue";
|
||||||
import ImportDialog from "@/components/ImportDialog/index.vue";
|
import ImportDialog from "@/components/ImportDialog/index.vue";
|
||||||
import {formatFraction} from "../../../utils";
|
|
||||||
|
|
||||||
// 默认排序字段
|
// 默认排序字段
|
||||||
const defaultSort = {
|
const defaultSort = {
|
||||||
|
@ -387,7 +385,7 @@ export default {
|
||||||
{key: 'price', visible: true, label: '单价', minWidth: null, sortable: true, overflow: false, align: 'center', width: null},
|
{key: 'price', visible: true, label: '单价', minWidth: null, sortable: true, overflow: false, align: 'center', width: null},
|
||||||
{key: 'unit', visible: true, label: '单位', minWidth: null, sortable: true, overflow: false, align: 'center', width: null},
|
{key: 'unit', visible: true, label: '单位', minWidth: null, sortable: true, overflow: false, align: 'center', width: null},
|
||||||
{key: 'classify', visible: true, label: '分类', minWidth: null, sortable: true, overflow: false, align: 'center', width: null},
|
{key: 'classify', visible: true, label: '分类', minWidth: null, sortable: true, overflow: false, align: 'center', width: null},
|
||||||
{key: 'quantity', visible: false, label: '生产倍数', minWidth: null, sortable: true, overflow: false, align: 'center', width: "100"},
|
{key: 'quantity', visible: false, label: '生产数量', minWidth: null, sortable: true, overflow: false, align: 'center', width: "100"},
|
||||||
{key: 'remark', visible: true, label: '备注', minWidth: null, sortable: true, overflow: true, align: 'center', width: null},
|
{key: 'remark', visible: true, label: '备注', minWidth: null, sortable: true, overflow: true, align: 'center', width: null},
|
||||||
{key: 'createBy', visible: false, label: '创建人', minWidth: null, sortable: true, overflow: false, align: 'center', width: "100"},
|
{key: 'createBy', visible: false, label: '创建人', minWidth: null, sortable: true, overflow: false, align: 'center', width: "100"},
|
||||||
{key: 'createTime', visible: false, label: '创建时间', minWidth: null, sortable: true, overflow: false, align: 'center', width: "100"},
|
{key: 'createTime', visible: false, label: '创建时间', minWidth: null, sortable: true, overflow: false, align: 'center', width: "100"},
|
||||||
|
@ -471,7 +469,6 @@ export default {
|
||||||
this.getList();
|
this.getList();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
formatFraction,
|
|
||||||
/** 当排序按钮被点击时触发 **/
|
/** 当排序按钮被点击时触发 **/
|
||||||
onSortChange(column) {
|
onSortChange(column) {
|
||||||
if (column.order == null) {
|
if (column.order == null) {
|
||||||
|
@ -524,8 +521,7 @@ export default {
|
||||||
updateBy: null,
|
updateBy: null,
|
||||||
disabled: null,
|
disabled: null,
|
||||||
disabledTime: null,
|
disabledTime: null,
|
||||||
quantityNumerator: 1,
|
quantity: null
|
||||||
quantityDenominator : 1,
|
|
||||||
};
|
};
|
||||||
this.resetForm("form");
|
this.resetForm("form");
|
||||||
},
|
},
|
||||||
|
|
|
@ -39,18 +39,6 @@
|
||||||
</el-checkbox-button>
|
</el-checkbox-button>
|
||||||
</el-checkbox-group>
|
</el-checkbox-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="物料规格" prop="materialCategory">
|
|
||||||
<el-input v-model="queryParams.materialCategory" placeholder="请输入物料规格" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="物料大小" prop="materialSize">
|
|
||||||
<el-input v-model="queryParams.materialSize" placeholder="请输入物料大小" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="表面处理" prop="materialSurface">
|
|
||||||
<el-input v-model="queryParams.materialSurface" placeholder="请输入物料表面处理" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="盖子方式" prop="materialCover">
|
|
||||||
<el-input v-model="queryParams.materialCover" placeholder="请输入物料盖子方式" clearable @keyup.enter.native="handleQuery"/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||||
|
@ -58,16 +46,16 @@
|
||||||
</el-form>
|
</el-form>
|
||||||
|
|
||||||
<el-row :gutter="10" class="mb8">
|
<el-row :gutter="10" class="mb8">
|
||||||
<!-- <el-col :span="1.5">-->
|
<el-col :span="1.5">
|
||||||
<!-- <el-button-->
|
<el-button
|
||||||
<!-- type="primary"-->
|
type="primary"
|
||||||
<!-- plain-->
|
plain
|
||||||
<!-- icon="el-icon-plus"-->
|
icon="el-icon-plus"
|
||||||
<!-- size="mini"-->
|
size="mini"
|
||||||
<!-- @click="handleAdd"-->
|
@click="handleAdd"
|
||||||
<!-- v-has-permi="['yh:prodOrder:add']"-->
|
v-has-permi="['yh:prodOrder:add']"
|
||||||
<!-- >新增</el-button>-->
|
>新增</el-button>
|
||||||
<!-- </el-col>-->
|
</el-col>
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button
|
<el-button
|
||||||
type="danger"
|
type="danger"
|
||||||
|
@ -363,16 +351,10 @@ export default {
|
||||||
methods: {
|
methods: {
|
||||||
isEmpty,
|
isEmpty,
|
||||||
handleSync(query = {}) {
|
handleSync(query = {}) {
|
||||||
this.$confirm('确定同步生产订单吗?', '提示', {
|
syncProdOrder(query).then(res => {
|
||||||
confirmButtonText: '确定',
|
if (res.code === 200) {
|
||||||
cancelButtonText: '取消',
|
this.$message.success("同步成功");
|
||||||
type: 'warning'
|
}
|
||||||
}).then(() => {
|
|
||||||
syncProdOrder(query).then(res => {
|
|
||||||
if (res.code === 200) {
|
|
||||||
this.$message.success("同步成功");
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
/** 当排序按钮被点击时触发 **/
|
/** 当排序按钮被点击时触发 **/
|
||||||
|
|
|
@ -289,8 +289,7 @@ export default {
|
||||||
pricePrice: price.price,
|
pricePrice: price.price,
|
||||||
priceUnit: price.unit,
|
priceUnit: price.unit,
|
||||||
priceClassify: price.classify,
|
priceClassify: price.classify,
|
||||||
priceQuantityNumerator: price.quantityNumerator,
|
priceQuantity: price.quantity
|
||||||
priceQuantityDenominator: price.quantityDenominator,
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 工序修改后操作
|
// 工序修改后操作
|
||||||
|
@ -305,8 +304,7 @@ export default {
|
||||||
row.pricePrice = price.price;
|
row.pricePrice = price.price;
|
||||||
row.priceUnit = price.unit;
|
row.priceUnit = price.unit;
|
||||||
row.priceClassify = price.classify;
|
row.priceClassify = price.classify;
|
||||||
row.priceQuantityNumerator = price.quantityNumerator;
|
row.priceQuantity = price.quantity;
|
||||||
row.priceQuantityDenominator = price.quantityDenominator;
|
|
||||||
},
|
},
|
||||||
// 表格选择项发生变化后
|
// 表格选择项发生变化后
|
||||||
onSelectionChange(selection) {
|
onSelectionChange(selection) {
|
||||||
|
|
|
@ -102,11 +102,6 @@ export default {
|
||||||
priceUnit: {
|
priceUnit: {
|
||||||
type: String,
|
type: String,
|
||||||
default: null
|
default: null
|
||||||
},
|
|
||||||
// 报表产量
|
|
||||||
reportProd: {
|
|
||||||
type: Object,
|
|
||||||
default: () => ({})
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
|
@ -139,8 +134,7 @@ export default {
|
||||||
orderQuery() {
|
orderQuery() {
|
||||||
return {
|
return {
|
||||||
erpStatusList: [ProdOrderErpStatus.START_WORK],
|
erpStatusList: [ProdOrderErpStatus.START_WORK],
|
||||||
materialCategory: this.reportProd.priceCategory,
|
|
||||||
materialSize: this.reportProd.priceSize,
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -49,10 +49,9 @@
|
||||||
<div class="edit-title">关联订单</div>
|
<div class="edit-title">关联订单</div>
|
||||||
<report-product-order-list-edit
|
<report-product-order-list-edit
|
||||||
v-model="form.orderProdList"
|
v-model="form.orderProdList"
|
||||||
:quantity="form.priceQuantityNumerator / form.priceQuantityDenominator"
|
:quantity="form.priceQuantity"
|
||||||
:price-unit="form.priceUnit"
|
:price-unit="form.priceUnit"
|
||||||
:rules="rules.orderProdList"
|
:rules="rules.orderProdList"
|
||||||
:report-prod="form"
|
|
||||||
/>
|
/>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
|
@ -170,8 +169,7 @@ export default {
|
||||||
this.form.pricePrice = price.price;
|
this.form.pricePrice = price.price;
|
||||||
this.form.priceUnit = price.unit;
|
this.form.priceUnit = price.unit;
|
||||||
this.form.priceClassify = price.classify;
|
this.form.priceClassify = price.classify;
|
||||||
this.form.priceQuantityNumerator = price.quantityNumerator;
|
this.form.priceQuantity = price.quantity;
|
||||||
this.form.priceQuantityDenominator = price.quantityDenominator;
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,7 +34,7 @@
|
||||||
containerClass: null,
|
containerClass: null,
|
||||||
showTableOpera: false,
|
showTableOpera: false,
|
||||||
showSearch: false,
|
showSearch: false,
|
||||||
showSelection: false
|
showSelection: false,
|
||||||
}"/>
|
}"/>
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
|
@ -1,10 +1,26 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<el-form-item label="生产订单" prop="orderErpBillNo">
|
<el-form-item label="报表关联订单ID" prop="id">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="queryParams.orderErpBillNo"
|
v-model="queryParams.id"
|
||||||
placeholder="请输入生产订单编号"
|
placeholder="请输入报表关联订单ID"
|
||||||
|
clearable
|
||||||
|
@keyup.enter.native="handleQuery"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="报表产量ID" prop="reportProdId">
|
||||||
|
<el-input
|
||||||
|
v-model="queryParams.reportProdId"
|
||||||
|
placeholder="请输入报表产量ID"
|
||||||
|
clearable
|
||||||
|
@keyup.enter.native="handleQuery"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="生产订单ID" prop="orderId">
|
||||||
|
<el-input
|
||||||
|
v-model="queryParams.orderId"
|
||||||
|
placeholder="请输入生产订单ID"
|
||||||
clearable
|
clearable
|
||||||
@keyup.enter.native="handleQuery"
|
@keyup.enter.native="handleQuery"
|
||||||
/>
|
/>
|
||||||
|
|
|
@ -3,14 +3,14 @@
|
||||||
<template v-for="(item, index) of data">
|
<template v-for="(item, index) of data">
|
||||||
<el-descriptions border :column="4" >
|
<el-descriptions border :column="4" >
|
||||||
<el-descriptions-item :key="item.id" label="生产订单" :span="2">{{item.orderErpBillNo | dv}}</el-descriptions-item>
|
<el-descriptions-item :key="item.id" label="生产订单" :span="2">{{item.orderErpBillNo | dv}}</el-descriptions-item>
|
||||||
<el-descriptions-item :key="item.id" label="本次提交产量">{{item.num | fix2 | dv}} {{priceUnit}}</el-descriptions-item>
|
<el-descriptions-item :key="item.id" label="本次提交产量">{{item.num | dv}} {{priceUnit}}</el-descriptions-item>
|
||||||
<el-descriptions-item :key="item.id" label="订单进度">
|
<el-descriptions-item :key="item.id" label="订单进度">
|
||||||
<el-progress text-inside :stroke-width="16" :percentage="percentage(item)" :color="customColors" text-color="#fff" style="width: 80px"/>
|
<el-progress text-inside :stroke-width="16" :percentage="percentage(item)" :color="customColors" text-color="#fff" style="width: 80px"/>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item :key="item.id" label="订单需求数量">{{item.orderErpBaseUnitQty | fix2 | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
<el-descriptions-item :key="item.id" label="订单需求数量">{{item.orderErpBaseUnitQty | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
||||||
<el-descriptions-item :key="item.id" label="订单未入库数量">{{item.orderErpBaseNoStockInQty | fix2 | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
<el-descriptions-item :key="item.id" label="订单未入库数量">{{item.orderErpBaseNoStockInQty | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
||||||
<el-descriptions-item :key="item.id" label="订单审核中产量">{{item.verifyingBaseNum | fix2 | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
<el-descriptions-item :key="item.id" label="订单审核中产量">{{item.verifyingBaseNum | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
||||||
<el-descriptions-item :key="item.id" label="订单已审核产量">{{item.verifiedBaseNum | fix2 | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
<el-descriptions-item :key="item.id" label="订单已审核产量">{{item.verifiedBaseNum | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
<br/>
|
<br/>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -78,7 +78,7 @@
|
||||||
<el-descriptions-item label="图案">{{d.row.pricePattern | dv}}</el-descriptions-item>
|
<el-descriptions-item label="图案">{{d.row.pricePattern | dv}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="规格">{{d.row.priceSpec | dv}}</el-descriptions-item>
|
<el-descriptions-item label="规格">{{d.row.priceSpec | dv}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="分类">{{d.row.priceClassify | dv}}</el-descriptions-item>
|
<el-descriptions-item label="分类">{{d.row.priceClassify | dv}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="倍数">{{formatFraction(d.row.priceQuantityNumerator, d.row.priceQuantityDenominator)}}</el-descriptions-item>
|
<el-descriptions-item label="倍数">{{d.row.priceQuantity | dv}}</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
<template v-if="!isEmpty(d.row.userProdList)">
|
<template v-if="!isEmpty(d.row.userProdList)">
|
||||||
<div class="edit-title">员工产量</div>
|
<div class="edit-title">员工产量</div>
|
||||||
|
@ -86,7 +86,7 @@
|
||||||
</template>
|
</template>
|
||||||
<template v-if="!isEmpty(d.row.orderProdList)">
|
<template v-if="!isEmpty(d.row.orderProdList)">
|
||||||
<div class="edit-title">订单产量</div>
|
<div class="edit-title">订单产量</div>
|
||||||
<report-order-prod-descriptions :data="d.row.orderProdList" :price-unit="d.row.priceUnit" :price-quantity="d.row.priceQuantityNumerator / d.row.priceQuantityDenominator"/>
|
<report-order-prod-descriptions :data="d.row.orderProdList" :price-unit="d.row.priceUnit" :price-quantity="d.row.priceQuantity"/>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -222,7 +222,7 @@ import SearchFormItem from "@/components/SearchFormItem/index.vue";
|
||||||
import ReportUserProd from "@/views/yh/reportUserProd/index.vue";
|
import ReportUserProd from "@/views/yh/reportUserProd/index.vue";
|
||||||
import {calcMulDecimal} from "@/utils/money";
|
import {calcMulDecimal} from "@/utils/money";
|
||||||
import ReportUserProdDescriptions from "@/views/yh/reportProd/components/ReportUserProdDescriptions.vue";
|
import ReportUserProdDescriptions from "@/views/yh/reportProd/components/ReportUserProdDescriptions.vue";
|
||||||
import {formatFraction, isEmpty} from "@/utils";
|
import {isEmpty} from "@/utils";
|
||||||
import ReportOrderProdDescriptions from "@/views/yh/reportProd/components/ReportOrderProdDescriptions.vue";
|
import ReportOrderProdDescriptions from "@/views/yh/reportProd/components/ReportOrderProdDescriptions.vue";
|
||||||
|
|
||||||
// 默认排序字段
|
// 默认排序字段
|
||||||
|
@ -373,7 +373,6 @@ export default {
|
||||||
this.getList();
|
this.getList();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
formatFraction,
|
|
||||||
isEmpty,
|
isEmpty,
|
||||||
calcMulDecimal,
|
calcMulDecimal,
|
||||||
// 展开行
|
// 展开行
|
||||||
|
|
|
@ -242,17 +242,11 @@ export default {
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleSync() {
|
handleSync() {
|
||||||
this.$confirm('确定同步单位吗?', '提示', {
|
syncUnit().then(res => {
|
||||||
confirmButtonText: '确定',
|
if (res.code === 200) {
|
||||||
cancelButtonText: '取消',
|
this.$message.success("同步成功");
|
||||||
type: 'warning'
|
}
|
||||||
}).then(() => {
|
})
|
||||||
syncUnit().then(res => {
|
|
||||||
if (res.code === 200) {
|
|
||||||
this.$message.success("同步成功");
|
|
||||||
}
|
|
||||||
})
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
/** 当排序按钮被点击时触发 **/
|
/** 当排序按钮被点击时触发 **/
|
||||||
onSortChange(column) {
|
onSortChange(column) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user