XkzyxWebService.java 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527
  1. package com.cxfws.gkjyxkgl.service.impl;
  2. import java.sql.Timestamp;
  3. import java.text.SimpleDateFormat;
  4. import java.util.ArrayList;
  5. import java.util.Date;
  6. import java.util.LinkedList;
  7. import java.util.List;
  8. import javax.annotation.Resource;
  9. import javax.jws.WebService;
  10. import javax.persistence.criteria.CriteriaBuilder;
  11. import javax.persistence.criteria.CriteriaBuilder.In;
  12. import javax.persistence.criteria.CriteriaQuery;
  13. import javax.persistence.criteria.Predicate;
  14. import javax.persistence.criteria.Root;
  15. import javax.xml.ws.WebServiceContext;
  16. import org.springframework.beans.BeanUtils;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.data.jpa.domain.Specification;
  19. import org.springframework.stereotype.Service;
  20. import com.cxfws.config.utils.CxfwsUtils;
  21. import com.cxfws.gkjyxkgl.service.IXkzyxWebService;
  22. import com.cxfws.gkjyxkgl.service.vo.XkzyxfVo;
  23. import com.xt.jygl.accessory.entity.AccessoryEntity;
  24. import com.xt.jygl.accessory.service.AccessoryService;
  25. import com.xt.jygl.common.BaseWebCtl;
  26. import com.xt.jygl.common.Constants;
  27. import com.xt.jygl.gkjcxx.gk.entity.GkEntity;
  28. import com.xt.jygl.gkjcxx.gk.service.GkService;
  29. import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
  30. import com.xt.jygl.gkjcxx.gq.service.GqService;
  31. import com.xt.jygl.gkjcxx.mt.entity.MtEntity;
  32. import com.xt.jygl.gkjcxx.mt.service.MtService;
  33. import com.xt.jygl.gkjcxx.zyq.entity.ZyqEntity;
  34. import com.xt.jygl.gkjcxx.zyq.service.ZyqService;
  35. import com.xt.jygl.gkjygl.gkjyr.jyrbw.service.BwService;
  36. import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.entity.BwEntity;
  37. import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.entity.GkjyrEntity;
  38. import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.service.GkjyrService;
  39. import com.xt.jygl.gkjygl.gkjyr.xkzxx.entity.XkzxxEntity;
  40. import com.xt.jygl.gkjygl.gkjyr.xkzxx.service.XkzxxService;
  41. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxkbg.service.XkzbgService;
  42. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxkbg.service.XkzbgfjService;
  43. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.entity.XkzjyfwEntity;
  44. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.entity.XkzsqglbEntity;
  45. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.entity.XkzsqzscsEntity;
  46. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.entity.XzjydyEntity;
  47. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.service.XkzjyfwService;
  48. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.service.XkzsqService;
  49. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.service.XkzsqfjService;
  50. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.service.XkzsqglbService;
  51. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.service.XkzsqzscsService;
  52. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.service.XzjydyService;
  53. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.vo.XkzsqfjVo;
  54. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxkyx.entity.XkzyxEntity;
  55. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxkyx.entity.XkzyxfjEntity;
  56. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxkyx.service.XkzyxService;
  57. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxkyx.service.XkzyxfjService;
  58. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxkyx.service.XkzyxjdsService;
  59. import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxkyx.vo.XkzyxVo;
  60. import com.xt.jygl.workflow.entity.TaskInfoEntity;
  61. import com.xt.jygl.workflow.service.TaskInfoService;
  62. import com.xt.jygl.workflow.service.WorkflowMangerService;
  63. import com.xtframe.sec.common.BaseEntity;
  64. import com.xtframe.sec.common.QueryService;
  65. import com.xtframe.sec.user.dao.UserDao;
  66. import com.xtframe.sec.user.entity.UserEntity;
  67. import com.xtframe.util.StringUtils;
  68. @Service("xkzyxWebService")
  69. @WebService(targetNamespace = "http://service.web.jsjty.com/", portName = "xkzyxWebServicePort", serviceName = "xkzyxWebService")
  70. public class XkzyxWebService extends BaseWebCtl implements IXkzyxWebService {
  71. @Autowired
  72. private QueryService query;
  73. @Autowired
  74. private GkjyrService gkjyrService;
  75. @Autowired
  76. private AccessoryService accessoryService;
  77. @Autowired
  78. private XkzsqglbService xkzsqglbService;
  79. @Autowired
  80. private XkzsqzscsService xkzsqzscsService;
  81. @Autowired
  82. private XkzyxfjService xkzyxfjService;
  83. @Autowired
  84. private XkzjyfwService xkzjyfwService;
  85. @Autowired
  86. private XkzyxService xkzyxService;
  87. @Autowired
  88. private GkService gkService;
  89. @Autowired
  90. private GqService gqService;
  91. @Autowired
  92. private MtService mtService;
  93. @Autowired
  94. private ZyqService zyqService;
  95. @Autowired
  96. private BwService bwService;
  97. @Autowired
  98. private WorkflowMangerService workService;
  99. @Autowired
  100. private TaskInfoService taskInfoService;
  101. @Autowired
  102. private XkzyxjdsService xkzyxjdsService;
  103. @Autowired
  104. private XkzxxService xkzxxService;
  105. @Autowired
  106. private XzjydyService xzjydyService;
  107. @Autowired
  108. private XkzsqService xkzsqService;
  109. @Autowired
  110. private XkzbgService xkzbgService;
  111. @Autowired
  112. private XkzbgfjService xkzbgfjService;
  113. @Autowired
  114. private XkzsqfjService xkzsqfjService;
  115. @Resource
  116. private WebServiceContext wscontext;
  117. @Autowired
  118. private UserDao userdao;
  119. @Override
  120. public String findXkzyx(final String szdid,final String szgkid,final String szgqid,final String gkjyr,final String fddbr,final String bgdd) {
  121. if (!this.checkUser()){
  122. return BaseWebCtl.NOLOGIN;
  123. }
  124. // 查询条件
  125. Specification<XkzyxEntity> spec = new Specification<XkzyxEntity>() {
  126. @Override
  127. public Predicate toPredicate(Root<XkzyxEntity> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
  128. List<Predicate> list = new ArrayList<Predicate>();
  129. if (StringUtils.isNotEmpty(szdid)) {
  130. list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + szdid + "%"));
  131. }
  132. if (StringUtils.isNotEmpty(szgkid)) {
  133. list.add(cb.like(root.get("szgk").get("id").as(String.class), "%" + szgkid + "%"));
  134. }
  135. if (StringUtils.isNotEmpty(szgqid)) {
  136. list.add(cb.like(root.get("szgq").get("id").as(String.class), "%" + szgqid + "%"));
  137. }
  138. if (StringUtils.isNotEmpty(gkjyr)) {
  139. list.add(cb.like(root.get("jyrmc").as(String.class), "%" + gkjyr + "%"));
  140. }
  141. if (StringUtils.isNotEmpty(fddbr)) {
  142. list.add(cb.like(root.get("fddbr").as(String.class), "%" + fddbr + "%"));
  143. }
  144. if (StringUtils.isNotEmpty(bgdd)) {
  145. list.add(cb.like(root.get("bgdd").as(String.class), "%" + bgdd + "%"));
  146. }
  147. // 经营人只能查看自己企业下的数据,非经营人只能查看自己所在地的数据
  148. if (isJyr()) {
  149. list.add(cb.like(root.get("jyrid").as(String.class), "%" + getSsjyr().getId() + "%"));
  150. } else {
  151. // list.add(cb.like(root.get("szd").get("id").as(String.class),
  152. // "%" + getUser().getSzd().getId() + "%"));
  153. In<String> in = cb.in(root.get("szgq").get("id").as(String.class));
  154. List<String> gqlist = getGq();
  155. if (gqlist != null && gqlist.size() > 0) {
  156. for (int i = 0; i < gqlist.size(); i++) {
  157. in.value(gqlist.get(i));
  158. }
  159. list.add(in);
  160. }
  161. }
  162. list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORD_STATE_DELETE));
  163. return cb.and(list.toArray(new Predicate[] {}));
  164. }
  165. };
  166. List<XkzyxEntity> list = query.findAll(spec,XkzyxEntity.class);
  167. List<XkzyxVo> voList = new ArrayList<XkzyxVo>();
  168. for (XkzyxEntity entity : list) {
  169. XkzyxVo vo = new XkzyxVo();
  170. if (entity != null) {
  171. BeanUtils.copyProperties(entity, vo);
  172. if (entity.getRecordStatus() != 9) {
  173. if ((xkzyxService.getTaskByUserAndBusKey(getUser().getId().toString(), entity.getId().toString()) != null) || xkzyxService.getCandidateTaskByUserAndBusKey(getUser().getId().toString(), entity.getId().toString()) != null) {
  174. List<TaskInfoEntity> lists = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(entity.getId(), XkzyxEntity.PROCESS_DEFINITION_KEY);
  175. if (lists != null & lists.size() > 0) {
  176. TaskInfoEntity taskinfo = lists.get(0);
  177. if ("申请".equals(taskinfo.getCurrName())) {
  178. vo.setTaskState("TH");
  179. } else {
  180. vo.setTaskState(Constants.IS_MY_TASK);
  181. }
  182. }
  183. }
  184. if(!isJyr()){
  185. XkzxxEntity xkz = xkzxxService.findByOpid(entity.getId(), "13");
  186. if (xkz != null) {
  187. vo.setOpflag("1");
  188. }
  189. }
  190. voList.add(vo);
  191. }
  192. }
  193. }
  194. return Object2JsonStr(voList);
  195. }
  196. @Override
  197. public String findOne(String id) {
  198. if (!this.checkUser()){
  199. return BaseWebCtl.NOLOGIN;
  200. }
  201. XkzyxfVo xkzyxfvo = new XkzyxfVo();
  202. String opflag="";
  203. XkzyxEntity xkzyentity = xkzyxService.findOne(id);
  204. List<XkzsqfjVo> qtfjvoList = new ArrayList<XkzsqfjVo>();
  205. List<AccessoryEntity> acclist = accessoryService.queryBySsidAndSstype(id, "xkzyxqtfj");
  206. for (int i = 0; i < acclist.size(); i++) {
  207. XkzsqfjVo vo = new XkzsqfjVo();
  208. vo.setQtfjmc(acclist.get(i).getName());
  209. vo.setQtfjid(acclist.get(i).getId());
  210. qtfjvoList.add(vo);
  211. }
  212. if (xkzyentity != null) {
  213. List<TaskInfoEntity> lists = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(id, XkzyxEntity.PROCESS_DEFINITION_KEY);
  214. if (lists != null & lists.size() > 0) {
  215. TaskInfoEntity taskinfo = lists.get(0);
  216. if ("材料审查".equals(taskinfo.getCurrName())) {
  217. opflag = "1";
  218. } else if ("核查".equals(taskinfo.getCurrName())) {
  219. opflag = "2";
  220. } else if ("复核".equals(taskinfo.getCurrName())) {
  221. opflag = "3";
  222. } else if ("审批".equals(taskinfo.getCurrName())) {
  223. opflag = "4";
  224. }
  225. }
  226. List<XkzjyfwEntity> jyfwlist = xkzjyfwService.findByJyrid(xkzyentity.getJyrid());
  227. List<String> jyfwids = new ArrayList<String>();
  228. String jyfwstr = "";
  229. @SuppressWarnings("unused")
  230. String jydystr = "";
  231. for (int i = 0; i < jyfwlist.size(); i++) {
  232. XkzjyfwEntity entity = jyfwlist.get(i);
  233. jyfwstr += entity.getFjdmc() + entity.getJyfwmc() + "(";
  234. String jydy = "(" + entity.getFjdmc() + entity.getJyfwmc() + ")";
  235. String str = "";
  236. if (!StringUtils.isEmpty(entity.getGkid())) {
  237. GkEntity gk = gkService.findOne(entity.getGkid());
  238. if (gk != null) {
  239. str = str + gk.getGkmc() + ",";
  240. }
  241. }
  242. if (!StringUtils.isEmpty(entity.getGqid())) {
  243. GqEntity gq = gqService.findOne(entity.getGqid());
  244. if (gq != null) {
  245. str = str + gq.getGqmc() + ",";
  246. }
  247. }
  248. if (!StringUtils.isEmpty(entity.getZyqid())) {
  249. ZyqEntity zyq = zyqService.findOne(entity.getZyqid());
  250. if (zyq != null) {
  251. str = str + zyq.getZyqmc() + ",";
  252. }
  253. }
  254. if (!StringUtils.isEmpty(entity.getMtid())) {
  255. MtEntity mt = mtService.findOne(entity.getMtid());
  256. if (mt != null) {
  257. str = str + mt.getMtmc();
  258. }
  259. }
  260. if (!StringUtils.isEmpty(entity.getBwid())) {
  261. BwEntity bw = bwService.findOne(entity.getBwid());
  262. if (bw != null) {
  263. str = str + bw.getBwmc();
  264. }
  265. }
  266. if (str != null && str.endsWith(",")) {
  267. str = str.substring(0, str.length() - 1);
  268. }
  269. jyfwstr = jyfwstr + str + ")<br/>";
  270. jydystr += str + jydy + "<br/>";
  271. jyfwids.add(entity.getJyfwid());
  272. }
  273. List<Integer> list = fjlist(jyfwids);
  274. if (list.size() > 0 && list != null) {
  275. List<XkzsqzscsEntity> fjList = new ArrayList<XkzsqzscsEntity>();
  276. for (int i = 0; i < list.size(); i++) {
  277. XkzsqzscsEntity entity = xkzsqzscsService.findOne(list.get(i).toString());
  278. fjList.add(entity);
  279. }
  280. List<XkzsqfjVo> voList = new ArrayList<XkzsqfjVo>();
  281. List<XkzyxfjEntity> xkzfjList = xkzyxfjService.findBySqid(id);
  282. for (int i = 0; i < fjList.size(); i++) {
  283. XkzsqzscsEntity entity = fjList.get(i);
  284. XkzsqfjVo vo = new XkzsqfjVo();
  285. if (entity != null) {
  286. BeanUtils.copyProperties(entity, vo);
  287. if (entity.getRecordStatus() != 9) {
  288. for (XkzyxfjEntity fj : xkzfjList) {
  289. if ((i + 1) == fj.getSortno()) {
  290. vo.setFjid(fj.getFjid());
  291. vo.setFjmc(fj.getFjmc());
  292. vo.setId(fj.getId());
  293. break;
  294. }
  295. }
  296. voList.add(vo);
  297. }
  298. }
  299. }
  300. xkzyxfvo.setEntitylist(voList);
  301. }
  302. }
  303. xkzyxfvo.setOpflag(opflag);
  304. xkzyxfvo.setXkzyxentity(xkzyentity);
  305. return Object2JsonStr(xkzyxfvo);
  306. }
  307. @Override
  308. public Boolean submit(XkzyxEntity code, String[] jydyids, String accid, String mtids, String bwids, String cgids, String ckids, String dcids, String ryids, String sssbids, String qytzids, String zxjxids) {
  309. if (!this.checkUser()){
  310. return false;
  311. }
  312. UserEntity user = getUser();
  313. XkzyxEntity xkzyxEntity = new XkzyxEntity();
  314. try {
  315. if (!StringUtils.isEmpty(code.getId())) {
  316. xkzyxEntity = xkzyxService.findOne(code.getId());
  317. xkzyxEntity.setBgdd(code.getBgdd());
  318. xkzyxEntity.setFddbr(code.getFddbr());
  319. xkzyxEntity.setLxr(code.getLxr());
  320. xkzyxEntity.setLxdh(code.getLxdh());
  321. xkzyxEntity.setBz(code.getBz());
  322. xkzyxEntity = xkzyxService.submit(xkzyxEntity);
  323. } else {
  324. code.setSqr(user.getName());
  325. Date today = new Date();
  326. code.setSqrq(today);
  327. GkjyrEntity jyr = gkjyrService.findOne(code.getJyrid());
  328. if (jyr != null) {
  329. code.setSzgk(jyr.getSzgk());
  330. code.setSzgq(jyr.getSzgq());
  331. code.setSsgkglbm(jyr.getSsgkglbm());
  332. }
  333. xkzyxEntity = xkzyxService.submit(code);
  334. }
  335. if (!StringUtils.isEmpty(accid)) {
  336. // 关联附件
  337. String[] ssids = accid.split(",");
  338. for (String ssid : ssids) {
  339. XkzyxfjEntity xkzyxfj = xkzyxfjService.findOne(ssid);
  340. if (xkzyxfj != null) {
  341. xkzyxfj.setSqid(xkzyxEntity.getId());
  342. xkzyxfjService.save(xkzyxfj);
  343. }
  344. }
  345. }
  346. // rtx提醒
  347. //rtxSend(xkzyxEntity.getSzgq().getId(), Constants.ROLE_CLSC, "你有一条许可证延续待办事务,请及时处理!");
  348. } catch (Exception e) {
  349. return false;
  350. }
  351. return true;
  352. }
  353. @Override
  354. public Boolean audit(String shyj, String id, boolean flag) {
  355. if (!this.checkUser()){
  356. return false;
  357. }
  358. UserEntity user = getUser();
  359. XkzyxEntity entity = null;
  360. @SuppressWarnings("unused")
  361. String role ="";
  362. try {
  363. entity = xkzyxService.findOne(id);
  364. Date today = new Date();
  365. List<TaskInfoEntity> list = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(id, XkzyxEntity.PROCESS_DEFINITION_KEY);
  366. if (list != null & list.size() > 0) {
  367. TaskInfoEntity taskinfo = list.get(0);
  368. if ("材料审查".equals(taskinfo.getCurrName())) {
  369. entity.setClscyj(StringUtils.isEmpty(shyj) ? "" : shyj);
  370. entity.setClscjbr(user.getName());
  371. entity.setClscrq(today);
  372. role =Constants.ROLE_HC;
  373. } else if ("核查".equals(taskinfo.getCurrName())) {
  374. entity.setHcyj(StringUtils.isEmpty(shyj) ? "" : shyj);
  375. entity.setHcjbr(user.getName());
  376. entity.setHcjbrq(today);
  377. role =Constants.ROLE_FH;
  378. } else if ("复核".equals(taskinfo.getCurrName())) {
  379. entity.setFhyj(StringUtils.isEmpty(shyj) ? "" : shyj);
  380. entity.setFhjbr(user.getName());
  381. entity.setFhrq(today);
  382. role =Constants.ROLE_SP;
  383. } else if ("审批".equals(taskinfo.getCurrName())) {
  384. entity.setSpyj(StringUtils.isEmpty(shyj) ? "" : shyj);
  385. entity.setSpjbr(user.getName());
  386. entity.setSprq(today);
  387. }
  388. xkzyxService.save(entity);
  389. }
  390. } catch (Exception e) {
  391. return false;
  392. }
  393. try {
  394. if (xkzyxService.getCandidateTaskByUserAndBusKey(getUser().getId().toString(), id) != null) {
  395. xkzyxService.claim(id, getUser().getId().toString());
  396. }
  397. boolean jflag = xkzyxService.changeAudit(shyj, entity, flag);
  398. if (jflag) {
  399. // 许可证信息
  400. List<XkzxxEntity> xkzlist = xkzxxService.findByJyrid(entity.getJyrid(), Constants.XKZ_SX);
  401. if (xkzlist != null && xkzlist.size() > 0) {
  402. for (XkzxxEntity xkz : xkzlist) {
  403. if ("1".equals(xkz.getSfyx())) {
  404. xkz.setIsflag("0");
  405. // xkz.setSfyx(Constants.XKZ_WX);
  406. xkz = xkzxxService.save(xkz);
  407. XkzxxEntity xkzxx = new XkzxxEntity();
  408. xkzxx.setCq(xkz.getCq());
  409. xkzxx.setDz(xkz.getDz());
  410. xkzxx.setFddbr(xkz.getFddbr());
  411. xkzxx.setFzjg(xkz.getFzjg());
  412. xkzxx.setFzrq(new Date());
  413. xkzxx.setYxqq(new Date());
  414. xkzxx.setGkjyr(xkz.getGkjyr());
  415. xkzxx.setGkjyxkzh(xkz.getGkjyxkzh());
  416. xkzxx.setGkjyxkzsmj(xkz.getGkjyxkzsmj());
  417. xkzxx.setLxdh(xkz.getLxdh());
  418. xkzxx.setQynbbh(xkz.getQynbbh());
  419. xkzxx.setSpr(user.getName());
  420. xkzxx.setSsgq(xkz.getSsgq());
  421. xkzxx.setSzd(xkz.getSzd());
  422. xkzxx.setZyfs(xkz.getZyfs());
  423. xkzxx.setZyhwpm(xkz.getZyhwpm());
  424. xkzxx.setZyqyfw(xkz.getZyqyfw());
  425. xkzxx.setSzgk(xkz.getSzgk());
  426. //xkzxx.setZmpicid(xkz.getZmpicid());
  427. if (xkz.getYxqz() != null) {
  428. SimpleDateFormat dateTimeFormat = new SimpleDateFormat("yyyy-MM-dd");
  429. String date = dateTimeFormat.format(xkz.getYxqz());
  430. String t = (Integer.parseInt(date.substring(0, 4)) + 3) + date.substring(4);
  431. xkzxx.setYxqz(dateTimeFormat.parse(t));
  432. }
  433. xkzxx.setSfyx("13");// 未生效
  434. xkzxx.setIsflag("0");
  435. xkzxx.setOpid(id);
  436. xkzxxService.save(xkzxx);
  437. }
  438. }
  439. }
  440. // 经营范围
  441. List<XzjydyEntity> xzjydylist = xzjydyService.findJydy(id);
  442. if (xzjydylist.size() > 0 && xzjydylist != null) {
  443. xkzjyfwService.deleteByJyrid(entity.getJyrid());
  444. // 删除后同步修改更新时间
  445. List<XkzjyfwEntity> xkzjys = xkzjyfwService.findByJyrid(entity.getJyrid());
  446. for (XkzjyfwEntity xkzjy : xkzjys) {
  447. xkzjy.setUpdateDateTime(new Timestamp(new Date().getTime()));
  448. xkzjyfwService.save(xkzjy);
  449. }
  450. for (XzjydyEntity xzjydyEntity : xzjydylist) {
  451. if (xzjydyEntity != null) {
  452. // 保存成功后
  453. XkzjyfwEntity jyfw = new XkzjyfwEntity();
  454. jyfw.setJyrid(entity.getJyrid());
  455. jyfw.setFjdid(xzjydyEntity.getFjdid() != null ? xzjydyEntity.getFjdid() : "");
  456. jyfw.setFjdmc(xzjydyEntity.getFjdmc() != null ? xzjydyEntity.getFjdmc() : "");
  457. jyfw.setJyfwid(xzjydyEntity.getJyfwid() != null ? xzjydyEntity.getJyfwid() : "");
  458. jyfw.setJyfwmc(xzjydyEntity.getJyfwmc() != null ? xzjydyEntity.getJyfwmc() : "");
  459. jyfw.setBwid(xzjydyEntity.getBwid() != null ? xzjydyEntity.getBwid() : "");
  460. jyfw.setGkid(xzjydyEntity.getGkid() != null ? xzjydyEntity.getGkid() : "");
  461. jyfw.setGqid(xzjydyEntity.getGqid() != null ? xzjydyEntity.getGqid() : "");
  462. jyfw.setZyqid(xzjydyEntity.getZyqid() != null ? xzjydyEntity.getZyqid() : "");
  463. jyfw.setMtid(xzjydyEntity.getMtid() != null ? xzjydyEntity.getMtid() : "");
  464. xkzjyfwService.save(jyfw);
  465. }
  466. }
  467. }
  468. }else{
  469. // rtx提醒
  470. //rtxSend(entity.getSzgq().getId(), role, "你有一条许可证延续待办事务,请及时处理!");
  471. }
  472. } catch (Exception e) {
  473. return false;
  474. }
  475. return true;
  476. }
  477. // 去重复附件数据
  478. public List<Integer> fjlist(List<String> ids) {
  479. List<Integer> newlist = new ArrayList<Integer>();
  480. List<Integer> relist = new ArrayList<Integer>();
  481. for (int i = 0; i < ids.size(); i++) {
  482. List<XkzsqglbEntity> list = xkzsqglbService.findById(ids.get(i));
  483. if (list != null && list.size() > 0) {
  484. for (XkzsqglbEntity entity : list) {
  485. newlist.add(Integer.parseInt(entity.getFileid()));
  486. }
  487. }
  488. }
  489. if (newlist != null && newlist.size() > 0) {
  490. relist = array_unique(newlist);
  491. }
  492. return relist;
  493. }
  494. public List<Integer> array_unique(List<Integer> slist) {
  495. // array_unique
  496. List<Integer> list = new LinkedList<Integer>();
  497. for (int i = 0; i < slist.size(); i++) {
  498. if (!list.contains(slist.get(i))) {
  499. list.add(slist.get(i));
  500. }
  501. }
  502. return list;
  503. }
  504. public List<String> getGq(){
  505. String userName=CxfwsUtils.userNameFromHeaderInfo(wscontext);
  506. UserEntity userEntity = userdao.findByUname(userName);
  507. List<String> gqlist = gqService.findGqListByUserId(userEntity.getId());
  508. return gqlist;
  509. }
  510. public UserEntity getUser(){
  511. String userName=CxfwsUtils.userNameFromHeaderInfo(wscontext);
  512. UserEntity userEntity = userdao.findByUname(userName);
  513. return userEntity;
  514. }
  515. }