提交 a20621d8 authored 作者: lgd's avatar lgd

1.r入库

2.//TODO erp用户激活测试,忘记/重置密码测试,领用申请列表/退件列表/参数,坩埚下单页面,组装下单,产品下单还差附件测试,mes,消息,刷新token
上级 c583000d
......@@ -928,6 +928,39 @@
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.order.ReturnApplyActivity"
android:configChanges="keyboardHidden|orientation"
android:label="退货申请列表"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.order.AddStockApplyActivity"
android:configChanges="keyboardHidden|orientation"
android:label="入库申请列表"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.order.AddStockApplyAddActivity"
android:configChanges="keyboardHidden|orientation"
android:label="添加入库申请"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.order.AddStockApplyDetailActivity"
android:configChanges="keyboardHidden|orientation"
android:label="入库申请详情"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="com.wd.workoffice.fileprovider"
......
package com.wd.workoffice.bean;
import java.util.List;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class AddStockBean {
/**
* records : [{"createdBy":675,"createdByName":"李凯","createdTime":"2020-04-12 20:34:30","updatedBy":null,"updatedByName":null,"updatedTime":null,"commenceFromId":null,"createdType":null,"id":223,"orderId":"SO10626","orderType":"SO","status":"0","applyRemark":"1","auditRemark":null,"serialNumber":"INI20041220342916","deptIdList":null,"ownId":null,"orderItemId":"4ae3333eebc5423e8a72e388e12fc42f","productId":29,"productName":"保护渣","productSoleCode":"70BHZBHZ1-1001","productSimpleCode":"BHZ1-1","productAmount":1,"qualityInspectionStatus":"0","qiApplyRemark":null,"qiAuditRemark":null,"boxCode":"1","qiAuditBy":null,"qiAuditTime":null,"qiAuditByName":null},{"createdBy":705,"createdByName":"Likai","createdTime":"2020-04-08 14:08:26","updatedBy":705,"updatedByName":"Likai","updatedTime":"2020-04-08 14:08:40","commenceFromId":null,"createdType":null,"id":222,"orderId":"SO10761","orderType":"SO","status":"1","applyRemark":"2","auditRemark":"s","serialNumber":"INI20040814082671","deptIdList":null,"ownId":null,"orderItemId":"9a1f38f80a564945987419817240a39b","productId":30,"productName":"整体塞棒","productSoleCode":"70GTB214001","productSimpleCode":"B214","productAmount":2,"qualityInspectionStatus":"0","qiApplyRemark":null,"qiAuditRemark":null,"boxCode":"2","qiAuditBy":null,"qiAuditTime":null,"qiAuditByName":null},{"createdBy":675,"createdByName":"李凯","createdTime":"2020-04-01 13:42:08","updatedBy":675,"updatedByName":"李凯","updatedTime":"2020-04-01 13:42:17","commenceFromId":null,"createdType":null,"id":221,"orderId":"SO10628","orderType":"SO","status":"1","applyRemark":"","auditRemark":"","serialNumber":"INI20040113420736","deptIdList":null,"ownId":null,"orderItemId":"9720e8cebb824bf1bbd4ee87d10f902c","productId":29,"productName":"保护渣","productSoleCode":"70BHZBHZ1-1001","productSimpleCode":"BHZ1-1","productAmount":1.2,"qualityInspectionStatus":"0","qiApplyRemark":null,"qiAuditRemark":null,"boxCode":"1","qiAuditBy":null,"qiAuditTime":null,"qiAuditByName":null},{"createdBy":675,"createdByName":"李凯","createdTime":"2020-04-01 11:16:40","updatedBy":675,"updatedByName":"李凯","updatedTime":"2020-04-01 11:16:46","commenceFromId":null,"createdType":null,"id":216,"orderId":"SO10744","orderType":"SO","status":"1","applyRemark":"","auditRemark":"","serialNumber":"INI20040111164043","deptIdList":null,"ownId":null,"orderItemId":"50207b598298430aa0b77cc5a6865844","productId":31,"productName":"塞棒","productSoleCode":"70TNB393001","productSimpleCode":"B393","productAmount":2,"qualityInspectionStatus":"0","qiApplyRemark":null,"qiAuditRemark":null,"boxCode":"2","qiAuditBy":null,"qiAuditTime":null,"qiAuditByName":null},{"createdBy":705,"createdByName":"Likai","createdTime":"2020-03-31 17:41:33","updatedBy":705,"updatedByName":"Likai","updatedTime":"2020-04-01 11:08:06","commenceFromId":null,"createdType":null,"id":213,"orderId":"SO10755","orderType":"SO","status":"1","applyRemark":"222","auditRemark":"","serialNumber":"INI20033117413361","deptIdList":null,"ownId":null,"orderItemId":"87395083e98b4828be9c52ceafeddfdb","productId":16404,"productName":"垫片","productSoleCode":"wer","productSimpleCode":"wer","productAmount":2,"qualityInspectionStatus":"0","qiApplyRemark":null,"qiAuditRemark":null,"boxCode":"2222","qiAuditBy":null,"qiAuditTime":null,"qiAuditByName":null},{"createdBy":803,"createdByName":"测试员","createdTime":"2020-03-31 09:52:19","updatedBy":803,"updatedByName":"测试员","updatedTime":"2020-03-31 09:52:47","commenceFromId":null,"createdType":null,"id":212,"orderId":"SO10750","orderType":"SO","status":"1","applyRemark":"1","auditRemark":"","serialNumber":"INI20033109521939","deptIdList":null,"ownId":null,"orderItemId":"0e071cf4258047c1b34e3d26891e2cfe","productId":16402,"productName":"测试单元","productSoleCode":"pinhao","productSimpleCode":"tuhao","productAmount":2,"qualityInspectionStatus":"0","qiApplyRemark":null,"qiAuditRemark":null,"boxCode":"1","qiAuditBy":null,"qiAuditTime":null,"qiAuditByName":null},{"createdBy":803,"createdByName":"测试员","createdTime":"2020-03-30 15:23:00","updatedBy":803,"updatedByName":"测试员","updatedTime":"2020-03-30 15:24:07","commenceFromId":null,"createdType":null,"id":210,"orderId":"SO10749","orderType":"SO","status":"1","applyRemark":"","auditRemark":"通过","serialNumber":"INI20033015225994","deptIdList":null,"ownId":null,"orderItemId":"88d163cc2a5b4547bdbafc797503a01f","productId":16402,"productName":"测试单元","productSoleCode":"pinhao","productSimpleCode":"tuhao","productAmount":1,"qualityInspectionStatus":"0","qiApplyRemark":null,"qiAuditRemark":null,"boxCode":"72","qiAuditBy":null,"qiAuditTime":null,"qiAuditByName":null},{"createdBy":680,"createdByName":"吴同得","createdTime":"2020-03-28 11:28:31","updatedBy":680,"updatedByName":"吴同得","updatedTime":"2020-03-28 11:29:59","commenceFromId":null,"createdType":null,"id":199,"orderId":"SO10744","orderType":"SO","status":"2","applyRemark":"1","auditRemark":"s","serialNumber":"INI20032811283095","deptIdList":null,"ownId":null,"orderItemId":"50207b598298430aa0b77cc5a6865844","productId":31,"productName":"塞棒","productSoleCode":"70TNB393001","productSimpleCode":"B393","productAmount":1,"qualityInspectionStatus":"0","qiApplyRemark":null,"qiAuditRemark":null,"boxCode":"1","qiAuditBy":null,"qiAuditTime":null,"qiAuditByName":null},{"createdBy":675,"createdByName":"李凯","createdTime":"2020-03-28 11:25:45","updatedBy":680,"updatedByName":"吴同得","updatedTime":"2020-03-28 11:26:45","commenceFromId":null,"createdType":null,"id":198,"orderId":"SO10744","orderType":"SO","status":"2","applyRemark":"1","auditRemark":"3","serialNumber":"INI20032811254474","deptIdList":null,"ownId":null,"orderItemId":"50207b598298430aa0b77cc5a6865844","productId":31,"productName":"塞棒","productSoleCode":"70TNB393001","productSimpleCode":"B393","productAmount":1,"qualityInspectionStatus":"0","qiApplyRemark":null,"qiAuditRemark":null,"boxCode":"1","qiAuditBy":null,"qiAuditTime":null,"qiAuditByName":null},{"createdBy":675,"createdByName":"李凯","createdTime":"2020-03-28 11:22:12","updatedBy":680,"updatedByName":"吴同得","updatedTime":"2020-03-28 11:24:54","commenceFromId":null,"createdType":null,"id":197,"orderId":"SO10744","orderType":"SO","status":"2","applyRemark":"","auditRemark":"e","serialNumber":"INI20032811221237","deptIdList":null,"ownId":null,"orderItemId":"50207b598298430aa0b77cc5a6865844","productId":31,"productName":"塞棒","productSoleCode":"70TNB393001","productSimpleCode":"B393","productAmount":1,"qualityInspectionStatus":"0","qiApplyRemark":null,"qiAuditRemark":null,"boxCode":"3","qiAuditBy":null,"qiAuditTime":null,"qiAuditByName":null}]
* total : 35
* size : 10
* current : 1
* orders : []
* searchCount : true
* pages : 4
*/
private int total;
private int size;
private int current;
private boolean searchCount;
private int pages;
private List<RecordsBean> records;
private List<?> orders;
public int getTotal() {
return total;
}
public void setTotal(int total) {
this.total = total;
}
public int getSize() {
return size;
}
public void setSize(int size) {
this.size = size;
}
public int getCurrent() {
return current;
}
public void setCurrent(int current) {
this.current = current;
}
public boolean isSearchCount() {
return searchCount;
}
public void setSearchCount(boolean searchCount) {
this.searchCount = searchCount;
}
public int getPages() {
return pages;
}
public void setPages(int pages) {
this.pages = pages;
}
public List<RecordsBean> getRecords() {
return records;
}
public void setRecords(List<RecordsBean> records) {
this.records = records;
}
public List<?> getOrders() {
return orders;
}
public void setOrders(List<?> orders) {
this.orders = orders;
}
public static class RecordsBean {
/**
* createdBy : 675
* createdByName : 李凯
* createdTime : 2020-04-12 20:34:30
* updatedBy : null
* updatedByName : null
* updatedTime : null
* commenceFromId : null
* createdType : null
* id : 223
* orderId : SO10626
* orderType : SO
* status : 0
* applyRemark : 1
* auditRemark : null
* serialNumber : INI20041220342916
* deptIdList : null
* ownId : null
* orderItemId : 4ae3333eebc5423e8a72e388e12fc42f
* productId : 29
* productName : 保护渣
* productSoleCode : 70BHZBHZ1-1001
* productSimpleCode : BHZ1-1
* productAmount : 1.0
* qualityInspectionStatus : 0
* qiApplyRemark : null
* qiAuditRemark : null
* boxCode : 1
* qiAuditBy : null
* qiAuditTime : null
* qiAuditByName : null
*/
private int createdBy;
private String createdByName;
private String createdTime;
private Object updatedBy;
private Object updatedByName;
private Object updatedTime;
private Object commenceFromId;
private Object createdType;
private int id;
private String orderId;
private String orderType;
private String status;
private String applyRemark;
private Object auditRemark;
private String serialNumber;
private Object deptIdList;
private Object ownId;
private String orderItemId;
private int productId;
private String productName;
private String productSoleCode;
private String productSimpleCode;
private double productAmount;
private String qualityInspectionStatus;
private Object qiApplyRemark;
private Object qiAuditRemark;
private String boxCode;
private Object qiAuditBy;
private Object qiAuditTime;
private Object qiAuditByName;
public int getCreatedBy() {
return createdBy;
}
public void setCreatedBy(int createdBy) {
this.createdBy = createdBy;
}
public String getCreatedByName() {
return createdByName;
}
public void setCreatedByName(String createdByName) {
this.createdByName = createdByName;
}
public String getCreatedTime() {
return createdTime;
}
public void setCreatedTime(String createdTime) {
this.createdTime = createdTime;
}
public Object getUpdatedBy() {
return updatedBy;
}
public void setUpdatedBy(Object updatedBy) {
this.updatedBy = updatedBy;
}
public Object getUpdatedByName() {
return updatedByName;
}
public void setUpdatedByName(Object updatedByName) {
this.updatedByName = updatedByName;
}
public Object getUpdatedTime() {
return updatedTime;
}
public void setUpdatedTime(Object updatedTime) {
this.updatedTime = updatedTime;
}
public Object getCommenceFromId() {
return commenceFromId;
}
public void setCommenceFromId(Object commenceFromId) {
this.commenceFromId = commenceFromId;
}
public Object getCreatedType() {
return createdType;
}
public void setCreatedType(Object createdType) {
this.createdType = createdType;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getOrderId() {
return orderId;
}
public void setOrderId(String orderId) {
this.orderId = orderId;
}
public String getOrderType() {
return orderType;
}
public void setOrderType(String orderType) {
this.orderType = orderType;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getApplyRemark() {
return applyRemark;
}
public void setApplyRemark(String applyRemark) {
this.applyRemark = applyRemark;
}
public Object getAuditRemark() {
return auditRemark;
}
public void setAuditRemark(Object auditRemark) {
this.auditRemark = auditRemark;
}
public String getSerialNumber() {
return serialNumber;
}
public void setSerialNumber(String serialNumber) {
this.serialNumber = serialNumber;
}
public Object getDeptIdList() {
return deptIdList;
}
public void setDeptIdList(Object deptIdList) {
this.deptIdList = deptIdList;
}
public Object getOwnId() {
return ownId;
}
public void setOwnId(Object ownId) {
this.ownId = ownId;
}
public String getOrderItemId() {
return orderItemId;
}
public void setOrderItemId(String orderItemId) {
this.orderItemId = orderItemId;
}
public int getProductId() {
return productId;
}
public void setProductId(int productId) {
this.productId = productId;
}
public String getProductName() {
return productName;
}
public void setProductName(String productName) {
this.productName = productName;
}
public String getProductSoleCode() {
return productSoleCode;
}
public void setProductSoleCode(String productSoleCode) {
this.productSoleCode = productSoleCode;
}
public String getProductSimpleCode() {
return productSimpleCode;
}
public void setProductSimpleCode(String productSimpleCode) {
this.productSimpleCode = productSimpleCode;
}
public double getProductAmount() {
return productAmount;
}
public void setProductAmount(double productAmount) {
this.productAmount = productAmount;
}
public String getQualityInspectionStatus() {
return qualityInspectionStatus;
}
public void setQualityInspectionStatus(String qualityInspectionStatus) {
this.qualityInspectionStatus = qualityInspectionStatus;
}
public Object getQiApplyRemark() {
return qiApplyRemark;
}
public void setQiApplyRemark(Object qiApplyRemark) {
this.qiApplyRemark = qiApplyRemark;
}
public Object getQiAuditRemark() {
return qiAuditRemark;
}
public void setQiAuditRemark(Object qiAuditRemark) {
this.qiAuditRemark = qiAuditRemark;
}
public String getBoxCode() {
return boxCode;
}
public void setBoxCode(String boxCode) {
this.boxCode = boxCode;
}
public Object getQiAuditBy() {
return qiAuditBy;
}
public void setQiAuditBy(Object qiAuditBy) {
this.qiAuditBy = qiAuditBy;
}
public Object getQiAuditTime() {
return qiAuditTime;
}
public void setQiAuditTime(Object qiAuditTime) {
this.qiAuditTime = qiAuditTime;
}
public Object getQiAuditByName() {
return qiAuditByName;
}
public void setQiAuditByName(Object qiAuditByName) {
this.qiAuditByName = qiAuditByName;
}
}
}
......@@ -876,7 +876,7 @@ public class OrderDetail {
private String productUnit;
private double productWeight;
private double canOutStoreProductSum;
private int canInStoreProductSum;
private double canInStoreProductSum;
private double canUseProductSum;
private Object canPackageSum;
private Object launchDeptName;
......@@ -1173,11 +1173,11 @@ public class OrderDetail {
this.canOutStoreProductSum = canOutStoreProductSum;
}
public int getCanInStoreProductSum() {
public double getCanInStoreProductSum() {
return canInStoreProductSum;
}
public void setCanInStoreProductSum(int canInStoreProductSum) {
public void setCanInStoreProductSum(double canInStoreProductSum) {
this.canInStoreProductSum = canInStoreProductSum;
}
......
package com.wd.workoffice.bean;
import java.util.List;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class ReturnApplyBean {
/**
* records : [{"createdBy":675,"createdByName":"李凯","createdTime":"2020-04-01 13:43:26","updatedBy":675,"updatedByName":"李凯","updatedTime":"2020-04-01 13:43:47","commenceFromId":null,"createdType":null,"id":126,"orderId":"SO10723","orderType":"SO","status":"14","applyRemark":"","auditRemark":"","serialNumber":"RF20040113432567","deptIdList":null,"ownId":null,"returnType":"1","returnTypeName":"从现场库退到内库","orderItemId":"dcdacb1ba85843d8b7d019a849c78cf3","productId":32,"backStockId":27,"productName":"浸入式水口(方坯)","productSoleCode":"70LTJ568-1001","productSimpleCode":"J568-1","productAmount":1,"writeOff":null,"boxCode":null,"backStockName":"销售一退货库"},{"createdBy":675,"createdByName":"李凯","createdTime":"2020-04-01 11:17:27","updatedBy":675,"updatedByName":"李凯","updatedTime":"2020-04-01 11:19:47","commenceFromId":null,"createdType":null,"id":125,"orderId":"SO10723","orderType":"SO","status":"14","applyRemark":"","auditRemark":"","serialNumber":"RF20040111172684","deptIdList":null,"ownId":null,"returnType":"1","returnTypeName":"从现场库退到内库","orderItemId":"dcdacb1ba85843d8b7d019a849c78cf3","productId":32,"backStockId":27,"productName":"浸入式水口(方坯)","productSoleCode":"70LTJ568-1001","productSimpleCode":"J568-1","productAmount":3,"writeOff":null,"boxCode":null,"backStockName":"销售一退货库"},{"createdBy":705,"createdByName":"Likai","createdTime":"2020-04-01 11:08:48","updatedBy":705,"updatedByName":"Likai","updatedTime":"2020-04-01 11:09:17","commenceFromId":null,"createdType":null,"id":124,"orderId":"SO10755","orderType":"SO","status":"14","applyRemark":"","auditRemark":"","serialNumber":"RF20040111084861","deptIdList":null,"ownId":null,"returnType":"1","returnTypeName":"从现场库退到内库","orderItemId":"87395083e98b4828be9c52ceafeddfdb","productId":16404,"backStockId":599,"productName":"垫片","productSoleCode":"wer","productSimpleCode":"wer","productAmount":1,"writeOff":null,"boxCode":null,"backStockName":"销售四退货库"},{"createdBy":803,"createdByName":"测试员","createdTime":"2020-03-30 16:10:57","updatedBy":803,"updatedByName":"测试员","updatedTime":"2020-03-30 16:12:34","commenceFromId":null,"createdType":null,"id":122,"orderId":"SO10749","orderType":"SO","status":"14","applyRemark":"没有","auditRemark":"","serialNumber":"RF20033016105693","deptIdList":null,"ownId":null,"returnType":"1","returnTypeName":"从现场库退到内库","orderItemId":"88d163cc2a5b4547bdbafc797503a01f","productId":16402,"backStockId":599,"productName":"测试单元","productSoleCode":"pinhao","productSimpleCode":"tuhao","productAmount":1,"writeOff":null,"boxCode":null,"backStockName":"销售四退货库"},{"createdBy":143,"createdByName":"冷益飞","createdTime":"2020-02-25 15:50:13","updatedBy":705,"updatedByName":"Likai","updatedTime":"2020-04-01 11:07:22","commenceFromId":null,"createdType":null,"id":118,"orderId":"SO10720","orderType":"SO","status":"14","applyRemark":"没有","auditRemark":"","serialNumber":"RF20022515501266","deptIdList":null,"ownId":null,"returnType":"1","returnTypeName":"从现场库退到内库","orderItemId":"d98edd0e59b2470daa112f2140f02a0f","productId":31,"backStockId":27,"productName":"塞棒","productSoleCode":"70TNB393001","productSimpleCode":"B393","productAmount":1,"writeOff":null,"boxCode":null,"backStockName":"销售一退货库"},{"createdBy":677,"createdByName":"陈起来","createdTime":"2020-02-25 10:41:25","updatedBy":677,"updatedByName":"陈起来","updatedTime":"2020-02-25 10:45:21","commenceFromId":null,"createdType":null,"id":115,"orderId":"SO10723","orderType":"SO","status":"14","applyRemark":"不要了","auditRemark":"","serialNumber":"RF20022510412549","deptIdList":null,"ownId":null,"returnType":"1","returnTypeName":"从现场库退到内库","orderItemId":"dcdacb1ba85843d8b7d019a849c78cf3","productId":32,"backStockId":27,"productName":"浸入式水口(方坯)","productSoleCode":"70LTJ568-1001","productSimpleCode":"J568-1","productAmount":5,"writeOff":null,"boxCode":null,"backStockName":"销售一退货库"},{"createdBy":111,"createdByName":"冯帆","createdTime":"2020-02-04 14:45:31","updatedBy":null,"updatedByName":null,"updatedTime":null,"commenceFromId":null,"createdType":null,"id":114,"orderId":"SO10628","orderType":"SO","status":"10","applyRemark":"E","auditRemark":null,"serialNumber":"RF20020414453193","deptIdList":null,"ownId":null,"returnType":"1","returnTypeName":"从现场库退到内库","orderItemId":"7e8385fbd6754b1b8b18832186736d4c","productId":30,"backStockId":36,"productName":"整体塞棒","productSoleCode":"70GTB214001","productSimpleCode":"B214","productAmount":1,"writeOff":null,"boxCode":null,"backStockName":"钢板才未结算库"},{"createdBy":680,"createdByName":"吴同得","createdTime":"2020-01-03 14:55:54","updatedBy":680,"updatedByName":"吴同得","updatedTime":"2020-01-03 14:56:03","commenceFromId":null,"createdType":null,"id":113,"orderId":"SO10630","orderType":"SO","status":"21","applyRemark":"Beizhu ","auditRemark":"Beizhu ","serialNumber":"RF20010314555426","deptIdList":null,"ownId":null,"returnType":"1","returnTypeName":"从现场库退到内库","orderItemId":"d46bfe8bd5434a30b31e578685ab2b34","productId":29,"backStockId":27,"productName":"保护渣","productSoleCode":"70BHZBHZ1-1001","productSimpleCode":"BHZ1-1","productAmount":1,"writeOff":null,"boxCode":null,"backStockName":"销售一退货库"},{"createdBy":680,"createdByName":"吴同得","createdTime":"2020-01-03 14:54:13","updatedBy":680,"updatedByName":"吴同得","updatedTime":"2020-01-03 14:54:33","commenceFromId":null,"createdType":null,"id":112,"orderId":"SO10630","orderType":"SO","status":"21","applyRemark":"Beizhu ","auditRemark":"Beizhu ","serialNumber":"RF20010314541238","deptIdList":null,"ownId":null,"returnType":"1","returnTypeName":"从现场库退到内库","orderItemId":"d46bfe8bd5434a30b31e578685ab2b34","productId":29,"backStockId":27,"productName":"保护渣","productSoleCode":"70BHZBHZ1-1001","productSimpleCode":"BHZ1-1","productAmount":1,"writeOff":null,"boxCode":null,"backStockName":"销售一退货库"},{"createdBy":143,"createdByName":"冷益飞","createdTime":"2020-01-02 09:11:39","updatedBy":680,"updatedByName":"吴同得","updatedTime":"2020-01-03 14:53:09","commenceFromId":null,"createdType":null,"id":105,"orderId":"SO10625","orderType":"SO","status":"21","applyRemark":"损坏","auditRemark":"1 ","serialNumber":"RF20010209113864","deptIdList":null,"ownId":null,"returnType":"1","returnTypeName":"从现场库退到内库","orderItemId":"6ec208e5b29d4c55883829263b097b27","productId":29,"backStockId":27,"productName":"保护渣","productSoleCode":"70BHZBHZ1-1001","productSimpleCode":"BHZ1-1","productAmount":0.985,"writeOff":null,"boxCode":null,"backStockName":"销售一退货库"}]
* total : 11
* size : 10
* current : 1
* orders : []
* searchCount : true
* pages : 2
*/
private int total;
private int size;
private int current;
private boolean searchCount;
private int pages;
private List<RecordsBean> records;
private List<?> orders;
public int getTotal() {
return total;
}
public void setTotal(int total) {
this.total = total;
}
public int getSize() {
return size;
}
public void setSize(int size) {
this.size = size;
}
public int getCurrent() {
return current;
}
public void setCurrent(int current) {
this.current = current;
}
public boolean isSearchCount() {
return searchCount;
}
public void setSearchCount(boolean searchCount) {
this.searchCount = searchCount;
}
public int getPages() {
return pages;
}
public void setPages(int pages) {
this.pages = pages;
}
public List<RecordsBean> getRecords() {
return records;
}
public void setRecords(List<RecordsBean> records) {
this.records = records;
}
public List<?> getOrders() {
return orders;
}
public void setOrders(List<?> orders) {
this.orders = orders;
}
public static class RecordsBean {
/**
* createdBy : 675
* createdByName : 李凯
* createdTime : 2020-04-01 13:43:26
* updatedBy : 675
* updatedByName : 李凯
* updatedTime : 2020-04-01 13:43:47
* commenceFromId : null
* createdType : null
* id : 126
* orderId : SO10723
* orderType : SO
* status : 14
* applyRemark :
* auditRemark :
* serialNumber : RF20040113432567
* deptIdList : null
* ownId : null
* returnType : 1
* returnTypeName : 从现场库退到内库
* orderItemId : dcdacb1ba85843d8b7d019a849c78cf3
* productId : 32
* backStockId : 27
* productName : 浸入式水口(方坯)
* productSoleCode : 70LTJ568-1001
* productSimpleCode : J568-1
* productAmount : 1.0
* writeOff : null
* boxCode : null
* backStockName : 销售一退货库
*/
private int createdBy;
private String createdByName;
private String createdTime;
private int updatedBy;
private String updatedByName;
private String updatedTime;
private Object commenceFromId;
private Object createdType;
private int id;
private String orderId;
private String orderType;
private String status;
private String applyRemark;
private String auditRemark;
private String serialNumber;
private Object deptIdList;
private Object ownId;
private String returnType;
private String returnTypeName;
private String orderItemId;
private int productId;
private int backStockId;
private String productName;
private String productSoleCode;
private String productSimpleCode;
private double productAmount;
private Object writeOff;
private Object boxCode;
private String backStockName;
public int getCreatedBy() {
return createdBy;
}
public void setCreatedBy(int createdBy) {
this.createdBy = createdBy;
}
public String getCreatedByName() {
return createdByName;
}
public void setCreatedByName(String createdByName) {
this.createdByName = createdByName;
}
public String getCreatedTime() {
return createdTime;
}
public void setCreatedTime(String createdTime) {
this.createdTime = createdTime;
}
public int getUpdatedBy() {
return updatedBy;
}
public void setUpdatedBy(int updatedBy) {
this.updatedBy = updatedBy;
}
public String getUpdatedByName() {
return updatedByName;
}
public void setUpdatedByName(String updatedByName) {
this.updatedByName = updatedByName;
}
public String getUpdatedTime() {
return updatedTime;
}
public void setUpdatedTime(String updatedTime) {
this.updatedTime = updatedTime;
}
public Object getCommenceFromId() {
return commenceFromId;
}
public void setCommenceFromId(Object commenceFromId) {
this.commenceFromId = commenceFromId;
}
public Object getCreatedType() {
return createdType;
}
public void setCreatedType(Object createdType) {
this.createdType = createdType;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getOrderId() {
return orderId;
}
public void setOrderId(String orderId) {
this.orderId = orderId;
}
public String getOrderType() {
return orderType;
}
public void setOrderType(String orderType) {
this.orderType = orderType;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getApplyRemark() {
return applyRemark;
}
public void setApplyRemark(String applyRemark) {
this.applyRemark = applyRemark;
}
public String getAuditRemark() {
return auditRemark;
}
public void setAuditRemark(String auditRemark) {
this.auditRemark = auditRemark;
}
public String getSerialNumber() {
return serialNumber;
}
public void setSerialNumber(String serialNumber) {
this.serialNumber = serialNumber;
}
public Object getDeptIdList() {
return deptIdList;
}
public void setDeptIdList(Object deptIdList) {
this.deptIdList = deptIdList;
}
public Object getOwnId() {
return ownId;
}
public void setOwnId(Object ownId) {
this.ownId = ownId;
}
public String getReturnType() {
return returnType;
}
public void setReturnType(String returnType) {
this.returnType = returnType;
}
public String getReturnTypeName() {
return returnTypeName;
}
public void setReturnTypeName(String returnTypeName) {
this.returnTypeName = returnTypeName;
}
public String getOrderItemId() {
return orderItemId;
}
public void setOrderItemId(String orderItemId) {
this.orderItemId = orderItemId;
}
public int getProductId() {
return productId;
}
public void setProductId(int productId) {
this.productId = productId;
}
public int getBackStockId() {
return backStockId;
}
public void setBackStockId(int backStockId) {
this.backStockId = backStockId;
}
public String getProductName() {
return productName;
}
public void setProductName(String productName) {
this.productName = productName;
}
public String getProductSoleCode() {
return productSoleCode;
}
public void setProductSoleCode(String productSoleCode) {
this.productSoleCode = productSoleCode;
}
public String getProductSimpleCode() {
return productSimpleCode;
}
public void setProductSimpleCode(String productSimpleCode) {
this.productSimpleCode = productSimpleCode;
}
public double getProductAmount() {
return productAmount;
}
public void setProductAmount(double productAmount) {
this.productAmount = productAmount;
}
public Object getWriteOff() {
return writeOff;
}
public void setWriteOff(Object writeOff) {
this.writeOff = writeOff;
}
public Object getBoxCode() {
return boxCode;
}
public void setBoxCode(Object boxCode) {
this.boxCode = boxCode;
}
public String getBackStockName() {
return backStockName;
}
public void setBackStockName(String backStockName) {
this.backStockName = backStockName;
}
}
}
package com.wd.workoffice.bean.event;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class CheckAddStockEvent {
public CheckAddStockEvent() {
}
}
......@@ -1196,5 +1196,38 @@ public interface ApiService {
*/
@PUT("/useApply/so/audit/{applyId}")
Observable<BaseBean> useApplyCheck(@Path("applyId") String applyId, @Body RequestBody requestBody);
/**
* step7_7-退货申请流水列表
*
* @return
*/
@GET("/returnApply/so/page/list")
Observable<BaseBean> returnApplyList(@QueryMap Map<String, Object> param);
/**
* step4_1-发起入库申请
*
* @return
*/
@POST(" /procedureStart/so/applyStock/{orderItemId}")
Observable<BaseBean> addStockApplyAdd(@Path("orderItemId") String orderItemId, @Body RequestBody requestBody);
/**
* /enterStoreApply/so/app/page/list
*
* @return
*/
@GET("/enterStoreApply/so/app/page/list")
Observable<BaseBean> addStockApplyList(@QueryMap Map<String, Object> param);
/**
* /enterStoreApply/so/app/page/list
*
* @return
*/
@PUT("/enterStoreApply/so/audit/{id}")
Observable<BaseBean> addStockApplyCheck(@Path("id") String id, @Body RequestBody requestBody);
}
package com.wd.workoffice.ui.activity.bat.order;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.Menu;
import android.view.MenuItem;
import com.google.android.material.tabs.TabLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.ui.adapter.VpDataAdapter;
import com.wd.workoffice.ui.fg.AddStockApplyFragment;
import com.wd.workoffice.ui.fg.UseApplyFragment;
import java.util.ArrayList;
import java.util.List;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.viewpager.widget.ViewPager;
import butterknife.BindView;
import butterknife.ButterKnife;
/**
* 发货申请列表
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class AddStockApplyActivity extends WorkToolBarActivity {
@BindView(R.id.tl_tab)
TabLayout tlTab;
@BindView(R.id.vp_data)
ViewPager vpData;
private String tab[] = {
"待审核", "已通过", "已驳回"};
private String order[] = {
"0", "1", "2"};
@Override
protected void initView() {
ButterKnife.bind(this);
tlTab.setupWithViewPager(vpData);
tlTab.setTabMode(TabLayout.MODE_FIXED);
}
@Override
protected void initData() {
FragmentManager sfm = getSupportFragmentManager();
List<Fragment> data = new ArrayList<>();
for (int i = 0; i < tab.length; i++) {
AddStockApplyFragment saleFragment = new AddStockApplyFragment();
Bundle bundle = new Bundle();
bundle.putString("state", order[i]);
bundle.putString("orderId", getIntent().getStringExtra("orderId"));
bundle.putString("productId", getIntent().getStringExtra("productId"));
bundle.putString("num", getIntent().getStringExtra("num"));
saleFragment.setArguments(bundle);
data.add(saleFragment);
}
VpDataAdapter vpFgAdapter = new VpDataAdapter(sfm, data);
vpData.setAdapter(vpFgAdapter);
for (int i = 0; i < tab.length; i++) {
tlTab.getTabAt(i).setText(tab[i]);
}
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_order;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
if (TextUtils.equals(getIntent().getStringExtra("status"), "300")) {
getMenuInflater().inflate(R.menu.menu_add, menu);
}
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.add:
startActivity(AddStockApplyAddActivity.class,
"num", getIntent().getStringExtra("num"),
"productId", getIntent().getStringExtra("productId"),
"orderItemId", getIntent().getStringExtra("orderItemId"),
"simpleCode", getIntent().getStringExtra("simpleCode"),
"id", getIntent().getStringExtra("orderId"));
break;
}
return super.onOptionsItemSelected(item);
}
}
package com.wd.workoffice.ui.activity.bat.order;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.widget.EditText;
import android.widget.TextView;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.event.CheckAddStockEvent;
import com.wd.workoffice.bean.event.CheckUseEvent;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.util.WorkUtils;
import org.greenrobot.eventbus.EventBus;
import java.util.HashMap;
import java.util.Map;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.disposables.Disposable;
/**
* 添加发货
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class AddStockApplyAddActivity extends WorkToolBarActivity {
@BindView(R.id.tv_bottom)
TextView tvBottom;
@BindView(R.id.et_img_code)
TextView etImgCode;
@BindView(R.id.tv_num)
TextView tvNum;
@BindView(R.id.et_num)
EditText etNum;
@BindView(R.id.et_remark)
EditText etRemark;
@BindView(R.id.tv_remark_num)
TextView tvRemarkNum;
@BindView(R.id.et_box_num)
EditText etBoxNum;
private Map<String, Object> param;
@Override
protected void initView() {
ButterKnife.bind(this);
}
@Override
protected void initData() {
tvNum.setText(String.format("最大领用数量(%s)", getIntent().getStringExtra("num")));
param = new HashMap<>();
param.put("productId", getIntent().getStringExtra("productId"));
param.put("simpleCode", getIntent().getStringExtra("simpleCode"));
etImgCode.setText(getIntent().getStringExtra("simpleCode"));
}
@Override
protected void initEvent() {
etRemark.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
tvRemarkNum.setText(s.length() + "/140");
}
});
}
@Override
protected int layoutId() {
return R.layout.activity_add_stock_apply_add;
}
@OnClick(R.id.tv_bottom)
public void onViewClicked() {
submit();
}
private void submit() {
String num = etNum.getText().toString();
String remark = etRemark.getText().toString();
String boxCode = etBoxNum.getText().toString();
if (TextUtils.isEmpty(num)) {
toast("请输入库数量");
return;
}
param.put("productAmount", num);
param.put("boxCode", boxCode);
param.put("orderItemId", getIntent().getStringExtra("orderItemId"));
param.put("applyRemark", remark);
RtfUtils.getRtf().addStockApplyAdd(getIntent().getStringExtra("id"), WorkUtils.convertMapToBody(param)).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
}
@Override
public void onFail(String errorMsg) {
hideLoading();
toast(errorMsg);
}
@Override
public void onSuccess(BaseBean data) {
hideLoading();
if (data.getCode() != 0) {
toast(data.getMessage());
return;
}
toast("提交申请成功");
EventBus.getDefault().post(new CheckAddStockEvent());
finish();
}
});
}
}
package com.wd.workoffice.ui.activity.bat.order;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.UseApplyBean;
import com.wd.workoffice.bean.event.CheckAddStockEvent;
import com.wd.workoffice.bean.event.CheckUseEvent;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.util.WorkUtils;
import org.greenrobot.eventbus.EventBus;
import java.util.Map;
import androidx.appcompat.app.AlertDialog;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.disposables.Disposable;
/**
* 领用详情
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class AddStockApplyDetailActivity extends WorkToolBarActivity {
@BindView(R.id.tv_refuse)
TextView tvRefuse;
@BindView(R.id.tv_agree)
TextView tvAgree;
@BindView(R.id.ll_bottom)
LinearLayout llBottom;
@BindView(R.id.tv_num)
TextView tvNum;
@BindView(R.id.tv_person)
TextView tvPerson;
@BindView(R.id.tv_time)
TextView tvTime;
@BindView(R.id.tv_remark)
TextView tvRemark;
@BindView(R.id.tv_check_person)
TextView tvCheckPerson;
@BindView(R.id.tv_check_time)
TextView tvCheckTime;
@BindView(R.id.tv_check_remark)
TextView tvCheckRemark;
@BindView(R.id.tv_check_status)
TextView tvCheckStatus;
@BindView(R.id.ll_check)
LinearLayout llCheck;
@BindView(R.id.tv_box_num)
TextView tvBoxNum;
private UseApplyBean.RecordsBean info;
@Override
protected void initView() {
ButterKnife.bind(this);
}
@Override
protected void initData() {
info = JSON.parseObject(getIntent().getStringExtra("info"), UseApplyBean.RecordsBean.class);
tvNum.setText(String.valueOf(info.getProductAmount()));
tvBoxNum.setText(String.valueOf(info.getBoxCode()));
tvPerson.setText(String.valueOf(info.getCreatedByName()));
tvTime.setText(info.getCreatedTime());
tvRemark.setText(String.valueOf(info.getApplyRemark()));
if (TextUtils.equals(info.getStatus(), "0")) {
llBottom.setVisibility(View.VISIBLE);
llCheck.setVisibility(View.GONE);
} else {
llBottom.setVisibility(View.GONE);
llCheck.setVisibility(View.VISIBLE);
tvCheckPerson.setText(info.getUpdatedByName());
tvCheckTime.setText(info.getUpdatedTime());
tvCheckRemark.setText(info.getAuditRemark());
tvCheckStatus.setText(WorkUtils.getFinancialStatus(Integer.valueOf(info.getStatus())));
}
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_add_stock_apply_detail;
}
@OnClick({R.id.tv_refuse, R.id.tv_agree})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.tv_refuse:
checkDialog(2, info.getId());
break;
case R.id.tv_agree:
checkDialog(1, info.getId());
break;
}
}
private void checkDialog(int status, int id) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
View view = LayoutInflater.from(this).inflate(R.layout.view_check, null);
TextView tvOk = view.findViewById(R.id.tv_ok);
TextView tvDesc = view.findViewById(R.id.tv_desc);
tvDesc.setText(status == 1 ? "通过" : "拒绝");
TextView tvNum = view.findViewById(R.id.tv_num);
TextView tvCancel = view.findViewById(R.id.tv_cancel);
EditText etRemark = view.findViewById(R.id.et_content);
etRemark.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
tvNum.setText(s.length() + "/140");
}
});
builder.setView(view);
AlertDialog addCartDialog = builder.create();
tvOk.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (TextUtils.isEmpty(etRemark.getText().toString()) && status == 2) {
toast("请填写备注");
return;
}
check(status, etRemark.getText().toString(), id);
addCartDialog.dismiss();
}
});
tvCancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
addCartDialog.dismiss();
}
});
addCartDialog.show();
}
private void check(int status, String remark, int id) {
Map<String, Object> param = WorkUtils.simpleParam();
param.put("result", status);
param.put("comment", remark);
param.put("id", id);
RtfUtils.getRtf().addStockApplyCheck(id + "", WorkUtils.convertMapToBody(param)).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
}
@Override
public void onFail(String errorMsg) {
hideLoading();
toast(errorMsg);
}
@Override
public void onSuccess(BaseBean data) {
hideLoading();
if (data.getCode() != 0) {
toast(data.getMessage());
return;
}
toast("操作成功");
EventBus.getDefault().post(new CheckAddStockEvent());
}
});
}
}
package com.wd.workoffice.ui.activity.bat.order;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshListener;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.EndApplyBean;
import com.wd.workoffice.bean.ReturnApplyBean;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.EndApplyAdapter;
import com.wd.workoffice.ui.adapter.RetrunSendApplyAdapter;
import com.wd.workoffice.util.WorkUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.disposables.Disposable;
/**
* 提前结束
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class ReturnApplyActivity extends WorkToolBarActivity {
@BindView(R.id.rv_data)
RecyclerView rvData;
@BindView(R.id.srl_refresh)
SmartRefreshLayout srlRefresh;
private Map<String, Object> param;
private List<ReturnApplyBean.RecordsBean> dataList;
private RetrunSendApplyAdapter dataAdapter;
private int page = 1;
@Override
protected void initView() {
ButterKnife.bind(this);
rvData.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
}
@Override
protected void initData() {
dataList = new ArrayList<>();
dataAdapter = new RetrunSendApplyAdapter(R.layout.item_return_apply, dataList);
dataAdapter.bindToRecyclerView(rvData);
dataAdapter.setEmptyView(R.layout.view_empty_content, rvData);
param = WorkUtils.pageKey();
page = 1;
param.put("current", page);
param.put("orderId", getIntent().getStringExtra("orderId"));
// param.put("productId", getIntent().getStringExtra("productId"));
getData();
}
private void getData() {
RtfUtils.getRtf().returnApplyList(param).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
}
@Override
public void onFail(String errorMsg) {
hideLoading();
toast(errorMsg);
}
@Override
public void onSuccess(BaseBean data) {
hideLoading();
if (data.getCode() != 0) {
toast(data.getMessage());
return;
}
List<ReturnApplyBean.RecordsBean> getList = JSON.parseObject(data.getData().toString(), ReturnApplyBean.class).getRecords();
if (page == 1) {
srlRefresh.finishRefresh();
dataList.clear();
dataList.addAll(getList);
dataAdapter.notifyDataSetChanged();
dataAdapter.loadMoreComplete();
} else {
dataAdapter.loadMoreComplete();
dataList.addAll(getList);
dataAdapter.notifyDataSetChanged();
}
if (getList.size() == 0) {
dataAdapter.loadMoreEnd();
} else {
page++;
};
}
});
}
@Override
protected void initEvent() {
srlRefresh.setOnRefreshListener(new OnRefreshListener() {
@Override
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
page = 1;
param.put("current", page);
getData();
}
});
dataAdapter.setOnLoadMoreListener(new BaseQuickAdapter.RequestLoadMoreListener() {
@Override
public void onLoadMoreRequested() {
param.put("current", page);
getData();
}
}, rvData);
dataAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
startActivity(EndApplyDetailActivity.class, "info", JSON.toJSONString(dataList.get(position)));
}
});
}
@Override
protected int layoutId() {
return R.layout.activity_pro_price;
}
// @Override
// public boolean onCreateOptionsMenu(Menu menu) {
// if (TextUtils.equals("status", getIntent().getStringExtra("300"))) {
// getMenuInflater().inflate(R.menu.menu_add, menu);
// }
// return super.onCreateOptionsMenu(menu);
// }
//
// @Override
// public boolean onOptionsItemSelected(MenuItem item) {
// switch (item.getItemId()) {
// case R.id.add:
// checkDialog();
// break;
// }
// return super.onOptionsItemSelected(item);
// }
// private void checkDialog() {
// AlertDialog.Builder builder = new AlertDialog.Builder(this);
// View view = LayoutInflater.from(this).inflate(R.layout.view_check, null);
// TextView tvOk = view.findViewById(R.id.tv_ok);
// TextView tvDesc = view.findViewById(R.id.tv_desc);
// tvDesc.setText("提前申请结束");
// TextView tvNum = view.findViewById(R.id.tv_num);
// TextView tvCancel = view.findViewById(R.id.tv_cancel);
// EditText etRemark = view.findViewById(R.id.et_content);
// etRemark.addTextChangedListener(new TextWatcher() {
// @Override
// public void beforeTextChanged(CharSequence s, int start, int count, int after) {
//
// }
//
// @Override
// public void onTextChanged(CharSequence s, int start, int before, int count) {
//
// }
//
// @Override
// public void afterTextChanged(Editable s) {
// tvNum.setText(s.length() + "/140");
// }
// });
// builder.setView(view);
// AlertDialog addCartDialog = builder.create();
// tvOk.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// if (TextUtils.isEmpty(etRemark.getText().toString())) {
// toast("请填写原因");
// return;
// }
// check(etRemark.getText().toString());
// addCartDialog.dismiss();
// }
// });
// tvCancel.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// addCartDialog.dismiss();
// }
// });
// addCartDialog.show();
// }
//
//
// private void check(String remark) {
// Map<String, Object> param = WorkUtils.simpleParam();
// param.put("orderType", getIntent().getStringExtra("orderType"));
// param.put("applyRemark", remark);
// param.put("orderId", getIntent().getStringExtra("orderId"));
// RtfUtils.getRtf().endApply(getIntent().getStringExtra("orderId"), WorkUtils.convertMapToBody(param)).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
// @Override
// public void doOnSubscribe(Disposable d) {
// }
//
// @Override
// public void onFail(String errorMsg) {
// hideLoading();
// toast(errorMsg);
// }
//
// @Override
// public void onSuccess(BaseBean data) {
// hideLoading();
// if (data.getCode() != 0) {
// toast(data.getMessage());
// return;
// }
// toast("操作成功");
// getData();
// }
// });
// }
}
......@@ -9,8 +9,6 @@ import android.widget.TextView;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.OrderDetail;
import com.wd.workoffice.bean.event.CheckSendEvent;
import com.wd.workoffice.bean.event.CheckUseEvent;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
......@@ -85,7 +83,7 @@ public class UseApplyAddActivity extends WorkToolBarActivity {
@Override
protected int layoutId() {
return R.layout.activity_end_apply_add;
return R.layout.activity_use_apply_add;
}
......
......@@ -20,7 +20,9 @@ import com.wd.workoffice.bean.OrderDetail;
import com.wd.workoffice.bean.event.CheckTicketEvent;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.activity.bat.order.AddStockApplyActivity;
import com.wd.workoffice.ui.activity.bat.order.EndApplyActivity;
import com.wd.workoffice.ui.activity.bat.order.ReturnApplyActivity;
import com.wd.workoffice.ui.activity.bat.order.SendApplyActivity;
import com.wd.workoffice.ui.activity.bat.order.UseApplyActivity;
import com.wd.workoffice.ui.activity.bat.order.UseApplyAddActivity;
......@@ -232,8 +234,23 @@ public class SaleOrderDetailActivity extends WorkToolBarActivity {
"productId", proList.get(position).getProductId() + "");
break;
case R.id.tv_add:
startActivity(AddStockApplyActivity.class,
"status", dataBean.getStatus() + "",
"num", proList.get(position).getCanInStoreProductSum() + "",
"product", proList.get(position).getProductName(),
"simpleCode", proList.get(position).getProductSimpleCode(),
"orderId", getIntent().getStringExtra("id"),
"orderItemId", proList.get(position).getId(),
"productId", proList.get(position).getProductId() + "");
break;
case R.id.tv_return:
startActivity(ReturnApplyActivity.class,
"status", dataBean.getStatus() + "",
"num", proList.get(position).getStoreSum() + "",
"product", proList.get(position).getProductName(),
"simpleCode", proList.get(position).getProductSimpleCode(),
"orderId", getIntent().getStringExtra("id"),
"productId", proList.get(position).getProductId() + "");
break;
case R.id.tv_flow:
break;
......
package com.wd.workoffice.ui.adapter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.wd.workoffice.R;
import com.wd.workoffice.bean.AddStockBean;
import com.wd.workoffice.bean.ReturnApplyBean;
import com.wd.workoffice.util.WorkUtils;
import java.util.List;
import androidx.annotation.Nullable;
/**
* Created by flexible on 2018/8/13.
*/
public class AddStockSendApplyAdapter extends BaseQuickAdapter<AddStockBean.RecordsBean, BaseViewHolder> {
int status;
public AddStockSendApplyAdapter(int layoutResId, List data) {
super(layoutResId, data);
}
public AddStockSendApplyAdapter(int layoutResId, @Nullable List<AddStockBean.RecordsBean> data, int status) {
super(layoutResId, data);
this.status = status;
}
@Override
protected void convert(BaseViewHolder helper, AddStockBean.RecordsBean item) {
helper.setText(R.id.tv_name, item.getSerialNumber());
helper.setText(R.id.tv_num, String.valueOf(item.getProductAmount()));
helper.setText(R.id.tv_box_num, String.valueOf(item.getBoxCode()));
helper.setText(R.id.tv_time, item.getCreatedTime());
helper.setText(R.id.tv_status, WorkUtils.getReturnStatus(Integer.valueOf(item.getStatus())));
if (status == 0) {
helper.setVisible(R.id.ll_btn, true);
helper.addOnClickListener(R.id.tv_agree);
helper.addOnClickListener(R.id.tv_refuse);
}
}
}
package com.wd.workoffice.ui.adapter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.wd.workoffice.R;
import com.wd.workoffice.bean.ReturnApplyBean;
import com.wd.workoffice.bean.SendApplyBean;
import com.wd.workoffice.util.WorkUtils;
import java.util.List;
import androidx.annotation.Nullable;
/**
* Created by flexible on 2018/8/13.
*/
public class RetrunSendApplyAdapter extends BaseQuickAdapter<ReturnApplyBean.RecordsBean, BaseViewHolder> {
int status;
public RetrunSendApplyAdapter(int layoutResId, List data) {
super(layoutResId, data);
}
public RetrunSendApplyAdapter(int layoutResId, @Nullable List<ReturnApplyBean.RecordsBean> data, int status) {
super(layoutResId, data);
this.status = status;
}
@Override
protected void convert(BaseViewHolder helper, ReturnApplyBean.RecordsBean item) {
helper.setText(R.id.tv_name, String.format("%s发起的申请", item.getCreatedByName()));
helper.setText(R.id.tv_code, String.format("申请编号:%s", item.getSerialNumber()));
helper.setText(R.id.tv_num, String.valueOf(item.getProductAmount()));
helper.setText(R.id.tv_time, item.getCreatedTime());
helper.setText(R.id.tv_status, WorkUtils.getReturnStatus(Integer.valueOf(item.getStatus())));
helper.setText(R.id.tv_type, item.getReturnTypeName());
// if (status == 0) {
// helper.setVisible(R.id.ll_btn, true);
// helper.addOnClickListener(R.id.tv_agree);
// helper.addOnClickListener(R.id.tv_refuse);
// }
}
}
package com.wd.workoffice.ui.fg;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.AddStockBean;
import com.wd.workoffice.bean.SendApplyBean;
import com.wd.workoffice.bean.event.CheckAddStockEvent;
import com.wd.workoffice.bean.event.CheckSendEvent;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.activity.bat.order.AddStockApplyDetailActivity;
import com.wd.workoffice.ui.adapter.AddStockSendApplyAdapter;
import com.wd.workoffice.ui.adapter.SendApplyAdapter;
import com.wd.workoffice.util.WorkUtils;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AlertDialog;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.disposables.Disposable;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class AddStockApplyFragment extends WorkBaseFg {
@BindView(R.id.rv_data)
RecyclerView rvData;
@BindView(R.id.srl_refresh)
SmartRefreshLayout srlRefresh;
private String state;
private int page = 1;
private Map<String, Object> param;
private AddStockSendApplyAdapter dataAdapter;
private List<AddStockBean.RecordsBean> dataList;
private String orderId;
private String productId;
@Override
protected void initView() {
ButterKnife.bind(this, getContentView());
rvData.setLayoutManager(new LinearLayoutManager(getActivity(), RecyclerView.VERTICAL, false));
}
@Override
protected void initData() {
param = WorkUtils.pageKey();
param.put("status", state);
param.put("orderId", orderId);
param.put("productId", productId);
page = 1;
param.put("current", page);
dataList = new ArrayList<>();
dataAdapter = new AddStockSendApplyAdapter(R.layout.item_add_stock_apply, dataList, Integer.valueOf(state));
dataAdapter.bindToRecyclerView(rvData);
dataAdapter.setEmptyView(R.layout.view_empty_content, rvData);
getData();
}
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle arguments = getArguments();
if (arguments != null) {
state = arguments.getString("state");
orderId = arguments.getString("orderId");
productId = arguments.getString("productId");
}
}
private void getData() {
RtfUtils.getRtf().addStockApplyList(param).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
}
@Override
public void onFail(String errorMsg) {
hideLoading();
toast(errorMsg);
}
@Override
public void onSuccess(BaseBean data) {
hideLoading();
if (data.getCode() != 0) {
toast(data.getMessage());
return;
}
List<AddStockBean.RecordsBean> getList = JSON.parseObject(data.getData().toString(), AddStockBean.class).getRecords();
if (page == 1) {
srlRefresh.finishRefresh();
dataList.clear();
dataList.addAll(getList);
dataAdapter.notifyDataSetChanged();
dataAdapter.loadMoreComplete();
} else {
dataAdapter.loadMoreComplete();
dataList.addAll(getList);
dataAdapter.notifyDataSetChanged();
}
if (getList.size() == 0) {
dataAdapter.loadMoreEnd();
} else {
page++;
}
}
});
}
@Override
protected void initEvent() {
srlRefresh.setOnRefreshListener(refreshLayout -> {
page = 1;
param.put("current", page);
getData();
});
dataAdapter.setOnLoadMoreListener(() -> {
param.put("current", page);
getData();
}, rvData);
dataAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
startActivity(AddStockApplyDetailActivity.class, "info", JSON.toJSONString(dataList.get(position)));
}
});
dataAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
@Override
public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
switch (view.getId()) {
case R.id.tv_refuse:
checkDialog(2, dataList.get(position).getId());
break;
case R.id.tv_agree:
checkDialog(1, dataList.get(position).getId());
break;
}
}
});
}
private void checkDialog(int status, int id) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
View view = LayoutInflater.from(getActivity()).inflate(R.layout.view_check, null);
TextView tvOk = view.findViewById(R.id.tv_ok);
TextView tvDesc = view.findViewById(R.id.tv_desc);
tvDesc.setText(status == 1 ? "通过" : "拒绝");
TextView tvNum = view.findViewById(R.id.tv_num);
TextView tvCancel = view.findViewById(R.id.tv_cancel);
EditText etRemark = view.findViewById(R.id.et_content);
etRemark.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
tvNum.setText(s.length() + "/140");
}
});
builder.setView(view);
AlertDialog addCartDialog = builder.create();
tvOk.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (TextUtils.isEmpty(etRemark.getText().toString()) && status == 2) {
toast("请填写备注");
return;
}
check(status, etRemark.getText().toString(), id);
addCartDialog.dismiss();
}
});
tvCancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
addCartDialog.dismiss();
}
});
addCartDialog.show();
}
private void check(int status, String remark, int id) {
Map<String, Object> param = WorkUtils.simpleParam();
param.put("result", status);
param.put("comment", remark);
param.put("id", id);
RtfUtils.getRtf().addStockApplyCheck(id + "", WorkUtils.convertMapToBody(param)).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
}
@Override
public void onFail(String errorMsg) {
hideLoading();
toast(errorMsg);
}
@Override
public void onSuccess(BaseBean data) {
hideLoading();
if (data.getCode() != 0) {
toast(data.getMessage());
return;
}
toast("操作成功");
EventBus.getDefault().post(new CheckAddStockEvent());
}
});
}
@Override
protected int layoutId() {
return R.layout.fg_work_contacts;
}
@Override
public void onStart() {
super.onStart();
EventBus.getDefault().register(this);
}
@Override
public void onStop() {
super.onStop();
EventBus.getDefault().unregister(this);
}
@Subscribe
public void refresh(CheckAddStockEvent event) {
page = 1;
param.put("current", page);
getData();
}
}
......@@ -189,6 +189,24 @@ public class WorkUtils {
}
return name;
}
/**
* 财务状态
* 10未审核 11 12 13 14已通过 21 22 23 24不通过(尾号1部门管理员 2业务部 3财务部 4集团,首数字1:通过,2:驳回)
* @param code
* @return
*/
public static String getReturnStatus(Integer code) {
String name = "";
if (code ==10){
name="未审核";
}else if (code.toString().startsWith("1")){
name="已通过";
}
else if (code.toString().startsWith("2")){
name="已驳回";
}
return name;
}
/**
* 刷新token
......
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/tv_bottom"
android:layout_width="match_parent"
android:layout_height="48mm"
android:layout_alignParentBottom="true"
android:background="#5C768A"
android:gravity="center"
android:orientation="horizontal"
android:text="提交入库申请"
android:textColor="@color/white"
android:textSize="16sp" />
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/tv_bottom"
android:background="@color/white">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:text="图号"
android:textSize="14sp" />
<TextView
android:id="@+id/et_img_code"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginLeft="10mm"
android:layout_weight="1"
android:background="@null"
android:gravity="right"
android:padding="3mm"
android:textColor="@color/flexible_text_gray"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:id="@+id/tv_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:text="入库数量"
android:textSize="14sp" />
<EditText
android:id="@+id/et_num"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginLeft="10mm"
android:inputType="numberDecimal"
android:layout_weight="1"
android:background="@null"
android:gravity="right"
android:hint="输入数量"
android:padding="3mm"
android:textColor="@color/flexible_text_gray"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="9mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:text="箱号"
android:textSize="14sp" />
<EditText
android:id="@+id/et_box_num"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginLeft="10mm"
android:inputType="numberDecimal"
android:layout_weight="1"
android:background="@null"
android:gravity="right"
android:hint="输入数量"
android:padding="3mm"
android:textColor="@color/flexible_text_gray"
android:textSize="14sp" />
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="10mm"
android:text="申请备注:"
android:textSize="14sp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="20mm"
android:background="@drawable/shape_confirm_order"
android:orientation="vertical">
<EditText
android:id="@+id/et_remark"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="3mm"
android:background="@null"
android:gravity="top"
android:hint="请输入"
android:minLines="4"
android:padding="5mm"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_remark_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_margin="4mm"
android:text="0/140"
android:textColor="@color/flexible_text_gray" />
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</RelativeLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/ll_bottom"
android:layout_width="match_parent"
android:layout_height="60mm"
android:layout_alignParentBottom="true"
android:gravity="center_vertical|right"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_refuse"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@drawable/shape_red_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="拒绝"
android:textColor="@color/white" />
<TextView
android:id="@+id/tv_agree"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10mm"
android:background="@drawable/shape_green_btn"
android:paddingHorizontal="20mm"
android:paddingVertical="5mm"
android:text="同意"
android:textColor="@color/white" />
</LinearLayout>
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/ll_bottom"
android:background="@color/white">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/ll_bottom"
android:orientation="vertical"
android:paddingBottom="20mm">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="入库数量"
android:textSize="15sp" />
<TextView
android:id="@+id/tv_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="箱号"
android:textSize="15sp" />
<TextView
android:id="@+id/tv_box_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="申请人"
android:textSize="15sp" />
<TextView
android:id="@+id/tv_person"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="申请时间"
android:textSize="15sp" />
<TextView
android:id="@+id/tv_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="申请备注"
android:textSize="15sp" />
<TextView
android:id="@+id/tv_remark"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</RelativeLayout>
<View style="@style/dividerX" />
<LinearLayout
android:id="@+id/ll_check"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="1mm"
android:background="@color/white"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingVertical="10mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="审核人"
android:textSize="15sp" />
<TextView
android:id="@+id/tv_check_person"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3mm"
android:textColor="@color/flexible_text_gray"
android:textSize="12sp" />
</LinearLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="审核时间"
android:textSize="15sp" />
<TextView
android:id="@+id/tv_check_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</RelativeLayout>
<View style="@style/dividerX" />
<View style="@style/dividerX" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:paddingHorizontal="20mm"
android:paddingVertical="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="审核备注"
android:textSize="15sp" />
<TextView
android:id="@+id/tv_check_remark"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textColor="@color/flexible_text_gray"
android:textSize="15sp" />
</RelativeLayout>
<View style="@style/dividerX" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="1mm"
android:background="@color/white"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingVertical="10mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="审核状态"
android:textSize="15sp" />
<TextView
android:id="@+id/tv_check_status"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3mm"
android:textColor="@color/flexible_text_gray"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</RelativeLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="10mm"
android:background="@color/white"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingTop="10mm"
android:paddingBottom="20mm">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5mm">
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="邢台德龙钢铁客户"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_status"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:textColor="#0841F0"
android:textSize="14sp" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="入库数量:"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10mm"
android:text="箱号:"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_box_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="申请时间:"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginTop="10mm"
android:visibility="gone">
<TextView
android:id="@+id/tv_agree"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/selector_product_choose"
android:gravity="center"
android:paddingHorizontal="10mm"
android:paddingVertical="5mm"
android:text="通过"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_refuse"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10mm"
android:background="@drawable/selector_product_choose"
android:gravity="center"
android:paddingHorizontal="10mm"
android:paddingVertical="5mm"
android:text="驳回"
android:textSize="13sp" />
</LinearLayout>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="10mm"
android:background="@color/white"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingTop="10mm"
android:paddingBottom="20mm">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5mm">
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="邢台德龙钢铁客户"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:textColor="#0841F0"
android:textSize="14sp" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5mm">
<TextView
android:id="@+id/tv_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_status"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:textColor="#0841F0"
android:textSize="14sp" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="退货数量:"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="退货类别:"
android:textSize="16sp" />
<TextView
android:id="@+id/tv_type"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginTop="10mm"
android:visibility="gone">
<TextView
android:id="@+id/tv_agree"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/selector_product_choose"
android:gravity="center"
android:paddingHorizontal="10mm"
android:paddingVertical="5mm"
android:text="通过"
android:textSize="13sp" />
<TextView
android:id="@+id/tv_refuse"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10mm"
android:background="@drawable/selector_product_choose"
android:gravity="center"
android:paddingHorizontal="10mm"
android:paddingVertical="5mm"
android:text="驳回"
android:textSize="13sp" />
</LinearLayout>
</LinearLayout>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论