生孩子是要顺产还是剖腹产

产后护理指南
1、不用紧张,开始有反映以后,觉得要生了。可以洗头洗澡后带着睡衣去医院。分娩前喝蜂蜜水,可以缩短至少四个小时的“折腾”时间,减轻痛苦。 

2
、顺产比剖腹产要好—→手臂碰伤的形象比喻(恢复快 抵抗力强) 

90%
剖腹产的妈妈和小孩在第一个月都会发烧—→因为抵抗力不好 

小孩没有经过产道挤压的过程,对他发育也不好,长大以后大脑平衡和综合的能力相对较差,而且注意力不集中。 
★3、不论是剖腹产还是顺产,都要绑腹带 

●为什么要绑腹带? 

子宫呈倒三角形,宝宝生下之后,子宫腾空,内脏失去支撑,便会自然下垂。除了大肚腩不好看之外,更重要的是,内脏下垂是所有妇女病和未老先衰的根源,因此必须要绑腹带。绑附带是为了不要让其他器官那么快的往下走,给肚子回缩的时间。此外,原本为内脏下垂体型的人,也可以趁坐月子期间绑腹带来改善体型。 

(注意:只有这种自己绑的腹带才有用,一张完整的是没有用的。) 

【老师带来的人用亲身经历说明 绑腹带的好处 当天就能下床 不需要人搀扶 自己去厕所 腰不疼】 

●该挑选什么样的腹带?【道具腹带】 

质量好的白纱布,纱质须要,须有高度的“透气”“透汗”,否则便会使腹长痱子或湿疹,更容易令腹部因潮湿受凉。 

长约个人腹围的12圈半,宽度约为30—40厘米。 

●具体方法 【请老师现场示范步骤】 

●捆绑和拆卸时间 

1.
早晨起床、梳洗、方便完后,即捆上腹带; 

2.
午、晚餐前若腹带松掉,则须拆下重新绑紧再吃饭; 

3.
擦澡(或冲澡)前将腹带拆下,擦澡(或冲澡)后再将腹带绑紧; 

4.
入睡前请将腹带拆下备用。 

●注意事项 

1.
腹带拆卸时,一面松开,一面把布袋卷起来(像使用前一样),以便再使用; 

2.
夏天很容易出汗,可垫上干毛巾,汗湿后再换下来;如白纱布也汗湿时,则应更换更干燥的,以维护身体卫生及健康。 
【题板关于生产的误区】: 

●剖腹产与顺产的问题。剖腹比顺产花费多,医院为了更多人剖腹产,会吓准妈妈,故意说顺产很痛苦,其实顺产没有想象中痛苦,不必恐慌。(通常医院还会说脐带缠绕,宝宝头大等必须要剖腹产,老师解释怎么来判断才是真正脐带缠绕) 

●宝宝心律不齐问题。宝宝刚生下来,医生说心率不齐。其实,宝宝心率不齐很正常,一定要到四个月之后宝宝的心率才会正常。 

  ●宝宝黄疸问题。医院有时候说宝宝黄疸,其实宝宝皮肤黄是正常的,只要宝宝眼珠没有黄疸,都是正常的。 
、【坐月子阶段】 

维嘉:宝宝生下来就要坐月子了,老师,坐月子到重不重要?很多人说不重要,人家外国人都不坐月子啊! 

嘉宾:生了孩子以后,要坐月子,使子宫尽快恢复,因为子宫影响将来的健康状况。因此,在产后一星期内宜多吃肝脏类,可以将怀胎十月沉积在子宫内的废物完全排出体外。这样使得子宫恢复真空状态,荷尔蒙分泌自然特别活跃,对血液和淋巴液循环也有帮助,这样便会让产妇的面貌新鲜润泽,皮肤拥有如少女般光泽且富有弹性。 

正因为如此,坐月子可以治病:可以长身高、减少近视视力、减少皮肤黑色素(胎记)、把四环素牙变白等。 

反面的例子:国外不重视生小孩之后的护理,在英文词典根本没有“坐月子”一词的翻译,所以国外女性生小孩之后衰老很快,且身上有很多斑,所以女性千万不要拿自己的幸福开玩笑! 

文清:既然坐月子影响到女性未来的健康,还能利用坐月子治病。那究竟应该怎样坐月子才算科学健康的呢? 

维嘉:我们就要请为5000多位月子提供健康服务的张老师来为大家亮他的绝招了。 
【出题板坐月子注意事项】 

1、生完小孩之后要卧床休息14天—→除了吃放和上厕所之外,其余时间均以卧床为佳,利于伤口恢复,子宫收缩 

(14天之后依然尽量休息,但不要吹风着凉,否则为以后头痛关节酸疼留下病根) 

