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

流程进度表更新CODE字段
修改流程进度逻辑

yanliming 3 недель назад
Родитель
Сommit
8d585d7c8c
64 измененных файлов с 588 добавлено и 180 удалено
  1. 1 0
      common/src/main/java/com/jpsoft/employment/modules/base/dao/CustomerInfoDAO.java
  2. 13 0
      common/src/main/java/com/jpsoft/employment/modules/base/dto/CreateCustomerDTO.java
  3. 7 0
      common/src/main/java/com/jpsoft/employment/modules/base/dto/WorkOrderAllDataDTO.java
  4. 3 0
      common/src/main/java/com/jpsoft/employment/modules/base/entity/AboutUs.java
  5. 12 1
      common/src/main/java/com/jpsoft/employment/modules/base/entity/CommentInfo.java
  6. 3 0
      common/src/main/java/com/jpsoft/employment/modules/base/entity/ConstructionProgress.java
  7. 16 1
      common/src/main/java/com/jpsoft/employment/modules/base/entity/Feedback.java
  8. 18 0
      common/src/main/java/com/jpsoft/employment/modules/base/entity/MessageInfo.java
  9. 3 0
      common/src/main/java/com/jpsoft/employment/modules/base/entity/WorkOrder.java
  10. 1 0
      common/src/main/java/com/jpsoft/employment/modules/base/service/CustomerInfoService.java
  11. 6 0
      common/src/main/java/com/jpsoft/employment/modules/base/service/impl/CustomerInfoServiceImpl.java
  12. 41 21
      common/src/main/java/com/jpsoft/employment/modules/base/service/impl/WorkOrderServiceImpl.java
  13. 7 1
      common/src/main/resources/mapper/base/AboutUs.xml
  14. 6 1
      common/src/main/resources/mapper/base/ConstructionProgress.xml
  15. 6 0
      common/src/main/resources/mapper/base/CustomerInfo.xml
  16. 2 2
      common/src/main/resources/mapper/base/Feedback.xml
  17. 6 2
      common/src/main/resources/mapper/base/MessageInfo.xml
  18. 10 1
      common/src/main/resources/mapper/base/WorkOrder.xml
  19. BIN
      common/target/classes/com/jpsoft/employment/modules/base/dao/ArgonPartnerDAO.class
  20. BIN
      common/target/classes/com/jpsoft/employment/modules/base/dao/CustomerInfoDAO.class
  21. BIN
      common/target/classes/com/jpsoft/employment/modules/base/dao/LaborerInfoDAO.class
  22. BIN
      common/target/classes/com/jpsoft/employment/modules/base/dao/TransportationInfoDAO.class
  23. BIN
      common/target/classes/com/jpsoft/employment/modules/base/dto/EnterCertificationDTO.class
  24. BIN
      common/target/classes/com/jpsoft/employment/modules/base/dto/EnterInfoDTO.class
  25. BIN
      common/target/classes/com/jpsoft/employment/modules/base/dto/TechnicianDTO.class
  26. BIN
      common/target/classes/com/jpsoft/employment/modules/base/dto/WorkOrderAllDataDTO.class
  27. BIN
      common/target/classes/com/jpsoft/employment/modules/base/dto/WorkOrderSubDataDTO.class
  28. BIN
      common/target/classes/com/jpsoft/employment/modules/base/entity/AboutUs.class
  29. BIN
      common/target/classes/com/jpsoft/employment/modules/base/entity/CommentInfo.class
  30. BIN
      common/target/classes/com/jpsoft/employment/modules/base/entity/ConstructionProgress.class
  31. BIN
      common/target/classes/com/jpsoft/employment/modules/base/entity/Feedback.class
  32. BIN
      common/target/classes/com/jpsoft/employment/modules/base/entity/InstallationRequirement.class
  33. BIN
      common/target/classes/com/jpsoft/employment/modules/base/entity/MessageInfo.class
  34. BIN
      common/target/classes/com/jpsoft/employment/modules/base/entity/TechnicianInfo.class
  35. BIN
      common/target/classes/com/jpsoft/employment/modules/base/entity/WorkOrder.class
  36. BIN
      common/target/classes/com/jpsoft/employment/modules/base/service/ArgonPartnerService.class
  37. BIN
      common/target/classes/com/jpsoft/employment/modules/base/service/CustomerInfoService.class
  38. BIN
      common/target/classes/com/jpsoft/employment/modules/base/service/LaborerInfoService.class
  39. BIN
      common/target/classes/com/jpsoft/employment/modules/base/service/TransportationInfoService.class
  40. BIN
      common/target/classes/com/jpsoft/employment/modules/base/service/WorkOrderService.class
  41. BIN
      common/target/classes/com/jpsoft/employment/modules/base/service/impl/ArgonPartnerServiceImpl.class
  42. BIN
      common/target/classes/com/jpsoft/employment/modules/base/service/impl/CustomerInfoServiceImpl.class
  43. BIN
      common/target/classes/com/jpsoft/employment/modules/base/service/impl/LaborerInfoServiceImpl.class
  44. BIN
      common/target/classes/com/jpsoft/employment/modules/base/service/impl/TransportationInfoServiceImpl.class
  45. BIN
      common/target/classes/com/jpsoft/employment/modules/base/service/impl/WorkOrderServiceImpl.class
  46. 31 5
      common/target/classes/mapper/base/AboutUs.xml
  47. 3 0
      common/target/classes/mapper/base/ArgonPartner.xml
  48. 8 1
      common/target/classes/mapper/base/CommentInfo.xml
  49. 6 1
      common/target/classes/mapper/base/ConstructionProgress.xml
  50. 6 0
      common/target/classes/mapper/base/CustomerInfo.xml
  51. 2 2
      common/target/classes/mapper/base/Feedback.xml
  52. 2 2
      common/target/classes/mapper/base/InstallationRequirement.xml
  53. 3 0
      common/target/classes/mapper/base/LaborerInfo.xml
  54. 6 2
      common/target/classes/mapper/base/MessageInfo.xml
  55. 7 1
      common/target/classes/mapper/base/TechnicianInfo.xml
  56. 3 0
      common/target/classes/mapper/base/TransportationInfo.xml
  57. 117 104
      common/target/classes/mapper/base/WorkOrder.xml
  58. 1 0
      web/src/main/java/com/jpsoft/employment/config/WebMvcConfig.java
  59. 1 1
      web/src/main/java/com/jpsoft/employment/modules/base/controller/AboutUsController.java
  60. 43 1
      web/src/main/java/com/jpsoft/employment/modules/base/controller/FeedbackController.java
  61. 37 1
      web/src/main/java/com/jpsoft/employment/modules/base/controller/MessageInfoController.java
  62. 26 19
      web/src/main/java/com/jpsoft/employment/modules/mobile/controller/CustomerInfoApiController.java
  63. 92 10
      web/src/main/java/com/jpsoft/employment/modules/mobile/controller/PartnerApiController.java
  64. 33 0
      web/src/main/java/com/jpsoft/employment/utils/RandomNameUtils.java

+ 1 - 0
common/src/main/java/com/jpsoft/employment/modules/base/dao/CustomerInfoDAO.java

@@ -15,5 +15,6 @@ public interface CustomerInfoDAO {
 	int delete(String id);
 	List<CustomerInfo> list();
 	CustomerInfo findByOpenId(String openId);
+	CustomerInfo findByPhone(String phone);
 	List<CustomerInfo> search(Map<String, Object> searchParams, List<Sort> sortList);
 }

+ 13 - 0
common/src/main/java/com/jpsoft/employment/modules/base/dto/CreateCustomerDTO.java

@@ -0,0 +1,13 @@
+package com.jpsoft.employment.modules.base.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class CreateCustomerDTO {
+    @ApiModelProperty(value = "管理员电话")
+    private String phone;
+
+    @ApiModelProperty(value = "微信唯一标示")
+    private String openId;
+}

+ 7 - 0
common/src/main/java/com/jpsoft/employment/modules/base/dto/WorkOrderAllDataDTO.java

@@ -23,6 +23,13 @@ public class WorkOrderAllDataDTO {
 
     @ApiModelProperty(value = "客户电话")
     private String customerPhone;
+
+    @ApiModelProperty(value = "头像")
+    private String image;
+
+    @ApiModelProperty(value = "状态")
+    private String customerStatusN;
+
     private List<CommentInfo> commentInfoList;
     private TechnicianInfo technicianInfo;
     private List<String> imageList;

+ 3 - 0
common/src/main/java/com/jpsoft/employment/modules/base/entity/AboutUs.java

@@ -59,4 +59,7 @@ public class AboutUs {
 
 	@ApiModelProperty(value = "收款码")
 	private String paymentCode;
+
+	@ApiModelProperty(value = "客服电话")
+	private String phone;
 		}

+ 12 - 1
common/src/main/java/com/jpsoft/employment/modules/base/entity/CommentInfo.java

@@ -66,10 +66,21 @@ public class CommentInfo {
 	@ApiModelProperty(value = "是否公开")
 	private Boolean isOpen;
 
-				@Transient
+	@Transient
 	@ApiModelProperty(value = "评价客户")
 	private String companyName;
 
+	@Transient
+	@ApiModelProperty(value = "评价客户头像")
+	private String companyImage;
+
+	@Transient
+	@ApiModelProperty(value = "评价师傅姓名")
+	private String technicianName;
+
+	@Transient
+	@ApiModelProperty(value = "评价师傅头像")
+	private String technicianImage;
 
 
 

+ 3 - 0
common/src/main/java/com/jpsoft/employment/modules/base/entity/ConstructionProgress.java

@@ -64,6 +64,9 @@ public class ConstructionProgress {
 				@ApiModelProperty(value = "更新人")
 	private String updateBy;
 
+	@ApiModelProperty(value = "流程代码")
+	private String code;
+
 
 				@Transient
 	@ApiModelProperty(value = "提交人")

+ 16 - 1
common/src/main/java/com/jpsoft/employment/modules/base/entity/Feedback.java

@@ -4,6 +4,9 @@ import java.io.Serializable;
 import java.util.Date;
 import java.text.SimpleDateFormat;
 import java.math.BigDecimal;
+import java.util.List;
+
+import org.springframework.data.annotation.Transient;
 import org.springframework.format.annotation.DateTimeFormat;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
@@ -54,7 +57,19 @@ public class Feedback {
 	@ApiModelProperty(value = "图片")
 	private String image;
 
-	@ApiModelProperty(value = "图片")
+	@ApiModelProperty(value = "类型")
 	private String type;
+
+	@Transient
+	@ApiModelProperty(value = "类型翻译")
+	private String typeN;
+
+	@Transient
+	@ApiModelProperty(value = "图片")
+	private List<String> imageList;
+
+	@Transient
+	@ApiModelProperty(value = "反馈人&企业翻译")
+	private String peopleCompany;
 	
 		}

+ 18 - 0
common/src/main/java/com/jpsoft/employment/modules/base/entity/MessageInfo.java

@@ -4,6 +4,8 @@ import java.io.Serializable;
 import java.util.Date;
 import java.text.SimpleDateFormat;
 import java.math.BigDecimal;
+
+import org.springframework.data.annotation.Transient;
 import org.springframework.format.annotation.DateTimeFormat;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
@@ -60,5 +62,21 @@ public class MessageInfo {
 
 	@ApiModelProperty(value = "是否已读")
 	private Boolean isRead;
+
+
+	@ApiModelProperty(value = "发送消息方式(1:广播,2:发送给客户,3:发送给师傅)")
+	private String category;
+
+	@Transient
+	@ApiModelProperty(value = "发送消息方式翻译")
+	private String categoryN;
+
+	@Transient
+	@ApiModelProperty(value = "消息类型翻译")
+	private String typeN;
+
+	@Transient
+	@ApiModelProperty(value = "接收者姓名")
+	private String recipientName;
 	
 		}

+ 3 - 0
common/src/main/java/com/jpsoft/employment/modules/base/entity/WorkOrder.java

@@ -117,6 +117,9 @@ public class WorkOrder {
 	@ApiModelProperty(value = "备注")
 	private String bak;
 
+	@ApiModelProperty(value = "支付凭证")
+	private String payCertificate;
+
 	@Transient
 	@ApiModelProperty(value = "支付状态")
 	private String payStatusN;

+ 1 - 0
common/src/main/java/com/jpsoft/employment/modules/base/service/CustomerInfoService.java

@@ -14,5 +14,6 @@ public interface CustomerInfoService {
 	int delete(String id);
 	List<CustomerInfo> list();
 	CustomerInfo findByOpenId(String openId);
+	CustomerInfo findByPhone(String phone);
 	Page<CustomerInfo> pageSearch(Map<String, Object> searchParams,int pageNum,int pageSize,boolean count,List<Sort> sortList);
 }

+ 6 - 0
common/src/main/java/com/jpsoft/employment/modules/base/service/impl/CustomerInfoServiceImpl.java

@@ -64,6 +64,12 @@ public class CustomerInfoServiceImpl implements CustomerInfoService {
 	public CustomerInfo findByOpenId(String openId){
 		return customerInfoDAO.findByOpenId(openId);
 	}
+
+
+	@Override
+	public CustomerInfo findByPhone(String phone){
+		return customerInfoDAO.findByPhone(phone);
+	}
 		
 	@Override
 	public Page<CustomerInfo> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize,boolean count,List<Sort> sortList) {

+ 41 - 21
common/src/main/java/com/jpsoft/employment/modules/base/service/impl/WorkOrderServiceImpl.java

@@ -176,7 +176,6 @@ public class WorkOrderServiceImpl implements WorkOrderService {
     }
 
 
-
     @Override
     public String updateDTO(WorkOrderSubDataDTO dto, String createBy) {
         // TODO Auto-generated method stub
@@ -200,7 +199,7 @@ public class WorkOrderServiceImpl implements WorkOrderService {
             //水箱需求
             InstallationRequirement installationRequirement = installationRequirementDAO.findByWorkOrderId(dto.getId());
 
-            if(installationRequirement!=null) {
+            if (installationRequirement != null) {
                 installationRequirement.setUpdateBy(createBy);
                 installationRequirement.setUpdateTime(now);
                 installationRequirement.setTitle(dto.getTitle());
@@ -231,7 +230,7 @@ public class WorkOrderServiceImpl implements WorkOrderService {
 
             //接单要求
             ReceiveRequire receiveRequire = receiveRequireDAO.findByWorkOrderId(dto.getId());
-            if(receiveRequire!=null) {
+            if (receiveRequire != null) {
                 receiveRequire.setUpdateBy(createBy);
                 receiveRequire.setUpdateTime(now);
                 receiveRequire.setLevel(dto.getLevel());
@@ -311,15 +310,15 @@ public class WorkOrderServiceImpl implements WorkOrderService {
 
 
     @Override
-    public int updateWorkOrderStatus(WorkOrder model,String status,String subject) {
+    public int updateWorkOrderStatus(WorkOrder model, String status, String subject) {
         // TODO Auto-generated method stub
-        Date now=new Date();
+        Date now = new Date();
         model.setUpdateTime(new Date());
         model.setUpdateBy(subject);
         model.setStatus(status);
 
         int affectCount = workOrderDAO.update(model);
-        if(affectCount > 0){
+        if (affectCount > 0) {
             ConstructionProgress item = new ConstructionProgress();
             item.setId(UUID.randomUUID().toString());
             item.setDelFlag(false);
@@ -328,9 +327,11 @@ public class WorkOrderServiceImpl implements WorkOrderService {
             item.setWorkOrderId(model.getId());
             item.setSubmitType("1");
             item.setSubmitBy(subject);
+            item.setSubmitTime(now);
+            item.setCode("FINISH");
             ConstructionProgress constructionProgress = constructionProgressDAO.findLastByWorkOrderId(model.getId());
-            if(constructionProgress!=null){
-                item.setIndex(constructionProgress.getIndex()+1);
+            if (constructionProgress != null) {
+                item.setIndex(constructionProgress.getIndex() + 1);
             }
             constructionProgressDAO.insert(item);
         }
@@ -369,7 +370,7 @@ public class WorkOrderServiceImpl implements WorkOrderService {
 
         InstallationRequirement installationRequirement = installationRequirementDAO.findByWorkOrderId(workOrder.getId());
 
-        if(installationRequirement!=null){
+        if (installationRequirement != null) {
             String sizeUnit;
             //平方:0,立方:1
             if ("0".equals(installationRequirement.getSizeUnit())) {
@@ -379,9 +380,9 @@ public class WorkOrderServiceImpl implements WorkOrderService {
             }
             installationRequirement.setSizeUnitN(sizeUnit);
 
-            if(StringUtils.isNotEmpty(installationRequirement.getMaterial())){
-                String materialN = dataDictionaryDAO.findNameByCatalogNameAndValue("水箱材质",installationRequirement.getMaterial());
-                if(StringUtils.isNotEmpty(materialN)){
+            if (StringUtils.isNotEmpty(installationRequirement.getMaterial())) {
+                String materialN = dataDictionaryDAO.findNameByCatalogNameAndValue("水箱材质", installationRequirement.getMaterial());
+                if (StringUtils.isNotEmpty(materialN)) {
                     installationRequirement.setMaterialN(materialN);
                 }
             }
@@ -394,14 +395,24 @@ public class WorkOrderServiceImpl implements WorkOrderService {
 
         String customerName = "";
         String customerPhone = "";
+        String image = "";
+        String customerStatusN = "";
         CustomerInfo customerItem = customerInfoDAO.get(workOrder.getCompanyId());
-        if(customerItem!=null){
+        if (customerItem != null) {
             customerName = customerItem.getCompanyName();
             customerPhone = customerItem.getPhone();
+            image = customerItem.getImage();
+            if ("1".equals(customerItem.getStatus())) {
+                customerStatusN = "已认证";
+            } else {
+                customerStatusN = "未认证";
+            }
         }
 
         dto.setCustomerName(customerName);
         dto.setCustomerPhone(customerPhone);
+        dto.setImage(image);
+        dto.setCustomerStatusN(customerStatusN);
 
         List<String> imageList = new ArrayList<>();
 
@@ -412,9 +423,9 @@ public class WorkOrderServiceImpl implements WorkOrderService {
 
         dto.setImageList(imageList);
 
-        if(StringUtils.isNotEmpty(workOrder.getStatus())){
-            String statusN = dataDictionaryDAO.findNameByCatalogNameAndValue("工单状态",workOrder.getStatus());
-            if(StringUtils.isNotEmpty(statusN)){
+        if (StringUtils.isNotEmpty(workOrder.getStatus())) {
+            String statusN = dataDictionaryDAO.findNameByCatalogNameAndValue("工单状态", workOrder.getStatus());
+            if (StringUtils.isNotEmpty(statusN)) {
                 workOrder.setStatusN(statusN);
             }
         }
@@ -434,6 +445,15 @@ public class WorkOrderServiceImpl implements WorkOrderService {
             CustomerInfo customerInfo = customerInfoDAO.get(commentInfo.getCompanyId());
             if (customerInfo != null) {
                 commentInfo.setCompanyName(customerInfo.getRealName());
+                commentInfo.setCompanyImage(customerInfo.getImage());
+            }
+
+            if (StringUtils.isNotEmpty(commentInfo.getTechnicianId())) {
+                TechnicianInfo technicianInfo1 = technicianInfoDAO.get(commentInfo.getTechnicianId());
+                if (technicianInfo1 != null) {
+                    commentInfo.setTechnicianName(technicianInfo1.getRealName());
+                    commentInfo.setTechnicianImage(technicianInfo1.getImage());
+                }
             }
         }
 
@@ -467,17 +487,16 @@ public class WorkOrderServiceImpl implements WorkOrderService {
             }
 
 
-            if("1".equals(constructionProgress.getSubmitType())){
+            if ("1".equals(constructionProgress.getSubmitType())) {
                 //客户
                 CustomerInfo customerInfo = customerInfoDAO.get(constructionProgress.getSubmitType());
-                if(customerInfo!=null){
+                if (customerInfo != null) {
                     constructionProgress.setSubmitByN(customerInfo.getCompanyName());
                 }
-            }
-            else if("2".equals(constructionProgress.getSubmitType())){
+            } else if ("2".equals(constructionProgress.getSubmitType())) {
                 //师傅
                 TechnicianInfo technicianInfo1 = technicianInfoDAO.get(constructionProgress.getSubmitType());
-                if(technicianInfo1!=null){
+                if (technicianInfo1 != null) {
                     constructionProgress.setSubmitByN(technicianInfo1.getRealName());
                 }
             }
@@ -485,6 +504,7 @@ public class WorkOrderServiceImpl implements WorkOrderService {
 
         dto.setConstructionProgressList(ConstructionProgressList);
 
+
         return dto;
     }
 

+ 7 - 1
common/src/main/resources/mapper/base/AboutUs.xml

@@ -17,6 +17,8 @@
 			<result property="bank" column="bank_" />
 			<result property="accountNumber" column="account_number" />
 			<result property="paymentCode" column="payment_code" />
+			<result property="phone" column="phone_" />
+
 			</resultMap>
 	<insert id="insert" parameterType="com.jpsoft.employment.modules.base.entity.AboutUs">
 	<!--
@@ -27,7 +29,7 @@
 	<![CDATA[
 		insert into base_about_us
 	    (id_,user_agreement,privacy_policy,disclaimer,create_time,update_time,del_flag,create_by,update_by
-	    ,receiving_account,bank_,account_number,payment_code)
+	    ,receiving_account,bank_,account_number,payment_code,phone_)
 		values
 		(
 #{id,jdbcType=VARCHAR}
@@ -43,6 +45,7 @@
 ,#{bank,jdbcType=VARCHAR}
 ,#{accountNumber,jdbcType=VARCHAR}
 ,#{paymentCode,jdbcType=VARCHAR}
+,#{phone,jdbcType=VARCHAR}
 		)
 	]]>
 	</insert>
@@ -88,6 +91,9 @@
 		<if test="paymentCode!=null">
 			payment_code=#{paymentCode,jdbcType=VARCHAR},
 		</if>
+		<if test="phone!=null">
+			phone_=#{phone,jdbcType=VARCHAR},
+		</if>
 		</set>
 	where id_=#{id}
 	</update>

+ 6 - 1
common/src/main/resources/mapper/base/ConstructionProgress.xml

@@ -17,6 +17,7 @@
 			<result property="delFlag" column="del_flag" />
 			<result property="createBy" column="create_by" />
 			<result property="updateBy" column="update_by" />
+			<result property="code" column="code_" />
 			</resultMap>
 	<insert id="insert" parameterType="com.jpsoft.employment.modules.base.entity.ConstructionProgress">
 	<!--
@@ -26,7 +27,7 @@
 	-->
 	<![CDATA[
 		insert into base_construction_progress
-	    (id_,title_,image_,submit_by,submit_type,submit_time,work_order_id,index_,create_time,update_time,del_flag,create_by,update_by)
+	    (id_,title_,image_,submit_by,submit_type,submit_time,work_order_id,index_,create_time,update_time,del_flag,create_by,update_by,code_)
 		values
 		(
 #{id,jdbcType=VARCHAR}
@@ -42,6 +43,7 @@
 ,#{delFlag,jdbcType= NUMERIC }
 ,#{createBy,jdbcType=VARCHAR}
 ,#{updateBy,jdbcType=VARCHAR}
+,#{code,jdbcType=VARCHAR}
 		)
 	]]>
 	</insert>
@@ -87,6 +89,9 @@
 				<if test="updateBy!=null">
 		update_by=#{updateBy,jdbcType=VARCHAR},
 		</if>
+		<if test="code!=null">
+			code_=#{code,jdbcType=VARCHAR},
+		</if>
 		</set>
 	where id_=#{id}
 	</update>

+ 6 - 0
common/src/main/resources/mapper/base/CustomerInfo.xml

@@ -142,6 +142,12 @@
 		order by create_time asc
 		limit 1
 	</select>
+	<select id="findByPhone" resultMap="CustomerInfoMap">
+		select * from base_customer_info
+		where del_flag=0
+		and phone_=#{0}
+		limit 1
+	</select>
 	<select id="search" parameterType="hashmap" resultMap="CustomerInfoMap">
 		<![CDATA[
 			select * from base_customer_info

+ 2 - 2
common/src/main/resources/mapper/base/Feedback.xml

@@ -101,8 +101,8 @@
 		]]>
 		<where>
 			del_flag=false
-			<if test="searchParams.id != null">
-				and ID_ like #{searchParams.id}
+			<if test="searchParams.companyId != null">
+				and company_id = #{searchParams.companyId}
 			</if>
 		</where>
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">

+ 6 - 2
common/src/main/resources/mapper/base/MessageInfo.xml

@@ -17,7 +17,7 @@
 			<result property="updateBy" column="update_by" />
 			<result property="delFlag" column="del_flag" />
 			<result property="isRead" column="is_read" />
-
+			<result property="category" column="category_" />
 			</resultMap>
 	<insert id="insert" parameterType="com.jpsoft.employment.modules.base.entity.MessageInfo">
 	<!--
@@ -27,7 +27,7 @@
 	-->
 	<![CDATA[
 		insert into base_message_info
-	    (id_,type_,send_time,title_,content_,sender_id,recipient_id,create_time,update_time,create_by,update_by,del_flag,is_read)
+	    (id_,type_,send_time,title_,content_,sender_id,recipient_id,create_time,update_time,create_by,update_by,del_flag,is_read,category_)
 		values
 		(
 #{id,jdbcType=VARCHAR}
@@ -43,6 +43,7 @@
 ,#{updateBy,jdbcType=VARCHAR}
 ,#{delFlag,jdbcType= NUMERIC }
 ,#{isRead,jdbcType= NUMERIC }
+,#{category,jdbcType=VARCHAR}
 		)
 	]]>
 	</insert>
@@ -88,6 +89,9 @@
 			<if test="isRead!=null">
 				is_read=#{isRead,jdbcType= NUMERIC },
 			</if>
+			<if test="category!=null">
+				category_=#{category,jdbcType=VARCHAR},
+			</if>
 		</set>
 	where id_=#{id}
 	</update>

+ 10 - 1
common/src/main/resources/mapper/base/WorkOrder.xml

@@ -35,6 +35,8 @@
 		<result property="cancelImages" column="cancel_images" />
 		<result property="peopleSeenNum" column="people_seen_num" />
 		<result property="bak" column="bak_" />
+		<result property="payCertificate" column="pay_certificate" />
+
 	</resultMap>
 	<insert id="insert" parameterType="com.jpsoft.employment.modules.base.entity.WorkOrder">
 		<!--
@@ -45,7 +47,7 @@
 		<![CDATA[
 		insert into base_work_order
 	    (id_,number_,title_,address_,date_,tag_,image_,status_,price_,location_,company_id,map_,construction_location,environment,volume_,technician_id,pay_status,create_time,update_time,del_flag,create_by,update_by,
-	    customer_name,customer_phone,view_num,certificate_,cancel_causes,cancel_reasons,cancel_images,people_seen_num,bak_)
+	    customer_name,customer_phone,view_num,certificate_,cancel_causes,cancel_reasons,cancel_images,people_seen_num,bak_,pay_certificate)
 		values
 		(
 #{id,jdbcType=VARCHAR}
@@ -79,6 +81,7 @@
 ,#{cancelImages,jdbcType=VARCHAR}
 ,#{peopleSeenNum,jdbcType= NUMERIC }
 ,#{bak,jdbcType=VARCHAR}
+,#{payCertificate,jdbcType=VARCHAR}
 		)
 	]]>
 	</insert>
@@ -178,6 +181,9 @@
 			<if test="bak!=null">
 				bak_=#{bak,jdbcType=VARCHAR},
 			</if>
+			<if test="payCertificate!=null">
+				pay_certificate=#{payCertificate,jdbcType=VARCHAR},
+			</if>
 		</set>
 		where id_=#{id}
 	</update>
@@ -249,6 +255,9 @@
 			<if test="searchParams.title != null">
 				and title_ like #{searchParams.title}
 			</if>
+			<if test="searchParams.companyId != null">
+				and company_id = #{searchParams.companyId}
+			</if>
 			<if test="searchParams.status != null">
 				and status_ = #{searchParams.status}
 			</if>

BIN
common/target/classes/com/jpsoft/employment/modules/base/dao/ArgonPartnerDAO.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/dao/CustomerInfoDAO.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/dao/LaborerInfoDAO.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/dao/TransportationInfoDAO.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/dto/EnterCertificationDTO.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/dto/EnterInfoDTO.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/dto/TechnicianDTO.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/dto/WorkOrderAllDataDTO.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/dto/WorkOrderSubDataDTO.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/entity/AboutUs.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/entity/CommentInfo.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/entity/ConstructionProgress.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/entity/Feedback.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/entity/InstallationRequirement.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/entity/MessageInfo.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/entity/TechnicianInfo.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/entity/WorkOrder.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/service/ArgonPartnerService.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/service/CustomerInfoService.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/service/LaborerInfoService.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/service/TransportationInfoService.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/service/WorkOrderService.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/service/impl/ArgonPartnerServiceImpl.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/service/impl/CustomerInfoServiceImpl.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/service/impl/LaborerInfoServiceImpl.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/service/impl/TransportationInfoServiceImpl.class


BIN
common/target/classes/com/jpsoft/employment/modules/base/service/impl/WorkOrderServiceImpl.class


+ 31 - 5
common/target/classes/mapper/base/AboutUs.xml

@@ -13,8 +13,14 @@
 			<result property="delFlag" column="del_flag" />
 			<result property="createBy" column="create_by" />
 			<result property="updateBy" column="update_by" />
+			<result property="receivingAccount" column="receiving_account" />
+			<result property="bank" column="bank_" />
+			<result property="accountNumber" column="account_number" />
+			<result property="paymentCode" column="payment_code" />
+			<result property="phone" column="phone_" />
+
 			</resultMap>
-	<insert id="insert" parameterType="AboutUs">
+	<insert id="insert" parameterType="com.jpsoft.employment.modules.base.entity.AboutUs">
 	<!--
 	<selectKey resultType="java.lang.String" order="BEFORE" keyProperty="id">
 		select sys_guid() from dual
@@ -22,7 +28,8 @@
 	-->
 	<![CDATA[
 		insert into base_about_us
-	    (id_,user_agreement,privacy_policy,disclaimer,create_time,update_time,del_flag,create_by,update_by)
+	    (id_,user_agreement,privacy_policy,disclaimer,create_time,update_time,del_flag,create_by,update_by
+	    ,receiving_account,bank_,account_number,payment_code,phone_)
 		values
 		(
 #{id,jdbcType=VARCHAR}
@@ -34,13 +41,18 @@
 ,#{delFlag,jdbcType= NUMERIC }
 ,#{createBy,jdbcType=VARCHAR}
 ,#{updateBy,jdbcType=VARCHAR}
+,#{receivingAccount,jdbcType=VARCHAR}
+,#{bank,jdbcType=VARCHAR}
+,#{accountNumber,jdbcType=VARCHAR}
+,#{paymentCode,jdbcType=VARCHAR}
+,#{phone,jdbcType=VARCHAR}
 		)
 	]]>
 	</insert>
 	<delete id="delete" parameterType="string">
 		delete from base_about_us where id_=#{id,jdbcType=VARCHAR}
 	</delete>
-	<update id="update" parameterType="AboutUs">
+	<update id="update" parameterType="com.jpsoft.employment.modules.base.entity.AboutUs">
 		update base_about_us
 		<set>
 				<if test="userAgreement!=null">
@@ -67,12 +79,26 @@
 				<if test="updateBy!=null">
 		update_by=#{updateBy,jdbcType=VARCHAR},
 		</if>
+		<if test="receivingAccount!=null">
+			receiving_account=#{receivingAccount,jdbcType=VARCHAR},
+		</if>
+		<if test="bank!=null">
+			bank_=#{bank,jdbcType=VARCHAR},
+		</if>
+		<if test="accountNumber!=null">
+			account_number=#{accountNumber,jdbcType=VARCHAR},
+		</if>
+		<if test="paymentCode!=null">
+			payment_code=#{paymentCode,jdbcType=VARCHAR},
+		</if>
+		<if test="phone!=null">
+			phone_=#{phone,jdbcType=VARCHAR},
+		</if>
 		</set>
 	where id_=#{id}
 	</update>
 	<select id="get" parameterType="string" resultMap="AboutUsMap">
-		select 
-id_,user_agreement,privacy_policy,disclaimer,create_time,update_time,del_flag,create_by,update_by		from base_about_us where id_=#{0}
+		select * from base_about_us where id_=#{0}
 	</select>
 	<select id="exist" parameterType="string" resultType="int">
 		select count(*) from base_about_us where id_=#{0}

+ 3 - 0
common/target/classes/mapper/base/ArgonPartner.xml

@@ -89,6 +89,9 @@
 	<select id="list" resultMap="ArgonPartnerMap">
 		select * from base_argon_partner where del_flag=false order by create_time desc
 	</select>
+	<select id="listByIndex" resultMap="ArgonPartnerMap">
+		select * from base_argon_partner where del_flag=false order by create_time desc limit #{0}
+	</select>
 	<select id="findByCustomerId" resultMap="ArgonPartnerMap">
 		select * from base_argon_partner where del_flag=false and customer_id=#{0}
 	</select>

+ 8 - 1
common/target/classes/mapper/base/CommentInfo.xml

@@ -17,6 +17,9 @@
 			<result property="createBy" column="create_by" />
 			<result property="updateBy" column="update_by" />
 			<result property="technicianId" column="technician_id" />
+			<result property="isOpen" column="is_open" />
+
+
 			</resultMap>
 	<insert id="insert" parameterType="com.jpsoft.employment.modules.base.entity.CommentInfo">
 	<!--
@@ -26,7 +29,7 @@
 	-->
 	<![CDATA[
 		insert into base_comment_info
-	    (id_,company_id,work_order_id,star_rating,content_,image_,date_time,create_time,update_time,del_flag,create_by,update_by,technician_id)
+	    (id_,company_id,work_order_id,star_rating,content_,image_,date_time,create_time,update_time,del_flag,create_by,update_by,technician_id,is_open)
 		values
 		(
 #{id,jdbcType=VARCHAR}
@@ -42,6 +45,7 @@
 ,#{createBy,jdbcType=VARCHAR}
 ,#{updateBy,jdbcType=VARCHAR}
 ,#{technicianId,jdbcType=VARCHAR}
+,#{isOpen,jdbcType= NUMERIC }
 		)
 	]]>
 	</insert>
@@ -87,6 +91,9 @@
 			<if test="technicianId!=null">
 				technician_id=#{technicianId,jdbcType=VARCHAR},
 			</if>
+			<if test="isOpen!=null">
+				is_open=#{isOpen,jdbcType= NUMERIC },
+			</if>
 		</set>
 	where id_=#{id}
 	</update>

+ 6 - 1
common/target/classes/mapper/base/ConstructionProgress.xml

@@ -17,6 +17,7 @@
 			<result property="delFlag" column="del_flag" />
 			<result property="createBy" column="create_by" />
 			<result property="updateBy" column="update_by" />
+			<result property="code" column="code_" />
 			</resultMap>
 	<insert id="insert" parameterType="com.jpsoft.employment.modules.base.entity.ConstructionProgress">
 	<!--
@@ -26,7 +27,7 @@
 	-->
 	<![CDATA[
 		insert into base_construction_progress
-	    (id_,title_,image_,submit_by,submit_type,submit_time,work_order_id,index_,create_time,update_time,del_flag,create_by,update_by)
+	    (id_,title_,image_,submit_by,submit_type,submit_time,work_order_id,index_,create_time,update_time,del_flag,create_by,update_by,code_)
 		values
 		(
 #{id,jdbcType=VARCHAR}
@@ -42,6 +43,7 @@
 ,#{delFlag,jdbcType= NUMERIC }
 ,#{createBy,jdbcType=VARCHAR}
 ,#{updateBy,jdbcType=VARCHAR}
+,#{code,jdbcType=VARCHAR}
 		)
 	]]>
 	</insert>
@@ -87,6 +89,9 @@
 				<if test="updateBy!=null">
 		update_by=#{updateBy,jdbcType=VARCHAR},
 		</if>
+		<if test="code!=null">
+			code_=#{code,jdbcType=VARCHAR},
+		</if>
 		</set>
 	where id_=#{id}
 	</update>

+ 6 - 0
common/target/classes/mapper/base/CustomerInfo.xml

@@ -142,6 +142,12 @@
 		order by create_time asc
 		limit 1
 	</select>
+	<select id="findByPhone" resultMap="CustomerInfoMap">
+		select * from base_customer_info
+		where del_flag=0
+		and phone_=#{0}
+		limit 1
+	</select>
 	<select id="search" parameterType="hashmap" resultMap="CustomerInfoMap">
 		<![CDATA[
 			select * from base_customer_info

+ 2 - 2
common/target/classes/mapper/base/Feedback.xml

@@ -101,8 +101,8 @@
 		]]>
 		<where>
 			del_flag=false
-			<if test="searchParams.id != null">
-				and ID_ like #{searchParams.id}
+			<if test="searchParams.companyId != null">
+				and company_id = #{searchParams.companyId}
 			</if>
 		</where>
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">

+ 2 - 2
common/target/classes/mapper/base/InstallationRequirement.xml

@@ -156,8 +156,8 @@
 				<if test="stageRequirements!=null">
 		stage_requirements=#{stageRequirements,jdbcType=VARCHAR},
 		</if>
-				<if test="acceptance Criteria!=null">
-		acceptance _criteria=#{acceptance Criteria,jdbcType=VARCHAR},
+				<if test="acceptanceCriteria!=null">
+		acceptance_criteria=#{acceptanceCriteria,jdbcType=VARCHAR},
 		</if>
 				<if test="salesRequirement!=null">
 		sales_requirement=#{salesRequirement,jdbcType=VARCHAR},

+ 3 - 0
common/target/classes/mapper/base/LaborerInfo.xml

@@ -91,6 +91,9 @@
 	<select id="list" resultMap="LaborerInfoMap">
 		select * from base_laborer_info where del_flag=false order by create_time desc
 	</select>
+	<select id="listByIndex" resultMap="LaborerInfoMap">
+		select * from base_laborer_info where del_flag=false order by create_time desc limit #{0}
+	</select>
 	<select id="findByCustomerId" resultMap="LaborerInfoMap">
 		select * from base_laborer_info where del_flag=false and customer_id=#{0}
 	</select>

+ 6 - 2
common/target/classes/mapper/base/MessageInfo.xml

@@ -17,7 +17,7 @@
 			<result property="updateBy" column="update_by" />
 			<result property="delFlag" column="del_flag" />
 			<result property="isRead" column="is_read" />
-
+			<result property="category" column="category_" />
 			</resultMap>
 	<insert id="insert" parameterType="com.jpsoft.employment.modules.base.entity.MessageInfo">
 	<!--
@@ -27,7 +27,7 @@
 	-->
 	<![CDATA[
 		insert into base_message_info
-	    (id_,type_,send_time,title_,content_,sender_id,recipient_id,create_time,update_time,create_by,update_by,del_flag,is_read)
+	    (id_,type_,send_time,title_,content_,sender_id,recipient_id,create_time,update_time,create_by,update_by,del_flag,is_read,category_)
 		values
 		(
 #{id,jdbcType=VARCHAR}
@@ -43,6 +43,7 @@
 ,#{updateBy,jdbcType=VARCHAR}
 ,#{delFlag,jdbcType= NUMERIC }
 ,#{isRead,jdbcType= NUMERIC }
+,#{category,jdbcType=VARCHAR}
 		)
 	]]>
 	</insert>
@@ -88,6 +89,9 @@
 			<if test="isRead!=null">
 				is_read=#{isRead,jdbcType= NUMERIC },
 			</if>
+			<if test="category!=null">
+				category_=#{category,jdbcType=VARCHAR},
+			</if>
 		</set>
 	where id_=#{id}
 	</update>

+ 7 - 1
common/target/classes/mapper/base/TechnicianInfo.xml

@@ -157,8 +157,11 @@
 			select * from base_technician_info
 		]]>
 		<where>
+			<if test="searchParams.status != null">
+				and status_ = #{searchParams.status}
+			</if>
 			<if test="searchParams.id != null">
-				and ID_ like #{searchParams.id}
+				and real_name like #{searchParams.id}
 			</if>
 		</where>
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">
@@ -174,6 +177,9 @@
 			<if test="searchParams.id != null">
 				and ID_ like #{searchParams.id}
 			</if>
+			<if test="searchParams.name != null">
+				and ID_ like #{searchParams.name}
+			</if>
 		</where>
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">
 			${sort.name} ${sort.order}

+ 3 - 0
common/target/classes/mapper/base/TransportationInfo.xml

@@ -84,6 +84,9 @@
 	<select id="list" resultMap="TransportationInfoMap">
 		select * from base_transportation_info where del_flag=false order by create_time desc
 	</select>
+	<select id="listByIndex" resultMap="TransportationInfoMap">
+		select * from base_transportation_info where del_flag=false order by create_time desc limit #{0}
+	</select>
 	<select id="findByCustomerId" resultMap="TransportationInfoMap">
 		select * from base_transportation_info where del_flag=false and customer_id=#{0}
 	</select>

+ 117 - 104
common/target/classes/mapper/base/WorkOrder.xml

@@ -1,51 +1,53 @@
 <?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" 
-"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+		"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <!-- namespace必须指向DAO接口 -->
 <mapper namespace="com.jpsoft.employment.modules.base.dao.WorkOrderDAO">
 	<resultMap id="WorkOrderMap" type="com.jpsoft.employment.modules.base.entity.WorkOrder">
 		<id property="id" column="id_" />
-			<result property="number" column="number_" />
-			<result property="title" column="title_" />
-			<result property="address" column="address_" />
-			<result property="date" column="date_" />
-			<result property="tag" column="tag_" />
-			<result property="image" column="image_" />
-			<result property="status" column="status_" />
-			<result property="price" column="price_" />
-			<result property="location" column="location_" />
-			<result property="companyId" column="company_id" />
-			<result property="map" column="map_" />
-			<result property="constructionLocation" column="construction_location" />
-			<result property="environment" column="environment" />
-			<result property="volume" column="volume_" />
-			<result property="technicianId" column="technician_id" />
-			<result property="payStatus" column="pay_status" />
-			<result property="createTime" column="create_time" />
-			<result property="updateTime" column="update_time" />
-			<result property="delFlag" column="del_flag" />
-			<result property="createBy" column="create_by" />
-			<result property="updateBy" column="update_by" />
-			<result property="customerName" column="customer_name" />
-			<result property="customerPhone" column="customer_phone" />
-			<result property="viewNum" column="view_num" />
-			<result property="certificate" column="certificate_" />
-			<result property="cancelCauses" column="cancel_causes" />
-			<result property="cancelReasons" column="cancel_reasons" />
-			<result property="cancelImages" column="cancel_images" />
-			<result property="peopleSeenNum" column="people_seen_num" />
+		<result property="number" column="number_" />
+		<result property="title" column="title_" />
+		<result property="address" column="address_" />
+		<result property="date" column="date_" />
+		<result property="tag" column="tag_" />
+		<result property="image" column="image_" />
+		<result property="status" column="status_" />
+		<result property="price" column="price_" />
+		<result property="location" column="location_" />
+		<result property="companyId" column="company_id" />
+		<result property="map" column="map_" />
+		<result property="constructionLocation" column="construction_location" />
+		<result property="environment" column="environment" />
+		<result property="volume" column="volume_" />
+		<result property="technicianId" column="technician_id" />
+		<result property="payStatus" column="pay_status" />
+		<result property="createTime" column="create_time" />
+		<result property="updateTime" column="update_time" />
+		<result property="delFlag" column="del_flag" />
+		<result property="createBy" column="create_by" />
+		<result property="updateBy" column="update_by" />
+		<result property="customerName" column="customer_name" />
+		<result property="customerPhone" column="customer_phone" />
+		<result property="viewNum" column="view_num" />
+		<result property="certificate" column="certificate_" />
+		<result property="cancelCauses" column="cancel_causes" />
+		<result property="cancelReasons" column="cancel_reasons" />
+		<result property="cancelImages" column="cancel_images" />
+		<result property="peopleSeenNum" column="people_seen_num" />
+		<result property="bak" column="bak_" />
+		<result property="payCertificate" column="pay_certificate" />
 
 	</resultMap>
 	<insert id="insert" parameterType="com.jpsoft.employment.modules.base.entity.WorkOrder">
-	<!--
-	<selectKey resultType="java.lang.String" order="BEFORE" keyProperty="id">
-		select sys_guid() from dual
-	</selectKey>
-	-->
-	<![CDATA[
+		<!--
+        <selectKey resultType="java.lang.String" order="BEFORE" keyProperty="id">
+            select sys_guid() from dual
+        </selectKey>
+        -->
+		<![CDATA[
 		insert into base_work_order
 	    (id_,number_,title_,address_,date_,tag_,image_,status_,price_,location_,company_id,map_,construction_location,environment,volume_,technician_id,pay_status,create_time,update_time,del_flag,create_by,update_by,
-	    customer_name,customer_phone,view_num,certificate_,cancel_causes,cancel_reasons,cancel_images,people_seen_num)
+	    customer_name,customer_phone,view_num,certificate_,cancel_causes,cancel_reasons,cancel_images,people_seen_num,bak_,pay_certificate)
 		values
 		(
 #{id,jdbcType=VARCHAR}
@@ -78,6 +80,8 @@
 ,#{cancelReasons,jdbcType=VARCHAR}
 ,#{cancelImages,jdbcType=VARCHAR}
 ,#{peopleSeenNum,jdbcType= NUMERIC }
+,#{bak,jdbcType=VARCHAR}
+,#{payCertificate,jdbcType=VARCHAR}
 		)
 	]]>
 	</insert>
@@ -87,69 +91,69 @@
 	<update id="update" parameterType="com.jpsoft.employment.modules.base.entity.WorkOrder">
 		update base_work_order
 		<set>
-				<if test="number!=null">
-		number_=#{number,jdbcType=VARCHAR},
-		</if>
-				<if test="title!=null">
-		title_=#{title,jdbcType=VARCHAR},
-		</if>
-				<if test="address!=null">
-		address_=#{address,jdbcType=VARCHAR},
-		</if>
-				<if test="date!=null">
-		date_=#{date,jdbcType= TIMESTAMP },
-		</if>
-				<if test="tag!=null">
-		tag_=#{tag,jdbcType=VARCHAR},
-		</if>
-				<if test="image!=null">
-		image_=#{image,jdbcType=VARCHAR},
-		</if>
-				<if test="status!=null">
-		status_=#{status,jdbcType=VARCHAR},
-		</if>
-				<if test="price!=null">
-		price_=#{price,jdbcType= NUMERIC },
-		</if>
-				<if test="location!=null">
-		location_=#{location,jdbcType=VARCHAR},
-		</if>
-				<if test="companyId!=null">
-		company_id=#{companyId,jdbcType=VARCHAR},
-		</if>
-				<if test="map!=null">
-		map_=#{map,jdbcType=VARCHAR},
-		</if>
-				<if test="constructionLocation!=null">
-		construction_location=#{constructionLocation,jdbcType=VARCHAR},
-		</if>
-				<if test="environment!=null">
-		environment=#{environment,jdbcType=VARCHAR},
-		</if>
-				<if test="volume!=null">
-		volume_=#{volume,jdbcType= NUMERIC },
-		</if>
-				<if test="technicianId!=null">
-		technician_id=#{technicianId,jdbcType=VARCHAR},
-		</if>
-				<if test="payStatus!=null">
-		pay_status=#{payStatus,jdbcType=VARCHAR},
-		</if>
-				<if test="createTime!=null">
-		create_time=#{createTime,jdbcType= TIMESTAMP },
-		</if>
-				<if test="updateTime!=null">
-		update_time=#{updateTime,jdbcType= TIMESTAMP },
-		</if>
-				<if test="delFlag!=null">
-		del_flag=#{delFlag,jdbcType= NUMERIC },
-		</if>
-				<if test="createBy!=null">
-		create_by=#{createBy,jdbcType=VARCHAR},
-		</if>
-				<if test="updateBy!=null">
-		update_by=#{updateBy,jdbcType=VARCHAR},
-		</if>
+			<if test="number!=null">
+				number_=#{number,jdbcType=VARCHAR},
+			</if>
+			<if test="title!=null">
+				title_=#{title,jdbcType=VARCHAR},
+			</if>
+			<if test="address!=null">
+				address_=#{address,jdbcType=VARCHAR},
+			</if>
+			<if test="date!=null">
+				date_=#{date,jdbcType= TIMESTAMP },
+			</if>
+			<if test="tag!=null">
+				tag_=#{tag,jdbcType=VARCHAR},
+			</if>
+			<if test="image!=null">
+				image_=#{image,jdbcType=VARCHAR},
+			</if>
+			<if test="status!=null">
+				status_=#{status,jdbcType=VARCHAR},
+			</if>
+			<if test="price!=null">
+				price_=#{price,jdbcType= NUMERIC },
+			</if>
+			<if test="location!=null">
+				location_=#{location,jdbcType=VARCHAR},
+			</if>
+			<if test="companyId!=null">
+				company_id=#{companyId,jdbcType=VARCHAR},
+			</if>
+			<if test="map!=null">
+				map_=#{map,jdbcType=VARCHAR},
+			</if>
+			<if test="constructionLocation!=null">
+				construction_location=#{constructionLocation,jdbcType=VARCHAR},
+			</if>
+			<if test="environment!=null">
+				environment=#{environment,jdbcType=VARCHAR},
+			</if>
+			<if test="volume!=null">
+				volume_=#{volume,jdbcType= NUMERIC },
+			</if>
+			<if test="technicianId!=null">
+				technician_id=#{technicianId,jdbcType=VARCHAR},
+			</if>
+			<if test="payStatus!=null">
+				pay_status=#{payStatus,jdbcType=VARCHAR},
+			</if>
+			<if test="createTime!=null">
+				create_time=#{createTime,jdbcType= TIMESTAMP },
+			</if>
+			<if test="updateTime!=null">
+				update_time=#{updateTime,jdbcType= TIMESTAMP },
+			</if>
+			<if test="delFlag!=null">
+				del_flag=#{delFlag,jdbcType= NUMERIC },
+			</if>
+			<if test="createBy!=null">
+				create_by=#{createBy,jdbcType=VARCHAR},
+			</if>
+			<if test="updateBy!=null">
+				update_by=#{updateBy,jdbcType=VARCHAR},
+			</if>
 			<if test="customerName!=null">
 				customer_name=#{customerName,jdbcType=VARCHAR},
 			</if>
@@ -174,8 +178,14 @@
 			<if test="peopleSeenNum!=null">
 				people_seen_num=#{peopleSeenNum,jdbcType= NUMERIC },
 			</if>
+			<if test="bak!=null">
+				bak_=#{bak,jdbcType=VARCHAR},
+			</if>
+			<if test="payCertificate!=null">
+				pay_certificate=#{payCertificate,jdbcType=VARCHAR},
+			</if>
 		</set>
-	where id_=#{id}
+		where id_=#{id}
 	</update>
 	<select id="get" parameterType="string" resultMap="WorkOrderMap">
 		select * from base_work_order where id_=#{0}
@@ -232,8 +242,8 @@
 			</if>
 		</where>
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">
-	        ${sort.name} ${sort.order}
-	 	</foreach>
+			${sort.name} ${sort.order}
+		</foreach>
 	</select>
 
 	<select id="searchMobile" parameterType="hashmap" resultMap="WorkOrderMap">
@@ -245,6 +255,9 @@
 			<if test="searchParams.title != null">
 				and title_ like #{searchParams.title}
 			</if>
+			<if test="searchParams.companyId != null">
+				and company_id = #{searchParams.companyId}
+			</if>
 			<if test="searchParams.status != null">
 				and status_ = #{searchParams.status}
 			</if>

+ 1 - 0
web/src/main/java/com/jpsoft/employment/config/WebMvcConfig.java

@@ -59,6 +59,7 @@ public class WebMvcConfig implements WebMvcConfigurer {
 				.excludePathPatterns("/mobile/technician/wxLogin")
 				.excludePathPatterns("/generateCaptCha")
 				.excludePathPatterns("/mobile/customerInfoApi/findByOpenId")
+				.excludePathPatterns("/mobile/customerInfoApi/workOrderEdit/*")
 				.excludePathPatterns("/mobile/partnerApi/**")
 		;
 	}

+ 1 - 1
web/src/main/java/com/jpsoft/employment/modules/base/controller/AboutUsController.java

@@ -209,7 +209,7 @@ public class AboutUsController {
         Map<String,Object> searchParams = new HashMap<>();
 
         List<Sort> sortList = new ArrayList<>();
-        sortList.add(new Sort("id_","asc"));
+        sortList.add(new Sort("create_time","desc"));
 
         if (StringUtils.isNotEmpty(id)) {
             searchParams.put("id","%" + id + "%");

+ 43 - 1
web/src/main/java/com/jpsoft/employment/modules/base/controller/FeedbackController.java

@@ -1,11 +1,16 @@
 package com.jpsoft.employment.modules.base.controller;
 
 import com.github.pagehelper.Page;
+import com.jpsoft.employment.modules.base.entity.CustomerInfo;
+import com.jpsoft.employment.modules.base.entity.TechnicianInfo;
+import com.jpsoft.employment.modules.base.service.CustomerInfoService;
+import com.jpsoft.employment.modules.base.service.TechnicianInfoService;
 import com.jpsoft.employment.modules.common.dto.MessageResult;
 import com.jpsoft.employment.modules.common.utils.PojoUtils;
 import com.jpsoft.employment.modules.common.dto.Sort;
 import com.jpsoft.employment.modules.base.entity.Feedback;
 import com.jpsoft.employment.modules.base.service.FeedbackService;
+import com.jpsoft.employment.modules.sys.service.DataDictionaryService;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -24,6 +29,15 @@ public class FeedbackController {
 
     @Autowired
     private FeedbackService feedbackService;
+
+    @Autowired
+    private DataDictionaryService dataDictionaryService;
+
+    @Autowired
+    private CustomerInfoService customerInfoService;
+
+    @Autowired
+    private TechnicianInfoService technicianInfoService;
 	
 	
 	@ApiOperation(value="创建空记录")
@@ -209,7 +223,7 @@ public class FeedbackController {
         Map<String,Object> searchParams = new HashMap<>();
 
         List<Sort> sortList = new ArrayList<>();
-        sortList.add(new Sort("id_","asc"));
+        sortList.add(new Sort("create_time","desc"));
 
         if (StringUtils.isNotEmpty(id)) {
             searchParams.put("id","%" + id + "%");
@@ -218,6 +232,34 @@ public class FeedbackController {
 
         Page<Feedback> page = feedbackService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
 
+        for (Feedback feedback:page) {
+            String typeN = dataDictionaryService.findNameByCatalogNameAndValue("意见反馈类型",feedback.getType());
+            feedback.setTypeN(typeN);
+            List<String> imageList=new ArrayList<>();
+
+            if(StringUtils.isNotEmpty(feedback.getImage())){
+                String[] imageArr = feedback.getImage().split(",");
+                for (String image:imageArr) {
+                    imageList.add(image);
+                }
+            }
+            feedback.setImageList(imageList);
+
+            if(StringUtils.isNotEmpty(feedback.getCompanyId())){
+                CustomerInfo customerInfo = customerInfoService.get(feedback.getCompanyId());
+                if(customerInfo!=null){
+                    feedback.setPeopleCompany(customerInfo.getCompanyName());
+                }
+            }
+            else{
+                TechnicianInfo technicianInfo = technicianInfoService.get(feedback.getTechnicianId());
+                if(technicianInfo!=null){
+                    feedback.setPeopleCompany(technicianInfo.getRealName());
+                }
+            }
+
+        }
+
 
         msgResult.setResult(true);
         msgResult.setData(PojoUtils.pageWrapper(page));

+ 37 - 1
web/src/main/java/com/jpsoft/employment/modules/base/controller/MessageInfoController.java

@@ -1,11 +1,16 @@
 package com.jpsoft.employment.modules.base.controller;
 
 import com.github.pagehelper.Page;
+import com.jpsoft.employment.modules.base.entity.CustomerInfo;
+import com.jpsoft.employment.modules.base.entity.TechnicianInfo;
+import com.jpsoft.employment.modules.base.service.CustomerInfoService;
+import com.jpsoft.employment.modules.base.service.TechnicianInfoService;
 import com.jpsoft.employment.modules.common.dto.MessageResult;
 import com.jpsoft.employment.modules.common.utils.PojoUtils;
 import com.jpsoft.employment.modules.common.dto.Sort;
 import com.jpsoft.employment.modules.base.entity.MessageInfo;
 import com.jpsoft.employment.modules.base.service.MessageInfoService;
+import com.jpsoft.employment.modules.sys.service.DataDictionaryService;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -24,6 +29,15 @@ public class MessageInfoController {
 
     @Autowired
     private MessageInfoService messageInfoService;
+
+    @Autowired
+    private DataDictionaryService dataDictionaryService;
+
+    @Autowired
+    private CustomerInfoService customerInfoService;
+
+    @Autowired
+    private TechnicianInfoService technicianInfoService;
 	
 	
 	@ApiOperation(value="创建空记录")
@@ -209,7 +223,7 @@ public class MessageInfoController {
         Map<String,Object> searchParams = new HashMap<>();
 
         List<Sort> sortList = new ArrayList<>();
-        sortList.add(new Sort("id_","asc"));
+        sortList.add(new Sort("create_time","desc"));
 
         if (StringUtils.isNotEmpty(id)) {
             searchParams.put("id","%" + id + "%");
@@ -218,6 +232,28 @@ public class MessageInfoController {
 
         Page<MessageInfo> page = messageInfoService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
 
+        for (MessageInfo messageInfo:page) {
+            String typeN = dataDictionaryService.findNameByCatalogNameAndValue("消息分类",messageInfo.getType());
+            messageInfo.setTypeN(typeN);
+
+            String categoryN = dataDictionaryService.findNameByCatalogNameAndValue("消息发送方式",messageInfo.getCategory());
+            messageInfo.setCategoryN(categoryN);
+
+            if(StringUtils.isNotEmpty(messageInfo.getCategory())){
+                if("2".equals(messageInfo.getCategory())){
+                    CustomerInfo customerInfo = customerInfoService.get(messageInfo.getRecipientId());
+                    if(customerInfo!=null){
+                        messageInfo.setRecipientName(customerInfo.getCompanyName());
+                    }
+                }
+                else if("3".equals(messageInfo.getCategory())){
+                    TechnicianInfo technicianInfo = technicianInfoService.get(messageInfo.getRecipientId());
+                    if(technicianInfo!=null){
+                        messageInfo.setRecipientName(technicianInfo.getRealName());
+                    }
+                }
+            }
+        }
 
         msgResult.setResult(true);
         msgResult.setData(PojoUtils.pageWrapper(page));

+ 26 - 19
web/src/main/java/com/jpsoft/employment/modules/mobile/controller/CustomerInfoApiController.java

@@ -113,15 +113,15 @@ public class CustomerInfoApiController {
                 }
             }
 
-            searchParams.put("status", "1");
+            searchParams.put("status", "5");
 
             Map completedNumMap = workOrderService.countByCustomerId(searchParams);
 
             int completedNum = 0;
 
             if (completedNumMap != null) {
-                if (totalMap.get("count_") != null) {
-                    completedNum = Integer.parseInt(totalMap.get("count_").toString());
+                if (completedNumMap.get("count_") != null) {
+                    completedNum = Integer.parseInt(completedNumMap.get("count_").toString());
                 }
             }
 
@@ -305,7 +305,7 @@ public class CustomerInfoApiController {
 
     @ApiOperation(value = "主页")
     @RequestMapping(value = "main", method = RequestMethod.POST)
-    public MessageResult<Map<String, Object>> main(int index,String token, @RequestAttribute String subject) {
+    public MessageResult<Map<String, Object>> main(int index, String token, @RequestAttribute String subject) {
         MessageResult<Map<String, Object>> msgResult = new MessageResult<>();
 
         CustomerInfo customerInfo = customerInfoService.get(subject);
@@ -891,6 +891,8 @@ public class CustomerInfoApiController {
         List<Sort> sortList = new ArrayList<>();
         sortList.add(new Sort("create_time", "desc"));
 
+        searchParams.put("companyId",subject);
+
 
         Page<Feedback> page = feedbackService.pageSearch(searchParams, pageIndex, pageSize, true, sortList);
 
@@ -936,7 +938,7 @@ public class CustomerInfoApiController {
     @ApiOperation(value = "关于我们")
     @RequestMapping(value = "aboutUs", method = RequestMethod.POST)
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "type", value = "类型(1:用户协议,2:隐私协议,3:免责条款)", paramType = "form"),
+            @ApiImplicitParam(name = "type", value = "类型(1:用户协议,2:隐私协议,3:免责条款,4:客服电话)", paramType = "form"),
     })
     public MessageResult<Map> aboutUs(String token, String type, @RequestAttribute String subject) {
 
@@ -959,6 +961,8 @@ public class CustomerInfoApiController {
                 content = aboutUs.getPrivacyPolicy();
             } else if ("3".equals(type)) {
                 content = aboutUs.getDisclaimer();
+            } else if ("4".equals(type)) {
+                content = aboutUs.getPhone();
             }
         }
 
@@ -978,7 +982,7 @@ public class CustomerInfoApiController {
 
         try {
             WorkOrder workOrder = workOrderService.get(dto.getId());
-            workOrder.setCertificate(dto.getCertificate());
+            workOrder.setPayCertificate(dto.getCertificate());
             workOrder.setPayStatus("1");
             workOrder.setCreateBy(subject);
             workOrder.setCreateTime(new Date());
@@ -1142,6 +1146,7 @@ public class CustomerInfoApiController {
                 commentInfo.setContent(dto.getContent());
                 commentInfo.setStarRating(dto.getStarRating());
                 commentInfo.setDateTime(now);
+                commentInfo.setTechnicianId(workOrder.getTechnicianId());
                 String images = "";
                 if (dto.getImageList() != null && dto.getImageList().size() > 0) {
                     for (String image : dto.getImageList()) {
@@ -1153,6 +1158,7 @@ public class CustomerInfoApiController {
                 }
                 commentInfo.setImage(images);
                 commentInfo.setIsOpen(dto.getIsOpen());
+                commentInfo.setWorkOrderId(dto.getId());
 
                 int affectCount = commentInfoService.insert(commentInfo);
 
@@ -1173,7 +1179,6 @@ public class CustomerInfoApiController {
     }
 
 
-
     @ApiOperation(value = "收款账户信息")
     @RequestMapping(value = "paymentAccountInfo", method = RequestMethod.POST)
     public MessageResult<Map> paymentAccountInfo(String token, @RequestAttribute String subject) {
@@ -1187,7 +1192,7 @@ public class CustomerInfoApiController {
 
         Map map = new HashMap();
 
-        if(aboutUsList.size() > 0){
+        if (aboutUsList.size() > 0) {
             AboutUs aboutUs = aboutUsList.get(0);
             map.put("receivingAccount", aboutUs.getReceivingAccount());
             map.put("bank", aboutUs.getBank());
@@ -1204,7 +1209,7 @@ public class CustomerInfoApiController {
 
     @ApiOperation(value = "增加备注信息")
     @PostMapping("bakAdd")
-    public MessageResult<WorkOrder> bakAdd(String id,String bak, @RequestAttribute String subject) {
+    public MessageResult<WorkOrder> bakAdd(String id, String bak, @RequestAttribute String subject) {
         MessageResult<WorkOrder> msgResult = new MessageResult<>();
 
         try {
@@ -1233,26 +1238,28 @@ public class CustomerInfoApiController {
     }
 
 
-
     @ApiOperation(value = "提交图片")
     @PostMapping("updateImage")
-    public MessageResult<WorkOrder> updateImage(@RequestBody WorkOrderImageDTO dto, @RequestAttribute String subject) {
-        MessageResult<WorkOrder> msgResult = new MessageResult<>();
+    public MessageResult<Integer> updateImage(@RequestBody WorkOrderImageDTO dto, @RequestAttribute String subject) {
+        MessageResult<Integer> msgResult = new MessageResult<>();
 
         try {
-            WorkOrder workOrder = workOrderService.get(dto.getId());
 
-            if(workOrder!=null){
-                workOrder.setUpdateBy(subject);
-                workOrder.setUpdateTime(new Date());
-                workOrder.setImage(dto.getImage());
+            InstallationRequirement installationRequirement = installationRequirementService.findByWorkOrderId(dto.getId());
+
+            int affectCount = 0;
+
+            if (installationRequirement != null) {
+                installationRequirement.setUpdateTime(new Date());
+                installationRequirement.setUpdateBy(subject);
+                installationRequirement.setImage(dto.getImage());
             }
 
-            int affectCount = workOrderService.update(workOrder);
+            affectCount = installationRequirementService.update(installationRequirement);
 
             if (affectCount > 0) {
                 msgResult.setResult(true);
-                msgResult.setData(workOrder);
+                msgResult.setData(affectCount);
             } else {
                 msgResult.setResult(false);
                 msgResult.setMessage("数据库更新失败");

+ 92 - 10
web/src/main/java/com/jpsoft/employment/modules/mobile/controller/PartnerApiController.java

@@ -1,15 +1,15 @@
 package com.jpsoft.employment.modules.mobile.controller;
 
 import com.github.pagehelper.Page;
-import com.jpsoft.employment.modules.base.entity.ArgonPartner;
-import com.jpsoft.employment.modules.base.entity.LaborerInfo;
-import com.jpsoft.employment.modules.base.entity.TransportationInfo;
-import com.jpsoft.employment.modules.base.service.ArgonPartnerService;
-import com.jpsoft.employment.modules.base.service.LaborerInfoService;
-import com.jpsoft.employment.modules.base.service.TransportationInfoService;
+import com.jpsoft.employment.modules.base.dto.CreateCustomerDTO;
+import com.jpsoft.employment.modules.base.entity.*;
+import com.jpsoft.employment.modules.base.service.*;
 import com.jpsoft.employment.modules.common.dto.MessageResult;
 import com.jpsoft.employment.modules.common.dto.Sort;
 import com.jpsoft.employment.modules.common.utils.PojoUtils;
+import com.jpsoft.employment.utils.RandomNameUtils;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -18,10 +18,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 @RestController
 @RequestMapping("/mobile/partnerApi")
@@ -38,6 +35,11 @@ public class PartnerApiController {
     @Autowired
     private TransportationInfoService transportationInfoService;
 
+    @Autowired
+    private CustomerInfoService customerInfoService;
+
+    @Autowired
+    private WorkOrderService workOrderService;
 
     @ApiOperation(value = "氩气合作方列表")
     @RequestMapping(value = "argonPartnerPageList", method = RequestMethod.POST)
@@ -217,4 +219,84 @@ public class PartnerApiController {
 
         return msgResult;
     }
+
+
+    @ApiOperation(value = "创建客户")
+    @PostMapping("createCustomer")
+    public MessageResult<CustomerInfo> createCustomer(@RequestBody CreateCustomerDTO dto) {
+        MessageResult<CustomerInfo> msgResult = new MessageResult<>();
+
+        try {
+            String phone = dto.getPhone();
+
+            CustomerInfo curCustomerInfo = customerInfoService.findByPhone(phone);
+
+            if (curCustomerInfo != null) {
+                msgResult.setResult(false);
+                msgResult.setMessage("手机号码:" + phone + "已经注册过,请重新确认手机号码!");
+                return msgResult;
+            }
+
+            CustomerInfo customerInfo = new CustomerInfo();
+            customerInfo.setId(UUID.randomUUID().toString());
+            customerInfo.setDelFlag(false);
+            customerInfo.setStatus("0");
+            customerInfo.setCreateTime(new Date());
+            customerInfo.setPhone(dto.getPhone());
+            customerInfo.setOpenId(dto.getOpenId());
+            customerInfo.setCompanyName("用户" + RandomNameUtils.generateRandomNum());
+
+            int affectCount = customerInfoService.insert(customerInfo);
+
+            if (affectCount > 0) {
+                msgResult.setResult(true);
+                msgResult.setData(customerInfo);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("数据库添加失败");
+            }
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
+
+    @ApiOperation(value = "查看工单人数加一")
+    @PostMapping("workOrderPeopleSeenNum")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "remark", value = "标记", paramType = "form"),
+            @ApiImplicitParam(name = "id", value = "工单ID", paramType = "form"),
+    })
+    public MessageResult<String> workOrderPeopleSeenNum(String remark, String id) {
+        MessageResult<String> msgResult = new MessageResult<>();
+
+        try {
+
+            WorkOrder workOrder = workOrderService.get(id);
+
+            if (workOrder != null && "1".equals(remark)) {
+                //查看人数+1
+                int peopleSeenNum = workOrder.getPeopleSeenNum();
+                workOrder.setPeopleSeenNum(peopleSeenNum + 1);
+                workOrderService.update(workOrder);
+
+                msgResult.setResult(true);
+                msgResult.setData(id);
+            } else {
+                msgResult.setResult(false);
+            }
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
 }

+ 33 - 0
web/src/main/java/com/jpsoft/employment/utils/RandomNameUtils.java

@@ -0,0 +1,33 @@
+package com.jpsoft.employment.utils;
+
+import java.util.Random;
+
+public class RandomNameUtils {
+
+    public static String generateRandomNum() {
+        String VARIABLE1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
+        String VARIABLE2 = "abcdefghijklmnopqrstuvwxyz";
+        String VARIABLE3 = "0123456789";
+        String VARIABLE4 = "0123456789";
+        Random random = new Random();
+        StringBuilder password = new StringBuilder();
+        for (int i = 0; i < 2; i++) {
+            int index1 = random.nextInt(VARIABLE1.length());
+            char randomChar = VARIABLE1.charAt(index1);
+            password.append(randomChar);
+
+            int index2 = random.nextInt(VARIABLE2.length());
+            char randomChar2 = VARIABLE2.charAt(index2);
+            password.append(randomChar2);
+
+            int index3 = random.nextInt(VARIABLE3.length());
+            char randomChar3 = VARIABLE3.charAt(index3);
+            password.append(randomChar3);
+
+            int index4 = random.nextInt(VARIABLE4.length());
+            char randomChar4 = VARIABLE4.charAt(index4);
+            password.append(randomChar4);
+        }
+        return password.toString();
+    }
+}