Browse Source

【融通小程序】pdf历史记录列表接口,保存租户签名以及签阅状态接口

baiyiwen 4 years ago
parent
commit
4c297ed5d0

+ 12 - 4
src/main/java/com/ebei/device/asset/weixin/contorller/AssetTaskController.java

@@ -1,13 +1,12 @@
 package com.ebei.device.asset.weixin.contorller;
 
 import com.baomidou.mybatisplus.plugins.Page;
+import com.ebei.device.asset.weixin.model.entity.AssetTaskSignFile;
 import com.ebei.device.asset.weixin.model.vo.AssetHistoryTask;
 import com.ebei.device.asset.weixin.service.AssetTaskService;
+import com.ebei.device.asset.weixin.util.ResponseEx;
 import com.ebei.device.asset.weixin.util.ResponsePageEx;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -48,6 +47,15 @@ public class AssetTaskController {
 
     }
 
+    @ApiOperation(value="保存任务签名")
+    @PostMapping("/saveTaskSign")
+    public ResponseEx<Object> saveTaskSign(@RequestBody @ApiParam(name="taskSignFile",value="参数JSON",required=true) AssetTaskSignFile taskSignFile) {
+
+        assetTaskService.saveTaskSign(taskSignFile);
+        return ResponseEx.createSuccess("签名成功");
+
+    }
+
 
 
 }

+ 13 - 0
src/main/java/com/ebei/device/asset/weixin/mapper/AssetTaskSignFileMapper.java

@@ -0,0 +1,13 @@
+package com.ebei.device.asset.weixin.mapper;
+
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.ebei.device.asset.weixin.model.entity.AssetTaskSignFile;
+import org.springframework.stereotype.Repository;
+
+/**
+ * @Description: ${任务签名附件}
+ */
+@Repository
+public interface AssetTaskSignFileMapper extends BaseMapper<AssetTaskSignFile> {
+
+}

+ 13 - 0
src/main/java/com/ebei/device/asset/weixin/mapper/AssetTaskSignStateMapper.java

@@ -0,0 +1,13 @@
+package com.ebei.device.asset.weixin.mapper;
+
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.ebei.device.asset.weixin.model.entity.AssetTaskSignState;
+import org.springframework.stereotype.Repository;
+
+/**
+ * @Description: ${任务审阅状态}
+ */
+@Repository
+public interface AssetTaskSignStateMapper extends BaseMapper<AssetTaskSignState> {
+
+}

+ 56 - 0
src/main/java/com/ebei/device/asset/weixin/model/entity/AssetTaskSignFile.java

@@ -0,0 +1,56 @@
+package com.ebei.device.asset.weixin.model.entity;
+
+import com.baomidou.mybatisplus.activerecord.Model;
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Description: ${任务签名附件}
+ */
+@Data
+@TableName("tbg_asset_task_sign_file")
+@ApiModel("任务签名附件")
+public class AssetTaskSignFile extends Model<AssetTaskSignFile> {
+
+    @ApiModelProperty(hidden = true)
+    @TableId(value = "file_id",type = IdType.ID_WORKER_STR)
+    private String fileId;
+
+    @ApiModelProperty(value = "创建时间")
+    @TableField(value = "create_time")
+    private Date createTime;
+
+    @ApiModelProperty(value = "文件路径")
+    @TableField(value = "file_path")
+    private String filePath;
+
+    @ApiModelProperty(value = "0:正常; 1:源文件未加密,疑似作弊; 2:源文件不存在,上传不成功")
+    @TableField(value = "file_status")
+    private Integer fileStatus;
+
+    @ApiModelProperty(value = "1检查组签字;2受检单位负责人签字")
+    @TableField(value = "file_type")
+    private Integer fileType;
+
+    @ApiModelProperty(value = "所属任务id")
+    @TableField(value = "task_id")
+    private Long taskId;
+
+    public static final int SIGN_CHECK = 1;        //1检查组签字
+    public static final int SIGN_TENANT = 2;       //2受检单位负责人签字
+
+
+
+    @Override
+    protected Serializable pkVal() {
+        return null;
+    }
+}

+ 53 - 0
src/main/java/com/ebei/device/asset/weixin/model/entity/AssetTaskSignState.java

@@ -0,0 +1,53 @@
+package com.ebei.device.asset.weixin.model.entity;
+
+import com.baomidou.mybatisplus.activerecord.Model;
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Description: ${任务租户签阅状态}
+ */
+@Data
+@TableName("tbg_asset_task_sign_state")
+@ApiModel("任务租户签阅状态")
+public class AssetTaskSignState extends Model<AssetTaskSignState> {
+
+    @ApiModelProperty(hidden = true)
+    @TableId(value = "id",type = IdType.AUTO)
+    private Long id;
+
+    @ApiModelProperty(value = "任务Id")
+    @TableField(value = "task_id")
+    private Long taskId;
+
+    @ApiModelProperty(value = "签阅状态")
+    @TableField(value = "sign_state")
+    private Integer signState;
+
+    @ApiModelProperty(value = "签阅时间")
+    @TableField(value = "sign_date")
+    private Date signDate;
+
+    @ApiModelProperty(value = "签阅租户")
+    @TableField(value = "sign_tenant")
+    private Long signTenant;
+
+
+
+    public static final int SIGN_STATE_NO = 1;        //未签阅
+    public static final int SIGN_STATE_YES = 2;        //已签阅
+
+
+    @Override
+    protected Serializable pkVal() {
+        return null;
+    }
+}

+ 2 - 2
src/main/java/com/ebei/device/asset/weixin/model/vo/AssetHistoryTask.java

