新建案件界面布局

This commit is contained in:
JIAL 2023-12-10 00:04:13 +08:00
parent 88a66ba64e
commit 79ed867fd4
8 changed files with 2256 additions and 1139 deletions

File diff suppressed because it is too large Load Diff

View File

@ -45,6 +45,157 @@
margin-right: 4px; margin-right: 4px;
} }
.addDish .el-input {
width: 130px;
}
.addDish .el-input-number__increase {
border-left: solid 1px #FFE1CA;
background: #fff3ea;
}
.addDish .el-input-number__decrease {
border-right: solid 1px #FFE1CA;
background: #fff3ea;
}
.addDish input {
border: 1px solid #ffe1ca;
}
.addDish .table {
border: solid 1px #EBEEF5;
border-radius: 3px;
}
.addDish .table th {
padding: 5px 0;
}
.addDish .table td {
padding: 7px 0;
}
.addDishList .seachDish {
position: absolute;
top: 10px;
right: 20px;
}
.addDishList .el-dialog__body {
padding: 0;
border-bottom: solid 1px #ccc;
}
.addDishList .el-dialog__footer {
padding-top: 27px;
}
.addDish {
width: 777px;
}
.addDish .addBut {
background: #ffc200;
display: inline-block;
padding: 0px 20px;
border-radius: 3px;
line-height: 40px;
cursor: pointer;
border-radius: 4px;
color: #333333;
font-weight: 500;
}
.addDish .content {
background: #fafafb;
padding: 20px;
border: solid 1px #ccc;
border-radius: 3px;
}
.addDishCon {
padding: 0 20px;
display: flex;
line-height: 40px;
}
.addDishCon .leftCont {
display: flex;
border-right: solid 2px #E4E7ED;
width: 60%;
padding: 15px;
}
.addDishCon .leftCont .tabBut {
width: 110px;
}
.addDishCon .leftCont .tabBut span {
display: block;
text-align: center;
border-right: solid 2px #f4f4f4;
cursor: pointer;
}
.addDishCon .leftCont .act {
border-color: #FFC200 !important;
color: #FFC200 !important;
}
.addDishCon .leftCont .tabList {
flex: 1;
padding: 15px;
}
.addDishCon .leftCont .tabList .table {
border: solid 1px #f4f4f4;
border-bottom: solid 1px #f4f4f4;
}
.addDishCon .leftCont .tabList .table .items {
border-bottom: solid 1px #f4f4f4;
padding: 0 10px;
display: flex;
}
.addDishCon .leftCont .tabList .table .items .el-checkbox, .addDishCon .leftCont .tabList .table .items .el-checkbox__label {
width: 100%;
}
.addDishCon .leftCont .tabList .table .items .item {
display: flex;
padding-right: 20px;
}
.addDishCon .leftCont .tabList .table .items .item span {
display: inline-block;
text-align: center;
flex: 1;
}
.addDishCon .ritCont {
width: 40%;
padding: 0 15px;
}
.addDishCon .ritCont .item {
box-shadow: 0px 1px 4px 3px rgba(0, 0, 0, 0.03);
display: flex;
text-align: center;
padding: 0 10px;
margin-bottom: 20px;
border-radius: 6px;
color: #818693;
}
.addDishCon .ritCont .item span:first-child {
text-align: left;
color: #20232A;
}
.addD ishCon .ritCont .item .price {
display: inline-block;
flex: 1;
}
.addDishCon .ritCont .item .del {
cursor: pointer;
}
.addDishCon .ritCont .item .del img {
position: relative;
top: 5px;
width: 20px;
}
.addDishCon .el-checkbox__label{
width: 100%;
}
#combo-add-app .setmealFood .el-form-item__label::before{
content: '*';
color: #F56C6C;
margin-right: 4px;
}
#combo-add-app .uploadImg .el-form-item__label::before{
content: '*';
color: #F56C6C;
margin-right: 4px;
}
</style> </style>
</head> </head>
<body> <body>
@ -179,6 +330,76 @@
</el-form-item> </el-form-item>
</el-form-item> </el-form-item>
<div> <div>
<el-form-item label="原告信息:" class="setmealFood">
<el-form-item>
<div class="addDish">
<span class="addBut" @click="openAddDish"> + 添加菜品</span>
<div v-if="dishTable.length != 0" class="content">
<div class="addBut" style="margin-bottom: 20px" @click="openAddDish">+ 添加菜品</div>
<div class="table">
<el-table :data="dishTable" style="width: 100%">
<el-table-column prop="name" label="名称" width="180" align="center"></el-table-column>
<el-table-column prop="price" label="原价" width="180">
<template slot-scope="scope"> {{ Number(scope.row.price) / 100 }} </template>
</el-table-column>
<el-table-column prop="address" label="份数" align="center">
<template slot-scope="scope">
<el-input-number
v-model="scope.row.copies"
size="small"
:min="1"
:max="99"
label="描述文字"
></el-input-number>
</template>
</el-table-column>
<el-table-column prop="address" label="操作" width="180px;" align="center">
<template slot-scope="scope">
<el-button type="text" size="small" @click="delDishHandle(scope.$index)"> 删除 </el-button>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
</el-form-item>
</el-form-item>
</div>
<div>
<el-form-item label="被告信息:" class="setmealFood">
<el-form-item>
<div class="addDish">
<span class="addBut" @click="openAddDish"> + 添加菜品</span>
<div v-if="dishTable.length != 0" class="content">
<div class="addBut" style="margin-bottom: 20px" @click="openAddDish">+ 添加菜品</div>
<div class="table">
<el-table :data="dishTable" style="width: 100%">
<el-table-column prop="name" label="名称" width="180" align="center"></el-table-column>
<el-table-column prop="price" label="原价" width="180">
<template slot-scope="scope"> {{ Number(scope.row.price) / 100 }} </template>
</el-table-column>
<el-table-column prop="address" label="份数" align="center">
<template slot-scope="scope">
<el-input-number
v-model="scope.row.copies"
size="small"
:min="1"
:max="99"
label="描述文字"
></el-input-number>
</template>
</el-table-column>
<el-table-column prop="address" label="操作" width="180px;" align="center">
<template slot-scope="scope">
<el-button type="text" size="small" @click="delDishHandle(scope.$index)"> 删除 </el-button>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
</el-form-item>
</el-form-item>
</div> </div>
<div> <div>
<el-form-item <el-form-item
@ -321,9 +542,7 @@
} }
}, },
created() { created() {
this.getDishList()
// 口味临时数据 // 口味临时数据
this.getFlavorListHand()
this.id = requestUrlParam('id') this.id = requestUrlParam('id')
this.actionType = this.id ? 'edit' : 'add' this.actionType = this.id ? 'edit' : 'add'
if (this.id) { if (this.id) {
@ -387,16 +606,6 @@
} }
}, },
// 获取菜品分类
getDishList () {
getCategoryList({ 'type': 1 }).then(res => {
if (res.code === 1) {
this.dishList = res.data
} else {
this.$message.error(res.msg || '操作失败')
}
})
},
// 获取口味列表 // 获取口味列表
getFlavorListHand () { getFlavorListHand () {

View File

@ -28,6 +28,8 @@
@click="init" @click="init"
></i> ></i>
</el-input> </el-input>
<div class="tableLab" style="display: flex; align-items: center; justify-content: space-between;">
<el-date-picker v-model="orderTime" <el-date-picker v-model="orderTime"
clearable clearable
value-format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
@ -40,13 +42,12 @@
style="width: 400px;margin-left: 20px;" style="width: 400px;margin-left: 20px;"
></el-date-picker> ></el-date-picker>
<el-button type="primary" class="search-btn" @click="init">查询</el-button> <el-button type="primary" class="search-btn" @click="init">查询</el-button>
<div class="tableLab">
<span class="span-btn delBut non" @click="deleteHandle('批量', null)">批量删除</span> <span class="span-btn delBut non" @click="deleteHandle('批量', null)">批量删除</span>
<span class="span-btn blueBug non" @click="statusHandle('1')">批量开庭</span> <span class="span-btn blueBug non" @click="statusHandle('1')">批量开庭</span>
<span style="border:none;" class="span-btn delBut non" @click="statusHandle('0')">批量结案</span> <span style="border:none;" class="span-btn delBut non" @click="statusHandle('0')">批量结案</span>
<el-button <el-button
type="primary" type="primary"
@click="addFoodtype('add')" @click="addCaseType('add')"
> >
+ 新建案件 + 新建案件
</el-button> </el-button>
@ -105,7 +106,7 @@
type="text" type="text"
size="small" size="small"
class="blueBug" class="blueBug"
@click="addFoodtype(scope.row.id)" @click="addCaseType(scope.row.id)"
> >
修改 修改
</el-button> </el-button>
@ -193,18 +194,18 @@
this.init(); this.init();
}, },
// 添加 // 添加
addFoodtype (st) { addCaseType (st) {
if (st === 'add'){ if (st === 'add'){
window.parent.menuHandle({ window.parent.menuHandle({
id: '3', id: '3',
url: '/backend/page/food/add.html', url: '/backend/page/hearCase/add.html',
name: '添加菜品' name: '添加案件'
},true) },true)
} else { } else {
window.parent.menuHandle({ window.parent.menuHandle({
id: '3', id: '3',
url: '/backend/page/food/add.html?id='+st, url: '/backend/page/hearCase/add.html?id='+st,
name: '修改菜品' name: '修改案件'
},true) },true)
} }
}, },

