Browse Source

1、完成政务信息投稿流程

fuwb 1 month ago
parent
commit
a683bfe537
10 changed files with 814 additions and 0 deletions
  1. 64 0
      zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/controller/GovernmentInformationSubmissionController.java
  2. 99 0
      zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/entity/GovernmentInformationSubmission.java
  3. 184 0
      zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/event/GovernmentInformationSubmissionEvent.java
  4. 23 0
      zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/service/IGovernmentInformationSubmissionService.java
  5. 119 0
      zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/service/impl/GovernmentInformationSubmissionServiceImpl.java
  6. 75 0
      zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/vo/GovernmentInformationSubmissionVO.java
  7. 19 0
      zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/mapper/GovernmentInformationSubmissionMapper.java
  8. 4 0
      zjugis-module-business/zjugis-module-business-biz/src/main/resources/mapper/GovernmentInformationSubmissionMapper.xml
  9. 183 0
      zjugis-module-business/zjugis-module-business-biz/src/main/resources/templates/GovernmentInformationSubmission/index.ftl
  10. 44 0
      zjugis-module-business/zjugis-module-business-biz/src/main/resources/templates/GovernmentInformationSubmission/js/index.js

+ 64 - 0
zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/controller/GovernmentInformationSubmissionController.java

@@ -0,0 +1,64 @@
+package com.zjugis.module.business.flow.GovernmentInformationSubmission.controller;
+
+import com.zjugis.framework.workflow.model.BaseController;
+import com.zjugis.framework.workflow.workflow.WorkFlow;
+import com.zjugis.module.business.flow.GovernmentInformationSubmission.service.IGovernmentInformationSubmissionService;
+import com.zjugis.module.business.flow.GovernmentInformationSubmission.vo.GovernmentInformationSubmissionVO;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import javax.validation.Valid;
+import java.util.Map;
+
+/**
+ * 政务信息投稿表 前端控制器
+ *
+ * @author fuwb
+ * @since 2025-05-19
+ */
+@RestController
+@RequestMapping("/governmentInformationSubmission")
+public class GovernmentInformationSubmissionController extends BaseController {
+    @Resource
+    private IGovernmentInformationSubmissionService govService;
+
+    /**
+     * 获取政务信息投稿流程表单
+     *
+     * @param activityTemplateId
+     * @param flowInstanceId
+     * @param userId
+     * @return
+     * @throws Exception
+     */
+    @WorkFlow(isReceiveMaterial = true, isReceiveOpinion = true)
+    @GetMapping("/index")
+    @ResponseBody
+    public String index(String activityTemplateId, String flowInstanceId, String userId) throws Exception {
+        Map<String, Object> map = govService.getFormParams(flowInstanceId, userId);
+        return resultPage(map);
+    }
+
+    /**
+     * 更新政务信息投稿表流程
+     * @param updateReqVO
+     * @return
+     */
+    @PostMapping("/update")
+    public String updateGovernmentInformation(@Valid @RequestBody GovernmentInformationSubmissionVO updateReqVO) {
+        govService.updateGovernmentInformation(updateReqVO);
+        return success(true);
+    }
+
+    /**
+     * 删除政务信息投稿表流程
+     * @param id
+     * @return
+     */
+    @DeleteMapping("/delete")
+    public String deleteGovernmentInformation(@RequestParam("id") String id) {
+        govService.deleteGovernmentInformation(id);
+        return success(true);
+    }
+
+}

+ 99 - 0
zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/entity/GovernmentInformationSubmission.java

