|
@@ -6,6 +6,8 @@ import cn.ezhizao.common.utils.poi.ExcelUtil;
|
|
|
import cn.ezhizao.framework.aspectj.lang.annotation.Excel;
|
|
|
import cn.ezhizao.framework.aspectj.lang.annotation.Log;
|
|
|
import cn.ezhizao.framework.aspectj.lang.enums.BusinessType;
|
|
|
+import cn.ezhizao.framework.lock.DistributionLock;
|
|
|
+import cn.ezhizao.framework.lock.LockKey;
|
|
|
import cn.ezhizao.framework.web.controller.BaseController;
|
|
|
import cn.ezhizao.framework.web.domain.AjaxResult;
|
|
|
import cn.ezhizao.framework.web.page.TableDataInfo;
|
|
@@ -216,33 +218,43 @@ public class SocialSecurityConfirmController extends BaseController {
|
|
|
@PostMapping("/verify")
|
|
|
@ResponseBody
|
|
|
public AjaxResult verify(@RequestBody BizSocialSecurityConfirmDetail detail) {
|
|
|
- if (detail.getStatus().equals(3)) {
|
|
|
- QueryWrapper<BizSocialSecurityDeclare> qw = new QueryWrapper<>();
|
|
|
- qw.eq("company_id", detail.getCompanyId());
|
|
|
-
|
|
|
- BizSocialSecurityDeclare financialSocialSecurityDeclare = socialSecurityDeclareService.getOne(qw);
|
|
|
- if (financialSocialSecurityDeclare != null) {
|
|
|
- QueryWrapper<BizSocialSecurityDeclareDetail> kqw = new QueryWrapper<>();
|
|
|
- kqw.eq("social_security_declare_id", financialSocialSecurityDeclare.getId());
|
|
|
- kqw.eq("year", detail.getYear());
|
|
|
- kqw.eq("month", detail.getMonth());
|
|
|
- BizSocialSecurityDeclareDetail financialSocialSecurityDeclareDetail =
|
|
|
- socialSecurityDeclareDetailService.getOne(kqw);
|
|
|
- if (financialSocialSecurityDeclareDetail == null) {
|
|
|
- financialSocialSecurityDeclareDetail = new BizSocialSecurityDeclareDetail();
|
|
|
- }
|
|
|
- financialSocialSecurityDeclareDetail.setSocialSecurityDeclareId(financialSocialSecurityDeclare.getId());
|
|
|
- financialSocialSecurityDeclareDetail.setYear(detail.getYear());
|
|
|
- financialSocialSecurityDeclareDetail.setMonth(detail.getMonth());
|
|
|
- financialSocialSecurityDeclareDetail.setCompanyId(detail.getCompanyId());
|
|
|
- financialSocialSecurityDeclareDetail.setStatus(financialSocialSecurityDeclareDetail.getStatus() != null && financialSocialSecurityDeclareDetail.getStatus() > 1 ? financialSocialSecurityDeclareDetail.getStatus() : 1);
|
|
|
-
|
|
|
- if (financialSocialSecurityDeclareDetail.getId() == null) {
|
|
|
- socialSecurityDeclareDetailService.save(financialSocialSecurityDeclareDetail);
|
|
|
- } else {
|
|
|
- socialSecurityDeclareDetailService.updateById(financialSocialSecurityDeclareDetail);
|
|
|
+ String join = LockKey.join(LockKey.REPORTTAXNONZERODETAIL,detail.getSocialSecurityConfirmId(),detail.getYear(),detail.getMonth(),detail.getCompanyId());
|
|
|
+ DistributionLock lock = new DistributionLock(join);
|
|
|
+ try {
|
|
|
+ lock.lock();
|
|
|
+ if (detail.getStatus().equals(3)) {
|
|
|
+ QueryWrapper<BizSocialSecurityDeclare> qw = new QueryWrapper<>();
|
|
|
+ qw.eq("company_id", detail.getCompanyId());
|
|
|
+
|
|
|
+ BizSocialSecurityDeclare financialSocialSecurityDeclare = socialSecurityDeclareService.getOne(qw);
|
|
|
+ if (financialSocialSecurityDeclare != null) {
|
|
|
+ QueryWrapper<BizSocialSecurityDeclareDetail> kqw = new QueryWrapper<>();
|
|
|
+ kqw.eq("social_security_declare_id", financialSocialSecurityDeclare.getId());
|
|
|
+ kqw.eq("year", detail.getYear());
|
|
|
+ kqw.eq("month", detail.getMonth());
|
|
|
+ BizSocialSecurityDeclareDetail financialSocialSecurityDeclareDetail =
|
|
|
+ socialSecurityDeclareDetailService.getOne(kqw);
|
|
|
+ if (financialSocialSecurityDeclareDetail == null) {
|
|
|
+ financialSocialSecurityDeclareDetail = new BizSocialSecurityDeclareDetail();
|
|
|
+ }
|
|
|
+ financialSocialSecurityDeclareDetail.setSocialSecurityDeclareId(financialSocialSecurityDeclare.getId());
|
|
|
+ financialSocialSecurityDeclareDetail.setYear(detail.getYear());
|
|
|
+ financialSocialSecurityDeclareDetail.setMonth(detail.getMonth());
|
|
|
+ financialSocialSecurityDeclareDetail.setCompanyId(detail.getCompanyId());
|
|
|
+ financialSocialSecurityDeclareDetail.setStatus(financialSocialSecurityDeclareDetail.getStatus() != null && financialSocialSecurityDeclareDetail.getStatus() > 1 ? financialSocialSecurityDeclareDetail.getStatus() : 1);
|
|
|
+
|
|
|
+ if (financialSocialSecurityDeclareDetail.getId() == null) {
|
|
|
+ socialSecurityDeclareDetailService.save(financialSocialSecurityDeclareDetail);
|
|
|
+ } else {
|
|
|
+ socialSecurityDeclareDetailService.updateById(financialSocialSecurityDeclareDetail);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return error("审核失败,请不要同时审核");
|
|
|
+ } finally {
|
|
|
+ lock.unlock();
|
|
|
}
|
|
|
return socialSecurityConfirmDetailService.updateById(detail) ? success() : error();
|
|
|
}
|