AdminPreviewApiController.java 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535
  1. package com.goafanti.admin.controller;
  2. import java.util.Calendar;
  3. import javax.annotation.Resource;
  4. import org.springframework.beans.factory.annotation.Value;
  5. import org.springframework.web.bind.annotation.RequestMapping;
  6. import org.springframework.web.bind.annotation.RequestMethod;
  7. import org.springframework.web.bind.annotation.RestController;
  8. import com.goafanti.cognizance.service.OrgActivityCostService;
  9. import com.goafanti.cognizance.service.OrgActivityService;
  10. import com.goafanti.cognizance.service.OrgFinanceService;
  11. import com.goafanti.cognizance.service.OrgHonorDatumService;
  12. import com.goafanti.cognizance.service.OrgIntellectualPropertyService;
  13. import com.goafanti.cognizance.service.OrgRatepayService;
  14. import com.goafanti.cognizance.service.OrgStandardService;
  15. import com.goafanti.cognizance.service.OrgTechAchievementService;
  16. import com.goafanti.cognizance.service.OrgTechCenterDetailService;
  17. import com.goafanti.cognizance.service.OrgTechProductService;
  18. import com.goafanti.common.bo.Result;
  19. import com.goafanti.common.constant.ErrorConstants;
  20. import com.goafanti.common.controller.CertifyApiController;
  21. import com.goafanti.common.enums.AttachmentType;
  22. import com.goafanti.common.model.CopyrightInfo;
  23. import com.goafanti.common.model.OrgActivity;
  24. import com.goafanti.common.model.OrgActivityCost;
  25. import com.goafanti.common.model.OrgFinance;
  26. import com.goafanti.common.model.OrgHonorDatum;
  27. import com.goafanti.common.model.OrgHumanResource;
  28. import com.goafanti.common.model.OrgIntellectualProperty;
  29. import com.goafanti.common.model.OrgRatepay;
  30. import com.goafanti.common.model.OrgStandard;
  31. import com.goafanti.common.model.OrgTechAchievement;
  32. import com.goafanti.common.model.OrgTechCenterDetail;
  33. import com.goafanti.common.model.OrgTechProduct;
  34. import com.goafanti.common.model.PatentInfo;
  35. import com.goafanti.common.model.TechProject;
  36. import com.goafanti.common.utils.SHA256Util;
  37. import com.goafanti.common.utils.StringUtils;
  38. import com.goafanti.copyright.service.CopyrightInfoService;
  39. import com.goafanti.patent.service.PatentInfoService;
  40. import com.goafanti.techproject.service.TechProjectService;
  41. import com.goafanti.user.service.OrgHumanResourceService;
  42. @RestController
  43. @RequestMapping(value = "/api/admin/preview")
  44. public class AdminPreviewApiController extends CertifyApiController {
  45. @Resource
  46. private PatentInfoService patentInfoService;
  47. @Resource
  48. private CopyrightInfoService copyrightInfoService;
  49. @Resource
  50. private TechProjectService techProjectService;
  51. @Resource
  52. private OrgTechCenterDetailService orgTechCenterDetailService;
  53. @Resource
  54. private OrgActivityService orgActivityService;
  55. @Resource
  56. private OrgActivityCostService orgActivityCostService;
  57. @Resource
  58. private OrgTechProductService orgTechProductService;
  59. @Resource
  60. private OrgIntellectualPropertyService orgIntellectualPropertyService;
  61. @Resource
  62. private OrgTechAchievementService orgTechAchievementService;
  63. @Resource
  64. private OrgRatepayService orgRatepayService;
  65. @Resource
  66. private OrgFinanceService orgFinanceService;
  67. @Resource
  68. private OrgHumanResourceService OrgHumanResourceService;
  69. @Resource
  70. private OrgHonorDatumService OrgHonorDatumService;
  71. @Resource
  72. private OrgStandardService orgStandardService;
  73. @Value(value = "${aesSecretKey}")
  74. private String secretKey = null;
  75. /**
  76. * 专利相关材料(专利代理委托书、专利稿件、授权通知书、专利证书、上年度纳税报表)预览授权
  77. *
  78. * @param id
  79. * @param sign
  80. * @param response
  81. * @return
  82. */
  83. @RequestMapping(value = "/patent", method = RequestMethod.GET)
  84. public Result previewPatent(String id, String sign) {
  85. Result res = new Result();
  86. if (StringUtils.isEmpty(id)) {
  87. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "专利ID"));
  88. return res;
  89. }
  90. PatentInfo pi = patentInfoService.selectByPrimaryKey(id);
  91. if (null == pi) {
  92. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "专利ID"));
  93. return res;
  94. }
  95. AttachmentType attachmentType = AttachmentType.getField(sign);
  96. if (attachmentType == AttachmentType.PATENT_PRORY_STATEMENT || attachmentType == AttachmentType.PATENT_WRITING
  97. || attachmentType == AttachmentType.AUTHORIZATION_NOTICE
  98. || attachmentType == AttachmentType.LAST_YEAR_RATEPAY
  99. || attachmentType == AttachmentType.PATENT_CERTIFICATE) {
  100. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  101. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  102. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  103. } else {
  104. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  105. }
  106. return res;
  107. }
  108. /**
  109. * 软著相关材料(软著申请书、软著证书)预览授权
  110. *
  111. * @param id
  112. * @param sign
  113. * @return
  114. */
  115. @RequestMapping(value = "/copyright", method = RequestMethod.GET)
  116. public Result previewCopyright(String id, String sign) {
  117. Result res = new Result();
  118. if (StringUtils.isEmpty(id)) {
  119. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "软著ID"));
  120. return res;
  121. }
  122. CopyrightInfo ci = copyrightInfoService.selectByPrimaryKey(id);
  123. if (null == ci) {
  124. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "软著ID"));
  125. return res;
  126. }
  127. AttachmentType attachmentType = AttachmentType.getField(sign);
  128. if (attachmentType == AttachmentType.COPYRIGHT_AUTH || attachmentType == AttachmentType.COPYRIGHT_APPLY) {
  129. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  130. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  131. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  132. } else {
  133. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  134. }
  135. return res;
  136. }
  137. /**
  138. * 科技项目材料预览授权
  139. *
  140. * @param id
  141. * @param sign
  142. * @return
  143. */
  144. @RequestMapping(value = "/techProject", method = RequestMethod.GET)
  145. public Result previewTechProject(String id, String sign) {
  146. Result res = new Result();
  147. if (StringUtils.isEmpty(id)) {
  148. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "科技项目申报ID"));
  149. return res;
  150. }
  151. TechProject tp = techProjectService.selectByPrimaryKey(id);
  152. if (null == tp) {
  153. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "科技项目申报ID"));
  154. return res;
  155. }
  156. AttachmentType attachmentType = AttachmentType.getField(sign);
  157. if (attachmentType == AttachmentType.TECH_PROJECT) {
  158. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  159. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  160. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  161. } else {
  162. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  163. }
  164. return res;
  165. }
  166. /**
  167. * 企业研发机构-产学研协议附件预览授权
  168. *
  169. * @param id
  170. * @param sign
  171. * @return
  172. */
  173. @RequestMapping(value = "/techCenterDetail", method = RequestMethod.GET)
  174. public Result previewTechCenterDetail(String id, String sign) {
  175. Result res = new Result();
  176. if (StringUtils.isEmpty(id)) {
  177. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "产学研记录ID"));
  178. return res;
  179. }
  180. OrgTechCenterDetail otcd = orgTechCenterDetailService.selectByPrimaryKey(id);
  181. if (null == otcd) {
  182. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "产学研记录ID"));
  183. return res;
  184. }
  185. AttachmentType attachmentType = AttachmentType.getField(sign);
  186. if (attachmentType == AttachmentType.PROTOCOL) {
  187. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  188. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  189. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  190. } else {
  191. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  192. }
  193. return res;
  194. }
  195. /**
  196. * 研发活动立项证明材料预览授权
  197. *
  198. * @param id
  199. * @param sign
  200. * @return
  201. */
  202. @RequestMapping(value = "/activity", method = RequestMethod.GET)
  203. public Result previewActivity(String id, String sign) {
  204. Result res = new Result();
  205. if (StringUtils.isEmpty(id)) {
  206. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "研发活动ID"));
  207. return res;
  208. }
  209. OrgActivity oa = orgActivityService.selectOrgActivityByPrimaryKey(id);
  210. if (null == oa) {
  211. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "研发活动ID"));
  212. return res;
  213. }
  214. AttachmentType attachmentType = AttachmentType.getField(sign);
  215. if (attachmentType == AttachmentType.PROOF) {
  216. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  217. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  218. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  219. } else {
  220. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  221. }
  222. return res;
  223. }
  224. /**
  225. * 研发活动费用台帐预览授权
  226. *
  227. * @param id
  228. * @param sign
  229. * @return
  230. */
  231. @RequestMapping(value = "/activityCost", method = RequestMethod.GET)
  232. public Result previewActivityCost(String id, String sign) {
  233. Result res = new Result();
  234. if (StringUtils.isEmpty(id)) {
  235. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "研发活动费用ID"));
  236. return res;
  237. }
  238. OrgActivityCost oac = orgActivityCostService.selectByPrimaryKey(id);
  239. if (null == oac) {
  240. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "研发活动费用ID"));
  241. return res;
  242. }
  243. AttachmentType attachmentType = AttachmentType.getField(sign);
  244. if (attachmentType == AttachmentType.ACTIVITY_COST_ACCOUNT) {
  245. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  246. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  247. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  248. } else {
  249. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  250. }
  251. return res;
  252. }
  253. /**
  254. * 高新技术产品台帐预览授权
  255. *
  256. * @param id
  257. * @param sign
  258. * @return
  259. */
  260. @RequestMapping(value = "/techProduct", method = RequestMethod.GET)
  261. public Result previewTechProduct(String id, String sign) {
  262. Result res = new Result();
  263. if (StringUtils.isEmpty(id)) {
  264. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "高新技术产品ID"));
  265. return res;
  266. }
  267. OrgTechProduct otp = orgTechProductService.selectByPrimaryKey(id);
  268. if (null == otp) {
  269. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "高新技术产品ID"));
  270. return res;
  271. }
  272. AttachmentType attachmentType = AttachmentType.getField(sign);
  273. if (attachmentType == AttachmentType.TECH_PRODUCT) {
  274. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  275. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  276. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  277. } else {
  278. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  279. }
  280. return res;
  281. }
  282. /**
  283. * 知识产权证书及稿件预览授权
  284. *
  285. * @param id
  286. * @param sign
  287. * @return
  288. */
  289. @RequestMapping(value = "/intellectualProperty", method = RequestMethod.GET)
  290. public Result previewIntellectualProperty(String id, String sign) {
  291. Result res = new Result();
  292. if (StringUtils.isEmpty(id)) {
  293. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "知识产权ID"));
  294. return res;
  295. }
  296. AttachmentType attachmentType = AttachmentType.getField(sign);
  297. if (attachmentType == AttachmentType.PROPERTY_RIGHT) {
  298. OrgIntellectualProperty oip = orgIntellectualPropertyService.selectByPrimaryKey(id);
  299. if (null == oip) {
  300. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "知识产权ID"));
  301. return res;
  302. }
  303. } else if (attachmentType == AttachmentType.PATENT_WRITING) {
  304. PatentInfo pi = patentInfoService.selectByPrimaryKey(id);
  305. if (null == pi) {
  306. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "专利稿件ID"));
  307. return res;
  308. }
  309. } else if (attachmentType == AttachmentType.COPYRIGHT_APPLY) {
  310. CopyrightInfo ci = copyrightInfoService.selectByPrimaryKey(id);
  311. if (null == ci) {
  312. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "知识产权申请书ID"));
  313. return res;
  314. }
  315. } else {
  316. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  317. return res;
  318. }
  319. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  320. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  321. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  322. return res;
  323. }
  324. /**
  325. * 科技成果附件预览授权
  326. *
  327. * @param id
  328. * @param sing
  329. * @return
  330. */
  331. @RequestMapping(value = "/achievement", method = RequestMethod.GET)
  332. public Result previewAchievement(String id, String sign) {
  333. Result res = new Result();
  334. if (StringUtils.isEmpty(id)) {
  335. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "科技成果ID"));
  336. return res;
  337. }
  338. OrgTechAchievement ota = orgTechAchievementService.selectByPrimaryKey(id);
  339. if (null == ota) {
  340. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "科技成果ID"));
  341. return res;
  342. }
  343. AttachmentType attachmentType = AttachmentType.getField(sign);
  344. if (attachmentType == AttachmentType.ACHIEVEMENT) {
  345. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  346. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  347. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  348. } else {
  349. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  350. }
  351. return res;
  352. }
  353. /**
  354. * 所得税纳税申报表预览授权
  355. *
  356. * @param id
  357. * @param sign
  358. * @return
  359. */
  360. @RequestMapping(value = "/ratepay", method = RequestMethod.GET)
  361. public Result previewRatepay(String id, String sign) {
  362. Result res = new Result();
  363. if (StringUtils.isEmpty(id)) {
  364. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "纳税申报表ID"));
  365. return res;
  366. }
  367. OrgRatepay ratepay = orgRatepayService.selectByPrimaryKey(id);
  368. if (null == ratepay) {
  369. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "纳税申报表ID"));
  370. return res;
  371. }
  372. AttachmentType attachmentType = AttachmentType.getField(sign);
  373. if (attachmentType == AttachmentType.RATEPAY) {
  374. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  375. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  376. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  377. } else {
  378. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  379. }
  380. return res;
  381. }
  382. /**
  383. * 财务报表预览授权
  384. *
  385. * @param id
  386. * @param sign
  387. * @return
  388. */
  389. @RequestMapping(value = "/finance", method = RequestMethod.GET)
  390. public Result previewFinance(String id, String sign) {
  391. Result res = new Result();
  392. if (StringUtils.isEmpty(id)) {
  393. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "财务报表ID"));
  394. return res;
  395. }
  396. OrgFinance of = orgFinanceService.selectByPrimaryKey(id);
  397. if (null == of) {
  398. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "财务报表ID"));
  399. return res;
  400. }
  401. AttachmentType attachmentType = AttachmentType.getField(sign);
  402. if (attachmentType == AttachmentType.FINANCE) {
  403. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  404. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  405. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  406. } else {
  407. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  408. }
  409. return res;
  410. }
  411. /**
  412. * 人力资源情况预览授权
  413. *
  414. * @param id
  415. * @param sign
  416. * @return
  417. */
  418. @RequestMapping(value = "/humanResource", method = RequestMethod.GET)
  419. public Result previewHumanResource(String id, String sign) {
  420. Result res = new Result();
  421. if (StringUtils.isEmpty(id)) {
  422. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "人力资源ID"));
  423. return res;
  424. }
  425. OrgHumanResource ohr = OrgHumanResourceService.selectByPrimaryKey(id);
  426. if (null == ohr) {
  427. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "人力资源ID"));
  428. return res;
  429. }
  430. AttachmentType attachmentType = AttachmentType.getField(sign);
  431. if (attachmentType == AttachmentType.ROSTER || attachmentType == AttachmentType.SOCIAL_SECURITY) {
  432. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  433. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  434. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  435. } else {
  436. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  437. }
  438. return res;
  439. }
  440. /**
  441. * 企业荣誉及其他证明材料预览授权
  442. *
  443. * @param id
  444. * @param sign
  445. * @return
  446. */
  447. @RequestMapping(value = "/honor", method = RequestMethod.GET)
  448. public Result previewHonor(String id, String sign) {
  449. Result res = new Result();
  450. if (StringUtils.isEmpty(id)) {
  451. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "企业荣誉及其他证明材料ID"));
  452. return res;
  453. }
  454. OrgHonorDatum ohd = OrgHonorDatumService.selectByPrimaryKey(id);
  455. if (null == ohd) {
  456. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "企业荣誉及其他证明材料ID"));
  457. return res;
  458. }
  459. AttachmentType attachmentType = AttachmentType.getField(sign);
  460. if (attachmentType == AttachmentType.HONOR) {
  461. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  462. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  463. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  464. } else {
  465. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  466. }
  467. return res;
  468. }
  469. /**
  470. * 标准制定情况附件预览授权
  471. * @param id
  472. * @param sign
  473. * @return
  474. */
  475. @RequestMapping(value = "/standard", method = RequestMethod.GET)
  476. public Result previewStandard(String id, String sign){
  477. Result res = new Result();
  478. if (StringUtils.isEmpty(id)) {
  479. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "标准制定情况ID"));
  480. return res;
  481. }
  482. OrgStandard os = orgStandardService.selectByPrimaryKey(id);
  483. if (null == os){
  484. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "标准制定情况ID"));
  485. return res;
  486. }
  487. AttachmentType attachmentType = AttachmentType.getField(sign);
  488. if (attachmentType == AttachmentType.STANDARD) {
  489. String time = String.valueOf(Calendar.getInstance().getTime().getTime());
  490. String auth = SHA256Util.toHash(sign + "|" + id + "|" + secretKey, time);
  491. res.setData("sign=" + sign + "&token=" + id + "&auth=" + auth + "&temp=" + time);
  492. } else {
  493. res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "附件标示"));
  494. }
  495. return res;
  496. }
  497. }