@@ -17,13 +17,13 @@ public class AssetHistoryTask extends Model<AssetHistoryTask> {
     private Long taskId;
 
     @ApiModelProperty("任务完成时间")
-    private Date completeTime;
+    private String completeTime;
 
     @ApiModelProperty("签阅状态")
     private Integer signState;
 
     @ApiModelProperty("签阅时间")
-    private Date signDate;
+    private String signDate;
 
 
 

+ 4 - 0
src/main/java/com/ebei/device/asset/weixin/service/AssetTaskService.java

@@ -4,6 +4,7 @@ package com.ebei.device.asset.weixin.service;
 import com.baomidou.mybatisplus.plugins.Page;
 import com.baomidou.mybatisplus.service.IService;
 import com.ebei.device.asset.weixin.model.entity.AssetTask;
+import com.ebei.device.asset.weixin.model.entity.AssetTaskSignFile;
 import com.ebei.device.asset.weixin.model.vo.AssetHistoryTask;
 
 import java.util.Map;
@@ -16,4 +17,7 @@ public interface AssetTaskService extends IService<AssetTask> {
 
     Page<AssetHistoryTask> selectAssetTaskList(Page<AssetHistoryTask> page, Map<String, Object> params);
 
+    //保存任务签名
+    void saveTaskSign(AssetTaskSignFile taskSignFile);
+
 }

+ 38 - 0
src/main/java/com/ebei/device/asset/weixin/service/impl/AssetTaskServiceImpl.java

@@ -4,11 +4,17 @@ import com.baomidou.mybatisplus.plugins.Page;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.ebei.device.asset.weixin.auth.AuthUtils;
 import com.ebei.device.asset.weixin.mapper.AssetTaskMapper;
+import com.ebei.device.asset.weixin.mapper.AssetTaskSignFileMapper;
+import com.ebei.device.asset.weixin.mapper.AssetTaskSignStateMapper;
 import com.ebei.device.asset.weixin.model.entity.AssetTask;
+import com.ebei.device.asset.weixin.model.entity.AssetTaskSignFile;
+import com.ebei.device.asset.weixin.model.entity.AssetTaskSignState;
 import com.ebei.device.asset.weixin.model.vo.AssetHistoryTask;
 import com.ebei.device.asset.weixin.service.AssetTaskService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -20,6 +26,12 @@ import java.util.Map;
 public class AssetTaskServiceImpl extends ServiceImpl<AssetTaskMapper, AssetTask> implements AssetTaskService {
 
 
+    @Autowired
+    AssetTaskSignFileMapper assetTaskSignFileMapper;
+    @Autowired
+    AssetTaskSignStateMapper assetTaskSignStateMapper;
+
+
     @Override
     public Page<AssetHistoryTask> selectAssetTaskList(Page<AssetHistoryTask> page, Map<String, Object> params) {
 
@@ -27,4 +39,30 @@ public class AssetTaskServiceImpl extends ServiceImpl<AssetTaskMapper, AssetTask
         List<AssetHistoryTask> list = this.baseMapper.selectAssetTaskList(page,params);
         return page.setRecords(list);
     }
+
+    @Override
+    public void saveTaskSign(AssetTaskSignFile taskSignFile) {
+
+        //将该任务已有的同类型签名删除
+        AssetTaskSignFile assetTaskSignFile = new AssetTaskSignFile();
+        assetTaskSignFile.setTaskId(taskSignFile.getTaskId());
+        assetTaskSignFile.setFileType(taskSignFile.getFileType());
+        AssetTaskSignFile file = assetTaskSignFileMapper.selectOne(assetTaskSignFile);
+        if(file != null){
+            assetTaskSignFileMapper.deleteById(file);
+        }
+
+        Date now = new Date();
+        //保存签名
+        taskSignFile.setCreateTime(now);
+        assetTaskSignFileMapper.insert(taskSignFile);
+
+        //保存审阅状态信息
+        AssetTaskSignState signState = new AssetTaskSignState();
+        signState.setTaskId(taskSignFile.getTaskId());
+        signState.setSignDate(now);
+        signState.setSignState(AssetTaskSignState.SIGN_STATE_YES);
+        signState.setSignTenant(AuthUtils.getUserId());
+        assetTaskSignStateMapper.insert(signState);
+    }
 }

+ 1 - 1
src/main/resources/mapper/AssetProposalMapper.xml

@@ -20,7 +20,7 @@
             p.proposal_state proposalState
         FROM tbg_asset_proposal p
         LEFT JOIN tbb_area ta ON ta.area_id = p.area_id AND ta.state = 1
-        LEFT JOIN user_tab ut ON ut.user_id = p.creator AND ut.state = 1
+        LEFT JOIN tbg_asset_tenant_user ut ON ut.user_id = p.creator AND ut.state = 1
         WHERE p.state = 1
         <if test="params.companyId != null and params.companyId != '' " >
             AND p.company_id = #{params.companyId}

+ 5 - 2
src/main/resources/mapper/AssetTaskMapper.xml

@@ -5,9 +5,12 @@
     <select id="selectAssetTaskList" resultType="com.ebei.device.asset.weixin.model.vo.AssetHistoryTask">
         SELECT
             task.task_id taskId,
-            date_format(task.complete_time,'%Y-%m-%d') completeTime
+            date_format(task.complete_time,'%Y-%m-%d') completeTime,
+            tss.sign_state signState,
+            date_format(tss.sign_date,'%m-%d %H:%i') signDate
         FROM tbg_asset_task task
-        LEFT JOIN tbg_asset_plan plan ON plan.plan_id = task.task_id
+        LEFT JOIN tbg_asset_plan plan ON plan.plan_id = task.plan_id
+        LEFT JOIN tbg_asset_task_sign_state tss ON tss.task_id = task.task_id
         WHERE task.state = 1
         AND task.task_state = 1
         <if test="params.companyId != null and params.companyId != '' " >