Browse Source

优化diamante

Your Name 2 years ago
parent
commit
25e21adef8

+ 1 - 23
java110-bean/src/main/java/com/java110/dto/resource/ResourceStoreDto.java

@@ -45,9 +45,7 @@ public class ResourceStoreDto extends PageDto implements Serializable {
     private String showMobile;
     private String showMobile;
     private String shId;
     private String shId;
     private String warningStock;
     private String warningStock;
-    private String shType;
-    private String shObjId;
-    private String[] shObjIds;
+
     private String averagePrice;
     private String averagePrice;
     private List<String> fileUrls;
     private List<String> fileUrls;
     private Date createTime;
     private Date createTime;
@@ -230,21 +228,7 @@ public class ResourceStoreDto extends PageDto implements Serializable {
         this.shName = shName;
         this.shName = shName;
     }
     }
 
 
-    public String getShType() {
-        return shType;
-    }
 
 
-    public void setShType(String shType) {
-        this.shType = shType;
-    }
-
-    public String getShObjId() {
-        return shObjId;
-    }
-
-    public void setShObjId(String shObjId) {
-        this.shObjId = shObjId;
-    }
 
 
     public String getWarningStock() {
     public String getWarningStock() {
         return warningStock;
         return warningStock;
@@ -398,13 +382,7 @@ public class ResourceStoreDto extends PageDto implements Serializable {
         this.isFixedName = isFixedName;
         this.isFixedName = isFixedName;
     }
     }
 
 
-    public String[] getShObjIds() {
-        return shObjIds;
-    }
 
 
-    public void setShObjIds(String[] shObjIds) {
-        this.shObjIds = shObjIds;
-    }
 
 
     public List<ResourceStoreTimesDto> getTimes() {
     public List<ResourceStoreTimesDto> getTimes() {
         return times;
         return times;

+ 112 - 12
service-store/src/main/java/com/java110/store/cmd/resourceStore/ListResourceStoresCmd.java

@@ -5,6 +5,7 @@ import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.event.cmd.CmdEvent;
+import com.java110.doc.annotation.*;
 import com.java110.dto.PageDto;
 import com.java110.dto.PageDto;
 import com.java110.dto.privilege.BasePrivilegeDto;
 import com.java110.dto.privilege.BasePrivilegeDto;
 import com.java110.dto.resource.ResourceStoreDto;
 import com.java110.dto.resource.ResourceStoreDto;
@@ -31,6 +32,116 @@ import java.util.Map;
  * 查询物品
  * 查询物品
  * add by wuxw 2023-01-19
  * add by wuxw 2023-01-19
  */
  */
+
+@Java110CmdDoc(title = "查询物品",
+        description = "外部系统通过此接口查询物品",
+        httpMethod = "get",
+        url = "http://{ip}:{port}/app/resourceStore.listResourceStores",
+        resource = "storeDoc",
+        author = "吴学文",
+        serviceCode = "resourceStore.listResourceStores"
+)
+
+@Java110ParamsDoc(params = {
+        @Java110ParamDoc(name = "page", length = 11,type = "int",remark = "页数"),
+        @Java110ParamDoc(name = "row", length = 11,type = "int", remark = "行业数"),
+})
+
+@Java110ResponseDoc(
+        params = {
+                @Java110ParamDoc(name = "code", type = "int", length = 11, defaultValue = "0", remark = "返回编号,0 成功 其他失败"),
+                @Java110ParamDoc(name = "msg", type = "String", length = 250, defaultValue = "成功", remark = "描述"),
+                @Java110ParamDoc(name = "data", type = "Object", remark = "有效数据"),
+                @Java110ParamDoc(parentNodeName = "data",name = "resCode", type = "String", remark = "物品编号"),
+                @Java110ParamDoc(parentNodeName = "data",name = "resName", type = "String", remark = "物品名称"),
+        }
+)
+
+@Java110ExampleDoc(
+        reqBody="http://localhost:3000/app/resourceStore.listResourceStores?resId=&resName=&resCode=&shId=&parentRstId=&rstId=&rssId=&isFixed=&page=1&row=10",
+        resBody="{\n" +
+                "    \"page\": 0,\n" +
+                "    \"records\": 1,\n" +
+                "    \"resourceStores\": [\n" +
+                "        {\n" +
+                "            \"averagePrice\": \"0.00\",\n" +
+                "            \"createTime\": 1692976986000,\n" +
+                "            \"description\": \"\",\n" +
+                "            \"isFixed\": \"N\",\n" +
+                "            \"isFixedName\": \"否\",\n" +
+                "            \"miniStock\": \"0\",\n" +
+                "            \"miniUnitCode\": \"1001\",\n" +
+                "            \"miniUnitCodeName\": \"个\",\n" +
+                "            \"miniUnitStock\": \"1\",\n" +
+                "            \"outHighPrice\": \"2.00\",\n" +
+                "            \"outLowPrice\": \"1.00\",\n" +
+                "            \"parentRstId\": \"282023082523150002\",\n" +
+                "            \"parentRstName\": \"77\",\n" +
+                "            \"price\": \"1.00\",\n" +
+                "            \"remark\": \"\",\n" +
+                "            \"resCode\": \"001\",\n" +
+                "            \"resId\": \"852023082533060002\",\n" +
+                "            \"resName\": \"钢笔\",\n" +
+                "            \"rssId\": \"\",\n" +
+                "            \"rstId\": \"282023082516650004\",\n" +
+                "            \"rstName\": \"mm\",\n" +
+                "            \"shId\": \"102023082412640003\",\n" +
+                "            \"shName\": \"A仓库\",\n" +
+                "            \"showMobile\": \"N\",\n" +
+                "            \"stock\": \"0.0\",\n" +
+                "            \"times\": [\n" +
+                "                {\n" +
+                "                    \"applyOrderId\": \"-1\",\n" +
+                "                    \"averagePrice\": \"0.00\",\n" +
+                "                    \"createTime\": 1692976987000,\n" +
+                "                    \"description\": \"\",\n" +
+                "                    \"isFixed\": \"N\",\n" +
+                "                    \"isFixedName\": \"否\",\n" +
+                "                    \"miniStock\": \"0\",\n" +
+                "                    \"miniUnitCode\": \"1001\",\n" +
+                "                    \"miniUnitCodeName\": \"个\",\n" +
+                "                    \"miniUnitStock\": \"1\",\n" +
+                "                    \"outHighPrice\": \"2.00\",\n" +
+                "                    \"outLowPrice\": \"1.00\",\n" +
+                "                    \"page\": -1,\n" +
+                "                    \"parentRstId\": \"282023082523150002\",\n" +
+                "                    \"parentRstName\": \"77\",\n" +
+                "                    \"price\": \"1.00\",\n" +
+                "                    \"records\": 0,\n" +
+                "                    \"remark\": \"\",\n" +
+                "                    \"resCode\": \"001\",\n" +
+                "                    \"resId\": \"852023082533060002\",\n" +
+                "                    \"resName\": \"钢笔\",\n" +
+                "                    \"row\": 0,\n" +
+                "                    \"rssId\": \"\",\n" +
+                "                    \"rstId\": \"282023082516650004\",\n" +
+                "                    \"rstName\": \"mm\",\n" +
+                "                    \"shId\": \"102023082412640003\",\n" +
+                "                    \"shName\": \"A仓库\",\n" +
+                "                    \"showMobile\": \"N\",\n" +
+                "                    \"statusCd\": \"0\",\n" +
+                "                    \"stock\": \"0\",\n" +
+                "                    \"storeId\": \"10202305221014329108000168\",\n" +
+                "                    \"timesId\": \"112023082573090004\",\n" +
+                "                    \"total\": 0,\n" +
+                "                    \"totalPrice\": \"0.0\",\n" +
+                "                    \"unitCode\": \"1002\",\n" +
+                "                    \"unitCodeName\": \"次\",\n" +
+                "                    \"warningStock\": \"10\"\n" +
+                "                }\n" +
+                "            ],\n" +
+                "            \"totalPrice\": \"0.0\",\n" +
+                "            \"unitCode\": \"1002\",\n" +
+                "            \"unitCodeName\": \"次\",\n" +
+                "            \"warningStock\": \"10\"\n" +
+                "        }\n" +
+                "    ],\n" +
+                "    \"rows\": 0,\n" +
+                "    \"subTotal\": \"0.00\",\n" +
+                "    \"total\": 1,\n" +
+                "    \"totalPrice\": \"0.00\"\n" +
+                "}"
+)
 @Java110Cmd(serviceCode = "resourceStore.listResourceStores")
 @Java110Cmd(serviceCode = "resourceStore.listResourceStores")
 public class ListResourceStoresCmd extends Cmd {
 public class ListResourceStoresCmd extends Cmd {
 
 
@@ -53,18 +164,7 @@ public class ListResourceStoresCmd extends Cmd {
         //采购2806集团仓库 物品领用2807小区仓库  默认查询当前小区所有商品
         //采购2806集团仓库 物品领用2807小区仓库  默认查询当前小区所有商品
         //是否具有查看集团仓库物品权限
         //是否具有查看集团仓库物品权限
         String userId = reqJson.getString("userId");
         String userId = reqJson.getString("userId");
-        BasePrivilegeDto basePrivilegeDto = new BasePrivilegeDto();
-        basePrivilegeDto.setResource("/viewGroupResource");
-        basePrivilegeDto.setUserId(userId);
-        List<Map> privileges = menuInnerServiceSMOImpl.checkUserHasResource(basePrivilegeDto);
-        if ("1000".equals(reqJson.getString("operationType")) && privileges.size() > 0) {
-            resourceStoreDto.setShType("");
-            resourceStoreDto.setShObjIds(new String[]{reqJson.getString("communityId"), reqJson.getString("storeId")});
-        } else if (StorehouseDto.SH_TYPE_COMMUNITY.equals(resourceStoreDto.getShType()) || privileges.size() == 0) {
-            //add by wuxw 这里 修改为 小区仓库也能采购 模式 所以这里不限制
-            //resourceStoreDto.setShType(StorehouseDto.SH_TYPE_COMMUNITY);
-            resourceStoreDto.setShObjId(reqJson.getString("communityId"));
-        }
+
         BasePrivilegeDto basePrivilegeDto1 = new BasePrivilegeDto();
         BasePrivilegeDto basePrivilegeDto1 = new BasePrivilegeDto();
         basePrivilegeDto1.setResource("/viewHiddenWarehouse");
         basePrivilegeDto1.setResource("/viewHiddenWarehouse");
         basePrivilegeDto1.setUserId(userId);
         basePrivilegeDto1.setUserId(userId);

+ 62 - 0
service-store/src/main/java/com/java110/store/cmd/resourceStore/ListStorehousesCmd.java

@@ -6,6 +6,7 @@ import com.java110.core.context.CmdContextUtils;
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.event.cmd.CmdEvent;
+import com.java110.doc.annotation.*;
 import com.java110.dto.privilege.BasePrivilegeDto;
 import com.java110.dto.privilege.BasePrivilegeDto;
 import com.java110.dto.store.StorehouseDto;
 import com.java110.dto.store.StorehouseDto;
 import com.java110.intf.community.IMenuInnerServiceSMO;
 import com.java110.intf.community.IMenuInnerServiceSMO;
@@ -22,6 +23,67 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
 
 
+@Java110CmdDoc(title = "查询仓库",
+        description = "外部系统通过此接口查询仓库",
+        httpMethod = "get",
+        url = "http://{ip}:{port}/app/resourceStore.listStorehouses",
+        resource = "storeDoc",
+        author = "吴学文",
+        serviceCode = "resourceStore.listStorehouses"
+)
+
+@Java110ParamsDoc(params = {
+        @Java110ParamDoc(name = "page", length = 11,type = "int",remark = "页数"),
+        @Java110ParamDoc(name = "row", length = 11,type = "int", remark = "行业数"),
+})
+
+@Java110ResponseDoc(
+        params = {
+                @Java110ParamDoc(name = "code", type = "int", length = 11, defaultValue = "0", remark = "返回编号,0 成功 其他失败"),
+                @Java110ParamDoc(name = "msg", type = "String", length = 250, defaultValue = "成功", remark = "描述"),
+                @Java110ParamDoc(name = "data", type = "Object", remark = "有效数据"),
+                @Java110ParamDoc(parentNodeName = "data",name = "shName", type = "String", remark = "仓库"),
+                @Java110ParamDoc(parentNodeName = "data",name = "shId", type = "String", remark = "仓库ID"),
+        }
+)
+
+@Java110ExampleDoc(
+        reqBody="\n" +
+                "http://localhost:3000/app/resourceStore.listStorehouses?shName=&shType=&isShow=&shId=&communityId=2023052267100146&page=1&row=10",
+        resBody="{\n" +
+                "    \"code\": 0,\n" +
+                "    \"data\": [\n" +
+                "        {\n" +
+                "            \"allocationFlowName\": \"调拨审核\",\n" +
+                "            \"allocationRafId\": \"102023082479330020\",\n" +
+                "            \"allocationSwitch\": \"ON\",\n" +
+                "            \"createTime\": \"2023-08-24 21:56:01\",\n" +
+                "            \"isShow\": \"true\",\n" +
+                "            \"page\": -1,\n" +
+                "            \"purchaseFlowName\": \"采购审核流程\",\n" +
+                "            \"purchaseRafId\": \"102023082406130006\",\n" +
+                "            \"purchaseSwitch\": \"ON\",\n" +
+                "            \"records\": 0,\n" +
+                "            \"row\": 0,\n" +
+                "            \"shDesc\": \"\",\n" +
+                "            \"shId\": \"102023082412640003\",\n" +
+                "            \"shName\": \"A仓库\",\n" +
+                "            \"statusCd\": \"0\",\n" +
+                "            \"storeId\": \"10202305221014329108000168\",\n" +
+                "            \"total\": 0,\n" +
+                "            \"useFlowName\": \"领用审核\",\n" +
+                "            \"useRafId\": \"102023082414750013\",\n" +
+                "            \"useSwitch\": \"ON\"\n" +
+                "        }\n" +
+                "    ],\n" +
+                "    \"msg\": \"成功\",\n" +
+                "    \"page\": 0,\n" +
+                "    \"records\": 1,\n" +
+                "    \"rows\": 0,\n" +
+                "    \"total\": 1\n" +
+                "}"
+)
+
 @Java110Cmd(serviceCode = "resourceStore.listStorehouses")
 @Java110Cmd(serviceCode = "resourceStore.listStorehouses")
 public class ListStorehousesCmd extends Cmd {
 public class ListStorehousesCmd extends Cmd {
 
 

+ 141 - 9
service-store/src/main/java/com/java110/store/cmd/resourceStore/SaveResourceStoreCmd.java

@@ -18,27 +18,37 @@ package com.java110.store.cmd.resourceStore;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.annotation.Java110Transactional;
 import com.java110.core.annotation.Java110Transactional;
+import com.java110.core.context.CmdContextUtils;
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.doc.annotation.*;
+import com.java110.dto.purchase.PurchaseApplyDto;
 import com.java110.dto.resource.ResourceStoreDto;
 import com.java110.dto.resource.ResourceStoreDto;
+import com.java110.dto.user.UserDto;
 import com.java110.intf.common.IFileRelInnerServiceSMO;
 import com.java110.intf.common.IFileRelInnerServiceSMO;
+import com.java110.intf.store.IPurchaseApplyInnerServiceSMO;
 import com.java110.intf.store.IResourceStoreInnerServiceSMO;
 import com.java110.intf.store.IResourceStoreInnerServiceSMO;
 import com.java110.intf.store.IResourceStoreTimesV1InnerServiceSMO;
 import com.java110.intf.store.IResourceStoreTimesV1InnerServiceSMO;
 import com.java110.intf.store.IResourceStoreV1InnerServiceSMO;
 import com.java110.intf.store.IResourceStoreV1InnerServiceSMO;
+import com.java110.intf.user.IUserV1InnerServiceSMO;
 import com.java110.po.file.FileRelPo;
 import com.java110.po.file.FileRelPo;
+import com.java110.po.purchase.PurchaseApplyDetailPo;
+import com.java110.po.purchase.PurchaseApplyPo;
 import com.java110.po.purchase.ResourceStorePo;
 import com.java110.po.purchase.ResourceStorePo;
 import com.java110.po.resource.ResourceStoreTimesPo;
 import com.java110.po.resource.ResourceStoreTimesPo;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.DateUtil;
 import com.java110.utils.util.StringUtil;
 import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
 import com.java110.vo.ResultVo;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 
 
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.Date;
 import java.util.List;
 import java.util.List;
 
 
@@ -52,6 +62,45 @@ import java.util.List;
  * 温馨提示:如果您对此文件进行修改 请不要删除原有作者及注释信息,请补充您的 修改的原因以及联系邮箱如下
  * 温馨提示:如果您对此文件进行修改 请不要删除原有作者及注释信息,请补充您的 修改的原因以及联系邮箱如下
  * // modify by 张三 at 2021-09-12 第10行在某种场景下存在某种bug 需要修复,注释10至20行 加入 20行至30行
  * // modify by 张三 at 2021-09-12 第10行在某种场景下存在某种bug 需要修复,注释10至20行 加入 20行至30行
  */
  */
+@Java110CmdDoc(title = "添加物品",
+        description = "外部系统通过此接口添加物品",
+        httpMethod = "post",
+        url = "http://{ip}:{port}/app/resourceStore.saveResourceStore",
+        resource = "storeDoc",
+        author = "吴学文",
+        serviceCode = "resourceStore.saveResourceStore"
+)
+
+@Java110ParamsDoc(params = {
+        @Java110ParamDoc(name = "resName", length = 64, remark = "名称"),
+        @Java110ParamDoc(name = "resCode", length = 64, remark = "编号"),
+})
+
+@Java110ResponseDoc(
+        params = {
+                @Java110ParamDoc(name = "code", type = "int", length = 11, defaultValue = "0", remark = "返回编号,0 成功 其他失败"),
+                @Java110ParamDoc(name = "msg", type = "String", length = 250, defaultValue = "成功", remark = "描述"),
+        }
+)
+
+@Java110ExampleDoc(
+        reqBody = "{" +
+                "\"resName\":\"电动车\",\"resCode\":\"002\",\"resId\":\"\",\"parentRstId\":\"282023082523150002\"," +
+                "\"rstId\":\"282023082516650004\",\"price\":\"15\",\"description\":\"\",\"outLowPrice\":\"1\"," +
+                "\"outHighPrice\":\"3\",\"showMobile\":\"N\",\"remark\":\"\",\"unitCode\":\"1001\",\"shId\":\"102023082412640003\"," +
+                "\"isFixed\":\"N\",\"rssId\":\"\",\"miniUnitCode\":\"1001\",\"miniUnitStock\":\"1\",\"warningStock\":\"10\"," +
+                "\"communityId\":\"2023052267100146\"}",
+        resBody = "{\n" +
+                "    \"code\": 0,\n" +
+                "    \"data\": [\n" +
+                "    ],\n" +
+                "    \"msg\": \"成功\",\n" +
+                "    \"page\": 0,\n" +
+                "    \"records\": 1,\n" +
+                "    \"rows\": 0,\n" +
+                "    \"total\": 1\n" +
+                "}"
+)
 @Java110Cmd(serviceCode = "resourceStore.saveResourceStore")
 @Java110Cmd(serviceCode = "resourceStore.saveResourceStore")
 public class SaveResourceStoreCmd extends Cmd {
 public class SaveResourceStoreCmd extends Cmd {
 
 
@@ -69,6 +118,13 @@ public class SaveResourceStoreCmd extends Cmd {
     private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
     private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
     @Autowired
     @Autowired
     private IResourceStoreTimesV1InnerServiceSMO resourceStoreTimesV1InnerServiceSMOImpl;
     private IResourceStoreTimesV1InnerServiceSMO resourceStoreTimesV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IPurchaseApplyInnerServiceSMO purchaseApplyInnerServiceSMOImpl;
+
+    @Autowired
+    private IUserV1InnerServiceSMO userV1InnerServiceSMOImpl;
+
     @Override
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         //Assert.hasKeyAndValue(reqJson, "xxx", "xxx");
         //Assert.hasKeyAndValue(reqJson, "xxx", "xxx");
@@ -100,10 +156,12 @@ public class SaveResourceStoreCmd extends Cmd {
     @Override
     @Override
     @Java110Transactional
     @Java110Transactional
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
+        String userId = CmdContextUtils.getUserId(cmdDataFlowContext);
+        String storeId = CmdContextUtils.getStoreId(cmdDataFlowContext);
         JSONObject businessResourceStore = new JSONObject();
         JSONObject businessResourceStore = new JSONObject();
         businessResourceStore.putAll(reqJson);
         businessResourceStore.putAll(reqJson);
         businessResourceStore.put("resId", GenerateCodeFactory.getResId(GenerateCodeFactory.CODE_PREFIX_resId));
         businessResourceStore.put("resId", GenerateCodeFactory.getResId(GenerateCodeFactory.CODE_PREFIX_resId));
-        businessResourceStore.put("stock", "0");
+        // businessResourceStore.put("stock", "0");
         businessResourceStore.put("miniStock", "0");
         businessResourceStore.put("miniStock", "0");
         businessResourceStore.put("createTime", new Date());
         businessResourceStore.put("createTime", new Date());
         ResourceStorePo resourceStorePo = BeanConvertUtil.covertBean(businessResourceStore, ResourceStorePo.class);
         ResourceStorePo resourceStorePo = BeanConvertUtil.covertBean(businessResourceStore, ResourceStorePo.class);
@@ -117,14 +175,17 @@ public class SaveResourceStoreCmd extends Cmd {
         }
         }
 
 
         // todo 保存至 物品 times表
         // todo 保存至 物品 times表
-        ResourceStoreTimesPo resourceStoreTimesPo = new ResourceStoreTimesPo();
-        resourceStoreTimesPo.setApplyOrderId("-1");
-        resourceStoreTimesPo.setPrice(resourceStorePo.getPrice());
-        resourceStoreTimesPo.setStock(resourceStorePo.getStock());
-        resourceStoreTimesPo.setResCode(resourceStorePo.getResCode());
-        resourceStoreTimesPo.setStoreId(resourceStorePo.getStoreId());
-        resourceStoreTimesPo.setShId(resourceStorePo.getShId());
-        resourceStoreTimesV1InnerServiceSMOImpl.saveOrUpdateResourceStoreTimes(resourceStoreTimesPo);
+//        ResourceStoreTimesPo resourceStoreTimesPo = new ResourceStoreTimesPo();
+//        resourceStoreTimesPo.setApplyOrderId("-1");
+//        resourceStoreTimesPo.setPrice(resourceStorePo.getPrice());
+//        resourceStoreTimesPo.setStock(resourceStorePo.getStock());
+//        resourceStoreTimesPo.setResCode(resourceStorePo.getResCode());
+//        resourceStoreTimesPo.setStoreId(resourceStorePo.getStoreId());
+//        resourceStoreTimesPo.setShId(resourceStorePo.getShId());
+//        resourceStoreTimesV1InnerServiceSMOImpl.saveOrUpdateResourceStoreTimes(resourceStoreTimesPo);
+
+        //todo 入库
+        inStore(reqJson, userId, storeId, resourceStorePo);
 
 
         //将图片插入文件表里
         //将图片插入文件表里
         FileRelPo fileRelPo = new FileRelPo();
         FileRelPo fileRelPo = new FileRelPo();
@@ -149,4 +210,75 @@ public class SaveResourceStoreCmd extends Cmd {
         }
         }
         cmdDataFlowContext.setResponseEntity(ResultVo.success());
         cmdDataFlowContext.setResponseEntity(ResultVo.success());
     }
     }
+
+    /**
+     * 直接入库
+     *
+     * @param reqJson
+     * @param userId
+     * @param storeId
+     */
+    private void inStore(JSONObject reqJson, String userId, String storeId, ResourceStorePo resourceStorePo) {
+
+        UserDto userDto = new UserDto();
+        userDto.setUserId(userId);
+        userDto.setPage(1);
+        userDto.setRow(1);
+        List<UserDto> userDtos = userV1InnerServiceSMOImpl.queryUsers(userDto);
+
+        Assert.listOnlyOne(userDtos, "用户不存在");
+
+        String applyOrderId = "-1";
+        int stock = Integer.parseInt(resourceStorePo.getStock());
+        //todo 如果有库存才生成 采购流程
+        if (stock > 0) {
+            applyOrderId = GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_applyOrderId);
+            PurchaseApplyPo purchaseApplyPo = new PurchaseApplyPo();
+            purchaseApplyPo.setApplyOrderId(applyOrderId);
+            purchaseApplyPo.setDescription("入库单(物品导入)");
+            purchaseApplyPo.setUserId(userId);
+            purchaseApplyPo.setUserName(userDtos.get(0).getName());
+            purchaseApplyPo.setEndUserName(userDtos.get(0).getName());
+            purchaseApplyPo.setEndUserTel(userDtos.get(0).getTel());
+            purchaseApplyPo.setStoreId(storeId);
+            purchaseApplyPo.setResOrderType(PurchaseApplyDto.RES_ORDER_TYPE_ENTER);
+            purchaseApplyPo.setState(PurchaseApplyDto.STATE_END);
+            purchaseApplyPo.setCreateTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
+            purchaseApplyPo.setCreateUserId(userId);
+            purchaseApplyPo.setCreateUserName(userDtos.get(0).getName());
+            purchaseApplyPo.setWarehousingWay(PurchaseApplyDto.WAREHOUSING_TYPE_URGENT);
+            purchaseApplyPo.setCommunityId(reqJson.getString("communityId"));
+            //获取采购物品信息
+            List<PurchaseApplyDetailPo> purchaseApplyDetailPos = new ArrayList<>();
+
+            PurchaseApplyDetailPo purchaseApplyDetailPo = new PurchaseApplyDetailPo();
+            purchaseApplyDetailPo.setApplyOrderId(applyOrderId);
+            purchaseApplyDetailPo.setId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_applyOrderId));
+            purchaseApplyDetailPo.setPurchaseQuantity(resourceStorePo.getStock());
+            purchaseApplyDetailPo.setPurchaseRemark(resourceStorePo.getRemark());
+            purchaseApplyDetailPo.setOriginalStock(resourceStorePo.getStock());
+            purchaseApplyDetailPo.setQuantity(resourceStorePo.getStock());
+            purchaseApplyDetailPo.setPrice(resourceStorePo.getPrice());
+            purchaseApplyDetailPo.setResId(resourceStorePo.getResId());
+            purchaseApplyDetailPo.setRsId(resourceStorePo.getRssId());
+            purchaseApplyDetailPos.add(purchaseApplyDetailPo);
+            purchaseApplyPo.setPurchaseApplyDetailPos(purchaseApplyDetailPos);
+            int saveFlag = purchaseApplyInnerServiceSMOImpl.savePurchaseApply(purchaseApplyPo);
+            if (saveFlag < 1) {
+                throw new CmdException("采购申请失败");
+            }
+        }
+
+        // 保存至 物品 times表
+        ResourceStoreTimesPo resourceStoreTimesPo = new ResourceStoreTimesPo();
+        resourceStoreTimesPo.setApplyOrderId(applyOrderId);
+        resourceStoreTimesPo.setPrice(resourceStorePo.getPrice());
+        resourceStoreTimesPo.setStock(resourceStorePo.getStock());
+        resourceStoreTimesPo.setResCode(resourceStorePo.getResCode());
+        resourceStoreTimesPo.setStoreId(resourceStorePo.getStoreId());
+        resourceStoreTimesPo.setTimesId(GenerateCodeFactory.getGeneratorId("10"));
+        resourceStoreTimesV1InnerServiceSMOImpl.saveOrUpdateResourceStoreTimes(resourceStoreTimesPo);
+
+
+    }
 }
 }