@@ -0,0 +1,99 @@
+package com.zjugis.module.business.flow.GovernmentInformationSubmission.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.zjugis.module.business.mybatis.entity.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * 政务信息投稿表
+ *
+ * @author fuwb
+ * @since 2025-05-19
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("oa_government_information_submission")
+public class GovernmentInformationSubmission extends BaseEntity {
+    private static final long serialVersionUID = 8263776481665208931L;
+
+    /**
+     * 主键
+     */
+    @TableId(type = IdType.ASSIGN_UUID)
+    private String id;
+
+    /**
+     * 流程ID
+     */
+    private String instanceId;
+
+    /**
+     * 投稿编号
+     */
+    private String submitNumber;
+
+    /**
+     * 标题
+     */
+    private String title;
+
+    /**
+     * 投稿人
+     */
+    private String submitter;
+
+    /**
+     * 投稿部门
+     */
+    private String submitDepartment;
+
+    /**
+     * 投稿日期
+     */
+    private Date submitDate;
+
+    /**
+     * 是否录用
+     */
+    private String isUsed;
+
+    /**
+     * 首页显示
+     */
+    private String isHomepageDisplay;
+
+    /**
+     * 发布平台
+     */
+    private String releasePlatform;
+
+    /**
+     * 发布时间
+     */
+    private Date releaseTime;
+
+    /**
+     * 投稿类型
+     */
+    private String submissionType;
+
+    /**
+     * 流程状态
+     */
+    private Integer flowStatus;
+
+    /**
+     * 流程结束时间
+     */
+    private LocalDateTime flowFinishtime;
+
+
+}

+ 184 - 0
zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/event/GovernmentInformationSubmissionEvent.java