View File

@ -0,0 +1,351 @@
.selectInput {
position: relative;
width: 100%;
min-width: 100px;
}
.selectInput .flavorSelect {
position: absolute;
width: 100%;
padding: 0 10px;
border-radius: 3px;
border: solid 1px #FF903D;
line-height: 30px;
text-align: center;
background: #fff;
top: 50px;
z-index: 99;
}
.selectInput .flavorSelect .items {
cursor: pointer;
display: inline-block;
width: 100%;
line-height: 35px;
border-bottom: solid 1px #f4f4f4;
color: #666;
}
.selectInput .flavorSelect .none {
font-size: 14px;
}
#hearCase-add-app .uploadImg .el-form-item__label::before{
content: '*';
color: #F56C6C;
margin-right: 4px;
}
#hearCase-add-app .plaintiff .el-form-item__label::before{
content: '*';
color: #F56C6C;
margin-right: 4px;
}
.addPlaintiff .el-input {
width: 130px;
}
.addPlaintiff .el-input-number__increase {
border-left: solid 1px #FFE1CA;
background: #fff3ea;
}
.addPlaintiff .el-input-number__decrease {
border-right: solid 1px #FFE1CA;
background: #fff3ea;
}
.addPlaintiff input {
border: 1px solid #ffe1ca;
}
.addPlaintiff .table {
border: solid 1px #EBEEF5;
border-radius: 3px;
}
.addPlaintiff .table th {
padding: 5px 0;
}
.addPlaintiff .table td {
padding: 7px 0;
}
.addPlaintiffList .searchPlaintiff {
position: absolute;
top: 10px;
right: 20px;
}
.addPlaintiffList .el-dialog__body {
padding: 0;
border-bottom: solid 1px #ccc;
}
.addPlaintiffList .el-dialog__footer {
padding-top: 27px;
}
.addPlaintiff {
width: 777px;
}
.addPlaintiff .addBut {
background: #ffc200;
display: inline-block;
padding: 0px 20px;
border-radius: 3px;
line-height: 40px;
cursor: pointer;
border-radius: 4px;
color: #333333;
font-weight: 500;
}
.addPlaintiff .content {
background: #fafafb;
padding: 20px;
border: solid 1px #ccc;
border-radius: 3px;
}
.addPlaintiffCon {
padding: 0 20px;
display: flex;
line-height: 40px;
}
.addPlaintiffCon .leftCont {
display: flex;
border-right: solid 2px #E4E7ED;
width: 60%;
padding: 15px;
}
.addPlaintiffCon .leftCont .tabBut {
width: 110px;
}
.addPlaintiffCon .leftCont .tabBut span {
display: block;
text-align: center;
border-right: solid 2px #f4f4f4;
cursor: pointer;
}
.addPlaintiffCon .leftCont .act {
border-color: #FFC200 !important;
color: #FFC200 !important;
}
.addPlaintiffCon .leftCont .tabList {
flex: 1;
padding: 15px;
}
.addPlaintiffCon .leftCont .tabList .table {
border: solid 1px #f4f4f4;
border-bottom: solid 1px #f4f4f4;
}
.addPlaintiffCon .leftCont .tabList .table .items {
border-bottom: solid 1px #f4f4f4;
padding: 0 10px;
display: flex;
}
.addPlaintiffCon .leftCont .tabList .table .items .el-checkbox, .addPlaintiffCon .leftCont .tabList .table .items .el-checkbox__label {
width: 100%;
}
.addPlaintiffCon .leftCont .tabList .table .items .item {
display: flex;
padding-right: 20px;
}
.addPlaintiffCon .leftCont .tabList .table .items .item span {
display: inline-block;
text-align: center;
flex: 1;
}
.addPlaintiffCon .ritCont {
width: 40%;
padding: 0 15px;
}
.addPlaintiffCon .ritCont .item {
box-shadow: 0px 1px 4px 3px rgba(0, 0, 0, 0.03);
display: flex;
text-align: center;
padding: 0 10px;
margin-bottom: 20px;
border-radius: 6px;
color: #818693;
}
.addPlaintiffCon .ritCont .item span:first-child {
text-align: left;
color: #20232A;
}
.addPlaintiffCon .ritCont .item .price {
display: inline-block;
flex: 1;
}
.addPlaintiffCon .ritCont .item .del {
cursor: pointer;
}
.addPlaintiffCon .ritCont .item .del img {
position: relative;
top: 5px;
width: 20px;
}
.addPlaintiffCon .el-checkbox__label{
width: 100%;
}
.addDefendant .el-input {
width: 130px;
}
.addDefendant .el-input-number__increase {
border-left: solid 1px #FFE1CA;
background: #fff3ea;
}
.addDefendant .el-input-number__decrease {
border-right: solid 1px #FFE1CA;
background: #fff3ea;
}
.addDefendant input {
border: 1px solid #ffe1ca;
}
.addDefendant .table {
border: solid 1px #EBEEF5;
border-radius: 3px;
}
.addDefendant .table th {
padding: 5px 0;
}
.addDefendant .table td {
padding: 7px 0;
}
.addDefendantList .searchDefendant {
position: absolute;
top: 10px;
right: 20px;
}
.addDefendantList .el-dialog__body {
padding: 0;
border-bottom: solid 1px #ccc;
}
.addDefendantList .el-dialog__footer {
padding-top: 27px;
}
.addDefendant {
width: 777px;
}
.addDefendant .addBut {
background: #ffc200;
display: inline-block;
padding: 0px 20px;
border-radius: 3px;
line-height: 40px;
cursor: pointer;
border-radius: 4px;
color: #333333;
font-weight: 500;
}
.addDefendant .content {
background: #fafafb;
padding: 20px;
border: solid 1px #ccc;
border-radius: 3px;
}
.addDefendantCon {
padding: 0 20px;
display: flex;
line-height: 40px;
}
.addDefendantCon .leftCont {
display: flex;
border-right: solid 2px #E4E7ED;
width: 60%;
padding: 15px;
}
.addDefendantCon .leftCont .tabBut {
width: 110px;
}
.addDefendantCon .leftCont .tabBut span {
display: block;
text-align: center;
border-right: solid 2px #f4f4f4;
cursor: pointer;
}
.addDefendantCon .leftCont .act {
border-color: #FFC200 !important;
color: #FFC200 !important;
}
.addDefendantCon .leftCont .tabList {
flex: 1;
padding: 15px;
}
.addDefendantCon .leftCont .tabList .table {
border: solid 1px #f4f4f4;
border-bottom: solid 1px #f4f4f4;
}
.addDefendantCon .leftCont .tabList .table .items {
border-bottom: solid 1px #f4f4f4;
padding: 0 10px;
display: flex;
}
.addDefendantCon .leftCont .tabList .table .items .el-checkbox,
.addDefendantCon .leftCont .tabList .table .items .el-checkbox__label {
width: 100%;
}
.addDefendantCon .leftCont .tabList .table .items .item {
display: flex;
padding-right: 20px;
}
.addDefendantCon .leftCont .tabList .table .items .item span {
display: inline-block;
text-align: center;
flex: 1;
}
.addDefendantCon .ritCont {
width: 40%;
padding: 0 15px;
}
.addDefendantCon .ritCont .item {
box-shadow: 0px 1px 4px 3px rgba(0, 0, 0, 0.03);
display: flex;
text-align: center;
padding: 0 10px;
margin-bottom: 20px;
border-radius: 6px;
color: #818693;
}
.addDefendantCon .ritCont .item span:first-child {
text-align: left;
color: #20232A;
}
.addDefendantCon .ritCont .item .price {
display: inline-block;
flex: 1;
}
.addDefendantCon .ritCont .item .del {
cursor: pointer;
}
.addDefendantCon .ritCont .item .del img {
position: relative;
top: 5px;
width: 20px;
}
.addDefendantCon .el-checkbox__label {
width: 100%;
}

