def makeExpensesExcel(self, targetYm, expensesList, employeeName, path):

        expensesName = '経費精算書'

        year, month = DateUtilLib.splitYm(targetYm)
        lastDay = DateUtilLib.getLastDay(StringOperationLib.toInt(year), StringOperationLib.toInt(month))
        ym = DateUtilLib.getYmFormatJapanese(targetYm)
        ymd = ym + StringOperationLib.toString(lastDay) + '日'
        name = StringOperationLib.replace(employeeName, " ", "")

        excel = PythonExcelLib()
        excel.setPageA4
        excel.setOrientation()

        excel.rename(expensesName)

        #タイトル等共通部分
        self.setCommon(excel, ym, ymd, name, expensesName)

        #項目名
        self.setExpensesTitle(excel)

        #データ
        lastRow = self.setListValue(excel, expensesList)

        #合計
        self.setCostSumValue(excel, lastRow, 'E')

        #体裁
        self.expensesExcelFormat(excel, copy(lastRow))

        excel.save(path + expensesName + '.xlsx')

        #オブジェクト解放
        del excel
Esempio n. 2
0
 def getDateFormatJapanese(date):
     year = StringOperationLib.toString(StringOperationLib.left(date,
                                                                4)) + '年'
     month = StringOperationLib.toString(
         StringOperationLib.toInt(StringOperationLib.mid(date, 6, 2))) + '月'
     day = StringOperationLib.toString(
         StringOperationLib.toInt(StringOperationLib.right(date, 2))) + '日'
     return year + month + day
Esempio n. 3
0
    def run(self):

        targetYear = self.getForm('-year')

        if targetYear == '':
            self.writeLog('parameter:-year is not set')
            return

        #祝祭日一覧
        holidayList = DateUtilLib.getHolidayList(
            StringOperationLib.toInt(targetYear))

        values = []

        #BulkInsert処理
        for day in holidayList:
            holidayDate = StringOperationLib.toString(day[0])
            holidayMonth = StringOperationLib.toString(
                holidayDate[0:holidayDate.rfind('-')])
            holidayName = DateUtilLib.getHolidayName(day[0])
            values.append([holidayDate, holidayMonth, holidayName])

        dao = HolidayDao(self.db)
        dao.addBulkCol(HolidayDao.COL_HOLIDAY_DATE)
        dao.addBulkCol(HolidayDao.COL_MONTH)
        dao.addBulkCol(HolidayDao.COL_HOLIDAY_NAME)
        dao.doBulkInsert(values)

        self.writeLog(targetYear + '年祝祭日データ登録完了')

        return
    def makeBaseMap(self, dt, holidayList):

        year, month, _ = DateUtilLib.splitYmd(dt)
        lastDay = DateUtilLib.getLastDay(StringOperationLib.toInt(year), StringOperationLib.toInt(month))

        baseMap = {}

        hi = DateUtilLib.toDateTimeDate(dt)

        for x in range(lastDay):

            weekday = DateUtilLib.getWeekDayName(hi)
            day = DateUtilLib.getDay(hi)

            if StringOperationLib.toString(hi) in holidayList:
                weekday = '祝'

            baseMap[StringOperationLib.toString(hi)] = [day, weekday, '', '', '', '', '', '', '', '', '', '', '']
            hi = DateUtilLib.getDateIntervalDay(hi, 1)

        return baseMap
Esempio n. 5
0
 def getDay(date):
     return StringOperationLib.toInt(date.strftime("%d"))
Esempio n. 6
0
 def getMonth(date):
     return StringOperationLib.toInt(date.strftime("%m"))
Esempio n. 7
0
 def getYear(date):
     return StringOperationLib.toInt(date.strftime("%Y"))
Esempio n. 8
0
 def getYmFormatJapanese(ym):
     year = StringOperationLib.toString(StringOperationLib.left(ym,
                                                                4)) + '年'
     month = StringOperationLib.toString(
         StringOperationLib.toInt(StringOperationLib.right(ym, 2))) + '月'
     return year + month