public static void zhongbiao(Long id) { Toubiao toubiao = Toubiao.findById(id); toubiao.status = "1"; toubiao.save(); Request request = toubiao.request; request.status = 1; request.zb = true; request.save(); List<Toubiao> toubiaos = Toubiao.find("request.id=? and id!=?", request.id, id).fetch(); for (Toubiao tb : toubiaos) { tb.status = "2"; tb.save(); } Config config = Config.find("1=1").first(); String message = ""; SendMessage m = new SendMessage(); message = "您已中标" + toubiao.request.name + "项目,请按时发货"; if (config.msg_request_invite != null && !"".equals(config.msg_request_invite)) { message = config.msg_request_notification.replace("{request}", toubiao.request.name); } Profile p = toubiao.profile; if (p.contact_phone != null && !"".equals(p.contact_phone)) m.sendSms(p.contact_phone, message, "0000003"); if (p.contact_email != null && !"".equals(p.contact_email)) m.sendMail(p.contact_email, "[" + Messages.get("application.name") + "]中标通知", message); redirect("/admin/requests"); }
public static void imp(File file) { String result = ""; String profiles = ""; int imported = 0; int missed = 0; if (file != null) { Config config = Config.find("1=1").first(); FileInputStream fileInputStream = null; HSSFWorkbook workbook = null; try { fileInputStream = new FileInputStream(file); workbook = new HSSFWorkbook(fileInputStream); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } Profile profile = null; User user = null; String value = ""; Material material = null; SendMessage m = new SendMessage(); for (int x = 0; x < workbook.getNumberOfSheets(); x++) { HSSFSheet worksheet = workbook.getSheetAt(x); HSSFRow row = null; HSSFCell cell = null; DecimalFormat df = new DecimalFormat("#"); df.setMaximumFractionDigits(0); for (int i = 1; i < worksheet.getLastRowNum(); i++) { String unit = "万元"; String business = "0"; try { row = worksheet.getRow(i); if (row.getLastCellNum() < 22) { continue; } cell = row.getCell(0); value = cell.getStringCellValue(); user = User.find("username=?", value).first(); if (user == null) { user = new User(value, getRandomPwd(), ApplicationRole.getByName("user")); user.save(); } profile = Profile.find("user.id=?", user.id).first(); if (profile == null) { profile = new Profile(); profile.user = user; } profile.is_audit = 1; cell = row.getCell(1); value = cell.getStringCellValue(); profile.name = value; cell = row.getCell(2); value = cell.getStringCellValue(); material = Material.find("name=?", value).first(); if (material == null) { material = new Material(); material.name = value; material.save(); } if (!profile.materials.contains(material)) profile.materials.add(material); cell = row.getCell(3); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } cell = row.getCell(4); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } cell = row.getCell(5); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.registration_number = value; cell = row.getCell(6); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { df.setMaximumFractionDigits(2); value = String.valueOf(df.format(cell.getNumericCellValue())); } else { value = cell.getStringCellValue(); } if (value.contains("美元")) { value = value.replace("(美元)", "").trim(); unit = "万美元"; } profile.registration_assets = value; profile.registration_assets_unit = unit; df.setMaximumFractionDigits(0); cell = row.getCell(7); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.registration_address = value; cell = row.getCell(8); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.bank_name = value; cell = row.getCell(9); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.account_name = value; cell = row.getCell(10); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.tfn = value; cell = row.getCell(11); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.factory_name = value; cell = row.getCell(12); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.factory_address = value; cell = row.getCell(13); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(df.format(cell.getNumericCellValue())); } else { value = cell.getStringCellValue(); } profile.first_supply = value.replaceAll("年", ""); cell = row.getCell(14); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.legal_person = value; cell = row.getCell(15); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.contact_name = value; cell = row.getCell(16); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.contact_job = value; cell = row.getCell(17); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(df.format(cell.getNumericCellValue())); } else { value = cell.getStringCellValue(); } profile.contact_phone = value; cell = row.getCell(18); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.sales_name = value; cell = row.getCell(19); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } profile.sales_job = value; cell = row.getCell(20); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(df.format(cell.getNumericCellValue())); } else { value = cell.getStringCellValue(); } profile.sales_phone = value; cell = row.getCell(21); if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { value = String.valueOf(cell.getNumericCellValue()); } else { value = cell.getStringCellValue(); } if (value.equals("自营")) { business = "1"; } else if (value.equals("经销")) { business = "2"; } else if (value.equals("挂靠")) { business = "3"; } else { business = "0"; } profile.business_model = business; profile.save(); imported += 1; if (profile.contact_phone != null) { String message = "您的信息已导入,用户名:" + user.username + ",密码:" + user.password + ",请登录比价平台上传资质文件"; if (config.msg_import != null && !"".equals(config.msg_import)) { message = config .msg_import .replace("{username}", user.username) .replace("{passowrd}", user.password); } m.sendSms(profile.contact_phone, message, "0000001"); if (profile.contact_email != null && !"".equals(profile.contact_phone)) { m.sendMail( profile.contact_email, "[" + Messages.get("application.name") + "]信息导入", message); } } } catch (Exception e) { missed += 1; if (!"".equals(profiles)) { profiles += "," + profile.name; } else { profiles += profile.name; } e.printStackTrace(); } } } result = "成功导入" + imported + "条记录,丢失" + missed + "条记录。"; if (!"".equals(profiles)) { result += "丢失导入的供应商为:" + profiles; } } redirect("/admin/profiles?result=" + URLEncoder.encode(result)); }