java作业2.商品管理系统重写
1 ## 商品管理系统重写 2 3 ~~~java 4 package test03; 5 6 public class WarehouseInformation { 7 private String itemno;//编号 8 private String itemname;//名字 9 private String suppliername;//供应商 10 private String warehousingtime;//入库时间 11 private String shipmenttime;//出库时间 12 private String warehousenumber;//仓库号 13 private String warehouseplace;//具体位置 14 private int itemnumber;//入库数量 15 private int outnumber;//出库数量 16 17 public WarehouseInformation() { 18 this.itemno = ""; 19 this.itemname = ""; 20 this.suppliername = ""; 21 this.warehousingtime = ""; 22 this.shipmenttime = ""; 23 this.warehousenumber = ""; 24 this.warehouseplace = ""; 25 this.itemnumber = 0; 26 this.outnumber = 0; 27 } 28 29 public String getItemno() { 30 return itemno; 31 } 32 33 public void setItemno(String itemno) { 34 if(itemno.length() != 8){ 35 System.out.println("itemno输入格式有误,该项设置失败"); 36 } 37 else{ 38 this.itemno = itemno; 39 } 40 } 41 42 public String getItemname() { 43 return itemname; 44 } 45 46 public void setItemname(String itemname) { 47 this.itemname = itemname; 48 } 49 50 public String getSuppliername() { 51 return suppliername; 52 } 53 54 public void setSuppliername(String suppliername) { 55 this.suppliername = suppliername; 56 } 57 58 public String getWarehousingtime() { 59 return warehousingtime; 60 } 61 62 public void setWarehousingtime(String warehousingtime) { 63 if(warehousingtime.length() != 8){ 64 System.out.println("warehousingtime输入格式有误,该项设置失败"); 65 } 66 else { 67 this.warehousingtime = warehousingtime; 68 } 69 } 70 71 public String getShipmenttime() { 72 return shipmenttime; 73 } 74 75 public void setShipmenttime(String shipmenttime) { 76 if(shipmenttime.length() != 8){ 77 System.out.println("shipmenttime输入格式有误,该项设置失败"); 78 } 79 else{ 80 this.shipmenttime = shipmenttime; 81 } 82 } 83 84 public String getWarehousenumber() { 85 return warehousenumber; 86 } 87 88 public void setWarehousenumber(String warehousenumber) { 89 if(warehousenumber.length() != 3){ 90 System.out.println("warehousenumber输入格式有误,该项设置失败"); 91 } 92 else{ 93 this.warehousenumber = warehousenumber; 94 } 95 } 96 97 public String getWarehouseplace() { 98 return warehouseplace; 99 } 100 101 public void setWarehouseplace(String warehouseplace) { 102 if(warehouseplace.length() != 8){ 103 System.out.println("warehouseplace输入格式有误,该项设置失败"); 104 } 105 else{ 106 this.warehouseplace = warehouseplace; 107 } 108 109 } 110 111 public int getItemnumber() { 112 return itemnumber; 113 } 114 115 public void setItemnumber(int itemnumber) { 116 this.itemnumber = itemnumber; 117 } 118 119 public int getOutnumber() { 120 return outnumber; 121 } 122 123 public void setOutnumber(int outnumber) { 124 this.outnumber = outnumber; 125 } 126 127 public WarehouseInformation(String itemno, String itemname, String suppliername, String warehousingtime, String shipmenttime, String warehousenumber, String warehouseplace, int itemnumber, int outnumber) { 128 this.itemno = itemno; 129 this.itemname = itemname; 130 this.suppliername = suppliername; 131 this.warehousingtime = warehousingtime; 132 this.shipmenttime = shipmenttime; 133 this.warehousenumber = warehousenumber; 134 this.warehouseplace = warehouseplace; 135 this.itemnumber = itemnumber; 136 this.outnumber = outnumber; 137 } 138 public void showInformation() 139 { 140 System.out.println("*******************************************"); 141 System.out.println(" 石家庄铁道大学前进22软工开发有限公司"); 142 System.out.println(" 仓库管理系统2022版"); 143 System.out.println("*******************************************"); 144 System.out.println(" 1、商品编号:" + this.getItemno()); 145 System.out.println(" 2、商品名称:" + this.getItemname()); 146 System.out.println(" 3、供货商信息:" + this.getSuppliername()); 147 System.out.println(" 4、入库时间:" + this.getWarehousingtime()); 148 System.out.println(" 5、存放仓库号:" + this.getWarehousenumber()); 149 System.out.println(" 6、存放位置信息:" + this.getWarehouseplace()); 150 System.out.println(" 7、入库商品数量:" + this.getItemnumber()); 151 } 152 } 153 154 ~~~ 155 156 ~~~java 157 package test03; 158 import java.util.Scanner; 159 public class WarehouseManagement { 160 static int N = 0; 161 public static void main(String[] args) { 162 Scanner scanner = new Scanner(System.in); 163 WarehouseInformation[] w = new WarehouseInformation[5]; 164 for(int i = 0;i<5;i++){ 165 w[i] = new WarehouseInformation(); 166 } 167 while (true) { 168 print(); 169 System.out.print("请输入选项:"); 170 int choice = scanner.nextInt(); 171 scanner.nextLine(); 172 switch (choice) { 173 case 1: 174 InHouse(scanner, w); 175 break; 176 case 2: 177 ReviseInformation(scanner,w); 178 break; 179 case 3: 180 181 OutHouse(scanner,w); 182 break; 183 case 4: 184 show(scanner,w); 185 break; 186 default: 187 System.out.println("该选项不存在"); 188 break; 189 } 190 } 191 } 192 static void InHouse(Scanner scanner, WarehouseInformation[] w) { 193 WarehouseInformation tmp = new WarehouseInformation(); 194 tmp = w[N]; 195 int n1 = 8; 196 int n2 = 3; 197 boolean flag = true; 198 String itemno = ""; 199 String warehousingtime = ""; 200 String warehousenumber =""; 201 String warehouseplace = ""; 202 203 System.out.print("请输入商品编号:"); 204 itemno = inLegal(flag,n1,itemno,scanner); 205 flag = true; 206 207 System.out.print("请输入商品名称:"); 208 String itemname = scanner.nextLine(); 209 210 System.out.print("请输入供货商信息:"); 211 String suppliername = scanner.nextLine(); 212 213 System.out.print("请输入入库时间:"); 214 warehousingtime = inLegal(flag,n1,warehousingtime,scanner); 215 flag = true; 216 217 System.out.print("请输入存放仓库号:"); 218 warehousenumber = inLegal(flag,n2,warehousenumber,scanner); 219 flag = true; 220 221 System.out.print("请输入存放位置信息:"); 222 warehouseplace = inLegal(flag,n1,warehouseplace,scanner); 223 flag = true; 224 225 System.out.print("请输入入库商品数量:"); 226 int itemnumber = scanner.nextInt(); 227 scanner.nextLine(); 228 229 inprint(itemno,itemname,suppliername,warehousingtime,warehousenumber,warehouseplace,itemnumber); 230 231 String c = scanner.nextLine(); 232 if (c.equals("Y")) { 233 N++; 234 tmp.setItemno(itemno); 235 tmp.setItemname(itemname); 236 tmp.setSuppliername(suppliername); 237 tmp.setWarehousingtime(warehousingtime); 238 tmp.setWarehousenumber(warehousenumber); 239 tmp.setWarehouseplace(warehouseplace); 240 tmp.setItemnumber(itemnumber); 241 System.out.println("保存成功"); 242 return; 243 } else { 244 return; 245 } 246 } 247 248 static void ReviseInformation(Scanner scanner, WarehouseInformation[] w) { 249 WarehouseInformation tmp = new WarehouseInformation(); 250 boolean flag1 = true; 251 while (true) { 252 System.out.println("*******************************************"); 253 System.out.println(" 石家庄铁道大学前进22软工开发有限公司"); 254 System.out.println(" 仓库管理系统2022版"); 255 System.out.println("*******************************************"); 256 System.out.print(" 请输入商品编号(输入111退出):"); 257 String b = scanner.nextLine(); 258 if(b.equals("111")) return; 259 for (int i = 0; i < 5; i++) { 260 tmp = w[i]; 261 if (b.equals(tmp.getItemno())) { 262 flag1 = false; 263 tmp.showInformation(); 264 System.out.print(" 请输入需要修改的信息编号(1-7):"); 265 int choice = scanner.nextInt(); 266 scanner.nextLine(); 267 switch (choice) { 268 case 1: 269 Revise(choice,tmp,scanner); 270 break; 271 case 2: 272 Revise(choice,tmp,scanner); 273 break; 274 case 3: 275 Revise(choice,tmp,scanner); 276 break; 277 case 4: 278 Revise(choice,tmp,scanner); 279 break; 280 case 5: 281 Revise(choice,tmp,scanner); 282 break; 283 case 6: 284 Revise(choice,tmp,scanner); 285 break; 286 case 7: 287 System.out.print("请输入修改后的入库商品数量:"); 288 int qi = scanner.nextInt(); 289 scanner.nextLine(); 290 System.out.println("是否保存信息(Y/N):"); 291 String a7 = scanner.nextLine(); 292 if (a7.equals("Y")) { 293 tmp.setItemnumber(qi); 294 System.out.println("保存成功"); 295 return; 296 } 297 scanner.nextLine(); 298 break; 299 default: 300 System.out.println("该选项不存在"); 301 scanner.nextLine(); 302 return; 303 } 304 System.out.println("*******************************************"); 305 } 306 } 307 if(flag1){ 308 System.out.println("库中没有该商品"); 309 return; 310 } 311 } 312 } 313 static void OutHouse(Scanner scanner, WarehouseInformation[] w) { 314 WarehouseInformation tmp = new WarehouseInformation(); 315 boolean flag = true; 316 while (true) { 317 System.out.println("*******************************************"); 318 System.out.println(" 石家庄铁道大学前进22软工开发有限公司"); 319 System.out.println(" 仓库管理系统2022版"); 320 System.out.println("*******************************************"); 321 System.out.print(" 请输入商品编号(输入111退出):"); 322 String b = scanner.nextLine(); 323 if(b.equals("111")) return; 324 for (int i = 0; i < 5; i++) { 325 tmp = w[i]; 326 if (b.equals(tmp.getItemno())) { 327 flag = false; 328 tmp.showInformation(); 329 System.out.print(" 请输入出库时间:"); 330 String shipmenttime = scanner.nextLine(); 331 int outTime = Integer.parseInt(shipmenttime); 332 int inTime = Integer.parseInt(tmp.getWarehousingtime()); 333 if(outTime<inTime){ 334 System.out.println("出库时间不得小于入库时间"); 335 return; 336 } 337 System.out.print(" 请输入出库数量:"); 338 int outnumber = scanner.nextInt(); 339 scanner.nextLine(); 340 int sumNumber = tmp.getItemnumber()-tmp.getOutnumber(); 341 if(outnumber>sumNumber){ 342 System.out.println("出库数量不得大于库存数量"); 343 return; 344 } 345 System.out.print("是否保存信息(Y/N):"); 346 String flag1 = scanner.nextLine(); 347 if (flag1.equals("Y")) { 348 tmp.setShipmenttime(shipmenttime); 349 int num = tmp.getItemnumber(); 350 tmp.setOutnumber(outnumber); 351 System.out.println("保存成功"); 352 return; 353 } 354 else{ 355 System.out.println("未保存,已退出"); 356 return; 357 } 358 } 359 } 360 } 361 } 362 static void show(Scanner scanner, WarehouseInformation[] w) 363 { 364 WarehouseInformation tmp = new WarehouseInformation(); 365 for(int i = 0;i<5;i++) 366 { 367 tmp = w[i]; 368 System.out.println("商品编号:"+tmp.getItemno()+" 商品名称:"+tmp.getItemname()+" 库存数量:"+(tmp.getItemnumber()-tmp.getOutnumber())); 369 } 370 } 371 static void print(){ 372 System.out.println("*******************************************"); 373 System.out.println(" 石家庄铁道大学前进22软工开发有限公司"); 374 System.out.println(" 仓库管理系统2022版"); 375 System.out.println("*******************************************"); 376 System.out.println(" 1、商品入库管理"); 377 System.out.println(" 2、商品信息修改"); 378 System.out.println(" 3、商品出库管理"); 379 System.out.println(" 4、仓库盘点管理"); 380 System.out.println("*******************************************"); 381 } 382 static void inprint(String itemno,String itemname,String suppliername,String warehousingtime,String warehousenumber,String warehouseplace,int itemnumber){ 383 System.out.println("*******************************************"); 384 System.out.println(" 石家庄铁道大学前进22软工开发有限公司"); 385 System.out.println(" 仓库管理系统2022版"); 386 System.out.println("*******************************************"); 387 System.out.println(" 商品编号:" + itemno); 388 System.out.println(" 商品名称:" + itemname); 389 System.out.println(" 供货商信息:" + suppliername); 390 System.out.println(" 入库时间:" + warehousingtime); 391 System.out.println(" 存放仓库号:" + warehousenumber); 392 System.out.println(" 存放位置信息:" + warehouseplace); 393 System.out.println(" 入库商品数量:" + itemnumber); 394 System.out.println(" 该商品入库操作已完成,是否提交(Y/N)"); 395 System.out.println("*******************************************"); 396 } 397 static void add(Scanner scanner,WarehouseInformation[] w){ 398 WarehouseInformation tmp1 = new WarehouseInformation(); 399 WarehouseInformation tmp2 = new WarehouseInformation(); 400 for(int i = 0;i<5;i++){ 401 tmp1 = w[i]; 402 for(int j = 1;j<5;j++){ 403 tmp2 = w[j]; 404 if(i!=j&&tmp1.getItemno().equals(tmp2.getItemno())){ 405 tmp1.setItemnumber(tmp1.getItemnumber()+tmp2.getItemnumber()); 406 tmp2.setItemnumber(tmp1.getItemnumber()+tmp2.getItemnumber()); 407 } 408 } 409 } 410 } 411 static String inLegal(boolean flag,int n,String s,Scanner scanner){ 412 while (flag) { 413 s = scanner.nextLine(); 414 if (s.length() != n) { 415 System.out.print("输入格式有误,请重新输入:"); 416 } else { 417 flag = false; 418 } 419 } 420 return s; 421 } 422 static void Revise(int choice,WarehouseInformation tmp ,Scanner scanner){ 423 System.out.print("请输入修改后的商品信息:"); 424 String revise = scanner.nextLine(); 425 System.out.println("是否保存信息(Y/N):"); 426 String flag = scanner.nextLine(); 427 if (flag.equals("Y")) { 428 switch(choice){ 429 case 1: 430 tmp.setItemno(revise); 431 break; 432 case 2: 433 tmp.setItemname(revise); 434 break; 435 case 3: 436 tmp.setSuppliername(revise); 437 break; 438 case 4: 439 tmp.setWarehousingtime(revise); 440 break; 441 case 5: 442 tmp.setWarehousenumber(revise); 443 break; 444 case 6: 445 tmp.setWarehouseplace(revise); 446 break; 447 } 448 System.out.println("保存成功"); 449 } 450 } 451 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?