后管:护理记录的导出功能

master
382696293@qq.com 2 years ago
parent 7c6a792525
commit 51ae8c35c3

@ -81,6 +81,45 @@ public class WxNursingLog extends BaseEntity {
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
private Long status;
@Excel(name = "陪伴模式")
private Integer accompanyMode;
@Excel(name = "挡位1")
private Integer gearPositionOne;
@Excel(name = "挡位2")
private Integer gearPositionTwo;
@Excel(name = "挡位3")
private Integer gearPositionThree;
@Excel(name = "挡位4")
private Integer gearPositionFour;
@Excel(name = "能量总值")
private Integer energyValue;
@Excel(name = "水分数据1")
private Integer waterDataOne;
@Excel(name = "水分数据2")
private Integer waterDataTwo;
@Excel(name = "水分数据3")
private Integer waterDataThree;
@Excel(name = "总护理天数")
private Integer nursingDays;
@Excel(name = "本周护理天数")
private Integer nursingDaysWeek;
@Excel(name = "本月护理天数")
private Integer nursingDaysMonth;
@Excel(name = "本年护理天数")
private Integer nursingDaysYear;
/**
* 使
*/
@ -248,4 +287,108 @@ public class WxNursingLog extends BaseEntity {
public void setInstrumentBindingTime(Date instrumentBindingTime) {
this.instrumentBindingTime = instrumentBindingTime;
}
public Integer getAccompanyMode() {
return accompanyMode;
}
public void setAccompanyMode(Integer accompanyMode) {
this.accompanyMode = accompanyMode;
}
public Integer getGearPositionOne() {
return gearPositionOne;
}
public void setGearPositionOne(Integer gearPositionOne) {
this.gearPositionOne = gearPositionOne;
}
public Integer getGearPositionTwo() {
return gearPositionTwo;
}
public void setGearPositionTwo(Integer gearPositionTwo) {
this.gearPositionTwo = gearPositionTwo;
}
public Integer getGearPositionThree() {
return gearPositionThree;
}
public void setGearPositionThree(Integer gearPositionThree) {
this.gearPositionThree = gearPositionThree;
}
public Integer getGearPositionFour() {
return gearPositionFour;
}
public void setGearPositionFour(Integer gearPositionFour) {
this.gearPositionFour = gearPositionFour;
}
public Integer getEnergyValue() {
return energyValue;
}
public void setEnergyValue(Integer energyValue) {
this.energyValue = energyValue;
}
public Integer getWaterDataOne() {
return waterDataOne;
}
public void setWaterDataOne(Integer waterDataOne) {
this.waterDataOne = waterDataOne;
}
public Integer getWaterDataTwo() {
return waterDataTwo;
}
public void setWaterDataTwo(Integer waterDataTwo) {
this.waterDataTwo = waterDataTwo;
}
public Integer getWaterDataThree() {
return waterDataThree;
}
public void setWaterDataThree(Integer waterDataThree) {
this.waterDataThree = waterDataThree;
}
public Integer getNursingDays() {
return nursingDays;
}
public void setNursingDays(Integer nursingDays) {
this.nursingDays = nursingDays;
}
public Integer getNursingDaysWeek() {
return nursingDaysWeek;
}
public void setNursingDaysWeek(Integer nursingDaysWeek) {
this.nursingDaysWeek = nursingDaysWeek;
}
public Integer getNursingDaysMonth() {
return nursingDaysMonth;
}
public void setNursingDaysMonth(Integer nursingDaysMonth) {
this.nursingDaysMonth = nursingDaysMonth;
}
public Integer getNursingDaysYear() {
return nursingDaysYear;
}
public void setNursingDaysYear(Integer nursingDaysYear) {
this.nursingDaysYear = nursingDaysYear;
}
}

@ -0,0 +1,320 @@
package com.flossom.common.core.domain.export;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.flossom.common.core.annotation.Excel;
import com.flossom.common.core.web.domain.BaseEntity;
import java.time.LocalTime;
import java.util.Date;
/**
*
*
* @author flossom
* @date 2024-01-29
*/
public class WxNursingLogExport {
@Excel(name = "序号")
private Long id;
@Excel(name = "会员昵称")
private String nickname;
@Excel(name = "用户编号")
private Long userId;
@Excel(name = "手机号")
private String mobile;
@Excel(name = "仪器名称")
private String instrumentName;
@Excel(name = "模式")
private String modeName;
/**
* 线1线2线
*/
@Excel(name = "在线状态", readConverterExp = "1=在线,2=离线", type = Excel.Type.ALL, combo = {"1", "2"})
private Long online;
@Excel(name = "陪伴模式")
private Integer accompanyMode;
@Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@Excel(name = "护理时长", dateFormat = "HH:mm:ss")
private LocalTime nursingTime;
@Excel(name = "挡位1")
private Integer gearPositionOne;
@Excel(name = "挡位2")
private Integer gearPositionTwo;
@Excel(name = "挡位3")
private Integer gearPositionThree;
@Excel(name = "挡位4")
private Integer gearPositionFour;
@Excel(name = "能量总值")
private Integer energyValue;
@Excel(name = "水分数据1")
private Integer waterDataOne;
@Excel(name = "水分数据2")
private Integer waterDataTwo;
@Excel(name = "水分数据3")
private Integer waterDataThree;
@Excel(name = "总护理天数")
private Integer nursingDays;
@Excel(name = "本周护理天数")
private Integer nursingDaysWeek;
@Excel(name = "本月护理天数")
private Integer nursingDaysMonth;
@Excel(name = "本年护理天数")
private Integer nursingDaysYear;
@Excel(name = "最新护理时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
@Excel(name = "小程序标签")
private String miniProgramTagListStr;
@Excel(name = "外部标签")
private String wecomTagListStr;
@Excel(name = "用户注册时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date userMemberCreateTime;
@Excel(name = "仪器绑定时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date instrumentBindingTime;
public WxNursingLogExport() {
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public Long getUserId() {
return userId;
}
public void setUserId(Long userId) {
this.userId = userId;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public String getInstrumentName() {
return instrumentName;
}
public void setInstrumentName(String instrumentName) {
this.instrumentName = instrumentName;
}
public String getModeName() {
return modeName;
}
public void setModeName(String modeName) {
this.modeName = modeName;
}
public Long getOnline() {
return online;
}
public void setOnline(Long online) {
this.online = online;
}
public Integer getAccompanyMode() {
return accompanyMode;
}
public void setAccompanyMode(Integer accompanyMode) {
this.accompanyMode = accompanyMode;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public LocalTime getNursingTime() {
return nursingTime;
}
public void setNursingTime(LocalTime nursingTime) {
this.nursingTime = nursingTime;
}
public Integer getGearPositionOne() {
return gearPositionOne;
}
public void setGearPositionOne(Integer gearPositionOne) {
this.gearPositionOne = gearPositionOne;
}
public Integer getGearPositionTwo() {
return gearPositionTwo;
}
public void setGearPositionTwo(Integer gearPositionTwo) {
this.gearPositionTwo = gearPositionTwo;
}
public Integer getGearPositionThree() {
return gearPositionThree;
}
public void setGearPositionThree(Integer gearPositionThree) {
this.gearPositionThree = gearPositionThree;
}
public Integer getGearPositionFour() {
return gearPositionFour;
}
public void setGearPositionFour(Integer gearPositionFour) {
this.gearPositionFour = gearPositionFour;
}
public Integer getEnergyValue() {
return energyValue;
}
public void setEnergyValue(Integer energyValue) {
this.energyValue = energyValue;
}
public Integer getWaterDataOne() {
return waterDataOne;
}
public void setWaterDataOne(Integer waterDataOne) {
this.waterDataOne = waterDataOne;
}
public Integer getWaterDataTwo() {
return waterDataTwo;
}
public void setWaterDataTwo(Integer waterDataTwo) {
this.waterDataTwo = waterDataTwo;
}
public Integer getWaterDataThree() {
return waterDataThree;
}
public void setWaterDataThree(Integer waterDataThree) {
this.waterDataThree = waterDataThree;
}
public Integer getNursingDays() {
return nursingDays;
}
public void setNursingDays(Integer nursingDays) {
this.nursingDays = nursingDays;
}
public Integer getNursingDaysWeek() {
return nursingDaysWeek;
}
public void setNursingDaysWeek(Integer nursingDaysWeek) {
this.nursingDaysWeek = nursingDaysWeek;
}
public Integer getNursingDaysMonth() {
return nursingDaysMonth;
}
public void setNursingDaysMonth(Integer nursingDaysMonth) {
this.nursingDaysMonth = nursingDaysMonth;
}
public Integer getNursingDaysYear() {
return nursingDaysYear;
}
public void setNursingDaysYear(Integer nursingDaysYear) {
this.nursingDaysYear = nursingDaysYear;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public String getMiniProgramTagListStr() {
return miniProgramTagListStr;
}
public void setMiniProgramTagListStr(String miniProgramTagListStr) {
this.miniProgramTagListStr = miniProgramTagListStr;
}
public String getWecomTagListStr() {
return wecomTagListStr;
}
public void setWecomTagListStr(String wecomTagListStr) {
this.wecomTagListStr = wecomTagListStr;
}
public Date getUserMemberCreateTime() {
return userMemberCreateTime;
}
public void setUserMemberCreateTime(Date userMemberCreateTime) {
this.userMemberCreateTime = userMemberCreateTime;
}
public Date getInstrumentBindingTime() {
return instrumentBindingTime;
}
public void setInstrumentBindingTime(Date instrumentBindingTime) {
this.instrumentBindingTime = instrumentBindingTime;
}
}

@ -0,0 +1,31 @@
package com.flossom.common.core.domain.req;
import java.util.ArrayList;
import java.util.List;
public class WxNursingLogExportVm extends UserNursingLogReq {
/**
*
*/
private List<String> exportFields = new ArrayList<>();
private List<Integer> idList = new ArrayList<>();
public List<String> getExportFields() {
return exportFields;
}
public void setExportFields(List<String> exportFields) {
this.exportFields = exportFields;
}
public List<Integer> getIdList() {
return idList;
}
public void setIdList(List<Integer> idList) {
this.idList = idList;
}
}

@ -2,6 +2,7 @@ package com.flossom.common.core.mapper;
import com.flossom.common.core.domain.entity.WxNursingLog;
import com.flossom.common.core.domain.req.UserNursingLogVm;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -61,4 +62,6 @@ public interface WxNursingLogMapper {
* @return
*/
public int deleteWxNursingLogByIds(Long[] ids);
List<WxNursingLog> selectWxNursingLogByIdList(@Param("idList") List<Integer> idList);
}

@ -88,7 +88,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectWxNursingLogVo"/>
where id = #{id}
</select>
<select id="selectWxNursingLogByIdList" resultMap="WxNursingLogResult">
<include refid="selectWxNursingLogVo"/>
where id in
<foreach item="id" collection="idList" open="(" separator="," close=")">
#{id}
</foreach>
</select>
<insert id="insertWxNursingLog" parameterType="WxNursingLog" useGeneratedKeys="true" keyProperty="id">
insert into wx_nursing_log
<trim prefix="(" suffix=")" suffixOverrides=",">

@ -1,15 +1,24 @@
package com.flossom.system.controller;
import java.util.ArrayList;
import java.util.List;
import java.io.IOException;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletResponse;
import com.alibaba.nacos.shaded.com.google.common.base.Function;
import com.flossom.common.core.domain.R;
import com.flossom.common.core.domain.entity.WxNursingLog;
import com.flossom.common.core.domain.entity.WxUserInstrument;
import com.flossom.common.core.domain.entity.WxUserMember;
import com.flossom.common.core.domain.entity.WxUserTag;
import com.flossom.common.core.domain.export.WxNursingLogExport;
import com.flossom.common.core.domain.export.WxUserMemberExport;
import com.flossom.common.core.domain.req.UserNursingLogReq;
import com.flossom.common.core.domain.req.WxNursingLogExportVm;
import com.flossom.common.core.domain.req.WxUserMemberExportVm;
import com.flossom.common.core.domain.req.WxUserMemberVm;
import com.flossom.common.core.domain.ret.WxUserMemberRet;
import com.flossom.common.core.exception.ServiceException;
import com.flossom.common.core.utils.poi.ExcelUtil;
import com.flossom.common.core.web.controller.BaseController;
@ -20,6 +29,7 @@ import com.flossom.common.log.enums.BusinessType;
import com.flossom.common.security.annotation.RequiresPermissions;
import com.flossom.system.service.IWxNursingLogService;
import com.flossom.system.service.IWxUserMemberService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -49,18 +59,6 @@ public class WxNursingLogController extends BaseController {
return getDataTable(list);
}
/**
*
*/
@RequiresPermissions("system:nursingLog:export")
@Log(title = "用户护理日志", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, UserNursingLogReq userNursingLogReq) {
List<WxNursingLog> list = wxNursingLogService.selectWxNursingLogList(userNursingLogReq, false);
ExcelUtil<WxNursingLog> util = new ExcelUtil<WxNursingLog>(WxNursingLog.class);
util.exportExcel(response, list, "用户护理日志数据");
}
/**
*
*/
@ -70,26 +68,6 @@ public class WxNursingLogController extends BaseController {
return success(wxNursingLogService.selectWxNursingLogById(id));
}
/**
*
*/
@RequiresPermissions("system:nursingLog:add")
@Log(title = "用户护理日志", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody WxNursingLog wxNursingLog) {
return toAjax(wxNursingLogService.insertWxNursingLog(wxNursingLog));
}
/**
*
*/
@RequiresPermissions("system:nursingLog:edit")
@Log(title = "用户护理日志", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody WxNursingLog wxNursingLog) {
return toAjax(wxNursingLogService.updateWxNursingLog(wxNursingLog));
}
/**
*
*/
@ -135,4 +113,57 @@ public class WxNursingLogController extends BaseController {
return R.ok();
}
/**
*
*/
@RequiresPermissions("system:nursingLog:export")
@PostMapping("/batchExport")
public void batchExport(HttpServletResponse response, WxNursingLogExportVm wxNursingLogExportVm) {
List<Integer> idList = wxNursingLogExportVm.getIdList();
if (idList == null || idList.size() == 0) {
throw new ServiceException("请选择导出数据");
}
List<WxNursingLog> list = wxNursingLogService.selectWxNursingLogByIdList(wxNursingLogExportVm.getIdList());
export(response, list, wxNursingLogExportVm.getExportFields());
}
/**
*
*/
@RequiresPermissions("system:nursingLog:export")
@PostMapping("/allExport")
public void allExport(HttpServletResponse response, WxNursingLogExportVm wxNursingLogExportVm) {
List<WxNursingLog> list = wxNursingLogService.selectWxNursingLogList(wxNursingLogExportVm, true);
export(response, list, wxNursingLogExportVm.getExportFields());
}
private static void export(HttpServletResponse response, List<WxNursingLog> list, List<String> exportFields) {
List<WxNursingLogExport> exportList = new ArrayList<>();
WxNursingLogExport export;
for (WxNursingLog wxNursingLog : list) {
export = new WxNursingLogExport();
BeanUtils.copyProperties(wxNursingLog, export);
exportList.add(export);
}
// 添加默认导出字段
exportFields.add("instrumentName");
exportFields.add("modeName");
exportFields.add("online");
exportFields.add("accompanyMode");
exportFields.add("createTime");
exportFields.add("nursingTime");
exportFields.add("gearPositionOne");
exportFields.add("gearPositionTwo");
exportFields.add("gearPositionThree");
exportFields.add("gearPositionFour");
exportFields.add("energyValue");
exportFields.add("waterDataOne");
exportFields.add("waterDataTwo");
exportFields.add("waterDataThree");
ExcelUtil<WxNursingLogExport> util = new ExcelUtil(WxNursingLogExport.class);
util.exportExcel(response, exportList, "护理记录数据", exportFields);
}
}

@ -61,4 +61,7 @@ public interface IWxNursingLogService {
* @return
*/
public int deleteWxNursingLogById(Long id);
List<WxNursingLog> selectWxNursingLogByIdList(List<Integer> idList);
}

@ -179,4 +179,46 @@ public class WxNursingLogServiceImpl implements IWxNursingLogService {
public int deleteWxNursingLogById(Long id) {
return wxNursingLogMapper.deleteWxNursingLogById(id);
}
@Override
public List<WxNursingLog> selectWxNursingLogByIdList(List<Integer> idList) {
List<WxNursingLog> wxNursingLogList = wxNursingLogMapper.selectWxNursingLogByIdList(idList);
if (wxNursingLogList != null && wxNursingLogList.size() > 0) {
wxNursingLogList.forEach(wxNursingLog -> {
WxUserMember wxUserMember = wxUserMemberMapper.selectWxUserMemberById(wxNursingLog.getUserId());
if (wxUserMember != null) {
// 用户信息
wxNursingLog.setHeadimg(wxUserMember.getHeadimg());
wxNursingLog.setMobile(wxUserMember.getMobile());
wxNursingLog.setNickname(wxUserMember.getNickname());
wxNursingLog.setUserMemberCreateTime(wxUserMember.getCreateTime());
// 查询标签
WxUserTag wxUserTag = new WxUserTag();
wxUserTag.setUserId(wxUserMember.getId());
wxUserTag.setType(TagTypeStatusEnum.MINI_PROGRAM.getCode());
List<WxUserTag> miniProgramTagList = wxUserTagMapper.selectWxUserTagList(wxUserTag);
if (miniProgramTagList != null && miniProgramTagList.size() > 0) {
wxNursingLog.setMiniProgramTagListStr(miniProgramTagList.stream().map(WxUserTag::getTagName).collect(Collectors.joining(",")));
}
wxUserTag.setType(TagTypeStatusEnum.ENTERPRISE_WECHAT.getCode());
List<WxUserTag> wecomTagList = wxUserTagMapper.selectWxUserTagList(wxUserTag);
if (wecomTagList != null && wecomTagList.size() > 0) {
wxNursingLog.setWecomTagListStr(wecomTagList.stream().map(WxUserTag::getTagName).collect(Collectors.joining(",")));
}
// 仪器绑定时间
WxUserInstrument query = new WxUserInstrument();
query.setUserId(wxUserMember.getId());
query.setInstrumentId(wxNursingLog.getInstrumentId());
query.setBindingStatus(BindingStatusEnums.BINDED.getCode());
List<WxUserInstrument> wxUserInstrumentList = wxUserInstrumentMapper.selectListByUserIdAndInstrumentId(query);
if (wxUserInstrumentList != null && wxUserInstrumentList.size() == 1) {
WxUserInstrument wxUserInstrument = wxUserInstrumentList.get(0);
wxNursingLog.setInstrumentBindingTime(wxUserInstrument.getUpdateTime());
}
}
});
}
return wxNursingLogList;
}
}

@ -124,20 +124,21 @@
<span v-show="scope.row.online == 2">线</span>
</template>
</el-table-column>
<el-table-column label="陪伴模式" align="center" prop="xxx"/>
<el-table-column label="陪伴模式" align="center" prop="accompanyMode"/>
<el-table-column label="创建时间" align="center" min-width="100" prop="createTime"/>
<el-table-column label="护理时长" align="center" prop="nursingTime" width="100"/>
<el-table-column label="挡位1" align="center" prop="xxx"/>
<el-table-column label="挡位2" align="center" prop="xxx"/>
<el-table-column label="挡位3" align="center" prop="xxx"/>
<el-table-column label="挡位4" align="center" prop="xxx"/>
<el-table-column label="能量总值" align="center" prop="xxx"/>
<el-table-column label="水分数据1" align="center" prop="xxx"/>
<el-table-column label="水分数据2" align="center" prop="xxx"/>
<el-table-column label="水分数据3" align="center" prop="xxx"/>
<el-table-column label="总护理天数" min-width="100" align="center" prop="xxx"/>
<el-table-column label="本周护理天数" min-width="100" align="center" prop="xxx"/>
<el-table-column label="本月护理天数" min-width="100" align="center" prop="xxx"/>
<el-table-column label="挡位1" align="center" prop="gearPositionOne"/>
<el-table-column label="挡位2" align="center" prop="gearPositionTwo"/>
<el-table-column label="挡位3" align="center" prop="gearPositionThree"/>
<el-table-column label="挡位4" align="center" prop="gearPositionFour"/>
<el-table-column label="能量总值" align="center" prop="energyValue"/>
<el-table-column label="水分数据1" align="center" prop="waterDataOne"/>
<el-table-column label="水分数据2" align="center" prop="waterDataTwo"/>
<el-table-column label="水分数据3" align="center" prop="waterDataThree"/>
<el-table-column label="总护理天数" min-width="100" align="center" prop="nursingDays"/>
<el-table-column label="本周护理天数" min-width="100" align="center" prop="nursingDaysWeek"/>
<el-table-column label="本月护理天数" min-width="100" align="center" prop="nursingDaysMonth"/>
<el-table-column label="本年护理天数" min-width="100" align="center" prop="nursingDaysYear"/>
<el-table-column label="最新护理时间" min-width="100" align="center" prop="updateTime"/>
<el-table-column label="小程序标签" min-width="100" align="center" prop="miniProgramTagListStr"/>
<el-table-column label="外部标签" align="center" prop="wecomTagListStr"/>
@ -172,6 +173,64 @@
<el-button type="primary" @click="submitBatchOperate"> </el-button>
</div>
</el-dialog>
<!-- 导出字段选择弹窗 -->
<el-dialog title="自定义导出字段" :visible.sync="batchOperate.exportFieldsVisible" width="50%"
:before-close="cancelExportFieldsDialog">
<el-form ref="form" label-width="150px">
<el-form-item label="全部字段" prop="allFields">
<el-switch v-model="allFields" @click.native="isExportAllFields()"/>
</el-form-item>
</el-form>
<el-form :inline="true" ref="form" :model="exportFieldList" label-width="150px">
<el-form-item label="会员昵称" prop="nickname">
<el-switch v-model="exportFieldList.nickname" active-value="nickname" :inactive-value="null"/>
</el-form-item>
<el-form-item label="序号" prop="id">
<el-switch v-model="exportFieldList.id" active-value="id" :inactive-value="null"/>
</el-form-item>
<el-form-item label="用户编号 " prop="userId">
<el-switch v-model="exportFieldList.userId" active-value="userId" :inactive-value="null"/>
</el-form-item>
<el-form-item label="手机号 " prop="mobile">
<el-switch v-model="exportFieldList.mobile" active-value="mobile" :inactive-value="null"/>
</el-form-item>
<el-form-item label="总护理天数 " prop="nursingDays">
<el-switch v-model="exportFieldList.nursingDays" active-value="nursingDays" :inactive-value="null"/>
</el-form-item>
<el-form-item label="本月护理天数 " prop="nursingDaysMonth">
<el-switch v-model="exportFieldList.nursingDaysMonth" active-value="nursingDaysMonth" :inactive-value="null"/>
</el-form-item>
<el-form-item label="本周护理天数 " prop="nursingDaysWeek">
<el-switch v-model="exportFieldList.nursingDaysWeek" active-value="nursingDaysWeek" :inactive-value="null"/>
</el-form-item>
<el-form-item label="本年护理天数 " prop="nursingDaysYear">
<el-switch v-model="exportFieldList.nursingDaysYear" active-value="nursingDaysYear" :inactive-value="null"/>
</el-form-item>
<el-form-item label="最新的护理时间 " prop="updateTime">
<el-switch v-model="exportFieldList.updateTime" active-value="updateTime" :inactive-value="null"/>
</el-form-item>
<el-form-item label="外部标签 " prop="wecomTagListStr">
<el-switch v-model="exportFieldList.wecomTagListStr" active-value="wecomTagListStr" :inactive-value="null"/>
</el-form-item>
<el-form-item label="小程序标签 " prop="miniProgramTagListStr">
<el-switch v-model="exportFieldList.miniProgramTagListStr" active-value="miniProgramTagListStr"
:inactive-value="null"/>
</el-form-item>
<el-form-item label="仪器绑定时间 " prop="instrumentBindingTime">
<el-switch v-model="exportFieldList.instrumentBindingTime" active-value="instrumentBindingTime"
:inactive-value="null"/>
</el-form-item>
<el-form-item label="用户注册时间 " prop="userMemberCreateTime">
<el-switch v-model="exportFieldList.userMemberCreateTime" active-value="userMemberCreateTime"
:inactive-value="null"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="cancelExportFieldsDialog()"> </el-button>
<el-button type="primary" @click="submitBatchOperate"> </el-button>
</div>
</el-dialog>
</div>
</template>
@ -254,12 +313,30 @@ export default {
title: null,
tagTree: [],
userIdList: [],
exportFieldsVisible: false,
},
miniProgramForm: {
tagIdArray: [],
},
exportFieldsForm: {
idList: null,
exportFields: null,
},
allFields: false,
exportFieldList: {
nickname: null,
userId: null,
mobile: null,
nursingDays: null,
nursingDaysMonth: null,
nursingDaysWeek: null,
nursingDaysYear: null,
updateTime: null,
wecomTagListStr: null,
miniProgramTagListStr: null,
instrumentBindingTime: null,
userMemberCreateTime: null,
},
//
form: {},
//
@ -379,8 +456,16 @@ export default {
this.getTagTree();
this.batchOperate.tagOperateVisible = true;
}
/* 批量操作:导出数据 */
if (this.batchOperate.operateValue == 5) {
console.log("批量导出数据");
if (this.ids.length == 0) {
this.$message({
message: '请选择要操作的数据',
type: 'warning',
})
return
}
this.batchOperate.exportFieldsVisible = true
}
} else {
/* 全量操作 */
@ -397,7 +482,7 @@ export default {
this.batchOperate.tagOperateVisible = true;
}
if (this.batchOperate.operateValue == 6) {
console.log("全量导出数据");
this.batchOperate.exportFieldsVisible = true
}
}
}
@ -454,7 +539,7 @@ export default {
this.$refs['miniProgramForm'].validate((valid) => {
if (valid) {
allAddMiniProgramTag(
this.miniProgramForm.tagIdArray,this.queryParams
this.miniProgramForm.tagIdArray, this.queryParams
).then((Response) => {
this.$modal.msgSuccess('全量添加小程序标签成功')
this.cancelMiniProgramDialog(true)
@ -468,7 +553,7 @@ export default {
this.$refs['miniProgramForm'].validate((valid) => {
if (valid) {
allDelMiniProgramTag(
this.miniProgramForm.tagIdArray,this.queryParams
this.miniProgramForm.tagIdArray, this.queryParams
).then((Response) => {
this.$modal.msgSuccess('全量删除小程序标签成功')
this.cancelMiniProgramDialog(true)
@ -477,8 +562,87 @@ export default {
}
})
}
//
if (this.batchOperate.operateValue == 5) {
let exportFields = Object.values(this.exportFieldList).filter((val) => val != null)
if (exportFields.length == 0) {
this.$modal.msgError('请选择导出字段')
return
}
this.exportFieldsForm.idList = this.ids
this.exportFieldsForm.exportFields = exportFields
this.download('/system/nursingLog/batchExport', {
...this.exportFieldsForm,
},
`护理记录数据_${new Date().getTime()}.xlsx`
)
this.cancelExportFieldsDialog();
}
if (this.batchOperate.operateValue == 6) {
let exportFields = Object.values(this.exportFieldList).filter(
(val) => val != null
)
if (exportFields.length == 0) {
this.$modal.msgError('请选择导出字段')
return
}
this.download('/system/nursingLog/allExport', {
...Object.assign({}, this.queryParams, {
exportFields: exportFields,
}),
}, `护理记录数据_${new Date().getTime()}.xlsx`
)
this.cancelExportFieldsDialog();
}
},
cancelExportFieldsDialog() {
this.allFields = false
this.batchOperate.exportFieldsVisible = false
this.exportFieldList = {
nickname: null,
userId: null,
mobile: null,
nursingDays: null,
nursingDaysMonth: null,
nursingDaysWeek: null,
nursingDaysYear: null,
updateTime: null,
wecomTagListStr: null,
miniProgramTagListStr: null,
instrumentBindingTime: null,
userMemberCreateTime: null,
}
},
isExportAllFields() {
if (this.allFields) {
this.exportFieldList.nickname = 'nickname';
this.exportFieldList.userId = 'userId';
this.exportFieldList.mobile = 'mobile';
this.exportFieldList.nursingDays = 'nursingDays';
this.exportFieldList.nursingDaysMonth = 'nursingDaysMonth';
this.exportFieldList.nursingDaysWeek = 'nursingDaysWeek';
this.exportFieldList.nursingDaysYear = 'nursingDaysYear';
this.exportFieldList.updateTime = 'updateTime';
this.exportFieldList.wecomTagListStr = 'wecomTagListStr';
this.exportFieldList.miniProgramTagListStr = 'miniProgramTagListStr';
this.exportFieldList.instrumentBindingTime = 'instrumentBindingTime';
this.exportFieldList.userMemberCreateTime = 'userMemberCreateTime';
} else {
this.exportFieldList.nickname = null;
this.exportFieldList.userId = null;
this.exportFieldList.mobile = null;
this.exportFieldList.nursingDays = null;
this.exportFieldList.nursingDaysMonth = null;
this.exportFieldList.nursingDaysWeek = null;
this.exportFieldList.nursingDaysYear = null;
this.exportFieldList.updateTime = null;
this.exportFieldList.wecomTagListStr = null;
this.exportFieldList.miniProgramTagListStr = null;
this.exportFieldList.instrumentBindingTime = null;
this.exportFieldList.userMemberCreateTime = null;
}
},
//
queryInstrument() {

Loading…
Cancel
Save