2
、吃羊肝汤薏仁米 排净子宫的废物 

3
、忌口: 

●千万不能吃人参、韭菜,否则退奶(如果不小心吃了,张老师介绍补救措施,三天之内赶紧补救还有效果) 

●忌口:不吃枸杞,一生中只有坐月子不吃枸杞,因为能够提精气,使产妇兴奋躁动,不能静心休养。 
●洗澡和洗头注意。 

按照传统坐月子不能洗澡洗头。事实上坐月子理论是可以洗头洗澡的,只是不能用阴阳水洗(指的是没有开过的冷热混合水,因为水没有烧开所以有可能带有细菌,产妇在坐月子期间全身毛细血孔都处于开放状态,细菌很容易进入产妇身体引起后患),而是用开过的水(凉至适宜温度)或酒精隔水加热后来洗澡或洗头。 

●不吃生冷的酸的 盐及味精 因为不易新陈代谢掉,会增加内脏负担 

4
、坐月子期间尽量少抱小孩,坐着,站着都不可以(因为坐月子期间关节是打开的 所以抱小孩会给关节增加负担为以后疾病留下病根) 

5
、坐月子时如果身体浮肿—→红豆粥【道具 示范已经做好的红豆粥】 (肥妈补充 也适用老人身体浮肿,老师赞同成龙非常喜欢这种粥) 
关于母乳喂养】 

●为什么要母乳喂养? 

【出题板母乳喂养的益处】 

 营养更丰富因为普通牛奶只有48种营养物质,而人的母乳有近490种营养物质 

每一个妈妈的母乳都是为自己的宝宝定制宝宝在妈妈肚子里九个月已经完全适应了妈妈的体质 

剖腹产或者早产儿一定要用母乳喂养 因为宝宝骨骼等都发育不完全,更需要母乳喂养 

母乳喂养可以使宝宝发育更好,抵抗力更好 

母乳喂养可以瘦身、防止乳腺癌 

母乳喂养可以治好乳腺疾病 
●妙招为产妇催奶 

【题板催奶妙招】 

妙招一热毛巾敷产妇腋下,顺时针,每天六次。从生产的第一天开始就做,这样可以让产妇乳腺通畅,挤奶顺利。(此方法能有效治疗乳腺炎,而乳腺炎是很多孕妇最痛苦的烦恼,“痛的时候如火烧,连碰到衣服都痛”)【互动环节采访现场被护理过的妈妈】 

妙招二花生羊脚汤—→具体做法(一定要去掉花生中间的peiya peiya有毒很苦) 

妙招三芝麻油鸡—→具体做法 
● 母乳喂养常见误区【互动,问主持人和观众,然后示范正确】 

【出题板宝宝喂奶误区】 

误区1以为自己没有母乳其实三天左右就都会来,正常的生理是这样。 


误区2小孩生下来第一天就喂奶其实小孩生下来前两天只能喂温白开水,因为小孩在妈妈肚子里九个月没有排便便,宝宝肠子里有很多毒素,需要用白开水来清洗肠胃,而牛奶在宝宝肠胃起不到排毒、排便的效果。 

(肥妈不接受)肥妈:我的孙子生下来了,我舍不得给他白开水,心疼! 


误区3担心宝宝饿喂奶过多其实,刚生下来的宝宝胃很小(只有一个小玻璃球大),不能喂多,让宝宝暴食,宝宝倒奶便是吃多的症状。第一天只要50毫升第二天190毫升 第三天 310毫升【道具有刻度的三个奶瓶 50毫升 190毫升310毫升具体多少】 
新生儿全日哺乳量 

(因具体情况不同可略有出入) 

出生后时间(天) 1 2 3 4 5 6 7 14 30

全日哺乳量(毫升)
 0 90 190 310 350 390 470 500 560


误区4 坐着喂奶其实,正确喂奶姿势是妈妈侧卧喂奶,这样可以保护乳房不下垂。【老师示范动作】产妇要用两个胸罩,一大一小,奶前奶后用。
 


误区5 用产妇第一天的奶喂宝宝其实,初奶不能喂宝宝的,为什么?【举例子好比水龙头第一次使用,刚开始的水不是很干净。】 


误区6 乳房有剩奶每只乳房里一般都是50毫升的奶水,当一边婴儿吃完,另一边还有剩余的时候,应当挤出用容器存入冰箱。乳房的奶都不能有剩余,否则会影响第二次产奶分泌,怎样判断有无剩奶?胸部有硬块,便证明,有剩奶。 


