Skip to content
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ target/
.apt_generated
.classpath
.factorypath
.project
.projectPo
.settings
.springBeans
.sts4-cache
Expand Down
42 changes: 21 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,28 +114,28 @@
+ [bin log日志恢复误删数据](https://www.cnblogs.com/dslx/p/11578972.html)

### 前端预览
![01](https://user-images.githubusercontent.com/35565811/147812078-ee6d23d6-183b-46ee-9cab-fa511a9db3e1.png)
![02](https://user-images.githubusercontent.com/35565811/147812086-3de4a6d8-0951-45fa-b954-012c1bdecf0e.png)
![03](https://user-images.githubusercontent.com/35565811/147812088-b7efadb5-4cb7-492b-8b91-3fdcf1d45f33.png)
![04](https://user-images.githubusercontent.com/35565811/147812093-98630a58-0f5c-4f57-b004-e63d017ad573.png)
![05](https://user-images.githubusercontent.com/35565811/147812102-c0d0771b-5260-4475-89fe-6a5ca2e70bc5.png)
![06](https://user-images.githubusercontent.com/35565811/147812111-2b46366e-be0a-4ab1-9790-32e8346afccc.png)
![07](https://user-images.githubusercontent.com/35565811/147812115-381fe5c5-5090-44ba-8adb-fe4126f702b8.png)
![08](https://user-images.githubusercontent.com/35565811/147812121-983cac86-4d19-42c8-8c79-d72117603c46.png)
![09](https://user-images.githubusercontent.com/35565811/147812126-3a237f3d-3305-4428-b9f2-7ad2b36075eb.png)
![10](https://user-images.githubusercontent.com/35565811/147812129-0294e664-6eed-46cf-b04e-128b153b974d.png)
![11](https://user-images.githubusercontent.com/35565811/147812136-f8fea23c-0d52-4af9-a017-cc8cfaf2b4aa.png)
![12](https://user-images.githubusercontent.com/35565811/147812141-fcc1ba3f-5b27-4c92-b311-148117e31aef.png)
![13](https://user-images.githubusercontent.com/35565811/147812148-e3b09cc8-3499-402b-b45c-087d2651b205.png)
![14](https://user-images.githubusercontent.com/35565811/147812150-7f8a93a7-a6b8-4e73-82ab-24d17210b46c.png)
![15](https://user-images.githubusercontent.com/35565811/147812155-ad4aadc4-9e23-4595-983e-7f648cd888cc.png)
![16](https://user-images.githubusercontent.com/35565811/147812167-b1e5ee61-550b-49fe-be29-75db3e656a8c.png)
![17](https://user-images.githubusercontent.com/35565811/147812171-74e74dc2-a89e-4efe-9792-32894b697004.png)
![18](https://user-images.githubusercontent.com/35565811/147812176-5587bd9a-8297-43bf-9941-64204d07f6e6.png)
![19](https://user-images.githubusercontent.com/35565811/147812180-e26104c1-cff6-4faa-b190-bffc4e793b43.png)
![01](https://userPo-images.githubusercontent.com/35565811/147812078-ee6d23d6-183b-46ee-9cab-fa511a9db3e1.png)
![02](https://userPo-images.githubusercontent.com/35565811/147812086-3de4a6d8-0951-45fa-b954-012c1bdecf0e.png)
![03](https://userPo-images.githubusercontent.com/35565811/147812088-b7efadb5-4cb7-492b-8b91-3fdcf1d45f33.png)
![04](https://userPo-images.githubusercontent.com/35565811/147812093-98630a58-0f5c-4f57-b004-e63d017ad573.png)
![05](https://userPo-images.githubusercontent.com/35565811/147812102-c0d0771b-5260-4475-89fe-6a5ca2e70bc5.png)
![06](https://userPo-images.githubusercontent.com/35565811/147812111-2b46366e-be0a-4ab1-9790-32e8346afccc.png)
![07](https://userPo-images.githubusercontent.com/35565811/147812115-381fe5c5-5090-44ba-8adb-fe4126f702b8.png)
![08](https://userPo-images.githubusercontent.com/35565811/147812121-983cac86-4d19-42c8-8c79-d72117603c46.png)
![09](https://userPo-images.githubusercontent.com/35565811/147812126-3a237f3d-3305-4428-b9f2-7ad2b36075eb.png)
![10](https://userPo-images.githubusercontent.com/35565811/147812129-0294e664-6eed-46cf-b04e-128b153b974d.png)
![11](https://userPo-images.githubusercontent.com/35565811/147812136-f8fea23c-0d52-4af9-a017-cc8cfaf2b4aa.png)
![12](https://userPo-images.githubusercontent.com/35565811/147812141-fcc1ba3f-5b27-4c92-b311-148117e31aef.png)
![13](https://userPo-images.githubusercontent.com/35565811/147812148-e3b09cc8-3499-402b-b45c-087d2651b205.png)
![14](https://userPo-images.githubusercontent.com/35565811/147812150-7f8a93a7-a6b8-4e73-82ab-24d17210b46c.png)
![15](https://userPo-images.githubusercontent.com/35565811/147812155-ad4aadc4-9e23-4595-983e-7f648cd888cc.png)
![16](https://userPo-images.githubusercontent.com/35565811/147812167-b1e5ee61-550b-49fe-be29-75db3e656a8c.png)
![17](https://userPo-images.githubusercontent.com/35565811/147812171-74e74dc2-a89e-4efe-9792-32894b697004.png)
![18](https://userPo-images.githubusercontent.com/35565811/147812176-5587bd9a-8297-43bf-9941-64204d07f6e6.png)
![19](https://userPo-images.githubusercontent.com/35565811/147812180-e26104c1-cff6-4faa-b190-bffc4e793b43.png)

![project-detail-1.png](https://i.loli.net/2021/01/11/w8Tr7lUkK1pOaL9.png)
![project-detail-2.png](https://i.loli.net/2021/01/11/UihclBsEJA5wZab.png)
![projectPo-detail-1.png](https://i.loli.net/2021/01/11/w8Tr7lUkK1pOaL9.png)
![projectPo-detail-2.png](https://i.loli.net/2021/01/11/UihclBsEJA5wZab.png)

| <img src="https://i.loli.net/2020/12/12/j4s6RKzX7JTqyiM.png"/> | <img src="https://i.loli.net/2020/12/12/FTiDv3c1HGk5eKM.png"/> | <img src="https://i.loli.net/2020/12/12/GqWDFnU4dLmwXa7.png"/> |
| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ |
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<artifactId>dingtalk</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>dingtalk</name>
<description>Demo project for dingtalk mini program</description>
<description>Demo projectPo for dingtalk mini program</description>

<properties>
<java.version>11</java.version>
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/com/softeng/dingtalk/DingtalkApplication.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.softeng.dingtalk;

import com.fasterxml.jackson.datatype.hibernate5.Hibernate5Module;
import com.softeng.dingtalk.repository.impl.CustomizedRepositoryImpl;
import com.softeng.dingtalk.dao.repository.impl.CustomizedRepositoryImpl;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
Expand All @@ -13,7 +13,7 @@
@EnableCaching
@EnableScheduling
@SpringBootApplication
@MapperScan("com.softeng.dingtalk.mapper")
@MapperScan("com.softeng.dingtalk.dao.mapper")
@EnableJpaRepositories(repositoryBaseClass = CustomizedRepositoryImpl.class)
public class DingtalkApplication {

Expand Down
27 changes: 11 additions & 16 deletions src/main/java/com/softeng/dingtalk/api/OAApi.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,14 @@
import com.dingtalk.api.DefaultDingTalkClient;
import com.dingtalk.api.DingTalkClient;
import com.dingtalk.api.request.OapiProcessInstanceTerminateRequest;
import com.dingtalk.api.request.OapiProcessWorkrecordCreateRequest;
import com.dingtalk.api.request.OapiProcessinstanceCreateRequest;
import com.dingtalk.api.request.OapiProcessinstanceGetRequest;
import com.dingtalk.api.response.OapiProcessInstanceTerminateResponse;
import com.dingtalk.api.response.OapiProcessWorkrecordCreateResponse;
import com.dingtalk.api.response.OapiProcessinstanceCreateResponse;
import com.dingtalk.api.response.OapiProcessinstanceGetResponse;
import com.softeng.dingtalk.entity.AbsentOA;
import com.softeng.dingtalk.entity.User;
import com.softeng.dingtalk.po.AbsentOAPo;
import com.softeng.dingtalk.po.UserPo;
import com.softeng.dingtalk.service.UserService;
import com.taobao.api.ApiException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
Expand All @@ -22,8 +19,6 @@
import org.springframework.web.server.ResponseStatusException;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

@Slf4j
Expand All @@ -33,43 +28,43 @@ public class OAApi extends BaseApi{
UserService userService;
@Value("${OA.askForLeaveProcessCode}")
private String absentOAProcessCode;
public String createAbsentOA(AbsentOA absentOA) {
public String createAbsentOA(AbsentOAPo absentOAPO) {
try {
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/processinstance/create");
OapiProcessinstanceCreateRequest request= new OapiProcessinstanceCreateRequest();
request.setAgentId(BaseApi.AGENTID);
//设置process code
request.setProcessCode(absentOAProcessCode);
request.setOriginatorUserId(userService.getUserid(absentOA.getUser().getId()));
request.setOriginatorUserId(userService.getUserid(absentOAPO.getUser().getId()));
request.setDeptId(-1L);
//设置表单内容
List<OapiProcessinstanceCreateRequest.FormComponentValueVo> form = new ArrayList<>();
OapiProcessinstanceCreateRequest.FormComponentValueVo type = new OapiProcessinstanceCreateRequest.FormComponentValueVo();
form.add(type);
type.setName("请假类型");
type.setValue(absentOA.getType());
type.setValue(absentOAPO.getType());
OapiProcessinstanceCreateRequest.FormComponentValueVo start = new OapiProcessinstanceCreateRequest.FormComponentValueVo();
form.add(start);
start.setName("开始时间");
start.setValue(absentOA.getDingTalkSchedule().getStart().toString());
start.setValue(absentOAPO.getDingTalkSchedule().getStart().toString());
OapiProcessinstanceCreateRequest.FormComponentValueVo end = new OapiProcessinstanceCreateRequest.FormComponentValueVo();
form.add(end);
end.setName("结束时间");
end.setValue(absentOA.getDingTalkSchedule().getEnd().toString());
end.setValue(absentOAPO.getDingTalkSchedule().getEnd().toString());
// OapiProcessinstanceCreateRequest.FormComponentValueVo dayNum = new OapiProcessinstanceCreateRequest.FormComponentValueVo();
// form.add(dayNum);
// dayNum.setName("结束时间");
// dayNum.setValue(absentOA.getDayNum().toString());
OapiProcessinstanceCreateRequest.FormComponentValueVo reason = new OapiProcessinstanceCreateRequest.FormComponentValueVo();
form.add(reason);
reason.setName("请假缘由");
reason.setValue(absentOA.getReason());
reason.setValue(absentOAPO.getReason());
request.setFormComponentValues(form);
//设置审批人
List<OapiProcessinstanceCreateRequest.ProcessInstanceApproverVo> processInstanceApproverVoList = new ArrayList<>();
OapiProcessinstanceCreateRequest.ProcessInstanceApproverVo processInstanceApproverVo = new OapiProcessinstanceCreateRequest.ProcessInstanceApproverVo();
processInstanceApproverVoList.add(processInstanceApproverVo);
request.setApprovers(absentOA.getDingTalkSchedule().getOrganizer().getUserid());
request.setApprovers(absentOAPO.getDingTalkSchedule().getOrganizer().getUserid());
OapiProcessinstanceCreateResponse rsp = client.execute(request, getAccessToken());
return rsp.getProcessInstanceId();
} catch (Exception e) {
Expand All @@ -91,15 +86,15 @@ public int getOAOutCome(String processInstanceId) {
}

}
public boolean deleteAbsentOA(String processInstanceId, User user){
public boolean deleteAbsentOA(String processInstanceId, UserPo userPo){
try {
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/process/instance/terminate");
OapiProcessInstanceTerminateRequest req = new OapiProcessInstanceTerminateRequest();
OapiProcessInstanceTerminateRequest.TerminateProcessInstanceRequestV2 processInstanceRequestV2 = new OapiProcessInstanceTerminateRequest.TerminateProcessInstanceRequestV2();
processInstanceRequestV2.setProcessInstanceId(processInstanceId);
processInstanceRequestV2.setIsSystem(false);
processInstanceRequestV2.setRemark("取消请假");
processInstanceRequestV2.setOperatingUserid(user.getUserid());
processInstanceRequestV2.setOperatingUserid(userPo.getUserid());
req.setRequest(processInstanceRequestV2);
OapiProcessInstanceTerminateResponse rsp = client.execute(req,getAccessToken());
return rsp.getResult();
Expand Down
Loading