杜函宇 1 year ago
commit 11b77540c5

@ -4,7 +4,7 @@
* @Author: JC9527 * @Author: JC9527
* @Date: 2023-09-11 15:38:21 * @Date: 2023-09-11 15:38:21
* @LastEditors: JC9527 * @LastEditors: JC9527
* @LastEditTime: 2023-09-28 13:22:58 * @LastEditTime: 2023-09-30 00:52:32
*/ */
import request from '@/utils/request' import request from '@/utils/request'
@ -64,11 +64,11 @@ export default {
}); });
}, },
// 查看计划明细 // 查看计划明细
planmx(data){ planmx(params){
return request({ return request({
url: `/pharmaceuticals/bPlanEnterprise/planmx`, url: `/pharmaceuticals/bPlanEnterprise/planmx`,
method:'post', method:'post',
data, params,
}); });
}, },
// 查询计划企业列表 // 查询计划企业列表

@ -56,7 +56,7 @@
</div> --> </div> -->
<div class="select-input"> <div class="select-input">
<div class="select-span">经济类型:</div> <div class="select-span">经济类型:</div>
<el-select v-model="form.economicsType" placeholder="请选择"> <el-select v-model="form.ecoTypeLarge" placeholder="请选择">
<el-option <el-option
v-for="item in dict.type.economic_categories" v-for="item in dict.type.economic_categories"
:key="item.value" :key="item.value"
@ -355,7 +355,7 @@ export default {
subdistrict:'', subdistrict:'',
form: { form: {
subdistrict: [], subdistrict: [],
frimType: "", ecoTypeLarge: "",
indusTypeClass: "", indusTypeClass: "",
isPoint: "", isPoint: "",
majorHazardLevel: "", majorHazardLevel: "",
@ -392,6 +392,7 @@ export default {
// unselected: 0, // unselected: 0,
selectList: [], selectList: [],
disabled:false, disabled:false,
county:false,
}; };
}, },
computed: { computed: {
@ -431,7 +432,7 @@ export default {
// //
componendDistrict(district){ componendDistrict(district){
let name let name
this.myDistrict.map((item)=>{ this.district.map((item)=>{
if(item.subdistrict == district) { if(item.subdistrict == district) {
name = item.institutionName name = item.institutionName
} else { } else {
@ -471,19 +472,26 @@ export default {
let obj let obj
// //
if(!this.disabled) { if(!this.disabled) {
if(this.form.subdistrict.length > 0){ // console.log('123')
if(Array.isArray(this.form.subdistrict)){
if(this.form.subdistrict.length == 2) { if(this.form.subdistrict.length == 2) {
this.form.subdistrict = this.form.subdistrict[1] this.subdistrict = this.form.subdistrict[2].slice(1, 11);
this.subdistrict = this.form.subdistrict.slice(1, 11);
obj = { ...this.pages, ...this.form,subdistrict:this.subdistrict }; obj = { ...this.pages, ...this.form,subdistrict:this.subdistrict };
} else if(this.form.subdistrict.length == 1) { } else if(this.form.subdistrict.length == 1) {
this.form.subdistrict = this.form.subdistrict[0] this.subdistrict = this.form.subdistrict[1].slice(1, 8);
this.subdistrict = this.form.subdistrict.slice(1, 8);
obj = { ...this.pages, ...this.form,subdistrict:this.subdistrict }; obj = { ...this.pages, ...this.form,subdistrict:this.subdistrict };
}
} else { } else {
obj = {...this.pages,...this.form} obj = {...this.pages,...this.form}
} }
} else {
if(this.county){
let subdistrict = this.form.subdistrict.slice(1, 8);
obj = { ...this.pages, ...this.form,subdistrict };
} else {
let subdistrict = this.form.subdistrict.slice(1, 8);
obj = { ...this.pages, ...this.form,subdistrict };
}
}
} else { } else {
// //
// if(this.dept.ancestors.split(',').length == 2) { // if(this.dept.ancestors.split(',').length == 2) {
@ -647,9 +655,17 @@ export default {
this.pages = pages; this.pages = pages;
console.log(this.form) console.log(this.form)
if(this.dept.ancestors.split(',').length == 2){ if(this.dept.ancestors.split(',').length == 2){
if(Array.isArray(this.form.subdistrict)) {
this.subdistrict = this.form.subdistrict.slice(1, 8); this.subdistrict = this.form.subdistrict.slice(1, 8);
} else {
this.subdistrict = this.form.subdistrict;
}
} else if(this.dept.ancestors.split(',').length == 3){ } else if(this.dept.ancestors.split(',').length == 3){
if(Array.isArray(this.form.subdistrict)) {
this.subdistrict = this.form.subdistrict.slice(1, 11); this.subdistrict = this.form.subdistrict.slice(1, 11);
} else {
this.subdistrict = this.form.subdistrict;
}
} }
this.getTable({...pages,...this.form,subdistrict:this.subdistrict}); this.getTable({...pages,...this.form,subdistrict:this.subdistrict});
}, },
@ -767,36 +783,46 @@ export default {
return ""; return "";
}, },
commentData(item,dept) { commentData(item,dept) {
// item.map((item)=>{
// if(item.children instanceof Array && item.children.length == 0){
// item.county = item.subdistrict
// delete item.children;
// } else {
// // this.props.value = 'subdistrict'
// this.commentData(item.children,dept)
// }
// })
item.map((item)=>{ item.map((item)=>{
if(item.children instanceof Array && item.children.length == 0){ item.children.map((itemTwo)=>{
item.county = item.subdistrict itemTwo.county = itemTwo.subdistrict
delete item.children;
} else {
// this.props.value = 'subdistrict'
this.commentData(item.children,dept)
}
}) })
this.myDistrict = item; })
// this.myDistrict = item;
this.listOne = item this.listOne = item
if(dept.ancestors.split(',').length == 2) { if(dept.ancestors.split(',').length == 2) {
this.listOne = this.listOne.filter((item)=>{ this.listOne = this.listOne.filter((item)=>{
return item.institutionName == dept.deptName return item.institutionName == dept.deptName
}) })
// this.listOne.map((item)=>{ this.listOne.map((item)=>{
// if(item.institutionName == dept.deptName) { if(item.institutionName == dept.deptName) {
// this.form.subdistrict = item.county console.log(item.county)
// this.workingArea = item.county this.form.subdistrict = item.county
this.workingArea = item.county
this.county = true;
// delete item.children // delete item.children
// } }
// }) })
// this.disabled = true; // this.disabled = true;
} else if(dept.ancestors.split(',').length == 3) { } else if(dept.ancestors.split(',').length == 3) {
this.listOne.map((item)=>{ this.listOne.map((item)=>{
if(item.institutionName == dept.deptName) { item.children.map((itemTwo)=>{
this.form.subdistrict = item.subdistrict if(itemTwo.institutionName == dept.deptName) {
this.workingArea = item.county this.form.subdistrict = itemTwo.subdistrict
this.workingArea = itemTwo.county
this.county = false;
} }
}) })
})
this.disabled = true; this.disabled = true;
} }
}, },

@ -24,13 +24,7 @@
v-for="(item, index) in listDes" v-for="(item, index) in listDes"
:key="index" :key="index"
> >
{{ {{ item.value}}
item.value == "null"
? ""
: item.value == "false"
? "暂无"
: item.value
}}
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
</div> </div>
@ -40,6 +34,18 @@
</template> </template>
<script> <script>
export default { export default {
dicts: [
"economic_categories",
"economic_subcategory",
"special_governance",
"enterprise_status",
"standardization_level",
"safety_level",
"category",
"major_hazard_level",
"entpr_color",
"is_point",
],
data() { data() {
return { return {
addShow: false, addShow: false,
@ -89,9 +95,19 @@ export default {
label: "注册安全工程师人员数量", label: "注册安全工程师人员数量",
value: "", value: "",
}, },
// {
// eng: "doublePreven",
// label: "",
// value: "",
// },
{
eng: "ecoTypeLarge",
label: "经济类型大类",
value: "",
},
{ {
eng: "doublePreven", eng: "ecoTypeSmall",
label: "是否开展双重预防机制", label: "经济类型小类",
value: "", value: "",
}, },
{ {
@ -100,20 +116,25 @@ export default {
value: "", value: "",
}, },
{ {
eng: "enterColorChart", eng: "entprcolor",
label: "企业分色", label: "企业分色",
value: "", value: "",
}, },
// {
// eng: "entprId",
// label: "ID",
// value: "",
// },
{ {
eng: "entprName", eng: "entprName",
label: "企业名称", label: "企业名称",
value: "", value: "",
}, },
{ // {
eng: "entprPlaneGragh", // eng: "entprPlaneGragh",
label: "企业平面图", // label: "",
value: "", // value: "",
}, // },
{ {
eng: "floorArea", eng: "floorArea",
label: "占地面积(㎡)", label: "占地面积(㎡)",
@ -154,11 +175,26 @@ export default {
label: "行业类别门类", label: "行业类别门类",
value: "", value: "",
}, },
{ // {
eng: "industryRefer", // eng: "indusTypeLagre",
label: "工贸涉及(专项治理类别)", // label: "",
value: "", // value: "",
}, // },
// {
// eng: "indusTypeMiddle",
// label: "",
// value: "",
// },
// {
// eng: "indusTypeSmall",
// label: "",
// value: "",
// },
// {
// eng: "industryRefer",
// label: "()",
// value: "",
// },
{ {
eng: "infoYear", eng: "infoYear",
label: "数据年份", label: "数据年份",
@ -306,86 +342,89 @@ export default {
label: "是否为国有企业", label: "是否为国有企业",
value: "", value: "",
}, },
{ // {
eng: "supervisionLarge", // eng: "supervisionLarge",
label: "行业监管大类", // label: "",
value: "", // value: "",
}, // },
{ // {
eng: "supervisionSmall", // eng: "supervisionSmall",
label: "行业监管小类", // label: "",
value: "", // value: "",
}, // },
{ {
eng: "uscCode", eng: "uscCode",
label: "统一社会信用代码", label: "统一社会信用代码",
value: "", value: "",
}, },
], ],
details:null
} }
}, },
methods:{ methods:{
async open(option) { async open(option) {
this.addShow = true; this.addShow = true;
const { bizAddr, this.look(option)
bossEmail, // const { bizAddr,
bossMobtel, // bossEmail,
bossTel, // bossMobtel,
businessScope, // bossTel,
contactEmail, // businessScope,
contactQq, // contactEmail,
contactTel, // contactQq,
cseNum, // contactTel,
doublePreven, // cseNum,
employeeNum, // doublePreven,
enterColorChart, // employeeNum,
entprName, // enterColorChart,
entprPlaneGragh, // entprName,
floorArea, // entprPlaneGragh,
fullEmegNum, // floorArea,
fullSafety, // fullEmegNum,
fullSafetyNum, // fullSafety,
gridCode, // fullSafetyNum,
gridEntprStatus, // gridCode,
groupCompName, // gridEntprStatus,
indusTypeClass, // groupCompName,
industryRefer, // indusTypeClass,
infoYear, // industryRefer,
isPoint, // infoYear,
latitudeGps, // isPoint,
legalPerson, // latitudeGps,
localSafetyAdmin, // legalPerson,
longitudeGps, // localSafetyAdmin,
mainProduct, // longitudeGps,
majorHazardInstallations, // mainProduct,
majorHazardLevel, // majorHazardInstallations,
operatingStatus, // majorHazardLevel,
parentCompName, // operatingStatus,
partSafetyNum, // parentCompName,
regAddr, // partSafetyNum,
regCapi, // regAddr,
safetyDepart, // regCapi,
safetyDepartDuty, // safetyDepart,
safetyDepartName, // safetyDepartDuty,
safetyDepartNum, // safetyDepartName,
safetyEmail, // safetyDepartNum,
safetyManager, // safetyEmail,
safetyMobtel, // safetyManager,
safetySupervisionLevel, // safetyMobtel,
safetyTel, // safetySupervisionLevel,
setupDate, // safetyTel,
sourceData, // setupDate,
specialGovernance, // sourceData,
speclalOperationNum, // specialGovernance,
standLevel, // speclalOperationNum,
stateOwed, // standLevel,
supervisionLarge, // stateOwed,
supervisionSmall, // supervisionLarge,
uscCode } = option // supervisionSmall,
this.changeDescriptions(this.listDes,option) // uscCode } = option
// this.changeDescriptions(this.listDes,option)
}, },
Close(item) { Close(item) {
this.addShow = false; this.addShow = false;
this.details = null
}, },
changeDescriptions(arr,arr2){ changeDescriptions(arr,arr2){
for (let key in arr2) { for (let key in arr2) {
@ -400,7 +439,105 @@ export default {
}) })
} }
} }
},
filterTable(a, b) {
if (!b) return;
return this.selectDictLabel(a, b);
},
look(e) {
this.details = e;
// console.log(e)
for (let key in this.details) {
this.listDes.forEach((value1, index1) => {
if (key == value1.eng) {
this.listDes[index1].value = this.details[key] == '无' ? '/' : this.details[key];
return;
}
});
}
this.listDes.forEach((value1, index1) => {
//
if (value1.eng == "majorHazardLevel") {
this.listDes[index1].value = this.filterTable(
this.dict.type.major_hazard_level,
value1.value
);
}
//
if (value1.eng == "ecoTypeLarge") {
this.listDes[index1].value = this.filterTable(
this.dict.type.economic_categories,
value1.value
);
}
//
if (value1.eng == "ecoTypeSmall") {
this.listDes[index1].value = this.filterTable(
this.dict.type.economic_subcategory,
value1.value
);
}
//
if (value1.eng == "specialGovernance") {
this.listDes[index1].value = this.filterTable(
this.dict.type.special_governance,
value1.value
);
}
//
//
if (value1.eng == "operatingStatus") {
this.listDes[index1].value = this.filterTable(
this.dict.type.enterprise_status,
value1.value
);
}
//
if (value1.eng == "standLevel") {
this.listDes[index1].value = this.filterTable(
this.dict.type.standardization_level,
value1.value
);
} }
//
if (value1.eng == "safetySupervisionLevel") {
this.listDes[index1].value = this.filterTable(
this.dict.type.safety_level,
value1.value
);
}
//
//
//
//
if (value1.eng == "entprColor") {
this.listDes[index1].value = this.filterTable(
this.dict.type.entpr_color,
value1.value
);
}
//
if (value1.eng == "indusTypeClass") {
this.listDes[index1].value = this.filterTable(
this.dict.type.category,
value1.value
);
}
//
if (value1.eng == "isPoint") {
this.listDes[index1].value = this.filterTable(
this.dict.type.is_point,
value1.value
);
}
if (value1.value == null ) {
this.listDes[index1].value = '/'
}
if ( value1.value == 'false') {
this.listDes[index1].value = '否'
}
});
},
}, },
} }
</script> </script>

@ -4,7 +4,7 @@
* @Author: JC9527 * @Author: JC9527
* @Date: 2023-09-28 11:25:48 * @Date: 2023-09-28 11:25:48
* @LastEditors: JC9527 * @LastEditors: JC9527
* @LastEditTime: 2023-09-28 16:41:42 * @LastEditTime: 2023-09-30 01:07:17
--> -->
<template> <template>
<el-dialog <el-dialog
@ -24,9 +24,9 @@
</div> </div>
<img src="@/assets/images/close.png" alt="" @click="Close" /> <img src="@/assets/images/close.png" alt="" @click="Close" />
</div> </div>
<el-form ref="form" label-width="80px"> <el-form ref="form" label-width="80px" v-loading="loading">
<el-form-item label="企业名称:" class="form-input"> <el-form-item label="企业名称:" class="form-input">
<el-input v-model="form.name" :readonly="true"></el-input> <el-input v-model="form.entprName" :readonly="true"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="行政区划:" class="form-input"> <el-form-item label="行政区划:" class="form-input">
<el-input v-model="form.district" :readonly="true"></el-input> <el-input v-model="form.district" :readonly="true"></el-input>
@ -75,7 +75,7 @@ export default {
dialogVisible:false, dialogVisible:false,
mydistrict:'', mydistrict:'',
form:{ form:{
name:'测试活动名称', entprName:'',
district:'', district:'',
createTime:'', createTime:'',
plannedYear:'', plannedYear:'',
@ -85,6 +85,7 @@ export default {
}, },
id:'', id:'',
readonly:false, readonly:false,
loading:true,
} }
}, },
computed: { computed: {
@ -107,13 +108,15 @@ export default {
async getMyData(id){ async getMyData(id){
// console.log(id) // console.log(id)
// console.log(data) // console.log(data)
this.loading = true;
let data = await this.$api.yingji.bPlanManageTwo(id) let data = await this.$api.yingji.bPlanManageTwo(id)
if(data.code == 200){ if(data.code == 200){
let { district,createTime,plannedYear,planName,planContent,remark } = data.data let { entprName,district,createTime,plannedYear,planName,planContent,remark } = data.data
this.mydistrict = district this.mydistrict = district
let myDistrict = this.componendDistrict(district) let myDistrict = this.componendDistrict(district)
let mycreateTime = createTime.split(' ')[0] let mycreateTime = createTime.split(' ')[0]
this.form = { district:myDistrict,createTime:mycreateTime,plannedYear,planName,planContent,remark } this.form = { entprName,district:myDistrict,createTime:mycreateTime,plannedYear,planName,planContent,remark }
this.loading = false;
} }
}, },
Close(item) { Close(item) {

@ -71,7 +71,7 @@
</el-select> </el-select>
</div> </div>
<div class="input-input"> <div class="input-input">
<div class="select-span">企业名称/统一社会信用代码:</div> <div class="select-span">统一社会信用代码:</div>
<el-input <el-input
v-model="form.uscCode" v-model="form.uscCode"
placeholder="请输入企业名称/统一社会信用代码" placeholder="请输入企业名称/统一社会信用代码"
@ -620,7 +620,7 @@ export default {
for (let key in this.details) { for (let key in this.details) {
this.listDes.forEach((value1, index1) => { this.listDes.forEach((value1, index1) => {
if (key == value1.eng) { if (key == value1.eng) {
this.listDes[index1].value = this.details[key]; this.listDes[index1].value = this.details[key] == '无' ? '/' : this.details[key];
return; return;
} }
}); });

@ -4,7 +4,7 @@
* @Author: JC9527 * @Author: JC9527
* @Date: 2023-09-04 10:20:06 * @Date: 2023-09-04 10:20:06
* @LastEditors: JC9527 * @LastEditors: JC9527
* @LastEditTime: 2023-09-28 13:44:14 * @LastEditTime: 2023-09-30 01:03:48
--> -->
<template> <template>
<div class="plan-management"> <div class="plan-management">
@ -246,6 +246,7 @@
isExpandAll: true, isExpandAll: true,
// //
refreshTable: true, refreshTable: true,
county:false
} }
}, },
computed: { computed: {
@ -269,17 +270,18 @@
let district = this.form.district[1].slice(1, 11); let district = this.form.district[1].slice(1, 11);
obj = { ...this.pages, ...this.form,district }; obj = { ...this.pages, ...this.form,district };
} else if(newForm.district.length == 1) { } else if(newForm.district.length == 1) {
let district = this.form.district.slice[0](1, 8); let district = this.form.district[0].slice(1, 8);
obj = { ...this.pages, ...this.form,district }; obj = { ...this.pages, ...this.form,district };
} }
// //
} else { } else {
// //
if(this.mydistrict){ if(this.county){
let district = this.form.district.slice(1, 11); let district = this.form.district.slice(1, 8);
obj = { ...this.pages, ...this.form,district }; obj = { ...this.pages, ...this.form,district };
} else { } else {
obj = this.pages let district = this.form.district.slice(1, 11);
obj = { ...this.pages, ...this.form,district };
} }
} }
} else { } else {
@ -288,11 +290,12 @@
// this.subdistrict = this.form.subdistrict.slice(1, 8); // this.subdistrict = this.form.subdistrict.slice(1, 8);
// obj = { ...this.pages, ...this.form,subdistrict:this.subdistrict }; // obj = { ...this.pages, ...this.form,subdistrict:this.subdistrict };
// } else if(this.dept.ancestors.split(',').length == 3){ // } else if(this.dept.ancestors.split(',').length == 3){
let district = this.form.district.slice(1, 11); // let district = this.form.district.slice(1, 11);
let district = this.form.district;
obj = { ...this.pages, ...this.form,district }; obj = { ...this.pages, ...this.form,district };
// } // }
} }
// console.log(obj,'obj') console.log(obj,'obj')
this.getList(obj) this.getList(obj)
}, },
deep:true, deep:true,
@ -301,9 +304,11 @@
methods:{ methods:{
// //
componendDistrict(district){ componendDistrict(district){
// console.log(district)
// console.log(this.myDistrict)
let name let name
this.myDistrict.map((item)=>{ this.myDistrict.map((item)=>{
if(item.subdistrict == district) { if(item.county == district) {
name = item.institutionName name = item.institutionName
} else { } else {
item.children.map((itemTwo)=>{ item.children.map((itemTwo)=>{
@ -334,10 +339,21 @@
type: "warning", type: "warning",
}) })
.then(() => { .then(() => {
let district
if(Array.isArray(this.form.district)){
if(this.form.district.length == 1){
district = this.form.district[0];
} else if(this.form.district.length == 2){
district = this.form.district[1];
}
} else {
district = this.form.district;
}
this.download( this.download(
"/pharmaceuticals/bPlanManage/export", "/pharmaceuticals/bPlanEnterprise/exportplan",
{ {
...this.form, ...this.form,
district
}, },
`计划管理.xlsx` `计划管理.xlsx`
); );
@ -375,6 +391,7 @@
this.pages.pageSize = 10; this.pages.pageSize = 10;
this.$refs.mypagination.defaultPages(); this.$refs.mypagination.defaultPages();
let obj = {...this.pages,district} let obj = {...this.pages,district}
console.log('123')
this.getList(obj); this.getList(obj);
}, },
// //
@ -444,20 +461,24 @@
let res = await this.$api.yingji.planmx(pages); let res = await this.$api.yingji.planmx(pages);
if(res.code == 200) { if(res.code == 200) {
this.loading = false; this.loading = false;
}
this.tableData = res.data.list; this.tableData = res.data.list;
this.total = res.data.total this.total = res.data.total
}
}, },
commentData(item,dept){ commentData(item,dept){
// if(dept.ancestors.split(',').length == 3) {
item.map((item)=>{ item.map((item)=>{
if(item.children instanceof Array && item.children.length == 0){ // if(item.children instanceof Array && item.children.length == 0){
item.county = item.subdistrict // item.county = item.subdistrict
delete item.children; // delete item.children;
} else { // } else {
this.commentData(item.children,this.dept) // this.commentData(item.children,this.dept)
} // }
item.children.map((itemTwo)=>{
itemTwo.county = itemTwo.subdistrict
})
}) })
this.myDistrict = item; // }
this.options = item; this.options = item;
if(dept.ancestors.split(',').length == 2) { if(dept.ancestors.split(',').length == 2) {
this.options = this.options.filter((item)=>{ this.options = this.options.filter((item)=>{
@ -465,29 +486,38 @@
}) })
this.options.map((item)=>{ this.options.map((item)=>{
if(item.institutionName == dept.deptName) { if(item.institutionName == dept.deptName) {
console.log(item.county) // console.log(item.county)
this.form.district = item.county this.form.district = item.county;
this.mydistrict = item.county this.mydistrict = item.county;
this.county = true;
// delete item.children // delete item.children
} }
}) })
// this.disabled = true; // this.disabled = true;
} else if(dept.ancestors.split(',').length == 3) { } else if(dept.ancestors.split(',').length == 3) {
// console.log(this.options)
this.options.map((item)=>{ this.options.map((item)=>{
if(item.institutionName == dept.deptName) { // console.log(item.children,'item.children')
console.log(item.institutionName) item.children.map((itemTwo)=>{
this.form.district = item.subdistrict if(itemTwo.institutionName == dept.deptName) {
this.mydistrict = item.subdistrict this.form.district = itemTwo.subdistrict;
// this.form.district.push(item.county,itemTwo.subdistrict);
// console.log(this.form.district,'item.institutionName')
this.mydistrict = itemTwo.subdistrict;
this.county = false;
// delete itemTwo.children
} }
}) })
})
this.disabled = true; this.disabled = true;
} }
} }
}, },
async created() { async created() {
console.log(this.dept) console.log(this.dept)
// console.log(this.district) this.myDistrict = this.district;
this.checkListTwo = this.checkList; console.log(this.myDistrict)
// this.checkListTwo = this.checkList;
// this.$nextTick(()=>{ // this.$nextTick(()=>{
// let dom = document.getElementsByClassName('tables'); // let dom = document.getElementsByClassName('tables');
// let height = dom[0].getBoundingClientRect(); // let height = dom[0].getBoundingClientRect();

Loading…
Cancel
Save