1.作业计划执行修改未根据批次派工

master
董哲奇 5 months ago
parent bb26148bc0
commit 5d83ff9435

@ -395,31 +395,44 @@ public class DmYdjh implements Serializable {
public void setZtByZyjhzx(String type){
ZyjhzxEnum zyjhzxEnum = ZyjhzxEnum.valueOf(type);
ZyjhzxEnum zt = ZyjhzxEnum.getEnumByCode(this.zt);
if (zyjhzxEnum==null){
throw new ServiceException(10001,"作业计划执行内容不存在");
}
this.zt=zyjhzxEnum.code;
this.zt=zyjhzxEnum.computeCode<=zt.computeCode?zt.code:zyjhzxEnum.code;
}
@AllArgsConstructor
private enum ZyjhzxEnum{
SLPP("11"), // 上料匹配 比对库存给上垛位
SLFK("21"),
PWPG("31"),
PWFK("32"),
LLPG("41"),
LLFK("42"),
HXPG("51"),
HXFK("52"),
QGPG("61"),
QGFK("62"),
SLPP("11",11), // 上料匹配 比对库存给上垛位
SLFK("21",21),
PWPG("31",31),
PWFK("32",32),
LLPG("41",41),
LLFK("42",42),
HXPG("51",51),
HXFK("52",52),
QGPG("61",61),
QGFK("62",62),
//7预留其他工序
//坡口,曲面,打磨
PK("81"),PKFK("82"), QM("83"),QMFK("84"),DM("85"),DMFK("86"),
WC("99")//完成
PK("81",81),PKFK("82",82), QM("83",83),QMFK("84",84)
,DM("85",85),DMFK("86",86),
WC("99",99)//完成
;
@Getter
public String code;
@Getter
public Integer computeCode;
public static ZyjhzxEnum getEnumByCode(String code){
for (ZyjhzxEnum em:ZyjhzxEnum.values()){
if (em.code.equals(code)){
return em;
}
}
return null;
}
}
}

