ludc
2025-01-16 986aa62ed00bee39363bab41b4eeb8259d446efd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
package com.vci.server.workflow.server.template;
 
import java.util.List;
 
import org.hibernate.HibernateException;
 
import com.vci.common.objects.UserEntity;
import com.vci.server.base.persistence.dao.BaseService;
import com.vci.server.base.persistence.dao.HibernateCallback;
import com.vci.server.base.persistence.dao.HibernateTemplate;
import com.vci.server.workflow.dao.TaskCCDaoImpl;
import com.vci.server.workflow.objects.TaskCCSObject;
 
public class TaskCCService extends BaseService {
 
    public TaskCCService(UserEntity userEntity) {
        super(userEntity);
    }
 
    public TaskCCService() {
    }
    
    /**
     * 保存抄送人
     * @param object
     * @return
     */
    public boolean saveTaskCCInfo(final TaskCCSObject[] objects){
        return (Boolean)new HibernateTemplate().run(new HibernateCallback(){
            public Object execute() throws HibernateException {
                TaskCCDaoImpl impl = new TaskCCDaoImpl();
                for(TaskCCSObject object : objects){
                    impl.saveOrUpdate(object);
                }
                return true;
            }
        });
    }
 
    /**
     * 获得候选人信息
     * @param jbpmDeploymentId
     * @return
     */
    @SuppressWarnings("unchecked")
    public List<TaskCCSObject> getTaskCCInfos(final String jbpmDeploymentId){
        return (List<TaskCCSObject>)new HibernateTemplate().run(new HibernateCallback(){
            public Object execute() throws HibernateException {
                TaskCCDaoImpl impl = new TaskCCDaoImpl();
                String hql = "from TaskCCSObject t where t.jbpmdeploymentid = ?";
                return impl.createQueryList(hql, new Object[]{jbpmDeploymentId});
            }
        });
    }
    
    /**
     * 通过用户名和任务名称获取抄送人信息
     * @param jbpmDeploymentId
     * @param taskName
     * @param userName
     * @return
     */
    public List<TaskCCSObject> getTaskCCInfosByUserName(final String userName){
        return (List<TaskCCSObject>)new HibernateTemplate().run(new HibernateCallback(){
            public Object execute() throws HibernateException {
                TaskCCDaoImpl impl = new TaskCCDaoImpl();
                String hql = "from TaskCCSObject t where p.cc = ?";
                return impl.createQueryList(hql, new Object[]{userName});
            }
        });
    }
    /**
     * 修改抄送人
     * @param objects
     * @return
     */
    public boolean updateTaskCC(final TaskCCSObject[] objects){
        return (Boolean)new HibernateTemplate().run(new HibernateCallback(){
            public Object execute() throws HibernateException {
                TaskCCDaoImpl impl = new TaskCCDaoImpl();
                for(TaskCCSObject object : objects){
//                object.setUserEntity(userEntity);
                    TaskCCSObject objGet = impl.getById(object.getId());
                    if(objGet == null){
                        impl.saveOrUpdate(object);
                    }else{
//                    objGet.setUserEntity(userEntity);
                        objGet.setId(object.getId());
                        objGet.setAssigner(object.getAssigner());
                        objGet.setCc(object.getCc());
                        objGet.setJbpmdeploymentid(object.getJbpmdeploymentid());
                        objGet.setTaskname(object.getTaskname());
                        impl.saveOrUpdate(objGet);
                    }
                }
                return true;
            }
        });
    }
 
 
    /**
     * 删除抄送人
     * @param jbpmDeploymentId
     * @param userName 
     * @return
     */
    public boolean deleteTaskCC(final String jbpmDeploymentId, final String userName) {
        return (Boolean)new HibernateTemplate().run(new HibernateCallback(){
            public Object execute() throws HibernateException {
                TaskCCDaoImpl impl = new TaskCCDaoImpl();
                String hql = "delete TaskCCSObject p where p.t.jbpmDeploymentId = ? and p.cc = ?";
//                impl.deleteQueryObject(hql, new String[]{executionid}, userEntity);
                impl.createQuery(hql, new String[]{jbpmDeploymentId,userName});
                return true;
            }
        });
    }
 
}