ruoyi-ui/src/api/clean/index.js
@@ -28,7 +28,7 @@ // 删除资产信息 export function delClean(Ids) { return request({ url: '/zfClean' + Ids, url: '/zfClean/' + Ids, method: 'delete' }) } ruoyi-ui/src/api/self/index.js
@@ -140,7 +140,14 @@ method: 'delete', }) } //证件类型数据 export function listType(query) { return request({ url: '/zCertificate/type', method: 'get', params: query }) } // 查询出国情况 export function getAbroadList() { return request({ ruoyi-ui/src/api/travel/index.js
@@ -12,7 +12,7 @@ } // 根据id查询所有收支台账信息 // 根据id查询 export function getTravelPriceInfo(id) { return request({ url: '/zTravelPrice/' + id, @@ -101,7 +101,14 @@ data: data }) } //修改家庭设备 export function updateTravelBase(data) { return request({ url: '/zTravelBase', method: 'put', data: data }) } // 删除家庭设备 export function delTravelBase(Ids) { return request({ ruoyi-ui/src/assets/images/shouye.pngruoyi-ui/src/router/index.js
@@ -439,7 +439,7 @@ hidden: true, children: [ { path: 'edit/:id(\\d+)', path: 'edit/:id', component: () => import('@/views/travel/edit'), name: 'edit', meta: { title: '编辑',activeMenu: '/geren/Ztravel'} ruoyi-ui/src/views/bignote/familyeventInfo.vue
@@ -28,6 +28,10 @@ <el-input v-model="formData.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> </el-form-item> <el-form-item label="是否是本家庭记录" prop="ownData"> <el-input v-model="formData.ownData=== 1 ? '是':'否'" placeholder=" " clearable :style="{width: '100%'}" :disabled=true></el-input> </el-form-item> <h4 class="form-header">相关图片 </h4> <el-upload action="#" ruoyi-ui/src/views/bignote/index.vue
@@ -154,7 +154,9 @@ <el-table-column label="人物" prop="people" sortable width="150px" /> <el-table-column label="地点" prop="address" sortable width="150px" /> <el-table-column label="大事标题" prop="title" sortable :show-overflow-tooltip="true" width="150px" /> <el-table-column label="是否是本家庭记录" prop="ownData" sortable width="150px" > <template slot-scope="scope">{{scope.row.ownData === 0 ? '否': '是'}}</template> </el-table-column> <el-table-column label="备注" prop="remark" sortable width="150px" > <template slot-scope="scope">{{scope.row.remark? scope.row.remark: '————'}}</template> </el-table-column> ruoyi-ui/src/views/clean/cleanInfo.vue
@@ -39,6 +39,9 @@ <el-form-item label="备注" prop="remark"> <el-input v-model="formData.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> </el-form-item> <el-form-item label="是否是本家庭记录" prop="ownData"> <el-input v-model="formData.ownData=== 1 ? '是':'否'" placeholder=" " clearable :style="{width: '100%'}" :disabled=true></el-input> </el-form-item> <h4 class="form-header">相关图片 </h4> ruoyi-ui/src/views/clean/index.vue
@@ -132,6 +132,9 @@ <template slot-scope="scope">{{scope.row.happenTime? scope.row.happenTime: '————'}}</template> </el-table-column> <el-table-column label="备注" prop="remark" sortable width="100" /> <el-table-column label="是否是本家庭记录" prop="ownData" sortable width="150px" > <template slot-scope="scope">{{scope.row.ownData === 0 ? '否': '是'}}</template> </el-table-column> <el-table-column label="电子文件" prop="url" width="180" align="center"> <template slot-scope="scope" > @@ -647,7 +650,7 @@ /** 删除按钮操作 */ handleDelete(row) { const Ids = row.id || this.ids; this.$modal.confirm('是否确认删除资产编号为"' + Ids + '"的数据项?').then(function() { this.$modal.confirm('是否确认删除所选数据项?').then(function() { return delClean(Ids); }).then(() => { this.getList(); ruoyi-ui/src/views/collection/collectionInfo.vue
@@ -17,9 +17,9 @@ <el-row :span="12"> <el-cow > <el-form-item label="获得时间" prop="happenTime" label-width="70px" style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;"> <el-input v-model="formData.happenTime" placeholder="请输入获得时间" type="date" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> <el-date-picker v-model="formData.happenTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> </el-cow> @@ -67,6 +67,12 @@ <el-input v-model="formData.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> </el-form-item> </el-cow> <el-cow > <el-form-item label="是否是本家庭记录" prop="ownData"> <el-input v-model="formData.ownData=== 1 ? '是':'否'" placeholder=" " clearable :style="{width: '100%'}" :disabled=true></el-input> </el-form-item> </el-cow> </el-row> </el-container> <h4 class="form-header">相关图片 </h4> ruoyi-ui/src/views/collection/index.vue
@@ -209,6 +209,9 @@ <el-table-column label="备注" prop="remark" sortable width="90" align="center"> <template slot-scope="scope">{{scope.row.remark? scope.row.remark: '————'}}</template> </el-table-column> <el-table-column label="是否是本家庭记录" prop="ownData" sortable width="150px" > <template slot-scope="scope">{{scope.row.ownData === 0 ? '否': '是'}}</template> </el-table-column> <el-table-column label="电子文件" prop="url" width="180" align="center"> <template slot-scope="scope" > @@ -281,7 +284,9 @@ <!-- <el-input v-model="formDat.happenTime" placeholder="请输入获得时间" clearable :style="{width: '100%'}" ></el-input>--> <!-- </el-form-item>--> <el-form-item label="获得时间" prop="happenTime"> <el-input v-model='formDat.happenTime' type='date' clearable placeholder='选择日期'></el-input> <el-date-picker v-model="formDat.happenTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> <el-form-item label="类别" prop="type"> <el-select v-model="formDat.type" placeholder="请选择类别" clearable :style="{width: '100%'}" > ruoyi-ui/src/views/components/superMindmap.vue
ruoyi-ui/src/views/contacts/contactsInfo.vue
@@ -67,6 +67,11 @@ <el-input v-model="formData.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> </el-form-item> </el-cow> <el-cow > <el-form-item label="是否是本家庭记录" prop="ownData"> <el-input v-model="formData.ownData=== 1 ? '是':'否'" placeholder=" " clearable :style="{width: '100%'}" :disabled=true></el-input> </el-form-item> </el-cow> </el-row> </el-container> <h4 class="form-header">电子名片 </h4> ruoyi-ui/src/views/contacts/index.vue
@@ -177,6 +177,10 @@ <span v-if="scope.row.isAlways== null">——</span> </template> </el-table-column> <el-table-column label="是否是本家庭记录" prop="ownData" sortable width="150px" > <template slot-scope="scope">{{scope.row.ownData === 0 ? '否': '是'}}</template> </el-table-column> <el-table-column label="备注(是否存在金钱关系)" prop="remark" sortable width="120" align="center"> <template slot-scope="scope">{{scope.row.remark? scope.row.remark: '————'}}</template> @@ -279,8 +283,10 @@ </el-input> </el-form-item> <el-form-item label="是否常联系" prop="isAlways"> <el-input v-model="formDat.isAlways" placeholder="是否常联系" clearable :style="{width: '100%'}" > </el-input> <el-select v-model="formDat.isAlways" placeholder="请选择是否常联系" clearable :style="{width: '100%'}" > <el-option v-for="(item, index) in typeOptions" :key="index" :label="item.label" :value="item.value" ></el-option> </el-select> </el-form-item> <el-form-item label="备注(是否存在金钱关系)" prop="remark"> @@ -524,7 +530,14 @@ trigger: 'blur' }], }, typeOptions: [], typeOptions: [{ value: '1', label: '是', }, { value: '0', label: '否', }], }; }, created() { ruoyi-ui/src/views/device/equipmentInfo.vue
@@ -51,6 +51,9 @@ <el-form-item label="备注" prop="remark"> <el-input v-model="formData.remark" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> </el-form-item> <el-form-item label="是否是本家庭记录" prop="ownData"> <el-input v-model="formData.ownData=== 1 ? '是':'否'" placeholder=" " clearable :style="{width: '100%'}" :disabled=true></el-input> </el-form-item> <h4 class="form-header">相关图片 </h4> ruoyi-ui/src/views/device/index.vue
@@ -144,7 +144,9 @@ <template slot-scope="scope">{{scope.row.remark? scope.row.remark: '————'}}</template> </el-table-column> <el-table-column label="是否是本家庭记录" prop="ownData" sortable width="150px" > <template slot-scope="scope">{{scope.row.ownData === 0 ? '否': '是'}}</template> </el-table-column> <el-table-column label="电子文件" prop="url" width="120" align="center"> <template slot-scope="scope" > ruoyi-ui/src/views/doctor/index.vue
@@ -199,7 +199,9 @@ <el-table-column label="适用人" prop="suitable" sortable width="140" align="center" > <template slot-scope="scope">{{scope.row.suitable? scope.row.suitable: '————'}}</template> </el-table-column> <el-table-column label="是否是本家庭记录" prop="ownData" sortable width="150px" > <template slot-scope="scope">{{scope.row.ownData === 0 ? '否': '是'}}</template> </el-table-column> <el-table-column label="备注" prop="remark" sortable width="120" align="center"> <template slot-scope="scope">{{scope.row.remark? scope.row.remark: '————'}}</template> </el-table-column> ruoyi-ui/src/views/economy/economyInfo.vue
@@ -36,6 +36,9 @@ <el-form-item label="备注" prop="remark"> <el-input v-model="formData.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> </el-form-item> <el-form-item label="是否是本家庭记录" prop="ownData"> <el-input v-model="formData.ownData=== 1 ? '是':'否'" placeholder=" " clearable :style="{width: '100%'}" :disabled=true></el-input> </el-form-item> <h4 class="form-header">相关图片 </h4> ruoyi-ui/src/views/economy/index.vue
@@ -117,7 +117,9 @@ <el-table-column label="现金/自动扣划" prop="kind" sortable width="130" > <template slot-scope="scope">{{scope.row.kind? scope.row.kind: '————'}}</template> </el-table-column> <el-table-column label="是否是本家庭记录" prop="ownData" sortable width="150px" > <template slot-scope="scope">{{scope.row.ownData === 0 ? '否': '是'}}</template> </el-table-column> <el-table-column label="电子文件" prop="url" align="center" sortable width="110" > <template slot-scope="scope" > <div @click="handleCheck(scope.row)"> ruoyi-ui/src/views/honor/honorInfo.vue
@@ -60,14 +60,16 @@ <el-row> <el-cow :span="8"> <el-form-item label="有效时间" prop="validityDate" label-width="68px" style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;"> <el-input v-model="formData.validityDate" type="date" placeholder="请输入有效时间" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> <el-date-picker v-model="formData.validityDate" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> </el-cow> <el-cow :span="8"> <el-form-item label="获得时间" prop="getDate" label-width="68px" style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;"> <el-input v-model="formData.getDate" type="date" placeholder="请输入获得时间" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> <el-date-picker v-model="formData.getDate" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> </el-cow> <el-cow :span="8"> ruoyi-ui/src/views/honor/index.vue
@@ -237,13 +237,15 @@ </el-input> </el-form-item> <el-form-item label="有效时间" prop="validityDate"> <el-input v-model="formDat.validityDate" type='date' placeholder='选择日期' clearable :style="{width: '100%'}" > </el-input> <el-date-picker v-model="formDat.validityDate" type="date" placeholder="请选择日期" :editable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> <el-form-item label="获得时间" prop="getDate"> <el-input v-model="formDat.getDate" type='date' placeholder='选择日期' clearable :style="{width: '100%'}" > </el-input> <el-date-picker v-model="formDat.getDate" type="date" placeholder="请选择日期" :editable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> <el-form-item label="存放位置" prop="location"> <el-input v-model="formDat.location" placeholder="请输入存放位置" clearable :style="{width: '100%'}" > ruoyi-ui/src/views/index.vue
@@ -2,21 +2,6 @@ <div class="app-container"> <div class="image-container"> <img class="bottom-image" src="../assets/images/shouye.png" alt="Bottom Image"> <el-input class="text-box1" type="textarea" :rows="6" resize="none" placeholder=" 参天大树必有其根,万里江河亦有其源。 普天之下炎黄子孙,脉脉相传,不乏有识之士,栋梁之才。吾等不可忘其先人,亦不可不知我之本源。 建谱之大事,上可告慰祖先在天之灵,下可使子孙后代有寻根之本。叶脉之于草木、子孙之于前根,血管之于人体,依托技术输送事件,供给经验,谱写根根相传一路走来的非凡。" ></el-input> <el-input class="text-box2" type="textarea" :rows="18" resize="none" placeholder=" 家,是我们生命的驿站、漂泊的归所。 众所周知,自从有了赖以生存的小家庭,家庭成员就有了成长的轨迹、学习的轨迹、工作的轨迹、生活的轨迹。家庭中每一人每一物都谱写着家庭的辉煌轨迹。让我们用 “本都都” 来收藏每个家族、每个家庭、每个人甜蜜昨天,记录幸福今天,拥抱美好明天。让我们真正感受生命诞生的欢声笑语,人生奋斗的酸甜苦辣,膝下弄儿的幸福温馨。 活在当下,步履匆匆。当您在外地漂泊而急需某些必须的证明材料时;当您在使用某件物品需要帮助时;当您身心疲倦时;当您急于为自己整理健康日记时;当您在某个瞬间又回忆起亲人的笑貌时.......您不妨打开身边的 “本都都” ,细细地品味“本都都”记录的每一轨迹答案:原来可以在 “本都都” 收获材料证明;播放的那已经泛黄的照片、证书,唤起了往日旧时相知、如今已漂泊天涯的挚友;一本邮票、一沓标本,记录的是您那别样的童趣;手拿着孩子的出生证明,更是禁不住泪水打湿眼眶,如今事业有成的子女们似乎又变回那个天真烂漫的孩子;您的房产证、土地证、结婚证、健康报告、百年心愿...,或许在将来某个时间“本都都”能成为您维护权益的保障,抑或是留给子女的一份财富。 希望 “本都都” 能成为助推您事业成功、家庭幸福、人生美满的好帮手!" ></el-input> </div> </div> ruoyi-ui/src/views/marry/index.vue
@@ -7,50 +7,44 @@ ></el-button> </el-backtop> <h2 style="font-size:30px;padding-top:0px">婚姻状况登记表</h2> <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" v-hasPermi="['family:note:export']" >导出</el-button> </el-col> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> </el-row> <el-divider /> <!-- 基本信息--> <h2 style="font-size:21px">基本情况</h2> <el-container> <div style="padding-left:0px" > <div style="padding-left:0px;width: 28%;" > <el-container > <el-col > <el-form ref="elForm" :model="marryList" :rules="rules" size="medium" label-position="left" v-loading="loading" :data="marryList" @selection-change="handleSelectionChange" > <el-row :span="16"> <el-form-item label="姓名" prop="name" label-width="40px"> <el-form-item label="姓名" prop="name" label-width="50px"> <el-input v-model="marryList.name " placeholder="" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> </el-form-item> </el-row> <el-row :span="16"> <el-form-item label="出生日期" prop="birthday" label-width="70px"> <el-input v-model="marryList.birthday" placeholder="" type="date" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> <el-form-item label="出生日期" prop="birthday" label-width="75px"> <!-- <el-input v-model="marryList.birthday" placeholder="" type="date" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> --> <el-date-picker v-model="marryList.birthday" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd"></el-date-picker> </el-form-item> </el-row> <el-row :span="16"> <el-form-item label="身份证号码" prop="id" label-width="85px"> <el-form-item label="身份证号码" prop="id" label-width="95px"> <el-input v-model="marryList.id" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> </el-form-item> </el-row> <el-row :span="16"> <el-form-item label="婚姻状况" prop="marryStatus" label-width="70px"> <el-form-item label="婚姻状况" prop="marryStatus" label-width="80px" > <template v-if="!isEditing"> <el-input v-if="marryList.marryStatus===0" placeholder="未婚" style="" :disabled="dsb"></el-input> <el-input v-if="marryList.marryStatus===1" placeholder="初婚" :disabled="dsb"></el-input> @@ -59,7 +53,7 @@ </template> <template v-else> <el-select v-model="mrs" placeholder="请选择婚姻状态" clearable :style="{width: '100%'}"> <el-select v-model="mrs" placeholder="请选择婚姻状态" clearable :style="{width: '100%'}" @change="handleMarryStatusChange"> <el-option label="未婚" value='0'></el-option> <el-option label="初婚" value='1'></el-option> <el-option label="离婚" value='2'></el-option> @@ -82,7 +76,7 @@ </el-col> </el-container> </div> <div style="padding-left:200px"> <div style="width: 35%;padding-left: 100px;"> <el-container> <el-col v-loading="loading" :data="marryList" @selection-change="handleSelectionChange"> <el-form ref="elForm" :model="marryList" :rules="rules" size="medium" label-position="left"> @@ -114,8 +108,8 @@ </el-row> <el-row :span="16"> <el-form-item label="结婚时间" prop="marryTime" label-width="70px"> <el-input v-model="marryList.marryTime" placeholder="" type="date" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> <el-date-picker v-model="marryList.marryTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd"> </el-date-picker> </el-form-item> </el-row> </el-form> @@ -129,15 +123,27 @@ <el-container > <el-row > <el-row :gutter="10" class="mb8"> <el-col > <el-button type="primary" plain @click="handleEdit()" style="width: 80px;height: 32px;background: #E0EEFE;" v-if="isShow" v-hasPermi="['system:role:edit']" >编辑</el-button> <el-button v-if="isShow_2" type="primary" @click="submitForm" :disabled="dsb">完成</el-button> <el-button v-if="isShow_2" style="width: 80px;height: 32px;background: #E0EEFE;" @click="submitForm" :disabled="dsb">完成</el-button> <br> </el-col> <el-col style="padding-top: 10px;"> <el-button plain style="width: 80px;height: 32px;background: #D2F3E0;" @click="handleExport" v-hasPermi="['family:note:export']" >导出</el-button></el-col> </el-row> @@ -147,7 +153,7 @@ </el-container> <h2 style="font-size:16px " >配偶情况</h2> <el-container> <div style="padding-top:15px" > <div style="padding-top:15px;width: 28%;" > <el-container > <el-col > <el-form ref="elForm" :model="marryList" :rules="rules" size="medium" label-position="left" @@ -160,8 +166,8 @@ </el-row> <el-row :span="16"> <el-form-item label="出生日期" prop="spouseBirthday" label-width="70px"> <el-input v-model="marryList.spouseBirthday" placeholder="" type="date" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> <el-date-picker v-model="marryList.spouseBirthday" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd"> </el-date-picker> </el-form-item> </el-row> <el-row :span="16"> @@ -202,7 +208,7 @@ </el-col> </el-container> </div> <div style="padding-left:200px;padding-top:15px"> <div style="padding-left:100px;padding-top:15px;width: 30%;"> <el-container> <el-col v-loading="loading" :data="marryList" @selection-change="handleSelectionChange"> <el-form ref="elForm" :model="marryList" :rules="rules" size="medium" label-position="left"> @@ -235,8 +241,8 @@ </el-row> <el-row :span="16"> <el-form-item label="结婚时间" prop="spouseMarryTime" label-width="70px"> <el-input v-model="marryList.spouseMarryTime" placeholder="" type="date" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> <el-date-picker v-model="marryList.spouseMarryTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd"> </el-date-picker> </el-form-item> </el-row> </el-form> @@ -256,7 +262,7 @@ <!-- </el-dialog> self:user:export--> </el-container> <div> <div v-if="showOldSpouse"> <el-collapse v-model="activeNames" @change="handleChange"> <el-collapse-item name="1" > @@ -296,8 +302,8 @@ <el-table-column label="出生日期" prop="birthday" sortable width="150" align="center" > <template slot-scope="scope"> <template v-if="!scope.row.isEdit">{{ scope.row.birthday }}</template> <template v-else><el-input v-model="scope.row.birthday" type="date" placeholder="选择日期"> </el-input></template> <template v-else><el-date-picker v-model="scope.row.birthday" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd"> </el-date-picker></template> </template> </el-table-column> <el-table-column label="户籍地址" prop="address" sortable width="180" align="center" > @@ -340,8 +346,8 @@ <el-table-column label="结婚时间" prop="marryTime" sortable width="150" align="center" > <template slot-scope="scope"> <template v-if="!scope.row.isEdit">{{ scope.row.marryTime }}</template> <template v-else><el-input v-model="scope.row.marryTime" type="date" placeholder="选择日期"> </el-input></template> <template v-else><el-date-picker v-model="scope.row.marryTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd"> </el-date-picker></template> </template> </el-table-column> <!-- 操作 --> @@ -431,14 +437,14 @@ <el-row :span="16" > <el-form-item label="领证时间" prop="handbookTime" label-width="70px"> <el-input v-model="marryList.handbookTime " placeholder="" type="date" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> <el-date-picker v-model="marryList.handbookTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd"> </el-date-picker> </el-form-item> </el-row> <el-row :span="16"> <el-form-item label="领证时间" prop="oneBornTime" label-width="70px"> <el-input v-model="marryList.oneBornTime" placeholder="" type="date" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> <el-date-picker v-model="marryList.oneBornTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd"> </el-date-picker> </el-form-item> </el-row> @@ -478,11 +484,8 @@ </el-select> </el-form-item> <el-form-item label="出生日期" prop="birthday"> <el-input v-model='formDat.birthday' type='date' placeholder='选择日期' ></el-input> <el-date-picker v-model="formDat.birthday" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd"> </el-date-picker> </el-form-item> <el-form-item label="民族" prop="nation"> <el-input v-model="formDat.nation" placeholder="请输入民族" clearable :style="{width: '100%'}" > @@ -506,11 +509,8 @@ </el-select> </el-form-item> <el-form-item label="结婚时间" prop="marryTime"> <el-input v-model='formDat.marryTime' type='date' placeholder='选择日期' ></el-input> <el-date-picker v-model="formDat.marryTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd"> </el-date-picker> </el-form-item> @@ -539,6 +539,7 @@ data() { return { showOldSpouse:false,//显示前任信息 // 遮罩层 disabled: false, isEditing:false, @@ -590,7 +591,6 @@ }, fit:['fill'], oldSpouseList:{}, //下拉实现 activeNames:['1'], // 弹出层标题 @@ -621,7 +621,6 @@ btn:false, isShow:true, isShow_2:false, oldSpouseList:undefined, oldSpouseList:{ name:undefined, sex:undefined, @@ -661,10 +660,33 @@ }, // 表单校验 rules: { id: [{ required: true, message: '请输入身份证号码', trigger: 'blur' }], name: [{ required: true, message: '请输入姓名', trigger: 'blur' }], birthday: [{ // required: true, message: '请选择日期', trigger: 'change' }], marryStatus: [{ required: true, message: '请选择婚姻状况', trigger: 'change' }], marryTime: [{ // required: true, message: '请选择结婚时间', trigger: 'change' }], }, typeOptions: [], typeOptions: [ { value: '女', label: '女', @@ -695,6 +717,17 @@ this.getList() }, methods: { handleMarryStatusChange() { // 判断当前选中的婚姻状态是否为再婚 if (this.mrs === '3') { this.showOldSpouse = true; } else { this.showOldSpouse = false; } }, //性别 getSrc1(sex) { if (sex === '女') { @@ -734,9 +767,16 @@ else{ this.marryList = response.data; this.oldSpouseList = this.marryList.oldSpouseList; this.loading = false; console.log(111) console.log(this.oldSpouseList) console.log("信息") console.log(this.marryList.marryStatus); if(this.marryList.marryStatus===3){ this.showOldSpouse = true; } else{ this.showOldSpouse = false; } this.loading = false; } } ruoyi-ui/src/views/mindMap/index.vue
@@ -1,12 +1,11 @@ <template> <div class="app-container"> <h1 style="font-size: 21px;">{{ greeting +',' + user.userName }}</h1> <div class="text" > <h1 style="font-size: 21px;margin-left: 0">{{ greeting +',' + user.userName }}</h1></div> <div class="image-container"> <img class="top-image" src="../../assets/images/zhang.png" alt="Top Image"> </div> <superMindmap v-if="showMindMap" :active='active' :data="mapData" @activeChange="activeChange"/> <superMindmap v-if="showMindMap" :active='active' :data="mapData" @activeChange="activeChange" class="mind-map-container "/> </div> </template> @@ -42,9 +41,6 @@ // console.log('sssssssssssssssssss') }, methods: { // 点击思维导图节点后,触发变量更新 activeChange(newLabel) { @@ -60,7 +56,6 @@ } ) }, setGreeting() { const currentTime = new Date(); @@ -86,127 +81,77 @@ const mindMapData = this.rootList[0]; // console.log(this.drawData(mindMapData)) this.mapData = this.drawData(mindMapData) this.showMindMap = true }) }, drawData(mpdata) { drawData(mpdata) { if(mpdata==null) return null return null; var data = { "label": mpdata['nickName'], "label": mpdata['spouse'] != null ? eval(mpdata['spouse']).nickName : '', "prop": mpdata['nickName'], "url": '', "link": '', "link": mpdata['nickName'], "children":[] } if(eval(mpdata['spouse'])!=null) data['link'] = eval(mpdata['spouse']).nickName }; if(mpdata['childList']!=null){ for(var i = 0; i < mpdata['childList'].length; i++) { for (var i = 0; i < mpdata['childList'].length; i++) { var dt = { "label": mpdata['childList'][i]['nickName'], "label": mpdata['childList'][i]['spouse'] != null ? eval(mpdata['childList'][i]['spouse']).nickName : '', "prop": mpdata['childList'][i]['nickName'], "url": '', "link": "", "link": mpdata['childList'][i]['nickName'], "children":[] }; if (mpdata['childList'][i]['childList'] != null) { for (var j = 0; j < mpdata['childList'][i]['childList'].length; j++) { dt['children'].push(this.drawData(mpdata['childList'][i]['childList'][j])); } if(eval(mpdata['childList'][i]['spouse'])!=null) dt['link'] = eval(mpdata['childList'][i]['spouse']).nickName if(mpdata['childList'][i]['childList']!=null) { for(var j = 0; j < mpdata['childList'][i]['childList'].length;j++) dt['children'].push(this.drawData(mpdata['childList'][i]['childList'][j])) } data['children'].push(dt) data['children'].push(dt); } } return data; }, drawMindMap() { const mindMapData = this.rootList[0]; // 从rootList中获取数据 console.log(mindMapData) // 清除现有的SVG元素 // d3.select("#mind-map svg").remove(); // // 创建一个新的 div 元素作为包裹思维导图的容器 // const mindMapContainer = document.createElement("div"); // mindMapContainer.setAttribute("id", "mind-map-container"); // mindMapContainer.style.position = "absolute"; // mindMapContainer.style.top = "0"; // mindMapContainer.style.left = "0"; // mindMapContainer.style.width = "100%"; // mindMapContainer.style.height = "100%"; // mindMapContainer.style.zIndex = "1"; // // 将思维导图容器插入到 image-container 中 // document.querySelector(".image-container").appendChild(mindMapContainer); // // 创建SVG元素,设置宽度和高度 // const svg = d3.select("#mind-map-container") // .append("svg") // .attr("class", "svg-container") // 添加 className // .attr("width", "100%") // .attr("height", "100%"); // // 创建根节点 // const root = d3.hierarchy(mindMapData); // const treeLayout = d3.tree().size([500, 400]); // 设置树状布局的尺寸 // treeLayout(root); // // 创建链接线 // svg.selectAll(".link") // .data(root.descendants().slice(1)) // .enter() // .append("path") // .attr("class", "link") // .attr("d", d => { // return "M" + d.x + "," + d.y + "C" + (d.x + d.parent.x) / 2 + "," + d.y + " " + // (d.x + d.parent.x) / 2 + "," + d.parent.y + " " + d.parent.x + "," + d.parent.y; // }); // // 创建节点 // const nodes = svg.selectAll(".node") // .data(root.descendants()) // .enter() // .append("g") // .attr("class", "node") // .attr("transform", d => "translate(" + d.x + "," + d.y + ")"); // nodes.append("circle") // .attr("r", 10); // nodes.append("text") // .attr("dx", 12) // .attr("dy", 5) // .text(d => d.data.nickName); } } }; </script> <style scoped> .app-container{ background-color: #FEF7FC; position: relative; /*background-color: transparent;*/ /*padding-left: -20px;*/ } .text{ background-color: #FEF7FC; opacity: 0.75; margin-top: -20px; padding: 20px; } .image-container { position: absolute; /*position: absolute;*/ position: fixed; top: 50px; left: 50px; width: 100%; height: 100%; z-index: -1; } .mind-map-container{ position: fixed; z-index: 2; opacity: 0.5; opacity: 0.8; margin-top: 50px; margin-left: 50px; background-color: transparent; } .top-image { width: 100%; @@ -215,7 +160,4 @@ position: static; opacity: 0.8; } </style> ruoyi-ui/src/views/note/index.vue
@@ -141,6 +141,9 @@ <el-table-column label="备注" prop="remark" sortable width="130" > <template slot-scope="scope">{{scope.row.remark? scope.row.remark: '————'}}</template> </el-table-column> <el-table-column label="是否是本家庭记录" prop="ownData" sortable width="150px" > <template slot-scope="scope">{{scope.row.ownData === 0 ? '否': '是'}}</template> </el-table-column> <!-- <el-table-column label="家庭号" prop="familyId" sortable width="100" /> --> <el-table-column label="发生时间" prop="happenTime" sortable width="150" align="center"> <template slot-scope="scope">{{scope.row.happenTime? scope.row.happenTime: '————'}}</template> @@ -649,11 +652,21 @@ this.$modal.msgSuccess("删除成功"); }).catch(() => {}); }, /** 导出按钮操作 */ handleExport() { const Ids = this.ids; if(Ids.length==0) { this.download('family/property/export', { ...this.queryParams }, `property_${new Date().getTime()}.xlsx`) } else{ this.download('family/property/export1/'+Ids, { }, `property_${new Date().getTime()}.xlsx`) } }, /** 导入操作*/ handleEnport(params){ ruoyi-ui/src/views/note/propertyInfo.vue
@@ -46,6 +46,9 @@ <el-form-item label="备注" prop="remark"> <el-input v-model="formData.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> </el-form-item> <el-form-item label="是否是本家庭记录" prop="ownData"> <el-input v-model="formData.ownData=== 1 ? '是':'否'" placeholder=" " clearable :style="{width: '100%'}" :disabled=true></el-input> </el-form-item> <h4 class="form-header">相关图片 </h4> <el-upload ruoyi-ui/src/views/self/memo.vue
@@ -222,8 +222,9 @@ <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="100px"> <el-form-item label="时间" prop="happenTime"> <el-input v-model="formDat.happenTime" type='date' placeholder='选择日期' clearable :style="{width: '100%'}" ></el-input> </el-form-item> <el-date-picker v-model="formDat.happenTime" type="date" placeholder="请选择日期" :editable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker></el-form-item> <el-form-item label="人物" prop="people"> <el-input v-model="formDat.people" placeholder="请输入人物" clearable :style="{width: '100%'}" > </el-input> ruoyi-ui/src/views/self/memoInfo.vue
@@ -13,8 +13,9 @@ <el-row> <el-cow :span="8"> <el-form-item label="时间" prop="happenTime" label-width="50px" style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;"> <el-input v-model="formData.happenTime" placeholder="请输入时间" type="date" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> <el-date-picker v-model="formData.happenTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> </el-cow> <el-cow :span="8"> ruoyi-ui/src/views/self/show.vue
@@ -8,11 +8,39 @@ class="el-icon-top" ></el-button> </el-backtop> <h1 style="font-size:21px;padding-top:30px;display: flex;justify-content: space-between;align-items: center;"> <h1 style="font-size:21px;padding-top:30px;display: flex;"> <span>个人简历</span> <div class="button-container" > <el-button size="mini" style="background: #E0EEFE; border-radius: 7px 7px 7px 7px;opacity: 1; margin-left: 20px;" @click="handleEdit()" v-if="isShow" v-hasPermi="['system:role:edit']" >编辑</el-button> <el-button v-if="isShow_2" size="mini" style=" width: 67px;height: 27px;background:#E0EEFE; border-radius: 7px 7px 7px 7px;opacity: 1;margin-left: 20px; "@click="submitForm" :disabled="dsb">完成</el-button> <el-button size="mini" style=" width: 67px;height: 27px;background: #D2F3E0; border-radius: 7px 7px 7px 7px;opacity: 1;margin-left: 20px; " @click="handleExport" v-hasPermi="['family:note:export']" >导出</el-button> <el-button size="mini" style=" width: 67px;height: 27px;background: #FFDDE3; border-radius: 7px 7px 7px 7px;opacity: 1; margin-left: 20px;" v-hasPermi="['family:note:export']" >打印</el-button> </div> <div style="display: flex; align-items: center;"> <el-button size="mini" type="text" @click="toMemo" v-hasPermi="['person:information:memo']"> <div class="form" ><el-icon style="padding-right:110px;"></el-icon> <el-button size="mini" type="text" @click="toMemo" v-hasPermi="['person:information:memo']" style="margin-left: 20px"> <div class="form" ><el-icon style="padding-right:100px;"></el-icon> <span class="text" style="width: 69px;height: 26px;font-size: 16px; font-family: Microsoft YaHei-Regular, Microsoft YaHei; color: #EBA4AA;">个人记事本</span></div> </el-button> @@ -27,19 +55,19 @@ <el-col > <el-form ref="elForm" :model="individualList" :rules="rules" size="medium" label-position="left" v-loading="loading" :data="individualList" @selection-change="handleSelectionChange" > <el-row :span="5"> <el-row :span="6"> <el-form-item label="姓名" prop="nickName" label-width="40px"> <el-input v-model="individualList.nickName" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> </el-form-item> </el-row> <el-row :span="5"> <el-row :span="6"> <el-form-item label="曾用名" prop="oldName" label-width="60px"> <el-input v-model="individualList.oldName" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> </el-form-item> </el-row> <el-row :span="5"> <el-row :span="6"> <el-form-item label="身份证号" prop="idNum" label-width="70px"> <el-input v-model="individualList.idNum" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> @@ -49,7 +77,7 @@ </el-col> </el-container> </div> <div style="padding-left:30px"> <div style="padding-left:60px"> <el-container> <el-col v-loading="loading" :data="individualList" @selection-change="handleSelectionChange"> <el-form ref="elForm" :model="individualList" :rules="rules" size="medium" label-position="left"> @@ -84,7 +112,7 @@ </el-col> </el-container> </div> <div style="padding-left:30px"> <div style="padding-left:60px"> <el-container> <el-col v-loading="loading" :data="individualList" @selection-change="handleSelectionChange"> <el-form ref="elForm" :model="individualList" :rules="rules" size="medium" label-position="left":disabled="dsb"> @@ -116,7 +144,7 @@ </el-col> </el-container> </div> <div style="padding-left:30px;padding-top:30px"> <div style="padding-left:100px;padding-top:30px"> <el-col :span="6" :data="individualList"> <div class="block" :model="individualList"> <div v-if="!isEditing"> @@ -167,29 +195,7 @@ </div> <div style="padding-left:30px;padding-top:30px" > <el-container > <el-row > <el-button type="primary" @click="handleEdit()" v-if="isShow" v-hasPermi="['system:role:edit']" >编辑</el-button> <el-button v-if="isShow_2" type="primary" @click="submitForm" :disabled="dsb">完成</el-button> <br> <el-button type="primary" @click="handleExport" v-hasPermi="['family:note:export']" >导出</el-button> <br> <el-button type="primary" v-hasPermi="['family:note:export']" >打印</el-button> </el-row> </el-container> </div> <!-- </el-dialog> self:user:export--> </el-container> @@ -221,7 +227,7 @@ </el-col> </el-container> </div> <div style="padding-left:30px"> <div style="padding-left:60px"> <el-container> <el-col v-loading="loading" :data="individualList" @selection-change="handleSelectionChange"> <el-form ref="elForm" :model="individualList" :rules="rules" size="medium" label-position="left"> @@ -291,13 +297,18 @@ <el-table-column label="开始日期" prop="startDate" sortable width="250" align="center" > <template slot-scope="scope"> <template v-if="!scope.row.isEdit">{{ scope.row.startDate }}</template> <template v-else><el-input v-model="scope.row.startDate" type="date" placeholder="选择日期"></el-input></template> <template v-else> <el-date-picker v-model="scope.row.startDate" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker></template> </template> </el-table-column> <el-table-column label="结束日期" prop="endDate" sortable width="250" align="center" > <template slot-scope="scope"> <template v-if="!scope.row.isEdit">{{ scope.row.endDate }}</template> <template v-else><el-input v-model="scope.row.endDate" type="date" placeholder="选择日期"></el-input></template> <template v-else><el-date-picker v-model="scope.row.endDate" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker></template> </template> </el-table-column> <el-table-column label="主要学习经历、工作单位及任职情况" prop="content" sortable width="350" align="center" > @@ -332,7 +343,8 @@ 家庭成员及主要社会关系情况 <div> <el-button class="button2" size="mini" type="text" @click="showDialog('relation1')"> <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn></el-button></div> <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn></el-button> </div> </div> </template> <el-table v-loading="loading" :data="relationList" @selection-change="handleSelectionChange" @@ -383,7 +395,7 @@ <el-collapse-item name="4"> <template v-slot:title> <div class="title-wrapper"> 持有出入境证件情况 持有证件情况 <el-button class="button4" size="mini" type="text" @click="showDialog('certificate')"> <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn></el-button> </div> @@ -417,13 +429,19 @@ <el-table-column label="开始时间" prop="startTime" sortable width="230" align="center"> <template slot-scope="scope"> <template v-if="!scope.row.isEdit">{{ scope.row.startTime }}</template> <template v-else><el-input v-model="scope.row.startTime" type="date" placeholder="选择日期"></el-input></template> <template v-else> <el-date-picker v-model="scope.row.startTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker></template> </template> </el-table-column> <el-table-column label="结束时间" prop="endTime" sortable width="230" align="center"> <template slot-scope="scope"> <template v-if="!scope.row.isEdit">{{ scope.row.endTime }}</template> <template v-else><el-input v-model="scope.row.endTime" type="date" placeholder="选择日期"></el-input></template> <template v-else> <el-date-picker v-model="scope.row.endTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker></template> </template> </el-table-column> <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> @@ -452,13 +470,19 @@ <el-table-column label="开始时间" prop="startTime" sortable width="200" align="center"> <template slot-scope="scope"> <template v-if="!scope.row.isEdit">{{ scope.row.startTime }}</template> <template v-else><el-input v-model="scope.row.startTime" type="date" placeholder="选择日期"></el-input></template> <template v-else> <el-date-picker v-model="scope.row.startTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker></template> </template> </el-table-column> <el-table-column label="结束时间" prop="endTime" sortable width="200" align="center"> <template slot-scope="scope"> <template v-if="!scope.row.isEdit">{{ scope.row.endTime }}</template> <template v-else><el-input v-model="scope.row.endTime" type="date" placeholder="选择日期"></el-input></template> <template v-else> <el-date-picker v-model="scope.row.endTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker></template> </template> </el-table-column> <el-table-column label="所到国家或者地区" prop="destination" sortable width="300" align="center" > @@ -485,14 +509,20 @@ </el-table-column> </el-table> </el-collapse-item> </el-collapse> <!-- 自传--> <div style="padding-top:30px"> <el-container> <div style="width:100%"><h2 style="font-size:15px" >自传</h2></div> </el-container> <div style='position: relative;'> <el-collapse-item name="6"> <template v-slot:title> <div class="title-wrapper"> 自传 <div> <el-button size='mini' type="text" class="btn_autobiography" @click="showDialog('autobiography')" > <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn> </el-button> </div> </div> </template> <el-contain> <div> <el-tabs type="border-card" v-model="activeName" @tab-click="handleClick" v-loading="loading" :data="AutobiographyList" > <el-tab-pane v-for="(item, index) in AutobiographyList" @@ -510,14 +540,14 @@ <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn> </el-button> </el-tab-pane> </el-tabs> </el-tabs></div> </el-contain> </el-collapse-item> <el-button size='mini' type="text" class="btn_autobiography" @click="showDialog('autobiography')" style='position: absolute;right:10px;top:5px;'> <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn> </el-button> </div> </el-collapse> </div> <pagination v-show="total>0" @@ -528,13 +558,17 @@ /> <!-- 新增主要经历信息配置对话框 --> <el-dialog :title="title" :visible.sync="dialogVisible.open" width="900px" append-to-body> <el-dialog title="新增主要经历信息" :visible.sync="dialogVisible.open" width="900px" append-to-body> <el-form ref="elForm1" :model="formDat" :rules="rules" size="medium" label-width="140px"> <el-form-item label="开始日期" prop="startDate"> <el-input v-model="formDat.startDate" type='date' placeholder='选择日期' clearable :style="{width: '100%'}" ></el-input> <el-date-picker v-model="formDat.startDate" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> <el-form-item label="结束日期" prop="endDate"> <el-input v-model="formDat.endDate" type='date' placeholder='选择日期' clearable :style="{width: '100%'}" ></el-input> <el-date-picker v-model="formDat.endDate" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> <el-form-item label="主要学习经历、工作单位及任职情况" prop="content"> <el-input v-model="formDat.content" type="textarea" :rows="5" placeholder="请输入主要学习经历、工作单位及任职情况" clearable :style="{width: '100%'}" > @@ -554,7 +588,7 @@ </div> </el-dialog> <!-- 新增家庭成员及主要社会关系情况信息配置对话框 --> <el-dialog :title="title" :visible.sync="dialogVisible.relation1" width="900px" append-to-body> <el-dialog title="新增家庭成员及主要社会关系情况" :visible.sync="dialogVisible.relation1" width="900px" append-to-body> <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="140px"> <el-form-item label="与本人关系" prop="relation"> <el-input v-model="formDat.relation" placeholder="请输入与本人关系" clearable :style="{width: '100%'}" ></el-input> @@ -584,18 +618,20 @@ <el-button @click="cancelData">取 消</el-button> </div> </el-dialog> <!-- 新增持有出入境证件情况信息配置对话框 --> <el-dialog :title="title" :visible.sync="dialogVisible.certificate" width="900px" append-to-body> <!-- 新增持有证件情况信息配置对话框 --> <el-dialog title="新增持有证件情况" :visible.sync="dialogVisible.certificate" width="900px" append-to-body> <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="140px"> <el-form-item label="证件名称" prop="cerName"> <el-input v-model="formDat.cerName" placeholder="请输入证件名称" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="证件类型" prop="type"> <el-select v-model="formDat.type" placeholder="请选择类型" clearable :style="{width: '100%'}" > <el-select v-model="formDat.type" placeholder="请选择证件类型" clearable :style="{width: '100%'}" > <el-option v-for="(item, index) in typeOption" :key="index" :label="item.label" :value="item.value" ></el-option> </el-select> <el-input v-model="newOption" v-if="showInput" placeholder="若未在上述选项中找到对应类型,请在此输入新的证件类型" @change="addNewOption"></el-input> </el-form-item> <el-form-item label="持有情况" prop="ownStatus"> <el-input v-model="formDat.ownStatus" placeholder="请输入持有情况" clearable :style="{width: '100%'}" > @@ -606,11 +642,14 @@ </el-input> </el-form-item> <el-form-item label="开始日期" prop="startTime"> <el-input v-model="formDat.startTime" type='date' placeholder='选择日期' clearable :style="{width: '100%'}" ></el-input> <el-date-picker v-model="formDat.startTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> <el-form-item label="结束日期" prop="endTime"> <el-input v-model="formDat.endTime" type='date' placeholder='选择日期' clearable :style="{width: '100%'}" ></el-input> </el-form-item> <el-date-picker v-model="formDat.endTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker></el-form-item> </el-form> <h4 class="form-header"> </h4> @@ -620,14 +659,16 @@ </div> </el-dialog> <!-- 新增出国(境)情况信息配置对话框 --> <el-dialog :title="title" :visible.sync="dialogVisible.abroad" width="900px" append-to-body> <el-dialog title="新增出国(境)情况信息" :visible.sync="dialogVisible.abroad" width="900px" append-to-body> <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="140px"> <el-form-item label="开始日期" prop="startTime"> <el-input v-model="formDat.startTime" type='date' placeholder='选择日期' clearable :style="{width: '100%'}" ></el-input> </el-form-item> <el-date-picker v-model="formDat.startTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker></el-form-item> <el-form-item label="结束日期" prop="endTime"> <el-input v-model="formDat.endTime" type='date' placeholder='选择日期' clearable :style="{width: '100%'}" > </el-input> <el-date-picker v-model="formDat.endTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> <el-form-item label="所到国家或者地区" prop="destination"> <el-input v-model="formDat.destination" type="textarea" :rows="5" placeholder="请输入所到国家或者地区" clearable :style="{width: '100%'}" > @@ -695,12 +736,11 @@ import axios from 'axios'; //在system/note/index.js中导入接口函数 --接好了 import { getIndividualList, addIndividual, updateIndividual, delIndividual, import {getIndividualList, addIndividual, updateIndividual, delIndividual, listExperience, addExperience, updateExperience, delExperience, getIndividualRelation, addRelation, updateRelation, delRelation, getCertificateList, addCertificate, updateCertificate, delCertificate, getAbroadList, addAbroad, updateAbroad, delAbroad, getAbroadList, addAbroad, updateAbroad, delAbroad,listType, getAutobiographyList, getAutobiographyTermList, addAutobiography,updateAutobiography, getCategory, } from "@/api/self/index"; @@ -752,6 +792,7 @@ relationList:[], //出入境证件情况 certificateList:[], typeList:[], //出国情况 AbroadList:[], @@ -783,8 +824,6 @@ }, // 弹出层标题 title: "", // 是否显示弹出层 open: false, // open:true, // 是否显示弹出层(数据权限) @@ -979,16 +1018,9 @@ }, selectedOption:'', typeOptions:[], typeOption: [{ value:'护照', label:'护照' },{ value:'通行证', label:'通行证' },{ value:'身份证', label:'身份证' }], typeOption:[], newOption: undefined, showInput: true }; }, created() { @@ -1018,7 +1050,7 @@ //下拉 handleChange(activeNames) { // console.log(val); // console.log(activeNames); this.reset(); }, showDialog(dialogName) { @@ -1064,7 +1096,14 @@ return '——————' } }, //类别 addNewOption() { const newOption = this.newOption.trim(); if (newOption && !this.typeOption.includes(newOption)) { this.typeOption.push(newOption); this.$set(this.formDat, 'type', newOption); // 更新formDat.type的值为新的选项 } }, /** 查询角色列表 */ getList() { this.loading = true; @@ -1132,6 +1171,32 @@ // this.total = response.data.total; // this.loading = false; // }); listType(this.queryParams).then(response => { this.typeList = response.data; this.total = response.data.total; // console.log( this.typeList ) // 在回调函数中调用 getTypeOptions() this.getTypeOptions(); this.loading = false; } ); }, getTypeOptions() { const filteredOptions = this.typeList.filter(item => typeof item === 'string' && item !== ''); // 创建一个空对象用于存储唯一的字符串选项 const uniqueOptions = {}; // 构建下拉选项列表 this.typeOption = filteredOptions.reduce((options, option) => { if (!uniqueOptions[option]) { uniqueOptions[option] = true; options.push({ label: option, value: option }); } return options; }, []); }, //图片的上传及上传按钮隐藏 @@ -1212,12 +1277,6 @@ }); }, handleRemoveFile(file) { alert(23) }, handleRemove(file) { alert("323") }, handlePictureCardPreview(file) { this.dialogImageUrl = file.url; this.dialogVisible = true; @@ -1273,11 +1332,6 @@ }); }); // if(AutobiographyList.ageEnd==null){ // this.AgeEnd='?' // }else{ // this.AgeEnd=this.ageEnd // } }, /** 提交按钮(数据权限) */ @@ -1667,9 +1721,7 @@ background: #FFEFF2; } /*.co-item{*/ /* background-color: #EBAFB4;*/ /*}*/ .el-collapse-item__header { background-color:#FEF7FC; } @@ -1679,11 +1731,19 @@ } .btn_autobiography{ background:center no-repeat url('../../assets/icons/add1.png') ; margin-left: 76vw; } .btn_edit{ background:center no-repeat url('../../assets/icons/edit.png') ; } .button-container { text-align: right; display: flex; justify-content: flex-end; align-items: center; flex-grow: 1; } .button { background:center no-repeat url('../../assets/icons/add1.png') ; margin-left: 69.5vw; @@ -1695,7 +1755,7 @@ } .button4 { background: center no-repeat url('../../assets/icons/add1.png') ; margin-left: 69.5vw; margin-left: 71.5vw; } .button5 { background:center no-repeat url('../../assets/icons/add1.png') ; ruoyi-ui/src/views/travel/Info.vue
@@ -162,46 +162,45 @@ <!-- 添加或修改资产信息配置对话框 --> <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="60%" append-to-body> <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="100px"> <h4 class="form-header">行程内容 </h4> <el-form-item label="标题" prop="title"> <el-input v-model="formDat.title" placeholder="请输入标题" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="时间" prop="happenTime"> <el-date-picker <el-input v-model='formDat.happenTime' type='date' placeholder='选择日期' ></el-date-picker> ></el-input> </el-form-item> <el-form-item label="地点" prop="address"> <el-input v-model="formDat.address" placeholder="请输入地点" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <!-- <el-form-item label="地点" prop="price"> <el-select v-model="formDat.price" placeholder="请选择收入/支出" clearable :style="{width: '100%'}" > <el-option v-for="(item, index) in typeOptions" :key="index" :label="item.label" :value="item.value" ></el-option> </el-select> </el-form-item> --> <el-form-item label="人物" prop="people"> <el-input v-model="formDat.people" placeholder="请输入人物" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="标题" prop="title"> <el-input v-model="formDat.title" placeholder="请输入标题" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="旅期" prop="travelPeriod"> <el-input v-model="formDat.travelPeriod" placeholder="请输入使用人" clearable :style="{width: '100%'}" > <el-input v-model="formDat.travelPeriod" placeholder="请输入旅期" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="持证旅游" prop="certificate"> <el-input v-model="formDat.certificate" placeholder="请输入证件" clearable :style="{width: '100%'}" > </el-input> <el-select v-model="formDat.certificate" placeholder="请选择证件" clearable :style="{width: '80%'}" > <el-option label="居民身份证" value="居民身份证"></el-option> <el-option label="临时身份证" value="临时身份证"></el-option> <el-option label="户口本" value="户口本"></el-option> <el-option label="护照" value="护照"></el-option> <el-option label="学生证" value="学生证"></el-option> </el-select> </el-form-item> <el-form-item label="费用" prop="totalPrice"> <!-- <el-form-item label="费用" prop="totalPrice"> <el-input v-model="formDat.totalPrice" placeholder="请输入总共费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> </el-form-item> --> <el-form-item label="公费/自费" prop="self"> <el-select v-model="formDat.self" placeholder="请选择自费/公费" clearable :style="{width: '100%'}" > <el-option v-for="(item, index) in typeOptions" :key="index" :label="item.label" :value="item.value" @@ -211,6 +210,7 @@ <el-form-item label="备注" prop="remark"> <el-input v-model="formDat.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" ></el-input> </el-form-item> <h4 class="form-header">相关图片 </h4> <el-upload @@ -269,6 +269,34 @@ </el-upload> </el-form> <el-form ref="elForm1" :model="formDat1" :rules="rules1" size="medium" label-width="100px"> <h4 class="form-header">费用明细 </h4> <el-form-item label="内容" prop="content"> <el-input v-model="formDat1.content" placeholder="请输入内容" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="住宿费用" prop="stay"> <el-input v-model="formDat1.stay" placeholder="请输入住宿费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="交通费用" prop="traffic"> <el-input v-model="formDat1.traffic" placeholder="请输入交通费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="餐费" prop="eat"> <el-input v-model="formDat1.eat" placeholder="请输入餐费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="购物费用" prop="shopping"> <el-input v-model="formDat1.shopping" placeholder="请输入购物费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="门票费用" prop="entrance"> <el-input v-model="formDat1.entrance" placeholder="请输入门票费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> </el-form> <h4 class="form-header"> </h4> <div slot="footer" class="dialog-footer"> @@ -292,7 +320,7 @@ //在system/note/index.js中导入接口函数 --接好了 import {addTravelBase,listTravelBase,enload,delTravelBase, uploadPic} from "@/api/travel/index"; import {addTravelBase,listTravelPrice,getTravelBaseInfo,listTravelBase,enload,delTravelBase, uploadPic,updateTravelPrice} from "@/api/travel/index"; export default { name: "Role", @@ -315,6 +343,7 @@ total: 0, // 家大事记表格数据 travelBase: [], detailList:[], // 弹出层标题 title: "", // 是否显示弹出层 @@ -347,6 +376,18 @@ self: undefined, remark: undefined, url: undefined, }, formDat1: { eat: undefined, stay: undefined, traffic: undefined, entrance: undefined, shopping:undefined, content: undefined, }, formDat2: { id: undefined, detailList: undefined, }, // 菜单列表 menuOptions: [], @@ -413,6 +454,40 @@ }], }, rules1: { stay: [{ required: true, message: '请输入人物', trigger: 'blur' }], content: [{ required: true, message: '请输入地点', trigger: 'blur' }], traffic: [{ required: true, message: '请输入标题', trigger: 'blur' }], entrance: [{ required: true, message: '请输入旅期', trigger: 'blur' }], eat: [{ required: true, message: '请输入证件', trigger: 'blur' }], shopping: [{ required: true, message: '请选择日期选择', trigger: 'change' }], }, typeOptions: [ { value: '0', @@ -436,8 +511,9 @@ }, created() { const id = this.$route.params && this.$route.params.id; const id = this.$route.params && this.$route.params.id; this.getList1(); this.getList(id); }, @@ -491,11 +567,30 @@ // alert(123) // console.log(response.data) this.travelBase = response.data.data; console.log(this.travelBase) // console.log(this.travelBase) this.total = response.data.total; this.loading = false; } ); }, getList1() { this.loading = true; const id = this.$route.params && this.$route.params.id; return new Promise((resolve, reject) => { listTravelPrice(this.queryParams).then(response => { // console.log(response.data.data); const filteredData = response.data.data.find(item => item.id === id); this.total = response.data.total; this.loading = false; const detailList = filteredData.detailList; // console.log(detailList); resolve(detailList); }).catch(error => { console.error("请求错误:", error); reject(error); }); }); }, handleRemove(file) { for(let i = 0; i < this.fileListOther.length; i++) @@ -593,7 +688,14 @@ this.dialogVisible = true; }, /** 提交按钮(数据权限) */ submitDataScope: function() { submitDataScope: async function() { this.formDat2.detailList = []; console.log("调试"); console.log(this.formDat2.detailList); await this.getList1().then(detailList => { this.formDat2.detailList = detailList; console.log(this.formDat2.detailList); }); let ul = this.fileList.map(function (elem){ return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") @@ -602,6 +704,24 @@ return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") }).join(",") this.formDat.url = ul+","+uls const fid = this.$route.params && this.$route.params.id; this.formDat.feeId = this.$route.params && this.$route.params.id; this.formDat1.happenTime = this.formDat.happenTime; this.formDat2.detailList.push(this.formDat1); this.formDat2.id = this.$route.params && this.$route.params.id; const stay = parseFloat(this.formDat1.stay); const traffic = parseFloat(this.formDat1.traffic); const eat = parseFloat(this.formDat1.eat); const shopping = parseFloat(this.formDat1.shopping); const entrance = parseFloat(this.formDat1.entrance); const totalPrice = stay + traffic + eat + shopping + entrance; console.log("总费用"); console.log(totalPrice); this.formDat.totalPrice=totalPrice; console.log("111"); console.log(this.formDat2) this.$refs["elForm"].validate(valid => { if (valid) { @@ -610,6 +730,18 @@ this.open = false; this.getList(fid); }); } }); this.$refs["elForm1"].validate(valid => { if (valid) { updateTravelPrice(this.formDat2).then(response => { this.$modal.msgSuccess("费用新增成功"); this.open = false; }); } }); }, @@ -637,15 +769,95 @@ }, /** 删除按钮操作 */ handleDelete(row) { async handleDelete(row) { const Ids = row.id || this.ids; this.$modal.confirm('是否确认删除所选数据项?').then(function() { return delTravelBase(Ids); }).then(() => { this.getList(); const id = row.id || this.ids; try { const response = await getTravelBaseInfo(id); const baseDate = response.data.totalPrice; console.log("112"); console.log(baseDate); const detailList = await this.getList1(); this.detailList = detailList; console.log(this.detailList); const targetTotalCost = baseDate; // 目标 totalCost 值 let targetId = null; // 目标数据的 id for (const detail of this.detailList) { if (detail.totalCost === targetTotalCost) { targetId = detail.id; console.log(targetId); break; } } const detailList2 = this.detailList.filter((detail) => detail.id !== targetId); console.log(detailList2); const formDat3 = {} formDat3.detailList = detailList2 const id2 = this.$route.params && this.$route.params.id; console.log(id2); formDat3.id = id2; console.log(formDat3); await updateTravelPrice(formDat3); this.open = false; await delTravelBase(Ids); const fid = this.queryParams.fid this.getList(fid); this.$modal.msgSuccess("删除成功"); }).catch(() => {}); } catch (error) { console.error(error); } }, // async handleDelete(row) { // const Ids = row.id || this.ids; // const id = row.id ||this.ids // await getTravelBaseInfo(id).then(async (response) => { // const baseDate = response.data.totalPrice; // console.log("112"); // console.log(baseDate); // // 获取详细列表 // await this.getList1().then((detailList) => { // this.detailList = detailList; // console.log(this.detailList); // const targetTotalCost = baseDate; // 目标 totalCost 值 // let targetId = null; // 目标数据的 id // for (const detail of this.detailList) { // if (detail.totalCost === targetTotalCost) { // targetId = detail.id; // console.log(targetId); // break; // } // } // const detailList2 = [...this.detailList].filter((detail) => { // return detail.id !== targetId; // }); // console.log(detailList2); // const id2 = this.$route.params && this.$route.params.id; // console.log(id2); // detailList2.id = id2 // console.log(typeof detailList2); // debugger // updateTravelPrice(detailList2).then(response => { // this.open = false; // }); // }); // }); // this.$modal.confirm('是否确认删除所选数据项?').then(function() { // return delTravelBase(Ids); // }).then(() => { // this.getList(fid); // this.$modal.msgSuccess("删除成功"); // }).catch(() => {}); // }, /** 导出按钮操作 */ handleExport() { const Ids = this.ids; ruoyi-ui/src/views/travel/index.vue
@@ -52,108 +52,173 @@ v-hasPermi="['system:role:remove']" >删除</el-button> </el-col> <el-col :span="1.5"> <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" v-hasPermi="['family:note:export']" >导出</el-button> </el-col> <el-col :span="1.5"> <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExportTemplate" v-hasPermi="['family:note:export']" >导入模板下载</el-button> </el-col> <el-col :span="1.2"> <el-upload action="" class="upload-demo" :show-file-list="false" :http-request="handleEnport" > <el-button size="mini" type="primary" plain icon="el-icon-plus" >导入</el-button> </el-upload> </el-col> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> </el-row> <!-- 序号、基金/台账、时间、收入/支出、用途、使用人、现金/自动扣划、余额、电子文件、备注 操作--> <!-- 这里有个familyList数组 是在data()中定义的 --> <el-table v-loading="loading" :data="travelpriceList" @selection-change="handleSelectionChange" @row-click="handleShow" :row-class-name="tableRowClassName" style="background: #FFEFF2; border-radius: 14px 14px 14px 14px;"> <el-table-column type="selection" width="55" align="center" /> <el-table-column fixed label="序号" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="40"/> <el-table-column label="旅游名称" prop="tableName" sortable width="100" /> <el-table v-loading="loading" :data="travelpriceList" @row-click="getRowId" @selection-change="handleSelectionChange" :row-class-name="tableRowClassName" style="background: #FFEFF2; border-radius: 14px 14px 14px 14px;"> <el-table-column type="expand" :cell-class-name="expandRowClassName"> <template slot-scope="props"> <div > <el-table :header-row-class-name="tableHeaderRowClassName" v-loading="loading" :data="travelBase[props.row.id]" style="background: #FFEFF2; border-radius: 14px 14px 14px 14px;" :row-class-name="tableRowClassName1" > <el-table-column label="序号" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="50px"/> <el-table-column label="时间" prop="happenTime" sortable width="100" align="center" > <template slot-scope="scope">{{scope.row.happenTime? scope.row.happenTime: '————'}}</template> </el-table-column> <el-table-column label="地点" prop="address" sortable width="100" /> <el-table-column label="人物" prop="people" sortable width="100" /> <el-table-column label="标题" prop="title" sortable width="100" /> <el-table-column label="去向" prop="destination" sortable width="50" /> <!-- <el-table-column label="旅期" prop="travelPeriod" sortable width="100" /> --> <el-table-column label="持证旅游" prop="certificate" sortable width="100" /> <el-table-column label="总费用" prop="totalPrice" sortable width="100" /> <el-table-column label="公费/自费" prop="self" sortable width="100" > <template slot-scope="scope">{{scope.row.self==0?'公费':'自费'}}</template> </el-table-column> <el-table-column label="餐费" prop="eat" sortable width="70px" /> <el-table-column label="住宿" prop="stay" sortable width="70px" /> <el-table-column label="交通" prop="traffic" sortable width="70px" /> <el-table-column label="门票" prop="entrance" sortable width="70px" /> <el-table-column label="购物" prop="shopping" sortable width="70px" /> <el-table-column label="电子文件" prop="url" width="160" > <template slot-scope="scope" > <img class="el-upload-list__item-thumbnail" src="../../assets/images/deviceLis.png" alt="" style="width: 35px; height: 35px;" fit="cover" v-if="scope.row.url !== null" > <img class="el-upload-list__item-thumbnail" src="../../assets/images/deviceA.png" alt="" style="width: 35px; height: 35px;" fit="cover" v-if="scope.row.url === null" > </template> </el-table-column> <el-table-column label="备注" prop="remark" sortable width="100" /> <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <template slot-scope="scope" v-if="scope.row.roleId !== 1"> <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate1(scope.row)" v-hasPermi="['familymodel:economy:info']" >修改</el-button> <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['system:role:remove']" >删除</el-button> <el-button size="mini" type="text" icon="el-icon-d-arrow-right" @click="handleCheck1(scope.row)">查看详情</el-button> </template> </el-table-column> </el-table> </div> </template> </el-table-column> <!-- <el-table-column type="selection" width="55" align="center" /> --> <el-table-column fixed label="序号" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="60px"/> <el-table-column label="起" prop="startTime" sortable width="100" align="center"> <template slot-scope="scope">{{scope.row.startTime? scope.row.startTime: '————'}}</template> </el-table-column> <el-table-column label="止" prop="endTime" sortable width="100" align="center"> <template slot-scope="scope">{{scope.row.endTime? scope.row.endTime: '————'}}</template> </el-table-column> <el-table-column label="总天数" prop="totalDay" sortable width="100" /> <el-table-column label="总天数" prop="totalDay" sortable width="85px" /> <el-table-column label="旅游名称" prop="tableName" sortable width="100" /> <el-table-column label="标题" prop="title" sortable width="130px" /> <el-table-column label="去向" prop="destination" sortable width="70px" /> <el-table-column label="旅游性质" prop="property" sortable width="100" /> <el-table-column label="旅游方式" prop="type" sortable width="100" /> <el-table-column label="总金额" prop="totalCost" sortable width="100" /> <el-table-column label="餐费" prop="eat" sortable width="100" /> <el-table-column label="住宿" prop="stay" sortable width="100" /> <el-table-column label="交通" prop="traffic" sortable width="100" /> <el-table-column label="门票" prop="entrance" sortable width="100" /> <el-table-column label="购物" prop="shopping" sortable width="80" /> <el-table-column label="餐费" prop="eat" sortable width="70px" /> <el-table-column label="住宿" prop="stay" sortable width="70px" /> <el-table-column label="交通" prop="traffic" sortable width="70px" /> <el-table-column label="门票" prop="entrance" sortable width="70px" /> <el-table-column label="购物" prop="shopping" sortable width="70px" /> <el-table-column label="操作" align="center" sortable width="200" > <el-table-column fixed label="操作" align="center" sortable width="180" > <template slot-scope="scope" v-if="scope.row.roleId !== 1"> <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" v-hasPermi="['person:travel:edit']" >修改</el-button> <el-button size="mini" type="text" icon="el-icon-circle-plus" @click="handleAdd1(scope.row)" v-hasPermi="['person:travel:edit']" >新增</el-button> <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['system:role:remove']" > 删除</el-button> <!-- <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['familymodel:economy:info']"> <el-button size="mini" type="text" icon="el-icon-d-arrow-right" @click="handleCheck(scope.row)">查看详情</el-button> </el-dropdown> --> <!-- <el-button class="button" size="mini" type="text" @click="handleShow" v-hasPermi="['system:role:add']"> <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn> </el-button> --> </template> </el-table-column> </el-table> <div style="background-color: #FEF7FC;"> <el-dialog :title="title" :visible.sync="openDataScope" width="1300px" append-to-body > <div style="background-color: #FEF7FC;"> <el-table v-loading="loading" :data="detailList" @selection-change="handleSelectionChange" :row-class-name="tableRowClassName" > <el-table-column type="selection" width="50" align="center" /> <el-table-column label="序号" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="80px"/> <el-table-column label="时间" prop="happenTime" sortable width="150" align="center"> <template slot-scope="scope">{{scope.row.happenTime? scope.row.happenTime: '————'}}</template> </el-table-column> <el-table-column label="内容" prop="content" sortable :show-overflow-tooltip="true" width="100px" /> <el-table-column label="总金额" prop="totalCost" sortable :show-overflow-tooltip="true" width="100px" /> <el-table-column label="餐费" prop="eat" sortable :show-overflow-tooltip="true" width="100px" /> <el-table-column label="住宿" prop="stay" sortable :show-overflow-tooltip="true" width="100px" /> <el-table-column label="交通" prop="traffic" sortable :show-overflow-tooltip="true" width="100px" /> <el-table-column label="门票" prop="entrance" sortable :show-overflow-tooltip="true" width="100px" /> <el-table-column label="购物" prop="shopping" sortable :show-overflow-tooltip="true" width="100px" /> <el-table-column label="操作" align="center" sortable class-name="small-padding fixed-width"> <template slot-scope="scope" v-if="scope.row.roleId !== 1"> <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" @click="handleUpdate1(scope.row)" v-hasPermi="['familymodel:economy:info']" >修改</el-button> <el-button size="mini" type="text" class="button_delete" @click="handleDelete(scope.row)" v-hasPermi="['system:role:remove']" > <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn></el-button> <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['familymodel:economy:info']"> <el-button size="mini" type="text" icon="el-icon-d-arrow-right" @click="handleCheck(scope.row)">查看详情</el-button> </el-dropdown> <el-button class="button" size="mini" type="text" @click="handleShow" v-hasPermi="['system:role:add']"> <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn> </el-button> </template> </el-table-column> </el-table> <el-dialog :title="title" :visible.sync="openDataScope" width="1500px" append-to-body > <div style="background-color: #FEF7FC;"> <el-table v-loading="loading" :data="detailList" @selection-change="handleSelectionChange" :row-class-name="tableRowClassName" > <el-table-column type="selection" width="50" align="center" /> <el-table-column label="序号" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="150"/> <el-table-column label="时间" prop="happenTime" sortable width="150" align="center"> <template slot-scope="scope">{{scope.row.happenTime? scope.row.happenTime: '————'}}</template> </el-table-column> <el-table-column label="内容" prop="content" sortable :show-overflow-tooltip="true" width="160" /> <el-table-column label="总金额" prop="totalCost" sortable :show-overflow-tooltip="true" width="160" /> <el-table-column label="餐费" prop="eat" sortable :show-overflow-tooltip="true" width="160" /> <el-table-column label="住宿" prop="stay" sortable :show-overflow-tooltip="true" width="160" /> <el-table-column label="交通" prop="traffic" sortable :show-overflow-tooltip="true" width="150" /> <el-table-column label="门票" prop="entrance" sortable :show-overflow-tooltip="true" width="150" /> <el-table-column label="购物" prop="shopping" sortable :show-overflow-tooltip="true" width="150" /> </el-table> <pagination @@ -167,7 +232,7 @@ </div> </el-dialog> </div> <pagination v-show="total>0" :total="total" @@ -179,12 +244,59 @@ <!-- 添加或修改资产信息配置对话框 --> <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body> <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="100px"> <el-form-item label="台账" prop="type"> <el-input v-model="formDat.type" placeholder="请输入内容" clearable :style="{width: '100%'}" ></el-input> <el-dialog :title="title" :visible.sync="dialog1Visible" width="800px" append-to-body> <el-form ref="elForm2" :model="formDat4" :rules="rules2" size="medium" label-width="100px"> <el-form-item label="标题" prop="title"> <el-input v-model="formDat4.title" placeholder="请输入标题" clearable :style="{width: '80%'}" > </el-input> </el-form-item> <el-form-item label="起始时间" prop="startTime"> <el-input type="date" v-model="formDat4.startTime" placeholder="请选择起始时间" style="width: 80%;"></el-input> </el-form-item> <el-form-item label="结束时间" prop="endTime"> <el-input type="date" v-model="formDat4.endTime" placeholder="请选择结束时间" style="width: 80%;"></el-input> </el-form-item> <el-form-item label="去向" prop="destination"> <el-select v-model="formDat4.destination" placeholder="请选择去向" clearable :style="{width: '80%'}" > <el-option label="国内" value="国内"></el-option> <el-option label="国外" value="国外"></el-option> </el-select> </el-form-item> <el-form-item label="旅游名称" prop="tableName"> <el-input v-model="formDat4.tableName" placeholder="请输入旅游名称" clearable :style="{width: '80%'}" > </el-input> </el-form-item> <el-form-item label="旅游性质" prop="property"> <el-select v-model="formDat4.property" placeholder="请选择性质" clearable :style="{width: '80%'}" > <el-option label="自费" value="自费"></el-option> <el-option label="公费" value="公费"></el-option> </el-select> </el-form-item> <el-form-item label="旅游方式" prop="type"> <el-select v-model="formDat4.type" placeholder="请选择旅游方式" clearable :style="{width: '80%'}" > <el-option label="自驾游" value="自驾游"></el-option> <el-option label="跟团游" value="跟团游"></el-option> <el-option label="自助游" value="自助游"></el-option> </el-select> </el-form-item> </el-form> <h4 class="form-header"> </h4> <div slot="footer" class="dialog-footer"> <el-button type="primary" @click="submitDataScope">确 定</el-button> <el-button @click="cancelData">取 消</el-button> </div> </el-dialog> <el-dialog title="添加每日行程内容" :visible.sync="centerDialogVisible" width="60%" center append-to-body> <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="100px"> <h4 class="form-header">行程内容 </h4> <el-form-item label="标题" prop="title"> <el-input v-model="formDat.title" placeholder="请输入标题" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="时间" prop="happenTime"> <el-input v-model='formDat.happenTime' @@ -192,31 +304,41 @@ placeholder='选择日期' ></el-input> </el-form-item> <el-form-item label="收入/支出" prop="price"> <el-select v-model="formDat.price" placeholder="请选择收入/支出" clearable :style="{width: '100%'}" > <el-form-item label="地点" prop="address"> <el-input v-model="formDat.address" placeholder="请输入地点" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="人物" prop="people"> <el-input v-model="formDat.people" placeholder="请输入人物" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="旅期" prop="travelPeriod"> <el-input v-model="formDat.travelPeriod" placeholder="请输入旅期" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="持证旅游" prop="certificate"> <el-select v-model="formDat.certificate" placeholder="请选择证件" clearable :style="{width: '80%'}" > <el-option label="居民身份证" value="居民身份证"></el-option> <el-option label="临时身份证" value="临时身份证"></el-option> <el-option label="户口本" value="户口本"></el-option> <el-option label="护照" value="护照"></el-option> <el-option label="学生证" value="学生证"></el-option> </el-select> </el-form-item> <!-- <el-form-item label="费用" prop="totalPrice"> <el-input v-model="formDat.totalPrice" placeholder="请输入总共费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> --> <el-form-item label="公费/自费" prop="self"> <el-select v-model="formDat.self" placeholder="请选择自费/公费" clearable :style="{width: '100%'}" > <el-option v-for="(item, index) in typeOptions" :key="index" :label="item.label" :value="item.value" ></el-option> </el-select> </el-form-item> <el-form-item label="金额" prop="balance"> <el-input v-model="formDat.balance" placeholder="请输入余额" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="用途" prop="useFor"> <el-input v-model="formDat.useFor" placeholder="请输入用途" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="使用人" prop="usePeople"> <el-input v-model="formDat.usePeople" placeholder="请输入使用人" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="支付方式" prop="kind"> <el-input v-model="formDat.kind" placeholder="请输入支付方式" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="备注" prop="remark"> <el-input v-model="formDat.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" ></el-input> </el-form-item> <h4 class="form-header">相关图片 </h4> <el-upload @@ -275,14 +397,41 @@ </el-upload> </el-form> <el-form ref="elForm1" :model="formDat1" :rules="rules1" size="medium" label-width="100px"> <h4 class="form-header">费用明细 </h4> <el-form-item label="内容" prop="content"> <el-input v-model="formDat1.content" placeholder="请输入内容" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="住宿费用" prop="stay"> <el-input v-model="formDat1.stay" placeholder="请输入住宿费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="交通费用" prop="traffic"> <el-input v-model="formDat1.traffic" placeholder="请输入交通费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="餐费" prop="eat"> <el-input v-model="formDat1.eat" placeholder="请输入餐费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="购物费用" prop="shopping"> <el-input v-model="formDat1.shopping" placeholder="请输入购物费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> <el-form-item label="门票费用" prop="entrance"> <el-input v-model="formDat1.entrance" placeholder="请输入门票费用" clearable :style="{width: '100%'}" > </el-input> </el-form-item> </el-form> <h4 class="form-header"> </h4> <div slot="footer" class="dialog-footer"> <el-button type="primary" @click="submitDataScope">确 定</el-button> <el-button @click="cancelData">取 消</el-button> <el-button type="primary" @click="submitDataScope1">确 定</el-button> <el-button @click="centerDialogVisible = false">取 消</el-button> </div> </el-dialog> </div> </template> @@ -294,7 +443,7 @@ //在system/note/index.js中导入接口函数 --接好了 import {listTravelPrice,enload,getTravelPriceInfo,delTravelPrice, addTravelPrice, uploadPic} from "@/api/travel/index"; import {listTravelPrice,enload,listTravelBase,delTravelPrice, addTravelPrice, uploadPic,updateTravelPrice,addTravelBase} from "@/api/travel/index"; export default { name: "Role", @@ -305,7 +454,6 @@ disabled: false, loading: true, formData:[], detailList:[], // 选中数组 ids: [], // 非单个禁用 @@ -316,12 +464,19 @@ showSearch: true, // 总条数 total: 0, // 家大事记表格数据 // travelpriceList: [], travelBase:[], baseData:[], detailList:[], // 弹出层标题 title: "", title1:"", // 是否显示弹出层 open: false, centerDialogVisible: false, dialog1Visible: false, dialog2Visible: false, // 是否显示弹出层(数据权限) openDataScope: false, menuExpand: false, @@ -340,13 +495,37 @@ dsb:true, btn:false, formDat: { type: undefined, createTime: undefined, useFor: undefined, usePeople: undefined, kind:undefined, people: undefined, address: undefined, happenTime: undefined, title: undefined, travelPeriod:undefined, certificate: undefined, totalPrice: undefined, self: undefined, remark: undefined, url: undefined, }, formDat1: { eat: undefined, stay: undefined, traffic: undefined, entrance: undefined, shopping:undefined, content: undefined, }, formDat2: { id: undefined, detailList: undefined, }, formDat4: { type: undefined, startTime: undefined, title: undefined, endTime: undefined, property:undefined, tableName: undefined, destination: undefined, detailList:undefined, }, // 菜单列表 @@ -371,51 +550,129 @@ }, // 表单校验 rules: { usePeople: [{ people: [{ required: true, message: '请输入使用人', message: '请输入人物', trigger: 'blur' }], useFor: [{ address: [{ required: true, message: '请输入用途', message: '请输入地点', trigger: 'blur' }], type: [{ title: [{ required: true, message: '请输入台账内容', message: '请输入标题', trigger: 'blur' }], balance: [{ travelPeriod: [{ required: true, message: '请输入金额', message: '请输入旅期', trigger: 'blur' }], kind: [{ // required: true, message: '请输入支付方式', certificate: [{ required: true, message: '请输入证件', trigger: 'blur' }], createTime: [{ happenTime: [{ required: true, message: '请选择日期选择', trigger: 'change' }], price: [{ totalPrice: [{ required: true, message: '请选择事项内容', message: '请选择费用', trigger: 'blur' }], self: [{ required: true, message: '请选择公费/自费', trigger: 'change' }], }, rules1: { stay: [{ required: true, message: '请输入人物', trigger: 'blur' }], content: [{ required: true, message: '请输入地点', trigger: 'blur' }], traffic: [{ required: true, message: '请输入标题', trigger: 'blur' }], entrance: [{ required: true, message: '请输入旅期', trigger: 'blur' }], eat: [{ required: true, message: '请输入证件', trigger: 'blur' }], shopping: [{ required: true, message: '请选择日期选择', trigger: 'change' }], }, rules2: { type: [{ required: true, message: '请输入旅游方式', trigger: 'blur' }], property: [{ required: true, message: '请输入旅游性质', trigger: 'change' }], destination: [{ required: true, message: '请选择去向', trigger: 'change' }], tableName: [{ required: true, message: '请输入旅游名称', trigger: 'blur' }], startTime: [{ required: true, message: '请选择日期', trigger: 'change' }], endTime: [{ required: true, message: '请选择日期', trigger: 'change' }], title: [{ required: true, message: '请选择标题', trigger: 'blur' }], }, typeOptions: [ { value: '收入', label: '收入', value: '0', label: '自费', }, { value: '支出', label: '支出', value: '1', label: '公费', }], typeOptions1: [ { @@ -431,27 +688,20 @@ }, created() { this.getList(); }, methods: { //基金/台账的选择 getSrc1(type) { if (type === 0) { return '基金' }else { return '台账' } //展开行 expandRowClassName({ row, rowIndex }) { // 返回对应行的样式配置对象 return { 'expand-row': true, // 添加自定义样式类名 'expand-row-height': '40px' // 设置展开行的高度 }; }, getSrc2(kind) { if (kind == 0) { return '现金' }else { return '自动扣划' } //首行样式 tableHeaderRowClassName() { return 'custom-header-row'; }, // 取消按钮 cancelData() { this.open = false; @@ -466,7 +716,14 @@ return "statistics-warning-row"; } }, //隔行变色 tableRowClassName1({ row, rowIndex }) { if (rowIndex % 2 == 0) { return "statistics-warning-row3"; } else { return "statistics-warning-row2"; } }, /** 查询角色列表 */ //列表显示家大事记 @@ -478,16 +735,67 @@ // console.log(this.queryParams) // listProperty(this.addDateRange(this.queryParams, this.dateRange)).then(response => { listTravelPrice(this.queryParams).then(response => { listTravelPrice(this.queryParams).then(async response => { // alert(123) // console.log(response.data) this.travelpriceList = response.data.data; console.log(this.travelpriceList[0]) // const targetId = row.id // const detailList = filteredData.detailList; // console.log("detailList" ); // console.log(detailList); // resolve(detailList); // console.log(this.detailList) // console.log(this.travelpriceList); this.total = response.data.total; for (let item of this.travelpriceList) { this.queryParams.fid = item.id this.queryParams.happenStartTime = this.dateRange.length > 0 && this.dateRange[0] this.queryParams.happenEndTime = this.dateRange.length > 0 && this.dateRange[1] const baseResponse = await listTravelBase(this.queryParams); const baseData = baseResponse.data.data; this.$set(this.travelBase, item.id, baseData); // debugger this.total = response.data.total; for(let item1 of item.detailList){ console.log(item1); const targetDate = item1.happenTime; // 要查找的目标日期 // console.log("targetDate" + targetDate); const keys = Object.keys(baseData); for (let i = 0; i < keys.length; i++) { const key = keys[i]; const baseItem = baseData[key]; // console.log("baseItem" + baseItem); if (baseItem.happenTime === targetDate) { // 找到了符合条件的数据 const baseItem = baseData[key]; delete item1.id; const mergedItem = { ...baseItem, ...item1 }; this.$set(baseData, key, mergedItem); // console.log(baseData); break; } } } } // console.log("打印完毕"); this.loading = false; } ); }, handleRemove(file) { for(let i = 0; i < this.fileListOther.length; i++) { @@ -504,6 +812,7 @@ getRowId(row) { return row.id }, // 取消按钮(数据权限) cancelDataScope() { @@ -555,20 +864,134 @@ /** 新增按钮操作 */ handleAdd() { this.reset(); this.open = true; this.title = "添加家庭收支台账"; this.dialog1Visible = true; this.dialog2Visible = false; this.title = "添加旅游内容"; }, /** 新增按钮操作 */ handleAdd1(row) { const id = row.id this.row = row; this.reset(); this.centerDialogVisible = true; this.title1 = "添加每日行程内容"; }, /** 提交按钮(数据权限) */ submitDataScope1: async function() { const id = this.row.id this.formDat2.detailList = []; console.log("调试"); // console.log(this.formDat2.detailList); // await this.getList().then(detailList => { // this.formDat2.detailList = detailList; // console.log(this.formDat2.detailList); // }); // async function getData() { // listTravelPrice(this.queryParams).then(async response => { // this.travelpriceList = response.data.data; // const filteredData = this.travelpriceList.filter(item => item.id === id); // this.total = response.data.total; // console.log( filteredData[0].detailList); // // this.formDat2.detailList =filteredData[0].detailList // this.formDat2.detailList = filteredData[0].detailList; // // console.log(this.formDat2.detailList ); // // console.log(this.formDat2.detailList); // return this.formDat2 // }).catch(error => { // console.error("请求错误:", error); // }); // } async function getData() { try { const response = await listTravelPrice(this.queryParams); this.travelpriceList = response.data.data; const filteredData = this.travelpriceList.filter(item => item.id === id); console.log(filteredData[0].detailList); this.total = response.data.total; return filteredData[0].detailList; } catch (error) { console.error("请求错误:", error); } } this.formDat2.detailList = await getData(); // 调用async函数来获取数据并赋值给detailList console.log(" this.formDat2.detailList"); console.log( this.formDat2.detailList); let ul = this.fileList.map(function (elem){ return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") }).join(",") let uls = this.fileListOther.map(function (elem){ return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") }).join(",") this.formDat.url = ul+","+uls // const fid = this.$route.params && this.$route.params.id; // this.formDat.feeId = this.$route.params && this.$route.params.id; this.formDat.feeId = id; this.formDat1.happenTime = this.formDat.happenTime; this.formDat2.detailList.push(this.formDat1); this.formDat2.id = id; const stay = parseFloat(this.formDat1.stay); const traffic = parseFloat(this.formDat1.traffic); const eat = parseFloat(this.formDat1.eat); const shopping = parseFloat(this.formDat1.shopping); const entrance = parseFloat(this.formDat1.entrance); const totalPrice = stay + traffic + eat + shopping + entrance; console.log("总费用"); console.log(totalPrice); this.formDat.totalPrice=totalPrice; console.log(this.formDat2) console.log(this.formDat); this.$refs["elForm"].validate(valid => { if (valid) { addTravelBase(this.formDat).then(response => { this.$modal.msgSuccess("新增成功"); this.centerDialogVisible = false; this.getList(); }); } }); this.$refs["elForm1"].validate(valid => { if (valid) { updateTravelPrice(this.formDat2).then(response => { // this.$modal.msgSuccess("费用新增成功"); this.centerDialogVisible = false; }); } }); }, // 弹窗 handleShow(row){ const id = row.id; this.openDataScope = true // this.getList() //alert(123) this.detailList = row.detailList // alert(row.index) this.title = "展示详情"; this.title = "每日费用详情"; this.getList1() }, /** 查看详细信息 */ @@ -578,18 +1001,29 @@ // alert(row.fee_id) this.$router.push("/self/travel/Info/" + id); }, handleCheck1(row){ const id = row.id; this.$router.push("/self/travel/travelInfo/" + id); }, /** 修改按钮操作 */ handleUpdate(row) { const id = row.id; // let jd = true // this.$router.push({ // path:"/self/travel/edit/" + id, // query:{ // detail:jd // } // }); const id = row.id; // console.log(id); this.$router.push("/self/travel/edit/" + id); }, /** 修改按钮操作 */ handleUpdate1(row) { const id = row.id; let jd = true this.$router.push({ path:"/self/travel/travelInfo/" + id, query:{ detail:jd } }); }, @@ -600,21 +1034,22 @@ /** 提交按钮(数据权限) */ submitDataScope: function() { let ul = this.fileList.map(function (elem){ return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") }).join(",") let uls = this.fileListOther.map(function (elem){ return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") }).join(",") this.formDat.url = ul+","+uls this.$refs["elForm"].validate(valid => { this.formDat4.detailList = []; this.$refs["elForm2"].validate(valid => { if (valid) { addEconomy(this.formDat).then(response => { console.log(this.formDat4); addTravelPrice(this.formDat4).then(response => { this.$modal.msgSuccess("新增成功"); this.open = false; this.dialog1Visible = false; this.getList(); }); // 清空formDat对象的数据 Object.keys(this.formDat4).forEach(key => { this.formDat4[key] = ''; }); this.handleRemove(this.fileList[0]); this.handleRemoveFile(this.fileListOther[0]); } }); }, @@ -702,7 +1137,13 @@ } .el-table__row.statistics-warning-row1 { background: #FFEFF2; } .el-table__row.statistics-warning-row2 { background: #EBFFF2; } .el-table__row.statistics-warning-row3 { background: #f8f8dc; } .button { background: center no-repeat url('../../assets/images/弹窗 1.png') ; @@ -713,4 +1154,8 @@ /* margin-left: 66vw; */ } .custom-header-row { background-color: #EBAFB4 /* 更改为你想要的背景颜色 */ /* color: #FFF; 更改为你想要的文字颜色 */ } </style> ruoyi-ui/src/views/travel/travelInfo.vue
@@ -4,8 +4,8 @@ <h4 class="dt h4">旅游经历详细信息 </h4> </div> <el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="100px"> <div > <el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="100px" style="width: 60%;"> <el-form-item label="发生时间" prop="happenTime"> <el-input v-model="formData.happenTime" placeholder="请输入发生时间" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> @@ -25,19 +25,29 @@ <el-input v-model="formData.travelPeriod" placeholder="请输入标题" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> </el-form-item> <el-form-item label="持证旅游" prop="certificate"> <el-input v-model="formData.certificate" placeholder="请输入标题" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> <el-select v-model="formData.certificate" placeholder="请选择证件" clearable :style="{width: '100%'}" :disabled="dsb"> <el-option label="居民身份证" value="居民身份证"></el-option> <el-option label="临时身份证" value="临时身份证"></el-option> <el-option label="户口本" value="户口本"></el-option> <el-option label="护照" value="护照"></el-option> <el-option label="学生证" value="学生证"></el-option> </el-select> </el-form-item> <el-form-item label="费用" prop="totalPrice"> <el-input v-model="formData.totalPrice" placeholder="请输入标题" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> <el-input v-model="formData.totalPrice" placeholder="请输入标题" clearable :style="{width: '100%'}" :disabled="true"></el-input> </el-form-item> <el-form-item label="是否公费旅游" prop="self"> <el-select v-model="formData.self=== 1 ? '自费':'公费'" placeholder="请选择保洁/收纳" clearable :style="{width: '100%'}" :disabled="dsb" ></el-select> <el-select v-model="formData.self" placeholder="请选择是否" clearable :style="{width: '100%'}" :disabled="dsb"> <el-option label="是" value="1"></el-option> <el-option label="否" value="0"></el-option> </el-select> </el-form-item> <el-form-item label="备注" prop="remark"> <el-input v-model="formData.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> </el-form-item> <h4 class="form-header">电子文件 </h4> <el-upload @@ -142,7 +152,7 @@ <el-button v-if="isShow" type="primary" @click="submitForm" :disabled="dsb">修改</el-button> </el-form-item> </el-form> </div> <el-dialog :visible.sync="dialogVisible"> <img w-full :src="dialogImageUrl" style="width: 700px; height: 700px" alt="Preview Image" /> </el-dialog> @@ -261,8 +271,6 @@ } this.loading = false; }); this.getCateInfor() } }, mounted() {}, @@ -283,6 +291,7 @@ if (valid) { if (this.formData.id != undefined) { updateTravelBase(this.formData).then(response => { console.log(this.formData); this.$modal.msgSuccess("修改成功"); // this.open = false; this.btn=false ruoyi-ui/src/views/wish/index.vue
@@ -290,8 +290,9 @@ <!-- <el-input v-model="formDat.happenTime" placeholder="请输入获得时间" clearable :style="{width: '100%'}" ></el-input>--> <!-- </el-form-item>--> <el-form-item label="时间" prop="happenTime"> <el-input v-model="formDat.happenTime" type='date' placeholder='选择日期' clearable :style="{width: '100%'}" ></el-input> </el-form-item> <el-date-picker v-model="formDat.happenTime" type="date" placeholder="请选择日期" :editable="false" :style="{width: '100%'}" value-format="yyyy-MM-dd" ></el-date-picker></el-form-item> <el-form-item label="理想标题/百年心愿" prop="title"> <el-input v-model="formDat.title" placeholder="请输入理想标题/百年心愿" clearable :style="{width: '100%'}" > </el-input> ruoyi-ui/src/views/wish/wishInfo.vue
@@ -17,8 +17,9 @@ <el-row :span="12"> <el-cow > <el-form-item label="时间" prop="happenTime" label-width="70px" style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;"> <el-input v-model="formData.happenTime" placeholder="请输入时间" type="date" clearable :style="{width: '100%'}" :disabled="dsb"> </el-input> <el-date-picker v-model="formData.happenTime" type="date" placeholder="请选择日期" :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd" ></el-date-picker> </el-form-item> <!-- <el-form-item label="获得时间" prop="happenTime" label-width="78px" style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">-->