@@ -0,0 +1,184 @@
+package com.zjugis.module.business.flow.GovernmentInformationSubmission.event;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.zjugis.framework.common.util.date.LocalDateTimeUtils;
+import com.zjugis.framework.workflow.exception.BusinessException;
+import com.zjugis.framework.workflow.model.BaseController;
+import com.zjugis.framework.workflow.rpc.remote.WorkflowClient;
+import com.zjugis.framework.workflow.spring.resovler.ParamModel;
+import com.zjugis.module.business.flow.GovernmentInformationSubmission.entity.GovernmentInformationSubmission;
+import com.zjugis.module.business.flow.GovernmentInformationSubmission.service.IGovernmentInformationSubmissionService;
+import com.zjugis.module.business.flow.GovernmentInformationSubmission.vo.GovernmentInformationSubmissionVO;
+import com.zjugis.module.business.flow.fundpayment.entity.FundPaymentRegistration;
+import com.zjugis.module.business.flow.fundpayment.vo.FundPaymentVO;
+import com.zjugis.module.business.flow.projectinfo.entity.ProjectInfo;
+import com.zjugis.module.business.mapper.GovernmentInformationSubmissionMapper;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.time.LocalDateTime;
+import java.util.Arrays;
+import java.util.Map;
+import java.util.Objects;
+
+import static com.zjugis.module.business.constants.FlowStatusConstants.*;
+
+/**
+ * 政务信息投稿表 前端控制器
+ *
+ * @author fuwb
+ * @since 2025-05-19
+ */
+@RestController
+@RequestMapping("/raevent/government-information-submission")
+public class GovernmentInformationSubmissionEvent extends BaseController {
+    public static final Logger log = LoggerFactory.getLogger(GovernmentInformationSubmissionEvent.class);
+    @Resource
+    private WorkflowClient workflowClient;
+    @Resource
+    private IGovernmentInformationSubmissionService govService;
+
+
+    /**
+     * 设置流程描述
+     *
+     * @param flowInstance     流程实例
+     * @param activityInstance 活动实例
+     * @return true/false
+     */
+    @PostMapping("/setFlowDesc")
+    public String setFlowDesc(@ParamModel Map flowInstance, @ParamModel Map activityInstance) {
+        try {
+            if (!Objects.isNull(activityInstance) && activityInstance.containsKey("flowInstanceId")) {
+                String flowInstanceId = activityInstance.get("flowInstanceId").toString();
+                GovernmentInformationSubmission entity = govService.findByInstanceId(flowInstanceId);
+                String applyTime = LocalDateTimeUtils.format(entity.getCreateTime(), null);
+                String flowDesc = StringUtils.join(Arrays.asList(entity.getSubmitter(), applyTime, entity.getSubmitDate()), "/");
+                entity.setFlowStatus(FLOW_PROCESS);
+                govService.updateGovernmentInformation(BeanUtil.copyProperties(entity, GovernmentInformationSubmissionVO.class));
+                workflowClient.saveFlowDescribe(flowInstanceId, flowDesc);
+                return ok("true");
+            } else {
+                throw new BusinessException("执行事件出错,请联系管理员!");
+            }
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+            throw new BusinessException("执行事件出错,请联系管理员!");
+        }
+    }
+
+    /**
+     * 流程归档事件
+     *
+     * @param flowInstance                  流程实例
+     * @param triggerFinishActivityInstance 触发归档的结束活动实例
+     * @return
+     */
+    @Transactional(rollbackFor = Exception.class)
+    @PostMapping("/flowArchingEvent")
+    public String flowArchingEvent(@ParamModel Map flowInstance, @ParamModel Map triggerFinishActivityInstance) {
+        try {
+            if (!Objects.isNull(flowInstance) && flowInstance.containsKey("id")) {
+                String flowInstanceId = flowInstance.get("id").toString();
+                GovernmentInformationSubmission entity = govService.findByInstanceId(flowInstanceId);
+                entity.setFlowStatus(FLOW_FINISHED);
+                entity.setFlowFinishtime(LocalDateTime.now());
+                govService.updateGovernmentInformation(BeanUtil.copyProperties(entity, GovernmentInformationSubmissionVO.class));
+                return ok("true");
+            } else {
+                throw new BusinessException("执行事件出错,请联系管理员!");
+            }
+        } catch (Exception ex) {
+            log.error(ex.getMessage(), ex);
+            throw new BusinessException("执行事件出错,请联系管理员!");
+        }
+    }
+
+    /**
+     * 作废事件
+     *
+     * @param flowInstance     流程实例
+     * @param activityInstance 申请作废所在活动实例
+     * @param nullyApplyUserId 作废申请人ID
+     * @return
+     */
+    @PostMapping("/nullyEvent")
+    public String nullyEvent(@ParamModel Map flowInstance, @ParamModel Map activityInstance, String nullyApplyUserId) {
+        try {
+            if (!Objects.isNull(flowInstance) && flowInstance.containsKey("id")) {
+                String flowInstanceId = flowInstance.get("id").toString();
+                GovernmentInformationSubmission entity = govService.findByInstanceId(flowInstanceId);
+                entity.setFlowStatus(FLOW_NULLY);
+                entity.setIsvalid(0);
+                govService.updateGovernmentInformation(BeanUtil.copyProperties(entity, GovernmentInformationSubmissionVO.class));
+                return ok("true");
+            } else {
+                throw new BusinessException("执行事件出错,请联系管理员!");
+            }
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+            throw new BusinessException("执行事件出错,请联系管理员!");
+        }
+    }
+
+    /**
+     * 作废恢复事件
+     *
+     * @param flowInstance      流程实例
+     * @param activityInstance  申请作废所在活动实例
+     * @param nullyApplyUserId  作废申请人ID
+     * @param nullyRecoverserId 作废恢复人ID
+     * @return
+     */
+    @PostMapping("/nullyRecoverEvent")
+    public String nullyRecoverEvent(@ParamModel Map flowInstance, @ParamModel Map activityInstance, String nullyApplyUserId, String nullyRecoverserId) {
+        try {
+            if (!Objects.isNull(flowInstance) && flowInstance.containsKey("id")) {
+                String flowInstanceId = flowInstance.get("id").toString();
+                GovernmentInformationSubmission entity = govService.findByInstanceId(flowInstanceId);
+                entity.setFlowStatus(FLOW_PROCESS);
+                entity.setIsvalid(1);
+                govService.updateGovernmentInformation(BeanUtil.copyProperties(entity, GovernmentInformationSubmissionVO.class));
+                return ok("true");
+            } else {
+                throw new BusinessException("执行事件出错,请联系管理员!");
+            }
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+            throw new BusinessException("执行事件出错,请联系管理员!");
+        }
+    }
+
+    /**
+     * 彻底作废事件
+     *
+     * @param flowInstance        流程实例
+     * @param activityInstance    申请作废所在活动实例
+     * @param nullyApplyUserId    作废申请人ID
+     * @param nullyCompleteUserId 彻底作废人ID
+     * @return
+     */
+    @PostMapping("/nullyCompleteEvent")
+    public String nullyCompleteEvent(@ParamModel Map flowInstance, @ParamModel Map activityInstance, String nullyApplyUserId, String nullyCompleteUserId) {
+        try {
+            if (!Objects.isNull(flowInstance) && flowInstance.containsKey("id")) {
+                String flowInstanceId = flowInstance.get("id").toString();
+                GovernmentInformationSubmission entity = govService.findByInstanceId(flowInstanceId);
+                govService.deleteGovernmentInformation(entity.getId());
+                return ok("true");
+            } else {
+                throw new BusinessException("执行事件出错,请联系管理员!");
+            }
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+            throw new BusinessException("执行事件出错,请联系管理员!");
+        }
+    }
+}

