Compare commits
3 Commits
b38c2bf2b5
...
05512e19f5
Author | SHA1 | Date |
---|---|---|
xd | 05512e19f5 | |
xd | 5871c178a2 | |
xd | 5d7a033c7e |
|
@ -32,6 +32,10 @@ public class CYlMaterial extends BaseEntity
|
|||
@Excel(name = "单价")
|
||||
private BigDecimal materialPrice;
|
||||
|
||||
/** 停用状态 */
|
||||
@Excel(name = "停用状态")
|
||||
private String materialState;
|
||||
|
||||
public void setMaterialId(Long materialId)
|
||||
{
|
||||
this.materialId = materialId;
|
||||
|
@ -69,6 +73,14 @@ public class CYlMaterial extends BaseEntity
|
|||
return materialPrice;
|
||||
}
|
||||
|
||||
public String getMaterialState() {
|
||||
return materialState;
|
||||
}
|
||||
|
||||
public void setMaterialState(String materialState) {
|
||||
this.materialState = materialState;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||
|
|
|
@ -43,6 +43,10 @@ public class CMaterial extends BaseEntity
|
|||
@Excel(name = "物料类型")
|
||||
private String typeName;
|
||||
|
||||
/** 物料状态 */
|
||||
@Excel(name = "物料状态")
|
||||
private String materialState;
|
||||
|
||||
/** 物料成本信息 */
|
||||
private List<CMaterialCost> cMaterialCostList;
|
||||
|
||||
|
@ -119,6 +123,10 @@ public class CMaterial extends BaseEntity
|
|||
this.typeName = typeName;
|
||||
}
|
||||
|
||||
public String getMaterialState() {return materialState;}
|
||||
|
||||
public void setMaterialState(String materialState) {this.materialState = materialState;}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
|
||||
|
|
|
@ -27,6 +27,10 @@ public class CMaterialType extends BaseEntity
|
|||
@Excel(name = "名称")
|
||||
private String typeName;
|
||||
|
||||
/** 状态 */
|
||||
@Excel(name = "状态")
|
||||
private String typeState;
|
||||
|
||||
public void setTypeId(Long typeId)
|
||||
{
|
||||
this.typeId = typeId;
|
||||
|
@ -55,6 +59,10 @@ public class CMaterialType extends BaseEntity
|
|||
return typeName;
|
||||
}
|
||||
|
||||
public String getTypeState() {return typeState;}
|
||||
|
||||
public void setTypeState(String typeState) {this.typeState = typeState;}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||
|
|
|
@ -9,10 +9,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<result property="materialNo" column="material_no" />
|
||||
<result property="materialName" column="material_name" />
|
||||
<result property="materialPrice" column="material_price" />
|
||||
<result property="materialState" column="material_state" />
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectCYlMaterialVo">
|
||||
select material_id, material_no, material_name, material_price from c_yl_material
|
||||
select material_id, material_no, material_name, material_price, material_state from c_yl_material
|
||||
</sql>
|
||||
|
||||
<select id="selectCYlMaterialList" parameterType="CYlMaterial" resultMap="CYlMaterialResult">
|
||||
|
@ -20,6 +21,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<where>
|
||||
<if test="materialNo != null and materialNo != ''"> and material_no = #{materialNo}</if>
|
||||
<if test="materialName != null and materialName != ''"> and material_name like concat('%', #{materialName}, '%')</if>
|
||||
<if test="materialState != null and materialState != ''"> and material_state = #{materialState}</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
|
@ -34,11 +36,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="materialNo != null and materialNo != ''">material_no,</if>
|
||||
<if test="materialName != null and materialName != ''">material_name,</if>
|
||||
<if test="materialPrice != null">material_price,</if>
|
||||
<if test="materialState != null">material_state,</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="materialNo != null and materialNo != ''">#{materialNo},</if>
|
||||
<if test="materialName != null and materialName != ''">#{materialName},</if>
|
||||
<if test="materialPrice != null">#{materialPrice},</if>
|
||||
<if test="materialState != null">#{materialState},</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
|
@ -48,6 +52,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="materialNo != null and materialNo != ''">material_no = #{materialNo},</if>
|
||||
<if test="materialName != null and materialName != ''">material_name = #{materialName},</if>
|
||||
<if test="materialPrice != null">material_price = #{materialPrice},</if>
|
||||
<if test="materialState != null">material_state = #{materialState},</if>
|
||||
</trim>
|
||||
where material_id = #{materialId}
|
||||
</update>
|
||||
|
|
|
@ -46,10 +46,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</select>
|
||||
|
||||
<select id="selectCFactoryByFactoryId" parameterType="Long" resultMap="CFactoryCMaterialTypeResult">
|
||||
select a.factory_id, a.factory_no, a.factory_name, a.factory_rg_ratio, a.factory_wj_ratio, a.factory_fl_ratio, a.factory_df_ratio, a.factory_trq_ratio, a.factory_ys_ratio, a.factory_pj_ratio, a.factory_total_ratio,
|
||||
b.type_id as sub_type_id, b.type_no as sub_type_no, b.type_name as sub_type_name, b.factory_id as sub_factory_id
|
||||
select a.factory_id, a.factory_no, a.factory_name, a.factory_rg_ratio, a.factory_wj_ratio, a.factory_fl_ratio,
|
||||
a.factory_df_ratio, a.factory_trq_ratio, a.factory_ys_ratio, a.factory_pj_ratio, a.factory_total_ratio,
|
||||
b.type_id as sub_type_id, case when c.type_state!='0' then '' else b.type_no end sub_type_no,
|
||||
case when c.type_state!='0' then b.type_name+'(停用)' else b.type_name end sub_type_name, b.factory_id as sub_factory_id
|
||||
from c_factory a
|
||||
left join c_material_type_factory b on b.factory_id = a.factory_no
|
||||
left join c_material_type c on c.type_no = b.type_no
|
||||
where a.factory_id = #{factoryId}
|
||||
</select>
|
||||
|
||||
|
|
|
@ -12,6 +12,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<result property="materialDiany" column="material_diany" />
|
||||
<result property="materialDw" column="material_dw" />
|
||||
<result property="typeName" column="type_name" />
|
||||
<result property="materialState" column="material_state" />
|
||||
</resultMap>
|
||||
|
||||
<resultMap id="CMaterialCMaterialCostResult" type="CMaterial" extends="CMaterialResult">
|
||||
|
@ -30,7 +31,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</resultMap>
|
||||
|
||||
<sql id="selectCMaterialVo">
|
||||
select a.material_id,a.material_type_id, a.material_xingh, a.material_guig, a.material_diany, a.material_dw,b.type_name
|
||||
select a.material_id,a.material_type_id, a.material_xingh, a.material_guig, a.material_diany, a.material_dw,
|
||||
case when b.type_state != '0' then b.type_name+'(停用)' else b.type_name end type_name,
|
||||
a.material_state
|
||||
from c_material a
|
||||
left join c_material_type b on a.material_type_id = b.type_no
|
||||
</sql>
|
||||
|
@ -41,16 +44,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="materialXingh != null and materialXingh != ''"> and material_xingh like concat('%', #{materialXingh}, '%')</if>
|
||||
<if test="materialGuig != null and materialGuig != ''"> and material_guig like concat('%', #{materialGuig}, '%')</if>
|
||||
<if test="materialDiany != null and materialDiany != ''"> and material_diany like concat('%', #{materialDiany}, '%')</if>
|
||||
<if test="materialState != null and materialState != ''"> and material_state = #{materialState}</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<select id="selectCMaterialByMaterialId" parameterType="Long" resultMap="CMaterialCMaterialCostResult">
|
||||
select a.material_id, a.material_type_id, a.material_xingh, a.material_guig, a.material_diany, a.material_dw,
|
||||
b.cost_id as sub_cost_id, b.cost_material_id as sub_cost_material_id, b.cost_cl_id as sub_cost_cl_id,
|
||||
b.cost_cl_qty as sub_cost_cl_qty, b.cost_cl_qty_2 as sub_cost_cl_qty_2,
|
||||
c.material_price as sub_material_price,c.material_name as sub_material_name
|
||||
select a.material_id, case when d.type_state != '0' then '' else a.material_type_id end material_type_id,
|
||||
a.material_xingh, a.material_guig, a.material_diany, a.material_dw,a.material_state,
|
||||
b.cost_id as sub_cost_id, b.cost_material_id as sub_cost_material_id,
|
||||
case when c.material_state!='0' then '' else b.cost_cl_id end sub_cost_cl_id,
|
||||
case when c.material_state!='0' then 0 else b.cost_cl_qty end sub_cost_cl_qty,
|
||||
case when c.material_state!='0' then 0 else b.cost_cl_qty_2 end sub_cost_cl_qty_2,
|
||||
case when c.material_state!='0' then 0 else c.material_price end sub_material_price,
|
||||
c.material_name as sub_material_name
|
||||
from c_material a
|
||||
left join c_material_cost b on b.cost_material_id = a.material_id
|
||||
left join c_material_type d on d.type_no = a.material_type_id
|
||||
left join c_yl_material c on c.material_no = b.cost_cl_id
|
||||
where a.material_id = #{materialId}
|
||||
ORDER BY c.material_no ASC
|
||||
|
@ -64,6 +73,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="materialGuig != null and materialGuig != ''">material_guig,</if>
|
||||
<if test="materialDiany != null">material_diany,</if>
|
||||
<if test="materialDw != null">material_dw,</if>
|
||||
<if test="materialState != null">material_state,</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="materialTypeId != null and materialTypeId != ''">#{materialTypeId},</if>
|
||||
|
@ -71,6 +81,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="materialGuig != null and materialGuig != ''">#{materialGuig},</if>
|
||||
<if test="materialDiany != null">#{materialDiany},</if>
|
||||
<if test="materialDw != null">#{materialDw},</if>
|
||||
<if test="materialState != null">#{materialState},</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
|
@ -82,6 +93,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="materialGuig != null and materialGuig != ''">material_guig = #{materialGuig},</if>
|
||||
<if test="materialDiany != null">material_diany = #{materialDiany},</if>
|
||||
<if test="materialDw != null">material_dw = #{materialDw},</if>
|
||||
<if test="materialState != null">material_state = #{materialState},</if>
|
||||
</trim>
|
||||
where material_id = #{materialId}
|
||||
</update>
|
||||
|
|
|
@ -8,10 +8,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<result property="typeId" column="type_id" />
|
||||
<result property="typeNo" column="type_no" />
|
||||
<result property="typeName" column="type_name" />
|
||||
<result property="typeState" column="type_state" />
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectCMaterialTypeVo">
|
||||
select type_id, type_no, type_name from c_material_type
|
||||
select type_id, type_no, type_name, type_state from c_material_type
|
||||
</sql>
|
||||
|
||||
<select id="selectCMaterialTypeList" parameterType="CMaterialType" resultMap="CMaterialTypeResult">
|
||||
|
@ -19,6 +20,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<where>
|
||||
<if test="typeNo != null and typeNo != ''"> and type_no = #{typeNo}</if>
|
||||
<if test="typeName != null and typeName != ''"> and type_name like concat('%', #{typeName}, '%')</if>
|
||||
<if test="typeState != null and typeState != ''"> and type_state = #{typeState}</if>
|
||||
</where>
|
||||
order by type_no asc
|
||||
</select>
|
||||
|
@ -33,10 +35,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="typeNo != null and typeNo != ''">type_no,</if>
|
||||
<if test="typeName != null and typeName != ''">type_name,</if>
|
||||
<if test="typeState != null and typeState != ''">type_state,</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="typeNo != null and typeNo != ''">#{typeNo},</if>
|
||||
<if test="typeName != null and typeName != ''">#{typeName},</if>
|
||||
<if test="typeState != null and typeState != ''">#{typeState},</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
|
@ -45,6 +49,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<trim prefix="SET" suffixOverrides=",">
|
||||
<if test="typeNo != null and typeNo != ''">type_no = #{typeNo},</if>
|
||||
<if test="typeName != null and typeName != ''">type_name = #{typeName},</if>
|
||||
<if test="typeState != null and typeState != ''">type_state = #{typeState},</if>
|
||||
</trim>
|
||||
where type_id = #{typeId}
|
||||
</update>
|
||||
|
|
|
@ -17,6 +17,16 @@
|
|||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="状态" prop="materialState">
|
||||
<el-select v-model="queryParams.materialState" placeholder="材料状态" clearable>
|
||||
<el-option
|
||||
v-for="dict in dict.type.yl_material_state"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<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>
|
||||
|
@ -76,6 +86,11 @@
|
|||
<el-table-column label="编码" align="center" prop="materialNo" />
|
||||
<el-table-column label="名称" align="center" prop="materialName" />
|
||||
<el-table-column label="单价" align="center" prop="materialPrice" />
|
||||
<el-table-column prop="materialState" label="状态" width="80">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.yl_material_state" :value="scope.row.materialState"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="250" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
|
@ -116,6 +131,15 @@
|
|||
<el-form-item label="单价" prop="materialPrice">
|
||||
<el-input v-model="form.materialPrice" placeholder="请输入单价" />
|
||||
</el-form-item>
|
||||
<el-form-item prop="materialState" label="停用状态" label-width="100px">
|
||||
<el-radio-group v-model="form.materialState">
|
||||
<el-radio
|
||||
v-for="dict in dict.type.yl_material_state"
|
||||
:key="dict.value"
|
||||
:label="dict.value"
|
||||
>{{dict.label}}</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
|
@ -130,6 +154,7 @@ import { listClMaterial, getClMaterial, delClMaterial, addClMaterial, updateClMa
|
|||
|
||||
export default {
|
||||
name: "ClMaterial",
|
||||
dicts: ['yl_material_state'],
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
|
@ -158,6 +183,7 @@ export default {
|
|||
pageSize: 10,
|
||||
materialNo: null,
|
||||
materialName: null,
|
||||
materialState: null,
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
|
@ -204,7 +230,8 @@ export default {
|
|||
materialId: null,
|
||||
materialNo: null,
|
||||
materialName: null,
|
||||
materialPrice: null
|
||||
materialPrice: null,
|
||||
materialState: "0"
|
||||
};
|
||||
this.resetForm("form");
|
||||
},
|
||||
|
|
|
@ -333,6 +333,7 @@ export default {
|
|||
|
||||
//物料类别列表
|
||||
getMaterialType(){
|
||||
this.queryParams.typeState='0';//筛选正常的物料类型
|
||||
listMaterialType(this.queryParams).then(response => {
|
||||
this.cTypeList = response.cTypeList;
|
||||
|
||||
|
|
|
@ -25,6 +25,16 @@
|
|||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="状态" prop="materialState">
|
||||
<el-select v-model="queryParams.materialState" placeholder="物料状态" clearable>
|
||||
<el-option
|
||||
v-for="dict in dict.type.material_state"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<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>
|
||||
|
@ -86,6 +96,11 @@
|
|||
<el-table-column label="规格" align="center" prop="materialGuig" />
|
||||
<el-table-column label="电压" align="center" prop="materialDiany" />
|
||||
<el-table-column label="单位" align="center" prop="materialDw" />
|
||||
<el-table-column prop="materialState" label="状态" width="80">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.material_state" :value="scope.row.materialState"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="250" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
|
@ -130,6 +145,17 @@
|
|||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item prop="materialState" label="停用状态" label-width="100px">
|
||||
<el-radio-group v-model="form.materialState">
|
||||
<el-radio
|
||||
v-for="dict in dict.type.material_state"
|
||||
:key="dict.value"
|
||||
:label="dict.value"
|
||||
>{{dict.label}}</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
|
@ -227,6 +253,7 @@ import { numAdd,numSub,numMulti,numDiv } from "@/utils/operation";
|
|||
|
||||
export default {
|
||||
name: "Material",
|
||||
dicts: ['material_state'],
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
|
@ -265,6 +292,7 @@ export default {
|
|||
materialXingh: null,
|
||||
materialGuig: null,
|
||||
materialDiany: null,
|
||||
materialState: null
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
|
@ -322,6 +350,7 @@ export default {
|
|||
|
||||
//物料类别列表
|
||||
getMaterialType(){
|
||||
this.queryParams.typeState='0';//筛选正常的类别
|
||||
listMaterialType(this.queryParams).then(response => {
|
||||
this.cTypeList = response.cTypeList;
|
||||
/*
|
||||
|
@ -346,7 +375,8 @@ export default {
|
|||
materialXingh: null,
|
||||
materialGuig: null,
|
||||
materialDiany: null,
|
||||
materialDw: null
|
||||
materialDw: null,
|
||||
materialState: 0
|
||||
};
|
||||
this.cMaterialCostList = [];
|
||||
this.resetForm("form");
|
||||
|
|
|
@ -17,6 +17,16 @@
|
|||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="状态" prop="typeState">
|
||||
<el-select v-model="queryParams.typeState" placeholder="类别状态" clearable>
|
||||
<el-option
|
||||
v-for="dict in dict.type.material_type_state"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<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>
|
||||
|
@ -75,6 +85,11 @@
|
|||
<el-table-column label="id" align="center" prop="typeId" v-if="false"/>
|
||||
<el-table-column label="编码" align="center" prop="typeNo" />
|
||||
<el-table-column label="名称" align="center" prop="typeName" />
|
||||
<el-table-column prop="typeState" label="状态" width="80">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.material_type_state" :value="scope.row.typeState"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
|
@ -112,6 +127,15 @@
|
|||
<el-form-item label="名称" prop="typeName">
|
||||
<el-input v-model="form.typeName" placeholder="请输入名称" />
|
||||
</el-form-item>
|
||||
<el-form-item prop="typeState" label="停用状态" label-width="100px">
|
||||
<el-radio-group v-model="form.typeState">
|
||||
<el-radio
|
||||
v-for="dict in dict.type.material_type_state"
|
||||
:key="dict.value"
|
||||
:label="dict.value"
|
||||
>{{dict.label}}</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
|
@ -126,6 +150,7 @@ import { listMaterialType, getMaterialType, delMaterialType, addMaterialType, up
|
|||
|
||||
export default {
|
||||
name: "MaterialType",
|
||||
dicts: ['material_type_state'],
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
|
@ -154,6 +179,7 @@ export default {
|
|||
pageSize: 10,
|
||||
typeNo: null,
|
||||
typeName: null,
|
||||
typeState:null
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
|
|
Loading…
Reference in New Issue