This commit is contained in:
parent
f607dcacaa
commit
6a6e31001e
|
|
@ -178,6 +178,12 @@ public class PurchaseController {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@PostMapping("addUnplannedPurchaseData")
|
||||||
|
public ServerResponse addUnplannedPurchaseData(HttpServletRequest request, @RequestParam(value = "file[]", required = false) MultipartFile[] files) {
|
||||||
|
return service.addUnplannedPurchaseData(request, files);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 发货修改数据接口
|
* 发货修改数据接口
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -89,4 +89,7 @@ public class OutPlanVoDetails {
|
||||||
private int hisNum;
|
private int hisNum;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,14 @@
|
||||||
package com.bonus.aqgqj.business.backstage.entity.plan;
|
package com.bonus.aqgqj.business.backstage.entity.plan;
|
||||||
|
|
||||||
import cn.afterturn.easypoi.excel.annotation.Excel;
|
import cn.afterturn.easypoi.excel.annotation.Excel;
|
||||||
|
import com.bonus.aqgqj.business.backstage.entity.OutPlanVoSupInfo;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import org.hibernate.validator.constraints.Length;
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
import javax.validation.constraints.Max;
|
import javax.validation.constraints.Max;
|
||||||
import javax.validation.constraints.Min;
|
import javax.validation.constraints.Min;
|
||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @className:PlanDetailVo
|
* @className:PlanDetailVo
|
||||||
|
|
@ -87,6 +89,39 @@ public class PlanDetailVo {
|
||||||
*/
|
*/
|
||||||
private String projectName;
|
private String projectName;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 出库数量
|
||||||
|
*/
|
||||||
|
private String cgNum;
|
||||||
|
/**
|
||||||
|
* 利库数量
|
||||||
|
*/
|
||||||
|
private String lkNum;
|
||||||
|
/**
|
||||||
|
*出厂日期
|
||||||
|
*/
|
||||||
|
private String ccDay;
|
||||||
|
/**
|
||||||
|
* 检验日期
|
||||||
|
*/
|
||||||
|
private String jyDay;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 出库厂家清单
|
||||||
|
*/
|
||||||
|
private List<OutPlanVoSupInfo> supList;
|
||||||
|
|
||||||
|
private List<String> ids;
|
||||||
|
|
||||||
|
private String param;
|
||||||
|
/**
|
||||||
|
* 历史数量
|
||||||
|
*/
|
||||||
|
private int hisNum;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增条件限制
|
* 新增条件限制
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -70,7 +70,9 @@ public interface PlanApplyMapper {
|
||||||
* @author cwchen
|
* @author cwchen
|
||||||
* @date 2024/11/27 10:50
|
* @date 2024/11/27 10:50
|
||||||
*/
|
*/
|
||||||
void addPlanDetail(@Param("list") List<PlanDetailVo> details, @Param("params") PlanApplyVo data);
|
// void addPlanDetail(@Param("list") List<PlanDetailVo> details, @Param("params") PlanApplyVo data);
|
||||||
|
|
||||||
|
int addPlanDetail(@Param("applyId") Integer applyId, @Param("list") List<PlanDetailVo> list);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 详情-安全工器具明细
|
* 详情-安全工器具明细
|
||||||
|
|
|
||||||
|
|
@ -55,6 +55,10 @@ public interface PurchaseService {
|
||||||
*/
|
*/
|
||||||
ServerResponse addPurchaseData(HttpServletRequest request, MultipartFile[] files);
|
ServerResponse addPurchaseData(HttpServletRequest request, MultipartFile[] files);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
ServerResponse addUnplannedPurchaseData(HttpServletRequest request, MultipartFile[] files);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 采购详情查看
|
* 采购详情查看
|
||||||
* @param data
|
* @param data
|
||||||
|
|
|
||||||
|
|
@ -3,15 +3,22 @@ package com.bonus.aqgqj.business.backstage.service;
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.bonus.aqgqj.business.backstage.entity.*;
|
import com.bonus.aqgqj.business.backstage.entity.*;
|
||||||
|
|
||||||
|
import com.bonus.aqgqj.business.backstage.entity.plan.PlanApplyVo;
|
||||||
|
import com.bonus.aqgqj.business.backstage.entity.plan.PlanAuditRecordVo;
|
||||||
|
import com.bonus.aqgqj.business.backstage.entity.plan.PlanDetailVo;
|
||||||
import com.bonus.aqgqj.business.backstage.mapper.MaTypeMapper;
|
import com.bonus.aqgqj.business.backstage.mapper.MaTypeMapper;
|
||||||
import com.bonus.aqgqj.business.backstage.mapper.PurchaseMapper;
|
import com.bonus.aqgqj.business.backstage.mapper.PurchaseMapper;
|
||||||
import com.bonus.aqgqj.business.backstage.mapper.SupplierMapper;
|
import com.bonus.aqgqj.business.backstage.mapper.SupplierMapper;
|
||||||
|
import com.bonus.aqgqj.business.backstage.mapper.plan.PlanApplyMapper;
|
||||||
|
import com.bonus.aqgqj.business.backstage.mapper.plan.PlanAuditMapper;
|
||||||
|
import com.bonus.aqgqj.business.backstage.service.plan.PlanApplyService;
|
||||||
import com.bonus.aqgqj.business.system.entity.FileUploadVo;
|
import com.bonus.aqgqj.business.system.entity.FileUploadVo;
|
||||||
import com.bonus.aqgqj.business.system.service.FileUploadService;
|
import com.bonus.aqgqj.business.system.service.FileUploadService;
|
||||||
import com.bonus.aqgqj.manager.common.util.DateTimeHelper;
|
import com.bonus.aqgqj.manager.common.util.DateTimeHelper;
|
||||||
import com.bonus.aqgqj.manager.common.util.StringHelper;
|
import com.bonus.aqgqj.manager.common.util.StringHelper;
|
||||||
import com.bonus.aqgqj.manager.common.util.StringUtils;
|
import com.bonus.aqgqj.manager.common.util.StringUtils;
|
||||||
import com.bonus.aqgqj.manager.common.util.UserUtil;
|
import com.bonus.aqgqj.manager.common.util.UserUtil;
|
||||||
|
import com.bonus.aqgqj.manager.security.entity.SelfUserEntity;
|
||||||
import com.bonus.aqgqj.manager.webResult.AjaxResult;
|
import com.bonus.aqgqj.manager.webResult.AjaxResult;
|
||||||
import com.bonus.aqgqj.manager.webResult.ServerResponse;
|
import com.bonus.aqgqj.manager.webResult.ServerResponse;
|
||||||
import com.google.common.collect.Maps;
|
import com.google.common.collect.Maps;
|
||||||
|
|
@ -20,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
|
|
@ -49,6 +57,15 @@ public class PurchaseServiceImpl implements PurchaseService {
|
||||||
@Autowired
|
@Autowired
|
||||||
private MaTypeMapper maTypeMapper;
|
private MaTypeMapper maTypeMapper;
|
||||||
|
|
||||||
|
@Resource(name = "PlanAuditMapper")
|
||||||
|
private PlanAuditMapper planAuditMapper;
|
||||||
|
|
||||||
|
@Resource(name = "PlanApplyService")
|
||||||
|
private PlanApplyService service;
|
||||||
|
|
||||||
|
@Resource(name = "PlanApplyMapper")
|
||||||
|
private PlanApplyMapper planApplyMapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 发货统计
|
* 发货统计
|
||||||
*
|
*
|
||||||
|
|
@ -200,6 +217,7 @@ public class PurchaseServiceImpl implements PurchaseService {
|
||||||
String userId = UserUtil.getLoginUser().getUserId() + "";
|
String userId = UserUtil.getLoginUser().getUserId() + "";
|
||||||
String userName = UserUtil.getLoginUser().getUsername();
|
String userName = UserUtil.getLoginUser().getUsername();
|
||||||
OutPlanVo outPlanVo = JSON.parseObject(params, OutPlanVo.class);
|
OutPlanVo outPlanVo = JSON.parseObject(params, OutPlanVo.class);
|
||||||
|
|
||||||
outPlanVo.setUserName(userName);
|
outPlanVo.setUserName(userName);
|
||||||
outPlanVo.setUpdater(userId);
|
outPlanVo.setUpdater(userId);
|
||||||
outPlanVo.setCreator(userId);
|
outPlanVo.setCreator(userId);
|
||||||
|
|
@ -330,6 +348,182 @@ public class PurchaseServiceImpl implements PurchaseService {
|
||||||
return ServerResponse.createErroe("新增失败");
|
return ServerResponse.createErroe("新增失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ServerResponse addUnplannedPurchaseData(HttpServletRequest request, MultipartFile[] files) {
|
||||||
|
try {
|
||||||
|
String params = request.getParameter("params");
|
||||||
|
if (StringHelper.isEmpty(params)) {
|
||||||
|
return ServerResponse.createErroe("请求参数缺失");
|
||||||
|
}
|
||||||
|
String userId = UserUtil.getLoginUser().getUserId() + "";
|
||||||
|
String userName = UserUtil.getLoginUser().getUsername();
|
||||||
|
OutPlanVo outPlanVo = JSON.parseObject(params, OutPlanVo.class);
|
||||||
|
outPlanVo.setUserName(userName);
|
||||||
|
outPlanVo.setUpdater(userId);
|
||||||
|
outPlanVo.setCreator(userId);
|
||||||
|
|
||||||
|
/*
|
||||||
|
{"projectId":"466","needTime":"2025-07-16","projectPart":"1","applyType":"safety-tool","remark":"1","jsonData":"[{\"modelId\":\"4\",\"type\":\"安全工器具\",\"name\":\"大挂钩\",\"model\":\"60mm\",\"unit\":\"付\",\"needNum\":\"10\",\"backDate\":\"\",\"remark\":\"\"}]"}
|
||||||
|
*/
|
||||||
|
/* List<PlanDetailVo> details = JSON.parseArray(data.getJsonData(), PlanDetailVo.class);*/
|
||||||
|
|
||||||
|
PlanApplyVo planApplyVo = new PlanApplyVo();
|
||||||
|
planApplyVo.setCreator(userName);
|
||||||
|
planApplyVo.setUpdater(userName);
|
||||||
|
planApplyVo.setNeedTime(outPlanVo.getFhDay());
|
||||||
|
planApplyVo.setProjectId(outPlanVo.getProId());
|
||||||
|
planApplyVo.setProjectPart(outPlanVo.getRemark());
|
||||||
|
planApplyVo.setRemark(outPlanVo.getRemark());
|
||||||
|
String code = getCode(planApplyMapper.getTodayPlanNum(planApplyVo));
|
||||||
|
planApplyVo.setCode(code);
|
||||||
|
planApplyVo.setJsonData(JSON.toJSONString( outPlanVo.getDetailsList()));
|
||||||
|
|
||||||
|
service.addApplyPlan(planApplyVo);
|
||||||
|
outPlanVo.setPlanId(String.valueOf(planApplyVo.getId()));
|
||||||
|
if (StringHelper.isEmpty(outPlanVo.getJbUser())) {
|
||||||
|
return ServerResponse.createErroe("请填写经办人");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (StringHelper.isEmpty(outPlanVo.getAddress())) {
|
||||||
|
outPlanVo.setAddress("无");
|
||||||
|
// return ServerResponse.createErroe("请填写收获地址");
|
||||||
|
}
|
||||||
|
if (files == null || files.length < 1) {
|
||||||
|
return ServerResponse.createErroe("请上传附件");
|
||||||
|
}
|
||||||
|
List<OutPlanVoDetails> detailsList = outPlanVo.getDetailsList();
|
||||||
|
|
||||||
|
if (StringUtils.isEmpty(detailsList)) {
|
||||||
|
return ServerResponse.createErroe("发货明细不能为空");
|
||||||
|
}
|
||||||
|
int allCkNum = 0;
|
||||||
|
int allLkNum = 0;
|
||||||
|
SupplierVo supp = new SupplierVo();
|
||||||
|
for (OutPlanVoDetails details : detailsList) {
|
||||||
|
List<OutPlanVoSupInfo> supInfoList = details.getSupList();
|
||||||
|
if (StringUtils.isEmpty(detailsList)) {
|
||||||
|
return ServerResponse.createErroe("厂商数据不能为空");
|
||||||
|
}
|
||||||
|
|
||||||
|
boolean hasDuplicates = supInfoList.stream()
|
||||||
|
.collect(Collectors.groupingBy(OutPlanVoSupInfo::getSupId))
|
||||||
|
.entrySet()
|
||||||
|
.stream()
|
||||||
|
.anyMatch(e -> e.getValue().size() > 1);
|
||||||
|
if (hasDuplicates) {
|
||||||
|
return ServerResponse.createErroe("同一型号厂商不能一致");
|
||||||
|
}
|
||||||
|
details.setProId(outPlanVo.getProId());
|
||||||
|
details.setPlanId(details.getPlanId());
|
||||||
|
int ckNum = 0;
|
||||||
|
int lkNum = 0;
|
||||||
|
//三级
|
||||||
|
int applyNum = mapper.getJsData(outPlanVo.getPlanId());
|
||||||
|
if (applyNum > 0) {
|
||||||
|
return ServerResponse.createErroe("该单子已被结算、不允许再次发货");
|
||||||
|
}
|
||||||
|
String needNum = details.getNeedNum();
|
||||||
|
for (OutPlanVoSupInfo supInfo : supInfoList) {
|
||||||
|
ckNum += supInfo.getCgNum();
|
||||||
|
lkNum += supInfo.getLkNum();
|
||||||
|
supInfo.setPlanId(outPlanVo.getPlanId());
|
||||||
|
supInfo.setProId(outPlanVo.getProId());
|
||||||
|
supInfo.setModelId(details.getModelId());
|
||||||
|
//shu数据校验
|
||||||
|
supp.setContractId(supInfo.getContractId());
|
||||||
|
supp.setModelId(details.getModelId());
|
||||||
|
supp.setSupId(supInfo.getSupId());
|
||||||
|
//验证数据
|
||||||
|
int num = supplierMapper.supCheck(supp);
|
||||||
|
if (num < 1) {
|
||||||
|
return ServerResponse.createErroe(supInfo.getSupName() + "-厂家合同内无此-" + details.getModel() + "-型号设备");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// int needNums=Integer.parseInt(needNum);
|
||||||
|
// if(ckNum+lkNum>needNums){
|
||||||
|
// return ServerResponse.createErroe(details.getName()+"0"+details.getModel()+"发货量超过需求量");
|
||||||
|
// }
|
||||||
|
//数据校验
|
||||||
|
MaTypeVo maTypeVo = new MaTypeVo();
|
||||||
|
maTypeVo.setModelId(details.getModelId());
|
||||||
|
int num = maTypeMapper.maTypeCheck(maTypeVo);
|
||||||
|
if (lkNum > num) {
|
||||||
|
return ServerResponse.createErroe(details.getModel() + "-型号设备的利库量大于库存量,库存不足!");
|
||||||
|
}
|
||||||
|
details.setCgNum(Integer.toString(ckNum));
|
||||||
|
details.setLkNum(Integer.toString(lkNum));
|
||||||
|
allCkNum += ckNum;
|
||||||
|
allLkNum += lkNum;
|
||||||
|
}
|
||||||
|
outPlanVo.setCgNum(allCkNum);
|
||||||
|
outPlanVo.setLkNum(allLkNum);
|
||||||
|
int successNum = mapper.insertPurchaseData(outPlanVo);
|
||||||
|
if (successNum != 1) {
|
||||||
|
return ServerResponse.createErroe("新增数据异常,请稍后重试");
|
||||||
|
}
|
||||||
|
|
||||||
|
List<FileUploadVo> fileList = uploadService.uploadImage(files, outPlanVo.getId(), "st_plan_out", "采购发货附件");
|
||||||
|
if (fileList.size() != files.length) {
|
||||||
|
return ServerResponse.createErroe("文件上传失败!");
|
||||||
|
}
|
||||||
|
|
||||||
|
for (OutPlanVoDetails details : detailsList) {
|
||||||
|
details.setOutId(outPlanVo.getId());
|
||||||
|
details.setDetailId(String.valueOf(planApplyVo.getId()));
|
||||||
|
int num = mapper.insertPurchaseDetailsData(details);
|
||||||
|
if (num != 1) {
|
||||||
|
return ServerResponse.createErroe("新增失败数据异常,请稍后重试");
|
||||||
|
}
|
||||||
|
List<OutPlanVoSupInfo> supInfoList = details.getSupList();
|
||||||
|
int succ = mapper.insertPurchaseDetailsSupData(details, supInfoList);
|
||||||
|
if (succ != supInfoList.size()) {
|
||||||
|
return ServerResponse.createErroe("新增失败数据异常,请稍后重试");
|
||||||
|
}
|
||||||
|
//更新需求
|
||||||
|
mapper.updatePlanDetails(details);
|
||||||
|
//更新库存
|
||||||
|
MaTypeVo maTypeVo = new MaTypeVo();
|
||||||
|
maTypeVo.setModelId(details.getModelId());
|
||||||
|
int nowNum = maTypeMapper.maTypeCheck(maTypeVo);
|
||||||
|
if (nowNum - Integer.parseInt(details.getLkNum()) > 0) {
|
||||||
|
maTypeVo.setStorageNum(nowNum - Integer.parseInt(details.getLkNum()) + "");
|
||||||
|
} else {
|
||||||
|
maTypeVo.setStorageNum("0");
|
||||||
|
}
|
||||||
|
maTypeMapper.updateMatype(maTypeVo);
|
||||||
|
}
|
||||||
|
//跟新计划
|
||||||
|
mapper.updatePlanData(outPlanVo);
|
||||||
|
//修改成功后返回数据
|
||||||
|
outPlanVo.setResultData(outPlanVo.getDetailsList().size() + "");
|
||||||
|
outPlanVo.setResultData2(allCkNum + "");
|
||||||
|
PlanAuditRecordVo vo = new PlanAuditRecordVo();
|
||||||
|
vo.setApplyId(planApplyVo.getId());
|
||||||
|
vo.setAuditType("1");
|
||||||
|
vo.setAuditStatus("2");
|
||||||
|
//修改审核状态
|
||||||
|
planAuditMapper.updatePlanAudit(vo);
|
||||||
|
SelfUserEntity account = UserUtil.getLoginUser();
|
||||||
|
|
||||||
|
for (int i = 2; i < 5; i++) {
|
||||||
|
vo.setAuditType(String.valueOf(i));//审核节点
|
||||||
|
vo.setAuditor(Integer.parseInt(account.getUserId() + ""));
|
||||||
|
vo.setUpdater(Integer.parseInt(account.getUserId() + ""));
|
||||||
|
vo.setAuditName(account.getUsername());
|
||||||
|
vo.setAuditNum(planApplyVo.getAuditNum());
|
||||||
|
planApplyMapper.addPlanRecord(vo);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return ServerResponse.createSuccess("新增成功", outPlanVo);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error(e.toString(), e);
|
||||||
|
}
|
||||||
|
return ServerResponse.createErroe("新增失败");
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改合同接口
|
* 修改合同接口
|
||||||
*
|
*
|
||||||
|
|
@ -617,4 +811,15 @@ public class PurchaseServiceImpl implements PurchaseService {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private static String getCode(int num) {
|
||||||
|
num++;
|
||||||
|
String year = DateTimeHelper.getNowYMD();
|
||||||
|
if (num < 10) {
|
||||||
|
return year + "00" + num;
|
||||||
|
} else if (num < 100) {
|
||||||
|
return year + "0" + num;
|
||||||
|
}
|
||||||
|
return year + num;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -104,7 +104,8 @@ public class PlanApplyServiceImpl implements PlanApplyService {
|
||||||
// 添加计划申请数据
|
// 添加计划申请数据
|
||||||
mapper.addPlanApply(data);
|
mapper.addPlanApply(data);
|
||||||
// 添加安全工器具数据
|
// 添加安全工器具数据
|
||||||
mapper.addPlanDetail(details, data);
|
mapper.addPlanDetail(data.getId(),details);
|
||||||
|
data.setJsonData(JSON.toJSONString(details));
|
||||||
// 添加需求计划申请节点
|
// 添加需求计划申请节点
|
||||||
PlanAuditRecordVo vo = setPlanAuditRecordVoData(data, acount, "0");
|
PlanAuditRecordVo vo = setPlanAuditRecordVoData(data, acount, "0");
|
||||||
vo.setAuditNum(1);
|
vo.setAuditNum(1);
|
||||||
|
|
|
||||||
|
|
@ -41,23 +41,13 @@
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
<!--添加安全工器具数据-->
|
<!--添加安全工器具数据-->
|
||||||
<insert id="addPlanDetail">
|
<insert id="addPlanDetail" useGeneratedKeys="true" keyProperty="list.id">
|
||||||
INSERT INTO st_plan_details
|
INSERT INTO st_plan_details
|
||||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
(apply_id, model_id, need_num, need_day, remark, type, name, model, unit, back_date)
|
||||||
apply_id,
|
|
||||||
model_id,
|
|
||||||
need_num,
|
|
||||||
need_day,
|
|
||||||
remark,
|
|
||||||
type,
|
|
||||||
name,
|
|
||||||
model,
|
|
||||||
unit,
|
|
||||||
back_date
|
|
||||||
</trim>
|
|
||||||
VALUES
|
VALUES
|
||||||
<foreach collection="list" item="item" separator=",">
|
<foreach collection="list" item="item" separator=",">
|
||||||
(#{params.id},#{item.modelId},#{item.needNum},#{item.needDay},#{item.remark},#{item.type},#{item.name},#{item.model},#{item.unit},#{item.backDate})
|
(#{applyId}, #{item.modelId}, #{item.needNum}, #{item.needDay},
|
||||||
|
#{item.remark}, #{item.type}, #{item.name}, #{item.model}, #{item.unit}, #{item.backDate})
|
||||||
</foreach>
|
</foreach>
|
||||||
</insert>
|
</insert>
|
||||||
<!--添加需求计划申请节点-->
|
<!--添加需求计划申请节点-->
|
||||||
|
|
@ -110,24 +100,39 @@
|
||||||
(#{params.id},#{item.modelId},#{item.needNum},#{item.backDate},#{item.remark},#{item.type},#{item.name},#{item.model},#{item.unit})
|
(#{params.id},#{item.modelId},#{item.needNum},#{item.backDate},#{item.remark},#{item.type},#{item.name},#{item.model},#{item.unit})
|
||||||
</if>
|
</if>
|
||||||
<if test="item.id !=null">
|
<if test="item.id !=null">
|
||||||
UPDATE st_plan_details SET need_num = #{item.needNum},back_date = #{item.backDate},remark = #{item.remark}
|
UPDATE st_plan_details SET need_num = #{item.needNum},back_date = #{item.backDate},remark =
|
||||||
|
#{item.remark}
|
||||||
WHERE id = #{item.id}
|
WHERE id = #{item.id}
|
||||||
</if>
|
</if>
|
||||||
</foreach>
|
</foreach>
|
||||||
</insert>
|
</insert>
|
||||||
<!--修改计划申请数据-->
|
<!--修改计划申请数据-->
|
||||||
<update id="editPlanApply">
|
<update id="editPlanApply">
|
||||||
UPDATE st_plan_apply SET project_id = #{projectId},project_part = #{projectPart},project_content = #{projectContent},
|
UPDATE st_plan_apply
|
||||||
need_time = #{needTime},remark = #{remark},updater = #{updater},update_time = #{updateTime},
|
SET project_id = #{projectId},
|
||||||
need_num = #{needNum},audit_num = (audit_num + 1) WHERE id = #{id}
|
project_part = #{projectPart},
|
||||||
|
project_content = #{projectContent},
|
||||||
|
need_time = #{needTime},
|
||||||
|
remark = #{remark},
|
||||||
|
updater = #{updater},
|
||||||
|
update_time = #{updateTime},
|
||||||
|
need_num = #{needNum},
|
||||||
|
audit_num = (audit_num + 1)
|
||||||
|
WHERE id = #{id}
|
||||||
</update>
|
</update>
|
||||||
<!--修改审核状态-->
|
<!--修改审核状态-->
|
||||||
<update id="editAuditStatus">
|
<update id="editAuditStatus">
|
||||||
UPDATE st_plan_apply SET status = '1',status_type = '2' WHERE id = #{id}
|
UPDATE st_plan_apply
|
||||||
|
SET status = '1',
|
||||||
|
status_type = '2'
|
||||||
|
WHERE id = #{id}
|
||||||
</update>
|
</update>
|
||||||
<!--需求计划撤回-->
|
<!--需求计划撤回-->
|
||||||
<update id="withdrawData">
|
<update id="withdrawData">
|
||||||
UPDATE st_plan_apply SET status = '0',status_type = '0' WHERE id = #{id}
|
UPDATE st_plan_apply
|
||||||
|
SET status = '0',
|
||||||
|
status_type = '0'
|
||||||
|
WHERE id = #{id}
|
||||||
</update>
|
</update>
|
||||||
<!--删除安全工器具数据-->
|
<!--删除安全工器具数据-->
|
||||||
<delete id="delPlanDetail">
|
<delete id="delPlanDetail">
|
||||||
|
|
@ -167,11 +172,14 @@
|
||||||
<!--工程下拉选-->
|
<!--工程下拉选-->
|
||||||
<select id="getProSelect" resultType="java.util.Map">
|
<select id="getProSelect" resultType="java.util.Map">
|
||||||
SELECT bid_id AS id, name AS `name`
|
SELECT bid_id AS id, name AS `name`
|
||||||
FROM bm_project WHERE is_active = '1'
|
FROM bm_project
|
||||||
|
WHERE is_active = '1'
|
||||||
</select>
|
</select>
|
||||||
<!--获取今日添加的计划申请数量-->
|
<!--获取今日添加的计划申请数量-->
|
||||||
<select id="getTodayPlanNum" resultType="java.lang.Integer">
|
<select id="getTodayPlanNum" resultType="java.lang.Integer">
|
||||||
SELECT COUNT(*) FROM st_plan_apply WHERE DATE_FORMAT(create_time, '%Y-%m-%d') = CURRENT_DATE
|
SELECT COUNT(*)
|
||||||
|
FROM st_plan_apply
|
||||||
|
WHERE DATE_FORMAT(create_time, '%Y-%m-%d') = CURRENT_DATE
|
||||||
</select>
|
</select>
|
||||||
<!--详情-安全工器具明细-->
|
<!--详情-安全工器具明细-->
|
||||||
<select id="getPlanDetailList" resultType="com.bonus.aqgqj.business.backstage.entity.plan.PlanDetailVo">
|
<select id="getPlanDetailList" resultType="com.bonus.aqgqj.business.backstage.entity.plan.PlanDetailVo">
|
||||||
|
|
@ -230,10 +238,10 @@
|
||||||
spa.create_time AS statrtTime,
|
spa.create_time AS statrtTime,
|
||||||
pu.TELPHONE AS phone
|
pu.TELPHONE AS phone
|
||||||
FROM st_plan_record spr
|
FROM st_plan_record spr
|
||||||
LEFT JOIN pm_user pu on spr.auditor=pu.id
|
LEFT JOIN pm_user pu on spr.auditor = pu.id
|
||||||
LEFT JOIN st_plan_apply spa on spr.apply_id=spa.id
|
LEFT JOIN st_plan_apply spa on spr.apply_id = spa.id
|
||||||
WHERE spr.apply_id=#{id}
|
WHERE spr.apply_id = #{id}
|
||||||
ORDER BY spr.audit_time DESC
|
ORDER BY spr.audit_time , spr.audit_type DESC
|
||||||
</select>
|
</select>
|
||||||
<!--获取安全工器具列表-->
|
<!--获取安全工器具列表-->
|
||||||
<select id="getList" resultType="com.bonus.aqgqj.business.backstage.entity.MaTypeVo">
|
<select id="getList" resultType="com.bonus.aqgqj.business.backstage.entity.MaTypeVo">
|
||||||
|
|
@ -252,7 +260,8 @@
|
||||||
INNER JOIN (
|
INNER JOIN (
|
||||||
SELECT DISTINCT sct.model_id AS modelId
|
SELECT DISTINCT sct.model_id AS modelId
|
||||||
FROM st_contract_type sct
|
FROM st_contract_type sct
|
||||||
INNER JOIN st_contract sc ON sct.contract_id = sc.id AND sc.is_active = '0' AND CURRENT_DATE BETWEEN sc.start_time AND sc.end_time
|
INNER JOIN st_contract sc ON sct.contract_id = sc.id AND sc.is_active = '0' AND CURRENT_DATE BETWEEN
|
||||||
|
sc.start_time AND sc.end_time
|
||||||
) a ON a.modelId = mt.id
|
) a ON a.modelId = mt.id
|
||||||
WHERE mt.level = '3'
|
WHERE mt.level = '3'
|
||||||
<if test="modelName!=null and modelName!=''">
|
<if test="modelName!=null and modelName!=''">
|
||||||
|
|
@ -266,7 +275,9 @@
|
||||||
<select id="getPlanData" resultType="java.lang.Integer">
|
<select id="getPlanData" resultType="java.lang.Integer">
|
||||||
SELECT COUNT(*)
|
SELECT COUNT(*)
|
||||||
FROM st_plan_apply spa
|
FROM st_plan_apply spa
|
||||||
WHERE spa.id = #{id} AND spa.status_type = '2' AND spa.status = '1'
|
WHERE spa.id = #{id}
|
||||||
|
AND spa.status_type = '2'
|
||||||
|
AND spa.status = '1'
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getExist" resultType="com.bonus.aqgqj.business.backstage.entity.MaTypeVo">
|
<select id="getExist" resultType="com.bonus.aqgqj.business.backstage.entity.MaTypeVo">
|
||||||
|
|
@ -282,11 +293,11 @@
|
||||||
FROM st_ma_type mt
|
FROM st_ma_type mt
|
||||||
LEFT JOIN st_ma_type mt2 ON mt.parent_id = mt2.id
|
LEFT JOIN st_ma_type mt2 ON mt.parent_id = mt2.id
|
||||||
LEFT JOIN st_ma_type mt3 ON mt2.parent_id = mt3.id
|
LEFT JOIN st_ma_type mt3 ON mt2.parent_id = mt3.id
|
||||||
INNER JOIN (
|
INNER JOIN (SELECT DISTINCT sct.model_id AS modelId
|
||||||
SELECT DISTINCT sct.model_id AS modelId
|
|
||||||
FROM st_contract_type sct
|
FROM st_contract_type sct
|
||||||
INNER JOIN st_contract sc ON sct.contract_id = sc.id AND sc.is_active = '0' AND CURRENT_DATE BETWEEN sc.start_time AND sc.end_time
|
INNER JOIN st_contract sc ON sct.contract_id = sc.id AND sc.is_active = '0' AND
|
||||||
) a ON a.modelId = mt.id
|
CURRENT_DATE BETWEEN sc.start_time AND sc.end_time) a
|
||||||
|
ON a.modelId = mt.id
|
||||||
WHERE mt.level = '3'
|
WHERE mt.level = '3'
|
||||||
and mt3.name = #{param.type}
|
and mt3.name = #{param.type}
|
||||||
and mt2.name = #{param.name}
|
and mt2.name = #{param.name}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue