|
|
@@ -23,756 +23,799 @@ import java.util.Calendar;
|
|
|
import java.util.Date;
|
|
|
import java.util.HashSet;
|
|
|
import java.util.Set;
|
|
|
+import java.util.regex.Pattern;
|
|
|
|
|
|
public class Afterserviceorder extends Controller {
|
|
|
|
|
|
- public Afterserviceorder(JSONObject content) {
|
|
|
- super(content);
|
|
|
- }
|
|
|
-
|
|
|
- /** 服务单列表 **/
|
|
|
- public String list() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- if (StringUtils.isBlank(fagentnum))
|
|
|
- return getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String wherestr = "1=1";
|
|
|
- if (where != null) {
|
|
|
- DBConnect dbConnect = new DBConnect();
|
|
|
- if (where.containsKey("fstatus") && !StringUtils.isBlank(where.getString("fstatus"))) {
|
|
|
- wherestr += " and fstatus = '" + where.getString("fstatus") + "'";
|
|
|
- }
|
|
|
- if (where.containsKey("ftype") && !StringUtils.isBlank(where.getString("ftype"))) {
|
|
|
- wherestr += " and ftype = '" + where.getString("ftype") + "'";
|
|
|
- }
|
|
|
- if (where.containsKey("startdate") && !StringUtils.isBlank(where.getString("startdate"))) {
|
|
|
- wherestr += " and t.createdate >= '" + where.getString("startdate") + "'";
|
|
|
- }
|
|
|
- if (where.containsKey("enddate") && !StringUtils.isBlank(where.getString("enddate"))) {
|
|
|
- wherestr += " and t.createdate <= '" + where.getString("enddate") + "'";
|
|
|
- }
|
|
|
-
|
|
|
- SQLFactory factory = new SQLFactory(this, "售后单列表查询", pageSize, pageNumber,
|
|
|
- "case when t.fstatus='新建' then 1\n" + "when t.fstatus='待处理' then 2\n"
|
|
|
- + "when t.fstatus='进行中' then 3\n"
|
|
|
- + "when t.fstatus='已完成' then 4 else 5 end,t.createdate desc");
|
|
|
- factory.addParameter("fagentnum", fagentnum);
|
|
|
- factory.addParameter("siteid", siteid);
|
|
|
- factory.addParameter_SQL("where", wherestr);
|
|
|
- Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
- return getReturnObject_suc_page(rows, false, 0).toString();
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 服务单列表 **/
|
|
|
- public String list_worker() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- // if(StringUtils.isBlank(fagentnum))return
|
|
|
- // getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String wherestr = "1=1";
|
|
|
- if (where != null) {
|
|
|
- DBConnect dbConnect = new DBConnect();
|
|
|
- if (where.containsKey("fstatus") && !StringUtils.isBlank(where.getString("fstatus"))) {
|
|
|
- wherestr += " and t.fstatus = '" + where.getString("fstatus") + "'";
|
|
|
- }
|
|
|
- if (where.containsKey("ftype") && !StringUtils.isBlank(where.getString("ftype"))) {
|
|
|
- wherestr += " and t.ftype = '" + where.getString("ftype") + "'";
|
|
|
- }
|
|
|
- if (where.containsKey("startdate") && !StringUtils.isBlank(where.getString("startdate"))) {
|
|
|
- wherestr += " and t.createdate >= '" + where.getString("startdate") + "'";
|
|
|
- }
|
|
|
- if (where.containsKey("enddate") && !StringUtils.isBlank(where.getString("enddate"))) {
|
|
|
- wherestr += " and t.createdate <= '" + where.getString("enddate") + "'";
|
|
|
- }
|
|
|
-
|
|
|
- SQLFactory factory = new SQLFactory(this, "服务主管售后单列表查询", pageSize, pageNumber,
|
|
|
- "case when t.fstatus='新建' then 1\n" + "when t.fstatus='待处理' then 2\n"
|
|
|
- + "when t.fstatus='进行中' then 3\n"
|
|
|
- + "when t.fstatus='已完成' then 4 else 5 end,t.createdate desc");
|
|
|
- // factory.addParameter("fagentnum",fagentnum);
|
|
|
- factory.addParameter("siteid", siteid);
|
|
|
- factory.addParameter_SQL("where", wherestr);
|
|
|
- Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
- return getReturnObject_suc_page(rows, false, 0).toString();
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 服务单详情 **/
|
|
|
- public String detail() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- // if(StringUtils.isBlank(fagentnum))return
|
|
|
- // getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String wherestr = "1=1";
|
|
|
- String s[] = { "servicenum" };
|
|
|
- for (String s1 : s) {
|
|
|
- if (!where.containsKey(s1))
|
|
|
- return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
- }
|
|
|
- if (where != null) {
|
|
|
- try {
|
|
|
- DBConnect dbConnect = new DBConnect();
|
|
|
- SQLFactory factory = new SQLFactory(this, "售后服务单详情");
|
|
|
- factory.addParameter("servicenum", where.getString("servicenum"));
|
|
|
- Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
- if (rows.isEmpty())
|
|
|
- return getReturnObject_err("没有此单据").toString();
|
|
|
- Row row = rows.get(0);
|
|
|
- /** 附件设置 **/
|
|
|
- PaoSetRemote tattachment = getpaoset("tattachment");
|
|
|
- tattachment.setWhere("ownertable='AFTERSERVICEORDER' and ownerid=" + row.getInteger("ownerid"));
|
|
|
- tattachment.setOrderBy("tattachmentid desc");
|
|
|
- tattachment.reset();
|
|
|
- if (!tattachment.isEmpty()) {
|
|
|
- Rows rows_url = dbConnect.runSqlQuery(
|
|
|
- "select fobsurl,postfix,type,fdocument,tattachmentid from tattachment where ownertable='AFTERSERVICEORDER' and ownerid="
|
|
|
- + row.getInteger("ownerid"));
|
|
|
- row.put("url", rows_url);
|
|
|
- } else {
|
|
|
- row.put("url", new Rows());
|
|
|
- }
|
|
|
- SQLFactory titems_factory = new SQLFactory(this, "服务单关联物料");
|
|
|
- titems_factory.addParameter("servicenum", where.getString("servicenum"));
|
|
|
- Rows titems = dbConnect.runSqlQuery(titems_factory.getSQL());
|
|
|
- row.put("titems", titems);
|
|
|
-
|
|
|
- SQLFactory hyworkorder_factory = new SQLFactory(this, "服务单关联工单");
|
|
|
- hyworkorder_factory.addParameter("servicenum", where.getString("servicenum"));
|
|
|
- Rows hyworkorder = dbConnect.runSqlQuery(hyworkorder_factory.getSQL());
|
|
|
- row.put("workorder", hyworkorder);
|
|
|
-
|
|
|
- return getReturnObject_suc(row, false).toString();
|
|
|
- } catch (P2Exception e) {
|
|
|
- return getReturnObject_err(e.getMessage()).toString();
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 服务单关联物料 **/
|
|
|
- public String titem() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- // if(StringUtils.isBlank(fagentnum))return
|
|
|
- // getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String wherestr = "1=1";
|
|
|
- String s[] = { "servicenum" };
|
|
|
- for (String s1 : s) {
|
|
|
- if (!where.containsKey(s1))
|
|
|
- return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
- }
|
|
|
- if (where != null) {
|
|
|
- DBConnect dbConnect = new DBConnect();
|
|
|
- SQLFactory factory = new SQLFactory(this, "服务单关联物料", pageSize, pageNumber, "t1.fitemno");
|
|
|
- factory.addParameter("servicenum", where.getString("servicenum"));
|
|
|
- Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
- return getReturnObject_suc_page(rows, false, 0).toString();
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 服务单关联工单 **/
|
|
|
- public String hyworkorder() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- // if(StringUtils.isBlank(fagentnum))return
|
|
|
- // getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String wherestr = "1=1";
|
|
|
- String s[] = { "servicenum" };
|
|
|
- for (String s1 : s) {
|
|
|
- if (!where.containsKey(s1))
|
|
|
- return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
- }
|
|
|
- if (where != null) {
|
|
|
- DBConnect dbConnect = new DBConnect();
|
|
|
- SQLFactory factory = new SQLFactory(this, "服务单关联工单", pageSize, pageNumber, "t1.fworknum");
|
|
|
- factory.addParameter("servicenum", where.getString("servicenum"));
|
|
|
- Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
- return getReturnObject_suc_page(rows, false, 0).toString();
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 工单模板查询 **/
|
|
|
- public String queryworkerordertemplate() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- // if(StringUtils.isBlank(fagentnum))return
|
|
|
- // getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String wherestr = "1=1";
|
|
|
+ public Afterserviceorder(JSONObject content) {
|
|
|
+ super(content);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 服务单列表
|
|
|
+ **/
|
|
|
+ public String list() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ if (StringUtils.isBlank(fagentnum))
|
|
|
+ return getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String wherestr = "1=1";
|
|
|
+ if (where != null) {
|
|
|
+ DBConnect dbConnect = new DBConnect();
|
|
|
+ if (where.containsKey("fstatus") && !StringUtils.isBlank(where.getString("fstatus"))) {
|
|
|
+ wherestr += " and fstatus = '" + where.getString("fstatus") + "'";
|
|
|
+ }
|
|
|
+ if (where.containsKey("ftype") && !StringUtils.isBlank(where.getString("ftype"))) {
|
|
|
+ wherestr += " and ftype = '" + where.getString("ftype") + "'";
|
|
|
+ }
|
|
|
+ if (where.containsKey("startdate") && !StringUtils.isBlank(where.getString("startdate"))) {
|
|
|
+ wherestr += " and t.createdate >= '" + where.getString("startdate") + "'";
|
|
|
+ }
|
|
|
+ if (where.containsKey("enddate") && !StringUtils.isBlank(where.getString("enddate"))) {
|
|
|
+ wherestr += " and t.createdate <= '" + where.getString("enddate") + "'";
|
|
|
+ }
|
|
|
+
|
|
|
+ SQLFactory factory = new SQLFactory(this, "售后单列表查询", pageSize, pageNumber,
|
|
|
+ "case when t.fstatus='新建' then 1\n" + "when t.fstatus='待处理' then 2\n"
|
|
|
+ + "when t.fstatus='进行中' then 3\n"
|
|
|
+ + "when t.fstatus='已完成' then 4 else 5 end,t.createdate desc");
|
|
|
+ factory.addParameter("fagentnum", fagentnum);
|
|
|
+ factory.addParameter("siteid", siteid);
|
|
|
+ factory.addParameter_SQL("where", wherestr);
|
|
|
+ Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
+ return getReturnObject_suc_page(rows, false, 0).toString();
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 服务单列表
|
|
|
+ **/
|
|
|
+ public String list_worker() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ // if(StringUtils.isBlank(fagentnum))return
|
|
|
+ // getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String wherestr = "1=1";
|
|
|
+ if (where != null) {
|
|
|
+ DBConnect dbConnect = new DBConnect();
|
|
|
+ if (where.containsKey("fstatus") && !StringUtils.isBlank(where.getString("fstatus"))) {
|
|
|
+ wherestr += " and t.fstatus = '" + where.getString("fstatus") + "'";
|
|
|
+ }
|
|
|
+ if (where.containsKey("ftype") && !StringUtils.isBlank(where.getString("ftype"))) {
|
|
|
+ wherestr += " and t.ftype = '" + where.getString("ftype") + "'";
|
|
|
+ }
|
|
|
+ if (where.containsKey("startdate") && !StringUtils.isBlank(where.getString("startdate"))) {
|
|
|
+ wherestr += " and t.createdate >= '" + where.getString("startdate") + "'";
|
|
|
+ }
|
|
|
+ if (where.containsKey("enddate") && !StringUtils.isBlank(where.getString("enddate"))) {
|
|
|
+ wherestr += " and t.createdate <= '" + where.getString("enddate") + "'";
|
|
|
+ }
|
|
|
+
|
|
|
+ SQLFactory factory = new SQLFactory(this, "服务主管售后单列表查询", pageSize, pageNumber,
|
|
|
+ "case when t.fstatus='新建' then 1\n" + "when t.fstatus='待处理' then 2\n"
|
|
|
+ + "when t.fstatus='进行中' then 3\n"
|
|
|
+ + "when t.fstatus='已完成' then 4 else 5 end,t.createdate desc");
|
|
|
+ // factory.addParameter("fagentnum",fagentnum);
|
|
|
+ factory.addParameter("siteid", siteid);
|
|
|
+ factory.addParameter_SQL("where", wherestr);
|
|
|
+ Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
+ return getReturnObject_suc_page(rows, false, 0).toString();
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 服务单详情
|
|
|
+ **/
|
|
|
+ public String detail() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ // if(StringUtils.isBlank(fagentnum))return
|
|
|
+ // getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String wherestr = "1=1";
|
|
|
+ String s[] = {"servicenum"};
|
|
|
+ for (String s1 : s) {
|
|
|
+ if (!where.containsKey(s1))
|
|
|
+ return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
+ }
|
|
|
+ if (where != null) {
|
|
|
+ try {
|
|
|
+ DBConnect dbConnect = new DBConnect();
|
|
|
+ SQLFactory factory = new SQLFactory(this, "售后服务单详情");
|
|
|
+ factory.addParameter("servicenum", where.getString("servicenum"));
|
|
|
+ Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
+ if (rows.isEmpty())
|
|
|
+ return getReturnObject_err("没有此单据").toString();
|
|
|
+ Row row = rows.get(0);
|
|
|
+ /** 附件设置 **/
|
|
|
+ PaoSetRemote tattachment = getpaoset("tattachment");
|
|
|
+ tattachment.setWhere("ownertable='AFTERSERVICEORDER' and ownerid=" + row.getInteger("ownerid"));
|
|
|
+ tattachment.setOrderBy("tattachmentid desc");
|
|
|
+ tattachment.reset();
|
|
|
+ if (!tattachment.isEmpty()) {
|
|
|
+ Rows rows_url = dbConnect.runSqlQuery(
|
|
|
+ "select fobsurl,postfix,type,fdocument,tattachmentid from tattachment where ownertable='AFTERSERVICEORDER' and ownerid="
|
|
|
+ + row.getInteger("ownerid"));
|
|
|
+ row.put("url", rows_url);
|
|
|
+ } else {
|
|
|
+ row.put("url", new Rows());
|
|
|
+ }
|
|
|
+ SQLFactory titems_factory = new SQLFactory(this, "服务单关联物料");
|
|
|
+ titems_factory.addParameter("servicenum", where.getString("servicenum"));
|
|
|
+ Rows titems = dbConnect.runSqlQuery(titems_factory.getSQL());
|
|
|
+ row.put("titems", titems);
|
|
|
+
|
|
|
+ SQLFactory hyworkorder_factory = new SQLFactory(this, "服务单关联工单");
|
|
|
+ hyworkorder_factory.addParameter("servicenum", where.getString("servicenum"));
|
|
|
+ Rows hyworkorder = dbConnect.runSqlQuery(hyworkorder_factory.getSQL());
|
|
|
+ row.put("workorder", hyworkorder);
|
|
|
+
|
|
|
+ return getReturnObject_suc(row, false).toString();
|
|
|
+ } catch (P2Exception e) {
|
|
|
+ return getReturnObject_err(e.getMessage()).toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 服务单关联物料
|
|
|
+ **/
|
|
|
+ public String titem() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ // if(StringUtils.isBlank(fagentnum))return
|
|
|
+ // getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String wherestr = "1=1";
|
|
|
+ String s[] = {"servicenum"};
|
|
|
+ for (String s1 : s) {
|
|
|
+ if (!where.containsKey(s1))
|
|
|
+ return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
+ }
|
|
|
+ if (where != null) {
|
|
|
+ DBConnect dbConnect = new DBConnect();
|
|
|
+ SQLFactory factory = new SQLFactory(this, "服务单关联物料", pageSize, pageNumber, "t1.fitemno");
|
|
|
+ factory.addParameter("servicenum", where.getString("servicenum"));
|
|
|
+ Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
+ return getReturnObject_suc_page(rows, false, 0).toString();
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 服务单关联工单
|
|
|
+ **/
|
|
|
+ public String hyworkorder() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ // if(StringUtils.isBlank(fagentnum))return
|
|
|
+ // getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String wherestr = "1=1";
|
|
|
+ String s[] = {"servicenum"};
|
|
|
+ for (String s1 : s) {
|
|
|
+ if (!where.containsKey(s1))
|
|
|
+ return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
+ }
|
|
|
+ if (where != null) {
|
|
|
+ DBConnect dbConnect = new DBConnect();
|
|
|
+ SQLFactory factory = new SQLFactory(this, "服务单关联工单", pageSize, pageNumber, "t1.fworknum");
|
|
|
+ factory.addParameter("servicenum", where.getString("servicenum"));
|
|
|
+ Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
+ return getReturnObject_suc_page(rows, false, 0).toString();
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 工单模板查询
|
|
|
+ **/
|
|
|
+ public String queryworkerordertemplate() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ // if(StringUtils.isBlank(fagentnum))return
|
|
|
+ // getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String wherestr = "1=1";
|
|
|
// String s[] = {"servicenum"};
|
|
|
// for (String s1 : s) {
|
|
|
// if (!where.containsKey(s1))return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
// }
|
|
|
- DBConnect dbConnect = new DBConnect();
|
|
|
- Rows rows = dbConnect.runSqlQuery(
|
|
|
- "select fname,ftype,fworknum from hyworkordertemplate where siteid='" + siteid + "' and fstatus='启用' ");
|
|
|
- return getReturnObject_suc(rows, false).toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 售后服务单转工单 **/
|
|
|
- public String AfterserviceOrderToHyworkorder() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- // if(StringUtils.isBlank(fagentnum))return
|
|
|
- // getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String s[] = { "ftype", "fworknum", "servicenum", "projectleader" };
|
|
|
- for (String s1 : s) {
|
|
|
- if (!where.containsKey(s1))
|
|
|
- return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
- }
|
|
|
- if (where != null) {
|
|
|
- try {
|
|
|
- PaoSetRemote afterserviceorder = P2Server.getP2Server().getPaoSet("afterserviceorder",
|
|
|
- P2Server.getP2Server().getSystemUserInfo());
|
|
|
- afterserviceorder.setInsertSite(siteid);
|
|
|
- afterserviceorder.setWhere("servicenum='" + where.getString("servicenum") + "'");
|
|
|
- afterserviceorder.reset();
|
|
|
- if (afterserviceorder.isEmpty()) {
|
|
|
- return getReturnObject_err("此售后服务单不存在").toString();
|
|
|
- } else {
|
|
|
- if (!afterserviceorder.getPao(0).getString("fstatus").equals("待指派")
|
|
|
- && !afterserviceorder.getPao(0).getString("fstatus").equals("待处理")
|
|
|
- && !afterserviceorder.getPao(0).getString("fstatus").equals("进行中")) {
|
|
|
- return getReturnObject_err("非处理和进行中状态不可生成工单").toString();
|
|
|
- }
|
|
|
- }
|
|
|
- PaoSetRemote workorders = P2Server.getP2Server().getPaoSet("hyWorkorder",
|
|
|
- P2Server.getP2Server().getSystemUserInfo());
|
|
|
- workorders.setInsertSite(siteid);
|
|
|
- workorders.setWhere("servernum='" + where.getString("servicenum") + "'");
|
|
|
- workorders.reset();
|
|
|
- // if(!afterserviceorder.isEmpty())return
|
|
|
- // getReturnObject_err("已存在关联的售后服务单").toString();
|
|
|
- if (!workorders.isEmpty()) {
|
|
|
- int i = 0;
|
|
|
- PaoRemote paoRemote = null;
|
|
|
- while ((paoRemote = workorders.getPao(i)) != null) {
|
|
|
- System.out.println(paoRemote.getString("ftype"));
|
|
|
- if (paoRemote.getString("ftype").equals(where.getString("ftype"))
|
|
|
- && !paoRemote.getString("fstatus").equals("作废")) {
|
|
|
- return getReturnObject_err("已存在" + where.getString("ftype") + "类型的工单,无法继续生成此类型的工单")
|
|
|
- .toString();
|
|
|
- }
|
|
|
- i++;
|
|
|
- }
|
|
|
- }
|
|
|
- PaoRemote remote = workorders.addAtEnd();
|
|
|
- remote.setValue("FAGENTNUM", afterserviceorder.getPao(0).getString("FAGENTNUM"), 11l);
|
|
|
- remote.setValue("servernum", where.getString("servicenum"), 11l);
|
|
|
- remote.setValue("PROJECTLEADER", where.getString("projectleader"), 2l);
|
|
|
- remote.setValue("FPROVINCE", afterserviceorder.getPao(0).getString("FPROVINCE"), 11l);
|
|
|
- remote.setValue("FCITY", afterserviceorder.getPao(0).getString("FCITY"), 11l);
|
|
|
- remote.setValue("FCOUNTY", afterserviceorder.getPao(0).getString("FCOUNTY"), 11l);
|
|
|
- remote.setValue("FADDRESS", afterserviceorder.getPao(0).getString("FADDRESS"), 11l);
|
|
|
- remote.setValue("scenefname", afterserviceorder.getPao(0).getString("scenefname"), 2l);
|
|
|
- remote.setValue("scenephone", afterserviceorder.getPao(0).getString("scenephone"), 2l);
|
|
|
- remote.setValue("errormsg", afterserviceorder.getPao(0).getString("error_msg"), 11l);
|
|
|
- remote.setValue("ftext", afterserviceorder.getPao(0).getString("fnotes"), 11l);
|
|
|
- remote.setValue("ftype", where.getString("ftype"), 2l);
|
|
|
- remote.setValue("TEMPLATENUM", where.getString("fworknum"), 2l);
|
|
|
- PaoSetRemote afterserviceorders = remote.getPaoSet("AFTERSERVICEORDER");
|
|
|
- afterserviceorders.getPao(0).setValue("fstatus", "待处理");
|
|
|
- if (siteid.equals("TZ")) {
|
|
|
- /** 给经销商发送消息 **/
|
|
|
- PaoSetRemote paoSet = remote.getPaoSet("$workermassage", "workermassage", "");
|
|
|
- PaoRemote remote1 = paoSet.addAtEnd();
|
|
|
- remote1.setValue("ftype", "经销商消息", 11l);
|
|
|
- remote1.setValue("title", "服务申请单:" + afterserviceorder.getPao(0).getString("Servicenum") + "已转成工单"
|
|
|
- + remote.getString("fworknum"), 11l);
|
|
|
- remote1.setValue("content", "服务申请单:" + afterserviceorder.getPao(0).getString("Servicenum") + "已转成工单"
|
|
|
- + remote.getString("fworknum"), 11l);
|
|
|
- remote1.setValue("phone", afterserviceorder.getPao(0).getString("FAGENTNUM"), 11l);
|
|
|
- }
|
|
|
- String fsonum = afterserviceorder.getPao(0).getString("fsonum");
|
|
|
- DBConnect connect = new DBConnect();
|
|
|
- SQLFactory factory = null;
|
|
|
- if (siteid.equals("TZ")) {
|
|
|
- factory = new SQLFactory(this, "查询台州订单收货日期");
|
|
|
- } else if (siteid.equals("HY")) {
|
|
|
- factory = new SQLFactory(this, "查询订单收货日期");
|
|
|
- }
|
|
|
- Rows rows = new Rows();
|
|
|
- if (fsonum != null && fsonum.length() > 0) {
|
|
|
- factory.addParameter("fsonum", fsonum);
|
|
|
- rows = connect.runSqlQuery(factory.getSQL());
|
|
|
- }
|
|
|
- if (!rows.isEmpty()) {
|
|
|
- Date receivedate = rows.get(0).getDate("receivedate");
|
|
|
- Calendar calendar = Calendar.getInstance();
|
|
|
- calendar.add(Calendar.YEAR, -2);
|
|
|
- Date date = calendar.getTime();
|
|
|
- if (date.before(receivedate)) {
|
|
|
- remote.setValue("FISPERIOD", true, 11l);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- workorders.save();
|
|
|
- Row row = new Row();
|
|
|
- row.put("FWORKNUM", remote.getString("FWORKNUM"));
|
|
|
- row.put("fstatus", remote.getString("fstatus"));
|
|
|
- row.put("createdate", DateFormatUtils.format(remote.getDate("createdate"), "yyyy-MM-dd HH:mm:ss"));
|
|
|
- return getReturnObject_suc(row, false).toString();
|
|
|
- } catch (P2Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- return getReturnObject_err(e.getMessage()).toString();
|
|
|
- }
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 创建售后服务单 **/
|
|
|
- public String createAfterserviceOrder() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- if (StringUtils.isBlank(fagentnum))
|
|
|
- return getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- if (where != null) {
|
|
|
- try {
|
|
|
- DBConnect connect = new DBConnect();
|
|
|
- SQLFactory factory = new SQLFactory(this, "查询经销商所属业务员");
|
|
|
- factory.addParameter("fagentnum", fagentnum);
|
|
|
- factory.addParameter("siteid", siteid);
|
|
|
- Rows rows = connect.runSqlQuery(factory.getSQL());
|
|
|
-
|
|
|
- PaoSetRemote afterserviceorder = getpaoset("Afterserviceorder");
|
|
|
- afterserviceorder.setInsertSite(siteid);
|
|
|
- // if(!afterserviceorder.isEmpty())return
|
|
|
- // getReturnObject_err("已存在关联的售后服务单").toString();
|
|
|
- PaoRemote remote = afterserviceorder.addAtEnd();
|
|
|
- remote.setValue("createby", hrid, 11l);
|
|
|
+ DBConnect dbConnect = new DBConnect();
|
|
|
+ Rows rows = dbConnect.runSqlQuery(
|
|
|
+ "select fname,ftype,fworknum from hyworkordertemplate where siteid='" + siteid + "' and fstatus='启用' ");
|
|
|
+ return getReturnObject_suc(rows, false).toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 售后服务单转工单
|
|
|
+ **/
|
|
|
+ public String AfterserviceOrderToHyworkorder() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ // if(StringUtils.isBlank(fagentnum))return
|
|
|
+ // getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String s[] = {"ftype", "fworknum", "servicenum", "projectleader"};
|
|
|
+ for (String s1 : s) {
|
|
|
+ if (!where.containsKey(s1))
|
|
|
+ return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
+ }
|
|
|
+ if (where != null) {
|
|
|
+ try {
|
|
|
+ PaoSetRemote afterserviceorder = P2Server.getP2Server().getPaoSet("afterserviceorder",
|
|
|
+ P2Server.getP2Server().getSystemUserInfo());
|
|
|
+ afterserviceorder.setInsertSite(siteid);
|
|
|
+ afterserviceorder.setWhere("servicenum='" + where.getString("servicenum") + "'");
|
|
|
+ afterserviceorder.reset();
|
|
|
+ if (afterserviceorder.isEmpty()) {
|
|
|
+ return getReturnObject_err("此售后服务单不存在").toString();
|
|
|
+ } else {
|
|
|
+ if (!afterserviceorder.getPao(0).getString("fstatus").equals("待指派")
|
|
|
+ && !afterserviceorder.getPao(0).getString("fstatus").equals("待处理")
|
|
|
+ && !afterserviceorder.getPao(0).getString("fstatus").equals("进行中")) {
|
|
|
+ return getReturnObject_err("非处理和进行中状态不可生成工单").toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ PaoSetRemote workorders = P2Server.getP2Server().getPaoSet("hyWorkorder",
|
|
|
+ P2Server.getP2Server().getSystemUserInfo());
|
|
|
+ workorders.setInsertSite(siteid);
|
|
|
+ workorders.setWhere("servernum='" + where.getString("servicenum") + "'");
|
|
|
+ workorders.reset();
|
|
|
+ // if(!afterserviceorder.isEmpty())return
|
|
|
+ // getReturnObject_err("已存在关联的售后服务单").toString();
|
|
|
+ if (!workorders.isEmpty()) {
|
|
|
+ int i = 0;
|
|
|
+ PaoRemote paoRemote = null;
|
|
|
+ while ((paoRemote = workorders.getPao(i)) != null) {
|
|
|
+ System.out.println(paoRemote.getString("ftype"));
|
|
|
+ if (paoRemote.getString("ftype").equals(where.getString("ftype"))
|
|
|
+ && !paoRemote.getString("fstatus").equals("作废")) {
|
|
|
+ return getReturnObject_err("已存在" + where.getString("ftype") + "类型的工单,无法继续生成此类型的工单")
|
|
|
+ .toString();
|
|
|
+ }
|
|
|
+ i++;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ PaoRemote remote = workorders.addAtEnd();
|
|
|
+ remote.setValue("FAGENTNUM", afterserviceorder.getPao(0).getString("FAGENTNUM"), 11l);
|
|
|
+ remote.setValue("servernum", where.getString("servicenum"), 11l);
|
|
|
+ remote.setValue("PROJECTLEADER", where.getString("projectleader"), 2l);
|
|
|
+ remote.setValue("FPROVINCE", afterserviceorder.getPao(0).getString("FPROVINCE"), 11l);
|
|
|
+ remote.setValue("FCITY", afterserviceorder.getPao(0).getString("FCITY"), 11l);
|
|
|
+ remote.setValue("FCOUNTY", afterserviceorder.getPao(0).getString("FCOUNTY"), 11l);
|
|
|
+ remote.setValue("FADDRESS", afterserviceorder.getPao(0).getString("FADDRESS"), 11l);
|
|
|
+ remote.setValue("scenefname", afterserviceorder.getPao(0).getString("scenefname"), 2l);
|
|
|
+ remote.setValue("scenephone", afterserviceorder.getPao(0).getString("scenephone"), 2l);
|
|
|
+ remote.setValue("errormsg", afterserviceorder.getPao(0).getString("error_msg"), 11l);
|
|
|
+ remote.setValue("ftext", afterserviceorder.getPao(0).getString("fnotes"), 11l);
|
|
|
+ remote.setValue("ftype", where.getString("ftype"), 2l);
|
|
|
+ remote.setValue("TEMPLATENUM", where.getString("fworknum"), 2l);
|
|
|
+ PaoSetRemote afterserviceorders = remote.getPaoSet("AFTERSERVICEORDER");
|
|
|
+ afterserviceorders.getPao(0).setValue("fstatus", "待处理");
|
|
|
+ if (siteid.equals("TZ")) {
|
|
|
+ /** 给经销商发送消息 **/
|
|
|
+ PaoSetRemote paoSet = remote.getPaoSet("$workermassage", "workermassage", "");
|
|
|
+ PaoRemote remote1 = paoSet.addAtEnd();
|
|
|
+ remote1.setValue("ftype", "经销商消息", 11l);
|
|
|
+ remote1.setValue("title", "服务申请单:" + afterserviceorder.getPao(0).getString("Servicenum") + "已转成工单"
|
|
|
+ + remote.getString("fworknum"), 11l);
|
|
|
+ remote1.setValue("content", "服务申请单:" + afterserviceorder.getPao(0).getString("Servicenum") + "已转成工单"
|
|
|
+ + remote.getString("fworknum"), 11l);
|
|
|
+ remote1.setValue("phone", afterserviceorder.getPao(0).getString("FAGENTNUM"), 11l);
|
|
|
+ }
|
|
|
+ String fsonum = afterserviceorder.getPao(0).getString("fsonum");
|
|
|
+ DBConnect connect = new DBConnect();
|
|
|
+ SQLFactory factory = null;
|
|
|
+ if (siteid.equals("TZ")) {
|
|
|
+ factory = new SQLFactory(this, "查询台州订单收货日期");
|
|
|
+ } else if (siteid.equals("HY")) {
|
|
|
+ factory = new SQLFactory(this, "查询订单收货日期");
|
|
|
+ }
|
|
|
+ Rows rows = new Rows();
|
|
|
+ if (fsonum != null && fsonum.length() > 0) {
|
|
|
+ factory.addParameter("fsonum", fsonum);
|
|
|
+ rows = connect.runSqlQuery(factory.getSQL());
|
|
|
+ }
|
|
|
+ if (!rows.isEmpty()) {
|
|
|
+ Date receivedate = rows.get(0).getDate("receivedate");
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.add(Calendar.YEAR, -2);
|
|
|
+ Date date = calendar.getTime();
|
|
|
+ if (date.before(receivedate)) {
|
|
|
+ remote.setValue("FISPERIOD", true, 11l);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ workorders.save();
|
|
|
+ Row row = new Row();
|
|
|
+ row.put("FWORKNUM", remote.getString("FWORKNUM"));
|
|
|
+ row.put("fstatus", remote.getString("fstatus"));
|
|
|
+ row.put("createdate", DateFormatUtils.format(remote.getDate("createdate"), "yyyy-MM-dd HH:mm:ss"));
|
|
|
+ return getReturnObject_suc(row, false).toString();
|
|
|
+ } catch (P2Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return getReturnObject_err(e.getMessage()).toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 创建售后服务单
|
|
|
+ **/
|
|
|
+ public String createAfterserviceOrder() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ if (StringUtils.isBlank(fagentnum))
|
|
|
+ return getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ if (where != null) {
|
|
|
+ try {
|
|
|
+ DBConnect connect = new DBConnect();
|
|
|
+ SQLFactory factory = new SQLFactory(this, "查询经销商所属业务员");
|
|
|
+ factory.addParameter("fagentnum", fagentnum);
|
|
|
+ factory.addParameter("siteid", siteid);
|
|
|
+ Rows rows = connect.runSqlQuery(factory.getSQL());
|
|
|
+
|
|
|
+ PaoSetRemote afterserviceorder = getpaoset("Afterserviceorder");
|
|
|
+ afterserviceorder.setInsertSite(siteid);
|
|
|
+ // if(!afterserviceorder.isEmpty())return
|
|
|
+ // getReturnObject_err("已存在关联的售后服务单").toString();
|
|
|
+ PaoRemote remote = afterserviceorder.addAtEnd();
|
|
|
+ remote.setValue("createby", hrid, 11l);
|
|
|
// remote.setValue("submitby",hrid,11l);
|
|
|
// remote.setValue("submitdate",new Date(),11l);
|
|
|
- remote.setValue("fagentnum", fagentnum, 11l);
|
|
|
- if (!rows.isEmpty()) {
|
|
|
- remote.setValue("fsaler", rows.get(0).getString("fsaler"), 11l);
|
|
|
- }
|
|
|
- afterserviceorder.save();
|
|
|
- Row row = new Row();
|
|
|
- row.put("servicenum", remote.getString("Servicenum"));
|
|
|
- row.put("fstatus", remote.getString("fstatus"));
|
|
|
- row.put("createdate", DateFormatUtils.format(remote.getDate("createdate"), "yyyy-MM-dd HH:mm:ss"));
|
|
|
- return getReturnObject_suc(row, false).toString();
|
|
|
- } catch (P2Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- return getReturnObject_err(e.getMessage()).toString();
|
|
|
- }
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 更新售后服务单 **/
|
|
|
- public String update() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- if (StringUtils.isBlank(fagentnum))
|
|
|
- return getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String s[] = { "servicenum" };
|
|
|
- for (String s1 : s) {
|
|
|
- if (!where.containsKey(s1))
|
|
|
- return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
- }
|
|
|
- if (where != null) {
|
|
|
- try {
|
|
|
- PaoSetRemote getpaoset = getpaoset("Afterserviceorder");
|
|
|
- getpaoset.setInsertSite(siteid);
|
|
|
- getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
- getpaoset.reset();
|
|
|
- if (getpaoset.isEmpty())
|
|
|
- return getReturnObject_err("没有该服务单").toString();
|
|
|
- PaoRemote remote = getpaoset.getPao(0);
|
|
|
- if (where.containsKey("servicetype")) {
|
|
|
- if (!where.getString("servicetype").equals("售前")) {
|
|
|
- if (!where.containsKey("fsonum")) {
|
|
|
- return getReturnObject_err("售中及售后及历史售后的服务单需添加关联订单号").toString();
|
|
|
- }
|
|
|
- }
|
|
|
- remote.setValue("servicetype", where.getString("servicetype"), 11l);
|
|
|
- }
|
|
|
- if (where.containsKey("fsonum") && !StringUtils.isBlank(where.getString("fsonum"))
|
|
|
- && !where.getString("fsonum").equalsIgnoreCase("null"))
|
|
|
- remote.setValue("fsonum", where.getString("fsonum"), 11l);
|
|
|
- if (where.containsKey("fprovince"))
|
|
|
- remote.setValue("fprovince", where.getString("fprovince"), 11l);
|
|
|
- if (where.containsKey("fcity"))
|
|
|
- remote.setValue("fcity", where.getString("fcity"), 11l);
|
|
|
- if (where.containsKey("fcounty"))
|
|
|
- remote.setValue("fcounty", where.getString("fcounty"), 11l);
|
|
|
- if (where.containsKey("fsaler"))
|
|
|
- remote.setValue("fsaler", where.getString("fsaler"), 11l);
|
|
|
- if (where.containsKey("faddress"))
|
|
|
- remote.setValue("faddress", where.getString("faddress"), 11l);
|
|
|
- if (where.containsKey("scenefname"))
|
|
|
- remote.setValue("scenefname", where.getString("scenefname"), 11l);
|
|
|
- if (where.containsKey("scenephone"))
|
|
|
- remote.setValue("scenephone", where.getString("scenephone"), 2l);
|
|
|
- if (where.containsKey("error_msg"))
|
|
|
- remote.setValue("error_msg", where.getString("error_msg"), 11l);
|
|
|
-
|
|
|
- if (where.containsKey("appsystem"))
|
|
|
- remote.setValue("appsystem", where.getString("appsystem"), 11l);
|
|
|
- if (where.containsKey("errcategory"))
|
|
|
- remote.setValue("errcategory", where.getString("errcategory"), 11l);
|
|
|
-
|
|
|
- if (where.containsKey("servicebegindate") && where.getString("servicebegindate") != null
|
|
|
- && where.getString("servicebegindate").length() != 0
|
|
|
- && !where.getString("servicebegindate").equalsIgnoreCase("null"))
|
|
|
-
|
|
|
- remote.setValue("servicebegindate", where.getString("servicebegindate"), 11l);
|
|
|
- if (where.containsKey("serviceenddate") && where.getString("serviceenddate") != null
|
|
|
- && where.getString("serviceenddate").length() != 0
|
|
|
- && !where.getString("serviceenddate").equalsIgnoreCase("null"))
|
|
|
- remote.setValue("serviceenddate", where.getString("serviceenddate"), 11l);
|
|
|
-
|
|
|
- if (where.containsKey("fnotes"))
|
|
|
- remote.setValue("fnotes", where.getString("fnotes"), 11l);
|
|
|
- if (where.containsKey("titems")) {
|
|
|
- PaoSetRemote hyafterserviceorder_titem = remote.getPaoSet("HYAFTERSERVICEORDER_TITEM");
|
|
|
- hyafterserviceorder_titem.deleteAll();
|
|
|
- hyafterserviceorder_titem.save();
|
|
|
- JSONArray titems = where.getJSONArray("titems");
|
|
|
- Set<String> set = new HashSet<>();
|
|
|
- for (Object titem : titems) {
|
|
|
- set.add((String) titem);
|
|
|
- }
|
|
|
- for (String s1 : set) {
|
|
|
- PaoRemote remote1 = hyafterserviceorder_titem.addAtEnd();
|
|
|
- remote1.setValue("FITEMNO", s1, 11l);
|
|
|
- }
|
|
|
- hyafterserviceorder_titem.save();
|
|
|
- }
|
|
|
- getpaoset.save();
|
|
|
- return getReturnObject_suc().toString();
|
|
|
- } catch (P2Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- return getReturnObject_err(e.getMessage()).toString();
|
|
|
- }
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 提交服务单 **/
|
|
|
- public String submit() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- if (StringUtils.isBlank(fagentnum))
|
|
|
- return getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String s[] = { "servicenum" };
|
|
|
- for (String s1 : s) {
|
|
|
- if (!where.containsKey(s1))
|
|
|
- return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- if (where != null) {
|
|
|
- try {
|
|
|
- PaoSetRemote getpaoset = P2Server.getP2Server().getPaoSet("Afterserviceorder", P2Server.getP2Server().getUserInfo(siteid.toUpperCase()+"ADMIN"));
|
|
|
- getpaoset.setInsertSite(siteid);
|
|
|
- getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
- getpaoset.reset();
|
|
|
- if (getpaoset.isEmpty())
|
|
|
- return getReturnObject_err("没有该服务单").toString();
|
|
|
- afterserviceorder afterserviceorder = (afterserviceorder) getpaoset.getPao(0);
|
|
|
- afterserviceorder.setValue("submitby", hrid, 11l);
|
|
|
- afterserviceorder.setValue("submitdate", new Date(), 11l);
|
|
|
- afterserviceorder.submit(true);
|
|
|
- /*
|
|
|
- * 发送邮件
|
|
|
- */
|
|
|
- PaoSetRemote tagents = afterserviceorder.getPaoSet("TAGENTS");
|
|
|
- String fagentname = "";
|
|
|
- if (!tagents.isEmpty()) {
|
|
|
- fagentname = tagents.getPao(0).getString("fagentname");
|
|
|
- }
|
|
|
- PaoSetRemote paoSet = P2Server.getP2Server().getPaoSet("tagents",
|
|
|
- P2Server.getP2Server().getUserInfo(siteid.toUpperCase() + "ADMIN"));
|
|
|
- tagents pao = (tagents) paoSet.getPao(0);
|
|
|
- String fprovince = "";
|
|
|
- String fcity = "";
|
|
|
- String fcounty = "";
|
|
|
- String faddress = "";
|
|
|
- if (!StringUtils.isBlank(afterserviceorder.getString("fprovince")))
|
|
|
- fprovince = afterserviceorder.getString("fprovince");
|
|
|
- if (!StringUtils.isBlank(afterserviceorder.getString("fcity")))
|
|
|
- fcity = afterserviceorder.getString("fcity");
|
|
|
- if (!StringUtils.isBlank(afterserviceorder.getString("fcounty")))
|
|
|
- fcounty = afterserviceorder.getString("fcounty");
|
|
|
- if (!StringUtils.isBlank(afterserviceorder.getString("faddress")))
|
|
|
- faddress = afterserviceorder.getString("faddress");
|
|
|
- pao.sendEmail(pao.getMailByHrGroup(siteid + "1011"), "服务申请单提交",
|
|
|
- "客户:" + fagentname + ",已提交服务申请:" + afterserviceorder.getString("Servicenum") + ",服务地址:"
|
|
|
- + fprovince + fcity + fcounty + faddress + ",请及时处理");
|
|
|
-
|
|
|
- getpaoset.save();
|
|
|
-
|
|
|
- return getReturnObject_suc().toString();
|
|
|
- } catch (P2Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- return getReturnObject_err(e.getMessage()).toString();
|
|
|
- }
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 退回服务单 **/
|
|
|
- public String sendback() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- // if(StringUtils.isBlank(fagentnum))return
|
|
|
- // getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String s[] = { "servicenum", "backreason" };
|
|
|
- for (String s1 : s) {
|
|
|
- if (!where.containsKey(s1))
|
|
|
- return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- if (where != null) {
|
|
|
- try {
|
|
|
- PaoSetRemote getpaoset = P2Server.getP2Server().getPaoSet("Afterserviceorder",
|
|
|
- P2Server.getP2Server().getSystemUserInfo());
|
|
|
- getpaoset.setInsertSite(siteid);
|
|
|
- getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
- getpaoset.reset();
|
|
|
- if (getpaoset.isEmpty())
|
|
|
- return getReturnObject_err("没有该服务单").toString();
|
|
|
- afterserviceorder afterserviceorder = (afterserviceorder) getpaoset.getPao(0);
|
|
|
- if (!afterserviceorder.getString("fstatus").equals("待指派")) {
|
|
|
- return getReturnObject_err("非待指派不可退回").toString();
|
|
|
- }
|
|
|
- if (where.getString("backreason") == null || where.getString("backreason").length() == 0) {
|
|
|
- return getReturnObject_err("退回原因为空不可退回").toString();
|
|
|
- }
|
|
|
- afterserviceorder.setValue("backreason", where.getString("backreason"));
|
|
|
- afterserviceorder.setValue("fstatus", "新建", 11L);
|
|
|
- afterserviceorder.setValue("submitby", "", 11l);
|
|
|
- afterserviceorder.setValue("submitdate", "", 11l);
|
|
|
- getpaoset.save();
|
|
|
-
|
|
|
- return getReturnObject_suc().toString();
|
|
|
- } catch (P2Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- return getReturnObject_err(e.getMessage()).toString();
|
|
|
- }
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 删除服务单 **/
|
|
|
- public String delete() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- if (StringUtils.isBlank(fagentnum))
|
|
|
- return getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String s[] = { "servicenum" };
|
|
|
- for (String s1 : s) {
|
|
|
- if (!where.containsKey(s1))
|
|
|
- return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
- }
|
|
|
- if (where != null) {
|
|
|
- try {
|
|
|
- PaoSetRemote getpaoset = getpaoset("Afterserviceorder");
|
|
|
- getpaoset.setInsertSite(siteid);
|
|
|
- getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
- getpaoset.reset();
|
|
|
- if (getpaoset.isEmpty())
|
|
|
- return getReturnObject_err("没有该服务单").toString();
|
|
|
- afterserviceorder afterserviceorder = (afterserviceorder) getpaoset.getPao(0);
|
|
|
- if (!afterserviceorder.getString("fstatus").equals("新建"))
|
|
|
- return getReturnObject_err("非新建不可删除").toString();
|
|
|
- afterserviceorder.delete();
|
|
|
- getpaoset.save();
|
|
|
- return getReturnObject_suc().toString();
|
|
|
- } catch (P2Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- return getReturnObject_err(e.getMessage()).toString();
|
|
|
- }
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 添加商品明细 **/
|
|
|
- public String addtitems() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- if (StringUtils.isBlank(fagentnum))
|
|
|
- return getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String s[] = { "servicenum", "titems" };
|
|
|
- for (String s1 : s) {
|
|
|
- if (!where.containsKey(s1))
|
|
|
- return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
- }
|
|
|
- if (where != null) {
|
|
|
- try {
|
|
|
- PaoSetRemote getpaoset = getpaoset("Afterserviceorder");
|
|
|
- getpaoset.setInsertSite(siteid);
|
|
|
- getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
- getpaoset.reset();
|
|
|
- if (getpaoset.isEmpty())
|
|
|
- return getReturnObject_err("没有该服务单").toString();
|
|
|
- afterserviceorder afterserviceorder = (afterserviceorder) getpaoset.getPao(0);
|
|
|
- JSONArray titems = where.getJSONArray("titems");
|
|
|
- Set<String> set = new HashSet<>();
|
|
|
- for (Object titem : titems) {
|
|
|
- set.add((String) titem);
|
|
|
- }
|
|
|
- for (String fitemno : set) {
|
|
|
- PaoSetRemote hyafterserviceorder_titem = afterserviceorder.getPaoSet("HYAFTERSERVICEORDER_TITEM");
|
|
|
- hyafterserviceorder_titem.setWhere("FITEMNO='" + fitemno + "'");
|
|
|
- hyafterserviceorder_titem.reset();
|
|
|
- if (hyafterserviceorder_titem.isEmpty()) {
|
|
|
- PaoRemote remote = hyafterserviceorder_titem.addAtEnd();
|
|
|
- remote.setValue("FITEMNO", fitemno, 2l);
|
|
|
- hyafterserviceorder_titem.save();
|
|
|
- }
|
|
|
- }
|
|
|
- getpaoset.save();
|
|
|
- return getReturnObject_suc().toString();
|
|
|
- } catch (P2Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- return getReturnObject_err(e.getMessage()).toString();
|
|
|
- }
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 删除商品明细 **/
|
|
|
- public String deletetitiems() {
|
|
|
- if (StringUtils.isBlank(hrid))
|
|
|
- return getReturnObject_err("hrid为空").toString();
|
|
|
- if (StringUtils.isBlank(fagentnum))
|
|
|
- return getReturnObject_err("fagentnum为空").toString();
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- JSONObject where = content.getJSONObject("where");
|
|
|
- String s[] = { "servicenum", "titems" };
|
|
|
- for (String s1 : s) {
|
|
|
- if (!where.containsKey(s1))
|
|
|
- return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
- }
|
|
|
- if (where != null) {
|
|
|
- try {
|
|
|
- JSONArray titems = where.getJSONArray("titems");
|
|
|
- Set<String> set = new HashSet<>();
|
|
|
- for (Object titem : titems) {
|
|
|
- set.add((String) titem);
|
|
|
- }
|
|
|
- PaoSetRemote getpaoset = getpaoset("Afterserviceorder");
|
|
|
- getpaoset.setInsertSite(siteid);
|
|
|
- getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
- getpaoset.reset();
|
|
|
- if (getpaoset.isEmpty())
|
|
|
- return getReturnObject_err("没有该服务单").toString();
|
|
|
- PaoRemote pao = getpaoset.getPao(0);
|
|
|
- PaoSetRemote hyafterserviceorder_titem = pao.getPaoSet("HYAFTERSERVICEORDER_TITEM");
|
|
|
- for (int i = 0; i < hyafterserviceorder_titem.count(); i++) {
|
|
|
- PaoRemote pao1 = hyafterserviceorder_titem.getPao(i);
|
|
|
- if (set.contains(pao1.getString("FITEMNO"))) {
|
|
|
- pao1.delete();
|
|
|
- }
|
|
|
- }
|
|
|
- hyafterserviceorder_titem.save();
|
|
|
- return getReturnObject_suc().toString();
|
|
|
- } catch (P2Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- return getReturnObject_err(e.getMessage()).toString();
|
|
|
- }
|
|
|
- }
|
|
|
- return getReturnObject_err("缺少where参数").toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 获取应用系统 **/
|
|
|
- public String get_appsystem() {
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- DBConnect dbConnect = new DBConnect();
|
|
|
- Rows rows = dbConnect.runSqlQuery("select value from PS_DATABIND_LIST where databindid='APPSYSTEM' and siteid='"
|
|
|
- + siteid + "' order by SEQUENCE");
|
|
|
- return getReturnObject_suc(rows, false).toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 获取服务分类 **/
|
|
|
- public String errcategory() {
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- DBConnect dbConnect = new DBConnect();
|
|
|
- Rows rows = dbConnect
|
|
|
- .runSqlQuery("select value from PS_DATABIND_LIST where databindid='ERRCATEGORY' and siteid='" + siteid
|
|
|
- + "' order by SEQUENCE");
|
|
|
- return getReturnObject_suc(rows, false).toString();
|
|
|
- }
|
|
|
-
|
|
|
- /** 服务分类查询 **/
|
|
|
- public String servicetypeList() {
|
|
|
- Rows rows = new Rows();
|
|
|
- Row row1 = new Row();
|
|
|
- row1.put("value", "售前");
|
|
|
- Row row2 = new Row();
|
|
|
- row2.put("value", "售中");
|
|
|
- Row row3 = new Row();
|
|
|
- row3.put("value", "售后");
|
|
|
- Row row4 = new Row();
|
|
|
- row4.put("value", "历史售后");
|
|
|
- rows.add(row1);
|
|
|
- rows.add(row2);
|
|
|
- rows.add(row3);
|
|
|
- rows.add(row4);
|
|
|
- return getReturnObject_suc(rows, true).toString();
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- /** 获取服务分类 **/
|
|
|
- public String getsalerforagent() {
|
|
|
- if (StringUtils.isBlank(siteid))
|
|
|
- return getReturnObject_err("siteid为空").toString();
|
|
|
- if (StringUtils.isBlank(fagentnum))
|
|
|
- return getReturnObject_err("fagentnum为空").toString();
|
|
|
- DBConnect dbConnect = new DBConnect();
|
|
|
- SQLFactory factory = new SQLFactory(this, "查询经销商所属业务员");
|
|
|
- factory.addParameter("fagentnum", fagentnum);
|
|
|
- factory.addParameter("siteid", siteid);
|
|
|
- Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
- return getReturnObject_suc(rows, false).toString();
|
|
|
- }
|
|
|
+ remote.setValue("fagentnum", fagentnum, 11l);
|
|
|
+ if (!rows.isEmpty()) {
|
|
|
+ remote.setValue("fsaler", rows.get(0).getString("fsaler"), 11l);
|
|
|
+ }
|
|
|
+ afterserviceorder.save();
|
|
|
+ Row row = new Row();
|
|
|
+ row.put("servicenum", remote.getString("Servicenum"));
|
|
|
+ row.put("fstatus", remote.getString("fstatus"));
|
|
|
+ row.put("createdate", DateFormatUtils.format(remote.getDate("createdate"), "yyyy-MM-dd HH:mm:ss"));
|
|
|
+ return getReturnObject_suc(row, false).toString();
|
|
|
+ } catch (P2Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return getReturnObject_err(e.getMessage()).toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 更新售后服务单
|
|
|
+ **/
|
|
|
+ public String update() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ if (StringUtils.isBlank(fagentnum))
|
|
|
+ return getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String s[] = {"servicenum"};
|
|
|
+ for (String s1 : s) {
|
|
|
+ if (!where.containsKey(s1))
|
|
|
+ return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
+ }
|
|
|
+ if (where != null) {
|
|
|
+ try {
|
|
|
+ PaoSetRemote getpaoset = getpaoset("Afterserviceorder");
|
|
|
+ getpaoset.setInsertSite(siteid);
|
|
|
+ getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
+ getpaoset.reset();
|
|
|
+ if (getpaoset.isEmpty())
|
|
|
+ return getReturnObject_err("没有该服务单").toString();
|
|
|
+ PaoRemote remote = getpaoset.getPao(0);
|
|
|
+ if (where.containsKey("servicetype")) {
|
|
|
+ if (!where.getString("servicetype").equals("售前")) {
|
|
|
+ if (!where.containsKey("fsonum")) {
|
|
|
+ return getReturnObject_err("售中及售后及历史售后的服务单需添加关联订单号").toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ remote.setValue("servicetype", where.getString("servicetype"), 11l);
|
|
|
+ }
|
|
|
+ if (where.containsKey("scenephone") && !"".equals(where.getString("scenephone"))) {
|
|
|
+ if (!Pattern.matches("^1([358][0-9]|4[579]|66|7[0135678]|9[89])[0-9]{8}$", where.getString("scenephone"))) {
|
|
|
+ return getReturnObject_err("手机格式有误").toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (where.containsKey("fsonum") && !StringUtils.isBlank(where.getString("fsonum"))
|
|
|
+ && !where.getString("fsonum").equalsIgnoreCase("null"))
|
|
|
+ remote.setValue("fsonum", where.getString("fsonum"), 11l);
|
|
|
+ if (where.containsKey("fprovince"))
|
|
|
+ remote.setValue("fprovince", where.getString("fprovince"), 11l);
|
|
|
+ if (where.containsKey("fcity"))
|
|
|
+ remote.setValue("fcity", where.getString("fcity"), 11l);
|
|
|
+ if (where.containsKey("fcounty"))
|
|
|
+ remote.setValue("fcounty", where.getString("fcounty"), 11l);
|
|
|
+ if (where.containsKey("fsaler"))
|
|
|
+ remote.setValue("fsaler", where.getString("fsaler"), 11l);
|
|
|
+ if (where.containsKey("faddress"))
|
|
|
+ remote.setValue("faddress", where.getString("faddress"), 11l);
|
|
|
+ if (where.containsKey("scenefname"))
|
|
|
+ remote.setValue("scenefname", where.getString("scenefname"), 11l);
|
|
|
+ if (where.containsKey("scenephone")) {
|
|
|
+ remote.setValue("scenephone", where.getString("scenephone"), 2l);
|
|
|
+ }
|
|
|
+ if (where.containsKey("error_msg"))
|
|
|
+ remote.setValue("error_msg", where.getString("error_msg"), 11l);
|
|
|
+
|
|
|
+ if (where.containsKey("appsystem"))
|
|
|
+ remote.setValue("appsystem", where.getString("appsystem"), 11l);
|
|
|
+ if (where.containsKey("errcategory"))
|
|
|
+ remote.setValue("errcategory", where.getString("errcategory"), 11l);
|
|
|
+
|
|
|
+ if (where.containsKey("servicebegindate") && where.getString("servicebegindate") != null
|
|
|
+ && where.getString("servicebegindate").length() != 0
|
|
|
+ && !where.getString("servicebegindate").equalsIgnoreCase("null"))
|
|
|
+
|
|
|
+ remote.setValue("servicebegindate", where.getString("servicebegindate"), 11l);
|
|
|
+ if (where.containsKey("serviceenddate") && where.getString("serviceenddate") != null
|
|
|
+ && where.getString("serviceenddate").length() != 0
|
|
|
+ && !where.getString("serviceenddate").equalsIgnoreCase("null"))
|
|
|
+ remote.setValue("serviceenddate", where.getString("serviceenddate"), 11l);
|
|
|
+
|
|
|
+ if (where.containsKey("fnotes"))
|
|
|
+ remote.setValue("fnotes", where.getString("fnotes"), 11l);
|
|
|
+ if (where.containsKey("titems")) {
|
|
|
+ PaoSetRemote hyafterserviceorder_titem = remote.getPaoSet("HYAFTERSERVICEORDER_TITEM");
|
|
|
+ hyafterserviceorder_titem.deleteAll();
|
|
|
+ hyafterserviceorder_titem.save();
|
|
|
+ JSONArray titems = where.getJSONArray("titems");
|
|
|
+ Set<String> set = new HashSet<>();
|
|
|
+ for (Object titem : titems) {
|
|
|
+ set.add((String) titem);
|
|
|
+ }
|
|
|
+ for (String s1 : set) {
|
|
|
+ PaoRemote remote1 = hyafterserviceorder_titem.addAtEnd();
|
|
|
+ remote1.setValue("FITEMNO", s1, 11l);
|
|
|
+ }
|
|
|
+ hyafterserviceorder_titem.save();
|
|
|
+ }
|
|
|
+ getpaoset.save();
|
|
|
+ return getReturnObject_suc().toString();
|
|
|
+ } catch (P2Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return getReturnObject_err(e.getMessage()).toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 提交服务单
|
|
|
+ **/
|
|
|
+ public String submit() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ if (StringUtils.isBlank(fagentnum))
|
|
|
+ return getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String s[] = {"servicenum"};
|
|
|
+ for (String s1 : s) {
|
|
|
+ if (!where.containsKey(s1))
|
|
|
+ return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ if (where != null) {
|
|
|
+ try {
|
|
|
+ PaoSetRemote getpaoset = P2Server.getP2Server().getPaoSet("Afterserviceorder", P2Server.getP2Server().getUserInfo(siteid.toUpperCase() + "ADMIN"));
|
|
|
+ getpaoset.setInsertSite(siteid);
|
|
|
+ getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
+ getpaoset.reset();
|
|
|
+ if (getpaoset.isEmpty())
|
|
|
+ return getReturnObject_err("没有该服务单").toString();
|
|
|
+ afterserviceorder afterserviceorder = (afterserviceorder) getpaoset.getPao(0);
|
|
|
+ afterserviceorder.setValue("submitby", hrid, 11l);
|
|
|
+ afterserviceorder.setValue("submitdate", new Date(), 11l);
|
|
|
+ afterserviceorder.submit(true);
|
|
|
+ /*
|
|
|
+ * 发送邮件
|
|
|
+ */
|
|
|
+ PaoSetRemote tagents = afterserviceorder.getPaoSet("TAGENTS");
|
|
|
+ String fagentname = "";
|
|
|
+ if (!tagents.isEmpty()) {
|
|
|
+ fagentname = tagents.getPao(0).getString("fagentname");
|
|
|
+ }
|
|
|
+ PaoSetRemote paoSet = P2Server.getP2Server().getPaoSet("tagents",
|
|
|
+ P2Server.getP2Server().getUserInfo(siteid.toUpperCase() + "ADMIN"));
|
|
|
+ tagents pao = (tagents) paoSet.getPao(0);
|
|
|
+ String fprovince = "";
|
|
|
+ String fcity = "";
|
|
|
+ String fcounty = "";
|
|
|
+ String faddress = "";
|
|
|
+ if (!StringUtils.isBlank(afterserviceorder.getString("fprovince")))
|
|
|
+ fprovince = afterserviceorder.getString("fprovince");
|
|
|
+ if (!StringUtils.isBlank(afterserviceorder.getString("fcity")))
|
|
|
+ fcity = afterserviceorder.getString("fcity");
|
|
|
+ if (!StringUtils.isBlank(afterserviceorder.getString("fcounty")))
|
|
|
+ fcounty = afterserviceorder.getString("fcounty");
|
|
|
+ if (!StringUtils.isBlank(afterserviceorder.getString("faddress")))
|
|
|
+ faddress = afterserviceorder.getString("faddress");
|
|
|
+ pao.sendEmail(pao.getMailByHrGroup(siteid + "1011"), "服务申请单提交",
|
|
|
+ "客户:" + fagentname + ",已提交服务申请:" + afterserviceorder.getString("Servicenum") + ",服务地址:"
|
|
|
+ + fprovince + fcity + fcounty + faddress + ",请及时处理");
|
|
|
+
|
|
|
+ getpaoset.save();
|
|
|
+
|
|
|
+ return getReturnObject_suc().toString();
|
|
|
+ } catch (P2Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return getReturnObject_err(e.getMessage()).toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 退回服务单
|
|
|
+ **/
|
|
|
+ public String sendback() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ // if(StringUtils.isBlank(fagentnum))return
|
|
|
+ // getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String s[] = {"servicenum", "backreason"};
|
|
|
+ for (String s1 : s) {
|
|
|
+ if (!where.containsKey(s1))
|
|
|
+ return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ if (where != null) {
|
|
|
+ try {
|
|
|
+ PaoSetRemote getpaoset = P2Server.getP2Server().getPaoSet("Afterserviceorder",
|
|
|
+ P2Server.getP2Server().getSystemUserInfo());
|
|
|
+ getpaoset.setInsertSite(siteid);
|
|
|
+ getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
+ getpaoset.reset();
|
|
|
+ if (getpaoset.isEmpty())
|
|
|
+ return getReturnObject_err("没有该服务单").toString();
|
|
|
+ afterserviceorder afterserviceorder = (afterserviceorder) getpaoset.getPao(0);
|
|
|
+ if (!afterserviceorder.getString("fstatus").equals("待指派")) {
|
|
|
+ return getReturnObject_err("非待指派不可退回").toString();
|
|
|
+ }
|
|
|
+ if (where.getString("backreason") == null || where.getString("backreason").length() == 0) {
|
|
|
+ return getReturnObject_err("退回原因为空不可退回").toString();
|
|
|
+ }
|
|
|
+ afterserviceorder.setValue("backreason", where.getString("backreason"));
|
|
|
+ afterserviceorder.setValue("fstatus", "新建", 11L);
|
|
|
+ afterserviceorder.setValue("submitby", "", 11l);
|
|
|
+ afterserviceorder.setValue("submitdate", "", 11l);
|
|
|
+ getpaoset.save();
|
|
|
+
|
|
|
+ return getReturnObject_suc().toString();
|
|
|
+ } catch (P2Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return getReturnObject_err(e.getMessage()).toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 删除服务单
|
|
|
+ **/
|
|
|
+ public String delete() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ if (StringUtils.isBlank(fagentnum))
|
|
|
+ return getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String s[] = {"servicenum"};
|
|
|
+ for (String s1 : s) {
|
|
|
+ if (!where.containsKey(s1))
|
|
|
+ return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
+ }
|
|
|
+ if (where != null) {
|
|
|
+ try {
|
|
|
+ PaoSetRemote getpaoset = getpaoset("Afterserviceorder");
|
|
|
+ getpaoset.setInsertSite(siteid);
|
|
|
+ getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
+ getpaoset.reset();
|
|
|
+ if (getpaoset.isEmpty())
|
|
|
+ return getReturnObject_err("没有该服务单").toString();
|
|
|
+ afterserviceorder afterserviceorder = (afterserviceorder) getpaoset.getPao(0);
|
|
|
+ if (!afterserviceorder.getString("fstatus").equals("新建"))
|
|
|
+ return getReturnObject_err("非新建不可删除").toString();
|
|
|
+ afterserviceorder.delete();
|
|
|
+ getpaoset.save();
|
|
|
+ return getReturnObject_suc().toString();
|
|
|
+ } catch (P2Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return getReturnObject_err(e.getMessage()).toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 添加商品明细
|
|
|
+ **/
|
|
|
+ public String addtitems() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ if (StringUtils.isBlank(fagentnum))
|
|
|
+ return getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String s[] = {"servicenum", "titems"};
|
|
|
+ for (String s1 : s) {
|
|
|
+ if (!where.containsKey(s1))
|
|
|
+ return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
+ }
|
|
|
+ if (where != null) {
|
|
|
+ try {
|
|
|
+ PaoSetRemote getpaoset = getpaoset("Afterserviceorder");
|
|
|
+ getpaoset.setInsertSite(siteid);
|
|
|
+ getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
+ getpaoset.reset();
|
|
|
+ if (getpaoset.isEmpty())
|
|
|
+ return getReturnObject_err("没有该服务单").toString();
|
|
|
+ afterserviceorder afterserviceorder = (afterserviceorder) getpaoset.getPao(0);
|
|
|
+ JSONArray titems = where.getJSONArray("titems");
|
|
|
+ Set<String> set = new HashSet<>();
|
|
|
+ for (Object titem : titems) {
|
|
|
+ set.add((String) titem);
|
|
|
+ }
|
|
|
+ for (String fitemno : set) {
|
|
|
+ PaoSetRemote hyafterserviceorder_titem = afterserviceorder.getPaoSet("HYAFTERSERVICEORDER_TITEM");
|
|
|
+ hyafterserviceorder_titem.setWhere("FITEMNO='" + fitemno + "'");
|
|
|
+ hyafterserviceorder_titem.reset();
|
|
|
+ if (hyafterserviceorder_titem.isEmpty()) {
|
|
|
+ PaoRemote remote = hyafterserviceorder_titem.addAtEnd();
|
|
|
+ remote.setValue("FITEMNO", fitemno, 2l);
|
|
|
+ hyafterserviceorder_titem.save();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ getpaoset.save();
|
|
|
+ return getReturnObject_suc().toString();
|
|
|
+ } catch (P2Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return getReturnObject_err(e.getMessage()).toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 删除商品明细
|
|
|
+ **/
|
|
|
+ public String deletetitiems() {
|
|
|
+ if (StringUtils.isBlank(hrid))
|
|
|
+ return getReturnObject_err("hrid为空").toString();
|
|
|
+ if (StringUtils.isBlank(fagentnum))
|
|
|
+ return getReturnObject_err("fagentnum为空").toString();
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ JSONObject where = content.getJSONObject("where");
|
|
|
+ String s[] = {"servicenum", "titems"};
|
|
|
+ for (String s1 : s) {
|
|
|
+ if (!where.containsKey(s1))
|
|
|
+ return getReturnObject_err("缺少" + s1 + "参数").toString();
|
|
|
+ }
|
|
|
+ if (where != null) {
|
|
|
+ try {
|
|
|
+ JSONArray titems = where.getJSONArray("titems");
|
|
|
+ Set<String> set = new HashSet<>();
|
|
|
+ for (Object titem : titems) {
|
|
|
+ set.add((String) titem);
|
|
|
+ }
|
|
|
+ PaoSetRemote getpaoset = getpaoset("Afterserviceorder");
|
|
|
+ getpaoset.setInsertSite(siteid);
|
|
|
+ getpaoset.setWhere("Servicenum='" + where.getString("servicenum") + "'");
|
|
|
+ getpaoset.reset();
|
|
|
+ if (getpaoset.isEmpty())
|
|
|
+ return getReturnObject_err("没有该服务单").toString();
|
|
|
+ PaoRemote pao = getpaoset.getPao(0);
|
|
|
+ PaoSetRemote hyafterserviceorder_titem = pao.getPaoSet("HYAFTERSERVICEORDER_TITEM");
|
|
|
+ for (int i = 0; i < hyafterserviceorder_titem.count(); i++) {
|
|
|
+ PaoRemote pao1 = hyafterserviceorder_titem.getPao(i);
|
|
|
+ if (set.contains(pao1.getString("FITEMNO"))) {
|
|
|
+ pao1.delete();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ hyafterserviceorder_titem.save();
|
|
|
+ return getReturnObject_suc().toString();
|
|
|
+ } catch (P2Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return getReturnObject_err(e.getMessage()).toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return getReturnObject_err("缺少where参数").toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取应用系统
|
|
|
+ **/
|
|
|
+ public String get_appsystem() {
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ DBConnect dbConnect = new DBConnect();
|
|
|
+ Rows rows = dbConnect.runSqlQuery("select value from PS_DATABIND_LIST where databindid='APPSYSTEM' and siteid='"
|
|
|
+ + siteid + "' order by SEQUENCE");
|
|
|
+ return getReturnObject_suc(rows, false).toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取服务分类
|
|
|
+ **/
|
|
|
+ public String errcategory() {
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ DBConnect dbConnect = new DBConnect();
|
|
|
+ Rows rows = dbConnect
|
|
|
+ .runSqlQuery("select value from PS_DATABIND_LIST where databindid='ERRCATEGORY' and siteid='" + siteid
|
|
|
+ + "' order by SEQUENCE");
|
|
|
+ return getReturnObject_suc(rows, false).toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 服务分类查询
|
|
|
+ **/
|
|
|
+ public String servicetypeList() {
|
|
|
+ Rows rows = new Rows();
|
|
|
+ Row row1 = new Row();
|
|
|
+ row1.put("value", "售前");
|
|
|
+ Row row2 = new Row();
|
|
|
+ row2.put("value", "售中");
|
|
|
+ Row row3 = new Row();
|
|
|
+ row3.put("value", "售后");
|
|
|
+ Row row4 = new Row();
|
|
|
+ row4.put("value", "历史售后");
|
|
|
+ rows.add(row1);
|
|
|
+ rows.add(row2);
|
|
|
+ rows.add(row3);
|
|
|
+ rows.add(row4);
|
|
|
+ return getReturnObject_suc(rows, true).toString();
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取服务分类
|
|
|
+ **/
|
|
|
+ public String getsalerforagent() {
|
|
|
+ if (StringUtils.isBlank(siteid))
|
|
|
+ return getReturnObject_err("siteid为空").toString();
|
|
|
+ if (StringUtils.isBlank(fagentnum))
|
|
|
+ return getReturnObject_err("fagentnum为空").toString();
|
|
|
+ DBConnect dbConnect = new DBConnect();
|
|
|
+ SQLFactory factory = new SQLFactory(this, "查询经销商所属业务员");
|
|
|
+ factory.addParameter("fagentnum", fagentnum);
|
|
|
+ factory.addParameter("siteid", siteid);
|
|
|
+ Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
+ return getReturnObject_suc(rows, false).toString();
|
|
|
+ }
|
|
|
}
|