Просмотр исходного кода

Merge remote-tracking branch 'origin/master'

wuhb 1 месяц назад
Родитель
Сommit
d64b04670a

+ 23 - 6
src/main/bpm/com/yw/bpm/client/action/BpmClientFlowListForProcessAction.java

@@ -93,7 +93,14 @@ public class BpmClientFlowListForProcessAction extends RequestAbs {
 					List<Map<String, String>> filelist = new ArrayList<Map<String, String>>();
 					map.put("tmodelName", tacheInstance.getTmodelId().getTmodelName());
 					map.put("name", tacheInstance.getUser().getUsername());
-					map.put("remark", tacheInstance.getRemark());
+					// 处理 remark 中的特殊字符(注意顺序:先单独字符,再组合字符)
+					String remark = tacheInstance.getRemark();
+					if (remark != null) {
+						remark = remark.replace("\r", "\\r")
+					                   .replace("\n", "\\n")
+					                   .replace("\t", "\\t");
+					}
+					map.put("remark", remark);
 					map.put("createdate", tacheInstance.getCreatedate());
 					map.put("finishdate", tacheInstance.getFinishdate());
 					map.put("dataName", tacheInstance.getState().getDataName());
@@ -124,9 +131,9 @@ public class BpmClientFlowListForProcessAction extends RequestAbs {
 					map.put("assistCount", assistList.size());
 					list.add(map);
 				}
-
+				
 				String result = JsonUtil.getJson(list, true);
-				return ("{\"list\":" + result + "}").replaceAll(":null", ":\"\"").replaceAll(":\",\"", ":\"\"");
+				return ("{\"list\":" + result + "}").replaceAll(":null", ":\"\"");
 			} else {
 				FlowService flowService = (FlowService) cxt.getBean("bpmFlowService");
 				FlowDao bpmFlowDao = (FlowDao) cxt.getBean("bpmFlowDao");
@@ -172,7 +179,17 @@ public class BpmClientFlowListForProcessAction extends RequestAbs {
 						map.put("dataName", tacheList.get(num).get("v_data_name"));
 						map.put("state", tacheList.get(num).get("state"));
 						map.put("name", tacheList.get(num).get("username"));
-						map.put("remark", tacheList.get(num).get("remark"));
+						// 处理 remark 中的特殊字符(注意顺序:先单独字符,再组合字符)
+						Object remarkObj = tacheList.get(num).get("remark");
+						if (remarkObj != null) {
+							String remark = remarkObj.toString();
+							remark = remark.replace("\r", "\\r")
+							               .replace("\n", "\\n")
+							               .replace("\t", "\\t");
+							map.put("remark", remark);
+						} else {
+							map.put("remark", remarkObj);
+						}
 						map.put("createdate", tacheList.get(num).get("start_time"));
 						map.put("finishdate", tacheList.get(num).get("end_time"));
 
@@ -201,9 +218,9 @@ public class BpmClientFlowListForProcessAction extends RequestAbs {
 						list.add(map);
 					}
 				}
-
+							
 				String result = JsonUtil.getJson(list, true);
-				return ("{\"list\":" + result + "}").replaceAll(":null", ":\"\"").replaceAll(":\",\"", ":\"\"");
+				return ("{\"list\":" + result + "}").replaceAll(":null", ":\"\"");
 			}
 		} catch (Exception e) {
 			e.printStackTrace();

+ 113 - 0
src/main/hr/com/yw/hr/client/action/HrClientSalaryAction.java

@@ -0,0 +1,113 @@
+package com.yw.hr.client.action;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import net.sf.json.JSONObject;
+
+import org.springframework.context.ApplicationContext;
+
+import com.yw.core.clientImpl.model.ResultVo;
+import com.yw.core.clientImpl.service.RequestAbs;
+import com.yw.core.session.AppSession;
+import com.yw.core.utils.DateJson;
+import com.yw.core.utils.RegisterCodeImpl;
+import com.yw.hr.salary.service.SalaryImportService;
+import com.yw.hr.salary.service.SalaryImportServiceImpl;
+
+/**
+ * 小程序端工资查询接口
+ */
+public class HrClientSalaryAction extends RequestAbs {
+
+	public final String serviceId = "hr_salary_mySalaryList";
+	
+	public static void main(String[] args) {
+		String url = "http://localhost:8080/ynet/clientServices.do?iscrypt=1";
+		String param="{\"serviceId\":\"hr_salary_mySalaryList\","
+				+ "\"params\":{"
+				+ "\"universalid\":\"8945468387975\","
+				+ "\"salary_month\":\"2024-01\","
+				+ "\"page\":\"1\","
+				+ "\"pageSize\":\"20\""
+				+ "}}";
+		String rs = RegisterCodeImpl.requestPage(url,param);
+		System.out.println(rs);
+	}
+	
+	private ApplicationContext cxt = null;
+	
+	@Override
+	public String getResult() {
+		ResultVo rv = new ResultVo();
+		String param = getParameters();
+		JSONObject json = JSONObject.fromObject(param);
+
+		String universalid = json.getString("universalid");
+		String salaryMonth = json.optString("salary_month", "");
+		String page = json.optString("page", "1");
+		String pageSize = json.optString("pageSize", "20");
+		
+		Map<String, String> map = new HashMap<String, String>();
+		map.put("universalid", universalid);
+		map.put("salary_month", salaryMonth);
+		map.put("page", page);
+		map.put("pageSize", pageSize);
+		
+		String responseJson = this.getMySalaryList(map);
+		if (!"".equals(responseJson)) {
+			rv = new ResultVo();
+			rv.setReturnCode("0");
+			rv.setReturnMsg("success");
+			rv.setReturnParams(responseJson);
+			return JSONObject.fromObject(rv, config).toString();
+		}
+		rv = new ResultVo();
+		rv.setReturnCode("1");
+		rv.setReturnMsg("failed");
+		rv.setReturnParams("");
+		return JSONObject.fromObject(rv, config).toString();
+	}
+
+	private String getMySalaryList(Map<String, String> map) {
+		if(null == cxt){
+			cxt = AppSession.getApplicationContext();
+		}
+		SalaryImportService salaryImportService = (SalaryImportService) cxt.getBean("salaryImportService");
+
+		try {
+			Long staffId = Long.parseLong(map.get("universalid"));
+			String salaryMonth = map.get("salary_month");
+			int page = Integer.parseInt(map.get("page"));
+			int pageSize = Integer.parseInt(map.get("pageSize"));
+			
+			Map<String, Object> paramMap = new HashMap<String, Object>();
+			paramMap.put("staff_id", staffId);
+			paramMap.put("state", "1");
+			
+			if (salaryMonth != null && !salaryMonth.isEmpty()) {
+				paramMap.put("salary_month", salaryMonth);
+			}
+			
+			// 调用Service查询
+			com.yw.core.framework.view.service.PagerService ps = 
+				salaryImportService.getSalaryImportList(page, pageSize, paramMap);
+			
+			List<?> list = ps.getDatas();
+			long totalCount = ps.getAllCount();
+			
+			String data = DateJson.fromArray(list).toString().trim();
+			String result = "{\"list\":" + data + ",\"total\":" + totalCount + "}";
+			return result.trim();
+		} catch (Exception e) {
+			e.printStackTrace();
+			return "";
+		}
+	}
+	
+	@Override
+	public String getServiceId() {
+		return serviceId;
+	}
+}

+ 94 - 0
src/main/hr/com/yw/hr/client/action/HrClientSalaryDetailAction.java

@@ -0,0 +1,94 @@
+package com.yw.hr.client.action;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import net.sf.json.JSONObject;
+
+import org.springframework.context.ApplicationContext;
+
+import com.yw.core.clientImpl.model.ResultVo;
+import com.yw.core.clientImpl.service.RequestAbs;
+import com.yw.core.session.AppSession;
+import com.yw.core.utils.DateJson;
+import com.yw.core.utils.RegisterCodeImpl;
+import com.yw.hr.salary.model.SalaryImport;
+import com.yw.hr.salary.service.SalaryImportService;
+
+/**
+ * 小程序端工资详情查询接口
+ */
+public class HrClientSalaryDetailAction extends RequestAbs {
+
+	public final String serviceId = "hr_salary_mySalaryDetail";
+	
+	public static void main(String[] args) {
+		String url = "http://localhost:8080/ynet/clientServices.do?iscrypt=1";
+		String param="{\"serviceId\":\"hr_salary_mySalaryDetail\","
+				+ "\"params\":{"
+				+ "\"universalid\":\"8945468387975\""
+				+ "}}";
+		String rs = RegisterCodeImpl.requestPage(url,param);
+		System.out.println(rs);
+	}
+	
+	private ApplicationContext cxt = null;
+	
+	@Override
+	public String getResult() {
+		ResultVo rv = new ResultVo();
+		String param = getParameters();
+		JSONObject json = JSONObject.fromObject(param);
+
+		String universalid = json.getString("universalid");
+		
+		Map<String, String> map = new HashMap<String, String>();
+		map.put("universalid", universalid);
+		
+		String responseJson = this.getMySalaryDetail(map);
+		if (!"".equals(responseJson)) {
+			rv = new ResultVo();
+			rv.setReturnCode("0");
+			rv.setReturnMsg("success");
+			rv.setReturnParams(responseJson);
+			return JSONObject.fromObject(rv, config).toString();
+		}
+		rv = new ResultVo();
+		rv.setReturnCode("1");
+		rv.setReturnMsg("failed");
+		rv.setReturnParams("");
+		return JSONObject.fromObject(rv, config).toString();
+	}
+
+	private String getMySalaryDetail(Map<String, String> map) {
+		if(null == cxt){
+			cxt = AppSession.getApplicationContext();
+		}
+		SalaryImportService salaryImportService = (SalaryImportService) cxt.getBean("salaryImportService");
+
+		try {
+			Long id = Long.parseLong(map.get("universalid"));
+			
+			SalaryImport query = new SalaryImport();
+			query.setUniversalid(id);
+			
+			List<SalaryImport> list = salaryImportService.getSalaryImportList(query);
+			
+			if (list != null && list.size() > 0) {
+				SalaryImport salary = list.get(0);
+				String data = DateJson.fromObject(salary).toString().trim();
+				return data;
+			}
+			return "";
+		} catch (Exception e) {
+			e.printStackTrace();
+			return "";
+		}
+	}
+	
+	@Override
+	public String getServiceId() {
+		return serviceId;
+	}
+}

+ 2 - 2
src/main/hr/com/yw/hr/salary/dao/SalaryImportDaoImpl.java

@@ -21,7 +21,7 @@ public class SalaryImportDaoImpl extends BaseDao implements SalaryImportDao {
 	@Override
 	public PagerService getSalaryImportList(int p, int pSize, Map<String, Object> map) throws Exception {
 		StringBuffer sb = new StringBuffer();
-		sb.append("SELECT universalid, salary_month, row_no, department, staff_name, position, ");
+		sb.append("SELECT universalid, salary_month, row_no, department, staff_name, id_number, position, ");
 		sb.append("should_pay_salary, actual_pay_salary, import_date, create_user, unit_id, state ");
 		sb.append("FROM hr_salary_import WHERE 1 = 1 ");
 		
@@ -52,7 +52,7 @@ public class SalaryImportDaoImpl extends BaseDao implements SalaryImportDao {
 			olist.add(map.get("staff_id"));
 		}
 		
-		sb.append(" ORDER BY import_date DESC, row_no ASC");
+		sb.append(" ORDER BY salary_month DESC,import_date DESC, row_no ASC");
 		
 		PagerService ps = this.getPagerService();
 		ps = ps.queryPageForList(p, pSize, sb.toString(), olist);

+ 9 - 0
src/main/webapp/yw/hr/salary/salary_import/import_list.jsp

@@ -27,6 +27,7 @@
 					{display: '序号', name: 'row_no', width: 60},
 					{display: '部门', name: 'department', width: 120},
 					{display: '姓名', name: 'staff_name', width: 80},
+					{display: '身份证', name: 'id_number', width: 180},
 					{display: '岗位', name: 'position', width: 120},
 					{display: '应发工资', name: 'should_pay_salary', width: 100},
 					{display: '实发工资', name: 'actual_pay_salary', width: 100},
@@ -69,6 +70,13 @@
 		initGrid(s);
 	}
 	
+	function resetSearch() {
+		$("#salary_month").val("");
+		$("#staff_name").val("");
+		$("#department").val("");
+		initGrid("");
+	}
+	
 	function viewDetail(universalid) {
 		var obj = window.top;
 		if (obj != undefined && obj != null) {
@@ -130,6 +138,7 @@
 			<ul>
 				<li class="search-button">
 					<input type="button" class='l-button' name="search" value="查询" onclick="searchByKword();" />
+					<input type="button" class='l-button' name="reset" value="重置" onclick="resetSearch();" style="margin-left: 10px;" />
 				</li>
 			</ul>
 		</div>

+ 2 - 2
src/main/webapp/yw/hr/salary/salary_import/my_salary.jsp

@@ -29,7 +29,7 @@
 					{display: '岗位', name: 'position', width: 120},
 					{display: '应发工资', name: 'should_pay_salary', width: 100},
 					{display: '实发工资', name: 'actual_pay_salary', width: 100},
-					{display: '导入时间', name: 'import_date', width: 150,
+					/*{display: '导入时间', name: 'import_date', width: 150,
 						render: function(row){
 							if (row.import_date) {
 								var date = new Date(row.import_date);
@@ -41,7 +41,7 @@
 							}
 							return '';
 						}
-					},
+					},*/
 					{display: '操作', width: 80, align: 'center',
 						render: function(row){
 							return '<a href="javascript:void(0)" onclick="viewDetail(' + row.universalid + ')">查看</a>';