|
@@ -1,16 +1,23 @@
|
|
|
package org.jeecg.modules.documents.costLossReview.service.impl;
|
|
|
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import org.jeecg.common.exception.JeecgBootException;
|
|
|
import org.jeecg.modules.documents.costLossReview.entity.CostAllocationReview;
|
|
|
import org.jeecg.modules.documents.costLossReview.entity.FabricLossReview;
|
|
|
+import org.jeecg.modules.documents.costLossReview.entity.SyApprovalHistory;
|
|
|
import org.jeecg.modules.documents.costLossReview.entity.SyCostLossReview;
|
|
|
import org.jeecg.modules.documents.costLossReview.mapper.SyCostLossReviewMapper;
|
|
|
import org.jeecg.modules.documents.costLossReview.service.ISyCostLossReviewService;
|
|
|
+import org.jeecg.modules.report.entity.SyFabricLossReport;
|
|
|
+import org.jeecg.modules.report.service.impl.SyFabricLossReportServiceImpl;
|
|
|
+import org.jeecg.modules.system.util.oConvertUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.util.List;
|
|
|
|
|
@@ -20,11 +27,14 @@ import java.util.List;
|
|
|
* @Date: 2023-03-06
|
|
|
* @Version: V1.0
|
|
|
*/
|
|
|
+@Transactional
|
|
|
@Service
|
|
|
public class SyCostLossReviewServiceImpl extends ServiceImpl<SyCostLossReviewMapper, SyCostLossReview> implements ISyCostLossReviewService {
|
|
|
|
|
|
@Autowired
|
|
|
private SyCostLossReviewMapper syCostLossReviewMapper;
|
|
|
+ @Autowired
|
|
|
+ private SyFabricLossReportServiceImpl syFabricLossReportService;
|
|
|
|
|
|
@Override
|
|
|
public IPage<SyCostLossReview> querylist(SyCostLossReview syCostLossReview,List<String> list, Page<SyCostLossReview> page) {
|
|
@@ -75,4 +85,102 @@ public class SyCostLossReviewServiceImpl extends ServiceImpl<SyCostLossReviewMap
|
|
|
public List<String> queryCodeByPlanTable(String remarks, String planMan) {
|
|
|
return syCostLossReviewMapper.queryCodeByPlanTable(remarks, planMan);
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ * 面损表列表修改审批状态
|
|
|
+ * @param code
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public int cancelSubmission(String code,String stuta,String currentState,SyApprovalHistory syApprovalHistory) {
|
|
|
+ int i = 0;
|
|
|
+
|
|
|
+ if(currentState.equals("取消提交")){
|
|
|
+ if(stuta.equals("提交")){
|
|
|
+ i = syCostLossReviewMapper.cancelSubmission(code,"保存","");
|
|
|
+ this.addSyApprovalHistory(syApprovalHistory);
|
|
|
+ }else{
|
|
|
+ throw new JeecgBootException("取消提交失败,只允许'提交'状态下才能取消提交!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(currentState.equals("提交")){
|
|
|
+
|
|
|
+ QueryWrapper<SyFabricLossReport> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.eq("plan_code",code);
|
|
|
+ List<SyFabricLossReport> list = syFabricLossReportService.list(queryWrapper);
|
|
|
+ if(oConvertUtils.isEmpty(list.get(0).getSubmitDate())){
|
|
|
+ i = syCostLossReviewMapper.submitDateUpdate(code,"提交",syApprovalHistory.getProcessingTime(),syApprovalHistory.getProcessedBy());
|
|
|
+ this.addSyApprovalHistory(syApprovalHistory);
|
|
|
+ }else {
|
|
|
+ i = syCostLossReviewMapper.cancelSubmission(code, "提交", "");
|
|
|
+ this.addSyApprovalHistory(syApprovalHistory);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ String name = syCostLossReviewMapper.querySyApprovalAssignedBy(code);
|
|
|
+ if(oConvertUtils.isNotEmpty(name)){
|
|
|
+ i = syCostLossReviewMapper.cancelSubmission(code, "已指派", "");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(currentState.equals("指派")){
|
|
|
+ i = syCostLossReviewMapper.cancelSubmission(code,"已指派","");
|
|
|
+ this.addSyApprovalHistory(syApprovalHistory);
|
|
|
+ }
|
|
|
+ if(currentState.equals("审批通过")){
|
|
|
+
|
|
|
+ QueryWrapper<SyFabricLossReport> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.eq("plan_code",code);
|
|
|
+ List<SyFabricLossReport> list = syFabricLossReportService.list(queryWrapper);
|
|
|
+ if(oConvertUtils.isEmpty(list.get(0).getFirstApproveDate())){
|
|
|
+ i = syCostLossReviewMapper.firstApproveDateUpdate(code,"完成",syApprovalHistory.getProcessingTime(),syApprovalHistory.getProcessedBy());
|
|
|
+ this.addSyApprovalHistory(syApprovalHistory);
|
|
|
+ }else {
|
|
|
+ i = syCostLossReviewMapper.cancelSubmission(code, "完成", "");
|
|
|
+ this.addSyApprovalHistory(syApprovalHistory);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(currentState.equals("驳回")){
|
|
|
+
|
|
|
+ QueryWrapper<SyFabricLossReport> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.eq("plan_code",code);
|
|
|
+ List<SyFabricLossReport> list = syFabricLossReportService.list(queryWrapper);
|
|
|
+ if(oConvertUtils.isEmpty(list.get(0).getRejectDate())){
|
|
|
+ i = syCostLossReviewMapper.rejectionDateUpdate(code,"返单",syApprovalHistory.getProcessingTime(),syApprovalHistory.getProcessedBy());
|
|
|
+ this.addSyApprovalHistory(syApprovalHistory);
|
|
|
+ }else {
|
|
|
+ i = syCostLossReviewMapper.cancelSubmission(code, "返单", "");
|
|
|
+ this.addSyApprovalHistory(syApprovalHistory);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(currentState.equals("撤销审批")){
|
|
|
+ i = syCostLossReviewMapper.cancelSubmission(code,"保存","");
|
|
|
+ this.addSyApprovalHistory(syApprovalHistory);
|
|
|
+ }
|
|
|
+
|
|
|
+ if(i>0){
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ * 新增审批历史
|
|
|
+ * @param syApprovalHistory
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public int addSyApprovalHistory(SyApprovalHistory syApprovalHistory) {
|
|
|
+
|
|
|
+
|
|
|
+ syApprovalHistory.setId(oConvertUtils.id());
|
|
|
+
|
|
|
+ int i = syCostLossReviewMapper.addSyApprovalHistory(syApprovalHistory);
|
|
|
+
|
|
|
+ if(i>0){
|
|
|
+ return i;
|
|
|
+ }
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
}
|