commit
This commit is contained in:
@@ -198,6 +198,12 @@ public class Sys_user extends BaseModel implements Serializable {
|
|||||||
@DataCenterColumn(name = "教职工类别码", key = "JZGLBMC")
|
@DataCenterColumn(name = "教职工类别码", key = "JZGLBMC")
|
||||||
private String personType;
|
private String personType;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("用人方式码")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 30)
|
||||||
|
@DataCenterColumn(name = "用人方式码", key = "YRFSMC")
|
||||||
|
private String employmentType;
|
||||||
|
|
||||||
@Column
|
@Column
|
||||||
@Comment("编制类别码")
|
@Comment("编制类别码")
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 30)
|
@ColDefine(type = ColType.VARCHAR, width = 30)
|
||||||
|
|||||||
+1
-1
@@ -35,7 +35,7 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
@IocBean
|
@IocBean
|
||||||
@At("/platform/condolence/branchUnionApproval")
|
@At("/platform/condolence/branchUnionApproval")
|
||||||
@Api("职工慰问分工会审核")
|
@Api("职工慰问分工会主席审核")
|
||||||
@Ok("json:full")
|
@Ok("json:full")
|
||||||
public class CondolenceBranchUnionApprovalController {
|
public class CondolenceBranchUnionApprovalController {
|
||||||
|
|
||||||
|
|||||||
+152
-3
@@ -3,6 +3,8 @@ package com.budwk.app.zhgh.staffbenefit.condolence.controller;
|
|||||||
import cn.dev33.satoken.annotation.SaCheckLogin;
|
import cn.dev33.satoken.annotation.SaCheckLogin;
|
||||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||||
import cn.dev33.satoken.annotation.SaMode;
|
import cn.dev33.satoken.annotation.SaMode;
|
||||||
|
import cn.hutool.core.date.DateUtil;
|
||||||
|
import cn.hutool.core.lang.Dict;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.budwk.app.base.annotation.SLog;
|
import com.budwk.app.base.annotation.SLog;
|
||||||
import com.budwk.app.base.constant.RoleConstant;
|
import com.budwk.app.base.constant.RoleConstant;
|
||||||
@@ -11,17 +13,23 @@ import com.budwk.app.base.param.PageForm;
|
|||||||
import com.budwk.app.base.result.Result;
|
import com.budwk.app.base.result.Result;
|
||||||
import com.budwk.app.base.sms.SmsService;
|
import com.budwk.app.base.sms.SmsService;
|
||||||
import com.budwk.app.base.utils.PageUtil;
|
import com.budwk.app.base.utils.PageUtil;
|
||||||
|
import com.budwk.app.base.utils.SysOfficeTemplateUtil;
|
||||||
import com.budwk.app.flow.engine.FlowEngine;
|
import com.budwk.app.flow.engine.FlowEngine;
|
||||||
|
import com.budwk.app.flow.entity.ProcessTask;
|
||||||
|
import com.budwk.app.flow.vo.ProcessTaskVO;
|
||||||
import com.budwk.app.sys.views.View_user;
|
import com.budwk.app.sys.views.View_user;
|
||||||
import com.budwk.app.web.commons.auth.utils.AuthUtil;
|
import com.budwk.app.web.commons.auth.utils.AuthUtil;
|
||||||
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
||||||
import com.budwk.app.zhgh.staffbenefit.condolence.model.Condolence;
|
import com.budwk.app.zhgh.staffbenefit.condolence.model.Condolence;
|
||||||
import com.budwk.app.zhgh.staffbenefit.condolence.model.CondolenceType;
|
import com.budwk.app.zhgh.staffbenefit.condolence.model.CondolenceType;
|
||||||
import com.budwk.app.zhgh.staffbenefit.condolence.service.CondolenceService;
|
import com.budwk.app.zhgh.staffbenefit.condolence.service.CondolenceService;
|
||||||
|
import com.deepoove.poi.XWPFTemplate;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.nutz.aop.interceptor.ioc.TransAop;
|
import org.nutz.aop.interceptor.ioc.TransAop;
|
||||||
import org.nutz.dao.Cnd;
|
import org.nutz.dao.Cnd;
|
||||||
|
import org.nutz.dao.Dao;
|
||||||
import org.nutz.dao.Sqls;
|
import org.nutz.dao.Sqls;
|
||||||
import org.nutz.dao.sql.Sql;
|
import org.nutz.dao.sql.Sql;
|
||||||
import org.nutz.dao.util.cri.SqlExpressionGroup;
|
import org.nutz.dao.util.cri.SqlExpressionGroup;
|
||||||
@@ -34,6 +42,20 @@ import org.nutz.mvc.annotation.At;
|
|||||||
import org.nutz.mvc.annotation.Ok;
|
import org.nutz.mvc.annotation.Ok;
|
||||||
import org.nutz.mvc.annotation.Param;
|
import org.nutz.mvc.annotation.Param;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.io.ByteArrayOutputStream;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.net.URLEncoder;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.time.format.DateTimeFormatter;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Comparator;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
import java.util.zip.ZipEntry;
|
||||||
|
import java.util.zip.ZipOutputStream;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ClassName CondolenceApplyController
|
* @ClassName CondolenceApplyController
|
||||||
* @Author JyuHsin
|
* @Author JyuHsin
|
||||||
@@ -45,12 +67,19 @@ import org.nutz.mvc.annotation.Param;
|
|||||||
@At("/platform/condolence/mine")
|
@At("/platform/condolence/mine")
|
||||||
@Api("职工慰问我的")
|
@Api("职工慰问我的")
|
||||||
@Ok("json:full")
|
@Ok("json:full")
|
||||||
|
@Slf4j
|
||||||
public class CondolenceMineController {
|
public class CondolenceMineController {
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private SysOfficeTemplateUtil sysOfficeTemplateUtil;
|
||||||
@Inject
|
@Inject
|
||||||
private CondolenceService condolenceService;
|
private CondolenceService condolenceService;
|
||||||
@Inject
|
@Inject
|
||||||
private FlowEngine flowEngine;
|
private FlowEngine flowEngine;
|
||||||
|
@Inject
|
||||||
|
private SmsService smsService;
|
||||||
|
@Inject
|
||||||
|
private Dao dao;
|
||||||
|
|
||||||
@At("/")
|
@At("/")
|
||||||
@Ok("beetl:/platform/zhgh/staffbenefit/condolence/mine/index.html")
|
@Ok("beetl:/platform/zhgh/staffbenefit/condolence/mine/index.html")
|
||||||
@@ -106,13 +135,13 @@ public class CondolenceMineController {
|
|||||||
cnd.andEX("year(info.createTime)", "=", year);
|
cnd.andEX("year(info.createTime)", "=", year);
|
||||||
cnd.andEX("info.type", "=", type);
|
cnd.andEX("info.type", "=", type);
|
||||||
cnd.and("info.createdBy", "=", SecurityUtil.getUserId());
|
cnd.and("info.createdBy", "=", SecurityUtil.getUserId());
|
||||||
|
cnd.groupBy("info.id");
|
||||||
|
|
||||||
if (StrUtil.isNotBlank(pageForm.getPageOrderName()) && StrUtil.isNotBlank(pageForm.getPageOrderBy())) {
|
if (StrUtil.isNotBlank(pageForm.getPageOrderName()) && StrUtil.isNotBlank(pageForm.getPageOrderBy())) {
|
||||||
cnd.orderBy(pageForm.getPageOrderName(), PageUtil.getOrder(pageForm.getPageOrderBy()));
|
cnd.orderBy(pageForm.getPageOrderName(), PageUtil.getOrder(pageForm.getPageOrderBy()));
|
||||||
} else {
|
} else {
|
||||||
cnd.desc("info.createTime");
|
cnd.desc("info.createTime");
|
||||||
}
|
}
|
||||||
|
|
||||||
sql.setCondition(cnd);
|
sql.setCondition(cnd);
|
||||||
Pagination<NutMap> pagination = condolenceService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql);
|
Pagination<NutMap> pagination = condolenceService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql);
|
||||||
return Result.success(pagination);
|
return Result.success(pagination);
|
||||||
@@ -140,6 +169,126 @@ public class CondolenceMineController {
|
|||||||
//smsService.send("20182040", "这是一条由智慧工会系统发出的测试消息。");
|
//smsService.send("20182040", "这是一条由智慧工会系统发出的测试消息。");
|
||||||
return Result.success(nutMap);
|
return Result.success(nutMap);
|
||||||
}
|
}
|
||||||
@Inject
|
|
||||||
private SmsService smsService;
|
@At
|
||||||
|
@Ok("void")
|
||||||
|
public void doExport(String id, HttpServletResponse response) throws Exception {
|
||||||
|
Condolence condolence = condolenceService.fetch(id);
|
||||||
|
if (condolence == null) {
|
||||||
|
throw new RuntimeException("慰问记录不存在");
|
||||||
|
}
|
||||||
|
|
||||||
|
Sql sql = Sqls.create("""
|
||||||
|
SELECT
|
||||||
|
info.*,
|
||||||
|
type.name as typeName,
|
||||||
|
type.uploadFileDesc,
|
||||||
|
ins.id AS instanceId
|
||||||
|
FROM
|
||||||
|
`condolence` info
|
||||||
|
LEFT JOIN wf_process_instance ins ON ins.businessNo = info.id
|
||||||
|
LEFT JOIN condolence_type type ON type.id = info.type
|
||||||
|
WHERE
|
||||||
|
ins.state = 20 AND info.id = @id
|
||||||
|
""").setParam("id", id);
|
||||||
|
sql.setCallback(Sqls.callback.map());
|
||||||
|
dao.execute(sql);
|
||||||
|
NutMap info = (NutMap) sql.getResult();
|
||||||
|
HashMap<String, Object> docData = new HashMap<>();
|
||||||
|
|
||||||
|
docData.put("applyUserName", condolence.getApplyUserName());
|
||||||
|
docData.put("applyMobile", condolence.getApplyMobile());
|
||||||
|
docData.put("helpUserName", condolence.getHelpUserName());
|
||||||
|
docData.put("helpMobile", condolence.getHelpMobile());
|
||||||
|
docData.put("applyUnionName", condolence.getApplyUnionName());
|
||||||
|
docData.put("type", info.getString("typeName"));
|
||||||
|
docData.put("uploadFileDesc", info.getString("uploadFileDesc"));
|
||||||
|
|
||||||
|
//附件名称导出
|
||||||
|
if (condolence.getFiles() != null && !condolence.getFiles().isEmpty()) {
|
||||||
|
List<String> fileNames = condolence.getFiles().stream()
|
||||||
|
.map(file -> file.getStr("name"))
|
||||||
|
.filter(StrUtil::isNotBlank)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
docData.put("fileNames", String.join("\n", fileNames));
|
||||||
|
} else {
|
||||||
|
docData.put("fileNames", "无");
|
||||||
|
}
|
||||||
|
|
||||||
|
docData.put("info", info);
|
||||||
|
docData.put("way", condolence.getWay());
|
||||||
|
|
||||||
|
|
||||||
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
||||||
|
LocalDateTime createTime = LocalDateTime.parse(condolence.getCreateTime(), formatter);
|
||||||
|
String fileName = "工会会员慰问报销审批单_" +
|
||||||
|
DateUtil.format(createTime, "yyyyMMdd") + ".docx";
|
||||||
|
|
||||||
|
List<ProcessTaskVO> doneTaskVos = new ArrayList<>();
|
||||||
|
List<ProcessTask> doneTaskList = flowEngine.processTaskService().getDoneTaskList(info.getLong("instanceId"), null);
|
||||||
|
for (ProcessTask doneTask : doneTaskList) {
|
||||||
|
ProcessTaskVO taskVO = flowEngine.processTaskService().findById(doneTask.getId());
|
||||||
|
doneTaskVos.add(taskVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
doneTaskVos.stream().filter(task -> "分工会主席审核".equals(task.getDisplayName()))
|
||||||
|
.max(Comparator.comparing(ProcessTaskVO::getCreatedAt))
|
||||||
|
.ifPresent(v -> {
|
||||||
|
Dict taskFormData = v.getTaskFormData();
|
||||||
|
HashMap<String, Object> approval = new HashMap<>();
|
||||||
|
|
||||||
|
approval.put("date", DateUtil.format(v.getFinishTime(), "yyyy年MM月dd日"));
|
||||||
|
approval.put("user", taskFormData.getStr("tf_userName"));
|
||||||
|
if (StrUtil.isNotBlank(taskFormData.getStr("tf_sign"))) {
|
||||||
|
approval.put("sign", sysOfficeTemplateUtil.createPictureRenderData(taskFormData.getStr("tf_sign")));
|
||||||
|
}
|
||||||
|
approval.put("opinion", taskFormData.getStr("tf_opinion"));
|
||||||
|
docData.put("fgh", approval);
|
||||||
|
});
|
||||||
|
|
||||||
|
doneTaskVos.stream().filter(task -> "校工会会计审核".equals(task.getDisplayName()))
|
||||||
|
.max(Comparator.comparing(ProcessTaskVO::getCreatedAt))
|
||||||
|
.ifPresent(v -> {
|
||||||
|
Dict taskFormData = v.getTaskFormData();
|
||||||
|
HashMap<String, Object> approval = new HashMap<>();
|
||||||
|
|
||||||
|
approval.put("date", DateUtil.format(v.getFinishTime(), "yyyy年MM月dd日"));
|
||||||
|
approval.put("user", taskFormData.getStr("tf_userName"));
|
||||||
|
if (StrUtil.isNotBlank(taskFormData.getStr("tf_sign"))) {
|
||||||
|
approval.put("sign", sysOfficeTemplateUtil.createPictureRenderData(taskFormData.getStr("tf_sign")));
|
||||||
|
}
|
||||||
|
approval.put("opinion", taskFormData.getStr("tf_opinion"));
|
||||||
|
docData.put("kj", approval);
|
||||||
|
});
|
||||||
|
|
||||||
|
doneTaskVos.stream().filter(task -> "工会主席审核".equals(task.getDisplayName()))
|
||||||
|
.max(Comparator.comparing(ProcessTaskVO::getCreatedAt))
|
||||||
|
.ifPresent(v -> {
|
||||||
|
Dict taskFormData = v.getTaskFormData();
|
||||||
|
HashMap<String, Object> approval = new HashMap<>();
|
||||||
|
|
||||||
|
approval.put("date", DateUtil.format(v.getFinishTime(), "yyyy年MM月dd日"));
|
||||||
|
approval.put("user", taskFormData.getStr("tf_userName"));
|
||||||
|
if (StrUtil.isNotBlank(taskFormData.getStr("tf_sign"))) {
|
||||||
|
approval.put("sign", sysOfficeTemplateUtil.createPictureRenderData(taskFormData.getStr("tf_sign")));
|
||||||
|
}
|
||||||
|
approval.put("opinion", taskFormData.getStr("tf_opinion"));
|
||||||
|
docData.put("xgh", approval);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
response.setContentType("application/vnd.openxmlformats-officedocument.wordprocessingml.document");
|
||||||
|
response.setHeader("content-disposition", "attachment;filename="
|
||||||
|
+ URLEncoder.encode(fileName, "UTF-8"));
|
||||||
|
|
||||||
|
try {
|
||||||
|
XWPFTemplate.compile(sysOfficeTemplateUtil.getTemplate("condolence"))
|
||||||
|
.render(docData)
|
||||||
|
.write(response.getOutputStream());
|
||||||
|
} catch (IOException e) {
|
||||||
|
log.error("导出慰问审批单失败,ID: {}, 错误信息: {}", id, e.getMessage());
|
||||||
|
throw e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -33,7 +33,7 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
@IocBean
|
@IocBean
|
||||||
@At("/platform/condolence/schoolPrincipalApproval")
|
@At("/platform/condolence/schoolPrincipalApproval")
|
||||||
@Api("职工慰问校工会预审")
|
@Api("职工慰问校工会会计审核")
|
||||||
@Ok("json:full")
|
@Ok("json:full")
|
||||||
public class CondolenceSchoolPrincipalApprovalController {
|
public class CondolenceSchoolPrincipalApprovalController {
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -35,7 +35,7 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
@IocBean
|
@IocBean
|
||||||
@At("/platform/condolence/schoolUnionApproval")
|
@At("/platform/condolence/schoolUnionApproval")
|
||||||
@Api("职工慰问校工会审核")
|
@Api("职工慰问工会主席审核")
|
||||||
@Ok("json:full")
|
@Ok("json:full")
|
||||||
public class CondolenceSchoolUnionApprovalController {
|
public class CondolenceSchoolUnionApprovalController {
|
||||||
|
|
||||||
|
|||||||
@@ -65,6 +65,11 @@ public class Condolence extends BaseModel {
|
|||||||
@ColDefine(type = ColType.VARCHAR, width = 100)
|
@ColDefine(type = ColType.VARCHAR, width = 100)
|
||||||
private String applyUnitName;
|
private String applyUnitName;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("申请人手机号")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 20)
|
||||||
|
private String applyMobile;
|
||||||
|
|
||||||
@Column
|
@Column
|
||||||
@Comment("补助人ID")
|
@Comment("补助人ID")
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 32)
|
@ColDefine(type = ColType.VARCHAR, width = 32)
|
||||||
@@ -100,6 +105,11 @@ public class Condolence extends BaseModel {
|
|||||||
@ColDefine(type = ColType.VARCHAR, width = 100)
|
@ColDefine(type = ColType.VARCHAR, width = 100)
|
||||||
private String helpUnitName;
|
private String helpUnitName;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("补助人手机号")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 20)
|
||||||
|
private String helpMobile;
|
||||||
|
|
||||||
@Column
|
@Column
|
||||||
@Comment("类型")
|
@Comment("类型")
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 20)
|
@ColDefine(type = ColType.VARCHAR, width = 20)
|
||||||
|
|||||||
@@ -99,6 +99,32 @@ public class WelfareListController {
|
|||||||
return Result.success(welfareListService.notWelfareUserPageData(pageForm));
|
return Result.success(welfareListService.notWelfareUserPageData(pageForm));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@At
|
||||||
|
@Aop(TransAop.READ_COMMITTED)
|
||||||
|
@ApiOperation("批量删除福利会员")
|
||||||
|
@SaCheckPermission("welfare.list.mange")
|
||||||
|
@SLog(tag = "福利名单管理", msg = "批量删除福利会员")
|
||||||
|
public Result batchDelete(@Param("ids") String[] ids, @Param("projectId") String projectId) {
|
||||||
|
if (ids == null || ids.length == 0) {
|
||||||
|
return Result.error("请选择要删除的数据");
|
||||||
|
}
|
||||||
|
|
||||||
|
List<WelfareList> welfareLists = welfareListService.query(Cnd.where("id", "in", ids));
|
||||||
|
List<String> userIds = welfareLists.stream()
|
||||||
|
.map(WelfareList::getUserId)
|
||||||
|
.filter(StrUtil::isNotBlank)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
|
||||||
|
welfareListService.delete(ids);
|
||||||
|
|
||||||
|
if (StrUtil.isNotBlank(projectId) && !userIds.isEmpty()) {
|
||||||
|
welfareListService.dao().clear(WelfareUserSelection.class,
|
||||||
|
Cnd.where("welfareId", "=", projectId).and("selectUserId", "in", userIds));
|
||||||
|
}
|
||||||
|
|
||||||
|
return Result.success("成功删除" + ids.length + "条数据");
|
||||||
|
}
|
||||||
|
|
||||||
@At
|
@At
|
||||||
@SaCheckPermission("welfare.list.mange")
|
@SaCheckPermission("welfare.list.mange")
|
||||||
@ApiOperation("添加用户到福利名单")
|
@ApiOperation("添加用户到福利名单")
|
||||||
|
|||||||
@@ -145,11 +145,18 @@ module.exports = {
|
|||||||
return true
|
return true
|
||||||
},
|
},
|
||||||
afterRead(files) {
|
afterRead(files) {
|
||||||
|
const filesArray = Array.isArray(files) ? files : [files]
|
||||||
|
|
||||||
|
filesArray.forEach(file => {
|
||||||
|
if (file && file.file) {
|
||||||
this.fileList.map((f) => {
|
this.fileList.map((f) => {
|
||||||
if (f.file && f.file.name === files.file.name) {
|
if (f.file && f.file.name === file.file.name) {
|
||||||
f.status = "loading"
|
f.status = "loading"
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
const uploadPromises = this.fileList
|
const uploadPromises = this.fileList
|
||||||
.filter((f) => f.status === "loading")
|
.filter((f) => f.status === "loading")
|
||||||
.map((f) => {
|
.map((f) => {
|
||||||
|
|||||||
@@ -79,6 +79,7 @@ layout("/layouts/platform.html"){
|
|||||||
<el-table-column prop="arrivalAtSchoolDate" label="来校时间" sortable width="120"></el-table-column>
|
<el-table-column prop="arrivalAtSchoolDate" label="来校时间" sortable width="120"></el-table-column>
|
||||||
<el-table-column prop="preparedBy" label="编制类别" sortable width="120"></el-table-column>
|
<el-table-column prop="preparedBy" label="编制类别" sortable width="120"></el-table-column>
|
||||||
<el-table-column prop="personType" label="教职工类别" sortable width="120"></el-table-column>
|
<el-table-column prop="personType" label="教职工类别" sortable width="120"></el-table-column>
|
||||||
|
<el-table-column prop="employmentType" label="用人方式" sortable width="120"></el-table-column>
|
||||||
<el-table-column prop="technicalTitle" label="技术职称" sortable width="120"></el-table-column>
|
<el-table-column prop="technicalTitle" label="技术职称" sortable width="120"></el-table-column>
|
||||||
<el-table-column prop="position" label="干部职务" sortable width="120" show-overflow-tooltip></el-table-column>
|
<el-table-column prop="position" label="干部职务" sortable width="120" show-overflow-tooltip></el-table-column>
|
||||||
<el-table-column prop="education" label="学历" show-overflow-tooltip sortable width="120"></el-table-column>
|
<el-table-column prop="education" label="学历" show-overflow-tooltip sortable width="120"></el-table-column>
|
||||||
|
|||||||
@@ -9,9 +9,16 @@ layout("/layouts/platform.html"){
|
|||||||
class="flow-task-form">
|
class="flow-task-form">
|
||||||
<el-descriptions :column="3" border>
|
<el-descriptions :column="3" border>
|
||||||
<el-descriptions-item label="申请人姓名">{{formData.applyUserName}}</el-descriptions-item>
|
<el-descriptions-item label="申请人姓名">{{formData.applyUserName}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="申请人电话">
|
||||||
|
<el-form-item prop="applyMobile" label="申请人电话">
|
||||||
|
<el-input maxlength="20" v-model="formData.applyMobile" placeholder="系统自动填充,也可手动修改"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="申请人工号">{{formData.applyLoginName}}</el-descriptions-item>
|
<el-descriptions-item label="申请人工号">{{formData.applyLoginName}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="申请人单位">{{formData.applyUnitName}}</el-descriptions-item>
|
<el-descriptions-item label="申请人单位">{{formData.applyUnitName}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="申请人工会">{{formData.applyUnionName}}</el-descriptions-item>
|
<el-descriptions-item label="申请人工会">{{formData.applyUnionName}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item></el-descriptions-item>
|
||||||
|
|
||||||
|
|
||||||
<el-descriptions-item label="慰问对象">
|
<el-descriptions-item label="慰问对象">
|
||||||
<el-form-item prop="helpUserId" label="慰问对象">
|
<el-form-item prop="helpUserId" label="慰问对象">
|
||||||
@@ -34,6 +41,11 @@ layout("/layouts/platform.html"){
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="慰问对象电话">
|
||||||
|
<el-form-item prop="helpMobile" label="慰问对象电话">
|
||||||
|
<el-input maxlength="20" v-model="formData.helpMobile" placeholder="选择慰问对象自动填充,也可手动输入"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-descriptions-item>
|
||||||
<!-- <el-descriptions-item label="经办人">
|
<!-- <el-descriptions-item label="经办人">
|
||||||
<el-form-item prop="handlerUserId" label="经办人">
|
<el-form-item prop="handlerUserId" label="经办人">
|
||||||
<el-select
|
<el-select
|
||||||
@@ -55,20 +67,40 @@ layout("/layouts/platform.html"){
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-descriptions-item>-->
|
</el-descriptions-item>-->
|
||||||
<el-descriptions-item label="证明人">
|
<!-- <el-descriptions-item label="证明人">-->
|
||||||
<el-form-item prop="certifierUserId" label="证明人">
|
<!-- <el-form-item prop="certifierUserId" label="证明人">-->
|
||||||
<el-select
|
<!-- <el-select-->
|
||||||
style="width: 100%"
|
<!-- style="width: 100%"-->
|
||||||
v-model="formData.certifierUserId"
|
<!-- v-model="formData.certifierUserId"-->
|
||||||
|
<!-- filterable-->
|
||||||
|
<!-- clearable-->
|
||||||
|
<!-- remote-->
|
||||||
|
<!-- reserve-keyword-->
|
||||||
|
<!-- placeholder="请输入姓名或工号查询"-->
|
||||||
|
<!-- :remote-method="createRemoteMethod(certifierUserOptions)"-->
|
||||||
|
<!-- @change="certifierUserChange">-->
|
||||||
|
<!-- <el-option-->
|
||||||
|
<!-- v-for="item in certifierUserOptions"-->
|
||||||
|
<!-- :key="item.id"-->
|
||||||
|
<!-- :label="item.userName+'('+item.loginName+')'+'('+item.unitName+')'"-->
|
||||||
|
<!-- :value="item.id">-->
|
||||||
|
<!-- </el-option>-->
|
||||||
|
<!-- </el-select>-->
|
||||||
|
<!-- </el-form-item>-->
|
||||||
|
<!-- </el-descriptions-item>-->
|
||||||
|
<el-descriptions-item label="收款人">
|
||||||
|
<el-form-item prop="payUserId" label="收款人">
|
||||||
|
<el-select style="width: 100%"
|
||||||
|
v-model="formData.payUserId"
|
||||||
filterable
|
filterable
|
||||||
clearable
|
clearable
|
||||||
remote
|
remote
|
||||||
reserve-keyword
|
reserve-keyword
|
||||||
placeholder="请输入姓名或工号查询"
|
placeholder="请输入姓名或工号查询"
|
||||||
:remote-method="createRemoteMethod(certifierUserOptions)"
|
:remote-method="createRemoteMethod(payUserOptions)"
|
||||||
@change="certifierUserChange">
|
@change="payUserChange">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in certifierUserOptions"
|
v-for="item in payUserOptions"
|
||||||
:key="item.id"
|
:key="item.id"
|
||||||
:label="item.userName+'('+item.loginName+')'+'('+item.unitName+')'"
|
:label="item.userName+'('+item.loginName+')'+'('+item.unitName+')'"
|
||||||
:value="item.id">
|
:value="item.id">
|
||||||
@@ -112,28 +144,28 @@ layout("/layouts/platform.html"){
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
|
||||||
<el-descriptions-item label="收款账户">
|
<!-- <el-descriptions-item label="收款账户">-->
|
||||||
<el-form-item prop="bankCardNumber" label="收款账户">
|
<!-- <el-form-item prop="bankCardNumber" label="收款账户">-->
|
||||||
<el-input maxlength="20" v-model="formData.bankCardNumber" placeholder="请填写收款账户"
|
<!-- <el-input maxlength="20" v-model="formData.bankCardNumber" placeholder="请填写收款账户"-->
|
||||||
></el-input>
|
<!-- ></el-input>-->
|
||||||
</el-form-item>
|
<!-- </el-form-item>-->
|
||||||
</el-descriptions-item>
|
<!-- </el-descriptions-item>-->
|
||||||
|
|
||||||
<el-descriptions-item label="户名">
|
<!-- <el-descriptions-item label="户名">-->
|
||||||
<el-form-item prop="bankUserName" label="户名">
|
<!-- <el-form-item prop="bankUserName" label="户名">-->
|
||||||
<el-input maxlength="20" v-model="formData.bankUserName"
|
<!-- <el-input maxlength="20" v-model="formData.bankUserName"-->
|
||||||
placeholder="请填写户名"
|
<!-- placeholder="请填写户名"-->
|
||||||
></el-input>
|
<!-- ></el-input>-->
|
||||||
</el-form-item>
|
<!-- </el-form-item>-->
|
||||||
</el-descriptions-item>
|
<!-- </el-descriptions-item>-->
|
||||||
|
|
||||||
<el-descriptions-item label="开户行" >
|
<!-- <el-descriptions-item label="开户行">-->
|
||||||
<el-form-item prop="bankOfDeposit" label="开户行">
|
<!-- <el-form-item prop="bankOfDeposit" label="开户行">-->
|
||||||
<el-input maxlength="20" v-model="formData.bankOfDeposit"
|
<!-- <el-input maxlength="20" v-model="formData.bankOfDeposit"-->
|
||||||
placeholder="请填写开户行"
|
<!-- placeholder="请填写开户行"-->
|
||||||
></el-input>
|
<!-- ></el-input>-->
|
||||||
</el-form-item>
|
<!-- </el-form-item>-->
|
||||||
</el-descriptions-item>
|
<!-- </el-descriptions-item>-->
|
||||||
|
|
||||||
<template v-if="['2'].includes(formData.typeCode)">
|
<template v-if="['2'].includes(formData.typeCode)">
|
||||||
<el-descriptions-item label="入院时间">
|
<el-descriptions-item label="入院时间">
|
||||||
@@ -225,29 +257,29 @@ layout("/layouts/platform.html"){
|
|||||||
taskId: GetQueryString("taskId"),
|
taskId: GetQueryString("taskId"),
|
||||||
formData: {},
|
formData: {},
|
||||||
formRules: {
|
formRules: {
|
||||||
helpUserId: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
helpUserId: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
payUserId: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
payUserId: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
type: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
type: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
way: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
way: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
money: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
money: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
occurTime: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
occurTime: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
child: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
child: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
hospital: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
hospital: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
hospitalHouseNum: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
hospitalHouseNum: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
hospitalHouseBedNum: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
hospitalHouseBedNum: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
hospitalBy: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
hospitalBy: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
deadImmediateFamily: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
deadImmediateFamily: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
remark: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
remark: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
files: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
files: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
signature: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
signature: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
handlerUserId: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
handlerUserId: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
certifierUserId: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
certifierUserId: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
bankCardNumber: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
bankCardNumber: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
bankUserName: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
bankUserName: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
bankOfDeposit: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
bankOfDeposit: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
thisYearHospitalizationNum: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
thisYearHospitalizationNum: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
leaveHospitalTime: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
leaveHospitalTime: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
hospitalizationTime: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
|
hospitalizationTime: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||||
},
|
},
|
||||||
chooseType: {},
|
chooseType: {},
|
||||||
payUserOptions: [],
|
payUserOptions: [],
|
||||||
@@ -266,7 +298,7 @@ layout("/layouts/platform.html"){
|
|||||||
},
|
},
|
||||||
selectQueryUser(keyword, options) {
|
selectQueryUser(keyword, options) {
|
||||||
options.length = 0
|
options.length = 0
|
||||||
this.$axios.post("/platform/condolence/apply/listUser", { keyword: keyword }).then((res) => {
|
this.$axios.post("/platform/condolence/apply/listUser", {keyword: keyword}).then((res) => {
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
options.push(...res.data)
|
options.push(...res.data)
|
||||||
}
|
}
|
||||||
@@ -275,19 +307,20 @@ layout("/layouts/platform.html"){
|
|||||||
helpUserChange(val) {
|
helpUserChange(val) {
|
||||||
const user = this.helpUserOptions.find(o => o.id === val)
|
const user = this.helpUserOptions.find(o => o.id === val)
|
||||||
if (user) {
|
if (user) {
|
||||||
const { userName, loginName, unitId, unitName, unionId, unionName } = user
|
const {userName, loginName, unitId, unitName, unionId, unionName, mobile} = user
|
||||||
this.$set(this.formData, "helpUserName", userName)
|
this.$set(this.formData, "helpUserName", userName)
|
||||||
this.$set(this.formData, "helpLoginName", loginName)
|
this.$set(this.formData, "helpLoginName", loginName)
|
||||||
this.$set(this.formData, "helpUnitId", unitId)
|
this.$set(this.formData, "helpUnitId", unitId)
|
||||||
this.$set(this.formData, "helpUnitName", unitName)
|
this.$set(this.formData, "helpUnitName", unitName)
|
||||||
this.$set(this.formData, "helpUnionId", unionId)
|
this.$set(this.formData, "helpUnionId", unionId)
|
||||||
this.$set(this.formData, "helpUnionName", unionName)
|
this.$set(this.formData, "helpUnionName", unionName)
|
||||||
|
this.$set(this.formData, "helpMobile", mobile)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
handlerUserChange(val) {
|
handlerUserChange(val) {
|
||||||
const user = this.handlerUserOptions.find(o => o.id === val)
|
const user = this.handlerUserOptions.find(o => o.id === val)
|
||||||
if (user) {
|
if (user) {
|
||||||
const { userName, loginName, unitId, unitName, unionId, unionName } = user
|
const {userName, loginName, unitId, unitName, unionId, unionName} = user
|
||||||
this.$set(this.formData, "handlerUserName", userName)
|
this.$set(this.formData, "handlerUserName", userName)
|
||||||
this.$set(this.formData, "handlerLoginName", loginName)
|
this.$set(this.formData, "handlerLoginName", loginName)
|
||||||
this.$set(this.formData, "handlerUnitId", unitId)
|
this.$set(this.formData, "handlerUnitId", unitId)
|
||||||
@@ -299,7 +332,7 @@ layout("/layouts/platform.html"){
|
|||||||
certifierUserChange(val) {
|
certifierUserChange(val) {
|
||||||
const user = this.certifierUserOptions.find(o => o.id === val)
|
const user = this.certifierUserOptions.find(o => o.id === val)
|
||||||
if (user) {
|
if (user) {
|
||||||
const { userName, loginName, unitId, unitName, unionId, unionName } = user
|
const {userName, loginName, unitId, unitName, unionId, unionName} = user
|
||||||
this.$set(this.formData, "certifierUserName", userName)
|
this.$set(this.formData, "certifierUserName", userName)
|
||||||
this.$set(this.formData, "certifierLoginName", loginName)
|
this.$set(this.formData, "certifierLoginName", loginName)
|
||||||
this.$set(this.formData, "certifierUnitId", unitId)
|
this.$set(this.formData, "certifierUnitId", unitId)
|
||||||
@@ -311,7 +344,7 @@ layout("/layouts/platform.html"){
|
|||||||
payUserChange(val) {
|
payUserChange(val) {
|
||||||
const user = this.payUserOptions.find(o => o.id === val)
|
const user = this.payUserOptions.find(o => o.id === val)
|
||||||
if (user) {
|
if (user) {
|
||||||
const { userName, loginName } = user
|
const {userName, loginName} = user
|
||||||
this.$set(this.formData, "payUserName", userName)
|
this.$set(this.formData, "payUserName", userName)
|
||||||
this.$set(this.formData, "payLoginName", loginName)
|
this.$set(this.formData, "payLoginName", loginName)
|
||||||
}
|
}
|
||||||
@@ -330,7 +363,7 @@ layout("/layouts/platform.html"){
|
|||||||
cancelButtonText: "取消",
|
cancelButtonText: "取消",
|
||||||
type: "warning"
|
type: "warning"
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.$axios.post("/platform/condolence/apply/save", { data: JSON.stringify(this.formData) }).then(res => {
|
this.$axios.post("/platform/condolence/apply/save", {data: JSON.stringify(this.formData)}).then(res => {
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
this.$message.success(res.msg)
|
this.$message.success(res.msg)
|
||||||
commonUtil.pjaxPush("/platform/condolence/mine")
|
commonUtil.pjaxPush("/platform/condolence/mine")
|
||||||
@@ -381,17 +414,18 @@ layout("/layouts/platform.html"){
|
|||||||
},
|
},
|
||||||
init() {
|
init() {
|
||||||
if (this.bizId) {
|
if (this.bizId) {
|
||||||
this.$axios.post("/platform/condolence/mine/info", { id: this.bizId }).then((res) => {
|
this.$axios.post("/platform/condolence/mine/info", {id: this.bizId}).then((res) => {
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
this.formData = res.data
|
this.formData = res.data
|
||||||
this.selectQueryUser(this.formData.helpLoginName, this.helpUserOptions)
|
this.selectQueryUser(this.formData.helpLoginName, this.helpUserOptions)
|
||||||
|
this.selectQueryUser(this.formData.payLoginName, this.payUserOptions)
|
||||||
this.selectQueryUser(this.formData.certifierLoginName, this.certifierUserOptions)
|
this.selectQueryUser(this.formData.certifierLoginName, this.certifierUserOptions)
|
||||||
this.selectQueryUser(this.formData.handlerLoginName, this.handlerUserOptions)
|
this.selectQueryUser(this.formData.handlerLoginName, this.handlerUserOptions)
|
||||||
this.chooseType = this.typeOptions.find(o => o.id === this.formData.type)
|
this.chooseType = this.typeOptions.find(o => o.id === this.formData.type)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
const { username, loginname, id, unit, union, mobile } = this.$store.state.user
|
const {username, loginname, id, unit, union, mobile} = this.$store.state.user
|
||||||
this.formData = {
|
this.formData = {
|
||||||
applyUserName: username,
|
applyUserName: username,
|
||||||
applyLoginName: loginname,
|
applyLoginName: loginname,
|
||||||
@@ -399,7 +433,8 @@ layout("/layouts/platform.html"){
|
|||||||
applyUnitId: unit?.id,
|
applyUnitId: unit?.id,
|
||||||
applyUnitName: unit?.name,
|
applyUnitName: unit?.name,
|
||||||
applyUnionId: union?.id,
|
applyUnionId: union?.id,
|
||||||
applyUnionName: union?.name
|
applyUnionName: union?.name,
|
||||||
|
applyMobile: mobile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
+4
@@ -81,6 +81,10 @@ layout("/layouts/platform.html"){
|
|||||||
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
|
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
|
||||||
<user-opinion-textarea v-model="formData.tf_opinion"></user-opinion-textarea>
|
<user-opinion-textarea v-model="formData.tf_opinion"></user-opinion-textarea>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="电子签名" prop="tf_sign"
|
||||||
|
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
|
||||||
|
<pc-signature v-model="formData.tf_sign"></pc-signature>
|
||||||
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<el-row type="flex" justify="end">
|
<el-row type="flex" justify="end">
|
||||||
<el-button @click="$refs.guava.index()" size="small">取消</el-button>
|
<el-button @click="$refs.guava.index()" size="small">取消</el-button>
|
||||||
|
|||||||
@@ -7,18 +7,22 @@ const condolenceInfo = {
|
|||||||
</div>
|
</div>
|
||||||
<el-descriptions :column="3" border>
|
<el-descriptions :column="3" border>
|
||||||
<el-descriptions-item label="申请人姓名">{{ viewData.applyUserName }}</el-descriptions-item>
|
<el-descriptions-item label="申请人姓名">{{ viewData.applyUserName }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="申请人电话">{{ viewData.applyMobile }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="申请人工号">{{ viewData.applyLoginName }}</el-descriptions-item>
|
<el-descriptions-item label="申请人工号">{{ viewData.applyLoginName }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="申请人单位">{{ viewData.applyUnitName }}</el-descriptions-item>
|
<el-descriptions-item label="申请人单位">{{ viewData.applyUnitName }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="申请人工会">{{ viewData.applyUnionName }}</el-descriptions-item>
|
<el-descriptions-item label="申请人工会">{{ viewData.applyUnionName }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item></el-descriptions-item>
|
||||||
<el-descriptions-item label="慰问对象">{{ viewData.helpUserName }}</el-descriptions-item>
|
<el-descriptions-item label="慰问对象">{{ viewData.helpUserName }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="慰问对象电话">{{ viewData.helpMobile }}</el-descriptions-item>
|
||||||
<!-- <el-descriptions-item label="经办人">{{ viewData.handlerUserName }}</el-descriptions-item>-->
|
<!-- <el-descriptions-item label="经办人">{{ viewData.handlerUserName }}</el-descriptions-item>-->
|
||||||
<el-descriptions-item label="证明人">{{ viewData.certifierUserName }}</el-descriptions-item>
|
<!-- <el-descriptions-item label="证明人">{{ viewData.certifierUserName }}</el-descriptions-item>-->
|
||||||
|
<el-descriptions-item label="收款人">{{ viewData.payUserName }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="慰问类型">{{ viewData.typeName }}</el-descriptions-item>
|
<el-descriptions-item label="慰问类型">{{ viewData.typeName }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="慰问金额">{{ viewData.money }}</el-descriptions-item>
|
<el-descriptions-item label="慰问金额">{{ viewData.money }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="慰问时间">{{ viewData.occurTime }}</el-descriptions-item>
|
<el-descriptions-item label="慰问时间">{{ viewData.occurTime }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="收款账户">{{ viewData.bankCardNumber }}</el-descriptions-item>
|
<!-- <el-descriptions-item label="收款账户">{{ viewData.bankCardNumber }}</el-descriptions-item>-->
|
||||||
<el-descriptions-item label="户名">{{ viewData.bankUserName }}</el-descriptions-item>
|
<!-- <el-descriptions-item label="户名">{{ viewData.bankUserName }}</el-descriptions-item>-->
|
||||||
<el-descriptions-item label="开户行">{{ viewData.bankOfDeposit }}</el-descriptions-item>
|
<!-- <el-descriptions-item label="开户行">{{ viewData.bankOfDeposit }}</el-descriptions-item>-->
|
||||||
<template v-if="['2'].includes(viewData.typeCode)">
|
<template v-if="['2'].includes(viewData.typeCode)">
|
||||||
<el-descriptions-item label="入院时间">{{ viewData.hospitalizationTime }}</el-descriptions-item>
|
<el-descriptions-item label="入院时间">{{ viewData.hospitalizationTime }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="出院时间">{{ viewData.leaveHospitalTime }}</el-descriptions-item>
|
<el-descriptions-item label="出院时间">{{ viewData.leaveHospitalTime }}</el-descriptions-item>
|
||||||
@@ -68,6 +72,12 @@ const condolenceInfo = {
|
|||||||
<el-descriptions-item label="办理意见" v-if="!task.ext.isFirstTaskNode">{{
|
<el-descriptions-item label="办理意见" v-if="!task.ext.isFirstTaskNode">{{
|
||||||
task.taskFormData.opinion }}
|
task.taskFormData.opinion }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="签字" :span="3" v-if="!task.ext.isFirstTaskNode">
|
||||||
|
<el-image :src="task.taskFormData.tf_sign"
|
||||||
|
v-if="task.taskFormData.tf_sign"
|
||||||
|
class="signature-image"></el-image>
|
||||||
|
<span v-else>暂无签字</span>
|
||||||
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -62,6 +62,7 @@ layout("/layouts/platform.html"){
|
|||||||
<el-button @click="onView(row)" size="mini" type="primary">查看</el-button>
|
<el-button @click="onView(row)" size="mini" type="primary">查看</el-button>
|
||||||
<el-button v-if="row.taskKey === 'startTask' || !row.instanceId" @click="onEdit(row)" size="mini" type="primary">编辑</el-button>
|
<el-button v-if="row.taskKey === 'startTask' || !row.instanceId" @click="onEdit(row)" size="mini" type="primary">编辑</el-button>
|
||||||
<el-button v-if="row.canRevoke" size="mini" type="danger" @click="onRevoke(row)">撤回</el-button>
|
<el-button v-if="row.canRevoke" size="mini" type="danger" @click="onRevoke(row)">撤回</el-button>
|
||||||
|
<el-button v-if="row.instanceState === 20" @click="doExport(row)" size="mini" type="primary">导出报销单</el-button>
|
||||||
<el-button v-if="row.taskKey === 'startTask' || !row.instanceId" @click="onDelete(row.id)" size="mini" type="danger">
|
<el-button v-if="row.taskKey === 'startTask' || !row.instanceId" @click="onDelete(row.id)" size="mini" type="danger">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
@@ -102,6 +103,9 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
doExport(row) {
|
||||||
|
window.location.href = "/platform/condolence/mine/doExport?id=" + (row.id || '')
|
||||||
|
},
|
||||||
onAdd() {
|
onAdd() {
|
||||||
commonUtil.pjaxPush('/platform/condolence/apply')
|
commonUtil.pjaxPush('/platform/condolence/apply')
|
||||||
},
|
},
|
||||||
|
|||||||
+4
@@ -101,6 +101,10 @@ layout("/layouts/platform.html"){
|
|||||||
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
|
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
|
||||||
<user-opinion-textarea v-model="formData.tf_opinion"></user-opinion-textarea>
|
<user-opinion-textarea v-model="formData.tf_opinion"></user-opinion-textarea>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="电子签名" prop="tf_sign"
|
||||||
|
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
|
||||||
|
<pc-signature v-model="formData.tf_sign"></pc-signature>
|
||||||
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<el-row type="flex" justify="end">
|
<el-row type="flex" justify="end">
|
||||||
<el-button @click="$refs.guava.index()" size="small">取消</el-button>
|
<el-button @click="$refs.guava.index()" size="small">取消</el-button>
|
||||||
|
|||||||
+4
@@ -101,6 +101,10 @@ layout("/layouts/platform.html"){
|
|||||||
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
|
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
|
||||||
<user-opinion-textarea v-model="formData.tf_opinion"></user-opinion-textarea>
|
<user-opinion-textarea v-model="formData.tf_opinion"></user-opinion-textarea>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="电子签名" prop="tf_sign"
|
||||||
|
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
|
||||||
|
<pc-signature v-model="formData.tf_sign"></pc-signature>
|
||||||
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<el-row type="flex" justify="end">
|
<el-row type="flex" justify="end">
|
||||||
<el-button @click="$refs.guava.index()" size="small">取消</el-button>
|
<el-button @click="$refs.guava.index()" size="small">取消</el-button>
|
||||||
|
|||||||
@@ -115,7 +115,7 @@ layout("/layouts/platform.html"){
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item prop="provideTime" label="发放时间">
|
<el-form-item prop="provideTime" label="使用期限">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
v-model="formData.provideTime"
|
v-model="formData.provideTime"
|
||||||
|
|||||||
@@ -130,6 +130,9 @@ layout("/layouts/platform.html"){
|
|||||||
|
|
||||||
<el-card class="mt10" shadow="never">
|
<el-card class="mt10" shadow="never">
|
||||||
<table-tool :app="this" label="福利名单">
|
<table-tool :app="this" label="福利名单">
|
||||||
|
<el-button @click="batchDelete" size="small" type="primary">
|
||||||
|
批量删除
|
||||||
|
</el-button>
|
||||||
<el-button :disabled="!pageForm.projectId" @click="openExport" icon="el-icon-download" size="small" type="primary">
|
<el-button :disabled="!pageForm.projectId" @click="openExport" icon="el-icon-download" size="small" type="primary">
|
||||||
导出名单
|
导出名单
|
||||||
</el-button>
|
</el-button>
|
||||||
@@ -151,11 +154,14 @@ layout("/layouts/platform.html"){
|
|||||||
:data="tableData"
|
:data="tableData"
|
||||||
:size="tableSize"
|
:size="tableSize"
|
||||||
@sort-change="pageOrder"
|
@sort-change="pageOrder"
|
||||||
|
@selection-change="handleSelectionChange"
|
||||||
ref="tableRef"
|
ref="tableRef"
|
||||||
row-key="id"
|
row-key="id"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
v-loading="tableLoading"
|
v-loading="tableLoading"
|
||||||
>
|
>
|
||||||
|
<el-table-column type="selection" width="55"></el-table-column>
|
||||||
|
|
||||||
<el-table-column :index="indexMethod" label="序号" type="index" width="80px"></el-table-column>
|
<el-table-column :index="indexMethod" label="序号" type="index" width="80px"></el-table-column>
|
||||||
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
@@ -278,6 +284,8 @@ layout("/layouts/platform.html"){
|
|||||||
|
|
||||||
welfareListUserDrawer: false,
|
welfareListUserDrawer: false,
|
||||||
|
|
||||||
|
selectedRows: [],
|
||||||
|
|
||||||
showImportDialog: false
|
showImportDialog: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -317,6 +325,35 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
batchDelete() {
|
||||||
|
if (!this.selectedRows || this.selectedRows.length === 0) {
|
||||||
|
this.$message.warning("请至少选择一条数据")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
var that = this
|
||||||
|
this.$confirm("您确定要删除选中的 " + this.selectedRows.length + " 条数据吗?", "提示", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning"
|
||||||
|
}).then(async () => {
|
||||||
|
const ids = this.selectedRows.map(row => row.id)
|
||||||
|
const resp = await this.$axios.post("/platform/welfare/list/mange/batchDelete",
|
||||||
|
"ids=" + ids.join("&ids=") + "&projectId=" + this.pageForm.projectId,
|
||||||
|
{ headers: { 'Content-Type': 'application/x-www-form-urlencoded' } }
|
||||||
|
)
|
||||||
|
if (resp.code === 0) {
|
||||||
|
this.$message.success(resp.msg || "删除成功")
|
||||||
|
this.$refs.tableRef.clearSelection()
|
||||||
|
this.doSearch()
|
||||||
|
} else {
|
||||||
|
this.$message.error(resp.msg)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleSelectionChange(val) {
|
||||||
|
this.selectedRows = val
|
||||||
|
},
|
||||||
getWelfareList() {
|
getWelfareList() {
|
||||||
this.$axios.post("/platform/welfare/project/mange/getWelfareList", { year: this.pageForm.year }).then((res) => {
|
this.$axios.post("/platform/welfare/project/mange/getWelfareList", { year: this.pageForm.year }).then((res) => {
|
||||||
this.projectSelectOptions = res.data
|
this.projectSelectOptions = res.data
|
||||||
|
|||||||
@@ -20,6 +20,14 @@ layout("/layouts/platform_h5.html"){
|
|||||||
<van-cell-group title="基本信息" class="form-section">
|
<van-cell-group title="基本信息" class="form-section">
|
||||||
<van-field label="申请人姓名" :rules="[{ required: true }]" v-model="formData.applyUserName" readonly
|
<van-field label="申请人姓名" :rules="[{ required: true }]" v-model="formData.applyUserName" readonly
|
||||||
required name="applyUserName"></van-field>
|
required name="applyUserName"></van-field>
|
||||||
|
<van-field
|
||||||
|
v-model="formData.applyMobile"
|
||||||
|
label="申请人电话"
|
||||||
|
maxlength="20"
|
||||||
|
clearable
|
||||||
|
name="applyMobile"
|
||||||
|
placeholder="系统自动填充,也可手动修改"
|
||||||
|
></van-field>
|
||||||
<van-field label="申请人工号" :rules="[{ required: true }]" v-model="formData.applyLoginName" readonly
|
<van-field label="申请人工号" :rules="[{ required: true }]" v-model="formData.applyLoginName" readonly
|
||||||
required name="applyLoginName"></van-field>
|
required name="applyLoginName"></van-field>
|
||||||
<van-field label="申请人单位" :rules="[{ required: true }]" v-model="formData.applyUnitName" readonly
|
<van-field label="申请人单位" :rules="[{ required: true }]" v-model="formData.applyUnitName" readonly
|
||||||
@@ -62,6 +70,15 @@ layout("/layouts/platform_h5.html"){
|
|||||||
<van-empty description="暂无数据" v-else></van-empty>
|
<van-empty description="暂无数据" v-else></van-empty>
|
||||||
</van-action-sheet>
|
</van-action-sheet>
|
||||||
|
|
||||||
|
<van-field
|
||||||
|
v-model="formData.helpMobile"
|
||||||
|
label="慰问对象电话"
|
||||||
|
maxlength="20"
|
||||||
|
clearable
|
||||||
|
name="helpMobile"
|
||||||
|
placeholder="选择慰问对象自动填充,也可手动输入"
|
||||||
|
></van-field>
|
||||||
|
|
||||||
<!-- <van-field
|
<!-- <van-field
|
||||||
v-model="formData.handlerUserName"
|
v-model="formData.handlerUserName"
|
||||||
name="handlerUserName"
|
name="handlerUserName"
|
||||||
@@ -97,32 +114,67 @@ layout("/layouts/platform_h5.html"){
|
|||||||
<van-empty description="暂无数据" v-else></van-empty>
|
<van-empty description="暂无数据" v-else></van-empty>
|
||||||
</van-action-sheet>-->
|
</van-action-sheet>-->
|
||||||
|
|
||||||
|
<!-- <van-field-->
|
||||||
|
<!-- v-model="formData.certifierUserName"-->
|
||||||
|
<!-- name="certifierUserName"-->
|
||||||
|
<!-- label="证明人"-->
|
||||||
|
<!-- required-->
|
||||||
|
<!-- readonly-->
|
||||||
|
<!-- :rules="[{ required: true }]"-->
|
||||||
|
<!-- placeholder="请点击选择证明人"-->
|
||||||
|
<!-- @click="certifierUserSelectShow = true"-->
|
||||||
|
<!-- is-link-->
|
||||||
|
<!-- ></van-field>-->
|
||||||
|
<!-- <van-action-sheet v-model="certifierUserSelectShow" title="证明人" class="height100">-->
|
||||||
|
<!-- <van-search-->
|
||||||
|
<!-- v-model="searchKeyword"-->
|
||||||
|
<!-- :show-action="false"-->
|
||||||
|
<!-- :reverse-color="false"-->
|
||||||
|
<!-- input-align="left"-->
|
||||||
|
<!-- placeholder="请输入工号或姓名选择证明人"-->
|
||||||
|
<!-- @input="(val) => {userRemoteMethod(val, 'certifier')}"-->
|
||||||
|
<!-- @clear="(val) => {userRemoteMethod(val, 'certifier')}"-->
|
||||||
|
<!-- shape="round"-->
|
||||||
|
<!-- ></van-search>-->
|
||||||
|
<!-- <div class="van-action-sheet__content mt5" v-if="userOptions && userOptions.length>0">-->
|
||||||
|
<!-- <template>-->
|
||||||
|
<!-- <template v-for="item in userOptions">-->
|
||||||
|
<!-- <van-button native-type="button" @click="certifierUserChange(item)"-->
|
||||||
|
<!-- class="van-action-sheet__item van-hairline--bottom">-->
|
||||||
|
<!-- <span class="van-action-sheet__name">{{item.userName}}({{item.loginName}})</span>-->
|
||||||
|
<!-- </van-button>-->
|
||||||
|
<!-- </template>-->
|
||||||
|
<!-- </template>-->
|
||||||
|
<!-- </div>-->
|
||||||
|
<!-- <van-empty description="暂无数据" v-else></van-empty>-->
|
||||||
|
<!-- </van-action-sheet>-->
|
||||||
|
|
||||||
<van-field
|
<van-field
|
||||||
v-model="formData.certifierUserName"
|
v-model="formData.payUserName"
|
||||||
name="certifierUserName"
|
name="payUserName"
|
||||||
label="证明人"
|
label="收款人"
|
||||||
required
|
required
|
||||||
readonly
|
readonly
|
||||||
:rules="[{ required: true }]"
|
:rules="[{ required: true }]"
|
||||||
placeholder="请点击选择证明人"
|
placeholder="请点击选择收款人"
|
||||||
@click="certifierUserSelectShow = true"
|
@click="payUserSelectShow = true"
|
||||||
is-link
|
is-link
|
||||||
></van-field>
|
></van-field>
|
||||||
<van-action-sheet v-model="certifierUserSelectShow" title="证明人" class="height100">
|
<van-action-sheet v-model="payUserSelectShow" title="收款人" class="height100">
|
||||||
<van-search
|
<van-search
|
||||||
v-model="searchKeyword"
|
v-model="searchKeyword"
|
||||||
:show-action="false"
|
:show-action="false"
|
||||||
:reverse-color="false"
|
:reverse-color="false"
|
||||||
input-align="left"
|
input-align="left"
|
||||||
placeholder="请输入工号或姓名选择证明人"
|
placeholder="请输入工号或姓名选择收款人"
|
||||||
@input="(val) => {userRemoteMethod(val, 'certifier')}"
|
@input="(val) => {userRemoteMethod(val, 'pay')}"
|
||||||
@clear="(val) => {userRemoteMethod(val, 'certifier')}"
|
@clear="(val) => {userRemoteMethod(val, 'pay')}"
|
||||||
shape="round"
|
shape="round"
|
||||||
></van-search>
|
></van-search>
|
||||||
<div class="van-action-sheet__content mt5" v-if="userOptions && userOptions.length>0">
|
<div class="van-action-sheet__content mt5" v-if="userOptions && userOptions.length>0">
|
||||||
<template>
|
<template>
|
||||||
<template v-for="item in userOptions">
|
<template v-for="item in userOptions">
|
||||||
<van-button native-type="button" @click="certifierUserChange(item)"
|
<van-button native-type="button" @click="payUserChange(item)"
|
||||||
class="van-action-sheet__item van-hairline--bottom">
|
class="van-action-sheet__item van-hairline--bottom">
|
||||||
<span class="van-action-sheet__name">{{item.userName}}({{item.loginName}})</span>
|
<span class="van-action-sheet__name">{{item.userName}}({{item.loginName}})</span>
|
||||||
</van-button>
|
</van-button>
|
||||||
@@ -194,38 +246,38 @@ layout("/layouts/platform_h5.html"){
|
|||||||
></van-datetime-picker>
|
></van-datetime-picker>
|
||||||
</van-popup>
|
</van-popup>
|
||||||
|
|
||||||
<van-field
|
<!-- <van-field-->
|
||||||
v-model="formData.bankCardNumber"
|
<!-- v-model="formData.bankCardNumber"-->
|
||||||
label="收款账户"
|
<!-- label="收款账户"-->
|
||||||
maxlength="20"
|
<!-- maxlength="20"-->
|
||||||
clearable
|
<!-- clearable-->
|
||||||
name="bankCardNumber"
|
<!-- name="bankCardNumber"-->
|
||||||
placeholder="请填写收款账户"
|
<!-- placeholder="请填写收款账户"-->
|
||||||
:rules="[{ required: true }]"
|
<!-- :rules="[{ required: true }]"-->
|
||||||
required
|
<!-- required-->
|
||||||
></van-field>
|
<!-- ></van-field>-->
|
||||||
|
|
||||||
<van-field
|
<!-- <van-field-->
|
||||||
v-model="formData.bankUserName"
|
<!-- v-model="formData.bankUserName"-->
|
||||||
label="户名"
|
<!-- label="户名"-->
|
||||||
placeholder="请填写户名"
|
<!-- placeholder="请填写户名"-->
|
||||||
:rules="[{ required: true }]"
|
<!-- :rules="[{ required: true }]"-->
|
||||||
required
|
<!-- required-->
|
||||||
maxlength="20"
|
<!-- maxlength="20"-->
|
||||||
name="bankUserName"
|
<!-- name="bankUserName"-->
|
||||||
></van-field>
|
<!-- ></van-field>-->
|
||||||
<van-field
|
<!-- <van-field-->
|
||||||
v-model="formData.bankOfDeposit"
|
<!-- v-model="formData.bankOfDeposit"-->
|
||||||
label="开户行"
|
<!-- label="开户行"-->
|
||||||
maxlength="30"
|
<!-- maxlength="30"-->
|
||||||
type="textarea"
|
<!-- type="textarea"-->
|
||||||
rows="4"
|
<!-- rows="4"-->
|
||||||
autosize
|
<!-- autosize-->
|
||||||
placeholder="请填写开户行"
|
<!-- placeholder="请填写开户行"-->
|
||||||
:rules="[{ required: true }]"
|
<!-- :rules="[{ required: true }]"-->
|
||||||
required
|
<!-- required-->
|
||||||
name="bankOfDeposit"
|
<!-- name="bankOfDeposit"-->
|
||||||
></van-field>
|
<!-- ></van-field>-->
|
||||||
|
|
||||||
<template v-if="['2'].includes(formData.typeCode)">
|
<template v-if="['2'].includes(formData.typeCode)">
|
||||||
<van-field
|
<van-field
|
||||||
@@ -437,6 +489,8 @@ layout("/layouts/platform_h5.html"){
|
|||||||
this.certifierUserSelectShow = true
|
this.certifierUserSelectShow = true
|
||||||
} else if (type === "handler") {
|
} else if (type === "handler") {
|
||||||
this.handlerUserSelectShow = true
|
this.handlerUserSelectShow = true
|
||||||
|
}else if (type === "pay") {
|
||||||
|
this.payUserSelectShow = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -445,7 +499,7 @@ layout("/layouts/platform_h5.html"){
|
|||||||
return res.data
|
return res.data
|
||||||
},
|
},
|
||||||
helpUserChange(user) {
|
helpUserChange(user) {
|
||||||
const { id, userName, loginName, unitId, unitName, unionId, unionName } = user
|
const { id, userName, loginName, unitId, unitName, unionId, unionName, mobile } = user
|
||||||
this.$set(this.formData, "helpUserId", id)
|
this.$set(this.formData, "helpUserId", id)
|
||||||
this.$set(this.formData, "helpUserName", userName)
|
this.$set(this.formData, "helpUserName", userName)
|
||||||
this.$set(this.formData, "helpLoginName", loginName)
|
this.$set(this.formData, "helpLoginName", loginName)
|
||||||
@@ -453,6 +507,7 @@ layout("/layouts/platform_h5.html"){
|
|||||||
this.$set(this.formData, "helpUnitName", unitName)
|
this.$set(this.formData, "helpUnitName", unitName)
|
||||||
this.$set(this.formData, "helpUnionId", unionId)
|
this.$set(this.formData, "helpUnionId", unionId)
|
||||||
this.$set(this.formData, "helpUnionName", unionName)
|
this.$set(this.formData, "helpUnionName", unionName)
|
||||||
|
this.$set(this.formData, "helpMobile", mobile)
|
||||||
this.helpUserSelectShow = false
|
this.helpUserSelectShow = false
|
||||||
this.searchKeyword = ""
|
this.searchKeyword = ""
|
||||||
this.userOptions = []
|
this.userOptions = []
|
||||||
@@ -553,7 +608,8 @@ layout("/layouts/platform_h5.html"){
|
|||||||
applyUnitId: unit?.id,
|
applyUnitId: unit?.id,
|
||||||
applyUnitName: unit?.name,
|
applyUnitName: unit?.name,
|
||||||
applyUnionId: union?.id,
|
applyUnionId: union?.id,
|
||||||
applyUnionName: union?.name
|
applyUnionName: union?.name,
|
||||||
|
applyMobile: mobile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
+8
-1
@@ -7,7 +7,7 @@ layout("/layouts/platform_h5.html"){
|
|||||||
</style>
|
</style>
|
||||||
|
|
||||||
<div id="app">
|
<div id="app">
|
||||||
<van-nav-bar title="分工会审核" left-text="返回" left-arrow @click-left="historyBack" fixed placeholder></van-nav-bar>
|
<van-nav-bar title="分工会主席审核" left-text="返回" left-arrow @click-left="historyBack" fixed placeholder></van-nav-bar>
|
||||||
|
|
||||||
<van-sticky offset-top="46px">
|
<van-sticky offset-top="46px">
|
||||||
<van-search
|
<van-search
|
||||||
@@ -70,6 +70,13 @@ layout("/layouts/platform_h5.html"){
|
|||||||
maxlength="100"
|
maxlength="100"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
></van-field>
|
></van-field>
|
||||||
|
<van-cell-group title="电子签名" class="form-section">
|
||||||
|
<van-field class="more-text" name="tf_sign" label="">
|
||||||
|
<template #input>
|
||||||
|
<h5-signature v-model="formData.tf_sign" slot="input"></h5-signature>
|
||||||
|
</template>
|
||||||
|
</van-field>
|
||||||
|
</van-cell-group>
|
||||||
</van-form>
|
</van-form>
|
||||||
<div style="display: flex; justify-content: space-between; column-gap: 10px; padding: 10px">
|
<div style="display: flex; justify-content: space-between; column-gap: 10px; padding: 10px">
|
||||||
<van-button type="danger" block @click="handleTaskAction(6)">退回</van-button>
|
<van-button type="danger" block @click="handleTaskAction(6)">退回</van-button>
|
||||||
|
|||||||
@@ -6,20 +6,23 @@ const condolenceInfo = {
|
|||||||
<div class="detail-container">
|
<div class="detail-container">
|
||||||
<van-cell-group title="基本信息">
|
<van-cell-group title="基本信息">
|
||||||
<van-cell title="申请人姓名">{{ viewData.applyUserName }}</van-cell>
|
<van-cell title="申请人姓名">{{ viewData.applyUserName }}</van-cell>
|
||||||
|
<van-cell title="申请人电话">{{ viewData.applyMobile }}</van-cell>
|
||||||
<van-cell title="申请人工号">{{ viewData.applyLoginName }}</van-cell>
|
<van-cell title="申请人工号">{{ viewData.applyLoginName }}</van-cell>
|
||||||
<van-cell title="申请人单位">{{ viewData.applyUnitName }}</van-cell>
|
<van-cell title="申请人单位">{{ viewData.applyUnitName }}</van-cell>
|
||||||
<van-cell title="申请人工会">{{ viewData.applyUnionName }}</van-cell>
|
<van-cell title="申请人工会">{{ viewData.applyUnionName }}</van-cell>
|
||||||
<van-cell title="慰问对象">{{ viewData.helpUserName }}</van-cell>
|
<van-cell title="慰问对象">{{ viewData.helpUserName }}</van-cell>
|
||||||
|
<van-cell title="慰问对象电话">{{ viewData.helpMobile }}</van-cell>
|
||||||
<!-- <van-cell title="经办人">{{ viewData.handlerUserName }}</van-cell>-->
|
<!-- <van-cell title="经办人">{{ viewData.handlerUserName }}</van-cell>-->
|
||||||
<van-cell title="证明人">{{ viewData.certifierUserName }}</van-cell>
|
<!-- <van-cell title="证明人">{{ viewData.certifierUserName }}</van-cell>-->
|
||||||
|
<van-cell title="收款人">{{ viewData.payUserName }}</van-cell>
|
||||||
<van-cell title="慰问类型">{{ viewData.typeName }}</van-cell>
|
<van-cell title="慰问类型">{{ viewData.typeName }}</van-cell>
|
||||||
<van-cell title="慰问金额">{{ viewData.money }}</van-cell>
|
<van-cell title="慰问金额">{{ viewData.money }}</van-cell>
|
||||||
<van-cell title="慰问时间">{{ viewData.occurTime }}</van-cell>
|
<van-cell title="慰问时间">{{ viewData.occurTime }}</van-cell>
|
||||||
<van-cell title="收款账户">{{ viewData.bankCardNumber }}</van-cell>
|
<!-- <van-cell title="收款账户">{{ viewData.bankCardNumber }}</van-cell>-->
|
||||||
<van-cell title="户名">{{ viewData.bankUserName }}</van-cell>
|
<!-- <van-cell title="户名">{{ viewData.bankUserName }}</van-cell>-->
|
||||||
<van-cell class="direction-column-cell" title="开户行">
|
<!-- <van-cell class="direction-column-cell" title="开户行">-->
|
||||||
{{ viewData.bankOfDeposit || '暂无' }}
|
<!-- {{ viewData.bankOfDeposit || '暂无' }}-->
|
||||||
</van-cell>
|
<!-- </van-cell>-->
|
||||||
<template v-if="['2'].includes(viewData.typeCode)">
|
<template v-if="['2'].includes(viewData.typeCode)">
|
||||||
<van-cell title="入院时间">{{ viewData.hospitalizationTime }}</van-cell>
|
<van-cell title="入院时间">{{ viewData.hospitalizationTime }}</van-cell>
|
||||||
<van-cell title="出院时间">{{ viewData.leaveHospitalTime }}</van-cell>
|
<van-cell title="出院时间">{{ viewData.leaveHospitalTime }}</van-cell>
|
||||||
@@ -58,6 +61,11 @@ const condolenceInfo = {
|
|||||||
<van-cell title="办理意见" v-if="!task.ext.isFirstTaskNode" class="direction-column-cell">
|
<van-cell title="办理意见" v-if="!task.ext.isFirstTaskNode" class="direction-column-cell">
|
||||||
<div v-html="task.taskFormData.tf_opinion"></div>
|
<div v-html="task.taskFormData.tf_opinion"></div>
|
||||||
</van-cell>
|
</van-cell>
|
||||||
|
<van-cell class="direction-column-cell" title="签字"v-if="!task.ext.isFirstTaskNode">
|
||||||
|
<van-image :src="task.taskFormData.tf_sign" v-if="task.taskFormData.tf_sign"
|
||||||
|
class="signature-image"></van-image>
|
||||||
|
<span v-else>暂无签字</span>
|
||||||
|
</van-cell>
|
||||||
</van-cell-group>
|
</van-cell-group>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
+8
-1
@@ -7,7 +7,7 @@ layout("/layouts/platform_h5.html"){
|
|||||||
</style>
|
</style>
|
||||||
|
|
||||||
<div id="app">
|
<div id="app">
|
||||||
<van-nav-bar title="校工会预审" left-text="返回" left-arrow @click-left="historyBack" fixed placeholder></van-nav-bar>
|
<van-nav-bar title="校工会会计审核" left-text="返回" left-arrow @click-left="historyBack" fixed placeholder></van-nav-bar>
|
||||||
|
|
||||||
<van-sticky offset-top="46px">
|
<van-sticky offset-top="46px">
|
||||||
<van-search
|
<van-search
|
||||||
@@ -70,6 +70,13 @@ layout("/layouts/platform_h5.html"){
|
|||||||
maxlength="100"
|
maxlength="100"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
></van-field>
|
></van-field>
|
||||||
|
<van-cell-group title="电子签名" class="form-section">
|
||||||
|
<van-field class="more-text" name="tf_sign" label="">
|
||||||
|
<template #input>
|
||||||
|
<h5-signature v-model="formData.tf_sign" slot="input"></h5-signature>
|
||||||
|
</template>
|
||||||
|
</van-field>
|
||||||
|
</van-cell-group>
|
||||||
</van-form>
|
</van-form>
|
||||||
<div style="display: flex; justify-content: space-between; column-gap: 10px; padding: 10px">
|
<div style="display: flex; justify-content: space-between; column-gap: 10px; padding: 10px">
|
||||||
<van-button type="danger" block @click="handleTaskAction(6)">退回</van-button>
|
<van-button type="danger" block @click="handleTaskAction(6)">退回</van-button>
|
||||||
|
|||||||
+8
-1
@@ -7,7 +7,7 @@ layout("/layouts/platform_h5.html"){
|
|||||||
</style>
|
</style>
|
||||||
|
|
||||||
<div id="app">
|
<div id="app">
|
||||||
<van-nav-bar title="校工会审核" left-text="返回" left-arrow @click-left="historyBack" fixed placeholder></van-nav-bar>
|
<van-nav-bar title="工会主席审核" left-text="返回" left-arrow @click-left="historyBack" fixed placeholder></van-nav-bar>
|
||||||
|
|
||||||
<van-sticky offset-top="46px">
|
<van-sticky offset-top="46px">
|
||||||
<van-search
|
<van-search
|
||||||
@@ -70,6 +70,13 @@ layout("/layouts/platform_h5.html"){
|
|||||||
maxlength="100"
|
maxlength="100"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
></van-field>
|
></van-field>
|
||||||
|
<van-cell-group title="电子签名" class="form-section">
|
||||||
|
<van-field class="more-text" name="tf_sign" label="">
|
||||||
|
<template #input>
|
||||||
|
<h5-signature v-model="formData.tf_sign" slot="input"></h5-signature>
|
||||||
|
</template>
|
||||||
|
</van-field>
|
||||||
|
</van-cell-group>
|
||||||
</van-form>
|
</van-form>
|
||||||
<div style="display: flex; justify-content: space-between; column-gap: 10px; padding: 10px">
|
<div style="display: flex; justify-content: space-between; column-gap: 10px; padding: 10px">
|
||||||
<van-button type="danger" block @click="handleTaskAction(6)">退回</van-button>
|
<van-button type="danger" block @click="handleTaskAction(6)">退回</van-button>
|
||||||
|
|||||||
Reference in New Issue
Block a user