diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 90c3175..881ebd3 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -2,6 +2,7 @@ + @@ -16,7 +17,8 @@ - + + + + + - - - - - - - - - - @@ -104,7 +109,6 @@ - @@ -117,12 +121,9 @@ - - - - @@ -132,14 +133,12 @@ - - - + @@ -153,7 +152,6 @@ android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths" /> - \ No newline at end of file diff --git a/app/src/main/java/com/example/haiwei_mom/HomePageActivity.java b/app/src/main/java/com/example/haiwei_mom/HomePageActivity.java index 36a992b..793b117 100644 --- a/app/src/main/java/com/example/haiwei_mom/HomePageActivity.java +++ b/app/src/main/java/com/example/haiwei_mom/HomePageActivity.java @@ -2,6 +2,7 @@ package com.example.haiwei_mom; import android.content.Intent; import android.os.Bundle; +import android.view.View; import androidx.databinding.DataBindingUtil; @@ -24,9 +25,12 @@ import com.example.haiwei_mom.ipc.FeedingMaterialsActivity; import com.example.haiwei_mom.qm.LtCheckActivity; import com.example.haiwei_mom.wms.product.BindVehicleActivity; import com.example.haiwei_mom.wms.product.ProductInActivity; +import com.example.haiwei_mom.wms.raw.MoveActivity; import com.example.haiwei_mom.wms.raw.RawInActivity; import com.example.haiwei_mom.wms.raw.RawOutActivity; import com.example.haiwei_mom.wms.raw.RawReturnActivity; +import com.example.haiwei_mom.wms.raw.Return2Activity; +import com.example.haiwei_mom.wms.raw.SpecialOutActivity; import com.example.haiwei_mom.wms.raw.StoreCheckActivity; import com.example.haiwei_mom.wms.semi.BindingActivity; import com.example.haiwei_mom.wms.semi.SeimMoveActivity; @@ -45,26 +49,35 @@ public class HomePageActivity extends BaseActivity implements ItemClickCall { private List menuList; private HomeMenuAdapter adapter; private Map map; + private ActivityHomePageBinding binding; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - ActivityHomePageBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_home_page); + + binding = DataBindingUtil.setContentView(this, R.layout.activity_home_page); adapter = new HomeMenuAdapter(this, this); binding.setAdapter(adapter); - + initRequest(); initMenuMap(); } -@Override -protected void onResume() { - super.onResume(); initRequest(); -} private void initMenuMap() { map = new HashMap<>(); + map.put("入库", RawInActivity.class); + map.put("质检入库", RawInActivity.class); + map.put("AGV入库", RawInActivity.class); + map.put("出库", RawOutActivity.class); + map.put("特殊情况出库", SpecialOutActivity.class); + map.put("盘点", StoreCheckActivity.class); + map.put("退库申请", RawReturnActivity.class); + map.put("退库入库", Return2Activity.class); + // map.put("退库", RawReturnActivity.class); + map.put("移库合库", MoveActivity.class); + map.put("半成品入库", SemiInActivity.class); map.put("半成品出库", SemiOutActivity.class); map.put("半成品调拨", SeimMoveActivity.class); @@ -74,10 +87,7 @@ protected void onResume() { map.put("入库工装绑定", BindVehicleActivity.class); map.put("成品批量入库", ProductInActivity.class); map.put("成品出库", RawOutActivity.class); - map.put("原材料入库", RawInActivity.class); - map.put("原材料出库", RawOutActivity.class); - map.put("原材料盘点", StoreCheckActivity.class); - map.put("原材料退库", RawReturnActivity.class); + map.put("制品质检", LtCheckActivity.class); map.put("制品复检", LtCheckActivity.class); map.put("机台投料", FeedingMaterialsActivity.class); @@ -105,7 +115,9 @@ protected void onResume() { public void onSuccess(Response response) { super.onSuccess(response); var body = response.body(); - if (body.getCode() == 200) { + boolean state = body.getCode() == 200; + binding.setState(state); + if (state) { List list = gson.fromJson(body.getDataJson(), new TypeToken>() { }.getType()); list.forEach(t -> { @@ -154,4 +166,8 @@ protected void onResume() { startActivity(intent); } + + public void menuRefalsh(View view) { + initRequest(); + } } \ No newline at end of file diff --git a/app/src/main/java/com/example/haiwei_mom/data/RawInstock.java b/app/src/main/java/com/example/haiwei_mom/data/RawInstock.java index 823f691..8bb3bcf 100644 --- a/app/src/main/java/com/example/haiwei_mom/data/RawInstock.java +++ b/app/src/main/java/com/example/haiwei_mom/data/RawInstock.java @@ -74,6 +74,83 @@ public class RawInstock extends BaseObservable { private String unitName; + + private String inspectionRequest; + + private String title; + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public Long getInstockPrintId() { + return instockPrintId; + } + + public void setInstockPrintId(Long instockPrintId) { + this.instockPrintId = instockPrintId; + } + + public void setInstockCode(String instockCode) { + this.instockCode = instockCode; + } + + public String getBatchCode() { + return batchCode; + } + + public void setBatchCode(String batchCode) { + this.batchCode = batchCode; + } + + public Long getApportionQty() { + return apportionQty; + } + + public void setApportionQty(Long apportionQty) { + this.apportionQty = apportionQty; + } + + public void setMaterialId(Long materialId) { + this.materialId = materialId; + } + + public void setMaterialCode(String materialCode) { + this.materialCode = materialCode; + } + + public void setMaterialName(String materialName) { + this.materialName = materialName; + } + + public void setMaterialSpe(String materialSpe) { + this.materialSpe = materialSpe; + } + + public void setUnitName(String unitName) { + this.unitName = unitName; + } + + public String getInspectionRequest() { + return inspectionRequest; + } + + public void setInspectionRequest(String inspectionRequest) { + this.inspectionRequest = inspectionRequest; + } + + public String getMaterialCategories() { + return materialCategories; + } + + public void setMaterialCategories(String materialCategories) { + this.materialCategories = materialCategories; + } + public double getMaterialQty() { return materialQty; } diff --git a/app/src/main/java/com/example/haiwei_mom/data/WmsInventoryVo.java b/app/src/main/java/com/example/haiwei_mom/data/WmsInventoryVo.java index debc533..3671dc9 100644 --- a/app/src/main/java/com/example/haiwei_mom/data/WmsInventoryVo.java +++ b/app/src/main/java/com/example/haiwei_mom/data/WmsInventoryVo.java @@ -41,6 +41,7 @@ public class WmsInventoryVo { */ private String locationCode; + private String newLocationCode; /** * 物料大类 @@ -78,6 +79,23 @@ public class WmsInventoryVo { private String materialCode;//字段映射 private String materialName;//字段映射 private String warehouseId; + private String materialUnit; + + public String getNewLocationCode() { + return newLocationCode; + } + + public void setNewLocationCode(String newLocationCode) { + this.newLocationCode = newLocationCode; + } + + public String getMaterialUnit() { + return materialUnit; + } + + public void setMaterialUnit(String materialUnit) { + this.materialUnit = materialUnit; + } public Long getInventoryId() { return inventoryId; diff --git a/app/src/main/java/com/example/haiwei_mom/data/WmsReturnOrderVo.java b/app/src/main/java/com/example/haiwei_mom/data/WmsReturnOrderVo.java new file mode 100644 index 0000000..db5abcc --- /dev/null +++ b/app/src/main/java/com/example/haiwei_mom/data/WmsReturnOrderVo.java @@ -0,0 +1,353 @@ +package com.example.haiwei_mom.data; + +import java.math.BigDecimal; +import java.util.Date; + + +/** + * 退库工单视图对象 wms_return_order + */ + +public class WmsReturnOrderVo { + + + /** + * 表主键 + */ + + private Long roId; + + /** + * 物料ID + */ + + private Long materialId; + + /** + * 物料大类 + */ + + private String materialCategoryId; + + /** + * 批次条码 + */ + + private String batchCode; + + /** + * 计划数量 + */ + + private BigDecimal planAmount; + + /** + * 仓库ID + */ + + private Long warehouseId; + + /** + * 计划退库库位 + */ + + private String planLocationCode; + + /** + * 退库工单状态 + */ + + private String orderStatus; + + /** + * 实际数量 + */ + + private BigDecimal returnAmount; + + /** + * 实际退库库位 + */ + + private String returnLocationCode; + + /** + * 审核人 + */ + + private String auditBy; + + /** + * 审核时间 + */ + + private Date auditTime; + + /** + * 审核状态(0待审核,1审核通过,2审核未通过) + */ + + private String auditStatus; + + /** + * 审核意见 + */ + + private String auditComments; + + /** + * erp同步状态 + */ + + private String erpSynchronousStatus; + + /** + * erp同步数量 + */ + + private Long erpSynchronousQty; + + /** + * 租户id + */ + private String tenantId; + + private String createBy; + + /** + * 创建时间 + */ + + private Date createTime; + + /** + * 更新者 + */ + + private String updateBy; + + /** + * 更新时间 + */ + + private Date updateTime; + private String warehouseCode;// 字段映射 + + private String materialCode; + private String materialName; + private String materialUnit; + + /** + * 物料大类 + */ + private String materialCategoryName;// 字段映射 + + public Long getRoId() { + return roId; + } + + public void setRoId(Long roId) { + this.roId = roId; + } + + public Long getMaterialId() { + return materialId; + } + + public void setMaterialId(Long materialId) { + this.materialId = materialId; + } + + public String getMaterialCategoryId() { + return materialCategoryId; + } + + public void setMaterialCategoryId(String materialCategoryId) { + this.materialCategoryId = materialCategoryId; + } + + public String getBatchCode() { + return batchCode; + } + + public void setBatchCode(String batchCode) { + this.batchCode = batchCode; + } + + public BigDecimal getPlanAmount() { + if (planAmount == null) return BigDecimal.valueOf(0); + return planAmount; + } + + public void setPlanAmount(BigDecimal planAmount) { + this.planAmount = planAmount; + } + + public Long getWarehouseId() { + return warehouseId; + } + + public void setWarehouseId(Long warehouseId) { + this.warehouseId = warehouseId; + } + + public String getPlanLocationCode() { + return planLocationCode; + } + + public void setPlanLocationCode(String planLocationCode) { + this.planLocationCode = planLocationCode; + } + + public String getOrderStatus() { + return orderStatus; + } + + public void setOrderStatus(String orderStatus) { + this.orderStatus = orderStatus; + } + + public BigDecimal getReturnAmount() { + return returnAmount; + } + + public void setReturnAmount(BigDecimal returnAmount) { + this.returnAmount = returnAmount; + } + + public String getReturnLocationCode() { + return returnLocationCode; + } + + public void setReturnLocationCode(String returnLocationCode) { + this.returnLocationCode = returnLocationCode; + } + + public String getAuditBy() { + return auditBy; + } + + public void setAuditBy(String auditBy) { + this.auditBy = auditBy; + } + + public Date getAuditTime() { + return auditTime; + } + + public void setAuditTime(Date auditTime) { + this.auditTime = auditTime; + } + + public String getAuditStatus() { + return auditStatus; + } + + public void setAuditStatus(String auditStatus) { + this.auditStatus = auditStatus; + } + + public String getAuditComments() { + return auditComments; + } + + public void setAuditComments(String auditComments) { + this.auditComments = auditComments; + } + + public String getErpSynchronousStatus() { + return erpSynchronousStatus; + } + + public void setErpSynchronousStatus(String erpSynchronousStatus) { + this.erpSynchronousStatus = erpSynchronousStatus; + } + + public Long getErpSynchronousQty() { + return erpSynchronousQty; + } + + public void setErpSynchronousQty(Long erpSynchronousQty) { + this.erpSynchronousQty = erpSynchronousQty; + } + + public String getTenantId() { + return tenantId; + } + + public void setTenantId(String tenantId) { + this.tenantId = tenantId; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getWarehouseCode() { + return warehouseCode; + } + + public void setWarehouseCode(String warehouseCode) { + this.warehouseCode = warehouseCode; + } + + public String getMaterialCode() { + return materialCode; + } + + public void setMaterialCode(String materialCode) { + this.materialCode = materialCode; + } + + public String getMaterialName() { + return materialName; + } + + public void setMaterialName(String materialName) { + this.materialName = materialName; + } + + public String getMaterialUnit() { + return materialUnit; + } + + public void setMaterialUnit(String materialUnit) { + this.materialUnit = materialUnit; + } + + public String getMaterialCategoryName() { + return materialCategoryName; + } + + public void setMaterialCategoryName(String materialCategoryName) { + this.materialCategoryName = materialCategoryName; + } +} diff --git a/app/src/main/java/com/example/haiwei_mom/wms/raw/MoveActivity.java b/app/src/main/java/com/example/haiwei_mom/wms/raw/MoveActivity.java new file mode 100644 index 0000000..af7eb99 --- /dev/null +++ b/app/src/main/java/com/example/haiwei_mom/wms/raw/MoveActivity.java @@ -0,0 +1,51 @@ +package com.example.haiwei_mom.wms.raw; + +import android.os.Bundle; +import android.view.View; +import android.widget.Toast; + +import androidx.databinding.DataBindingUtil; + +import com.example.haiwei_mom.R; +import com.example.haiwei_mom.base.BaseActivity; +import com.example.haiwei_mom.base.MyRecultCall; +import com.example.haiwei_mom.base.MyResult; +import com.example.haiwei_mom.data.WmsInventoryVo; +import com.example.haiwei_mom.databinding.ActivityMoveBinding; +import com.lzy.okgo.OkGo; +import com.lzy.okgo.model.Response; + +import java.math.BigDecimal; + +public class MoveActivity extends BaseActivity { + private ActivityMoveBinding binding; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + WmsInventoryVo wmsInventoryVo=new WmsInventoryVo(); + wmsInventoryVo.setInventoryQty(BigDecimal.valueOf(0)); + binding = DataBindingUtil.setContentView(this, R.layout.activity_move); + binding.setData(wmsInventoryVo); + } + + public void moveSelect(View view) { + OkGo.get(url + "/wms/pda/ledgerSelect") + .params("batchCode", binding.materialInGoods.getText().toString()) + .params("locationCode", binding.materialOldLocation.getText().toString()) + .execute(new MyRecultCall(dialog, this) { + @Override + public void onSuccess(Response response) { + super.onSuccess(response); + MyResult body = response.body(); + if (body.getCode()==200){ + WmsInventoryVo wmsInventoryVo=gson.fromJson(body.getDataJson(),WmsInventoryVo.class); + binding.setData(wmsInventoryVo); + + return; + } + Toast.makeText(MoveActivity.this, body.getMsg(), Toast.LENGTH_SHORT).show(); + } + }); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/example/haiwei_mom/wms/raw/RawInActivity.java b/app/src/main/java/com/example/haiwei_mom/wms/raw/RawInActivity.java index d3f9290..3622391 100644 --- a/app/src/main/java/com/example/haiwei_mom/wms/raw/RawInActivity.java +++ b/app/src/main/java/com/example/haiwei_mom/wms/raw/RawInActivity.java @@ -3,6 +3,7 @@ package com.example.haiwei_mom.wms.raw; import androidx.appcompat.app.AppCompatActivity; import androidx.databinding.DataBindingUtil; +import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.EditText; @@ -23,13 +24,20 @@ public class RawInActivity extends BaseActivity implements View.OnFocusChangeLis private RawInstock rawInstock; private ActivityRawInBinding binding; private EditText editTextView; - +private String title; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); binding = DataBindingUtil.setContentView(this, R.layout.activity_raw_in); + + title = getIntent().getStringExtra("title"); + binding.setTitle(title); binding.materialInLocation.setOnFocusChangeListener(this); binding.materialInGoods.setOnFocusChangeListener(this); + binding.materialInGoods.setOnEditorActionListener((v, actionId, event) -> { + selectGoods( binding.materialInGoods.getText().toString()); + return true; + }); } @Override @@ -40,25 +48,31 @@ public class RawInActivity extends BaseActivity implements View.OnFocusChangeLis } else if (editTextView == binding.materialInGoods || rawInstock == null) { binding.materialInGoods.setText(data); - OkGo.post(url + "/wms/pda/raw/inSelectCode").params("code", data).execute(new MyRecultCall(dialog, this) { - @Override - public void onSuccess(Response response) { - super.onSuccess(response); - var body = response.body(); - if (body.getCode() == 200) { - rawInstock = gson.fromJson(body.getDataJson(), RawInstock.class); - binding.setData(rawInstock); - return; - } - - myToastUitls.show(body.getMsg()); - } - }); + selectGoods(data); } } + private void selectGoods(String data){ + OkGo.post(url + "/wms/pda/raw/inSelectCode") + .params("code", data) + .params("type", title) + .execute(new MyRecultCall(dialog, this) { + @Override + public void onSuccess(Response response) { + super.onSuccess(response); + var body = response.body(); + if (body.getCode() == 200) { + rawInstock = gson.fromJson(body.getDataJson(), RawInstock.class); + binding.setData(rawInstock); + return; + } + myToastUitls.show(body.getMsg()); + } + }); + } + @Override public void onFocusChange(View v, boolean hasFocus) { if (hasFocus) { @@ -78,6 +92,7 @@ public class RawInActivity extends BaseActivity implements View.OnFocusChangeLis myToastUitls.show("输入数量不能超过条码数量"); return; } + rawInstock.setTitle(title); OkGo.post(url + "/wms/pda/raw/inSubmit").upRequestBody(RequestBody.create(JSON, gson.toJson(rawInstock))).execute(new MyRecultCall(dialog, this) { @Override public void onSuccess(Response response) { diff --git a/app/src/main/java/com/example/haiwei_mom/wms/raw/RawOutActivity.java b/app/src/main/java/com/example/haiwei_mom/wms/raw/RawOutActivity.java index 33f6c81..f59eb8c 100644 --- a/app/src/main/java/com/example/haiwei_mom/wms/raw/RawOutActivity.java +++ b/app/src/main/java/com/example/haiwei_mom/wms/raw/RawOutActivity.java @@ -58,7 +58,6 @@ public class RawOutActivity extends BaseActivity implements View.OnFocusChangeLi rawOutLocationView.setOnFocusChangeListener(this); rawOutGoodsView = binding.rawOutGoods; rawOutGoodsView.setOnFocusChangeListener(this); - rawOutDetailAdapter = new RawOutDetailAdapter(this); binding.setDetailAdapter(rawOutDetailAdapter); submitBeen = new RawOutSubmitBeen(); diff --git a/app/src/main/java/com/example/haiwei_mom/wms/raw/Return2Activity.java b/app/src/main/java/com/example/haiwei_mom/wms/raw/Return2Activity.java new file mode 100644 index 0000000..959ffff --- /dev/null +++ b/app/src/main/java/com/example/haiwei_mom/wms/raw/Return2Activity.java @@ -0,0 +1,50 @@ +package com.example.haiwei_mom.wms.raw; + +import android.os.Bundle; +import android.view.View; + +import androidx.databinding.DataBindingUtil; + +import com.example.haiwei_mom.R; +import com.example.haiwei_mom.base.BaseActivity; +import com.example.haiwei_mom.base.MyRecultCall; +import com.example.haiwei_mom.base.MyResult; +import com.example.haiwei_mom.data.WmsReturnOrderVo; +import com.example.haiwei_mom.databinding.ActivityReturn2Binding; +import com.lzy.okgo.OkGo; +import com.lzy.okgo.model.Response; + +public class Return2Activity extends BaseActivity { + private ActivityReturn2Binding binding; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + binding = DataBindingUtil.setContentView(this, R.layout.activity_return2); + } + + public void returnStoreSearch(View view) { + searchOrder(binding.materialReturnCode.getText().toString()); + } + + private void searchOrder(String code) { + OkGo.post(url + "/wms/pda/returnStore/selectByCode") + .params("code", code) + .execute(new MyRecultCall(dialog, this) { + @Override + public void onSuccess(Response response) { + super.onSuccess(response); + var body = response.body(); + if (body.getCode() == 200) { + WmsReturnOrderVo params = gson.fromJson(body.getDataJson(), WmsReturnOrderVo.class); + binding.setData(params); + return; + } + myToastUitls.show(body.getMsg()); + + } + }); + } + + +} \ No newline at end of file diff --git a/app/src/main/java/com/example/haiwei_mom/wms/raw/SpecialOutActivity.java b/app/src/main/java/com/example/haiwei_mom/wms/raw/SpecialOutActivity.java new file mode 100644 index 0000000..859a140 --- /dev/null +++ b/app/src/main/java/com/example/haiwei_mom/wms/raw/SpecialOutActivity.java @@ -0,0 +1,47 @@ +package com.example.haiwei_mom.wms.raw; + +import android.annotation.SuppressLint; +import android.os.Bundle; +import android.view.View; + +import androidx.databinding.DataBindingUtil; + +import com.example.haiwei_mom.R; +import com.example.haiwei_mom.base.BaseActivity; +import com.example.haiwei_mom.base.MyRecultCall; +import com.example.haiwei_mom.base.MyResult; +import com.example.haiwei_mom.data.RawOutSubmitBeen; +import com.example.haiwei_mom.databinding.ActivitySpecialOutBinding; +import com.lzy.okgo.OkGo; +import com.lzy.okgo.model.Response; + +import okhttp3.RequestBody; + +public class SpecialOutActivity extends BaseActivity { + private RawOutSubmitBeen submitBeen; + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + ActivitySpecialOutBinding binding=DataBindingUtil.setContentView(this, R.layout.activity_special_out); + submitBeen=new RawOutSubmitBeen(); + binding.setSubBeen(submitBeen); + } + + public void speOutSubmit(View view) { + OkGo.post(url + "/wms/pda/raw/specialOutSubmit") + .upRequestBody(RequestBody.create(JSON, gson.toJson(submitBeen))) + .execute(new MyRecultCall(dialog, this) { + @SuppressLint("NotifyDataSetChanged") + @Override + public void onSuccess(Response response) { + super.onSuccess(response); + var body = response.body(); + if (body.getCode() == 200) { + + return; + } + myToastUitls.show(body.getMsg()); + } + }); + } +} \ No newline at end of file diff --git a/app/src/main/res/layout/activity_home_page.xml b/app/src/main/res/layout/activity_home_page.xml index cc627b2..0866536 100644 --- a/app/src/main/res/layout/activity_home_page.xml +++ b/app/src/main/res/layout/activity_home_page.xml @@ -6,6 +6,11 @@ + + + +