误区7 宝宝一哭就喂奶其实,宝宝哭不一定是饿了,宝宝哭有两种,一种是飙泪的哭,一种是不飙泪的哭。不飙泪的哭是宝宝在运动,不要管他,让他哭就好了,但是要看着,防止他哭得接不上气;飙泪的哭,大人也要用手指放到他的嘴边,来判断是不是饿了【老师现场示范】 


误区8阴阳水冲牛奶从饮水机上接一半开水,一般冷水冲的牛奶便是阴阳水,这样不能起到消毒的效果。 
7
、坐月子期间宝宝注意事项【出题板】 

●宝宝怕冷在妈妈肚子里宝宝的温度有三十几度,所以宝宝怕冷,传统的中国带宝宝会给他围一个围裙,就是保温 

●宝宝前四个月是认气味的,所以妈妈一开始把宝宝放到他自己的床上,宝宝熟悉了那里的气味,他也能够安然入睡 

●宝宝正确抱的姿态是? 

●宝宝打嗝怎么拍打后背?(打嗝对小孩有益,利于小孩讲吸入的空气排出) 

●保护宝宝囱门(头顶头盖骨) 
五、【张老师传统秘方制作营养月子餐】 

一、第一周每日食谱(第一天至第七天) 

1
、羊肝:用姜、全米酒水、麻油炒成、每日300-500克 

2
、生化汤:以米酒浸泡后炖成,自然生产者使用7帖(天)、剖腹生产者使用14帖(天) 

3
、养肝汤:以全米酒水泡成,剖腹生产者每日280ml

4、 甜糯米粥:以全米酒水煮成,每日两碗
 

5
、红豆汤:以全米酒水煮成,每日两碗 

6
、乌仔鱼或黄鱼:以低温烘焙麻油、全米酒水、老姜煮成,每日一碗。 

7
、麦芽或韭菜:欲退奶者使用,每日一碗,连续三日共三碗。(喂母奶者不可食用) 
二、第二周每日食谱(第八天至第十四天) 

1
、羊腰:用姜、全米酒水、麻油炒成、每日使用一副(二颗) 

2
、生化汤:以全米酒水煮成,剖腹生产者须喝至第14天,自然生产者用7天即可 

3
、养肝汤:以全米酒水冲泡成,剖腹生产者使用,自然生产者用7天即可,每日280 ml

4、油饭或者甜糯米粥:以全米酒水煮成,每日选择一样,油饭一碗或甜糯米粥一碗
 

5
、红豆汤:以全米酒水煮成,每日二碗 

6
、乌仔鱼或黄鱼:以低温烘焙麻油、全米酒水、老姜煮成,每日一碗 

7
、蔬菜:红萝卜、红觅菜或者红菜,选择一样,每日二碗 

8
、荔枝壳或山楂泡水:止渴用,选择一样,每日一碗 

9
、白饭:用全米酒水煮,每日一碗,若吃不下可不吃 
三、第三周以及第四周每日食谱(第十五天至满月) 

1
、麻油鸡:用全鸡煮成,每日食用半只三大碗,全鸡每次送一天份计三大碗 

2
、红豆汤:甜糯米粥或者油饭:以全米酒水煮成,任选一样,每日一份 

3
、鱼类:黑色、红色的鱼均可以全米酒水煮成,(剖腹者可吃鲈鱼),每日一大碗 

4
、蔬菜:莲花白+红萝卜或菠菜、A菜、红觅菜、发菜。以全米酒水煮成,每日一样二碗 

5
、荔枝壳或山楂泡水:止渴用,选择一样,每日一碗 
6、 白饭:用全米酒水煮成,每日一碗。若吃不下可不吃 

7、水果:哈密瓜、木瓜、无子葡萄、莲务、樱桃、水蜜桃、每日一样,二餐份 

8、面条:每日一份,以全米酒水煮成 

9、花生羊脚:产妇无奶水或奶水清淡者食用,以全米酒水煮成,计坐月子期间使用三大碗 
中医认为,孕妇在生孩子时气血大耗,劳损阳液,产后容易因气血两虚而经常出现头晕、乏力、眼花、出虚汗等不适,朋子里应该喝米酒,补气补血,调养周身的气血,增加体力。同时,米酒还能增强子宫收缩力,促进恶露排出,有利于子宫早日复原,促进乳汗分泌。 

建议产后一周内不要饮用。剖腹产的孕妇由于手术关系,在排气后方能少量进食。术后第2天开始,吃清淡流质食物,如蛋汤、米汤等,然后慢慢过渡到正常饮食。 