+ 23 - 0
zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/service/IGovernmentInformationSubmissionService.java

@@ -0,0 +1,23 @@
+package com.zjugis.module.business.flow.GovernmentInformationSubmission.service;
+
+import com.zjugis.module.business.flow.GovernmentInformationSubmission.entity.GovernmentInformationSubmission;
+import com.zjugis.module.business.flow.GovernmentInformationSubmission.vo.GovernmentInformationSubmissionVO;
+
+import java.util.Map;
+
+/**
+ * 政务信息投稿表 服务类
+ *
+ * @author fuwb
+ * @since 2025-05-19
+ */
+public interface IGovernmentInformationSubmissionService {
+
+    Map<String, Object> getFormParams(String flowInstanceId, String userId);
+
+    GovernmentInformationSubmission findByInstanceId(String flowInstanceId);
+
+    void updateGovernmentInformation(GovernmentInformationSubmissionVO updateReqVO);
+
+    void deleteGovernmentInformation(String id);
+}

+ 119 - 0
zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/service/impl/GovernmentInformationSubmissionServiceImpl.java

@@ -0,0 +1,119 @@
+package com.zjugis.module.business.flow.GovernmentInformationSubmission.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.zjugis.framework.common.pojo.CommonResult;
+import com.zjugis.framework.security.core.util.SecurityFrameworkUtils;
+import com.zjugis.framework.workflow.model.IFlowInstance;
+import com.zjugis.framework.workflow.rpc.remote.WorkflowClient;
+import com.zjugis.module.business.flow.GovernmentInformationSubmission.entity.GovernmentInformationSubmission;
+import com.zjugis.module.business.flow.GovernmentInformationSubmission.service.IGovernmentInformationSubmissionService;
+import com.zjugis.module.business.flow.GovernmentInformationSubmission.vo.GovernmentInformationSubmissionVO;
+import com.zjugis.module.business.mapper.GovernmentInformationSubmissionMapper;
+import com.zjugis.module.system.api.dict.DictDataApi;
+import com.zjugis.module.system.api.user.AdminUserApi;
+import com.zjugis.module.system.api.user.dto.AdminUserRespDTO;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+import static com.zjugis.framework.common.exception.util.ServiceExceptionUtil.exception;
+import static com.zjugis.module.business.enums.ErrorCodeConstants.APPLICATION_INFO_NOT_EXISTS;
+
+/**
+ * 政务信息投稿表 服务实现类
+ *
+ * @author fuwb
+ * @since 2025-05-19
+ */
+@Service
+public class GovernmentInformationSubmissionServiceImpl implements IGovernmentInformationSubmissionService {
+    @Resource
+    private WorkflowClient workflowClient;
+    @Resource
+    private DictDataApi dictDataApi;
+    @Resource
+    private AdminUserApi adminUserApi;
+    @Resource
+    private GovernmentInformationSubmissionMapper govMapper;
+
+    @Override
+    public Map<String, Object> getFormParams(String flowInstanceId, String userId) {
+        if (StringUtils.isNotBlank(SecurityFrameworkUtils.getLoginUserId())) {
+            userId = SecurityFrameworkUtils.getLoginUserId();
+        }
+        CommonResult<IFlowInstance> flowResult = workflowClient.flowInstance(flowInstanceId);
+        if (flowResult.isSuccess()) {
+            IFlowInstance flowInstance = flowResult.getData();
+            GovernmentInformationSubmission entity = findByInstanceId(flowInstanceId);
+            if (Objects.isNull(entity)) {
+                entity = new GovernmentInformationSubmission();
+                entity.setInstanceId(flowInstanceId);
+                entity.setSubmitNumber(flowInstance.getCode());
+                entity.setCreateTime(LocalDateTime.now());
+                entity.setIsvalid(1);
+                CommonResult<AdminUserRespDTO> result = adminUserApi.getUser(userId);
+                if (result.isSuccess()) {
+                    entity.setSubmitter(result.getData().getNickname());
+                    entity.setSubmitDepartment(result.getData().getDeptName());
+                    entity.setSubmitDate(new Date());
+                }
+                govMapper.insert(entity);
+            }
+            return createMap(flowInstanceId, entity, userId);
+        }
+        return createModelMap();
+    }
+
+    @Override
+    public GovernmentInformationSubmission findByInstanceId(String flowInstanceId) {
+        return govMapper.findByInstanceId(flowInstanceId);
+    }
+
+    @Override
+    public void updateGovernmentInformation(GovernmentInformationSubmissionVO updateReqVO) {
+        validateExists(updateReqVO.getId());
+        GovernmentInformationSubmission submission = BeanUtil.copyProperties(updateReqVO, GovernmentInformationSubmission.class);
+        govMapper.updateById(submission);
+    }
+
+    @Override
+    public void deleteGovernmentInformation(String id) {
+        validateExists(id);
+        govMapper.deleteById(id);
+    }
+
+    private Map<String, Object> createMap(String flowInstanceId, GovernmentInformationSubmission entity, String userId) {
+        Map<String, Object> map = new HashMap<>();
+        map.put("formEntity", entity);
+//        List<Select> purchasingList = SelectConvert.INSTANCE.convertList(dictDataApi.getDictDataList(DictConstants.PURCHASING_METHOD).getCheckedData());
+//        map.put("purchasingList", JSON.toJSONString(purchasingList));
+//        String projectInstanceId = entity.getProjectInstanceId();
+//        List<String> periodList = paymentMapper.getPeriodList(new LambdaQueryWrapper<InstallmentPayment>().eq(InstallmentPayment::getProjectInstanceId, projectInstanceId));
+//        map.put("periodList", JSON.toJSONString(periodList));
+        return map;
+    }
+
+    private Map<String, Object> createModelMap() {
+        Map<String, Object> map = new HashMap<>();
+        map.put("formEntity", new HashMap<>());
+        return map;
+    }
+
+    /**
+     * 根据ID判断数据是否存在
+     *
+     * @param id
+     */
+    private void validateExists(String id) {
+        if (govMapper.selectById(id) == null) {
+            throw exception(APPLICATION_INFO_NOT_EXISTS);
+        }
+    }
+
+}