@ -41,6 +41,50 @@ public class ZyjhController {
private final WebSocketService webSocketService;
/**
* ,,
*/
@GetMapping("getYdjhByZtOrForeman")
public ResultBean<?> getYdjhByZtOrForeman(String zt,String foreman){
List<DmYdjh> list = zyjhService.getYdjhByZtOrForeman(zt, foreman);
return new ResultBean<>(list);
}
/**
*
*/
@GetMapping("getYdjhByZt")
public ResultBean<?> getYdjhByZt(String zt,String wgzt,String wclzt){
return new ResultBean<>(zyjhService.getYdjhByZt(zt,wgzt,wclzt));
}
/**
*
*/
@PostMapping("pgWithForeman")
public ResultBean<?> pgWithForeman(@RequestBody List<PgWithPcDto> list){
for (PgWithPcDto pgWithPcDto : list) {
zyjhService.pgWithForeman(pgWithPcDto);
}
return new ResultBean<>();
}
/**
*
*/
@GetMapping("getForemanByWorker")
public ResultBean<?> getForemanByWorker(String worker){
return new ResultBean<>(zyjhService.getForemanByWorker(worker));
}
/**
*
*/
@GetMapping("getForeman")
public ResultBean<?> getForeman(String zyq){
return new ResultBean<>(zyjhService.getForeman(zyq));
}
/**
* ,&
*/

@ -0,0 +1,15 @@
package com.dsic.gj_erp.controller.zyjh.dto;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class PgWithPcDto {
String foremanId;
String foremanName;
String dcCh;
String dcPl;
String zt;
String zxZtName;
}

@ -65,4 +65,6 @@ public interface DmYdjhMapper extends BaseMapper<DmYdjh> {
List<DmYdjh> getydjhhz(Map map);
List<Map<String,Object>> getWcl();
List<Map<String,Object>> getYdjhByZt(String zt,String wgzt,String wclzt);
}

@ -3,16 +3,22 @@ package com.dsic.gj_erp.service.zyjh;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dsic.gj_erp.bean.jcsj.DmBzry;
import com.dsic.gj_erp.bean.jcsj.DmCbxxp;
import com.dsic.gj_erp.bean.jhgk.DmYdjh;
import com.dsic.gj_erp.controller.zyjh.dto.PgWithPcDto;
import com.dsic.gj_erp.controller.zyjh.dto.ShangLiao;
import com.dsic.gj_erp.mapper.jhgk.DmYdjhMapper;
import com.dsic.gj_erp.service.jcsj.DmBzryService;
import com.dsic.gj_erp.service.jcsj.DmCbxxpService;
import com.google.common.collect.ImmutableMap;
import lombok.AllArgsConstructor;
import lombok.NonNull;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
@ -26,9 +32,71 @@ import java.util.stream.Collectors;
@AllArgsConstructor
public class ZyjhService extends ServiceImpl<DmYdjhMapper,DmYdjh> {
private final DmBzryService bzryService;
private final DmCbxxpService dmCbxxpService;
private final RedisTemplate<String,Object> redisTemplate;
public List<DmYdjh> getYdjhByZtOrForeman(String zt,String foreman){
QueryWrapper<DmYdjh> wrapper = new QueryWrapper<DmYdjh>()
.lt("zt",62);
switch (zt){
case "31":
wrapper.eq("pwpgry",foreman);
break;
case "51":
wrapper.eq("hxpgry",foreman);
break;
case "61":
wrapper.eq("qgpgry",foreman);
break;
}
return list(wrapper);
}
public List<Map<String,Object>> getYdjhByZt(String zt,String wgzt,String wclzt){
return baseMapper.getYdjhByZt(zt,wgzt,wclzt);
}
public void pgWithForeman(PgWithPcDto dto){
LambdaUpdateWrapper<DmYdjh> wrapper = new LambdaUpdateWrapper<DmYdjh>()
.eq(DmYdjh::getDcCh,dto.getDcCh()).eq(DmYdjh::getDcPl,dto.getDcPl()).ge(DmYdjh::getZt,"2");
String pgrq = DateUtil.date().toString("yyyy/MM/dd");
switch (dto.getZt()){
case "21":
wrapper.set(DmYdjh::getPwpgrq,pgrq).set(DmYdjh::getPwpgry,dto.getForemanId());
wrapper.lt(DmYdjh::getZt,"31");//仅处理未派工的数据
break;
case "42":
case "52":
if ("HXPG".equals(dto.getZxZtName())){
wrapper.set(DmYdjh::getHxpgrq,pgrq).set(DmYdjh::getHxpgry,dto.getForemanId());
wrapper.lt(DmYdjh::getZt,"51");//仅处理未派工的数据
}
if ("QGPG".equals(dto.getZxZtName())){
wrapper.set(DmYdjh::getQgpgrq,pgrq).set(DmYdjh::getQgpgry,dto.getForemanId());
wrapper.lt(DmYdjh::getZt,"61");//仅处理未派工的数据
}
break;
}
this.update(wrapper);
}
public DmBzry getForemanByWorker(String worker){
DmBzry one = bzryService.getOne(Wrappers.<DmBzry>lambdaQuery().eq(DmBzry::getUserCode, worker));
if ("1".equals(one.getForeman())){
return one;
}
return bzryService.getOne(Wrappers.<DmBzry>lambdaQuery().eq(DmBzry::getUserCode, one.getForeman()));
}
public List<DmBzry> getForeman(String zyq){
return bzryService.list(Wrappers.<DmBzry>lambdaQuery()
.eq(DmBzry::getForeman, "1").eq(DmBzry::getZyq, zyq));
}
/**
*
*/

@ -902,5 +902,39 @@ where dc_ch=#{dcch} and dc_pl =#{dcpl}
order by dcCh asc ,dcPl desc ,zt
</select>
<select id="getYdjhByZt" resultType="map">
select
dc_ch dcCh,dc_pl dcPl,count(1) total,
<if test="wgzt=='62'">
sum(case when isnull(qgfkry,'')='' then 1 else 0 end) wwg,
sum(case when isnull(qgfkry,'')!='' then 1 else 0 end) comp,
</if>
<if test="wgzt=='52'">
sum(case when isnull(hxfkry,'')='' then 1 else 0 end) wwg,
sum(case when isnull(hxfkry,'')!='' then 1 else 0 end) comp,
</if>
<if test="wgzt=='32'">
sum(case when isnull(pwfkry,'')='' then 1 else 0 end) wwg,
sum(case when isnull(pwfkry,'')!='' then 1 else 0 end) comp,
</if>
<if test="zt!=null and zt!=''">
sum(case when zt=#{zt} then 1 else 0 end) compOnLastGx,
</if>
<if test="wgzt=='62'">
sum(case when isnull(qgpgry,'')='' then 1 else 0 end) wpg
</if>
<if test="wgzt=='52'">
sum(case when isnull(hxpgry,'')='' then 1 else 0 end) wpg
</if>
<if test="wgzt=='32'">
sum(case when isnull(pwpgry,'')='' then 1 else 0 end) wpg
</if>
from
dm_ydjh
where zt>=2 and zt&lt;=62
group by dc_ch, dc_pl
order by dc_ch,dc_pl
</select>
</mapper>

Loading…
Cancel
Save