Pārlūkot izejas kodu

Merge remote-tracking branch 'origin/master'

jzh 1 gadu atpakaļ
vecāks
revīzija
720861a8e1

+ 2 - 6
client_h5/src/pages/projectstatus/index.vue

@@ -149,12 +149,8 @@ const activityData: FlowDTO = {
   participantId: participant,
   flowOpinion: "",
 };
-const submitNextActivity = async (activeOpinion: any) => {
-  //工作流转件
-  activityData.activityInstanceId = activityInstanceId;
-  activityData.participantId = participant;
-  activityData.flowOpinion = JSON.stringify(activeOpinion);
-  const result = await getNextActivity(jsonToFormData(activityData));
+const submitNextActivity = async (NextActivity: () => Promise<any>) => {
+  NextActivity();
 };
 const jsonToFormData = (json: any): FormData | null => {
   const keys: string[] = Object.keys(json);

+ 4 - 0
zjugis-business/src/main/java/com/zjugis/business/bean/entity/Contract.java

@@ -321,4 +321,8 @@ public class Contract extends BaseEntity {
      * **/
     @TableField(updateStrategy = FieldStrategy.ALWAYS,jdbcType = JdbcType.TIMESTAMP)
     private LocalDate dueTime;
+
+    private BigDecimal attachRatio;
+
+    private BigDecimal attachAmount;
 }

+ 1 - 1
zjugis-business/src/main/resources/mapper/oracle/ContractInvoiceMapper.xml

@@ -178,7 +178,7 @@
     </select>
 
     <select id="excel" resultType="com.zjugis.business.bean.response.ContractInvoiceExcelResponse">
-        SELECT C.NAME as invoiceCompany,U.NICKNAME AS XSRY,D.NAME as ZRBM,T3.NAME as xmlb,A.FULL_NAME as xzqmc,T2.XMBH,T2.XMMC,T1.CONTRACT_NUMBER,T1.NAME,T.PAY_COMPANY,T.INVOICE_CONTENT,T.INVOICE_AMOUNT,(COALESCE(T.INVOICE_AMOUNT,0) - COALESCE(T5.returnAmount,0)) as unreturnAmount ,T.APPLY_WORKER_NAME,T.PAY_TAX_NUMBER,T.INVOICE_BZ,T.RECEIVE_BANKACCOUNT,T.ELE_INV_RECEIVE_PHONE,T.ELE_INV_RECEIVE_EMAIL,T.CUSTOMER_NAME
+        SELECT C.NAME as invoiceCompany,U.NICKNAME AS XSRY,D.NAME as ZRBM,T3.FULL_NAME as xmlb,A.FULL_NAME as xzqmc,T2.XMBH,T2.XMMC,T1.CONTRACT_NUMBER,T1.NAME,T.PAY_COMPANY,T.INVOICE_CONTENT,T.INVOICE_AMOUNT,(COALESCE(T.INVOICE_AMOUNT,0) - COALESCE(T5.returnAmount,0)) as unreturnAmount ,T.APPLY_WORKER_NAME,T.PAY_TAX_NUMBER,T.INVOICE_BZ,T.RECEIVE_BANKACCOUNT,T.ELE_INV_RECEIVE_PHONE,T.ELE_INV_RECEIVE_EMAIL,T.CUSTOMER_NAME
         FROM CONTRACT_INVOICE T
         LEFT JOIN CONTRACT T1 ON T1.ID=T.CONTRACT_ID
         LEFT JOIN PROJECT T2 ON T2.ID=T.PROJECT_ID

+ 27 - 0
zjugis-business/src/main/resources/templates/FlowContract/apply.ftl

@@ -102,6 +102,33 @@ styles=[ '/flow/css/formCommon.css', '/OwCommon/OwCommon.css','/timeSelector/Tim
                               </div>
                           </td>
                       </tr>
+                      <tr id="attach">
+                          <td class="th">
+                              <div class="form-label">挂靠比例:</div>
+                          </td>
+                          <td>
+                              <div class="form-group">
+                                  <div class="form-item" style="display: flex;">
+                                      <div class="z-comp-input" z-validate="number[0,2,0,100]"  name="contract$attachRatio">
+                                          <input type="text" value="${formEntity.attachRatio!}">
+                                      </div>
+                                      <span >%</span>
+                                  </div>
+                              </div>
+                          </td>
+                          <td class="th">
+                              <div class="form-label">挂靠金额:</div>
+                          </td>
+                          <td>
+                              <div class="form-group">
+                                  <div class="form-item">
+                                      <div class="z-comp-input z-readonly" name="contract$attachAmount">
+                                          <input type="text" value="${formEntity.attachAmount!}">
+                                      </div>
+                                  </div>
+                              </div>
+                          </td>
+                      </tr>
                       <tr>
                           <td class="th">
                               <div class="form-label">合同拿出日期:</div>

+ 49 - 0
zjugis-business/src/main/resources/templates/FlowContract/js/apply.js

@@ -14,7 +14,9 @@
         initData();
         initCalcTax();
         initContractMilestone();
+        initSelectMainType();
         bindGenerateSerial();
+        bindCalcAttachAmount()
         z.workflow.saveBtn.addListener("onSaveClick", submit);
     }
 
@@ -24,6 +26,44 @@
         initAreaManager();
     }
 
+    function initSelectMainType() {
+        z.ui.select("[name='contract$mainType']").bindEvents({
+            onAfterSelect:function(value,data){
+                if(value === '5' ){
+                    $("#attach").show();
+                } else {
+                    $("#attach").hide();
+                }
+            }
+        });
+        var now = z.ui.select("[name='contract$mainType']").getValue();
+        if (now ==='5'){
+            $("#attach").show();
+        } else {
+            $("#attach").hide();
+        }
+    }
+
+    function bindCalcAttachAmount(){
+        $("[name='contract$attachRatio'] input").change(function(){
+            if(!parseFloat($(this).val())){
+                return;
+            }
+            var contractAmount = $("[name='contract$contractAmount'] input").val()
+            var attachAmount = parseFloat($(this).val()) * contractAmount / 100;
+            $("[name='contract$attachAmount'] input").val(attachAmount);
+        })
+
+        $("[name='contract$contractAmount'] input").change(function(){
+            if(!parseFloat($(this).val())){
+                return;
+            }
+            var attachRatio = $("[name='contract$attachRatio'] input").val()
+            var attachAmount = parseFloat($(this).val()) * attachRatio / 100;
+            $("[name='contract$attachAmount'] input").val(attachAmount);
+        })
+    }
+
     function bindGenerateSerial(){
         $("#generateSerial").on("click",function(){
             var serial = $("[name='contract$contractNumber'] input").val();
@@ -165,6 +205,15 @@
                 milestoneFlag  =true;
             }
         }
+
+        var mType = z.ui.select("[name='contract$mainType']").getValue();
+        if (mType ==='5'){
+            var attachRatio = $("[name='contract$attachRatio'] input").val();
+            if(!attachRatio){
+                all({success: false, errorMsg: "请填写挂靠比例!"});
+            }
+        }
+
         if(istransfer && !milestoneFlag){
             all({success: false, errorMsg: "请填写合同里程碑!"});
             return;

+ 7 - 2
zjugis-module-adm/zjugis-module-adm-biz/src/main/java/com/zjugis/module/adm/service/attendance/AttendanceSheetServiceImpl.java

@@ -561,12 +561,17 @@ public class AttendanceSheetServiceImpl implements AttendanceSheetService {
         usernameAttendanceRecordMap.forEach((username, attendanceRecordList) -> {
             AttendanceRecordDO firstRecord = attendanceRecordList.get(0);
             AttendanceRecordDO lastRecord = attendanceRecordList.get(attendanceRecordList.size() - 1);
+            AdminUserRespDTO user = userApi.getUserByUsername(firstRecord.getUsername().replace("'", "")).getCheckedData();
+            //没获取到用户跳过
+            if (user == null) {
+                return;
+            }
             //计算早上考勤记录
             //第一次打卡时间在上班时间+不计入迟到时间之前
-            AttendanceSheetDO morningSheetDO = getAttendanceMorningSheetDO(normalTimeAm, lateFlag, finishAmFlag, firstRecord.getUsername().replace("'", ""), firstRecord, null, year, month, day);
+            AttendanceSheetDO morningSheetDO = getAttendanceMorningSheetDO(normalTimeAm, lateFlag, finishAmFlag, firstRecord.getUsername().replace("'", ""), firstRecord, user, year, month, day);
             //计算下午考勤记录
             //最后一次打卡时间在下午上班时间之前算旷工
-            AttendanceSheetDO afternoonSheetDO = getAttendanceAfternoonSheetDO(normalTimePm, finishPmFlag, lastRecord.getUsername().replace("'", ""), lastRecord, null, year, month, day);
+            AttendanceSheetDO afternoonSheetDO = getAttendanceAfternoonSheetDO(normalTimePm, finishPmFlag, lastRecord.getUsername().replace("'", ""), lastRecord, user, year, month, day);
             attendanceSheetDOList.add(morningSheetDO);
             attendanceSheetDOList.add(afternoonSheetDO);
         });