diff --git a/src/main/java/com/dsic/gj_erp/bean/jhgk/DmYdjh.java b/src/main/java/com/dsic/gj_erp/bean/jhgk/DmYdjh.java
index c3149ba..cda5b49 100644
--- a/src/main/java/com/dsic/gj_erp/bean/jhgk/DmYdjh.java
+++ b/src/main/java/com/dsic/gj_erp/bean/jhgk/DmYdjh.java
@@ -241,13 +241,106 @@ public class DmYdjh implements Serializable {
     private String jhlx="0";
 
     private String jssjOld;
+
+
+
+
+
     @TableField(exist = false)
     private  PgdTzjh pgdTzjh;
     @TableField(exist = false)
     private  String color;
 
-    private String sljhrq;
-    private String pwpgrq;
+//    private String sljhrq;
+//    private String pwpgrq;
+
+    // 生产状态
+    private String sczt; // 生产状态:编制, 提交, 下达, 上料, 抛丸, 理料, 划线/切割, 完成
+
+    // 小组需求期和大组需求期
+    private String slxzxqrq; // 小组需求期
+    private String sldzxqrq; // 大组需求期
+
+    // 上料信息
+    private Integer slkcdw; // 库存垛位
+    private Integer slcs; // 层数
+    private String slxhth; // 小合同号
+    private String slhth; // 合同号
+    private String slwlh; // 物料号
+    private String slkcxx; // 所有库存信息
+    private String slycldw; // 预处理垛位
+
+    // 派工及反馈
+    private String slpgry; // 派工人
+    private String slfkry; // 上料反馈人
+    private String slfkrq; // 上料时间
+    private String slbz; // 上料备注
+
+    // 抛丸信息
+    private String pwxcldw; // 取自预处理垛位
+    private Integer pwcs; // 取自层数
+    private String pwpgry; // 派工人
+    private String slpgrq; // 上料派工日期
+    private String pwpgrq; // 抛丸派工日期
+    private String pwfkry; // 抛丸反馈人
+    private String pwfkrq; // 抛丸反馈日期
+    private String pwbz; // 抛丸备注
+
+    // 理料信息
+    private String lldw; // 理料垛位
+    private Integer llcs; // 理料层数
+    private String llpgry; // 派工人
+    private String llpgrq; // 派工日期
+    private String llry; // 施工人
+    private String llfkry; // 反馈人
+    private String llfkrq; // 反馈日期
+    private String llbz; // 备注
+
+    // 划线信息
+    private String hxdw; // 取自理料垛位
+    private Integer hxcs; // 取自层数
+    private String hxpgry; // 划线派工人
+    private String hxpgrq; // 划线派工日期
+    private String hxfkrq; // 划线反馈日期
+    private String hxfkry; // 划线反馈人员
+    private String hxjybs; // 划线借用标识
+    private String hxjych; // 划线借用船号
+    private String hxjypl; // 划线借用批量
+    private String hxjyfd; // 划线借用分段
+    private String hxjyzl; // 划线借用组立
+    private String hxjykw; // 划线借用跨位
+    private String hxjytlth; // 划线借用套料图号
+    private String hxbz; // 划线备注
+
+    // 切割信息
+    private String qgdw; // 取自理料垛位
+    private Integer qgcs; // 取自层数
+    private String qgpgry; // 划线派工人
+    private String qgpgrq; // 划线派工日期
+    private String qgfkrq; // 划线反馈日期
+    private String qgfkry; // 划线反馈人员
+    private String qgjybs; // 划线借用标识
+    private String qgjych; // 划线借用船号
+    private String qgjypl; // 划线借用批量
+    private String qgjyfd; // 划线借用分段
+    private String qgjyzl; // 划线借用组立
+    private String qgjykw; // 划线借用跨位
+    private String qgjytlth; // 划线借用套料图号
+    private String qgbz; // 划线备注
+
+    // 标识信息
+    private String qjgbs; // 曲加工标识
+    private String pkbs; // 坡口标识
+    private String ycbs; // 型材标识
+
+    // 计划日期
+    private String hxjhrq; // 划线计划日期
+    private String qgjhrq; // 切割计划日期
+    private String zcljhrq; // 再处理计划日期
+    private String sljhrq; // 上料计划日期
+    private String pwjhrq; // 抛丸计划日期
+    private String lljhrq; // 理料计划日期
+
 
     public void setZtForSl(){
         this.zt=ZyjhzxEnum.SLFK.code;
diff --git a/src/main/java/com/dsic/gj_erp/controller/pgd/PgdTzjhController.java b/src/main/java/com/dsic/gj_erp/controller/pgd/PgdTzjhController.java
index 846dde9..5c04e09 100644
--- a/src/main/java/com/dsic/gj_erp/controller/pgd/PgdTzjhController.java
+++ b/src/main/java/com/dsic/gj_erp/controller/pgd/PgdTzjhController.java
@@ -13,6 +13,7 @@ import com.dsic.gj_erp.bean.jcsj.DmDwxxp;
 import com.dsic.gj_erp.bean.jcsj.EmSbjgry;
 import com.dsic.gj_erp.bean.jhgk.DmTzjh;
 import com.dsic.gj_erp.bean.pgd.PgdTzjh;
+import com.dsic.gj_erp.bean.zyjh.Ycldw;
 import com.dsic.gj_erp.exception.CustomException;
 import com.dsic.gj_erp.service.jcsj.DmBclqjbpService;
 import com.dsic.gj_erp.service.jcsj.DmBclqmxpService;
@@ -21,6 +22,7 @@ import com.dsic.gj_erp.service.jcsj.EmSbjgryService;
 import com.dsic.gj_erp.service.jcsj.impl.DmDwxxpService;
 import com.dsic.gj_erp.service.pgd.PgdTzjhService;
 import com.dsic.gj_erp.service.sy.SYService;
+import com.dsic.gj_erp.service.zyjh.YcldwService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -51,6 +53,9 @@ public class PgdTzjhController {
 
     @Autowired
     DmDwxxpService dwxxpService;
+    @Autowired
+    YcldwService ycldwService;
+
 
 
     @Autowired
@@ -124,9 +129,10 @@ public class PgdTzjhController {
         List<Map> bmbm = syService.em_sbjbb_ZM("bmbm");
         // 多为
         List<DmDwxxp> dwxx = dwxxpService.list();
+        List<Ycldw> ycldws = ycldwService.ycldwList();
         returnMap.put("cbbm", cbbm);
         returnMap.put("gxry", gxry);
-        returnMap.put("dwxx", dwxx);
+        returnMap.put("ycldws", ycldws);
         returnMap.put("bmbm", bmbm);
 
         return new ResultBean(returnMap);
diff --git a/src/main/java/com/dsic/gj_erp/controller/zyjh/ZyjhController.java b/src/main/java/com/dsic/gj_erp/controller/zyjh/ZyjhController.java
index 9797e0e..87413a4 100644
--- a/src/main/java/com/dsic/gj_erp/controller/zyjh/ZyjhController.java
+++ b/src/main/java/com/dsic/gj_erp/controller/zyjh/ZyjhController.java
@@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.dsic.gj_erp.annotation.AuthFunction;
 import com.dsic.gj_erp.bean.ResultBean;
 import com.dsic.gj_erp.bean.jhgk.DmYdjh;
 import com.dsic.gj_erp.bean.zyjh.YcldwInfo;
@@ -18,6 +19,7 @@ import lombok.AllArgsConstructor;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletRequest;
 import java.lang.reflect.Field;
 import java.util.List;
 
@@ -60,6 +62,36 @@ public class ZyjhController {
             throw new ServiceException(10001,"属性字段不存在");
         }
     }
+    @PostMapping("zxweb")
+    public ResultBean<?> zxweb(@RequestBody PgDto dto,HttpServletRequest request) {
+        if (StrUtil.isEmpty(dto.getZxZtName())) {
+            throw new ServiceException(10001,"作业计划执行内容不能为空");
+        }
+        List<DmYdjh> list=dto.getList();
+
+        try {
+            Field field=DmYdjh.class.getDeclaredField(dto.getField());
+            Field fieldry=DmYdjh.class.getDeclaredField(dto.getFieldry());
+            if (ObjUtil.isNotEmpty(field)){
+                field.setAccessible(true);
+                String date=DateUtil.date().toString("yyyy/MM/dd");
+                for(DmYdjh dmYdjh:list){
+                    field.set(dmYdjh,date);
+                    dmYdjh.setZtByZyjhzx(dto.getZxZtName());
+
+                    if(ObjUtil.isNotEmpty(fieldry)){
+                        fieldry.setAccessible(true);
+                        fieldry.set(dmYdjh,request.getAttribute("yhms"));
+                    }
+                }
+
+            }
+            zyjhService.updateBatchById(list);
+            return new ResultBean<>();
+        } catch (NoSuchFieldException | IllegalAccessException e) {
+            throw new ServiceException(10001,"属性字段不存在");
+        }
+    }
 
     /**
      * 派工单查询
@@ -71,6 +103,7 @@ public class ZyjhController {
                 .eq(StrUtil.isNotEmpty(search.getField()),search.getField(),search.getUser())
                 .isNull(StrUtil.isEmpty(search.getField()),search.getField())
                 .eq(StrUtil.isNotEmpty(search.getZt()),"zt",search.getZt())
+                .eq(StrUtil.isNotEmpty(search.getDcch()),"dcch",search.getDcch())
                 .le(StrUtil.isNotEmpty(search.getJhrqField()),search.getJhrqField(), DateUtil.date().toString("yyyy/MM/dd"))
                 //跟踪查询
                 .eq(StrUtil.isNotEmpty(search.getXqrq()),"xqrq",search.getXqrq())
@@ -79,6 +112,22 @@ public class ZyjhController {
     }
 
 
+    @PostMapping("pgdweb")
+    @AuthFunction
+    public ResultBean<?> pgdweb(@RequestBody PgdSearch search){
+        List<DmYdjh> list = zyjhService.list(Wrappers.<DmYdjh>query()
+            //执行查询
+            .eq(StrUtil.isNotEmpty(search.getField()),search.getField(),search.getUser())
+            .eq(StrUtil.isNotEmpty(search.getZt()),"zt",search.getZt())
+            .eq(StrUtil.isNotEmpty(search.getDcch()),"dcch",search.getDcch())
+            .le(StrUtil.isNotEmpty(search.getJhrqField()),search.getJhrqField(), DateUtil.date().toString("yyyy/MM/dd"))
+            //跟踪查询
+            .eq(StrUtil.isNotEmpty(search.getXqrq()),"xqrq",search.getXqrq())
+        );
+        return new ResultBean<>(list);
+    }
+
+
     /**
      * 获取上料计划,所有派工单数据整合到月度计划中统一管理,
      * 单独的派工单页面需要进行调整,从月度计划中获取对应工序数据
@@ -91,7 +140,7 @@ public class ZyjhController {
         }
         List<DmYdjh> list = zyjhService.list(Wrappers.<DmYdjh>lambdaQuery()
                 .le(DmYdjh::getSljhrq, date)
-                .eq(DmYdjh::getZt, "2")
+                .eq(StrUtil.isNotEmpty(search.getZt()),DmYdjh::getZt, search.getZt())
                 .eq(StrUtil.isNotEmpty(search.getDcch()),DmYdjh::getDcCh, search.getDcch())
                 .eq(StrUtil.isNotEmpty(search.getPl()),DmYdjh::getDcPl, search.getPl())
                 .eq(StrUtil.isNotEmpty(search.getKw()),DmYdjh::getKw, search.getKw())
@@ -99,6 +148,22 @@ public class ZyjhController {
         return new ResultBean<>(list);
     }
 
+//    @PostMapping("sljhWeb")
+//    public ResultBean<?> sljhWeb(@RequestBody SljhSearch search){
+//        String date = DateUtil.date().toString("yyyy/MM/dd");
+//        if (StrUtil.isAllNotEmpty(search.getSljhrq())){
+//            date=search.getSljhrq();
+//        }
+//        List<DmYdjh> list = zyjhService.list(Wrappers.<DmYdjh>lambdaQuery()
+//            .le(DmYdjh::getSljhrq, date)
+//            .eq(StrUtil.isNotEmpty(search.getDcch()),DmYdjh::getZt, search.getZt())
+//            .eq(StrUtil.isNotEmpty(search.getDcch()),DmYdjh::getDcCh, search.getDcch())
+//            .eq(StrUtil.isNotEmpty(search.getPl()),DmYdjh::getDcPl, search.getPl())
+//            .eq(StrUtil.isNotEmpty(search.getKw()),DmYdjh::getKw, search.getKw())
+//        );
+//        return new ResultBean<>(list);
+//    }
+
     /**
      * 获取预处理垛位信息
      */
@@ -107,6 +172,53 @@ public class ZyjhController {
         return new ResultBean<>(ycldwService.ycldwList());
     }
 
+
+
+    @PostMapping("slweb")
+    @Transactional(rollbackFor = Exception.class)
+    @AuthFunction
+    public ResultBean<?> slweb(@RequestBody List<DmYdjh> ydjhs, HttpServletRequest request) {
+
+        for(DmYdjh dmYdjh :ydjhs){
+            ShangLiao shangLiao = new ShangLiao();
+            dmYdjh.setSlfkrq(DateUtil.format(DateUtil.date(), "yyyy/MM/dd HH:mm:ss"));
+            dmYdjh.setSlfkry(  (String) request.getAttribute("yhms"));
+            shangLiao.setYdjh(dmYdjh);
+           // shangLiao.setCkwpkwp();
+           // shangLiao.setPgdId();
+            shangLiao.setDwId(dmYdjh.getSlkcdw());
+            shangLiao.setCeng(dmYdjh.getSlcs());
+            shangLiao.setCzbh(dmYdjh.getDcCh());
+            shangLiao.setPl(dmYdjh.getDcPl());
+            shangLiao.setFd(dmYdjh.getDcFd());
+            shangLiao.setKw(dmYdjh.getKw());
+            shangLiao.setZl(dmYdjh.getZl());
+            shangLiao.setTlth(dmYdjh.getTzbh());
+           // shangLiao.setWph(dmYdjh.getm);
+            shangLiao.setWpgg(dmYdjh.getWpgg());
+            shangLiao.setSljhrq(dmYdjh.getSljhrq());
+            shangLiao.setQgjhrq(dmYdjh.getSljhrq());
+            shangLiao.setBfr( (String) request.getAttribute("yhms"));
+            //更新预处理垛位信息
+            if (!shangLiao.checkCkwp()){
+                //throw new ServiceException(10009,"物品库存不存在,或库存信息错误");
+            }
+            YcldwInfo info=ycldwInfoService.updateForSl(shangLiao);
+
+            //更新月度计划上料相关字段
+            zyjhService.updateForSl(shangLiao);
+
+            //todo 更新库存信息
+
+            wsHandler.sendSlComplete((JSONObject)JSONObject.toJSON(info));
+        }
+
+
+
+
+
+        return new ResultBean<>();
+    }
     /**
      * 上料
      */
diff --git a/src/main/java/com/dsic/gj_erp/controller/zyjh/dto/PgdSearch.java b/src/main/java/com/dsic/gj_erp/controller/zyjh/dto/PgdSearch.java
index 94c1ec0..aaf4f07 100644
--- a/src/main/java/com/dsic/gj_erp/controller/zyjh/dto/PgdSearch.java
+++ b/src/main/java/com/dsic/gj_erp/controller/zyjh/dto/PgdSearch.java
@@ -12,6 +12,7 @@ public class PgdSearch {
     private String field;
     private String user;
     private String jhrqField;
+    private String dcch;
 
     //跟踪查询条件
     private String xqrq;
diff --git a/src/main/java/com/dsic/gj_erp/controller/zyjh/dto/SljhSearch.java b/src/main/java/com/dsic/gj_erp/controller/zyjh/dto/SljhSearch.java
index 7e209e7..1408d5d 100644
--- a/src/main/java/com/dsic/gj_erp/controller/zyjh/dto/SljhSearch.java
+++ b/src/main/java/com/dsic/gj_erp/controller/zyjh/dto/SljhSearch.java
@@ -10,4 +10,5 @@ public class SljhSearch {
     private String pl;
     private String kw;
     private String sljhrq;
+    private String zt="2";
 }
diff --git a/src/main/java/com/dsic/gj_erp/service/zyjh/ZyjhService.java b/src/main/java/com/dsic/gj_erp/service/zyjh/ZyjhService.java
index 7077439..6ea59cc 100644
--- a/src/main/java/com/dsic/gj_erp/service/zyjh/ZyjhService.java
+++ b/src/main/java/com/dsic/gj_erp/service/zyjh/ZyjhService.java
@@ -13,6 +13,10 @@ public class ZyjhService extends ServiceImpl<DmYdjhMapper,DmYdjh> {
     public void updateForSl(ShangLiao sl){
         this.update(Wrappers.<DmYdjh>lambdaUpdate()
                 .set(DmYdjh::getZt,DmYdjh.getSlZt())
+                .set(DmYdjh::getSlkcdw,sl.getYdjh().getSlkcdw())
+                .set(DmYdjh::getSlcs,sl.getYdjh().getSlcs())
+                .set(DmYdjh::getSlfkrq,sl.getYdjh().getSlfkrq())
+                .set(DmYdjh::getSlfkry,sl.getYdjh().getSlfkry())
                 .eq(DmYdjh::getId,sl.getYdjh().getId())
         );
     }