File diff suppressed because it is too large Load Diff

View File

@ -39,40 +39,34 @@
font-size: 14px; font-size: 14px;
} }
#hearCase-add-app .uploadImg .el-form-item__label::before{ #food-add-app .uploadImg .el-form-item__label::before{
content: '*'; content: '*';
color: #F56C6C; color: #F56C6C;
margin-right: 4px; margin-right: 4px;
} }
#hearCase-add-app .plaintiff .el-form-item__label::before{ .addDish .el-input {
content: '*';
color: #F56C6C;
margin-right: 4px;
}
.addPlaintiff .el-input {
width: 130px; width: 130px;
} }
.addPlaintiff .el-input-number__increase { .addDish .el-input-number__increase {
border-left: solid 1px #FFE1CA; border-left: solid 1px #FFE1CA;
background: #fff3ea; background: #fff3ea;
} }
.addPlaintiff .el-input-number__decrease { .addDish .el-input-number__decrease {
border-right: solid 1px #FFE1CA; border-right: solid 1px #FFE1CA;
background: #fff3ea; background: #fff3ea;
} }
.addPlaintiff input { .addDish input {
border: 1px solid #ffe1ca; border: 1px solid #ffe1ca;
} }
.addPlaintiff .table { .addDish .table {
border: solid 1px #EBEEF5; border: solid 1px #EBEEF5;
border-radius: 3px; border-radius: 3px;
} }
.addPlaintiff .table th { .addDish .table th {
padding: 5px 0; padding: 5px 0;
} }
.addPlaintiff .table td { .addDish .table td {
padding: 7px 0; padding: 7px 0;
} }
.addDishList .seachDish { .addDishList .seachDish {
@ -88,10 +82,10 @@
padding-top: 27px; padding-top: 27px;
} }
.addPlaintiff { .addDish {
width: 777px; width: 777px;
} }
.addPlaintiff .addBut { .addDish .addBut {
background: #ffc200; background: #ffc200;
display: inline-block; display: inline-block;
padding: 0px 20px; padding: 0px 20px;
@ -102,7 +96,7 @@
color: #333333; color: #333333;
font-weight: 500; font-weight: 500;
} }
.addPlaintiff .content { .addDish .content {
background: #fafafb; background: #fafafb;
padding: 20px; padding: 20px;
border: solid 1px #ccc; border: solid 1px #ccc;
@ -174,7 +168,7 @@
text-align: left; text-align: left;
color: #20232A; color: #20232A;
} }
.addDishCon .ritCont .item .price { .addD ishCon .ritCont .item .price {
display: inline-block; display: inline-block;
flex: 1; flex: 1;
} }
@ -205,8 +199,8 @@
</style> </style>
</head> </head>
<body> <body>
<div class="addBrand-container" id="hearCase-add-app"> <div class="addBrand-container" id="food-add-app">
<div class = "container"> <div class="container">
<el-form <el-form
ref="ruleForm" ref="ruleForm"
:model="ruleForm" :model="ruleForm"
@ -217,72 +211,256 @@
> >
<div> <div>
<el-form-item <el-form-item
label="案件号:" label="菜品名称:"
prop="caseNum" prop="name"
> >
<el-input <el-input
v-model="ruleForm.caseNum" v-model="ruleForm.name"
placeholder="请填写案件号" placeholder="请填写菜品名称"
maxlength="20" maxlength="20"
/> />
</el-form-item> </el-form-item>
<el-form-item <el-form-item
label="案件类别:" label="菜品分类:"
prop="caseType" prop="categoryId"
> >
<el-select <el-select
v-model="ruleForm.caseType" v-model="ruleForm.categoryId"
placeholder="请选择案件类别" placeholder="请选择菜品分类"
> >
<el-option v-for="item in caseTypeList" :key="item.id" :label="item.name" :value="item.id" /> <el-option v-for="(item,index) in dishList" :key="index" :label="item.name" :value="item.id" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</div> </div>
<div> <div>
<el-form-item <el-form-item
label="法院名称:" label="菜品价格:"
prop="court" prop="price"
> >
<el-input <el-input
v-model="ruleForm.court" v-model="ruleForm.price"
placeholder="请填写法院名称:" placeholder="请设置菜品价格"
maxlength="20"
/> />
</el-form-item> </el-form-item>
</div> </div>
<div> <el-form-item label="口味做法配置:">
<el-form-item
label="法官姓名:"
prop="judgeName"
>
<el-input
v-model="ruleForm.judgeName"
placeholder="请填写法官姓名:"
maxlength="20"
/>
</el-form-item>
<el-form-item
label="法官联系方式:"
prop="judgePhone"
>
<el-input
v-model="ruleForm.judgePhone"
placeholder="请填写法官联系方式:"
maxlength="20"
/>
</el-form-item>
</div>
<div>
<el-form-item label="原告信息:" class="plaintiff">
<el-form-item> <el-form-item>
<div class = "addPlaintiff"> <div class="flavorBox">
<span class="addBut" @click="openAddPlaintiff"> + 添加原告</span> <span
<div v-if="plaintiffTable.length != 0" class="content"> v-if="dishFlavors.length == 0"
<div class="addBut" style="margin-bottom: 20px" @click="openAddPlaintiff">+ 添加原告</div> class="addBut"
@click="addFlavore"
> + 添加口味</span>
<div
v-if="dishFlavors.length != 0"
class="flavor"
>
<div class="title">
<span>口味名3个字内</span><span>口味标签(输入标签回车添加)</span>
</div>
<div class="cont">
<div
v-for="(item, index) in dishFlavors"
:key="index"
class="items"
>
<div class="itTit">
<!-- <SelectInput
:dish-flavors-data="dishFlavorsData"
:index="index"
:value="item.name"
@select="selectHandle"
/> -->
<div class="selectInput">
<div>
<el-input
v-model="item.name"
type="text"
style="width: 100%"
placeholder="请输入口味"
@focus="selectFlavor(true,index)"
@blur="outSelect(false,index)"
@input="inputHandle(index)"
/>
</div>
<div v-show="item.showOption" class="flavorSelect">
<span
v-for="(it, ind) in dishFlavorsData"
:key="ind"
class="items"
@click="checkOption(it,ind,index)"
>{{ it.name }}</span>
<span
v-if="dishFlavorsData == []"
class="none"
>无数据</span>
</div>
</div>
</div>
<div
class="labItems"
style="display: flex"
>
<span
v-for="(it, ind) in item.value"
:key="ind"
>{{ it }} <i @click="delFlavorLabel(index, ind)">X</i></span>
<div
class="inputBox"
:style="inputStyle"
contenteditable="true"
@focus="flavorPosition(index)"
@keydown.enter="(val)=>keyDownHandle(val,index)"
></div>
</div>
<span
class="delFlavor delBut non"
@click="delFlavor(index)"
>删除</span>
</div>
</div>
<div
class="addBut"
@click="addFlavore"
>
添加口味
</div>
</div> </div>
</div> </div>
</el-form-item> </el-form-item>
</el-form-item> </el-form-item>
<div>
<el-form-item label="原告信息:" class="setmealFood">
<el-form-item>
<div class="addDish">
<span class="addBut" @click="openAddDish"> + 添加菜品</span>
<div v-if="dishTable.length != 0" class="content">
<div class="addBut" style="margin-bottom: 20px" @click="openAddDish">+ 添加菜品</div>
<div class="table">
<el-table :data="dishTable" style="width: 100%">
<el-table-column prop="name" label="名称" width="180" align="center"></el-table-column>
<el-table-column prop="price" label="原价" width="180">
<template slot-scope="scope"> {{ Number(scope.row.price) / 100 }} </template>
</el-table-column>
<el-table-column prop="address" label="份数" align="center">
<template slot-scope="scope">
<el-input-number
v-model="scope.row.copies"
size="small"
:min="1"
:max="99"
label="描述文字"
></el-input-number>
</template>
</el-table-column>
<el-table-column prop="address" label="操作" width="180px;" align="center">
<template slot-scope="scope">
<el-button type="text" size="small" @click="delDishHandle(scope.$index)"> 删除 </el-button>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
</el-form-item>
</el-form-item>
</div>
<div>
<el-form-item label="被告信息:" class="setmealFood">
<el-form-item>
<div class="addDish">
<span class="addBut" @click="openAddDish"> + 添加菜品</span>
<div v-if="dishTable.length != 0" class="content">
<div class="addBut" style="margin-bottom: 20px" @click="openAddDish">+ 添加菜品</div>
<div class="table">
<el-table :data="dishTable" style="width: 100%">
<el-table-column prop="name" label="名称" width="180" align="center"></el-table-column>
<el-table-column prop="price" label="原价" width="180">
<template slot-scope="scope"> {{ Number(scope.row.price) / 100 }} </template>
</el-table-column>
<el-table-column prop="address" label="份数" align="center">
<template slot-scope="scope">
<el-input-number
v-model="scope.row.copies"
size="small"
:min="1"
:max="99"
label="描述文字"
></el-input-number>
</template>
</el-table-column>
<el-table-column prop="address" label="操作" width="180px;" align="center">
<template slot-scope="scope">
<el-button type="text" size="small" @click="delDishHandle(scope.$index)"> 删除 </el-button>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
</el-form-item>
</el-form-item>
</div>
<div>
<el-form-item
label="菜品图片:"
prop="region"
class="uploadImg"
>
<el-upload
class="avatar-uploader"
action="/common/upload"
:show-file-list="false"
:on-success="handleAvatarSuccess"
:on-change="onChange"
ref="upload"
>
<img
v-if="imageUrl"
:src="imageUrl"
class="avatar"
></img>
<i
v-else
class="el-icon-plus avatar-uploader-icon"
></i>
</el-upload>
</el-form-item>
</div>
<div class="address">
<el-form-item
label="菜品描述:"
prop="region"
>
<el-input
v-model="ruleForm.description"
type="textarea"
:rows="3"
placeholder="菜品描述最长200字"
maxlength="200"
/>
</el-form-item>
</div>
<div class="subBox address">
<el-form-item>
<el-button @click="goBack()">
取消
</el-button>
<el-button
type="primary"
@click="submitForm('ruleForm')"
>
保存
</el-button>
<el-button
v-if="actionType == 'add'"
type="primary"
class="continue"
@click="submitForm('ruleForm','goAnd')"
>
保存并继续添加菜品
</el-button>
</el-form-item>
</div> </div>
</el-form> </el-form>
</div> </div>
@ -299,17 +477,33 @@
<script src="../../api/food.js"></script> <script src="../../api/food.js"></script>
<script> <script>
new Vue({ new Vue({
el: '#hearCase-add-app', el: '#food-add-app',
data() { data() {
return { return {
id: '',
restKey: 0,
textarea: '',
value: '',
imageUrl: '',
actionType: '',
dishList: [],
dishFlavorsData: [],
dishFlavors: [],
vueRest : '1',
index : 0,
inputStyle : {'flex':1},
ruleForm : { ruleForm : {
'caseNum': '', 'name': '',
caseType: '', 'id': '',
'price': '',
'code': '',
'image': '',
'description': '',
'dishFlavors': [],
'status': true,
categoryId: ''
}, },
caseTypeList : [ mak: false
{id : 1, name : "审理案件"},
{id : 2, name : "执行案件"}
]
} }
}, },
computed: { computed: {
@ -348,9 +542,7 @@
} }
}, },
created() { created() {
this.getDishList()
// 口味临时数据 // 口味临时数据
this.getFlavorListHand()
this.id = requestUrlParam('id') this.id = requestUrlParam('id')
this.actionType = this.id ? 'edit' : 'add' this.actionType = this.id ? 'edit' : 'add'
if (this.id) { if (this.id) {
@ -414,16 +606,6 @@
} }
}, },
// 获取菜品分类
getDishList () {
getCategoryList({ 'type': 1 }).then(res => {
if (res.code === 1) {
this.dishList = res.data
} else {
this.$message.error(res.msg || '操作失败')
}
})
},
// 获取口味列表 // 获取口味列表
getFlavorListHand () { getFlavorListHand () {

View File

@ -28,6 +28,8 @@
@click="init" @click="init"
></i> ></i>
</el-input> </el-input>
<div class="tableLab" style="display: flex; align-items: center; justify-content: space-between;">
<el-date-picker v-model="orderTime" <el-date-picker v-model="orderTime"
clearable clearable
value-format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
@ -40,13 +42,12 @@
style="width: 400px;margin-left: 20px;" style="width: 400px;margin-left: 20px;"
></el-date-picker> ></el-date-picker>
<el-button type="primary" class="search-btn" @click="init">查询</el-button> <el-button type="primary" class="search-btn" @click="init">查询</el-button>
<div class="tableLab">
<span class="span-btn delBut non" @click="deleteHandle('批量', null)">批量删除</span> <span class="span-btn delBut non" @click="deleteHandle('批量', null)">批量删除</span>
<span class="span-btn blueBug non" @click="statusHandle('1')">批量开庭</span> <span class="span-btn blueBug non" @click="statusHandle('1')">批量开庭</span>
<span style="border:none;" class="span-btn delBut non" @click="statusHandle('0')">批量结案</span> <span style="border:none;" class="span-btn delBut non" @click="statusHandle('0')">批量结案</span>
<el-button <el-button
type="primary" type="primary"
@click="addFoodtype('add')" @click="addCaseType('add')"
> >
+ 新建案件 + 新建案件
</el-button> </el-button>
@ -105,7 +106,7 @@
type="text" type="text"
size="small" size="small"
class="blueBug" class="blueBug"
@click="addFoodtype(scope.row.id)" @click="addCaseType(scope.row.id)"
> >
修改 修改
</el-button> </el-button>
@ -193,18 +194,18 @@
this.init(); this.init();
}, },
// 添加 // 添加
addFoodtype (st) { addCaseType (st) {
if (st === 'add'){ if (st === 'add'){
window.parent.menuHandle({ window.parent.menuHandle({
id: '3', id: '3',
url: '/backend/page/food/add.html', url: '/backend/page/hearCase/add.html',
name: '添加菜品' name: '添加案件'
},true) },true)
} else { } else {
window.parent.menuHandle({ window.parent.menuHandle({
id: '3', id: '3',
url: '/backend/page/food/add.html?id='+st, url: '/backend/page/hearCase/add.html?id='+st,
name: '修改菜品' name: '修改案件'
},true) },true)
} }
}, },

View File

@ -0,0 +1,351 @@
.selectInput {
position: relative;
width: 100%;
min-width: 100px;
}
.selectInput .flavorSelect {
position: absolute;
width: 100%;
padding: 0 10px;
border-radius: 3px;
border: solid 1px #FF903D;
line-height: 30px;
text-align: center;
background: #fff;
top: 50px;
z-index: 99;
}
.selectInput .flavorSelect .items {
cursor: pointer;
display: inline-block;
width: 100%;
line-height: 35px;
border-bottom: solid 1px #f4f4f4;
color: #666;
}
.selectInput .flavorSelect .none {
font-size: 14px;
}
#hearCase-add-app .uploadImg .el-form-item__label::before{
content: '*';
color: #F56C6C;
margin-right: 4px;
}
#hearCase-add-app .plaintiff .el-form-item__label::before{
content: '*';
color: #F56C6C;
margin-right: 4px;
}
.addPlaintiff .el-input {
width: 130px;
}
.addPlaintiff .el-input-number__increase {
border-left: solid 1px #FFE1CA;
background: #fff3ea;
}
.addPlaintiff .el-input-number__decrease {
border-right: solid 1px #FFE1CA;
background: #fff3ea;
}
.addPlaintiff input {
border: 1px solid #ffe1ca;
}
.addPlaintiff .table {
border: solid 1px #EBEEF5;
border-radius: 3px;
}
.addPlaintiff .table th {
padding: 5px 0;
}
.addPlaintiff .table td {
padding: 7px 0;
}
.addPlaintiffList .searchPlaintiff {
position: absolute;
top: 10px;
right: 20px;
}
.addPlaintiffList .el-dialog__body {
padding: 0;
border-bottom: solid 1px #ccc;
}
.addPlaintiffList .el-dialog__footer {
padding-top: 27px;
}
.addPlaintiff {
width: 777px;
}
.addPlaintiff .addBut {
background: #ffc200;
display: inline-block;
padding: 0px 20px;
border-radius: 3px;
line-height: 40px;
cursor: pointer;
border-radius: 4px;
color: #333333;
font-weight: 500;
}
.addPlaintiff .content {
background: #fafafb;
padding: 20px;
border: solid 1px #ccc;
border-radius: 3px;
}
.addPlaintiffCon {
padding: 0 20px;
display: flex;
line-height: 40px;
}
.addPlaintiffCon .leftCont {
display: flex;
border-right: solid 2px #E4E7ED;
width: 60%;
padding: 15px;
}
.addPlaintiffCon .leftCont .tabBut {
width: 110px;
}
.addPlaintiffCon .leftCont .tabBut span {
display: block;
text-align: center;
border-right: solid 2px #f4f4f4;
cursor: pointer;
}
.addPlaintiffCon .leftCont .act {
border-color: #FFC200 !important;
color: #FFC200 !important;
}
.addPlaintiffCon .leftCont .tabList {
flex: 1;
padding: 15px;
}
.addPlaintiffCon .leftCont .tabList .table {
border: solid 1px #f4f4f4;
border-bottom: solid 1px #f4f4f4;
}
.addPlaintiffCon .leftCont .tabList .table .items {
border-bottom: solid 1px #f4f4f4;
padding: 0 10px;
display: flex;
}
.addPlaintiffCon .leftCont .tabList .table .items .el-checkbox, .addPlaintiffCon .leftCont .tabList .table .items .el-checkbox__label {
width: 100%;
}
.addPlaintiffCon .leftCont .tabList .table .items .item {
display: flex;
padding-right: 20px;
}
.addPlaintiffCon .leftCont .tabList .table .items .item span {
display: inline-block;
text-align: center;
flex: 1;
}
.addPlaintiffCon .ritCont {
width: 40%;
padding: 0 15px;
}
.addPlaintiffCon .ritCont .item {
box-shadow: 0px 1px 4px 3px rgba(0, 0, 0, 0.03);
display: flex;
text-align: center;
padding: 0 10px;
margin-bottom: 20px;
border-radius: 6px;
color: #818693;
}
.addPlaintiffCon .ritCont .item span:first-child {
text-align: left;
color: #20232A;
}
.addPlaintiffCon .ritCont .item .price {
display: inline-block;
flex: 1;
}
.addPlaintiffCon .ritCont .item .del {
cursor: pointer;
}
.addPlaintiffCon .ritCont .item .del img {
position: relative;
top: 5px;
width: 20px;
}
.addPlaintiffCon .el-checkbox__label{
width: 100%;
}
.addDefendant .el-input {
width: 130px;
}
.addDefendant .el-input-number__increase {
border-left: solid 1px #FFE1CA;
background: #fff3ea;
}
.addDefendant .el-input-number__decrease {
border-right: solid 1px #FFE1CA;
background: #fff3ea;
}
.addDefendant input {
border: 1px solid #ffe1ca;
}
.addDefendant .table {
border: solid 1px #EBEEF5;
border-radius: 3px;
}
.addDefendant .table th {
padding: 5px 0;
}
.addDefendant .table td {
padding: 7px 0;
}
.addDefendantList .searchDefendant {
position: absolute;
top: 10px;
right: 20px;
}
.addDefendantList .el-dialog__body {
padding: 0;
border-bottom: solid 1px #ccc;
}
.addDefendantList .el-dialog__footer {
padding-top: 27px;
}
.addDefendant {
width: 777px;
}
.addDefendant .addBut {
background: #ffc200;
display: inline-block;
padding: 0px 20px;
border-radius: 3px;
line-height: 40px;
cursor: pointer;
border-radius: 4px;
color: #333333;
font-weight: 500;
}
.addDefendant .content {
background: #fafafb;
padding: 20px;
border: solid 1px #ccc;
border-radius: 3px;
}
.addDefendantCon {
padding: 0 20px;
display: flex;
line-height: 40px;
}
.addDefendantCon .leftCont {
display: flex;
border-right: solid 2px #E4E7ED;
width: 60%;
padding: 15px;
}
.addDefendantCon .leftCont .tabBut {
width: 110px;
}
.addDefendantCon .leftCont .tabBut span {
display: block;
text-align: center;
border-right: solid 2px #f4f4f4;
cursor: pointer;
}
.addDefendantCon .leftCont .act {
border-color: #FFC200 !important;
color: #FFC200 !important;
}
.addDefendantCon .leftCont .tabList {
flex: 1;
padding: 15px;
}
.addDefendantCon .leftCont .tabList .table {
border: solid 1px #f4f4f4;
border-bottom: solid 1px #f4f4f4;
}
.addDefendantCon .leftCont .tabList .table .items {
border-bottom: solid 1px #f4f4f4;
padding: 0 10px;
display: flex;
}
.addDefendantCon .leftCont .tabList .table .items .el-checkbox,
.addDefendantCon .leftCont .tabList .table .items .el-checkbox__label {
width: 100%;
}
.addDefendantCon .leftCont .tabList .table .items .item {
display: flex;
padding-right: 20px;
}
.addDefendantCon .leftCont .tabList .table .items .item span {
display: inline-block;
text-align: center;
flex: 1;
}
.addDefendantCon .ritCont {
width: 40%;
padding: 0 15px;
}
.addDefendantCon .ritCont .item {
box-shadow: 0px 1px 4px 3px rgba(0, 0, 0, 0.03);
display: flex;
text-align: center;
padding: 0 10px;
margin-bottom: 20px;
border-radius: 6px;
color: #818693;
}
.addDefendantCon .ritCont .item span:first-child {
text-align: left;
color: #20232A;
}
.addDefendantCon .ritCont .item .price {
display: inline-block;
flex: 1;
}
.addDefendantCon .ritCont .item .del {
cursor: pointer;
}
.addDefendantCon .ritCont .item .del img {
position: relative;
top: 5px;
width: 20px;
}
.addDefendantCon .el-checkbox__label {
width: 100%;
}