+ 75 - 0
zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/flow/GovernmentInformationSubmission/vo/GovernmentInformationSubmissionVO.java

@@ -0,0 +1,75 @@
+package com.zjugis.module.business.flow.GovernmentInformationSubmission.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * @author: Fuwb
+ * @date: 2025/5/19
+ * @time: 10:27
+ * @description:
+ */
+@Data
+public class GovernmentInformationSubmissionVO implements Serializable {
+    private static final long serialVersionUID = -5283420252140218609L;
+
+    private String id;
+
+    /**
+     * 流程ID
+     */
+    private String instanceId;
+
+    /**
+     * 投稿编号
+     */
+    private String submitNumber;
+
+    /**
+     * 标题
+     */
+    private String title;
+
+    /**
+     * 投稿人
+     */
+    private String submitter;
+
+    /**
+     * 投稿部门
+     */
+    private String submitDepartment;
+
+    /**
+     * 投稿日期
+     */
+    private String submitDate;
+
+    /**
+     * 是否录用
+     */
+    private String isUsed;
+
+    /**
+     * 首页显示
+     */
+    private String isHomepageDisplay;
+
+    /**
+     * 发布平台
+     */
+    private String releasePlatform;
+
+    /**
+     * 发布时间
+     */
+    private String releaseTime;
+
+    /**
+     * 投稿类型
+     */
+    private String submissionType;
+
+}

+ 19 - 0
zjugis-module-business/zjugis-module-business-biz/src/main/java/com/zjugis/module/business/mapper/GovernmentInformationSubmissionMapper.java

@@ -0,0 +1,19 @@
+package com.zjugis.module.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zjugis.framework.mybatis.core.query.LambdaQueryWrapperX;
+import com.zjugis.module.business.flow.GovernmentInformationSubmission.entity.GovernmentInformationSubmission;
+
+/**
+ * 政务信息投稿表 Mapper 接口
+ *
+ * @author fuwb
+ * @since 2025-05-19
+ */
+public interface GovernmentInformationSubmissionMapper extends BaseMapper<GovernmentInformationSubmission> {
+
+    default GovernmentInformationSubmission findByInstanceId(String flowInstanceId) {
+        return selectOne(new LambdaQueryWrapperX<GovernmentInformationSubmission>().eqIfPresent(GovernmentInformationSubmission::getInstanceId, flowInstanceId));
+    }
+
+}

