|
@@ -38,14 +38,13 @@ import java.sql.*;
|
|
|
import java.text.ParseException;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.time.LocalDate;
|
|
|
+import java.time.LocalDateTime;
|
|
|
import java.time.format.TextStyle;
|
|
|
import java.time.temporal.TemporalAdjusters;
|
|
|
import java.util.Date;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
-import static java.lang.Integer.parseInt;
|
|
|
-
|
|
|
|
|
|
@Service
|
|
|
@Slf4j
|
|
@@ -1104,103 +1103,30 @@ public class YBJServiceImpl implements YBJService {
|
|
|
if (data.isEmpty()){
|
|
|
return;
|
|
|
}
|
|
|
- List<Plan> records = boardQuery(data).getRecords();
|
|
|
+ QueryWrapper<Plan> planQuery = new QueryWrapper<>();
|
|
|
+ data.forEach((k,v)->{
|
|
|
+ if (k.equals("date_between")){
|
|
|
+ Map<String,Object> formInstId = (Map<String,Object>) data.get("date_between");
|
|
|
+ planQuery.ge("care_start_time",formInstId.get("start"));
|
|
|
+ planQuery.le("care_start_time",formInstId.get("end"));
|
|
|
+ }else{
|
|
|
+ planQuery.eq(k,v);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ planQuery.eq("is_delete",0);
|
|
|
+ planQuery.orderByAsc("care_start_time");
|
|
|
+// List<Plan> records = boardQuery(data).getRecords();
|
|
|
+ List<Plan> records = planMapper.selectList(planQuery);
|
|
|
if (ArrayUtil.isNotEmpty(records)){
|
|
|
log.info("records:{}",records.toString());
|
|
|
}
|
|
|
- String formInstId = data.get("formInstId").toString();
|
|
|
- log.info("已获取流程实例ID为:{}",data.get("formInstId").toString());
|
|
|
- // 动态表头模板导出
|
|
|
- Map formData = ydClient.queryData(YDParam.builder()
|
|
|
- .appType("APP_ERBDTFS82HOVBPL3NFH0")
|
|
|
- .systemToken("RRB66F91T97H1WN89QZYC47PKLZO2ZQOUMOQLP")
|
|
|
- .formInstanceId(formInstId)
|
|
|
- .build(),
|
|
|
- YDConf.FORM_QUERY.retrieve_id).getFormData();
|
|
|
- log.info("formData:{}",formData);
|
|
|
- //获取主表字段
|
|
|
- final String[] keys = {""};
|
|
|
- final String[] valuses = {""};
|
|
|
- formData.forEach((k,v)->{
|
|
|
- if (!k.toString().equals("pageSection_lr3gzi9i") && !k.toString().equals("pageSection_ltxyt76g")){
|
|
|
- keys[0] = keys[0] + k + ", ";
|
|
|
- valuses[0] = valuses[0] + v.toString() + ", ";
|
|
|
- }
|
|
|
- });
|
|
|
- Map<String, String> dataMain = UtilMap.map(keys[0], valuses[0]);
|
|
|
- log.info("dataMain:{}",dataMain);
|
|
|
+
|
|
|
//获取订单日期
|
|
|
- long dateFiled = Long.parseLong(formData.get("dateField_lr26l3h2").toString());
|
|
|
- if (ObjectUtil.isNotEmpty(dateFiled)){
|
|
|
- String dateStr = DateUtil.date(dateFiled).toString("yyyy-MM-dd");
|
|
|
- dataMain.put("dateField_lr26l3h2",dateStr);
|
|
|
- }
|
|
|
- //获取供应商名称
|
|
|
- String association = formData.get("associationFormField_lr26l3he_id").toString();
|
|
|
- log.info(association);
|
|
|
- if (ObjectUtil.isNotEmpty(association)){
|
|
|
- association = JSON.parse(association).toString();
|
|
|
- JSONArray jsonArray = JSON.parseArray(association);
|
|
|
- JSONObject jsonObject = (JSONObject) jsonArray.get(0);
|
|
|
- String title = jsonObject.get("title").toString();
|
|
|
- dataMain.put("title",title);
|
|
|
- }
|
|
|
+
|
|
|
//获取文件标题
|
|
|
- String fileName = dataMain.get("textField_lr26y1io") + dataMain.get("textField_lz2fk0wc") + "采购订单";
|
|
|
-
|
|
|
- List<Map> dataList = ydService.queryDetails(YDParam.builder().
|
|
|
- appType("APP_ERBDTFS82HOVBPL3NFH0")
|
|
|
- .systemToken("RRB66F91T97H1WN89QZYC47PKLZO2ZQOUMOQLP")
|
|
|
- .formInstanceId(formInstId)
|
|
|
- .formUuid("FORM-61F329A9DFFE4CF0BBEC0FDC34C42C03QJKQ")
|
|
|
- //测试
|
|
|
-// .formUuid("FORM-44AF067BF733464F8431620612726615RNNV")
|
|
|
- .tableFieldId("tableField_ltxyt76f")
|
|
|
- .build());
|
|
|
- log.info("dataList1:{}",dataList);
|
|
|
- for (int i = 0; i < dataList.size(); i++) {
|
|
|
- dataList.get(i).put("row",i+1);
|
|
|
- String person = dataList.get(i).get("textField_lu2gzzab").toString();
|
|
|
- String phone = dataList.get(i).get("textField_lu2gzzac").toString();
|
|
|
- final String[] address = {""};
|
|
|
- if (ObjectUtil.isNotNull(dataList.get(i).get("addressField_m1mxnnno"))){
|
|
|
- Object parse = JSON.parse(dataList.get(i).get("addressField_m1mxnnno").toString());
|
|
|
- JSONObject jsonObject = (JSONObject) parse;
|
|
|
- JSONArray jsonArray = JSON.parseArray(jsonObject.get("regionText").toString());
|
|
|
- jsonArray.forEach(e->{
|
|
|
- JSONObject object = (JSONObject) e;
|
|
|
- String zhCn = object.get("zh_CN").toString();
|
|
|
- address[0] = address[0] + zhCn + "/";
|
|
|
- });
|
|
|
- String substring = address[0].substring(0, address[0].length() - 1);
|
|
|
- dataList.get(i).put("addressField_m1mxnnno",substring);
|
|
|
- }
|
|
|
- String information = person + " " + phone;
|
|
|
- dataList.get(i).put("information",information);
|
|
|
- }
|
|
|
- log.info("dataList:{}",dataList);
|
|
|
- String text = "一、订单说明:\n" +
|
|
|
- "1.供应商需按订单内容,向采购方按时、按量提供质量合格的商品(如一张订单分多次送货的,将以末次送货时间作为该订单的送货时间)。\n" +
|
|
|
- "2.供应商配送物品与订单不符,采购方接收人有权拒收、要求换货或给与相应的赔偿。\n" +
|
|
|
- "3.供应商未按订单约定时间配送物品,需按照订单总价的5%作为单日违约金,按照延迟天数向采购方支付。\n" +
|
|
|
- "4.供应商送货时,需向采购方接收人提供供应商送货签收单据的客户联,采购方将作为付款的书面依据留存。\n" +
|
|
|
- "5.供应商完成物品配送后,5个工作日内需向采购方提交与订单内容相符的增值税专用发票。\n" +
|
|
|
- "6.采购方在收到供应商提供的与订单相符的物品及相应发票和单据后,将按照双方约定的付款周期支付货款。\n" +
|
|
|
- "7.采购方以传真和邮件方式,向供应商提供《采购订单》;供应商接收《采购订单》后,需以传真或邮件方式进行签收。\n" +
|
|
|
- "8.采购方以供应商传真或邮件签收,作为该《采购订单》正式履行的依据。\n" +
|
|
|
- "9.采购订单作为供需双方的日常业务办理依据,双方合作的相关法律依据以双方签订的合作协议为准。\n" +
|
|
|
- "10.严禁除采购以外的任何人员直接向供应商订购物资,如供应商在未收到采购订单的情况下进行物资配送,采购一律不予结算该账款。\n" +
|
|
|
- "严禁供应商向除采购方以外的任何第三方泄露采购单价,造成采购方名誉、信誉、财产的一切损失将由供应商承担。\n" +
|
|
|
- "二、备注:采购订单敲章后与发票一起寄回,以便后期确认。\n" +
|
|
|
- "发票寄送地址:上海市宝山区双城路803弄宝莲城9号楼27层\n" +
|
|
|
- "联系人:浦水菊 联系电话:60671366 转 828";
|
|
|
- dataMain.put("text",text);
|
|
|
- int numSum = dataList.stream().mapToInt(e -> e.get("numberField_ltxyt75z").toString().equals("") ? 0 : parseInt(e.get("numberField_ltxyt75z").toString())).sum();
|
|
|
- Double sumTotal = dataList.stream().mapToDouble(e -> e.get("numberField_ltxyt764").toString().equals("") ? 0 : Double.parseDouble(e.get("numberField_ltxyt764").toString())).sum();
|
|
|
- dataMain.put("num_sum",String.valueOf(numSum));
|
|
|
- dataMain.put("sum_total",String.valueOf(sumTotal));
|
|
|
-
|
|
|
- UtilExcel.exportMapAndListByTemplate(response, dataMain, dataList, Map.class, fileName, "Template.xlsx");
|
|
|
+ String fileName = data.get("caregiver_department").toString() + data.get("care_date_text") + "护理计划";
|
|
|
+
|
|
|
+ UtilExcel.exportMapAndListByTemplate(response, null, records, Plan.class, fileName, "Template.xlsx");
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -1225,6 +1151,44 @@ public class YBJServiceImpl implements YBJService {
|
|
|
return planMapper.selectPage(planPage, planQuery);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public IPage<Plan> mapQuery(Map<String, Object> data) {
|
|
|
+ QueryWrapper<Plan> planQuery = new QueryWrapper<>();
|
|
|
+ IPage<Plan> planPage = new Page<>();
|
|
|
+ data.forEach((k,v)->{
|
|
|
+ if (k.equals("currentPage")){
|
|
|
+ planPage.setCurrent(Long.parseLong(v.toString()));
|
|
|
+ } else if (k.equals("pageSize")) {
|
|
|
+ planPage.setSize(Long.parseLong(v.toString()));
|
|
|
+ } else if (k.equals("date_between")){
|
|
|
+ Map<String,Object> formInstId = (Map<String,Object>) data.get("date_between");
|
|
|
+ planQuery.ge("care_start_time",formInstId.get("start"));
|
|
|
+ planQuery.le("care_start_time",formInstId.get("end"));
|
|
|
+ }else{
|
|
|
+ planQuery.eq(k,v);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ planQuery.eq("is_delete",0);
|
|
|
+ planQuery.isNotNull("clock_in_date");
|
|
|
+ planQuery.isNull("clock_out_date");
|
|
|
+ planQuery.orderByAsc("care_start_time");
|
|
|
+ return planMapper.selectPage(planPage, planQuery);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void testLocalDate() {
|
|
|
+
|
|
|
+ // 创建一个 LocalDate 对象,表示 2025-01-09
|
|
|
+ LocalDate localDate = LocalDate.of(2025, 1, 9);
|
|
|
+ // 输出 LocalDate 对象的值
|
|
|
+ log.info("LocalDate: " + localDate);
|
|
|
+
|
|
|
+ // 获取并输出 day of month
|
|
|
+ int dayOfMonth = localDate.getDayOfMonth();
|
|
|
+ log.info("Day of Month: " + dayOfMonth);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 定时任务同步数据库到宜搭
|
|
|
*/
|
|
@@ -1415,10 +1379,13 @@ public class YBJServiceImpl implements YBJService {
|
|
|
List<Map> mapList = (List<Map>) formData.get("tableField_lo3pmohx");
|
|
|
Connection connection = null;
|
|
|
//获取当前日期是本月几号
|
|
|
- int dayOfMonth = currentDate.getDayOfMonth();
|
|
|
+ LocalDateTime now = LocalDateTime.now();
|
|
|
+ int dayOfMonth = now.getDayOfMonth();
|
|
|
+// log.info("currentDate:{}",currentDate);
|
|
|
+ log.info("now:{}",now);
|
|
|
log.info("dayOfMonth:{}",dayOfMonth);
|
|
|
//获取本月天数
|
|
|
- int daysInMonth = currentDate.lengthOfMonth();
|
|
|
+ int daysInMonth = now.toLocalDate().lengthOfMonth();
|
|
|
log.info("daysInMonth:{}",daysInMonth);
|
|
|
|
|
|
try {
|