commit
47d30b6c75
@ -0,0 +1,28 @@
|
||||
package com.dsic.gj_erp.mapper;
|
||||
|
||||
import com.dsic.gj_erp.bean.jhgk.DmYdjh;
|
||||
import com.dsic.gj_erp.pc.Constant;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Mapper
|
||||
public interface KbanMapper {
|
||||
|
||||
//线表重量
|
||||
List<Double> getEveryMonXbzlByNf(String nf);
|
||||
|
||||
//作业计划完成重量
|
||||
List<Map<String,Object>> getEveryCompZlByNf(String from, String to);
|
||||
|
||||
List<Map<String,String>> getEveryKw(String from, String to);
|
||||
|
||||
List<DmYdjh> getZjjhByUserCode(String userCode,String from, String to);
|
||||
|
||||
List<Map<String,Object>> getSb(String day);
|
||||
|
||||
List<DmYdjh> getZyjhDetailBySbCode(String code);
|
||||
|
||||
List<Map<String,Object>> getJhgz(String from, String to);
|
||||
}
|
@ -0,0 +1,117 @@
|
||||
package com.dsic.gj_erp.service;
|
||||
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.dsic.gj_erp.bean.jhgk.DmYdjh;
|
||||
import com.dsic.gj_erp.mapper.KbanMapper;
|
||||
import com.dsic.gj_erp.pc.Constant;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class KbanService {
|
||||
|
||||
private final KbanMapper kbanMapper;
|
||||
|
||||
public List<Map<String,Object>> getJhgz(){
|
||||
DateTime date = DateUtil.date();
|
||||
String from = DateUtil.beginOfMonth(date).toString("yyyy/MM/dd");
|
||||
String to = DateUtil.endOfMonth(date).toString("yyyy/MM/dd");
|
||||
return kbanMapper.getJhgz(from,to);
|
||||
}
|
||||
|
||||
public List<DmYdjh> getZyjhDetailBySbCode(String code){
|
||||
return kbanMapper.getZyjhDetailBySbCode(code);
|
||||
}
|
||||
|
||||
public List<Map<String,Object>> getSb(){
|
||||
DateTime date = DateUtil.date();
|
||||
return kbanMapper.getSb(date.toString("yyyy/MM/dd"));
|
||||
}
|
||||
|
||||
|
||||
public List<DmYdjh> getZjjhByUserCode(String userCode){
|
||||
DateTime date = DateUtil.date();
|
||||
String from = DateUtil.beginOfMonth(date).toString("yyyy/MM/dd");
|
||||
String to = DateUtil.endOfMonth(date).toString("yyyy/MM/dd");
|
||||
return kbanMapper.getZjjhByUserCode(userCode,from,to);
|
||||
}
|
||||
|
||||
/**
|
||||
* 各垮任务情况
|
||||
* 派工,报工,未处理
|
||||
*/
|
||||
public Map<String,Object> getEveryKw(){
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
DateTime date = DateUtil.date();
|
||||
String from = DateUtil.beginOfMonth(date).toString("yyyy/MM/dd");
|
||||
String to = DateUtil.endOfMonth(date).toString("yyyy/MM/dd");
|
||||
List<Map<String, String>> everyKw = kbanMapper.getEveryKw(from, to);
|
||||
AtomicInteger sl=new AtomicInteger(0);
|
||||
AtomicInteger slc=new AtomicInteger(0);
|
||||
AtomicInteger kw2=new AtomicInteger(0);
|
||||
AtomicInteger kw2c=new AtomicInteger(0);
|
||||
AtomicInteger kw3=new AtomicInteger(0);
|
||||
AtomicInteger kw3c=new AtomicInteger(0);
|
||||
AtomicInteger kw4=new AtomicInteger(0);
|
||||
AtomicInteger kw4c=new AtomicInteger(0);
|
||||
everyKw.forEach(item->{
|
||||
int kw = Integer.parseInt(item.get("kw"));
|
||||
int zt = Integer.parseInt(item.get("zt"));
|
||||
if (zt>=11){
|
||||
sl.incrementAndGet();
|
||||
}
|
||||
if (zt>=42){
|
||||
slc.incrementAndGet();
|
||||
}
|
||||
if (kw==2){
|
||||
if (zt>=42){
|
||||
kw2.incrementAndGet();
|
||||
}
|
||||
if (zt==52||zt==62){
|
||||
kw2c.incrementAndGet();
|
||||
}
|
||||
}
|
||||
if (kw==3){
|
||||
if (zt>=42){
|
||||
kw3.incrementAndGet();
|
||||
}
|
||||
if (zt==52||zt==62){
|
||||
kw3c.incrementAndGet();
|
||||
}
|
||||
}
|
||||
if (kw==4){
|
||||
if (zt>=42){
|
||||
kw4.incrementAndGet();
|
||||
}
|
||||
if (zt==52||zt==62){
|
||||
kw4c.incrementAndGet();
|
||||
}
|
||||
}
|
||||
});
|
||||
List<Integer> zsl = Arrays.asList(sl.get(),kw2.get(),kw3.get(),kw4.get());
|
||||
List<Integer> kwc = Arrays.asList(slc.get(),kw2c.get(),kw3c.get(),kw4c.get());
|
||||
List<Integer> wcl = Arrays.asList(sl.get()-slc.get(),kw2.get()-kw2c.get(),kw3.get()-kw3c.get(),kw4.get()-kw4c.get());
|
||||
map.put("zsl",zsl);//总数量
|
||||
map.put("kwc",kwc);//完成数量
|
||||
map.put("wcl",wcl);//未处理
|
||||
return map;
|
||||
}
|
||||
|
||||
public List<Double> getEveryMonXbzlByNf(String nf) {
|
||||
return kbanMapper.getEveryMonXbzlByNf(nf);
|
||||
}
|
||||
|
||||
public List<Map<String,Object>> getEveryCompZlByNf(String nf) {
|
||||
DateTime from = DateUtil.beginOfYear(DateUtil.parse(nf, "yyyy"));
|
||||
DateTime to = DateUtil.endOfYear(DateUtil.parse(nf, "yyyy"));
|
||||
return kbanMapper.getEveryCompZlByNf(from.toString("yyyy/MM/dd"), to.toString("yyyy/MM/dd"));
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,60 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.dsic.gj_erp.mapper.KbanMapper">
|
||||
|
||||
<select id="getEveryMonXbzlByNf" resultType="double">
|
||||
select sum(zl) from dm_xbjh where nf=#{nf} group by yf
|
||||
</select>
|
||||
|
||||
<select id="getEveryCompZlByNf" resultType="map">
|
||||
SELECT MONTH(CAST(qgfkrq AS DATE)) mon,sum(bcshzl) zl from dm_ydjh WHERE qgfkrq BETWEEN #{from} and #{to} group by MONTH(CAST(qgfkrq AS DATE))
|
||||
</select>
|
||||
|
||||
<select id="getEveryKw" resultType="java.util.Map">
|
||||
SELECT
|
||||
zt,SUBSTRING(tzbh,6,1) kw
|
||||
from dm_ydjh WHERE zt>=11 and jssj BETWEEN #{from} and #{to}
|
||||
</select>
|
||||
|
||||
<select id="getZjjhByUserCode" resultType="com.dsic.gj_erp.bean.jhgk.DmYdjh">
|
||||
SELECT
|
||||
*
|
||||
from
|
||||
dm_ydjh
|
||||
WHERE
|
||||
(slfkry =#{userCode} or pwfkry =#{userCode} or llfkry =#{userCode} or qgfkry =#{userCode} or hxfkry =#{userCode})
|
||||
and jssj between #{from} and #{to}
|
||||
</select>
|
||||
|
||||
<select id="getSb" resultType="java.util.Map">
|
||||
SELECT
|
||||
hxsb ,qgsb,
|
||||
case when zt>=42 then sum(1) end p,
|
||||
case when zt>=52 then sum(1) end hx,
|
||||
case when zt>=62 then sum(1) end qg
|
||||
from dm_ydjh WHERE zt>=42 and (hxfkrq=#{day} or qgfkrq=#{day}) group by hxsb ,qgsb,zt
|
||||
</select>
|
||||
|
||||
<select id="getZyjhDetailBySbCode" resultType="com.dsic.gj_erp.bean.jhgk.DmYdjh">
|
||||
select
|
||||
*
|
||||
from
|
||||
dm_ydjh
|
||||
<where>
|
||||
zt>=42 and (hxsb=#{code} or qgsb=#{code})
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<select id="getJhgz" resultType="java.util.Map">
|
||||
SELECT
|
||||
DISTINCT dc_ch ,dc_pl ,min(sljhrq) b ,sum(1) sl,case when isnull(qgfkrq,'')!='' then sum(1) end wcsl,
|
||||
case when isnull(qgfkrq ,'')!='' then max(qgfkrq) else CONVERT(varchar,dateadd(day,14,min(sljhrq)),111) end e
|
||||
from
|
||||
dm_ydjh
|
||||
WHERE
|
||||
jssj BETWEEN #{from} and #{to}
|
||||
group by
|
||||
dc_ch ,dc_pl ,qgfkrq
|
||||
order by dc_ch ,dc_pl
|
||||
</select>
|
||||
</mapper>
|
Loading…
Reference in new issue