+ 4 - 0
zjugis-module-business/zjugis-module-business-biz/src/main/resources/mapper/GovernmentInformationSubmissionMapper.xml

@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.zjugis.module.business.mapper.GovernmentInformationSubmissionMapper">
+</mapper>

+ 183 - 0
zjugis-module-business/zjugis-module-business-biz/src/main/resources/templates/GovernmentInformationSubmission/index.ftl

@@ -0,0 +1,183 @@
+<@w.workFlow javascripts=['/GovernmentInformationSubmission/js/index.js','/js/moment.js','/flow/js/formCommon.js','/OwCommon/OwCommon.js']
+styles=[ '/flow/css/formCommon.css','/OwCommon/OwCommon.css' ]>
+    <div class="z-position form-boss ow-tabs" name="createReqVO">
+        <div class="z-form-row" style="display: none;">
+            <input type="text" value="${formEntity.instanceId!}" name="createReqVO$instanceId">
+            <input type="text" value="${formEntity.id!}" name="createReqVO$id">
+            <input type="text" value="${formEntity.submitNumber!}" name="createReqVO$submitNumber">
+        </div>
+
+
+
+        <ul class="ow-tab-nav oa_tabBox">
+            <li z-tabindex="0" class="ow-tab-item on" data-name="jbxx">基础信息</li>
+            <#if WORKFLOW.OPINION! !="">
+                <li z-tabindex="1" class="ow-tab-item" data-name="yj">审批意见</li>
+            </#if>
+        </ul>
+
+
+
+        <div class="ow-tab-scroll z-tab-content">
+            <div class="ow-tab-content on" name="jbxx">
+                <div class="form-title" style="margin-top: 0px;">
+                    <div class="form-icon">
+                        <img src="/imgs/titleIcon.png" alt="">
+                        <span>基本信息</span>
+                    </div>
+                    <div class="form-btn">
+                    </div>
+                </div>
+                <div class="jbxx-box jbxx-box-flex">
+                    <table class="jbxx-table-info">
+                        <tr>
+                            <td class="th">
+                                <div class="form-label">标题:</div>
+                            </td>
+                            <td>
+                                <div class="form-group">
+                                    <div class="form-item">
+                                        <div class="z-comp-input" name="createReqVO$title">
+                                            <input type="text" value="${formEntity.title!}">
+                                        </div>
+                                    </div>
+                                </div>
+                            </td>
+                        </tr>
+                        <tr>
+                            <td class="th">
+                                <div class="form-label">投稿人:</div>
+                            </td>
+                            <td>
+                                <div class="z-form-row">
+                                    <div class="z-form-control z-col-85 z-form-table">
+                                        <div class="z-comp-input" name="createReqVO$submitter">
+                                            <input type="text" value="${formEntity.submitter!}">
+                                        </div>
+                                    </div>
+                                </div>
+                            </td>
+                            <td class="th">
+                                <div class="form-label">投稿部门:</div>
+                            </td>
+                            <td>
+                                <div class="z-form-row">
+                                    <div class="z-form-control z-col-85 z-form-table">
+                                        <div class="z-comp-input" name="createReqVO$submitDepartment">
+                                            <input type="text" value="${formEntity.submitDepartment!}">
+                                        </div>
+                                    </div>
+                                </div>
+                            </td>
+                        </tr>
+                        <tr>
+                            <td class="th">
+                                <div class="form-label">投稿日期:</div>
+                            </td>
+                            <td>
+                                <div class="form-group">
+                                    <div class="form-item">
+                                        <div class="z-comp-datetime" name="createReqVO$submitDate">
+                                            <input type="text" value="${(formEntity.submitDate?string('yyyy-MM-dd HH:mm:ss'))!}">
+                                        </div>
+                                    </div>
+                                </div>
+                            </td>
+                            <td class="th">
+                                <div class="form-label">是否录用:</div>
+                            </td>
+                            <td>
+                                <div class="form-group">
+                                    <div class="form-item">
+                                        <div class="z-comp-input" name="createReqVO$isUsed">
+                                            <input type="text" value="${formEntity.isUsed!}">
+                                        </div>
+                                    </div>
+                                </div>
+                            </td>
+                        </tr>
+                        <tr>
+                            <td class="th">
+                                <div class="form-label">首页显示:</div>
+                            </td>
+                            <td>
+                                <div class="form-group">
+                                    <div class="form-item">
+                                        <div class="z-comp-input" name="createReqVO$isHomepageDisplay">
+                                            <input type="text" value="${formEntity.isHomepageDisplay!}">
+                                        </div>
+                                    </div>
+                                </div>
+                            </td>
+                            <td class="th">
+                                <div class="form-label">发布平台:</div>
+                            </td>
+                            <td>
+                                <div class="form-group">
+                                    <div class="form-item">
+                                        <div class="z-comp-input" name="createReqVO$releasePlatform">
+                                            <input type="text" value="${formEntity.releasePlatform!}">
+                                        </div>
+                                    </div>
+                                </div>
+                            </td>
+                        </tr>
+                        <tr>
+                            <td class="th">
+                                <div class="form-label">发布时间:</div>
+                            </td>
+                            <td>
+                                <div class="form-group">
+                                    <div class="form-item">
+                                        <div class="z-comp-datetime" name="createReqVO$releaseTime">
+                                            <input type="text" value="${(formEntity.releaseTime?string('yyyy-MM-dd HH:mm:ss'))!}">
+                                        </div>
+                                    </div>
+                                </div>
+                            </td>
+                            <td class="th">
+                                <div class="form-label">投稿类型:</div>
+                            </td>
+                            <td>
+                                <div class="form-group">
+                                    <div class="form-item">
+                                        <div class="z-comp-input" name="createReqVO$submissionType">
+                                            <input type="text" value="${formEntity.submissionType!}">
+                                        </div>
+                                    </div>
+                                </div>
+                            </td>
+                        </tr>
+                    </table>
+                </div>
+            </div>
+
+            <#if WORKFLOW.OPINION! !="">
+                <div class="ow-tab-content" name="yj">
+                    <div class="form-title">
+                        <div class="form-icon">
+                            <img src="/imgs/titleIcon.png" alt="">
+                            <span>审批意见</span>
+                        </div>
+                        <div class="form-btn">
+                        </div>
+                    </div>
+                    <div class="qjsjxx-box">
+                        <div class="z-form-wrap" name="opinionsDiv">
+                            <div class="z-form-row"> ${WORKFLOW.OPINION!} </div>
+                        </div>
+                    </div>
+                </div>
+            </#if>
+        </div>
+
+
+    </div>
+    <script language="javascript">
+        ;
+        (function () {
+        })();
+    </script>
+    <style type="text/css">
+    </style>
+</@w.workFlow>