注:剖腹产产后切忌进食牛奶、豆浆、大量蔗糖等产气多的食物。
<template> <div v-show="active === flag" class="step-main"> <div class="step-content"> <el-form ref="baseForm" :model="baseFormCurr" :rules="rules" label-width="105px"> <el-row :gutter="10"> <el-col :lg="8" :md="12" :sm="24" :xl="8" :xs="24"> <el-form-item label="表名称" prop="tableName"> <el-input v-model="baseFormCurr.tableName" autocomplete="off"></el-input> </el-form-item> </el-col> <el-col :lg="8" :md="12" :sm="24" :xl="8" :xs="24"> <el-form-item label="表类型" prop="tableType"> <el-select v-model="baseFormCurr.tableType" :disabled="formState.tableType" placeholder="请选择" style="width: 100%" @change="tableTypeChange"> <el-option v-for="item in dictCurr.table_type" :key="item.dictValue" :label="item.dictName" :value="item.dictValue" ></el-option> </el-select> </el-form-item> </el-col> <el-col :lg="8" :md="12" :sm="24" :xl="8" :xs="24"> <el-form-item label="描述" prop="comments"> <el-input v-model="baseFormCurr.comments" autocomplete="off" maxlength="100" show-word-limit ></el-input> </el-form-item> </el-col> <el-col :lg="8" :md="12" :sm="24" :xl="8" :xs="24"> <el-form-item label="数据库类型" prop="jdbcType"> <el-select ref="jdbcType" v-model="baseFormCurr.jdbcType" :disabled="formState.jdbcType" placeholder="请选择" style="width: 100%" @change="jdbcTypeChange"> <el-option v-for="item in dictCurr.jdbc_type" :key="item.dictValue" :label="item.dictName" :value="item.dictValue" ></el-option> </el-select> </el-form-item> </el-col> <el-col :lg="8" :md="12" :sm="24" :xl="8" :xs="24"> <el-form-item label="备注" prop="remark"> <el-input v-model="baseFormCurr.remark" autocomplete="off" maxlength="120" show-word-limit ></el-input> </el-form-item> </el-col> </el-row> </el-form> <vab-query-form> <vab-query-form-left-panel> <el-button :disabled="!baseFormCurr.jdbcType" icon="el-icon-plus" type="primary" @click="columnHandleAdd"> 添加 </el-button> <el-button icon="el-icon-plus" type="primary" @click="dialogVisible = true"> 常用字段 </el-button> <el-button :disabled="!selectRows.length > 0" icon="el-icon-delete" type="danger" @click="columnHandleDelete" > 删除 </el-button> </vab-query-form-left-panel> </vab-query-form> <el-form ref="tableForm" :model="{'tableForm': tableFormCurr}"> <el-table :data="tableFormCurr" :element-loading-text="elementLoadingText" border @selection-change="setSelectRows" > <el-table-column show-overflow-tooltip type="selection"></el-table-column> <el-table-column align="center" label="拖动" show-overflow-tooltip width="60" > <template v-slot="scope"> <el-button circle class="move-btn" icon="el-icon-d-caret" ></el-button> </template> </el-table-column> <el-table-column label="字段名称" min-width="200" prop="fieldName" show-overflow-tooltip > <template v-slot="scope"> <el-form-item :prop="'tableForm.'+scope.$index+'.fieldName'" :rules="columnRules.fieldName" class="el-form-item-table" > <el-input v-model="scope.row.fieldName" :disabled="scope.row.disabled" style="width: 100%"/> </el-form-item> </template> </el-table-column> <el-table-column label="字段类型" min-width="180" prop="fieldType" show-overflow-tooltip > <template v-slot="scope"> <el-form-item :prop="'tableForm.'+scope.$index+'.fieldType'" :rules="columnRules.fieldType" class="el-form-item-table" > <el-select v-model="scope.row.fieldType" :disabled="scope.row.disabled" default-first-option="" filterable placeholder="请选择" style="width: 100%"> <el-option v-for="item in baseDictData.fieldList" :key="item" :label="item" :value="item" ></el-option> </el-select> </el-form-item> </template> </el-table-column> <el-table-column label="字段长度" min-width="140" prop="fieldLength" show-overflow-tooltip > <template v-slot="scope"> <el-form-item :prop="'tableForm.'+scope.$index+'.fieldLength'" class="el-form-item-table" > <el-input-number v-model="scope.row.fieldLength" :disabled="scope.row.disabled" :max="20000" :min="0" controls-position="right" style="width: 100%" ></el-input-number> </el-form-item> </template> </el-table-column> <el-table-column label="字段精度" min-width="140" prop="fieldPrecision" show-overflow-tooltip > <template v-slot="scope"> <el-form-item :prop="'tableForm.'+scope.$index+'.fieldComments'" class="el-form-item-table" > <el-input-number v-model="scope.row.fieldPrecision" :disabled="scope.row.disabled" :max="100" :min="0" controls-position="right" style="width: 100%" ></el-input-number> </el-form-item> </template> </el-table-column> <el-table-column label="字段描述" min-width="240" prop="fieldComments" show-overflow-tooltip > <template v-slot="scope"> <el-form-item :prop="'tableForm.'+scope.$index+'.fieldComments'" :rules="columnRules.fieldComments" class="el-form-item-table" > <el-input v-model="scope.row.fieldComments" :disabled="scope.row.disabled" maxlength="100" show-word-limit style="width: 100%"/> </el-form-item> </template> </el-table-column> <el-table-column label="主键" min-width="80" prop="izPk" show-overflow-tooltip > <template v-slot="scope"> <el-form-item :prop="'tableForm.'+scope.$index+'.izPk'" class="el-form-item-table" > <el-switch v-model="scope.row.izPk" :active-value="1" :disabled="scope.row.disabled" :inactive-value="0" @change="pKChange(scope.row)" > </el-switch> </el-form-item> </template> </el-table-column> <el-table-column label="非空" min-width="80" prop="izNotNull" show-overflow-tooltip > <template v-slot="scope"> <el-form-item :prop="'tableForm.'+scope.$index+'.izNotNull'" class="el-form-item-table" > <el-switch v-model="scope.row.izNotNull" :active-value="1" :disabled="scope.row.disabled || scope.row.izPk === 1" :inactive-value="0" > </el-switch> </el-form-item> </template> </el-table-column> </el-table> </el-form> </div> <step-footer ref="step-footer" :flag="flag" :info-data="{ obj: this, baseForm: baseFormCurr, tableForm: tableFormCurr }" :max-flag="maxFlag" :min-flag="minFlag" ></step-footer> <!-- 选择预制字段--> <el-dialog :before-close="handleClose" :visible.sync="dialogVisible" append-to-body title="选择常见字段" width="30%"> <div> <template v-for="item in BuiltInFields"> <el-checkbox v-model="BuiltInFieldsSelect" :label="item.fieldName" border style="margin: 5px" @change="changeBuiltInFieldsSelect"></el-checkbox> </template> </div> <span slot="footer" class="dialog-footer"> <el-button @click="dialogVisible = false">取 消</el-button> <el-button type="primary" @click="AddDefaultFields">确 定</el-button> </span> </el-dialog> </div> </template> <script> import {isCode, isNull} from "@/utils/validate"; import StepFooter from "./footer/StepFooter.vue" import {deepClone} from "@/utils/clone"; import Sortable from "sortablejs"; import {uuid} from "@/utils"; import {getFieldTypes, getJavaFieldTypesBySafety} from "@/api/generator/tableManagement"; import {isNotNull} from "@/utils/valiargs"; import { useGlobalStore } from '@/pinia/global'; let state = useGlobalStore(); export default { name: "TableDataStep", components: {Sortable, StepFooter}, props: { active: { type: Number, default: () => { return 1; }, }, minFlag: { type: Number, default: () => { return 1; }, }, maxFlag: { type: Number, default: () => { return 1; }, }, baseForm: { type: Object, default: () => { return {}; }, }, tableForm: { type: Array, default: () => { return []; }, }, dict: { type: Object, default: () => { return {}; }, }, baseDictData: { type: Object, default: () => { return { fieldList: [], JavaFieldMap: {}, }; }, } }, data() { const validateTableName = (rule, value, callback) => { if (isNull(value)) { callback(new Error("请输入表名")); } if (!isCode(value)) { callback(new Error("表名只能为字母、数字或下划线")); } else { callback(); } }; const validateName = (rule, value, callback) => { if (!isCode(value)) { callback(new Error("只能为字母、数字或下划线")); } else { callback(); } }; return { BuiltInFieldsSelect: [],//已选中的字段 BuiltInFields: [ { "encryptData": null, "fieldName": "id", "fieldType": "bigint", "fieldLength": 19, "fieldPrecision": 0, "fieldComments": "唯一主键", "izPk": 1, "izNotNull": 1, "izShowList": null, "izShowForm": null, "javaType": "String", "showType": null, "dictTypeCode": null, "sort": 0, "validateType": null, "queryType": null, "disabled": false }, { "encryptData": null, "fieldName": "org_ids", "fieldType": "varchar", "fieldLength": 500, "fieldPrecision": 0, "fieldComments": "父级主键集合", "izPk": 0, "izNotNull": 0, "izShowList": null, "izShowForm": null, "javaType": "String", "showType": null, "dictTypeCode": null, "sort": 1, "validateType": null, "queryType": null, "disabled": false }, { "encryptData": null, "fieldName": "tenant_id", "fieldType": "bigint", "fieldLength": 19, "fieldPrecision": 0, "fieldComments": "多租户ID", "izPk": 0, "izNotNull": 0, "izShowList": null, "izShowForm": null, "javaType": "String", "showType": null, "dictTypeCode": null, "sort": 8, "validateType": null, "queryType": null, "disabled": false }, { "encryptData": null, "fieldName": "create_by", "fieldType": "bigint", "fieldLength": 19, "fieldPrecision": 0, "fieldComments": "创建者", "izPk": 0, "izNotNull": 1, "izShowList": null, "izShowForm": null, "javaType": "String", "showType": null, "dictTypeCode": null, "sort": 10, "validateType": null, "queryType": null, "disabled": false }, { "encryptData": null, "fieldName": "create_time", "fieldType": "datetime", "fieldLength": 0, "fieldPrecision": 0, "fieldComments": "创建时间", "izPk": 0, "izNotNull": 1, "izShowList": null, "izShowForm": null, "javaType": "String", "showType": null, "dictTypeCode": null, "sort": 11, "validateType": null, "queryType": null, "disabled": false }, { "encryptData": null, "fieldName": "update_by", "fieldType": "bigint", "fieldLength": 19, "fieldPrecision": 0, "fieldComments": "修改人", "izPk": 0, "izNotNull": 1, "izShowList": null, "izShowForm": null, "javaType": "String", "showType": null, "dictTypeCode": null, "sort": 12, "validateType": null, "queryType": null, "disabled": false }, { "encryptData": null, "fieldName": "update_time", "fieldType": "datetime", "fieldLength": 0, "fieldPrecision": 0, "fieldComments": "修改时间", "izPk": 0, "izNotNull": 1, "izShowList": null, "izShowForm": null, "javaType": "String", "showType": null, "dictTypeCode": null, "sort": 13, "validateType": null, "queryType": null, "disabled": false }, { "fieldName": "delected", "sort": 8, "izPk": 0, "izNotNull": 1, "izShowList": 0, "izShowForm": 0, "queryType": "", "fieldType": "int", "fieldLength": 1, "fieldPrecision": 0, "fieldComments": "删除", "javaType": "", "validateType": "", "showType": "", "dictTypeCode": "", "disabled": false }, { "fieldName": "version", "sort": 8, "izPk": 0, "izNotNull": 1, "izShowList": 0, "izShowForm": 0, "queryType": "", "fieldType": "int", "fieldLength": 1, "fieldPrecision": 0, "fieldComments": "乐观锁", "javaType": "", "validateType": "", "showType": "", "dictTypeCode": "", "disabled": false } ], dialogVisible: false,//选址内置字段 // 标示 flag: 1, title: "数据库表设置", dictCurr: [], baseFormCurr: {}, tableFormCurr: [], formState: { jdbcType: false, tableType: false, }, rules: { tableName: [ {required: true, trigger: "blur", validator: validateTableName}, ], tableType: [ {required: true, trigger: "change", message: "请选择表类型"}, ], jdbcType: [ {required: true, trigger: "change", message: "请选择数据库类型"}, ], comments: [ {required: true, trigger: "blur", message: "请输入描述"}, ], }, treeName: "parent_id", // 新增字段模版 columnFormTemp: { id: "", sort: 0, izPk: 0, izNotNull: 0, izShowList: 0, izShowForm: 0, queryType: "", fieldName: "", fieldType: "", fieldLength: 0, fieldPrecision: 0, fieldComments: "", javaType: "", validateType: "", showType: "", dictTypeCode: "", disabled: false, }, columnRules: { fieldName: [ {required: true, message: "请选择字段名称", trigger: "blur"}, {required: true, trigger: "blur", validator: validateName}, ], fieldType: [ {required: true, message: "请选择字段类型", trigger: "change"}, ], fieldComments: [ {required: true, message: "请输入字段描述", trigger: "blur"}, ] }, layout: "total, sizes, prev, pager, next, jumper", selectRows: "", elementLoadingText: "正在加载...", }; }, created() { // 告诉父节点 自己的 flag 编号 this.$emit("inform-flag", this.flag, this.title); }, mounted() { // 拷贝 props this.baseFormCurr = deepClone(this.baseForm); this.tableFormCurr = deepClone(this.tableForm); this.dictCurr = deepClone(this.dict); // 数据库字段类型 // this.dictCurr.field_type = this.$getDictList(this.baseFormCurr.jdbcType + "_data_type"); // 改成自己项目的字典项获取方式 // this.dict = state.sysDict; // this.dictCurr.field_type = state.sysDict.table_type; let dataType = this.baseFormCurr.jdbcType + "_data_type"; // JavaScript 对象支持两种属性访问方式:1点符号:object.propertyName ,适用于静态属性名。 2方括号符号:object[propertyName] ,适用于动态属性名,propertyName 可以是一个变量或表达式。 this.dictCurr.field_type = state.sysDict[dataType]; // 表拖动 this.rowDrop(); // 初始化数据 this.doGetFieldData(); }, watch: { baseForm(newV, oldV) { this.baseFormCurr = deepClone(newV); }, tableForm(newV, oldV) { this.tableFormCurr = deepClone(newV); }, dict(newV, oldV) { this.dictCurr = deepClone(newV); // 数据库字段类型 // this.dictCurr.field_type = this.$getDictList(this.baseFormCurr.jdbcType + "_data_type"); // 改成自己项目的字典项获取方式 // this.dict = state.sysDict; // this.dictCurr.field_type = state.sysDict.table_type; let dataType = this.baseFormCurr.jdbcType + "_data_type"; // JavaScript 对象支持两种属性访问方式:1点符号:object.propertyName ,适用于静态属性名。 2方括号符号:object[propertyName] ,适用于动态属性名,propertyName 可以是一个变量或表达式。 this.dictCurr.field_type = state.sysDict[dataType]; }, }, methods: { handleClose() { this.dialogVisible = false }, changeBuiltInFieldsSelect(e) { this.BuiltInFieldsSelect = this.removeElementsFromArray(this.BuiltInFieldsSelect, this.tableFormCurr) }, removeElementsFromArray(A, B) { A = A.filter(a => { let isEqual = B.some(b => b.fieldName === a); if (isEqual) { this.$message.error(`已存在字段:${a}`) } return !isEqual; }); return A; }, //添加默认字段 AddDefaultFields(params) { console.log(this.BuiltInFieldsSelect) for (const param of this.BuiltInFieldsSelect) { this.AddDefaultFields2(param) } this.dialogVisible = false }, //方法2 AddDefaultFields2(title) { let temp = null for (const tempElement of this.BuiltInFields) { if (tempElement.fieldName == title) { temp = tempElement } } this.tableFormCurr.push(temp); }, // 数据库类型发生改动 jdbcTypeChange(newValue) { const _this = this; this.tableFormCurr.jdbcType = this.$refs.jdbcType.value; this.$baseConfirm("更换数据库类型将会清空当前已设字段,你确定要更换吗", null, () => { // 改为新值 _this.tableFormCurr.jdbcType = newValue; // 加载字典 // _this.dictCurr.field_type = _this.$getDictList(_this.baseFormCurr.jdbcType + "_data_type"); // 改成自己项目的字典项获取方式 // this.dict = state.sysDict; // this.dictCurr.field_type = state.sysDict.table_type; let dataType = this.baseFormCurr.jdbcType + "_data_type"; // JavaScript 对象支持两种属性访问方式:1点符号:object.propertyName ,适用于静态属性名。 2方括号符号:object[propertyName] ,适用于动态属性名,propertyName 可以是一个变量或表达式。 this.dictCurr.field_type = state.sysDict[dataType]; // 清空已有字段数据 _this.tableFormCurr = []; // 初始化数据 this.doGetFieldData(); }); }, // 表类型发生改动 tableTypeChange(newValue) { if (newValue === '0') { // 删除 parent_id 字段 for (let i = this.tableFormCurr.length - 1; i >= 0; i--) { let item = this.tableFormCurr[i]; if (item.fieldName === this.treeName) { this.tableFormCurr.splice(i, 1); break; } } } else if (newValue === '1') { // 删除 parent_id 字段 for (let i = this.tableFormCurr.length - 1; i >= 0; i--) { let item = this.tableFormCurr[i]; if (item.fieldName === this.treeName) { this.tableFormCurr.splice(i, 1); break; } } // 增加 parent_id 字段 let tmp = deepClone(this.columnFormTemp); tmp.disabled = true; tmp.fieldName = this.treeName; tmp.fieldType = "bigint"; tmp.fieldLength = 20; tmp.fieldComments = "上级ID"; tmp.javaType = "Integer"; tmp.izNotNull = 1; this.columnHandleAdd(tmp); } }, // 主键改动 pKChange(el) { if (!isNull(el)) { // 如果主键选中 则默认选中不可为空 if (el.izPk === 1) { el.izNotNull = 1; } else { el.izNotNull = 0; } } }, // ============================== async doGetFieldData() { this.$emit("loading"); // 通知父级 锁定当前表 this.$emit("inform-data", { fieldList: await this.doGetFieldTypes(), JavaFieldMap: await this.doGetJavaFieldTypesBySafety(), }); this.$emit("unLoading"); }, // 获得 数据类型 async doGetFieldTypes() { // const { data } = await getFieldTypes(); // 改成自己项目的数据返回格式 const res = await getFieldTypes(); const data = res.result.opsliData.data; if (isNotNull(data)) { return data; } return null; }, // 获得 Java 类型 (安全兜底模式) async doGetJavaFieldTypesBySafety() { // const { data } = await getJavaFieldTypesBySafety(); // 改成自己项目的数据返回格式 const res = await getJavaFieldTypesBySafety(); const data = res.result.opsliData.data; if (isNotNull(data)) { return data; } return null; }, // 行添加 columnHandleAdd(params) { let temp; if (!isNull(params) && !(params instanceof MouseEvent)) { temp = params; } else { temp = deepClone(this.columnFormTemp); } temp.id = "temp_" + uuid() if (this.tableFormCurr == null || this.tableFormCurr.length === 0) { temp.sort = 0; } else { temp.sort = this.tableFormCurr.length; } this.tableFormCurr.push(temp); }, // 行删除 columnHandleDelete(row) { if (row.id) { this.$baseConfirm("你确定要删除当前字段吗", null, () => { for (let i = this.tableFormCurr.length - 1; i >= 0; i--) { let item = this.tableFormCurr[i]; if (item.id === row.id) { // 树装接口 不允许删除 parent_id 字段 if (this.tableFormCurr.tableType === '1') { if (item.fieldName !== this.treeName) { this.tableFormCurr.splice(i, 1); } } else { this.tableFormCurr.splice(i, 1); } break; } } }); } else if (this.selectRows.length > 0) { const ids = this.selectRows.map((item) => item.id); this.$baseConfirm("你确定要删除当前字段吗", null, () => { for (let i = this.tableFormCurr.length - 1; i >= 0; i--) { let item = this.tableFormCurr[i]; if (ids.indexOf(item.id) !== -1) { // 树装接口 不允许删除 parent_id 字段 if (this.tableFormCurr.tableType === '1') { if (item.fieldName !== this.treeName) { this.tableFormCurr.splice(i, 1); } } else { this.tableFormCurr.splice(i, 1); } } } }); } else { this.$baseMessage("未选中任何行", "error"); return false; } }, // 行选中 setSelectRows(val) { this.selectRows = val; }, //行拖拽 rowDrop() { const tbody = this.$refs["tableForm"].$el .querySelector(".el-table__body-wrapper tbody"); const _this = this Sortable.create(tbody, { // 只能纵向拖动 axis: "y", // 限制触发事件只能某个元素可以触发 handle: ".move-btn", // 如果设置成true,则被拖拽的元素在返回新位置时,会有一个动画效果。 revert: true, // 如果设置成true,则元素被拖动到页面边缘时,会自动滚动。 scroll: true, onEnd({oldIndex, newIndex}) { _this.tableFormCurr[oldIndex].sort = newIndex; // 如果是 从后往前 移动 则 当前项改为newIndex 而 原newIndex 往后的所有内容全部向后顺产移动 if (oldIndex > newIndex) { for (let i = oldIndex; i > newIndex; i--) { _this.tableFormCurr[i - 1].sort = i; } } // 如果是 从前往后 移动 则 当前项改为newIndex 而 原newIndex 往后的所有内容全部向前顺产移动 else { for (let i = oldIndex; i < newIndex; i++) { _this.tableFormCurr[i + 1].sort = i; } } } }) }, }, }; </script> 这段代码是一个vue文件, 代码语法的框架是element-ui, 版本是2.15.13。我的前端项目vue版本是3.4.21, 框架ant-design-vue版本是4.2.1。现在的问题是文件内容和项目框架语法不一样, 请帮我把整个文件的代码内容修改成适配我项目框架的语法(注意:我的前端项目vue版本是3.4.21, 框架ant-design-vue版本是4.2.1,必须生成对应版本的语法)。 不要删除里边已经注释的代码, 即使有相同的代码, 你也不要省略代码, 把所有内容全部输出来, 需要保持原有的布局样式而调整转换代码。如果这个文件引入的别的文件, 不用你关心别的文件, 你不要给我生成别的文件内容, 最后生成一个vue文件给我, 如果输出内容过长而被终止截断了,请接着输出剩余的部分。转换后要求代码不报错, 按钮方法和底部方法名称要对应起来, 转换过程中不要遗漏代码, 注意:如果之前代码有$baseConfirm, 给我替换成Modal.confirm , 并且引入import { message, Modal } from “ant-design-vue”; 如果之前代码有$baseMessage, 给我替换成message.success或message.warning或message.error。 你好好思考分析下我的需求,不是将把Element UI组件替换为Ant Design Vue组件,你考虑转换后的版本了吗,不同版本语法api不一样,否则转换后的代码根本不能用。不要给我进行简化处理,方法内容不要给我留空,不要等着我补充,你都给我转换处理好。
08-06
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值