+ 44 - 0
zjugis-module-business/zjugis-module-business-biz/src/main/resources/templates/GovernmentInformationSubmission/js/index.js

@@ -0,0 +1,44 @@
+(function () {
+    let flowInstanceId = "";
+    window.onload = function () {
+        flowInstanceId = z.ui.comm.getUrlParam("flowInstanceId");
+        bindEvents();
+    };
+
+    function bindEvents() {
+        z.workflow.saveBtn.addListener("onSaveClick", submit);
+    }
+
+    function submit(all, istransfer) {
+        var postData = z.ui.form.getFormFields($("[name=createReqVO]"));
+        console.log(postData)
+        if (postData === false) {
+            all({ success: false });
+            return;
+        }
+
+        for (let key of Object.keys(postData)) {
+            let mealName = postData[key];
+            if (key.startsWith("createReqVO")) {
+                postData.createReqVO = mealName;
+            }
+        }
+
+
+//        console.log(JSON.stringify(postData.createReqVO))
+        z.ui.ajax({
+            type: "post",
+            url: "/governmentInformationSubmission/update",
+            data: JSON.stringify(postData.createReqVO),
+
+            contentType: "application/json",
+            success: function () {
+                all({ success: true });
+            },
+            error: function () {
+                all({ success: false });
+            }
+        })
+    }
+
+}());